Sylvain Pineau has proposed merging ~sylvain-pineau/hwcert-jenkins-jobs:remove_old_jobs into hwcert-jenkins-jobs:master.
Requested reviews: hwcert-jenkins (hwcert-jenkins) For more details, see: https://code.launchpad.net/~sylvain-pineau/hwcert-jenkins-jobs/+git/hwcert-jenkins-jobs/+merge/433455 jjb cleanup, deprecated snaps builds and release tools moved to monorepo github actions (zapper and checkbox) -- Your team hwcert-jenkins is requested to review the proposed merge of ~sylvain-pineau/hwcert-jenkins-jobs:remove_old_jobs into hwcert-jenkins-jobs:master.
diff --git a/jobs/infrastructure/build-checkbox/snap-build-amba-tools.yaml b/jobs/infrastructure/build-checkbox/snap-build-amba-tools.yaml deleted file mode 100644 index c59b9b8..0000000 --- a/jobs/infrastructure/build-checkbox/snap-build-amba-tools.yaml +++ /dev/null @@ -1,11 +0,0 @@ -- project: - name: amba-tools - description: | - This job will build and publish amba-tools - source-url: git+ssh://[email protected]/~canonical-hw-cert/cc-tool-box/+git/amba-tools - release-targets: 'latest/stable' - lxd_template: ubuntu:focal - check-branches: '' - jobs: - - 'snap-build-{name}-local-trigger' - - 'snap-build-{name}-local' diff --git a/jobs/infrastructure/build-checkbox/snap-build-cdts.yaml b/jobs/infrastructure/build-checkbox/snap-build-cdts.yaml deleted file mode 100644 index 095740f..0000000 --- a/jobs/infrastructure/build-checkbox/snap-build-cdts.yaml +++ /dev/null @@ -1,63 +0,0 @@ -- project: - name: cdts-uc20 - description: | - This job will build and publish cdts UC20 - source-url: https://git.launchpad.net/cdts - source-branch: series_uc20 - builder-name: 'cdts-uc20-edge' - builder-archs: 'amd64' - builder-distro: 'focal' - snapcraft-channel: 'stable' - check-branches: >- - https://git.launchpad.net/plainbox-provider-certification-client - jobs: - - 'snap-build-{name}-lp-trigger' - - 'snap-build-{name}-lp' - -- project: - name: cdts-uc18 - description: | - This job will build and publish cdts UC18 - source-url: https://git.launchpad.net/cdts - source-branch: series_uc18 - builder-name: 'cdts-uc18-edge' - builder-archs: 'amd64' - builder-distro: 'bionic' - snapcraft-channel: 'stable' - check-branches: >- - https://git.launchpad.net/plainbox-provider-certification-client - jobs: - - 'snap-build-{name}-lp-trigger' - - 'snap-build-{name}-lp' - -- project: - name: cdts-1804 - description: | - This job will build and publish cdts 18.04 - source-url: https://git.launchpad.net/cdts - source-branch: series_classic18 - builder-name: 'cdts-18.04-edge' - builder-archs: 'amd64' - builder-distro: 'bionic' - snapcraft-channel: 'stable' - check-branches: >- - https://git.launchpad.net/plainbox-provider-certification-client - jobs: - - 'snap-build-{name}-lp-trigger' - - 'snap-build-{name}-lp' - -- project: - name: cdts-2004 - description: | - This job will build and publish cdts 20.04 - source-url: https://git.launchpad.net/cdts - source-branch: master - builder-name: 'cdts-edge' - builder-archs: 'amd64' - builder-distro: 'focal' - snapcraft-channel: 'stable' - check-branches: >- - https://git.launchpad.net/plainbox-provider-certification-client - jobs: - - 'snap-build-{name}-lp-trigger' - - 'snap-build-{name}-lp' \ No newline at end of file diff --git a/jobs/infrastructure/build-checkbox/snap-build-checkbox.yaml b/jobs/infrastructure/build-checkbox/snap-build-checkbox.yaml index 1f1d972..80c6ec8 100644 --- a/jobs/infrastructure/build-checkbox/snap-build-checkbox.yaml +++ b/jobs/infrastructure/build-checkbox/snap-build-checkbox.yaml @@ -1,88 +1,3 @@ -- project: - name: checkbox22 - description: | - This job will build and publish checkbox22 - source-url: git+ssh://[email protected]/checkbox-core-snap - builder-name: 'checkbox-core22-edge' - builder-archs: 'amd64 arm64 armhf' - builder-distro: 'jammy' - snapcraft-channel: '6.x/stable' - check-branches: >- - git+ssh://[email protected]/plainbox-provider-resource - git+ssh://[email protected]/plainbox-provider-checkbox - git+ssh://[email protected]/plainbox-provider-ipdt - git+ssh://[email protected]/plainbox-provider-docker - git+ssh://[email protected]/plainbox-provider-tpm2 - git+ssh://[email protected]/plainbox-provider-sru - git+ssh://[email protected]/checkbox-provider-edgex - jobs: - - 'snap-build-{name}-lp-trigger' - - 'snap-build-{name}-lp' - -- project: - name: checkbox20 - description: | - This job will build and publish checkbox20 - source-url: git+ssh://[email protected]/checkbox-core-snap - source-branch: series20 - builder-name: 'checkbox-core20-edge' - builder-archs: 'amd64 arm64 armhf' - builder-distro: 'focal' - snapcraft-channel: '6.x/stable' - check-branches: >- - git+ssh://[email protected]/plainbox-provider-resource - git+ssh://[email protected]/plainbox-provider-checkbox - git+ssh://[email protected]/plainbox-provider-ipdt - git+ssh://[email protected]/plainbox-provider-docker - git+ssh://[email protected]/plainbox-provider-tpm2 - git+ssh://[email protected]/plainbox-provider-sru - git+ssh://[email protected]/checkbox-provider-edgex - jobs: - - 'snap-build-{name}-lp-trigger' - - 'snap-build-{name}-lp' - -- project: - name: checkbox18 - description: | - This job will build and publish checkbox18 - source-url: git+ssh://[email protected]/checkbox-core-snap - source-branch: series18 - builder-name: 'checkbox-core18-edge' - builder-distro: 'bionic' - snapcraft-channel: '5.x/stable' - check-branches: >- - git+ssh://[email protected]/plainbox-provider-resource - git+ssh://[email protected]/plainbox-provider-checkbox - git+ssh://[email protected]/plainbox-provider-ipdt - git+ssh://[email protected]/plainbox-provider-docker - git+ssh://[email protected]/plainbox-provider-tpm2 - git+ssh://[email protected]/plainbox-provider-sru - git+ssh://[email protected]/checkbox-provider-edgex - jobs: - - 'snap-build-{name}-lp-trigger' - - 'snap-build-{name}-lp' - -- project: - name: checkbox16 - description: | - This job will build and publish checkbox16 - source-url: git+ssh://[email protected]/checkbox-core-snap - source-branch: series16 - builder-name: 'checkbox-core-edge' - builder-distro: 'xenial' - snapcraft-channel: '4.x/stable' - check-branches: >- - git+ssh://[email protected]/plainbox-provider-resource - git+ssh://[email protected]/plainbox-provider-checkbox - git+ssh://[email protected]/plainbox-provider-ipdt - git+ssh://[email protected]/plainbox-provider-docker - git+ssh://[email protected]/plainbox-provider-tpm2 - git+ssh://[email protected]/plainbox-provider-sru - git+ssh://[email protected]/checkbox-provider-edgex - jobs: - - 'snap-build-{name}-lp-trigger' - - 'snap-build-{name}-lp' - - job-template: name: 'snap-build-{name}-local' project-type: freestyle diff --git a/jobs/infrastructure/build-zapper/daily-build-zapper-deb.yaml b/jobs/infrastructure/build-zapper/daily-build-zapper-deb.yaml deleted file mode 100644 index d1fb7fd..0000000 --- a/jobs/infrastructure/build-zapper/daily-build-zapper-deb.yaml +++ /dev/null @@ -1,131 +0,0 @@ -- project: - name: zapper-daily - description: | - This job will build and dput zapper source package to the daily ppa - source-branch: master - source-repo: git+ssh://[email protected]/~zapper-dev/zapper/+git/zapper - ppa: zapper-dev/ppa - keyid: D331DB5596675FDC1F515C3AF87EC020E04580E8 - recipe: | - # git-build-recipe format 0.4 deb-version {{debupstream}}+git{{revtime}} - {source-repo} {source-branch} - lxd_template: ubuntu:focal - jobs: - - 'deb-build-{name}-lp-trigger' - - 'deb-build-{name}-lp' - -- project: - name: zapper-firmware-daily - description: | - This job will build and dput zapper-firmware source package to the daily ppa - source-branch: master - source-repo: git+ssh://[email protected]/~zapper-dev/zapper/+git/zapper-firmware - ppa: zapper-dev/ppa - keyid: D331DB5596675FDC1F515C3AF87EC020E04580E8 - recipe: | - # git-build-recipe format 0.4 deb-version {{debupstream}}+git{{revtime}} - {source-repo} {source-branch} - lxd_template: ubuntu:focal - jobs: - - 'deb-build-{name}-lp-trigger' - - 'deb-build-{name}-lp' - -- project: - name: zapper-meta-daily - description: | - This job will build and dput zapper-meta source package to the daily ppa - source-branch: master - source-repo: git+ssh://[email protected]/~zapper-dev/zapper/+git/zapper-meta - ppa: zapper-dev/ppa - keyid: D331DB5596675FDC1F515C3AF87EC020E04580E8 - recipe: | - # git-build-recipe format 0.4 deb-version {{debupstream}}+git{{revtime}} - {source-repo} {source-branch} - lxd_template: ubuntu:focal - jobs: - - 'deb-build-{name}-lp-trigger' - - 'deb-build-{name}-lp' - -- project: - name: ustreamer-config-daily - description: | - This job will build and dput ustreamer-config source package to the daily ppa - source-branch: master - source-repo: git+ssh://[email protected]/~zapper-dev/zapper/+git/ustreamer-config - ppa: zapper-dev/ppa - keyid: D331DB5596675FDC1F515C3AF87EC020E04580E8 - recipe: | - # git-build-recipe format 0.4 deb-version {{debupstream}}+git{{revtime}} - {source-repo} {source-branch} - lxd_template: ubuntu:focal - jobs: - - 'deb-build-{name}-lp-trigger' - - 'deb-build-{name}-lp' - -- job-template: - name: 'deb-build-{name}-lp' - node: snapbuild - project-type: freestyle - properties: - - build-discarder: - num-to-keep: 14 - wrappers: - - timestamps - - timeout: - timeout: 400 - fail: true - - ssh-agent-credentials: - users: - - 'ssh-ce-certification-qa' - - credentials-binding: - - ssh-user-private-key: - credential-id: ssh-ce-certification-qa - key-file-variable: GIT_SSH_KEY - username-variable: GITUSER - - file: - credential-id: lp-credentials - variable: LP_CREDS - - file: - credential-id: gpg-secret - variable: GPG_SECRET - - text: - credential-id: gpg-passphrase - variable: GPG_PASSPHRASE - source-repo: '' - source-branch: master - ppa: zapper-dev/ppa - keyid: D331DB5596675FDC1F515C3AF87EC020E04580E8 - builders: - - shell: - !include-raw: deb-build-lp-dput.sh - -- job-template: - name: 'deb-build-{name}-lp-trigger' - node: snapbuild - source-branch: master - properties: - - build-discarder: - num-to-keep: 10 - wrappers: - - ssh-agent-credentials: - users: - - 'ssh-ce-certification-qa' - - credentials-binding: - - ssh-user-private-key: - credential-id: ssh-ce-certification-qa - key-file-variable: GIT_SSH_KEY - username-variable: GITUSER - triggers: - - timed: 'H 2 * * *' - parameters: - - string: - name: src_repo_base_path - description: base url for the source repository to watch - default: "{source-repo}" - builders: - - shell: - !include-raw: deb-build-check-branches.sh - publishers: - - trigger: - project: 'deb-build-{name}-lp' - threshold: SUCCESS diff --git a/jobs/infrastructure/build-zapper/deb-build-check-branches.sh b/jobs/infrastructure/build-zapper/deb-build-check-branches.sh deleted file mode 100644 index 48d839c..0000000 --- a/jobs/infrastructure/build-zapper/deb-build-check-branches.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -set -x - -{build_env} - -rm -rf $WORKSPACE/scratch -mkdir $WORKSPACE/scratch - -REQUEST_BUILD=0 - -cd $WORKSPACE/scratch -git clone --depth 1 -b {source-branch} {source-repo} source -cd "$WORKSPACE/scratch/source" -if [[ $(git log --oneline --since="1 day ago") ]] -then - REQUEST_BUILD=1 -fi - -if (($REQUEST_BUILD)) -then - echo "Build requested..." - exit 0 -fi -echo "No changes, won't request build" -exit 1 diff --git a/jobs/infrastructure/build-zapper/deb-build-lp-dput.sh b/jobs/infrastructure/build-zapper/deb-build-lp-dput.sh deleted file mode 100644 index 358d770..0000000 --- a/jobs/infrastructure/build-zapper/deb-build-lp-dput.sh +++ /dev/null @@ -1,57 +0,0 @@ -#!/bin/bash -set +e -set -x - -[ "{no_run}" = "True" ] && exit - -# Setup reporting tools -rm -rf env -cat <<EOF >build-env.sh -{build_env} -EOF -. build-env.sh - -cat <<EOF > $HOME/.hwcert_creds/config -Host git.launchpad.net - User ce-certification-qa - StrictHostKeyChecking no - UserKnownHostsFile=/dev/null -EOF - -# Check out the project we want to build -rm -rf build recipe -mkdir build - -cat <<EOF >recipe -{recipe} -EOF - -# Build the lxc container -# Note: if the container fails to start, you may need to perform the following -# task on the jenkins slave: -# echo 'root:$UID:1' | sudo tee -a /etc/subuid /etc/subgid -# for our jenkins user, that UID was 113 -lxc stop -f $JOB_NAME -lxc delete $JOB_NAME -lxc init {lxd_template} $JOB_NAME -lxc config set "$JOB_NAME" raw.idmap "both $UID 1000" -lxc config device add "$JOB_NAME" sshconf disk source=$HOME/.hwcert_creds path=/home/ubuntu/.ssh -lxc config device add "$JOB_NAME" build disk source=$PWD/build path=/home/ubuntu/build -lxc config device add "$JOB_NAME" recipe disk source=$PWD/recipe path=/home/ubuntu/recipe -lxc config device add "$JOB_NAME" gpg_secret disk source=$GPG_SECRET path=/home/ubuntu/gpg_secret.key -lxc start "$JOB_NAME" -sleep 15 -lxc exec "$JOB_NAME" -- chown ubuntu.ubuntu /home/ubuntu -lxc exec "$JOB_NAME" -- apt update -# Install some prereqs for building the source package -lxc exec "$JOB_NAME" -- bash -c "DEBIAN_FRONTEND=noninteractive apt install dh-python python3-all python3-distutils-extra debhelper git-build-recipe dput -y" -# run git-build-recipe inside the LXC container -lxc exec "$JOB_NAME" -- sudo -iu ubuntu bash -c "gpg --batch --import ./gpg_secret.key" -lxc exec "$JOB_NAME" -- sudo -iu ubuntu bash -c "git-build-recipe --allow-fallback-to-native --safe --distribution focal --append-version ~ubuntu20.04.1 ./recipe ./build | tee ./build/buildlog.txt" -lxc exec "$JOB_NAME" -- sudo -iu ubuntu bash -c "debsign -k {keyid} -p'gpg --pinentry-mode loopback --passphrase $GPG_PASSPHRASE' ./build/*source.changes" -lxc exec "$JOB_NAME" -- sudo -iu ubuntu bash -c "dput ppa:{ppa} ./build/*source.changes" -EXITCODE=${{PIPESTATUS[0]}} -lxc stop -f $JOB_NAME -lxc delete $JOB_NAME - -exit $EXITCODE diff --git a/jobs/infrastructure/build-zapper/snap-build-zapper-control.yaml b/jobs/infrastructure/build-zapper/snap-build-zapper-control.yaml deleted file mode 100644 index 9cf609f..0000000 --- a/jobs/infrastructure/build-zapper/snap-build-zapper-control.yaml +++ /dev/null @@ -1,17 +0,0 @@ -- project: - name: 'zapper-control' - description: | - This job will build and publish Zapper Control - source-url: [email protected]:canonical/zapper.git - source-branch: main - source-subdir: 'zapper-control' - check-branches: '' - release-targets: 'latest/edge' - lxd_template: ubuntu:jammy - channel: '7.x/stable' - ssh-credential-id: 'ssh-github-zapper' - ssh-user: '' - jobs: - - 'snap-build-{name}-local-armhf' - - 'snap-build-{name}-local-arm64' - - 'snap-build-{name}-local-trigger-arm' diff --git a/jobs/infrastructure/deb-release/deb-release-checkbox.groovy b/jobs/infrastructure/deb-release/deb-release-checkbox.groovy deleted file mode 100644 index 0f532ef..0000000 --- a/jobs/infrastructure/deb-release/deb-release-checkbox.groovy +++ /dev/null @@ -1,160 +0,0 @@ -def lp_login = 'ce-certification-qa' -def merge_jobs = [:] -def build_jobs = [:] - -pipeline { - agent any - options { - parallelsAlwaysFailFast() - } - parameters { - choice(name: 'mode', choices: ['testing', 'stable'], - description: 'Release Phase to Trigger') - booleanParam(name: 'dry_run', defaultValue: true, - description: 'Dry Run Mode') - booleanParam(description: 'Confirm Package(s) selection', - name: 'checkbox-ng', defaultValue: true) - booleanParam(name: 'checkbox-support', defaultValue: true) - booleanParam(name: 'plainbox-provider-resource', defaultValue: true) - booleanParam(name: 'plainbox-provider-checkbox', defaultValue: true) - booleanParam(name: 'plainbox-provider-tpm2', defaultValue: true) - booleanParam(name: 'plainbox-provider-ipdt', defaultValue: true) - booleanParam(name: 'checkbox-provider-phoronix', defaultValue: true) - booleanParam(name: 'checkbox-provider-gpgpu', defaultValue: true) - booleanParam(name: 'plainbox-provider-sru', defaultValue: true) - booleanParam(name: 'plainbox-provider-certification-client', defaultValue: true) - booleanParam(name: 'plainbox-provider-certification-server', defaultValue: true) - } - stages { - stage('Provision') { - steps { - echo "DRY RUN: ${params.dry_run}" - script { - def data = readJSON text: groovy.json.JsonOutput.toJson(params) - writeJSON(file: 'settings.json', json: data, pretty: 4) - } - echo 'Install prerequisites' - sh 'sudo apt-get -qq update' - sh 'sudo DEBIAN_FRONTEND=noninteractive apt-get -qq install -y autoconf bumpversion git-dpm pristine-tar devscripts python3-launchpadlib' - sh 'git -C support pull || git clone https://git.launchpad.net/~checkbox-dev/checkbox/+git/support' - sh "support/release/git/release_deb.py --step cleanup --config settings.json -u $lp_login" - } - } - stage('Clone & Check') { - steps { - sshagent (credentials: ['ssh-ce-certification-qa']) { - sh "support/release/git/release_deb.py --step clone --config settings.json -u $lp_login" - } - } - } - stage('Bump versions') { - steps { - sh "support/release/git/release_deb.py --step bump --config settings.json -u $lp_login" - } - } - stage('Changelog') { - steps { - sh "support/release/git/release_deb.py --step changelog --config settings.json -u $lp_login" - } - } - stage('Sdist') { - steps { - sh """ - git -C checkbox-ng pull -q || git clone -q https://git.launchpad.net/checkbox-ng - virtualenv -q -p python3 env - . env/bin/activate - pip3 install MarkupSafe==2.0.1 - pip3 install Jinja2==2.10.3 - (cd checkbox-ng && ./setup.py -q develop) - support/release/git/release_deb.py --step sdist --config settings.json -u $lp_login - """ - } - } - stage('Git-dpm') { - steps { - sh "support/release/git/release_deb.py --step dpm --config settings.json -u $lp_login" - } - } - stage('Open next') { - when { - expression { return params.mode == 'stable' } - } - steps { - sh "support/release/git/release_deb.py --step open --config settings.json -u $lp_login" - } - } - stage('Push') { - steps { - sshagent (credentials: ['ssh-ce-certification-qa']) { - sh "support/release/git/release_deb.py --step push --config settings.json -u $lp_login" - } - } - } - stage('Merge release into master') { - when { - expression { return params.mode == 'stable' } - } - environment { - LP_CREDS = credentials('lp-credentials') - } - steps { - script { - def projects = params.findAll { it.key.contains('box') } - def settings = readJSON file: 'settings.json' - projects.each { p -> - if (settings[p.key]) { - merge_jobs[p.key] = { - sshagent (credentials: ['ssh-ce-certification-qa']) { - sh "support/release/git/release_deb.py --project $p.key --step merge --config settings.json -u $lp_login" - } - } - } - } - parallel merge_jobs - } - } - } - stage('Build') { - environment { - LP_CREDS = credentials('lp-credentials') - } - steps { - script { - def projects = params.findAll { it.key.contains('box') } - def settings = readJSON file: 'settings.json' - projects.each { p -> - if (settings[p.key]) { - build_jobs[p.key] = { - sh "support/release/git/release_deb.py --project $p.key --step build --config settings.json -u $lp_login" - } - } - } - parallel build_jobs - } - } - } - stage('Release milestones') { - when { - expression { return params.mode == 'stable' } - } - environment { - LP_CREDS = credentials('lp-credentials') - } - steps { - sh "support/release/git/release_deb.py --step milestone --config settings.json -u $lp_login" - } - } - } - post { - always { - archiveArtifacts 'versions.json' - archiveArtifacts 'settings.json' - archiveArtifacts 'release.log' - archiveArtifacts 'changelog' - sh 'rm -f release.log changelog' - } - success { - sh 'rm -f settings.json versions.json changelog' - } - } -} diff --git a/jobs/infrastructure/deb-release/deb-release-checkbox.yaml b/jobs/infrastructure/deb-release/deb-release-checkbox.yaml deleted file mode 100644 index fdfc11c..0000000 --- a/jobs/infrastructure/deb-release/deb-release-checkbox.yaml +++ /dev/null @@ -1,20 +0,0 @@ -- job-template: - name: '{name}-release-checkbox' - project-type: pipeline - dsl: - !include-raw-escape: - - deb-release-checkbox.groovy - properties: - - groovy-label: - sandbox: true - wrappers: - - ssh-agent-credentials: - users: - - 'ssh-ce-certification-qa' - -- project: - name: deb - description: | - This job will release and publish checkbox deb packages in certification ppa - jobs: - - '{name}-release-checkbox' diff --git a/jobs/infrastructure/release-checkbox/snap-release-checkbox.yaml b/jobs/infrastructure/release-checkbox/snap-release-checkbox.yaml deleted file mode 100644 index e07f029..0000000 --- a/jobs/infrastructure/release-checkbox/snap-release-checkbox.yaml +++ /dev/null @@ -1,330 +0,0 @@ -- job-template: - name: 'snap-release-{name}22-beta' - repo: checkbox-core-snap - lp-login: 'ce-certification-qa' - release-branch: release22 - rebase-branch: '' - source-branch: '' - finish-release: '' - properties: - - build-discarder: - num-to-keep: 10 - wrappers: - - ssh-agent-credentials: - users: - - 'ssh-ce-certification-qa' - - credentials-binding: - - file: - credential-id: lp-credentials - variable: LP_CREDS - parameters: - - choice: - name: 'DRY_RUN' - description: Dry run mode (nothing pushed to remote git repo) - choices: - - "False" - - "True" - builders: - - shell: - !include-raw: snap-release.sh - publishers: - - archive: - artifacts: 'release.log' - allow-empty: true - - archive: - artifacts: 'changelog' - allow-empty: true - - trigger: - project: 'snap-release-build-checkbox-content22-beta-lp' - threshold: SUCCESS - - trigger: - project: 'snap-release-checkbox-content20-beta' - threshold: SUCCESS - - trigger: - project: 'snap-release-checkbox-content18-beta' - threshold: SUCCESS - - trigger: - project: 'snap-release-checkbox-content16-beta' - threshold: SUCCESS - -- job-template: - name: 'snap-release-{name}20-beta' - repo: checkbox-core-snap - lp-login: 'ce-certification-qa' - release-branch: release20 - rebase-branch: 'series20' - source-branch: 'release22' - finish-release: '' - properties: - - build-discarder: - num-to-keep: 10 - wrappers: - - ssh-agent-credentials: - users: - - 'ssh-ce-certification-qa' - - credentials-binding: - - file: - credential-id: lp-credentials - variable: LP_CREDS - parameters: - - choice: - name: 'DRY_RUN' - description: Dry run mode (nothing pushed to remote git repo) - choices: - - "False" - - "True" - builders: - - shell: - !include-raw: snap-release.sh - publishers: - - archive: - artifacts: 'release.log' - allow-empty: true - - archive: - artifacts: 'changelog' - allow-empty: true - - trigger: - project: 'snap-release-build-checkbox-content20-beta-lp' - threshold: SUCCESS - -- job-template: - name: 'snap-release-{name}18-beta' - repo: checkbox-core-snap - lp-login: 'ce-certification-qa' - release-branch: release18 - rebase-branch: 'series18' - source-branch: 'release22' - finish-release: '' - properties: - - build-discarder: - num-to-keep: 10 - wrappers: - - ssh-agent-credentials: - users: - - 'ssh-ce-certification-qa' - - credentials-binding: - - file: - credential-id: lp-credentials - variable: LP_CREDS - parameters: - - choice: - name: 'DRY_RUN' - description: Dry run mode (nothing pushed to remote git repo) - choices: - - "False" - - "True" - builders: - - shell: - !include-raw: snap-release.sh - publishers: - - archive: - artifacts: 'release.log' - allow-empty: true - - archive: - artifacts: 'changelog' - allow-empty: true - - trigger: - project: 'snap-release-build-checkbox-content18-beta-lp' - threshold: SUCCESS - -- job-template: - name: 'snap-release-{name}16-beta' - repo: checkbox-core-snap - lp-login: 'ce-certification-qa' - release-branch: release16 - rebase-branch: series16 - source-branch: release22 - finish-release: '' - properties: - - build-discarder: - num-to-keep: 10 - wrappers: - - ssh-agent-credentials: - users: - - 'ssh-ce-certification-qa' - - credentials-binding: - - file: - credential-id: lp-credentials - variable: LP_CREDS - parameters: - - choice: - name: 'DRY_RUN' - description: Dry run mode (nothing pushed to remote git repo) - choices: - - "False" - - "True" - builders: - - shell: - !include-raw: snap-release.sh - publishers: - - archive: - artifacts: 'release.log' - allow-empty: true - - trigger: - project: 'snap-release-build-checkbox-content16-beta-lp' - threshold: SUCCESS - -- job-template: - name: 'snap-release-{name}22-beta-finish' - repo: checkbox-core-snap - lp-login: 'ce-certification-qa' - release-branch: release22 - rebase-branch: '' - source-branch: '' - finish-release: "True" - properties: - - build-discarder: - num-to-keep: 10 - wrappers: - - ssh-agent-credentials: - users: - - 'ssh-ce-certification-qa' - - credentials-binding: - - file: - credential-id: lp-credentials - variable: LP_CREDS - parameters: - - choice: - name: 'DRY_RUN' - description: Dry run mode (nothing pushed to remote git repo) - choices: - - "False" - - "True" - builders: - - shell: - !include-raw: snap-release.sh - publishers: - - archive: - artifacts: 'release.log' - allow-empty: true - -- job-template: - name: 'snap-release-build-{name}22-beta-lp' - project-type: freestyle - builder-name: 'checkbox-release22-beta' - builder-distro: 'jammy' - builder-archs: 'amd64 arm64 armhf' - builder-owner: 'ce-certification-qa' - snapcraft-channel: '6.x/stable' - properties: - - build-discarder: - num-to-keep: 14 - wrappers: - - timestamps - - timeout: - timeout: 400 - fail: true - - ssh-agent-credentials: - users: - - 'ssh-ce-certification-qa' - - credentials-binding: - - file: - credential-id: lp-credentials - variable: LP_CREDS - source-url: https://git.launchpad.net/checkbox-core-snap - source-branch: release22 - builders: - - shell: - !include-raw: jobs/infrastructure/build-checkbox/snap-build-lp-trigger.sh - -- job-template: - name: 'snap-release-build-{name}20-beta-lp' - project-type: freestyle - builder-name: 'checkbox-release20-beta' - builder-distro: 'focal' - builder-archs: 'amd64 arm64 armhf' - builder-owner: 'ce-certification-qa' - snapcraft-channel: '6.x/stable' - properties: - - build-discarder: - num-to-keep: 14 - wrappers: - - timestamps - - timeout: - timeout: 400 - fail: true - - ssh-agent-credentials: - users: - - 'ssh-ce-certification-qa' - - credentials-binding: - - file: - credential-id: lp-credentials - variable: LP_CREDS - source-url: https://git.launchpad.net/checkbox-core-snap - source-branch: release20 - builders: - - shell: - !include-raw: jobs/infrastructure/build-checkbox/snap-build-lp-trigger.sh - -- job-template: - name: 'snap-release-build-{name}18-beta-lp' - project-type: freestyle - builder-name: 'checkbox-release18-beta' - builder-distro: 'bionic' - builder-archs: 'amd64 i386 arm64 armhf' - builder-owner: 'ce-certification-qa' - snapcraft-channel: '5.x/stable' - properties: - - build-discarder: - num-to-keep: 14 - wrappers: - - timestamps - - timeout: - timeout: 400 - fail: true - - ssh-agent-credentials: - users: - - 'ssh-ce-certification-qa' - - credentials-binding: - - file: - credential-id: lp-credentials - variable: LP_CREDS - source-url: https://git.launchpad.net/checkbox-core-snap - source-branch: release18 - builders: - - shell: - !include-raw: jobs/infrastructure/build-checkbox/snap-build-lp-trigger.sh - -- job-template: - name: 'snap-release-build-{name}16-beta-lp' - project-type: freestyle - builder-name: 'checkbox-release16-beta' - builder-distro: 'xenial' - builder-archs: 'amd64 i386 arm64 armhf' - builder-owner: 'ce-certification-qa' - snapcraft-channel: '4.x/stable' - properties: - - build-discarder: - num-to-keep: 14 - wrappers: - - timestamps - - timeout: - timeout: 400 - fail: true - - ssh-agent-credentials: - users: - - 'ssh-ce-certification-qa' - - credentials-binding: - - file: - credential-id: lp-credentials - variable: LP_CREDS - source-url: https://git.launchpad.net/checkbox-core-snap - source-branch: release16 - builders: - - shell: - !include-raw: jobs/infrastructure/build-checkbox/snap-build-lp-trigger.sh - -- project: - name: checkbox-content - description: | - This job will release and publish checkbox[16,18,20,22] to beta channel - jobs: - - 'snap-release-{name}22-beta' - - 'snap-release-{name}20-beta' - - 'snap-release-{name}18-beta' - - 'snap-release-{name}16-beta' - - 'snap-release-build-{name}22-beta-lp' - - 'snap-release-build-{name}20-beta-lp' - - 'snap-release-build-{name}18-beta-lp' - - 'snap-release-build-{name}16-beta-lp' - - 'snap-release-{name}22-beta-finish' diff --git a/jobs/infrastructure/release-checkbox/snap-release.sh b/jobs/infrastructure/release-checkbox/snap-release.sh deleted file mode 100644 index fc26da0..0000000 --- a/jobs/infrastructure/release-checkbox/snap-release.sh +++ /dev/null @@ -1,47 +0,0 @@ -#!/bin/bash - -set -e -set -x - -[ "{no_run}" = "True" ] && exit - -sudo apt-get update -sudo apt-get install -y bumpversion -#Remove previous venv -rm -rf env -cat <<EOF >build-env.sh -{build_env} -EOF -. build-env.sh -git -C support pull || git clone https://git.launchpad.net/~checkbox-dev/checkbox/+git/support -virtualenv -p python3 --system-site-packages env -. env/bin/activate -pip install ruamel.yaml - -REBASE_BRANCH={rebase-branch} -FINISH_RELEASE={finish-release} -if [[ -n $FINISH_RELEASE ]]; then - if [ "${{DRY_RUN}}" = "False" ]; then - ./support/release/snap/release_content_snap.py {repo} {release-branch} -u {lp-login} -f - ./support/release/git/lp-propose-merge {repo} -p {release-branch} -s --credentials $LP_CREDS - else - ./support/release/snap/release_content_snap.py {repo} {release-branch} -u {lp-login} -f -d - fi -elif [[ -z $REBASE_BRANCH ]]; then - if [ "${{DRY_RUN}}" = "False" ]; then - ./support/release/snap/release_content_snap.py {repo} {release-branch} -u {lp-login} - else - ./support/release/snap/release_content_snap.py {repo} {release-branch} -u {lp-login} -d - fi -else - if [ "${{DRY_RUN}}" = "False" ]; then - ./support/release/snap/release_content_snap.py {repo} {release-branch} -u {lp-login} -r {rebase-branch} -b {source-branch} - else - ./support/release/snap/release_content_snap.py {repo} {release-branch} -u {lp-login} -r {rebase-branch} -b {source-branch} -d - fi -fi -# Don't trigger the snap build/upload when running in dry mode -if [ "${{DRY_RUN}}" = "True" ]; then - echo "WARNING: DRY_RUN enabled, failing the release job automatically" - exit 1 -fi diff --git a/jobs/infrastructure/release-project/snap-release-checkbox-project_cdts.yaml b/jobs/infrastructure/release-project/snap-release-checkbox-project_cdts.yaml deleted file mode 100644 index 7033278..0000000 --- a/jobs/infrastructure/release-project/snap-release-checkbox-project_cdts.yaml +++ /dev/null @@ -1,54 +0,0 @@ -- project: - name: release-cdts - repo: cdts - builder-distro: 'focal' - builder-name: 'cdts-release-classic20' - builder-archs: 'amd64 arm64 armhf' - description: | - This job will release and publish cdts to beta channel - jobs: - - 'snap-{name}-create-release-branch' - - 'snap-{name}-build-beta-lp' - - 'snap-{name}-beta-finish' - -- project: - name: release-cdts-classic18 - repo: cdts - track_build: '_classic18' - builder-distro: 'bionic' - builder-name: 'cdts-release-classic18' - builder-archs: 'amd64 arm64 armhf' - description: | - This job will release and publish cdts series_classic18 branch - to the 18.04 track beta channel - jobs: - - 'snap-{name}-create-release-branch' - - 'snap-{name}-build-beta-lp' - -- project: - name: release-cdts-uc20 - repo: cdts - track_build: '_uc20' - builder-distro: 'focal' - builder-name: 'cdts-release-uc20' - builder-archs: 'amd64 arm64 armhf' - description: | - This job will release and publish cdts series_uc20 branch - to the uc20 track beta channel - jobs: - - 'snap-{name}-create-release-branch' - - 'snap-{name}-build-beta-lp' - -- project: - name: release-cdts-uc18 - repo: cdts - track_build: '_uc18' - builder-distro: 'bionic' - builder-name: 'cdts-release-uc18' - builder-archs: 'amd64 arm64 armhf' - description: | - This job will release and publish cdts series_uc18 branch - to the uc18 track beta channel - jobs: - - 'snap-{name}-create-release-branch' - - 'snap-{name}-build-beta-lp' \ No newline at end of file diff --git a/jobs/infrastructure/release-project/snap-release-checkbox-project_checkbox.yaml b/jobs/infrastructure/release-project/snap-release-checkbox-project_checkbox.yaml deleted file mode 100644 index 07516b0..0000000 --- a/jobs/infrastructure/release-project/snap-release-checkbox-project_checkbox.yaml +++ /dev/null @@ -1,108 +0,0 @@ -- project: - name: release-checkbox-classic22 - repo: checkbox - builder-distro: 'jammy' - builder-name: 'checkbox-release-classic22' - builder-archs: 'amd64 arm64 armhf' - snapcraft-channel: 'latest/beta' - description: | - This job will release and publish checkbox to 20.04/beta channel - jobs: - - 'snap-{name}-create-release-branch' - - 'snap-{name}-build-beta-lp' - - 'snap-{name}-beta-finish' - -- project: - name: release-checkbox-classic20 - repo: checkbox - track_build: '_classic20' - builder-distro: 'focal' - builder-name: 'checkbox-release-classic20' - builder-archs: 'amd64 arm64 armhf' - description: | - This job will release and publish checkbox to 20.04/beta channel - jobs: - - 'snap-{name}-create-release-branch' - - 'snap-{name}-build-beta-lp' - -- project: - name: release-checkbox-classic18 - repo: checkbox - track_build: '_classic18' - builder-distro: 'bionic' - builder-name: 'checkbox-release-classic18' - builder-archs: 'amd64 i386 arm64 armhf' - description: | - This job will release and publish checkbox to 18.04/beta channel - jobs: - - 'snap-{name}-create-release-branch' - - 'snap-{name}-build-beta-lp' - -- project: - name: release-checkbox-classic16 - repo: checkbox - track_build: '_classic16' - builder-distro: 'xenial' - builder-name: 'checkbox-release-classic16' - builder-archs: 'amd64 i386 arm64 armhf' - snapcraft-channel: '4.x/stable' - description: | - This job will release and publish checkbox to 16.04/beta channel - jobs: - - 'snap-{name}-create-release-branch' - - 'snap-{name}-build-beta-lp' - - -- project: - name: release-checkbox-uc22 - repo: checkbox - track_build: '_uc22' - builder-distro: 'jammy' - builder-name: 'checkbox-release-uc22' - builder-archs: 'amd64 arm64 armhf' - snapcraft-channel: 'latest/beta' - description: | - This job will release and publish checkbox to uc20/beta channel - jobs: - - 'snap-{name}-create-release-branch' - - 'snap-{name}-build-beta-lp' - -- project: - name: release-checkbox-uc20 - repo: checkbox - track_build: '_uc20' - builder-distro: 'focal' - builder-name: 'checkbox-release-uc20' - builder-archs: 'amd64 arm64 armhf' - description: | - This job will release and publish checkbox to uc20/beta channel - jobs: - - 'snap-{name}-create-release-branch' - - 'snap-{name}-build-beta-lp' - -- project: - name: release-checkbox-uc18 - repo: checkbox - track_build: '_uc18' - builder-distro: 'bionic' - builder-name: 'checkbox-release-uc18' - builder-archs: 'amd64 i386 arm64 armhf' - description: | - This job will release and publish checkbox to uc18/beta channel - jobs: - - 'snap-{name}-create-release-branch' - - 'snap-{name}-build-beta-lp' - -- project: - name: release-checkbox-uc16 - repo: checkbox - track_build: '_uc16' - builder-distro: 'xenial' - builder-name: 'checkbox-release-uc16' - builder-archs: 'amd64 i386 arm64 armhf' - snapcraft-channel: '4.x/stable' - description: | - This job will release and publish checkbox to uc16/beta channel - jobs: - - 'snap-{name}-create-release-branch' - - 'snap-{name}-build-beta-lp'
-- Mailing list: https://launchpad.net/~canonical-hw-cert Post to : [email protected] Unsubscribe : https://launchpad.net/~canonical-hw-cert More help : https://help.launchpad.net/ListHelp

