From 2dc5c701afa2b8310266defe16e7923f4516865b Mon Sep 17 00:00:00 2001 From: Emanuele Aina <emanuele.aina@collabora.com> Date: Mon, 1 Mar 2021 12:33:29 +0100 Subject: [PATCH] apertis-pkg-merge-*: Make the local suffix customizable Downstreams need a different local suffix for their packages and we may change ours at some point. Signed-off-by: Emanuele Aina <emanuele.aina@collabora.com> --- .gitlab-ci.yml | 10 ++++++++++ .../overlay/usr/bin/apertis-pkg-merge-updates | 5 +++-- .../usr/bin/apertis-pkg-merge-upstream-to-downstreams | 4 +++- 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index f767f6b..e2d72a2 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -146,6 +146,16 @@ test-package-source-builder: - test "$(dpkg-parsechangelog -SVersion)" = 0.5.10.2-5co0 - test "$(dpkg-parsechangelog -SDistribution)" = apertis - cd .. + - rm -rf fixture-dash-unmodified + - git clone https://gitlab.apertis.org/infrastructure/test-data/fixture-dash-unmodified + - ": Verify we correctly handle custom local suffixes" + - cd fixture-dash-unmodified + - apertis-pkg-merge-updates --package dash --upstream debian/buster --downstream apertis/v2020dev0 --local-version-suffix TEST + - git log --graph --oneline --decorate + - git diff debian/buster.. + - test "$(dpkg-parsechangelog -SVersion)" = 0.5.10.2-5TEST0 + - test "$(dpkg-parsechangelog -SDistribution)" = apertis + - cd .. - git clone https://gitlab.apertis.org/infrastructure/test-data/fixture-dash-modified - ": Verify we correctly detect local changes and do not finalise the changelog" - cd fixture-dash-modified diff --git a/package-source-builder/overlay/usr/bin/apertis-pkg-merge-updates b/package-source-builder/overlay/usr/bin/apertis-pkg-merge-updates index 612c7da..11302f6 100755 --- a/package-source-builder/overlay/usr/bin/apertis-pkg-merge-updates +++ b/package-source-builder/overlay/usr/bin/apertis-pkg-merge-updates @@ -94,6 +94,7 @@ def main(): parser.add_argument('--package', dest='package', type=str, help='the package name (e.g. glib2.0)') # TODO: figure this out from the repo parser.add_argument('--downstream', dest='downstream', type=str, help='the downstream branch (e.g. apertis/v2020dev0)') parser.add_argument('--upstream', dest='upstream', type=str, required=True, help='the upstream branch (e.g. debian/buster)') + parser.add_argument('--local-version-suffix', dest="local_suffix", type=str, default="co", help='the local version suffix to be used in the new changelog entry') args = parser.parse_args() package_name = args.package @@ -121,7 +122,7 @@ def main(): # we carry some changes in addition to changelog entries # and metadata under debian/apertis, so someone should # re-summarize the remaining changes - version = upstream_version.full_version + 'co1' + version = upstream_version.full_version + args.local_suffix + '1' bump_version( version, ['PLEASE SUMMARIZE remaining Apertis changes'], @@ -129,7 +130,7 @@ def main(): ) else: # no changes, but we add a suffix anyway - version = upstream_version.full_version + 'co0' + version = upstream_version.full_version + args.local_suffix + '0' bump_version( version, [f'Sync from Debian {args.upstream}.'], diff --git a/package-source-builder/overlay/usr/bin/apertis-pkg-merge-upstream-to-downstreams b/package-source-builder/overlay/usr/bin/apertis-pkg-merge-upstream-to-downstreams index 623ee0b..8d7ade8 100755 --- a/package-source-builder/overlay/usr/bin/apertis-pkg-merge-upstream-to-downstreams +++ b/package-source-builder/overlay/usr/bin/apertis-pkg-merge-upstream-to-downstreams @@ -67,11 +67,13 @@ def main(): required=True, help='the upstream branch (e.g. debian/buster)') parser.add_argument('--downstreams', dest='downstreams', type=str, required=True, help='downstream branches, colon seperate (e.g. apertis/v2020dev0:apertis/v2019)') + parser.add_argument('--local-version-suffix', dest="local_suffix", type=str, default="co", help='the local version suffix to be used in new changelog entries') parser.add_argument('project_url', type=str, help='git project url to push updates to') args = parser.parse_args() upstream = args.upstream downstreams = args.downstreams.split(":") + local_suffix = args.local_suffix for upstream_branch in existing_upstream_branches(upstream): # Mapping of downstream reference to proposed updates @@ -92,7 +94,7 @@ def main(): print("New target, doing merge") proposed_branch = f"proposed-updates/{upstream_branch}/{ref[0:8]}" git.checkout("-B", proposed_branch) - apertis_pkg_merge_updates(f"--downstream={downstream_branch}", f"--upstream={upstream_branch}", _fg=True) + apertis_pkg_merge_updates(f"--downstream={downstream_branch}", f"--upstream={upstream_branch}", "--local-version-suffix={local_suffix}", _fg=True) o = git('diff', '--quiet', f"HEAD..{downstream_branch}", _ok_code=[0,1]) if o.exit_code == 1: print("Merge done, pushing") -- GitLab