osmith has submitted this change. ( https://gerrit.osmocom.org/c/osmo-ci/+/37172?usp=email )
Change subject: OBS: update_obs_project: add --exclude-package ......................................................................
OBS: update_obs_project: add --exclude-package
Prepare for building the asan repository. We don't need to build e.g. the erlang projects for that.
Related: OS#5301 Change-Id: If02fd38da05113e28ee401d592edfc7528388308 --- M scripts/obs/update_obs_project.py 1 file changed, 28 insertions(+), 7 deletions(-)
Approvals: Jenkins Builder: Verified daniel: Looks good to me, but someone else must approve pespin: Looks good to me, approved
diff --git a/scripts/obs/update_obs_project.py b/scripts/obs/update_obs_project.py index ea9b731..6f3bffc 100755 --- a/scripts/obs/update_obs_project.py +++ b/scripts/obs/update_obs_project.py @@ -21,7 +21,7 @@ srcpkgs_updated = [] # list of pkgnames
-def parse_packages(packages_arg): +def parse_packages(packages_arg, excludes_arg): ret = [] if packages_arg: for package in packages_arg: @@ -29,11 +29,15 @@ ret += lib.config.projects_osmocom else: ret += [lib.set_proper_package_name(package)] - return ret + else: # Default to all + ret += lib.config.projects_osmocom + ret += lib.config.projects_other
- # Default to all - ret += lib.config.projects_osmocom - ret += lib.config.projects_other + # Apply --exclude-package + for package in excludes_arg: + if package in ret: + ret.remove(package) + return ret
@@ -209,7 +213,11 @@ def main(): parser = argparse.ArgumentParser( description="Generate source packages and upload them to OBS.") - lib.add_shared_arguments(parser) + groups = lib.add_shared_arguments(parser) + + groups["pkg"].add_argument("-E", "--exclude-package", nargs="*", + default=[], + help="do not build and update this package")
group_obs = parser.add_argument_group("OBS options") group_obs.add_argument("-A", "--apiurl", help="OBS API URL or .oscrc alias" @@ -230,7 +238,7 @@ args = parser.parse_args() validate_args(args) lib.set_args(args) - packages = parse_packages(args.package) + packages = parse_packages(args.package, args.exclude_package)
if args.docker: lib.docker.run_in_docker_and_exit("update_obs_project.py", True)