fedora: also check for the spec file in the existence check
Fixes https://pagure.io/fedora-rust/rust2rpm/issue/165. the following workflow wasn't well supported by the check: - request compat package repo - fedpkg clone it - try to run rust2rpm for it - Get this message: Crate tiny_http0.6 is already packaged in Fedora (...) Re-run with --no-existence-check if you still want to convert it.
This commit is contained in:
parent
9e4c5fdd0f
commit
73f5d593c3
1 changed files with 13 additions and 3 deletions
|
@ -252,11 +252,21 @@ def get_package_info(package):
|
|||
url = requests.compat.urljoin(DIST_GIT_URL, f"rpms/{package}")
|
||||
req = requests.get(url, headers={"User-Agent": "rust2rpm"})
|
||||
json = req.json()
|
||||
if "name" in json:
|
||||
return json
|
||||
else:
|
||||
if 'name' not in json:
|
||||
return None
|
||||
|
||||
# E.g. https://src.fedoraproject.org/rpms/rust-tiny_http0.6/blob/rawhide/f/rust-tiny_http0.6.spec
|
||||
full_url = json['full_url']
|
||||
spec_url = requests.compat.urljoin(full_url, f'blob/rawhide/f/rust-{package}.spec')
|
||||
req = requests.head(url, headers={"User-Agent": "rust2rpm"})
|
||||
|
||||
if not req.ok:
|
||||
# The repo exists, but doesn't have the spec file. We most
|
||||
# likely want to create a spec file to add to that repo.
|
||||
return None
|
||||
|
||||
return json
|
||||
|
||||
def make_diff_metadata(crate, version, patch=False, store=False):
|
||||
if _is_path(crate):
|
||||
# Only things that look like a paths are considered local arguments
|
||||
|
|
Loading…
Reference in a new issue