533 lines
16 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-18 09:24:50 +10:00
# dummy project for wheel build test
required-projects:
- zuul/zuul
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
description: Test the ensure-pip role on centos-8
parent: zuul-jobs-test-ensure-pip
tags: auto-generated
nodeset:
nodes:
- name: centos-8
label: centos-8
- job:
name: zuul-jobs-test-ensure-pip-debian-stretch
description: Test the ensure-pip role on debian-stretch
parent: zuul-jobs-test-ensure-pip
tags: auto-generated
nodeset:
nodes:
- name: debian-stretch
label: debian-stretch
- job:
name: zuul-jobs-test-ensure-pip-fedora-32
description: Test the ensure-pip role on fedora-32
parent: zuul-jobs-test-ensure-pip
tags: auto-generated
nodeset:
nodes:
- name: fedora-32
label: fedora-32
- job:
name: zuul-jobs-test-ensure-pip-gentoo-17-0-systemd
description: Test the ensure-pip role on gentoo-17-0-systemd
parent: zuul-jobs-test-ensure-pip
tags: auto-generated
nodeset:
nodes:
- name: gentoo-17-0-systemd
label: gentoo-17-0-systemd
- 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-opensuse-tumbleweed-nv
voting: false
description: Test the ensure-pip role on opensuse-tumbleweed
parent: zuul-jobs-test-ensure-pip
tags: auto-generated
nodeset:
nodes:
- name: opensuse-tumbleweed
label: opensuse-tumbleweed
- 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-xenial
description: Test the ensure-pip role on ubuntu-xenial
parent: zuul-jobs-test-ensure-pip
tags: auto-generated
nodeset:
nodes:
- name: ubuntu-xenial
label: ubuntu-xenial
- 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-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
description: Test the ensure-tox role on centos-8
parent: zuul-jobs-test-ensure-tox
tags: auto-generated
nodeset:
nodes:
- name: centos-8
label: centos-8
- job:
name: zuul-jobs-test-ensure-tox-debian-stretch
description: Test the ensure-tox role on debian-stretch
parent: zuul-jobs-test-ensure-tox
tags: auto-generated
nodeset:
nodes:
- name: debian-stretch
label: debian-stretch
- job:
name: zuul-jobs-test-ensure-tox-fedora-32
description: Test the ensure-tox role on fedora-32
parent: zuul-jobs-test-ensure-tox
tags: auto-generated
nodeset:
nodes:
- name: fedora-32
label: fedora-32
- job:
name: zuul-jobs-test-ensure-tox-gentoo-17-0-systemd
description: Test the ensure-tox role on gentoo-17-0-systemd
parent: zuul-jobs-test-ensure-tox
tags: auto-generated
nodeset:
nodes:
- name: gentoo-17-0-systemd
label: gentoo-17-0-systemd
- 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-opensuse-tumbleweed-nv
voting: false
description: Test the ensure-tox role on opensuse-tumbleweed
parent: zuul-jobs-test-ensure-tox
tags: auto-generated
nodeset:
nodes:
- name: opensuse-tumbleweed
label: opensuse-tumbleweed
- 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-xenial
description: Test the ensure-tox role on ubuntu-xenial
parent: zuul-jobs-test-ensure-tox
tags: auto-generated
nodeset:
nodes:
- name: ubuntu-xenial
label: ubuntu-xenial
- 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-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
description: Test the fetch-sphinx-tarball role on centos-8
parent: zuul-jobs-test-fetch-sphinx-tarball
tags: auto-generated
nodeset:
nodes:
- name: centos-8
label: centos-8
- job:
name: zuul-jobs-test-fetch-sphinx-tarball-debian-stretch
description: Test the fetch-sphinx-tarball role on debian-stretch
parent: zuul-jobs-test-fetch-sphinx-tarball
tags: auto-generated
nodeset:
nodes:
- name: debian-stretch
label: debian-stretch
- job:
name: zuul-jobs-test-fetch-sphinx-tarball-fedora-32
description: Test the fetch-sphinx-tarball role on fedora-32
parent: zuul-jobs-test-fetch-sphinx-tarball
tags: auto-generated
nodeset:
nodes:
- name: fedora-32
label: fedora-32
- job:
name: zuul-jobs-test-fetch-sphinx-tarball-gentoo-17-0-systemd
description: Test the fetch-sphinx-tarball role on gentoo-17-0-systemd
parent: zuul-jobs-test-fetch-sphinx-tarball
tags: auto-generated
nodeset:
nodes:
- name: gentoo-17-0-systemd
label: gentoo-17-0-systemd
- 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-opensuse-tumbleweed-nv
voting: false
description: Test the fetch-sphinx-tarball role on opensuse-tumbleweed
parent: zuul-jobs-test-fetch-sphinx-tarball
tags: auto-generated
nodeset:
nodes:
- name: opensuse-tumbleweed
label: opensuse-tumbleweed
- 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-xenial
description: Test the fetch-sphinx-tarball role on ubuntu-xenial
parent: zuul-jobs-test-fetch-sphinx-tarball
tags: auto-generated
nodeset:
nodes:
- name: ubuntu-xenial
label: ubuntu-xenial
- 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-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
# -* AUTOGENERATED *-
# The following project section is autogenerated by
# tox -e update-test-platforms
# Please re-run to generate new job lists
- 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
# Disabled because "Move artifacts and docs to logs dir" task would
# fail with "Executing local code is prohibited" during testing
# - 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
# voting: false
# 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
- project:
check:
jobs:
- zuul-jobs-test-ensure-pip-centos-7
- zuul-jobs-test-ensure-pip-centos-8
- zuul-jobs-test-ensure-pip-debian-stretch
- zuul-jobs-test-ensure-pip-fedora-32
- zuul-jobs-test-ensure-pip-gentoo-17-0-systemd
- zuul-jobs-test-ensure-pip-opensuse-15
- zuul-jobs-test-ensure-pip-opensuse-tumbleweed-nv
- zuul-jobs-test-ensure-pip-ubuntu-bionic
- zuul-jobs-test-ensure-pip-ubuntu-xenial
- zuul-jobs-test-ensure-pip-ubuntu-focal
- zuul-jobs-test-ensure-sphinx
- zuul-jobs-test-ensure-tox-centos-7
- zuul-jobs-test-ensure-tox-centos-8
- zuul-jobs-test-ensure-tox-debian-stretch
- zuul-jobs-test-ensure-tox-fedora-32
- zuul-jobs-test-ensure-tox-gentoo-17-0-systemd
- zuul-jobs-test-ensure-tox-opensuse-15
- zuul-jobs-test-ensure-tox-opensuse-tumbleweed-nv
- zuul-jobs-test-ensure-tox-ubuntu-bionic
- zuul-jobs-test-ensure-tox-ubuntu-xenial
- zuul-jobs-test-ensure-tox-ubuntu-focal
- zuul-jobs-test-fetch-sphinx-tarball-centos-7
- zuul-jobs-test-fetch-sphinx-tarball-centos-8
- zuul-jobs-test-fetch-sphinx-tarball-debian-stretch
- zuul-jobs-test-fetch-sphinx-tarball-fedora-32
- zuul-jobs-test-fetch-sphinx-tarball-gentoo-17-0-systemd
- zuul-jobs-test-fetch-sphinx-tarball-opensuse-15
- zuul-jobs-test-fetch-sphinx-tarball-opensuse-tumbleweed-nv
- zuul-jobs-test-fetch-sphinx-tarball-ubuntu-bionic
- zuul-jobs-test-fetch-sphinx-tarball-ubuntu-xenial
- zuul-jobs-test-fetch-sphinx-tarball-ubuntu-focal
- 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-synchronize
gate:
jobs: &id001
- zuul-jobs-test-ensure-pip-centos-7
- zuul-jobs-test-ensure-pip-centos-8
- zuul-jobs-test-ensure-pip-debian-stretch
- zuul-jobs-test-ensure-pip-fedora-32
- zuul-jobs-test-ensure-pip-gentoo-17-0-systemd
- zuul-jobs-test-ensure-pip-opensuse-15
- zuul-jobs-test-ensure-pip-ubuntu-bionic
- zuul-jobs-test-ensure-pip-ubuntu-xenial
- zuul-jobs-test-ensure-pip-ubuntu-focal
- zuul-jobs-test-ensure-sphinx
- zuul-jobs-test-ensure-tox-centos-7
- zuul-jobs-test-ensure-tox-centos-8
- zuul-jobs-test-ensure-tox-debian-stretch
- zuul-jobs-test-ensure-tox-fedora-32
- zuul-jobs-test-ensure-tox-gentoo-17-0-systemd
- zuul-jobs-test-ensure-tox-opensuse-15
- zuul-jobs-test-ensure-tox-ubuntu-bionic
- zuul-jobs-test-ensure-tox-ubuntu-xenial
- zuul-jobs-test-ensure-tox-ubuntu-focal
- zuul-jobs-test-fetch-sphinx-tarball-centos-7
- zuul-jobs-test-fetch-sphinx-tarball-centos-8
- zuul-jobs-test-fetch-sphinx-tarball-debian-stretch
- zuul-jobs-test-fetch-sphinx-tarball-fedora-32
- zuul-jobs-test-fetch-sphinx-tarball-gentoo-17-0-systemd
- zuul-jobs-test-fetch-sphinx-tarball-opensuse-15
- zuul-jobs-test-fetch-sphinx-tarball-ubuntu-bionic
- zuul-jobs-test-fetch-sphinx-tarball-ubuntu-xenial
- zuul-jobs-test-fetch-sphinx-tarball-ubuntu-focal
- 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-synchronize
periodic-weekly:
jobs: *id001