project-config/zuul.d/pipelines.yaml
Jeremy Stanley 53a7bfba18 Correctly match releases as well as prereleases
Prior change I6a45d35c242d40c4fabe6dd8aae3812327a8f743 incorrectly
set the release pipeline so only PEP-440 prerelease tags would
trigger it. Make the prerelease suffix optional so that normal
release tags will also be enqueued.

Change-Id: Iea86b08c5de8b15fd8d0d017106899226bbd0022
2021-02-05 22:04:04 +00:00

176 lines
4.3 KiB
YAML

- pipeline:
name: check
description: |
Newly uploaded patchsets enter this pipeline to receive an
initial +/-1 Verified vote.
success-message: Build succeeded (check pipeline).
failure-message: Build failed (check pipeline).
manager: independent
precedence: low
require:
gerrit:
open: True
current-patchset: True
trigger:
gerrit:
- event: patchset-created
- event: change-restored
- event: comment-added
comment: (?i)^(Patch Set [0-9]+:)?( [\w\\+-]*)*(\n\n)?\s*recheck
success:
gerrit:
# Note that gerrit keywords are case-sensitive.
Verified: 1
mysql:
failure:
gerrit:
Verified: -1
mysql:
- pipeline:
name: gate
description: |
Changes that have been approved by core reviewers are enqueued
in order in this pipeline, and if they pass tests, will be
merged. For documentation on how gating with Zuul works, please see
https://zuul-ci.org/docs/zuul/user/gating.html
success-message: Build succeeded (gate pipeline).
failure-message: Build failed (gate pipeline).
manager: dependent
precedence: normal
supercedes: check
post-review: True
require:
gerrit:
open: True
current-patchset: True
approval:
- Workflow: 1
trigger:
gerrit:
- event: comment-added
approval:
- Workflow: 1
- event: comment-added
comment: (?i)^(Patch Set [0-9]+:)?( [\w\\+-]*)*(\n\n)?\s*re(check|verify)
start:
gerrit:
Verified: 0
success:
gerrit:
Verified: 2
submit: true
mysql:
failure:
gerrit:
Verified: -2
mysql:
window-floor: 20
window-increase-factor: 2
- pipeline:
name: post
description: |
This pipeline runs jobs that operate after each change is
merged. Queue items are identified by the abbreviated hash (git
log --format=%h) of the merge commit.
manager: supercedent
precedence: high
post-review: True
trigger:
gerrit:
- event: ref-updated
ref: ^refs/heads/.*$
success:
mysql:
failure:
mysql:
- pipeline:
name: promote
description: |
This pipeline runs jobs that operate after each change is merged
in order to promote artifacts generated in the gate
pipeline.
success-message: Build succeeded (promote pipeline).
failure-message: Build failed (promote pipeline).
manager: supercedent
precedence: high
post-review: True
trigger:
gerrit:
- event: change-merged
success:
gerrit: {}
mysql:
failure:
gerrit: {}
mysql:
- pipeline:
name: release
description: |
When a commit is tagged as a release, this pipeline runs jobs
that publish archives and documentation.
manager: independent
precedence: high
post-review: True
trigger:
gerrit:
- event: ref-updated
ref: ^refs/tags/[0-9]+(\.[0-9]+)*((a|b|rc)[0-9]+)?$
success:
mysql:
failure:
mysql:
- pipeline:
name: periodic
post-review: true
description: Jobs in this queue are triggered on a timer.
manager: independent
precedence: low
trigger:
timer:
- time: '0 6 * * *'
success:
mysql:
failure:
mysql:
- pipeline:
name: tag
post-review: true
description: This pipeline runs jobs in response to any tag event.
manager: independent
precedence: high
trigger:
gerrit:
- event: ref-updated
ref: ^refs/tags/.*$
success:
mysql:
failure:
mysql:
- pipeline:
name: experimental
description: |
On-demand pipeline for requesting a run against a set of jobs
that are not yet gating. Leave review comment of "check
experimental" to run jobs in this pipeline.
success-message: Build succeeded (experimental pipeline).
failure-message: Build failed (experimental pipeline).
manager: independent
precedence: low
trigger:
gerrit:
- event: comment-added
comment: (?i)^(Patch Set [0-9]+:)?( [\w\\+-]*)*(\n\n)?\s*check experimental\s*$
success:
gerrit: {}
mysql:
failure:
gerrit: {}
mysql: