mirror of
https://github.com/certbot/certbot.git
synced 2026-08-02 03:02:15 +02:00
Fixes https://github.com/certbot/certbot/issues/8208. Fixes https://github.com/certbot/certbot/issues/8198. In addition to those two linked issues, this PR: * Splits both the build and deploy steps based on architecture for performance. The Docker builds should no longer be the bottleneck in any stage of the pipeline. * Skips building Docker images for ARM on `test-` branches like [we do for snaps](https://github.com/certbot/certbot/blob/e8a232297d6faedb3b0bffc197a2e98c2e59edcb/.azure-pipelines/templates/jobs/packaging-jobs.yml#L67-L71). I initially didn't want to do this, but the ARM builds take ~18 minutes which is significantly longer than any other job currently running on our `test-` branches. You can see tests running on my fork at: * [Release pipeline](https://dev.azure.com/bmw0523/bmw/_build/results?buildId=387&view=results) * [Test pipeline](https://dev.azure.com/bmw0523/bmw/_build/results?buildId=388&view=results) * [Nightly pipeline](https://dev.azure.com/bmw0523/bmw/_build/results?buildId=390&view=results) * update script intro * update readme * ParseRequestedArch * build all arch in Azure * Build docker images during testing/packaging. * require global variable? * Error if TAG_BASE is empty. * prepare build job * change variable syntax * Update deploy stage. * remove old dockerTag param * add displayName * fix docker images command * split docker_build by arch * Allow deploying a subset of architectures. * deploy in parallel * Skip ARM builds on test- branches. * fix spacing
19 lines
492 B
YAML
19 lines
492 B
YAML
# Release pipeline to run our full test suite, build artifacts, and deploy them
|
|
# for GitHub release tags.
|
|
trigger:
|
|
tags:
|
|
include:
|
|
- v*
|
|
pr: none
|
|
|
|
variables:
|
|
dockerTag: ${{variables['Build.SourceBranchName']}}
|
|
|
|
stages:
|
|
- template: templates/stages/test-and-package-stage.yml
|
|
- template: templates/stages/changelog-stage.yml
|
|
- template: templates/stages/deploy-stage.yml
|
|
parameters:
|
|
snapReleaseChannel: beta
|
|
- template: templates/stages/notify-failure-stage.yml
|