67f223b53a
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
493 lines
15 KiB
YAML
493 lines
15 KiB
YAML
- job:
|
|
name: zuul-jobs-test-ensure-pip
|
|
description: Test the ensure-pip role
|
|
# 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-31
|
|
description: Test the ensure-pip role on fedora-31
|
|
parent: zuul-jobs-test-ensure-pip
|
|
tags: auto-generated
|
|
nodeset:
|
|
nodes:
|
|
- name: fedora-31
|
|
label: fedora-31
|
|
|
|
- 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-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-31
|
|
description: Test the ensure-tox role on fedora-31
|
|
parent: zuul-jobs-test-ensure-tox
|
|
tags: auto-generated
|
|
nodeset:
|
|
nodes:
|
|
- name: fedora-31
|
|
label: fedora-31
|
|
|
|
- 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-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/.*
|
|
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-31
|
|
description: Test the fetch-sphinx-tarball role on fedora-31
|
|
parent: zuul-jobs-test-fetch-sphinx-tarball
|
|
tags: auto-generated
|
|
nodeset:
|
|
nodes:
|
|
- name: fedora-31
|
|
label: fedora-31
|
|
|
|
- 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-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
|
|
|
|
- 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
|
|
|
|
- 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-31
|
|
- 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-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-31
|
|
- 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-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-31
|
|
- 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-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
|
|
gate:
|
|
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-31
|
|
- 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-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-31
|
|
- 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-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-31
|
|
- 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-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
|