# This file holds all gerrit verifications for building deb and rpm packages. # https://jenkins.osmocom.org/jenkins/view/Jenkins-Gerrit/. # One can simply add a gerrit job by adding project's repository to repos list. - project: name: gerrit-binpkgs jobs: - 'gerrit-binpkgs-{type}' type: - 'deb' - 'rpm' - job-template: name: 'gerrit-binpkgs-{type}' project-type: freestyle node: osmocom-gerrit-debian10 || osmocom-gerrit-debian11 concurrent: true retry-count: 3 # scm checkout properties: - build-discarder: days-to-keep: 30 num-to-keep: 120 artifact-days-to-keep: -1 artifact-num-to-keep: -1 description: | {type} package job of CI for patches sent to gerrit

Related issue: OS#2385 parameters: - string: name: BRANCH_CI description: | osmo-ci.git branch default: 'master' - string: name: GERRIT_REPO_URL description: set by gerrit verification pipeline job - string: name: GERRIT_BRANCH description: set by gerrit verification pipeline job - string: name: GERRIT_REFSPEC description: set by gerrit verification pipeline job - string: name: PROJECT_NAME description: project to test, e.g. 'libosmocore' (set by pipeline) scm: - git: basedir: 'code-from-gerrit' url: '$GERRIT_REPO_URL' credentials-id: d5eda5e9-b59d-44ba-88d2-43473cb6e42d branches: - $GERRIT_BRANCH refspec: $GERRIT_REFSPEC name: choosing-strategy: gerrit wipe-workspace: true skip-tag: true submodule: recursive: false builders: - shell: |- # Skip rpm build if .spec.in file is missing if [ "{type}" = "rpm" ] && [ -z "$(find code-from-gerrit -name '*.spec.in')" ]; then set +x echo echo "No *.spec.in file found, skipping rpm build." echo exit 0 fi # Clone osmo-ci.git rm -rf osmo-ci git clone \ --depth=1 \ --branch="$BRANCH_CI" \ https://gerrit.osmocom.org/osmo-ci \ osmo-ci git -C osmo-ci log --oneline # Get distro from type case "{type}" in deb) distro="debian:11" ;; rpm) distro="almalinux:8" ;; *) echo "unknown package format: '{type}'"; exit 1 ;; esac # Move code from gerrit to build_srcpkg.py's git cache cache_dir=osmo-ci/scripts/obs/_cache mkdir -p $cache_dir mv code-from-gerrit "$cache_dir/$PROJECT_NAME" # Set a known branch name git -C "$cache_dir/$PROJECT_NAME" checkout -B "origin/gerrit" # Build source package cd osmo-ci/scripts/obs/ ./build_srcpkg.py \ --docker \ --feed master \ --git-branch gerrit \ --git-skip-fetch \ "$PROJECT_NAME" # Build binary package ./build_binpkg.py \ --docker "$distro" \ "$PROJECT_NAME" wrappers: - ansicolor: colormap: xterm - ssh-agent-credentials: users: - d5eda5e9-b59d-44ba-88d2-43473cb6e42d # vim: expandtab tabstop=2 shiftwidth=2