1
0
Fork 0

Check if projects exists before trying to read from them

This commit is contained in:
Luca Beltrame 2021-01-02 10:06:17 +01:00
parent 9ebbee33fc
commit df1019dd4b
Signed by: einar
GPG key ID: 4707F46E9EC72DEC

View file

@ -1,16 +1,22 @@
#!/usr/bin/env python3
# SPDX-FileCopyrightText: 2021 Luca Beltrame <lbeltrame@kde.org>
# SPDX-License-Identifier: BSD-3-clause
import argparse
import csv
import logging
import json
from pathlib import Path
import pickle
from urllib.parse import urlencode
import git
import requests
import sarge
API_URL = "https://invent.kde.org/api/v4/projects/"
class GitHashCache:
def __init__(self, cache_file):
@ -51,6 +57,16 @@ class GitHashCache:
json.dump(self._data, handle, indent=4)
def project_exists(project):
project_name = urlencode(project)
request = requests.get(API_URL + project_name)
if request.status_code == requests.status_codes.codes.ok:
return True
return False
def lsremote(url):
remote_refs = {}
@ -91,6 +107,10 @@ def update_package(hash_data, package_name, remote_name, obs_repository,
repo_name = "https://invent.kde.org/{}".format(remote_name)
if not project_exists(remote_name):
logging.warn("Repository {} not found, skipping".format(remote_name))
return
remote_hash = get_remote_hash(repo_name, branch)
repo_hashes = hash_data.get(obs_repository)