diff --git a/scripts/obs/build_srcpkg.py b/scripts/obs/build_srcpkg.py index 65022065..91630612 100755 --- a/scripts/obs/build_srcpkg.py +++ b/scripts/obs/build_srcpkg.py @@ -41,10 +41,10 @@ def main(): lib.remove_temp() if args.meta: - lib.metapkg.build(args.conflict_version) + lib.metapkg.build() if args.package: - lib.srcpkg.build(args.package, args.conflict_version, + lib.srcpkg.build(args.package, args.git_fetch, args.gerrit_id) diff --git a/scripts/obs/lib/metapkg.py b/scripts/obs/lib/metapkg.py index 531dab6a..847a56b5 100644 --- a/scripts/obs/lib/metapkg.py +++ b/scripts/obs/lib/metapkg.py @@ -85,9 +85,10 @@ def generate_rpm_spec(version): f.write("%files\n") -def build(conflict_version): +def build(): feed = lib.args.feed pkgname = f"osmocom-{feed}" + conflict_version = lib.args.conflict_version version = conflict_version if conflict_version else "1.0.0" print(f"{pkgname}: generating meta package {version}") diff --git a/scripts/obs/lib/srcpkg.py b/scripts/obs/lib/srcpkg.py index 59a6c455..f1d610dd 100644 --- a/scripts/obs/lib/srcpkg.py +++ b/scripts/obs/lib/srcpkg.py @@ -57,7 +57,7 @@ def get_git_version(project): return ret.output -def get_version_for_feed(project, conflict_version): +def get_version_for_feed(project): if lib.args.feed == "latest": # There's always a tag if we are here. If there was none, the build # would have been skipped for latest. @@ -76,6 +76,7 @@ def get_version_for_feed(project, conflict_version): # Append the conflict_version to increase the version even if the commit # did not change (OS#5135) + conflict_version = lib.args.conflict_version if conflict_version: ret = f"{ret}.{conflict_version}" @@ -132,7 +133,7 @@ def write_commit_txt(project): pathlib.Path(f"{output_path}/commit_{commit}.txt").touch() -def build(project, conflict_version, fetch, gerrit_id=0): +def build(project, fetch, gerrit_id=0): feed = lib.args.feed lib.git.clone(project, fetch) lib.git.clean(project) @@ -140,7 +141,7 @@ def build(project, conflict_version, fetch, gerrit_id=0): lib.git.checkout_from_review(project, gerrit_id) else: checkout_for_feed(project) - version = get_version_for_feed(project, conflict_version) + version = get_version_for_feed(project) epoch = get_epoch(project) version_epoch = f"{epoch}:{version}" if epoch else version has_rpm_spec = lib.rpm_spec.get_spec_in_path(project) is not None @@ -150,9 +151,9 @@ def build(project, conflict_version, fetch, gerrit_id=0): if project in lib.config.projects_osmocom: metapkg = f"osmocom-{feed}" - lib.debian.control_add_depend(project, metapkg, conflict_version) + lib.debian.control_add_depend(project, metapkg, version) if has_rpm_spec: - lib.rpm_spec.add_depend(project, metapkg, conflict_version) + lib.rpm_spec.add_depend(project, metapkg, version) lib.debian.changelog_add_entry_if_needed(project, version_epoch) diff --git a/scripts/obs/update_obs_project.py b/scripts/obs/update_obs_project.py index 716f52b5..155caee4 100755 --- a/scripts/obs/update_obs_project.py +++ b/scripts/obs/update_obs_project.py @@ -32,7 +32,7 @@ def parse_packages(packages_arg): return ret -def build_srcpkg(package, conflict_version, fetch, is_meta_pkg): +def build_srcpkg(package, fetch, is_meta_pkg): global srcpkgs_built global srcpkgs_failed_build @@ -40,9 +40,9 @@ def build_srcpkg(package, conflict_version, fetch, is_meta_pkg): try: if is_meta_pkg: - version = lib.metapkg.build(conflict_version) + version = lib.metapkg.build() else: - version = lib.srcpkg.build(package, conflict_version, fetch) + version = lib.srcpkg.build(package, fetch) srcpkgs_built[package] = version except Exception as ex: traceback.print_exception(type(ex), ex, ex.__traceback__) @@ -62,7 +62,7 @@ def is_up_to_date(obs_version, git_latest_version): return False -def build_srcpkg_if_needed(pkgs_remote, package, conflict_version, +def build_srcpkg_if_needed(pkgs_remote, package, fetch, is_meta_pkg, skip_up_to_date): global srcpkgs_skipped feed = lib.args.feed @@ -72,6 +72,7 @@ def build_srcpkg_if_needed(pkgs_remote, package, conflict_version, """ Check if we can skip this package by comparing the OBS version with the git remote. """ if is_meta_pkg: + conflict_version = lib.args.conflict_version latest_version = conflict_version if conflict_version else "1.0.0" else: if feed == "master": @@ -103,7 +104,7 @@ def build_srcpkg_if_needed(pkgs_remote, package, conflict_version, else: print(f"{package}: building source package (feed is {feed})") - build_srcpkg(package, conflict_version, fetch, is_meta_pkg) + build_srcpkg(package, fetch, is_meta_pkg) def upload_srcpkg(pkgs_remote, package, version): @@ -112,7 +113,7 @@ def upload_srcpkg(pkgs_remote, package, version): lib.osc.update_package(package, version) -def build_srcpkgs(pkgs_remote, packages, conflict_version, fetch, +def build_srcpkgs(pkgs_remote, packages, fetch, meta, skip_up_to_date): print() print("### Building source packages ###") @@ -121,11 +122,11 @@ def build_srcpkgs(pkgs_remote, packages, conflict_version, fetch, if meta: feed = lib.args.feed build_srcpkg_if_needed(pkgs_remote, f"osmocom-{feed}", - conflict_version, fetch, True, skip_up_to_date) + fetch, True, skip_up_to_date) for package in packages: build_srcpkg_if_needed(pkgs_remote, package, - conflict_version, fetch, False, skip_up_to_date) + fetch, False, skip_up_to_date) def upload_srcpkgs(pkgs_remote): @@ -215,7 +216,7 @@ def main(): pkgs_remote = lib.osc.get_remote_pkgs() - build_srcpkgs(pkgs_remote, packages, args.conflict_version, + build_srcpkgs(pkgs_remote, packages, args.git_fetch, args.meta, args.skip_up_to_date) upload_srcpkgs(pkgs_remote) exit_with_summary()