zuul-jobs/zuul-tests.d/python-jobs.yaml

510 lines
15 KiB
YAML
Raw Normal View History

- job:
name: zuul-jobs-test-ensure-pip
description: Test the ensure-pip role
Partial revert "Ensure wheel exists for build-release-python"; move to ensure-pip This partially reverts commit 3f961ce202d7d24e2944de09636b35cec9c13bf6. This alternative installs wheel with the ensure-pip role instead of in a separate role. wheel is very closely linked with pip install operations so this isn't a large overreach of the role. I suggest this for several reasons; firstly the python-wheel role doesn't try to install packages, so we end up with mixed system pip and upstream versions of wheel most of the time. This is the type of thing that has proven problematic in the past. It also installs via pip --user; something we've already had problems with tox when for various reasons roles want to run this as non-zuul user. Using ensure-pip we keep the packaged versions together. [1] did try to install wheel with root, but during runtime which didn't work due to sudo being revoked. This should work for the existing build-python-release job, because it already includes ensure-pip in pre-run via playbooks/python/pre.yaml I believe our conclusion on the ensure-* roles was that requiring root/become: for installation is OK, but we should have a no-op path if the tools are found. This is consistent with that approach (i.e. if you want wheel and can't do sudo, you should pre-install it on your image using whatever you build that with). This adds a check to the existing "is pip installed" check to also check if wheel packages are available. If not we trigger the install path. This revealed some issues with RedHat.yaml -- we can always install Python 3 (packages available for CentOS 7) so remove that check, and if Ansible is running under Python 2; ensure we install the dependencies too (not only if it is forced). Update the documentation to describe that it will enable support for bdist_wheel, and add a basic sanity test that wheels are produced by pip. The existing build-python-release job is kept; although it is modified to use the playbooks/python/pre.yaml playbook as the build job does. Change-Id: I2ab11bb45b6b2a49d54db39195228ab40141185c [1] https://review.opendev.org/#/c/736001/5/roles/build-python-release/tasks/main.yaml
2020-06-17 23:24:50 +00:00
# dummy project for wheel build test
required-projects:
- zuul/zuul-client
files:
- roles/ensure-pip/.*
- roles/ensure-virtualenv/.*
run: test-playbooks/ensure-pip.yaml
tags: all-platforms
- job:
name: zuul-jobs-test-ensure-pip-centos-7
description: Test the ensure-pip role on centos-7
parent: zuul-jobs-test-ensure-pip
tags: auto-generated
nodeset:
nodes:
- name: centos-7
label: centos-7
- job:
name: zuul-jobs-test-ensure-pip-centos-8-stream
description: Test the ensure-pip role on centos-8-stream
parent: zuul-jobs-test-ensure-pip
tags: auto-generated
nodeset:
nodes:
- name: centos-8-stream
label: centos-8-stream
- job:
name: zuul-jobs-test-ensure-pip-centos-9-stream
description: Test the ensure-pip role on centos-9-stream
parent: zuul-jobs-test-ensure-pip
tags: auto-generated
nodeset:
nodes:
- name: centos-9-stream
label: centos-9-stream
- job:
name: zuul-jobs-test-ensure-pip-debian-bullseye
description: Test the ensure-pip role on debian-bullseye
parent: zuul-jobs-test-ensure-pip
tags: auto-generated
nodeset:
nodes:
- name: debian-bullseye
label: debian-bullseye
- job:
name: zuul-jobs-test-ensure-pip-debian-buster
description: Test the ensure-pip role on debian-buster
parent: zuul-jobs-test-ensure-pip
tags: auto-generated
nodeset:
nodes:
- name: debian-buster
label: debian-buster
- job:
name: zuul-jobs-test-ensure-pip-fedora-36
description: Test the ensure-pip role on fedora-36
parent: zuul-jobs-test-ensure-pip
tags: auto-generated
nodeset:
nodes:
- name: fedora-36
label: fedora-36
- job:
name: zuul-jobs-test-ensure-pip-opensuse-15
description: Test the ensure-pip role on opensuse-15
parent: zuul-jobs-test-ensure-pip
tags: auto-generated
nodeset:
nodes:
- name: opensuse-15
label: opensuse-15
- job:
name: zuul-jobs-test-ensure-pip-ubuntu-bionic
description: Test the ensure-pip role on ubuntu-bionic
parent: zuul-jobs-test-ensure-pip
tags: auto-generated
nodeset:
nodes:
- name: ubuntu-bionic
label: ubuntu-bionic
- job:
name: zuul-jobs-test-ensure-pip-ubuntu-focal
description: Test the ensure-pip role on ubuntu-focal
parent: zuul-jobs-test-ensure-pip
tags: auto-generated
nodeset:
nodes:
- name: ubuntu-focal
label: ubuntu-focal
- job:
name: zuul-jobs-test-ensure-pip-ubuntu-jammy
description: Test the ensure-pip role on ubuntu-jammy
parent: zuul-jobs-test-ensure-pip
tags: auto-generated
nodeset:
nodes:
- name: ubuntu-jammy
label: ubuntu-jammy
- job:
name: zuul-jobs-test-ensure-pip-localhost
description: Test the ensure-pip role on the executor
parent: zuul-jobs-test-ensure-pip
run: test-playbooks/ensure-pip-localhost.yaml
nodeset:
nodes: []
- job:
name: zuul-jobs-test-ensure-sphinx
description: Test the ensure-sphinx role
files:
- roles/ensure-sphinx/.*
run: test-playbooks/simple-role-test.yaml
vars:
role_name: ensure-sphinx
- job:
name: zuul-jobs-test-ensure-tox
description: Test the ensure-tox role
files:
- roles/ensure-tox/.*
- test-playbooks/ensure-tox.yaml
run: test-playbooks/ensure-tox.yaml
tags: all-platforms
- job:
name: zuul-jobs-test-ensure-tox-centos-7
description: Test the ensure-tox role on centos-7
parent: zuul-jobs-test-ensure-tox
tags: auto-generated
nodeset:
nodes:
- name: centos-7
label: centos-7
- job:
name: zuul-jobs-test-ensure-tox-centos-8-stream
description: Test the ensure-tox role on centos-8-stream
parent: zuul-jobs-test-ensure-tox
tags: auto-generated
nodeset:
nodes:
- name: centos-8-stream
label: centos-8-stream
- job:
name: zuul-jobs-test-ensure-tox-centos-9-stream
description: Test the ensure-tox role on centos-9-stream
parent: zuul-jobs-test-ensure-tox
tags: auto-generated
nodeset:
nodes:
- name: centos-9-stream
label: centos-9-stream
- job:
name: zuul-jobs-test-ensure-tox-debian-bullseye
description: Test the ensure-tox role on debian-bullseye
parent: zuul-jobs-test-ensure-tox
tags: auto-generated
nodeset:
nodes:
- name: debian-bullseye
label: debian-bullseye
- job:
name: zuul-jobs-test-ensure-tox-debian-buster
description: Test the ensure-tox role on debian-buster
parent: zuul-jobs-test-ensure-tox
tags: auto-generated
nodeset:
nodes:
- name: debian-buster
label: debian-buster
- job:
name: zuul-jobs-test-ensure-tox-fedora-36
description: Test the ensure-tox role on fedora-36
parent: zuul-jobs-test-ensure-tox
tags: auto-generated
nodeset:
nodes:
- name: fedora-36
label: fedora-36
- job:
name: zuul-jobs-test-ensure-tox-opensuse-15
description: Test the ensure-tox role on opensuse-15
parent: zuul-jobs-test-ensure-tox
tags: auto-generated
nodeset:
nodes:
- name: opensuse-15
label: opensuse-15
- job:
name: zuul-jobs-test-ensure-tox-ubuntu-bionic
description: Test the ensure-tox role on ubuntu-bionic
parent: zuul-jobs-test-ensure-tox
tags: auto-generated
nodeset:
nodes:
- name: ubuntu-bionic
label: ubuntu-bionic
- job:
name: zuul-jobs-test-ensure-tox-ubuntu-focal
description: Test the ensure-tox role on ubuntu-focal
parent: zuul-jobs-test-ensure-tox
tags: auto-generated
nodeset:
nodes:
- name: ubuntu-focal
label: ubuntu-focal
- job:
name: zuul-jobs-test-ensure-tox-ubuntu-jammy
description: Test the ensure-tox role on ubuntu-jammy
parent: zuul-jobs-test-ensure-tox
tags: auto-generated
nodeset:
nodes:
- name: ubuntu-jammy
label: ubuntu-jammy
- job:
name: zuul-jobs-test-fetch-sphinx-tarball
description: Test the fetch-sphinx-tarball role
# parenting on tox-docs as we need builded docs first and also this is
# the main use-case for this role
parent: tox-docs
success-url: docs/
files:
- roles/fetch-sphinx-tarball/.*
- roles/tox/library/.*
tags: all-platforms
- job:
name: zuul-jobs-test-fetch-sphinx-tarball-centos-7
description: Test the fetch-sphinx-tarball role on centos-7
parent: zuul-jobs-test-fetch-sphinx-tarball
tags: auto-generated
nodeset:
nodes:
- name: centos-7
label: centos-7
- job:
name: zuul-jobs-test-fetch-sphinx-tarball-centos-8-stream
description: Test the fetch-sphinx-tarball role on centos-8-stream
parent: zuul-jobs-test-fetch-sphinx-tarball
tags: auto-generated
nodeset:
nodes:
- name: centos-8-stream
label: centos-8-stream
- job:
name: zuul-jobs-test-fetch-sphinx-tarball-centos-9-stream
description: Test the fetch-sphinx-tarball role on centos-9-stream
parent: zuul-jobs-test-fetch-sphinx-tarball
tags: auto-generated
nodeset:
nodes:
- name: centos-9-stream
label: centos-9-stream
- job:
name: zuul-jobs-test-fetch-sphinx-tarball-debian-bullseye
description: Test the fetch-sphinx-tarball role on debian-bullseye
parent: zuul-jobs-test-fetch-sphinx-tarball
tags: auto-generated
nodeset:
nodes:
- name: debian-bullseye
label: debian-bullseye
- job:
name: zuul-jobs-test-fetch-sphinx-tarball-debian-buster
description: Test the fetch-sphinx-tarball role on debian-buster
parent: zuul-jobs-test-fetch-sphinx-tarball
tags: auto-generated
nodeset:
nodes:
- name: debian-buster
label: debian-buster
- job:
name: zuul-jobs-test-fetch-sphinx-tarball-fedora-36
description: Test the fetch-sphinx-tarball role on fedora-36
parent: zuul-jobs-test-fetch-sphinx-tarball
tags: auto-generated
nodeset:
nodes:
- name: fedora-36
label: fedora-36
- job:
name: zuul-jobs-test-fetch-sphinx-tarball-opensuse-15
description: Test the fetch-sphinx-tarball role on opensuse-15
parent: zuul-jobs-test-fetch-sphinx-tarball
tags: auto-generated
nodeset:
nodes:
- name: opensuse-15
label: opensuse-15
- job:
name: zuul-jobs-test-fetch-sphinx-tarball-ubuntu-bionic
description: Test the fetch-sphinx-tarball role on ubuntu-bionic
parent: zuul-jobs-test-fetch-sphinx-tarball
tags: auto-generated
nodeset:
nodes:
- name: ubuntu-bionic
label: ubuntu-bionic
- job:
name: zuul-jobs-test-fetch-sphinx-tarball-ubuntu-focal
description: Test the fetch-sphinx-tarball role on ubuntu-focal
parent: zuul-jobs-test-fetch-sphinx-tarball
tags: auto-generated
nodeset:
nodes:
- name: ubuntu-focal
label: ubuntu-focal
- job:
name: zuul-jobs-test-fetch-sphinx-tarball-ubuntu-jammy
description: Test the fetch-sphinx-tarball role on ubuntu-jammy
parent: zuul-jobs-test-fetch-sphinx-tarball
tags: auto-generated
nodeset:
nodes:
- name: ubuntu-jammy
label: ubuntu-jammy
- job:
name: zuul-jobs-test-tox
description: Test the tox role's sibling functionality
files:
- roles/tox/.*
- tox.ini
- test-playbooks/python/tox.yaml
- test-playbooks/python/tox.ini
run: test-playbooks/python/tox.yaml
required-projects:
- zuul/zuul
- zuul/nodepool
- job:
name: zuul-jobs-test-fetch-tox-output
description: Test the fetch-tox-output
files:
- roles/ensure-output-dirs/.*
- roles/fetch-tox-output/.*
- roles/fetch-output/.*
- roles/ensure-tox/.*
- test-playbooks/python/fetch-tox-output.yaml
- test-playbooks/tox/reinstall-tox.yaml
pre-run: test-playbooks/tox/reinstall-tox.yaml
run: test-playbooks/python/fetch-tox-output.yaml
vars:
zuul_use_fetch_output: true
- job:
name: zuul-jobs-test-fetch-tox-output-synchronize
description: Test the fetch-tox-output
files:
- roles/fetch-tox-output/.*
run: test-playbooks/python/fetch-tox-output.yaml
vars:
zuul_use_fetch_output: false
- job:
name: zuul-jobs-test-fetch-subunit-output
description: Test the fetch-subunit-output
files:
- roles/ensure-output-dirs/.*
- roles/fetch-subunit-output/.*
- roles/fetch-output/.*
run: test-playbooks/python/fetch-subunit-output.yaml
vars:
zuul_use_fetch_output: true
- job:
name: zuul-jobs-test-fetch-subunit-output-synchronize
description: Test the fetch-subunit-output
files:
- roles/fetch-subunit-output/.*
run: test-playbooks/python/fetch-subunit-output.yaml
vars:
zuul_use_fetch_output: false
- job:
name: zuul-jobs-test-fetch-sphinx-output
description: Test the fetch-sphinx-output
files:
- roles/ensure-output-dirs/.*
- roles/fetch-sphinx-output/.*
- roles/fetch-output/.*
run: test-playbooks/python/fetch-sphinx-output.yaml
vars:
zuul_use_fetch_output: true
- job:
name: zuul-jobs-test-fetch-sphinx-output-synchronize
description: Test the fetch-sphinx-output
files:
- roles/fetch-sphinx-output/.*
run: test-playbooks/python/fetch-sphinx-output.yaml
vars:
zuul_use_fetch_output: false
- job:
name: zuul-jobs-test-fetch-sphinx-tarball-with-zuul-output
description: Test the fetch-sphinx-tarball
files:
- roles/ensure-output-dirs/.*
- roles/fetch-sphinx-tarball/.*
- roles/fetch-output/.*
run: test-playbooks/python/fetch-sphinx-tarball.yaml
vars:
zuul_use_fetch_output: true
- job:
name: zuul-jobs-test-fetch-sphinx-tarball-synchronize
description: Test the fetch-sphinx-tarball
files:
- roles/fetch-sphinx-tarball/.*
run: test-playbooks/python/fetch-sphinx-tarball.yaml
vars:
zuul_use_fetch_output: false
- job:
name: zuul-jobs-test-upload-pypi
description: Test the upload-pypi role
files:
- roles/upload-pypi/.*
- test-playbooks/python/upload-pypi.yaml
run: test-playbooks/python/upload-pypi.yaml
# -* AUTOGENERATED *-
# The following project section is autogenerated by
# tox -e update-test-platforms
# Please re-run to generate new job lists
- project:
check:
jobs: &id001
- zuul-jobs-test-ensure-pip-centos-7
- zuul-jobs-test-ensure-pip-centos-8-stream
- zuul-jobs-test-ensure-pip-centos-9-stream
- zuul-jobs-test-ensure-pip-debian-bullseye
- zuul-jobs-test-ensure-pip-debian-buster
- zuul-jobs-test-ensure-pip-fedora-36
- zuul-jobs-test-ensure-pip-opensuse-15
- zuul-jobs-test-ensure-pip-ubuntu-bionic
- zuul-jobs-test-ensure-pip-ubuntu-focal
- zuul-jobs-test-ensure-pip-ubuntu-jammy
- zuul-jobs-test-ensure-pip-localhost
- zuul-jobs-test-ensure-sphinx
- zuul-jobs-test-ensure-tox-centos-7
- zuul-jobs-test-ensure-tox-centos-8-stream
- zuul-jobs-test-ensure-tox-centos-9-stream
- zuul-jobs-test-ensure-tox-debian-bullseye
- zuul-jobs-test-ensure-tox-debian-buster
- zuul-jobs-test-ensure-tox-fedora-36
- zuul-jobs-test-ensure-tox-opensuse-15
- zuul-jobs-test-ensure-tox-ubuntu-bionic
- zuul-jobs-test-ensure-tox-ubuntu-focal
- zuul-jobs-test-ensure-tox-ubuntu-jammy
- zuul-jobs-test-fetch-sphinx-tarball-centos-7
- zuul-jobs-test-fetch-sphinx-tarball-centos-8-stream
- zuul-jobs-test-fetch-sphinx-tarball-centos-9-stream
- zuul-jobs-test-fetch-sphinx-tarball-debian-bullseye
- zuul-jobs-test-fetch-sphinx-tarball-debian-buster
- zuul-jobs-test-fetch-sphinx-tarball-fedora-36
- zuul-jobs-test-fetch-sphinx-tarball-opensuse-15
- zuul-jobs-test-fetch-sphinx-tarball-ubuntu-bionic
- zuul-jobs-test-fetch-sphinx-tarball-ubuntu-focal
- zuul-jobs-test-fetch-sphinx-tarball-ubuntu-jammy
- zuul-jobs-test-tox
- zuul-jobs-test-fetch-tox-output
- zuul-jobs-test-fetch-tox-output-synchronize
- zuul-jobs-test-fetch-subunit-output
- zuul-jobs-test-fetch-subunit-output-synchronize
- zuul-jobs-test-fetch-sphinx-output
- zuul-jobs-test-fetch-sphinx-output-synchronize
- zuul-jobs-test-fetch-sphinx-tarball-with-zuul-output
- zuul-jobs-test-fetch-sphinx-tarball-synchronize
- zuul-jobs-test-upload-pypi
gate:
jobs: *id001
periodic-weekly:
jobs: *id001