nodepool/.zuul.yaml
James E. Blair f274c0f6bf
Build images with Dockerfile instead of pbrx
Use the opendevorg/python-builder image to build nodepool images
with a Dockerfile and multi-stage builds.

bindep wasn't installing gcc for dpkg. Remove the platform restrictions
for it.

Change-Id: I0282b75ffad3d0ae1b589381010a3d4273fceb07
2019-01-24 16:11:12 +00:00

253 lines
7.7 KiB
YAML

- 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:
- openstack-infra/nodepool
- openstack-infra/zuul
vars:
zuul_work_dir: "{{ zuul.projects['git.openstack.org/openstack-infra/zuul'].src_dir }}"
tox_envlist: nodepool
# 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:
- openstack-infra/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://git.openstack.org/openstack-infra/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: openstack-infra/glean
- name: openstack-infra/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
- 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:
- openstack-infra/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:
- openstack-infra/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: build-docker-image
description: Build Docker images.
vars: &nodepool_image_vars
docker_images:
- context: .
repository: zuul/nodepool-base
target: nodepool-base
- 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: 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: 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:
- tox-docs
- tox-pep8
- tox-py35
- tox-py36:
nodeset: ubuntu-bionic
- nodepool-zuul-functional:
voting: false
- nodepool-functional-py35:
voting: false
- nodepool-functional-py35-src:
voting: false
- nodepool-functional-k8s
- nodepool-functional-openshift
- nodepool-build-image
- zuul-quick-start
gate:
jobs:
- tox-docs
- tox-pep8
- tox-py35
- tox-py36:
nodeset: ubuntu-bionic
- zuul-quick-start
- nodepool-upload-image
post:
jobs:
- publish-zuul-docs
promote:
jobs:
- nodepool-promote-image
experimental:
jobs:
- nodepool-functional-py35-debian-src
release:
jobs:
- release-zuul-python
- publish-zuul-docs