336 lines
10 KiB
YAML
Raw Normal View History

- job:
name: nodepool-zuul-functional
parent: tox
description: |
Test that zuul works with current nodepool sources.
This test runs the zuul project ``nodepool`` environment.
pre-run: playbooks/nodepool-zuul-functional/pre.yaml
post-run: playbooks/nodepool-zuul-functional/post.yaml
required-projects:
- zuul/nodepool
- zuul/zuul
vars:
zuul_work_dir: "{{ zuul.projects['opendev.org/zuul/zuul'].src_dir }}"
tox_envlist: nodepool
- job:
name: nodepool-functional-openstack-base
description: |
Test Nodepool with an OpenStack.
Sets up a working OpenStack system, builds an image, launches a
node, and verifies SSH access to the node.
.. zuul:jobvar:: nodepool_extra_packages
:type: list
A list of extra packages to install at the start of the job
(i.e., anything needed for the DIB build).
.. zuul:jobvar:: nodepool_diskimage
:type: dict
.. zuul:jobvar:: base_element
The base element to use when building the disk image.
.. zuul:jobvar:: release
The release number or name to use with the base element.
.. zuul:jobvar:: mirror
The URL for the package mirror to use when building the
disk image. This is optional.
.. zuul:jobvar:: env-vars
:type: dict
A dictionary of environment variables and values to add
to the DIB environment when building the image.
timeout: 5400
required-projects:
- zuul/nodepool
pre-run: playbooks/nodepool-functional-openstack/pre.yaml
run: playbooks/nodepool-functional-openstack/run.yaml
post-run: playbooks/nodepool-functional-openstack/post.yaml
vars:
zuul_copy_output:
/var/log/nodepool: logs
- job:
name: nodepool-functional-openstack
description: Test Nodepool with an OpenStack
parent: nodepool-functional-openstack-base
vars: &nodepool_diskimage_vars
nodepool_extra_packages:
- rpm
- yum-utils
nodepool_diskimage:
base_element: centos-minimal
release: 7
mirror: "http://{{ zuul_site_mirror_fqdn }}/centos"
env-vars:
DIB_SIMPLE_INIT_NETWORKMANAGER: '1'
- job:
name: nodepool-functional-openstack-src-base
description: Test Nodepool and OpenStack, with some projects from source
parent: nodepool-functional-openstack-base
required-projects:
- name: github.com/sqlalchemy/dogpile.cache
- name: opendev/glean
- name: zuul/nodepool
- name: openstack/diskimage-builder
- name: openstack/openstacksdk
- job:
name: nodepool-functional-openstack-src
description: Test Nodepool and OpenStack, with some projects from source
parent: nodepool-functional-openstack
required-projects:
- name: github.com/sqlalchemy/dogpile.cache
- name: opendev/glean
- name: zuul/nodepool
- name: openstack/diskimage-builder
- name: openstack/openstacksdk
vars: *nodepool_diskimage_vars
# NOTE(ianw): this job doesn't really do anything unless you set
# "NODEPOOL_PAUSE_something_DIB: false" to unpause one or more builds.
- job:
name: nodepool-functional-base
parent: devstack
# NOTE(ianw): for now, keep these jobs as Xenial only. We will
# add bionic variants, but we want to keep Xenial testing around
# whilst we still run Xenial for upstream nodepool-builders too
nodeset: openstack-single-node-xenial
pre-run: playbooks/nodepool-functional-base/pre.yaml
post-run: playbooks/nodepool-functional-base/post.yaml
timeout: 5400
required-projects:
- zuul/nodepool
vars:
devstack_localrc:
USE_PYTHON3: True
devstack_services:
horizon: false
ceilometer-acentral: false
ceilometer-acompute: false
ceilometer-alarm-evaluator: false
ceilometer-alarm-notifier: false
ceilometer-anotification: false
ceilometer-api: false
ceilometer-collector: false
cinder: false
c-bak: false
c-sch: false
c-api: false
c-vol: false
s-account: false
s-container: false
s-object: false
s-proxy: false
# Nodepool doesn't need vnc access
n-novnc: false
# Nodepool testing uses config drive only
n-api-meta: false
q-meta: false
devstack_plugins:
nodepool: https://opendev.org/zuul/nodepool
zuul_copy_output:
'/var/log/nodepool/builds': 'logs'
- job:
name: nodepool-functional-py35
parent: nodepool-functional-base
description: |
Run nodepool functional tests for py35
run: playbooks/nodepool-functional-py35/run.yaml
vars:
devstack_localrc:
NODEPOOL_PAUSE_UBUNTU_XENIAL_DIB: false
- job:
name: nodepool-functional-py35-src-base
parent: nodepool-functional-base
run: playbooks/nodepool-functional-py35-src/run.yaml
required-projects:
- name: github.com/sqlalchemy/dogpile.cache
- name: opendev/glean
- name: zuul/nodepool
- name: openstack/diskimage-builder
- name: openstack/openstacksdk
- job:
name: nodepool-functional-py35-src
parent: nodepool-functional-py35-src-base
vars:
devstack_localrc:
NODEPOOL_PAUSE_UBUNTU_XENIAL_DIB: false
# Distro functional tests. This is used by projects such as
# diskimage-builder and glean as live-boot tests
- job:
name: nodepool-functional-py35-redhat-src
parent: nodepool-functional-py35-src-base
vars:
devstack_localrc:
NODEPOOL_PAUSE_CENTOS_7_DIB: false
NODEPOOL_PAUSE_FEDORA_29_DIB: false
- job:
name: nodepool-functional-py35-suse-src
parent: nodepool-functional-py35-src-base
vars:
devstack_localrc:
NODEPOOL_PAUSE_OPENSUSE_423_DIB: false
NODEPOOL_PAUSE_OPENSUSE_150_DIB: false
NODEPOOL_PAUSE_OPENSUSE_TUMBLEWEED_DIB: false
- job:
name: nodepool-functional-py35-gentoo-src
parent: nodepool-functional-py35-src-base
vars:
devstack_localrc:
NODEPOOL_PAUSE_GENTOO_17_0_SYSTEMD_DIB: false
- job:
name: nodepool-functional-py35-ubuntu-src
parent: nodepool-functional-py35-src-base
vars:
devstack_localrc:
NODEPOOL_PAUSE_UBUNTU_BIONIC_DIB: false
NODEPOOL_PAUSE_UBUNTU_XENIAL_DIB: false
NODEPOOL_PAUSE_UBUNTU_TRUSTY_DIB: false
- job:
name: nodepool-functional-py35-debian-src
parent: nodepool-functional-py35-src-base
vars:
devstack_localrc:
NODEPOOL_PAUSE_DEBIAN_STRETCH_DIB: false
NODEPOOL_PAUSE_DEBIAN_BUSTER_DIB: false
- job:
description: |
Test that nodepool works with kubernetes.
name: nodepool-functional-k8s
pre-run: playbooks/nodepool-functional-k8s/pre.yaml
run: playbooks/nodepool-functional-k8s/run.yaml
post-run: playbooks/nodepool-functional-k8s/post.yaml
nodeset: ubuntu-xenial
required-projects:
- zuul/nodepool
- job:
description: |
Test that nodepool works with openshift.
name: nodepool-functional-openshift
pre-run: playbooks/nodepool-functional-openshift/pre.yaml
run: playbooks/nodepool-functional-openshift/run.yaml
nodeset:
nodes:
- name: cluster
label: centos-7
- name: launcher
label: fedora-28
required-projects:
- zuul/nodepool
- secret:
name: nodepool-dockerhub
data:
username: zuulzuul
password: !encrypted/pkcs1-oaep
- VV5m4XbsYvAz0/7T+WoIypvD3ijRsPYrGo4O5JuOHt6TX14s9B1KddeMwnabEEKapPdbb
cwqbzFKoHRMi8DdXiDKxrgbTSC1jb3BvKq7XE0/xF4Bq2dM+r3yDnXS6a7BuijSqFSiMG
/9bf0jqEAWXWCvbYUAxKOklJIRLjcKywCP5CulmW6EV8f1Iya8Y7UGpjGyL34FVQuc52Y
5MLp+Dra95pvBJMgikbu7LtMPCXOMctUFBpwNArCjWKGhz00UZwyAmsbPPHwQWb+884ZP
v9zi2FuRAL+rn4DRVwyIw28ZdCEr5F5EkZon3lSIhikhdQIyHPtW8VwMJTL4RxBdmgcEt
+zZBbLlOU+0AHPGLlO/yQNvHeSzwY9pe2oIGuqSu3h6zp6Y0NIE/Q0VpiIXWpOAnLOmno
uOd3j9tZ1beol2mg4Yk7rOaXu1Fvtfhd1K3LpLzEbiGzCMIEZuFHU2ZInAbUmtm0BtbDa
/bYvI9dB/uqA2xgse5rVMa++v3AfWJTJhFY/wBU4fHOWlFBUZKFuSoijUcWMfnfMMyU2B
A5CQKhv4Wmtzbvo/oneYkwFOTYaPNj2DS0BcFJFkR8FZDYmTBPnKoBH5wpwwnrzPOpCMa
L21z+Vp1Vce1XCsaOduMrmZDvuQcK1YOKIIUeElAQw8GuwTfcXqekoPvp54SeE=
- job:
name: nodepool-build-image
parent: opendev-build-docker-image
description: Build Docker images.
vars: &nodepool_image_vars
docker_images:
- context: .
repository: zuul/nodepool
target: nodepool
- context: .
repository: zuul/nodepool-launcher
target: nodepool-launcher
- context: .
repository: zuul/nodepool-builder
target: nodepool-builder
- job:
name: nodepool-upload-image
parent: opendev-upload-docker-image
description: Build Docker images and upload to Docker Hub.
vars: *nodepool_image_vars
secrets:
- name: docker_credentials
secret: nodepool-dockerhub
pass-to-parent: true
- job:
name: nodepool-promote-image
parent: opendev-promote-docker-image
description: Promote previously uploaded Docker images.
vars: *nodepool_image_vars
secrets:
- name: docker_credentials
secret: nodepool-dockerhub
pass-to-parent: true
- project:
check:
jobs:
- nodepool-build-image
- tox-docs
- tox-pep8
- tox-py35:
nodeset: ubuntu-xenial
- tox-py36
- nodepool-zuul-functional:
voting: false
- nodepool-functional-openstack
- nodepool-functional-openstack-src
- nodepool-functional-k8s
- nodepool-functional-openshift
- zuul-quick-start:
dependencies: nodepool-build-image
gate:
jobs:
- nodepool-upload-image
- tox-docs
- tox-pep8
- tox-py35:
nodeset: ubuntu-xenial
- tox-py36
- zuul-quick-start:
dependencies: nodepool-upload-image
post:
jobs:
- publish-zuul-docs
- release-zuul-python
promote:
jobs:
- nodepool-promote-image
experimental:
jobs:
- nodepool-functional-py35-debian-src
release:
jobs:
- release-zuul-python
- publish-zuul-docs