Attention is currently required from: neels, pespin, fixeria.
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/32216 )
Change subject: bsc: add TC_mscpool_sccp_n_pcstate_detaches_msc
......................................................................
Patch Set 1: Code-Review+1
(1 comment)
Patchset:
PS1:
> I'd expect us to update it as long as we remember to do so. […]
I personally never consciously used nor updated the expected-results, and it is news to me that we have some kind of requirement or rule to do so.
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/32216
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: Ia1aea4e33230d6a685b72ea5ba20dd9c7d265d44
Gerrit-Change-Number: 32216
Gerrit-PatchSet: 1
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 06 Apr 2023 21:05:05 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
Comment-In-Reply-To: neels <nhofmeyr(a)sysmocom.de>
Comment-In-Reply-To: pespin <pespin(a)sysmocom.de>
Comment-In-Reply-To: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: comment
laforge has submitted this change. ( https://gerrit.osmocom.org/c/osmo-ci/+/32227 )
Change subject: obs: add --conflict-pkgname arg
......................................................................
obs: add --conflict-pkgname arg
Prepare to create new feeds for the rhizomatica/testing and
rhizomatica/production branches, which will be based on osmocom:latest.
They will depend on osmocom-latest (the "conflict package"/meta
package), even though their feed name is not latest.
Related: OS#5981
Change-Id: I58e33bb003e2a4af9e9a7b53e5f79a91c3b541eb
---
M scripts/obs/lib/__init__.py
M scripts/obs/lib/metapkg.py
M scripts/obs/lib/srcpkg.py
3 files changed, 20 insertions(+), 2 deletions(-)
Approvals:
Jenkins Builder: Verified
pespin: Looks good to me, but someone else must approve
laforge: Looks good to me, approved
diff --git a/scripts/obs/lib/__init__.py b/scripts/obs/lib/__init__.py
index 9682b19..842dd41 100644
--- a/scripts/obs/lib/__init__.py
+++ b/scripts/obs/lib/__init__.py
@@ -60,6 +60,9 @@
" 20YYqX packages to ensure they are not mixed"
" from different build dates (ABI compatibility"
" is only on latest).")
+ parser.add_argument("-p", "--conflict-pkgname", nargs="?",
+ help="name of the meta-package to depend on (default:"
+ " osmocom-$feed)")
parser.add_argument("-v", "--verbose", action="store_true",
help="always print shell commands and their output,"
" instead of only printing them on error")
diff --git a/scripts/obs/lib/metapkg.py b/scripts/obs/lib/metapkg.py
index 847a56b..38ed930 100644
--- a/scripts/obs/lib/metapkg.py
+++ b/scripts/obs/lib/metapkg.py
@@ -87,7 +87,7 @@
def build():
feed = lib.args.feed
- pkgname = f"osmocom-{feed}"
+ pkgname = lib.args.conflict_pkgname or 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 a58ae15..2751005 100644
--- a/scripts/obs/lib/srcpkg.py
+++ b/scripts/obs/lib/srcpkg.py
@@ -157,7 +157,7 @@
write_tarball_version(project, version_epoch)
if project in lib.config.projects_osmocom:
- metapkg = f"osmocom-{feed}"
+ metapkg = lib.args.conflict_pkgname or f"osmocom-{feed}"
lib.debian.control_add_depend(project, metapkg, conflict_version)
if has_rpm_spec:
lib.rpm_spec.add_depend(project, metapkg, conflict_version)
--
To view, visit https://gerrit.osmocom.org/c/osmo-ci/+/32227
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ci
Gerrit-Branch: master
Gerrit-Change-Id: I58e33bb003e2a4af9e9a7b53e5f79a91c3b541eb
Gerrit-Change-Number: 32227
Gerrit-PatchSet: 2
Gerrit-Owner: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: merged
laforge has submitted this change. ( https://gerrit.osmocom.org/c/osmo-ci/+/32229 )
Change subject: obs: update_obs_project: add ALL_OSMOCOM_PACKAGES
......................................................................
obs: update_obs_project: add ALL_OSMOCOM_PACKAGES
Add this alias to use all Osmocom packages, but no the misc packages
that would also be selected if not specifying the packages argument at
all (limesuite, neocon, open5gs).
This will be used for building packages from the rhizomatica branches,
so we don't check the git repositories of these misc projects for the
git branches.
Related: OS#5981
Change-Id: I4265f43408bc21ac8765449d6766381c75cafe86
---
M scripts/obs/update_obs_project.py
1 file changed, 24 insertions(+), 3 deletions(-)
Approvals:
pespin: Looks good to me, but someone else must approve
Jenkins Builder: Verified
laforge: Looks good to me, approved
diff --git a/scripts/obs/update_obs_project.py b/scripts/obs/update_obs_project.py
index 8c4da5e..599e5cd 100755
--- a/scripts/obs/update_obs_project.py
+++ b/scripts/obs/update_obs_project.py
@@ -24,7 +24,10 @@
ret = []
if packages_arg:
for package in packages_arg:
- ret += [lib.set_proper_package_name(package)]
+ if package == "ALL_OSMOCOM_PACKAGES":
+ ret += lib.config.projects_osmocom
+ else:
+ ret += [lib.set_proper_package_name(package)]
return ret
# Default to all
@@ -218,8 +221,8 @@
parser.add_argument("obs_project",
help="OBS project, e.g. home:osmith:nightly")
parser.add_argument("package", nargs="*",
- help="package name, e.g. libosmocore or open5gs,"
- " default is all packages")
+ help="package name, e.g. libosmocore or open5gs or"
+ " ALL_OSMOCOM_PACKAGES, default is all packages")
args = parser.parse_args()
validate_args(args)
lib.set_args(args)
--
To view, visit https://gerrit.osmocom.org/c/osmo-ci/+/32229
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ci
Gerrit-Branch: master
Gerrit-Change-Id: I4265f43408bc21ac8765449d6766381c75cafe86
Gerrit-Change-Number: 32229
Gerrit-PatchSet: 2
Gerrit-Owner: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: merged
laforge has submitted this change. ( https://gerrit.osmocom.org/c/osmo-ci/+/32228 )
Change subject: obs: update_obs_project: add --delete arg
......................................................................
obs: update_obs_project: add --delete arg
Add a new argument to delete packages from OBS if the git branch does
not exist anymore, but the packages still exists in OBS.
Related: OS#5981
Change-Id: Ib5ccf93a5a0cf8981fc35976bb9e0d3a29721b8d
---
M scripts/obs/lib/git.py
M scripts/obs/lib/osc.py
M scripts/obs/update_obs_project.py
3 files changed, 56 insertions(+), 3 deletions(-)
Approvals:
pespin: Looks good to me, but someone else must approve
Jenkins Builder: Verified
laforge: Looks good to me, approved
diff --git a/scripts/obs/lib/git.py b/scripts/obs/lib/git.py
index 15cb276..0194f77 100644
--- a/scripts/obs/lib/git.py
+++ b/scripts/obs/lib/git.py
@@ -90,7 +90,7 @@
return ret.output.rstrip()
-def get_head_remote(project, branch):
+def get_head_remote(project, branch, branch_missing_ok=True):
if not branch:
branch = get_default_branch(project)
repo_url = get_repo_url(project)
@@ -99,7 +99,13 @@
ls_remote = lib.run_cmd(["git", "ls-remote", repo_url, f"heads/{branch}"])
ret = ls_remote.output.split("\t")[0]
+
+ # If the branch is missing from the remote, git ls-remote exits with 0 and
+ # the output is empty
if not ret:
+ if branch_missing_ok:
+ print(f"{project}: branch not found: {branch}")
+ return None
lib.exit_error_cmd(ls_remote, "failed to find head commit for"
f" {project} in output")
diff --git a/scripts/obs/lib/osc.py b/scripts/obs/lib/osc.py
index c2f6ad4..c9040ec 100644
--- a/scripts/obs/lib/osc.py
+++ b/scripts/obs/lib/osc.py
@@ -142,3 +142,9 @@
run_osc(["commit", "-m", f"upgrade to {version}"], cwd=path_temp_osc_pkg)
remove_temp_osc()
+
+
+def delete_package(package, commit_msg):
+ print(f"{package}: removing from OBS ({commit_msg})")
+ run_osc(["rdelete", "-m", commit_msg, lib.args.obs_project,
+ os.path.basename(package)])
diff --git a/scripts/obs/update_obs_project.py b/scripts/obs/update_obs_project.py
index da796ad..8c4da5e 100755
--- a/scripts/obs/update_obs_project.py
+++ b/scripts/obs/update_obs_project.py
@@ -14,6 +14,7 @@
srcpkgs_built = {} # dict of pkgname: version
srcpkgs_skipped = [] # list of pkgnames
+srcpkgs_deleted = [] # list of pkgnames
srcpkgs_failed_build = [] # list of pkgnames
srcpkgs_failed_upload = [] # list of pkgnames
srcpkgs_updated = [] # list of pkgnames
@@ -51,6 +52,14 @@
srcpkgs_failed_build += [package]
+def delete_srcpkg(package):
+ global srcpkgs_deleted
+ branch = lib.args.git_branch
+
+ lib.osc.delete_package(package, f"branch {branch} does not exist anymore")
+ srcpkgs_deleted += [package]
+
+
def is_up_to_date(obs_version, git_latest_version):
if obs_version == git_latest_version:
return True
@@ -66,6 +75,7 @@
global srcpkgs_skipped
feed = lib.args.feed
branch = lib.args.git_branch
+ delete = lib.args.delete
if feed in ["master", "latest"]:
""" Check if we can skip this package by comparing the OBS version with
@@ -75,12 +85,17 @@
latest_version = conflict_version if conflict_version else "1.0.0"
else:
if feed == "master":
- latest_version = lib.git.get_head_remote(package, branch)
+ latest_version = lib.git.get_head_remote(package, branch,
+ branch_missing_ok=delete)
else:
latest_version = lib.git.get_latest_tag_remote(package)
if latest_version is None:
- print(f"{package}: skipping (no git tag found)")
+ if delete and os.path.basename(package) in pkgs_remote:
+ delete_srcpkg(package)
+ return
+
+ print(f"{package}: skipping (no git tag/branch found)")
srcpkgs_skipped += [package]
return
@@ -164,6 +179,7 @@
print(f"Skipped: {len(srcpkgs_skipped)}")
print(f"Failed (srcpkg build): {len(srcpkgs_failed_build)}")
print(f"Failed (srcpkg upload): {len(srcpkgs_failed_upload)}")
+ print(f"Deleted: {len(srcpkgs_deleted)}")
if not srcpkgs_failed_build and not srcpkgs_failed_upload:
exit(0)
@@ -178,6 +194,14 @@
exit(1)
+def validate_args(args):
+ # Only with feed=master we check the current commit of a branch on a remote
+ # git repository before trying to update/delete a package from OBS
+ if args.delete and args.feed != "master":
+ print("ERROR: --delete can only be used with --feed=master")
+ exit(1)
+
+
def main():
parser = argparse.ArgumentParser(
description="Generate source packages and upload them to OBS.")
@@ -188,12 +212,16 @@
dest="skip_up_to_date", action="store_false",
help="for latest feed, build and upload packages even"
" if the version did not change")
+ parser.add_argument("--delete", action="store_true",
+ help="remove packages from OBS if the git branch (-b)"
+ " does not exist anymore")
parser.add_argument("obs_project",
help="OBS project, e.g. home:osmith:nightly")
parser.add_argument("package", nargs="*",
help="package name, e.g. libosmocore or open5gs,"
" default is all packages")
args = parser.parse_args()
+ validate_args(args)
lib.set_args(args)
packages = parse_packages(args.package)
--
To view, visit https://gerrit.osmocom.org/c/osmo-ci/+/32228
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ci
Gerrit-Branch: master
Gerrit-Change-Id: Ib5ccf93a5a0cf8981fc35976bb9e0d3a29721b8d
Gerrit-Change-Number: 32228
Gerrit-PatchSet: 2
Gerrit-Owner: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: merged
laforge has submitted this change. ( https://gerrit.osmocom.org/c/osmo-ci/+/32231 )
(
1 is the latest approved patch-set.
No files were changed between the latest approved patch-set and the submitted one.
)Change subject: jobs/osmocom-obs: drop obs.osmocom.org suffix
......................................................................
jobs/osmocom-obs: drop obs.osmocom.org suffix
Having the OBS URL at the end of the jenkins job was useful when we were
uploading to obs.osmocom.org and build.opensuse.org at the same time
during the transitional phase. Remove the URL from the job name as this
isn't the case anymore, and so the jobs look consistent with new
Osmocom_OBS jobs.
Change-Id: I460f9e6a508421773e300eee6c5c5654e5760cdb
---
M jobs/master-builds.yml
M jobs/osmocom-obs.yml
2 files changed, 20 insertions(+), 8 deletions(-)
Approvals:
pespin: Looks good to me, but someone else must approve
laforge: Looks good to me, approved
Jenkins Builder: Verified
diff --git a/jobs/master-builds.yml b/jobs/master-builds.yml
index 01e5ac0..828bf52 100644
--- a/jobs/master-builds.yml
+++ b/jobs/master-builds.yml
@@ -581,7 +581,7 @@
- trigger:
project: '{obj:trigger}'
- trigger:
- project: 'Osmocom_OBS_master_obs.osmocom.org'
+ project: 'Osmocom_OBS_master'
- email:
recipients: '{obj:email}'
send-to-individuals: true
diff --git a/jobs/osmocom-obs.yml b/jobs/osmocom-obs.yml
index b0e0e62..4870066 100644
--- a/jobs/osmocom-obs.yml
+++ b/jobs/osmocom-obs.yml
@@ -2,7 +2,7 @@
- project:
name: Osmocom_OBS
jobs:
- - Osmocom_OBS_{type}_{server}
+ - Osmocom_OBS_{type}
type:
- master:
conflict_version: ""
@@ -12,12 +12,9 @@
conflict_version: "$(date +%Y%m%d%H%M)"
- latest:
conflict_version: ""
- server:
- - obs.osmocom.org:
- proj: "osmocom"
- job-template:
- name: 'Osmocom_OBS_{type}_{server}'
+ name: 'Osmocom_OBS_{type}'
project-type: freestyle
concurrent: false
defaults: global
@@ -39,12 +36,12 @@
export PYTHONUNBUFFERED=1
./scripts/obs/update_obs_project.py \
- --apiurl {server} \
+ --apiurl https://obs.osmocom.org \
--conflict-version {conflict_version} \
--docker \
--feed {type} \
--meta \
- {proj}:{type}
+ osmocom:{type}
scm:
- git:
branches:
--
To view, visit https://gerrit.osmocom.org/c/osmo-ci/+/32231
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ci
Gerrit-Branch: master
Gerrit-Change-Id: I460f9e6a508421773e300eee6c5c5654e5760cdb
Gerrit-Change-Number: 32231
Gerrit-PatchSet: 2
Gerrit-Owner: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: merged