mirror of https://gerrit.osmocom.org/osmo-ci
OBS: lib/osc: add private proj variable
Adjust lib/osc.py to take the OBS project from a global variable that can be set with lib.osc.set_apiurl(), instead of using lib.args.obs_project. Move the sanity check to set_apiurl(). This is in preparation for adding a new sync script, which will operate on multiple OBS instances. Related: OS#6165 Change-Id: Iabb871bcb432f2fbdaec9cbcab3d663ccf969901
This commit is contained in:
parent
18c730fc10
commit
aa2e3cc5c0
|
@ -10,15 +10,7 @@ import lib
|
||||||
import lib.config
|
import lib.config
|
||||||
|
|
||||||
apiurl = None
|
apiurl = None
|
||||||
|
proj = None
|
||||||
|
|
||||||
def check_proj():
|
|
||||||
proj = lib.args.obs_project
|
|
||||||
if ":" in proj:
|
|
||||||
return
|
|
||||||
|
|
||||||
print(f"ERROR: this doesn't look like a valid OBS project: {proj}")
|
|
||||||
exit(1)
|
|
||||||
|
|
||||||
|
|
||||||
def check_oscrc():
|
def check_oscrc():
|
||||||
|
@ -33,8 +25,16 @@ def check_oscrc():
|
||||||
exit(1)
|
exit(1)
|
||||||
|
|
||||||
|
|
||||||
def set_apiurl(url):
|
def set_apiurl(url, obs_proj=None):
|
||||||
global apiurl
|
global apiurl
|
||||||
|
global proj
|
||||||
|
|
||||||
|
if obs_proj is not None:
|
||||||
|
if ":" not in obs_proj:
|
||||||
|
print(f"ERROR: this doesn't look like a valid OBS project: {obs_proj}")
|
||||||
|
exit(1)
|
||||||
|
proj = obs_proj
|
||||||
|
|
||||||
apiurl = url
|
apiurl = url
|
||||||
|
|
||||||
|
|
||||||
|
@ -58,7 +58,6 @@ def run_osc(cmd, *args, **kwargs):
|
||||||
|
|
||||||
|
|
||||||
def get_remote_pkgs():
|
def get_remote_pkgs():
|
||||||
proj = lib.args.obs_project
|
|
||||||
print(f"OBS: getting packages in {proj}")
|
print(f"OBS: getting packages in {proj}")
|
||||||
ret = run_osc(["list", proj])
|
ret = run_osc(["list", proj])
|
||||||
return ret.output.rstrip().split("\n")
|
return ret.output.rstrip().split("\n")
|
||||||
|
@ -66,7 +65,6 @@ def get_remote_pkgs():
|
||||||
|
|
||||||
def get_package_version(package):
|
def get_package_version(package):
|
||||||
feed = lib.args.feed
|
feed = lib.args.feed
|
||||||
proj = lib.args.obs_project
|
|
||||||
print(f"{package}: getting OBS version")
|
print(f"{package}: getting OBS version")
|
||||||
ret = run_osc(["list", proj, os.path.basename(package)])
|
ret = run_osc(["list", proj, os.path.basename(package)])
|
||||||
|
|
||||||
|
@ -92,7 +90,6 @@ def get_package_version(package):
|
||||||
|
|
||||||
|
|
||||||
def create_package(package):
|
def create_package(package):
|
||||||
proj = lib.args.obs_project
|
|
||||||
print(f"{package}: creating new OBS package")
|
print(f"{package}: creating new OBS package")
|
||||||
|
|
||||||
# cut off repository prefix like in "python/osmo-python-tests"
|
# cut off repository prefix like in "python/osmo-python-tests"
|
||||||
|
@ -117,7 +114,6 @@ def remove_temp_osc():
|
||||||
|
|
||||||
|
|
||||||
def update_package(package, version):
|
def update_package(package, version):
|
||||||
proj = lib.args.obs_project
|
|
||||||
print(f"{package}: updating OBS package")
|
print(f"{package}: updating OBS package")
|
||||||
|
|
||||||
# cut off repository prefix like in "python/osmo-python-tests"
|
# cut off repository prefix like in "python/osmo-python-tests"
|
||||||
|
@ -146,5 +142,4 @@ def update_package(package, version):
|
||||||
|
|
||||||
def delete_package(package, commit_msg):
|
def delete_package(package, commit_msg):
|
||||||
print(f"{package}: removing from OBS ({commit_msg})")
|
print(f"{package}: removing from OBS ({commit_msg})")
|
||||||
run_osc(["rdelete", "-m", commit_msg, lib.args.obs_project,
|
run_osc(["rdelete", "-m", commit_msg, proj, os.path.basename(package)])
|
||||||
os.path.basename(package)])
|
|
||||||
|
|
|
@ -231,9 +231,8 @@ def main():
|
||||||
if args.docker:
|
if args.docker:
|
||||||
lib.docker.run_in_docker_and_exit("update_obs_project.py", True)
|
lib.docker.run_in_docker_and_exit("update_obs_project.py", True)
|
||||||
|
|
||||||
lib.osc.check_proj()
|
|
||||||
lib.osc.check_oscrc()
|
lib.osc.check_oscrc()
|
||||||
lib.osc.set_apiurl(args.apiurl)
|
lib.osc.set_apiurl(args.apiurl, args.obs_project)
|
||||||
|
|
||||||
if not args.ignore_req:
|
if not args.ignore_req:
|
||||||
lib.check_required_programs()
|
lib.check_required_programs()
|
||||||
|
|
Loading…
Reference in New Issue