Files
zuul/.zuul.yaml
T
David Shrewsbury 0575d4f89b Fix zuul-stream-functional tests
The pre.yaml playbook for the zuul-stream-functional tests copies
the Ansible inventory.yaml file from the executor to the test
"controller" node. The controller then runs the specified version
of Ansible 2.x against the other nodes. This fails because the
executor version of inventory.yaml contains "auto" for the Ansible
python interpreter which is valid under the version of Ansible used
on the executor, but on the controller node, which runs the older
versions of Ansible, this is *not* a valid value. Thus it fails.

This change forces the executor to use the version of Ansible being
tested on the controller so that the inventory.yaml will be correct.

Also, Ansible 2.8 now throws a FileNotFoundError exception instead
of OSError when a referenced file is not found.

Change-Id: Ibd31f1161df0076ed7498fd1d7b1ae76c802c6e4
2019-11-19 11:57:40 -05:00

293 lines
8.9 KiB
YAML

- nodeset:
name: zuul-functional-temp-master
nodes:
- name: controller
label: ubuntu-xenial
- name: node1
label: ubuntu-xenial
- name: node2
label: ubuntu-xenial
groups:
- name: node
nodes:
- node1
- node2
- job:
name: zuul-stream-functional
parent: multinode
nodeset: zuul-functional-temp-master
pre-run: playbooks/zuul-stream/pre.yaml
run: playbooks/zuul-stream/functional.yaml
post-run:
- playbooks/zuul-stream/post.yaml
- playbooks/zuul-stream/post-ara.yaml
files:
- zuul/ansible/.*
- zuul/lib/ansible*
- playbooks/zuul-stream/.*
- job:
name: zuul-stream-functional-2.5
parent: zuul-stream-functional
# Force executor to use same Ansible version as "controller" node so
# that the inventory.yaml file will be correct for that version.
ansible-version: 2.5
vars:
zuul_ansible_version: 2.5
- job:
name: zuul-stream-functional-2.6
parent: zuul-stream-functional
# Force executor to use same Ansible version as "controller" node so
# that the inventory.yaml file will be correct for that version.
ansible-version: 2.6
vars:
zuul_ansible_version: 2.6
- job:
name: zuul-stream-functional-2.7
parent: zuul-stream-functional
# Force executor to use same Ansible version as "controller" node so
# that the inventory.yaml file will be correct for that version.
ansible-version: 2.7
vars:
zuul_ansible_version: 2.7
- job:
name: zuul-stream-functional-2.8
parent: zuul-stream-functional
# Force executor to use same Ansible version as "controller" node so
# that the inventory.yaml file will be correct for that version.
ansible-version: 2.8
vars:
zuul_ansible_version: 2.8
- job:
name: zuul-tox-remote
parent: tox
vars:
tox_envlist: remote
tox_environment:
ZUUL_SSH_KEY: /home/zuul/.ssh/id_rsa
ZUUL_REMOTE_IPV4: "{{ nodepool.interface_ip }}"
ZUUL_REMOTE_KEEP: "true"
- job:
name: zuul-build-dashboard
parent: build-javascript-content
success-url: 'npm/html/'
files:
- web/.*
- playbooks/dashboard/.*
vars:
javascript_content_dir: "../zuul/web/static"
zuul_work_dir: "{{ zuul.project.src_dir }}/web"
zuul_api_url: https://zuul.openstack.org
node_version: 10
run: playbooks/dashboard/run.yaml
- job:
name: zuul-build-dashboard-multi-tenant
parent: zuul-build-dashboard
vars:
zuul_api_url: https://softwarefactory-project.io/zuul
node_version: 10
# This job is run on changes to both Zuul and Nodepool; any changes to
# the other project will be picked up via image builds which appear in
# the buildset registry. It includes zuul as a required project
# because that is where the docker-compose file is located.
- job:
name: zuul-quick-start
description: Run the commands in the Zuul quick-start documentation.
run: playbooks/quick-start/run.yaml
post-run: playbooks/quick-start/post.yaml
requires: docker-image
required-projects:
- zuul/zuul
# Image building jobs
- secret:
name: zuul-dockerhub
data:
username: zuulzuul
password: !encrypted/pkcs1-oaep
- DFlbrDM5eUMptMGIVMXV1g455xOJLi92UYF08Z2/JlIGu3t6v052o9FKlVyj1ZmpXs5+2
JTa5jHkLTvTsYs9fCaNcQc2nmViCyWNlbOMzjB17uiZOaYFNs1sMqZcUZbGEz7Y8ds6Qq
NBXI10jWFPTah4QxUuBvUbT3vmjnUToCzexl5ZGhKgijcnROWfUsnlCdugpgoNIcPsUki
zty5FotDihnrC8n8vIomVK6EClY38ty97pLrADzFDd+Cos/OUlvi2xooUhzx8Bn020rJA
lqEU5v8LGXp5QkHx0MSDx6JY6KppJ/4p/yM+4By6l+A20zdcimxmgiNc9rMWPwDj7xsao
m7NAZWmWqOO0Xkhgt6WOfugwgt9X46sgs2+yDEfbnI5ok8uRbAB/4FWj/KdpyXwhcf+O2
wEfhxLwDbAoGONQPjb4YcZmCXtmR7Qe5t+n2jyczWXvrbaBDUQP5a+YtVNN/xhmQ7D740
POlxv7bLxJAixzqaQ3d8Rz9ZEv6zzRuhWph32UQtZ1JxSNww+EvmXm2eEi2Q2z6pT1Cx/
j2OrFyA2GL/UJOVb15VHKF6bgHPHWJtpjPFhqdcvBhVute4BWB+KPcWH+y+apHN1enK3H
tNJO9iqm34nKwSuj5ExmFw50LtwR5/9FyRuRPq/vBL+8y82v8FDmeYsBeobn5M=
- job:
name: zuul-build-image
parent: opendev-build-docker-image
description: Build Docker images.
allowed-projects: zuul/zuul
vars: &zuul_image_vars
docker_images:
- context: .
repository: zuul/zuul
target: zuul
- context: .
repository: zuul/zuul-executor
target: zuul-executor
- context: .
repository: zuul/zuul-fingergw
target: zuul-fingergw
- context: .
repository: zuul/zuul-merger
target: zuul-merger
- context: .
repository: zuul/zuul-scheduler
target: zuul-scheduler
- context: .
repository: zuul/zuul-web
target: zuul-web
- job:
name: zuul-upload-image
parent: opendev-upload-docker-image
description: Build Docker images and upload to Docker Hub.
allowed-projects: zuul/zuul
secrets:
name: docker_credentials
secret: zuul-dockerhub
pass-to-parent: true
vars: *zuul_image_vars
- job:
name: zuul-promote-image
parent: opendev-promote-docker-image
description: Promote previously uploaded Docker images.
allowed-projects: zuul/zuul
secrets:
name: docker_credentials
secret: zuul-dockerhub
pass-to-parent: true
nodeset:
nodes: []
vars: *zuul_image_vars
- job:
name: zuul-build-python-release
parent: build-python-release
pre-run: playbooks/release/pre.yaml
vars: &zuul_build_vars
node_version: 10
release_python: python3
- job:
name: zuul-release-python
parent: opendev-release-python
pre-run: playbooks/release/pre.yaml
vars: *zuul_build_vars
- project:
check:
jobs:
- zuul-build-image
- zuul-tox-docs
- tox-pep8
- tox-py35:
irrelevant-files:
- zuul/cmd/migrate.py
- playbooks/zuul-migrate/.*
nodeset: ubuntu-xenial
timeout: 3600 # 60 minutes
- tox-py37:
irrelevant-files:
- zuul/cmd/migrate.py
- playbooks/zuul-migrate/.*
timeout: 3600 # 60 minutes
nodeset: ubuntu-bionic
- zuul-build-dashboard
- zuul-build-dashboard-multi-tenant
- nodejs-npm-run-lint:
vars:
node_version: 10
zuul_work_dir: "{{ zuul.project.src_dir }}/web"
- nodejs-npm-run-test:
vars:
node_version: 10
zuul_work_dir: "{{ zuul.project.src_dir }}/web"
success-url: 'npm/reports/bundle.html'
files:
- web/.*
- zuul-stream-functional-2.5
- zuul-stream-functional-2.6
- zuul-stream-functional-2.7
- zuul-stream-functional-2.8
- zuul-tox-remote:
timeout: 2700 # 45 minutes
- zuul-quick-start:
dependencies: zuul-build-image
- nodepool-zuul-functional:
voting: false
- zuul-build-python-release
- build-javascript-content-tarball:
vars:
node_version: 10
zuul_work_dir: "{{ zuul.project.src_dir }}/web"
create_tarball_directory: build
gate:
jobs:
- zuul-upload-image
- zuul-tox-docs
- tox-pep8
- tox-py35:
irrelevant-files:
- zuul/cmd/migrate.py
- playbooks/zuul-migrate/.*
nodeset: ubuntu-xenial
timeout: 3600 # 60 minutes
- tox-py37:
irrelevant-files:
- zuul/cmd/migrate.py
- playbooks/zuul-migrate/.*
timeout: 3600 # 60 minutes
nodeset: ubuntu-bionic
- zuul-build-dashboard
- nodejs-npm-run-lint:
vars:
node_version: 10
zuul_work_dir: "{{ zuul.project.src_dir }}/web"
- nodejs-npm-run-test:
vars:
node_version: 10
zuul_work_dir: "{{ zuul.project.src_dir }}/web"
success-url: 'npm/reports/bundle.html'
files:
- web/.*
- zuul-stream-functional-2.5
- zuul-stream-functional-2.6
- zuul-stream-functional-2.7
- zuul-stream-functional-2.8
- zuul-tox-remote:
timeout: 2700 # 45 minutes
- zuul-quick-start:
dependencies: zuul-upload-image
- zuul-build-python-release
- build-javascript-content-tarball:
vars:
node_version: 10
zuul_work_dir: "{{ zuul.project.src_dir }}/web"
create_tarball_directory: build
promote:
jobs:
- zuul-promote-image
- zuul-promote-docs
- opendev-promote-python:
vars:
download_artifact_job: zuul-build-python-release
- opendev-promote-javascript-content
release:
jobs:
- zuul-release-python
- zuul-publish-tox-docs