project-config/zuul.yaml

400 lines
19 KiB
YAML

- pipeline:
name: check
description: |
Newly uploaded patchsets enter this pipeline to receive an
initial +/-1 Verified vote.
manager: independent
trigger:
gerrit:
- event: patchset-created
- event: comment-added
comment: (?i)^(Patch Set [0-9]+:)?( [\w\\+-]*)*(\n\n)?\s*(recheck|reverify)
github:
- event: pull_request
action:
- opened
- changed
- reopened
- event: pull_request
action: comment
comment: (?i)^\s*recheck\s*$
start:
github:
status: pending
comment: false
success:
gerrit:
# Note that gerrit keywords are case-sensitive.
Verified: 1
github:
status: 'success'
mysql:
failure:
gerrit:
Verified: -1
github:
status: 'failure'
mysql:
- pipeline:
name: gate
description: |
Changes that have been approved by core developers are enqueued
in order in this pipeline, and if they pass tests, will be
merged.
success-message: Build succeeded (gate pipeline).
failure-message: |
Build failed (gate pipeline). For information on how to proceed, see
http://docs.openstack.org/infra/manual/developers.html#automated-testing
manager: dependent
precedence: high
require:
gerrit:
open: True
current-patchset: True
approval:
- Verified: [1, 2]
username: zuul
- Workflow: 1
trigger:
gerrit:
- event: comment-added
approval:
- Workflow: 1
- event: comment-added
approval:
- Verified: 1
username: zuul
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.
manager: independent
precedence: low
trigger:
gerrit:
- event: ref-updated
ref: ^(?!refs/).*$
- pipeline:
name: release
# NOTE(pabelanger): release pipeline needs access to credentials (eg: pypi).
post-review: true
description: When a commit is tagged as a release, this pipeline runs jobs that publish archives and documentation.
manager: independent
precedence: high
trigger:
gerrit:
- event: ref-updated
ref: ^refs/tags/[0-9]+(\.[0-9]+)*$
# TODO(pabelanger): Uncomment for production
# failure:
# smtp:
# from: zuul@openstack.org
# to: release-job-failures@lists.openstack.org
# subject: 'Release of {change.project} failed'
- job:
name: base
parent: null
description: |
The base job for OpenStack's installation of Zuul.
All jobs ultimately inherit from this. It runs a pre-playbook
which copies all of the job's prepared git repos on to all of
the nodes in the nodeset. It runs a post-playbook which copies
all of the files in the logs/ subdirectory of the executor
work directory to the logserver.
It also sets default timeout and nodeset values (which may be
overidden).
pre-run: playbooks/base/pre
post-run:
- playbooks/base/post-ssh
- playbooks/base/post-logs
roles:
- zuul: openstack-infra/zuul-jobs
timeout: 1800
nodes:
- name: ubuntu-xenial
label: ubuntu-xenial
secrets:
- site_logs
- job:
name: base-test
parent: null
description: |
A job to test changes to the base job without disturbing the
main job in production. Not for general use.
pre-run: playbooks/base-test/pre
post-run:
- playbooks/base-test/post-ssh
- playbooks/base-test/post-logs
roles:
- zuul: openstack-infra/zuul-jobs
timeout: 1800
nodes:
- name: ubuntu-xenial
label: ubuntu-xenial
secrets:
- site_logs
- job:
name: publish-openstack-artifacts
description: |
Publish job to upload artifacts to tarballs.openstack.org
post-run: playbooks/publish/openstack-artifacts
secrets:
- secret: site_tarballs
name: fileserver
- job:
name: release-openstack-python
parent: publish-openstack-artifacts
description: |
Release python tarballs / wheels to pypi.
pre-run: playbooks/python-tarball/pre
run: playbooks/python-tarball/run
post-run:
- playbooks/python-tarball/post
- playbooks/publish/pypi
secrets:
- secret: testpypi_secret
name: pypi_info
- gpg_key
- job:
name: publish-openstack-python-branch-tarball
parent: publish-openstack-artifacts
description: |
Publish the results of the tox-tarball job to tarballs.openstack.org.
pre-run: playbooks/python-tarball/pre
run: playbooks/python-tarball/run
post-run: playbooks/python-branch-tarball/post
- project:
name: openstack-infra/project-config
check:
jobs: []
- secret:
name: testpypi_secret
data:
repository: testpypi
repository_url: https://test.pypi.org/legacy/
username: openstackci
password: !encrypted/pkcs1-oaep
- ev0vtSMICZsT/LjfT/f9prqvwdPibwY/88nxJxoJNF4syUW2S/5ine9vZoK+atJEzlFbq
J9VrHbc3RokVxR3bjiur/MH5hH5Kk+tZGdRQwk6eoroI5dtyO23lWr86LTRG8BJJPbQmd
jrdPp9E+Tea/C/xAoTGhUbNnofOPEaxsS1T0RqdphCA2FAfefnVR5oWURQpa/XaBKZLAS
H2fBSr0un0mxV+67SlyOFkTTbtF9x72DE9clw3gBX1uArMnKSXdl3SK2LgB/POiGH5YoU
GTFOs6qBxNP/jV8cIBxSf80IHUfspv49LoMNTPfwDRMie4lGCNUgTINzgtkCwuysY0wcC
LYd1NA1RYd57coHKEftCIC1NQYRriTA543kdnCWoZPU6DVaswgEJai0Pg1vC8b5NPYYPw
YZm011oEN6bnVOEfsnhwYCl6GCibELolyW4vv4xGMrOGLFwt6/DXBWpbktwrGqbG4Ku06
hneCGOGjjzy09LmkdjCMi9cbe01udaIB+MA9Bqgt1Jh8AM4OIJaUsCX014g5OUDSNw/VZ
A55ES2jKpwFCottqtgiZSO4n0+0TmjsVwYPwKbyxYEvmxkeldRFwKSz8T3EpV2HQi++aT
aR6LCLkViHsSTluDbv5dJESSQDVjyXyd3gp4jTvXmHlSxSenfSbyV7Rqkia0tk=
- secret:
name: site_logs
data:
fqdn: logs.openstack.org
path: /srv/static/logs
ssh_known_hosts: |
logs.openstack.org,23.253.108.137,2001:4800:7817:104:be76:4eff:fe05:dbee ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDDcvLuGLagUAZfc0BThLus8ufSPCrIhDtG0BdXvhblJjvIbkuELD3dRWRZVSYZAdzGZRY3t6vTAcguTrkbQg5ngXfdfF+OKPkaH8DiZwAX/1g/iRXhInkZTGBVqHo9pLAMeNNwviSy2JjpTqdD6fLEkHwW+uw4E2YZhYivctTSbOepMkzAtFV0w5cpyBzjAT/Hax2x5un6es8R0Iw3AAnUmtapn5e5NCrg2rPNpd0nve84wUavvbC2DeGDOZQdnIahwo60Sder5ZE/x6cG39bkSDdgFQArAzrNrH6BHmNGjfFPpnGmfc7P8gQwDPtMf02HvKapqATXpIxdbSGimWLL
ssh_username: jenkins
ssh_private_key: !encrypted/pkcs1-oaep
- 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
- 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
- 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
- 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
- secret:
name: site_tarballs
data:
fqdn: tarballs.openstack.org
path: /srv/static/tarballs
ssh_known_hosts: |
tarballs.openstack.org,23.253.108.137,2001:4800:7817:104:be76:4eff:fe05:dbee ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDDcvLuGLagUAZfc0BThLus8ufSPCrIhDtG0BdXvhblJjvIbkuELD3dRWRZVSYZAdzGZRY3t6vTAcguTrkbQg5ngXfdfF+OKPkaH8DiZwAX/1g/iRXhInkZTGBVqHo9pLAMeNNwviSy2JjpTqdD6fLEkHwW+uw4E2YZhYivctTSbOepMkzAtFV0w5cpyBzjAT/Hax2x5un6es8R0Iw3AAnUmtapn5e5NCrg2rPNpd0nve84wUavvbC2DeGDOZQdnIahwo60Sder5ZE/x6cG39bkSDdgFQArAzrNrH6BHmNGjfFPpnGmfc7P8gQwDPtMf02HvKapqATXpIxdbSGimWLL
ssh_username: jenkins
ssh_private_key: !encrypted/pkcs1-oaep
- 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
- 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
- t8YWv5PSqr113yqprURpDO9aELtQHRtXl0cW45C4TTzH1JqlLXxs4nLDQ17q3+rAnhJvl
Fda+wr4eIfh7dpI1qG1gHOi2OwiAoodGCcefi9CX0sm7/nlITBLbzRGlnCEFffunhLd4s
gI9lLo4GO8FarBkFV9coLjAINHVfz3dhIOdnsZekLI4mibsz/SQ5HktEiQmsfSGgge8eU
g11eS3FcU7X8ZLeCSRbwVj769gQVllPG4H2A1PwRFFdR+bG+wG+2ht7jRSFzUS9u6lAdA
Ds1r8ZCYdAZS1hFSiCoMP0diT2mgS5mzQN1JiXrRwxFq1JAQWKxNpmbFjKNj6+ueut/5L
U7EXoa98J76kBBPYB7a9ACarNpHBTF1GtCYuFMX67VG30wu9D5XQnma7DZxUZOpWcyhC5
Cr5tcLnmjqQX4rYnCkOrKpscycpI53JApA5d39cyhbHGpyJ0QzwJQ/Ru51HXSmdTjoot0
1fI4Rs3lMxGbDbR2d4aP2rh8RnDSSTjKpo5Ix8/DCdOI2RPIZnm0QT8nDjRG2Vx9Ytbky
RqXPOuIxu+xKUNVCpsJgyS3bvS5xf2eURCQQaa0sI4oIcacrgNZC53ZV+QLhULG0jOlv6
PyCjfuwSsZm6SluMDs0rwD0F2F+RpUotW3AmQlac4dhY8eBo5M+h8ko6MhWtcY=
- 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
- secret:
name: gpg_key
data:
private: !encrypted/pkcs1-oaep
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- project:
name: openstack-infra/zuul-jobs
check:
jobs:
- openstack-doc-build
- tox-py35-on-zuul
- project:
name: openstack-dev/sandbox
release:
jobs:
- release-openstack-python