
We often hit issues with our CentOS arm images being slightly stale. When this happens we get openafs package build errors because available headers don't match the running kernel. Address this by updating the entire running system and rebooting onto any new kernel before we build the openafs package. This should ensure our local install matches upstream packages when it comes to kernel packages. We also manually select the new kernel as the default kernel and remove the old kernel with grubby as dnf doesn't reliably update the kernel to boot automatically on arm64 centos 9 images. This is likely due to this issue: https://bugzilla.redhat.com/show_bug.cgi?id=2032680 Also switch package module installs to dnf module installs since all of our installations are occuring on CentOS 9 or newer. Change-Id: Idb42386071d6652312bb343923473a62c55e2828
1704 lines
49 KiB
YAML
1704 lines
49 KiB
YAML
# Shared jobs specific to the OpenStack Project
|
|
# imports jobs from:
|
|
# https://opendev.org/openstack/project-config
|
|
# https://opendev.org/zuul/zuul-jobs
|
|
|
|
- job:
|
|
name: openstack-tox
|
|
abstract: true
|
|
parent: tox-fips
|
|
nodeset: ubuntu-jammy
|
|
description: |
|
|
Base job to run tox jobs with OpenStack project specific updates.
|
|
|
|
Processing upper-constraints files from openstack/requirements.
|
|
branches:
|
|
regex: ^stable/(victoria|wallaby|xena|yoga|zed)$
|
|
negate: true
|
|
required-projects:
|
|
- name: openstack/requirements
|
|
vars:
|
|
tox_constraints_file: '{{ ansible_user_dir }}/src/opendev.org/openstack/requirements/upper-constraints.txt'
|
|
enable_fips: false
|
|
|
|
- job:
|
|
name: openstack-tox
|
|
abstract: true
|
|
parent: tox-fips
|
|
nodeset: ubuntu-focal
|
|
description: |
|
|
Base job (Focal) to run tox jobs with OpenStack project specific updates.
|
|
|
|
Processing upper-constraints files from openstack/requirements.
|
|
|
|
This job runs on Focal from stable/victoria until stable/zed. This
|
|
job is prepared to make sure all stable branches from stable/victoria until
|
|
stable/zed will keep running on Focal.
|
|
branches:
|
|
- ^.*/victoria
|
|
- ^.*/wallaby
|
|
- ^.*/xena
|
|
- ^.*/yoga
|
|
- ^.*/zed
|
|
required-projects:
|
|
- name: openstack/requirements
|
|
vars:
|
|
tox_constraints_file: '{{ ansible_user_dir }}/src/opendev.org/openstack/requirements/upper-constraints.txt'
|
|
enable_fips: false
|
|
# NOTE(gmann): This is stable|unmaintained branch (<=(stable|unmaintained)/zed)
|
|
# job and new tox 4 require some changes in tox.ini to be compatible with it. Let's
|
|
# pin tox <4 for stable branches testing (<=(stable|unmaintained)/zed).
|
|
ensure_tox_version: '<4'
|
|
|
|
- job:
|
|
name: openstack-tox-with-sudo
|
|
parent: openstack-tox
|
|
description: |
|
|
Job to run tox for tests with OpenStack project specific
|
|
settings such as constraints but without sudo access being revoked.
|
|
run: playbooks/tox-with-sudo/run.yaml
|
|
|
|
- job:
|
|
name: openstack-tox-py27
|
|
parent: openstack-tox
|
|
nodeset: ubuntu-bionic
|
|
timeout: 2400
|
|
description: |
|
|
Run unit tests for an OpenStack Python project under cPython version 2.7.
|
|
|
|
Uses tox with the ``py27`` environment.
|
|
pre-run: playbooks/tox/py27.yaml
|
|
irrelevant-files: &common-irrelevant-files
|
|
- ^.*\.rst$
|
|
- ^api-ref/.*$
|
|
- ^doc/.*$
|
|
- ^releasenotes/.*$
|
|
- ^deliverables/.*$
|
|
vars:
|
|
tox_envlist: py27
|
|
bindep_profile: test py27
|
|
# NOTE(gmann): This is stable branch job and new tox 4 require
|
|
# some changes in tox.ini to be compatible with it. Let's
|
|
# pin tox <4 for stable branches testing (<=stable/zed).
|
|
ensure_tox_version: '<4'
|
|
|
|
- job:
|
|
name: openstack-tox-py35
|
|
parent: openstack-tox
|
|
nodeset: ubuntu-xenial
|
|
branches:
|
|
regex: ^driverfixes/.*$
|
|
negate: true
|
|
timeout: 2400
|
|
description: |
|
|
Run unit tests for an OpenStack project under cPython version 3.5.
|
|
|
|
Uses tox with the ``py35`` environment.
|
|
irrelevant-files: *common-irrelevant-files
|
|
vars:
|
|
tox_envlist: py35
|
|
bindep_profile: test py35
|
|
# NOTE(gmann): This is stable branch job and new tox 4 require
|
|
# some changes in tox.ini to be compatible with it. Let's
|
|
# pin tox <4 for stable branches testing (<=stable/zed).
|
|
ensure_tox_version: '<4'
|
|
|
|
- job:
|
|
name: openstack-tox-py36
|
|
parent: openstack-tox
|
|
nodeset: ubuntu-bionic
|
|
timeout: 2400
|
|
description: |
|
|
|
|
Run unit tests for an OpenStack Python project under cPython
|
|
version 3.6.
|
|
|
|
Uses tox with the ``py36`` environment.
|
|
irrelevant-files: *common-irrelevant-files
|
|
vars:
|
|
tox_envlist: py36
|
|
bindep_profile: test py36
|
|
# NOTE(gmann): This is stable branch job and new tox 4 require
|
|
# some changes in tox.ini to be compatible with it. Let's
|
|
# pin tox <4 for stable branches testing (<=stable/zed).
|
|
ensure_tox_version: '<4'
|
|
|
|
- job:
|
|
name: openstack-tox-py37
|
|
parent: openstack-tox
|
|
nodeset: ubuntu-bionic
|
|
timeout: 2400
|
|
description: |
|
|
|
|
Run unit tests for an OpenStack Python project under cPython
|
|
version 3.7.
|
|
|
|
Uses tox with the ``py37`` environment.
|
|
irrelevant-files: *common-irrelevant-files
|
|
vars:
|
|
tox_envlist: py37
|
|
bindep_profile: test py37
|
|
python_version: '3.7'
|
|
# NOTE(gmann): This is stable branch job and new tox 4 require
|
|
# some changes in tox.ini to be compatible with it. Let's
|
|
# pin tox <4 for stable branches testing (<=stable/zed).
|
|
ensure_tox_version: '<4'
|
|
|
|
- job:
|
|
name: openstack-tox-py38
|
|
parent: openstack-tox
|
|
nodeset: ubuntu-focal
|
|
timeout: 2400
|
|
description: |
|
|
|
|
Run unit tests for an OpenStack Python project under cPython
|
|
version 3.8.
|
|
|
|
Uses tox with the ``py38`` environment.
|
|
irrelevant-files: *common-irrelevant-files
|
|
branches:
|
|
regex: ^stable/(victoria|wallaby|xena|yoga|zed)$
|
|
negate: true
|
|
vars:
|
|
tox_envlist: py38
|
|
bindep_profile: test py38
|
|
python_version: '3.8'
|
|
|
|
- job:
|
|
name: openstack-tox-py38
|
|
parent: openstack-tox
|
|
nodeset: ubuntu-focal
|
|
timeout: 2400
|
|
description: |
|
|
|
|
Run unit tests for an OpenStack Python project under cPython
|
|
version 3.8 on ubuntu focal.
|
|
|
|
This job runs with tox<4 from stable/victortia till stable/zed.
|
|
|
|
Uses tox with the ``py38`` environment.
|
|
irrelevant-files: *common-irrelevant-files
|
|
branches:
|
|
- ^.*/victoria
|
|
- ^.*/wallaby
|
|
- ^.*/xena
|
|
- ^.*/yoga
|
|
- ^.*/zed
|
|
vars:
|
|
tox_envlist: py38
|
|
bindep_profile: test py38
|
|
python_version: '3.8'
|
|
# NOTE(gmann): This is stable branch (<=(stable|unmaintained)/zed) job and new
|
|
# tox 4 require some changes in tox.ini to be compatible with it. Let's
|
|
# pin tox <4 for stable branches testing (<=(stable|unmaintained)/zed).
|
|
ensure_tox_version: '<4'
|
|
|
|
- job:
|
|
name: openstack-tox-py38-arm64
|
|
parent: openstack-tox-py38
|
|
nodeset: ubuntu-focal-arm64
|
|
timeout: 3600
|
|
description: |
|
|
|
|
Run unit tests for an OpenStack Python project under cPython
|
|
version 3.8 on top of arm64 architecture.
|
|
|
|
Uses tox with the ``py38`` environment in arm64 platform.
|
|
|
|
- job:
|
|
name: openstack-tox-py39
|
|
parent: openstack-tox
|
|
nodeset: ubuntu-focal
|
|
timeout: 2400
|
|
description: |
|
|
|
|
Run unit tests for an OpenStack Python project under cPython
|
|
version 3.9.
|
|
|
|
Uses tox with the ``py39`` environment.
|
|
irrelevant-files: *common-irrelevant-files
|
|
branches:
|
|
regex: ^stable/(victoria|wallaby|xena|yoga|zed)$
|
|
negate: true
|
|
vars:
|
|
tox_envlist: py39
|
|
bindep_profile: test py39
|
|
python_version: '3.9'
|
|
|
|
- job:
|
|
name: openstack-tox-py39
|
|
parent: openstack-tox
|
|
nodeset: ubuntu-focal
|
|
timeout: 2400
|
|
description: |
|
|
|
|
Run unit tests for an OpenStack Python project under cPython
|
|
version 3.9.
|
|
|
|
Uses tox version <4 with the ``py39`` environment.
|
|
irrelevant-files: *common-irrelevant-files
|
|
branches:
|
|
- ^.*/victoria
|
|
- ^.*/wallaby
|
|
- ^.*/xena
|
|
- ^.*/yoga
|
|
- ^.*/zed
|
|
vars:
|
|
tox_envlist: py39
|
|
bindep_profile: test py39
|
|
python_version: '3.9'
|
|
# NOTE(gmann): This is stable branch (<=(stable|unmaintained)/zed) job and new
|
|
# tox 4 require some changes in tox.ini to be compatible with it. Let's
|
|
# pin tox <4 for stable branches testing (<=(stable|unmaintained)/zed).
|
|
ensure_tox_version: '<4'
|
|
|
|
- job:
|
|
name: openstack-tox-py39-arm64
|
|
parent: openstack-tox-py39
|
|
nodeset: ubuntu-focal-arm64
|
|
timeout: 3600
|
|
description: |
|
|
|
|
Run unit tests for an OpenStack Python project under cPython
|
|
version 3.9 on top of arm64 architecture.
|
|
|
|
Uses tox with the ``py39`` environment in arm64 platform.
|
|
|
|
- job:
|
|
name: openstack-tox-py310
|
|
parent: openstack-tox
|
|
nodeset: ubuntu-jammy
|
|
timeout: 2400
|
|
description: |
|
|
|
|
Run unit tests for an OpenStack Python project under cPython
|
|
version 3.10.
|
|
|
|
Uses tox with the ``py310`` environment.
|
|
irrelevant-files: *common-irrelevant-files
|
|
branches:
|
|
regex: ^.*/(yoga|zed)$
|
|
negate: true
|
|
vars:
|
|
tox_envlist: py310
|
|
bindep_profile: test py310
|
|
python_version: '3.10'
|
|
|
|
- job:
|
|
name: openstack-tox-py310
|
|
parent: openstack-tox
|
|
nodeset: ubuntu-jammy
|
|
timeout: 2400
|
|
description: |
|
|
|
|
Run unit tests for an OpenStack Python project under cPython
|
|
version 3.10.
|
|
|
|
Uses tox version <4 with the ``py310`` environment.
|
|
irrelevant-files: *common-irrelevant-files
|
|
branches:
|
|
- ^.*/yoga
|
|
- ^.*/zed
|
|
vars:
|
|
tox_envlist: py310
|
|
bindep_profile: test py310
|
|
python_version: '3.10'
|
|
# NOTE(gmann): This is stable branch (<=/(stable|unmaintained)/zed) job and new
|
|
# tox 4 require some changes in tox.ini to be compatible with it. Let's
|
|
# pin tox <4 for stable branches testing (<=(stable|unmaintained)/zed).
|
|
ensure_tox_version: '<4'
|
|
|
|
- job:
|
|
name: openstack-tox-py310-arm64
|
|
parent: openstack-tox-py310
|
|
nodeset: ubuntu-jammy-arm64
|
|
timeout: 3600
|
|
description: |
|
|
|
|
Run unit tests for an OpenStack Python project under cPython
|
|
version 3.10 on top of arm64 architecture.
|
|
|
|
Uses tox with the ``py310`` environment in arm64 platform.
|
|
|
|
- job:
|
|
name: openstack-tox-py311
|
|
parent: openstack-tox
|
|
nodeset: debian-bookworm
|
|
timeout: 2400
|
|
description: |
|
|
|
|
Run unit tests for an OpenStack Python project under cPython
|
|
version 3.11.
|
|
|
|
Uses tox with the ``py311`` environment.
|
|
irrelevant-files: *common-irrelevant-files
|
|
vars:
|
|
tox_envlist: py311
|
|
bindep_profile: test py311
|
|
python_version: '3.11'
|
|
|
|
- job:
|
|
name: openstack-tox-py311-arm64
|
|
parent: openstack-tox-py311
|
|
nodeset: debian-bookworm-arm64
|
|
timeout: 3600
|
|
description: |
|
|
|
|
Run unit tests for an OpenStack Python project under cPython
|
|
version 3.11 on top of arm64 architecture.
|
|
|
|
Uses tox with the ``py311`` environment in arm64 platform.
|
|
|
|
- job:
|
|
name: openstack-tox-py312
|
|
parent: openstack-tox
|
|
nodeset: ubuntu-noble
|
|
timeout: 2400
|
|
description: |
|
|
|
|
Run unit tests for an OpenStack Python project under cPython
|
|
version 3.12.
|
|
|
|
Uses tox with the ``py312`` environment.
|
|
irrelevant-files: *common-irrelevant-files
|
|
vars:
|
|
tox_envlist: py312
|
|
bindep_profile: test py312
|
|
python_version: '3.12'
|
|
|
|
- job:
|
|
name: openstack-tox-py312-arm64
|
|
parent: openstack-tox-py312
|
|
nodeset: ubuntu-noble-arm64
|
|
timeout: 3600
|
|
description: |
|
|
|
|
Run unit tests for an OpenStack Python project under cPython
|
|
version 3.12 on top of arm64 architecture.
|
|
|
|
Uses tox with the ``py312`` environment in arm64 platform.
|
|
|
|
- job:
|
|
name: openstack-tox-py313
|
|
parent: openstack-tox
|
|
nodeset: ubuntu-noble
|
|
timeout: 2400
|
|
description: |
|
|
|
|
Run unit tests for an OpenStack Python project under cPython
|
|
version 3.13.
|
|
|
|
Uses tox with the ``py313`` environment.
|
|
irrelevant-files: *common-irrelevant-files
|
|
vars:
|
|
tox_envlist: py313
|
|
bindep_profile: test py313
|
|
python_use_pyenv: True
|
|
python_version: '3.13'
|
|
|
|
- job:
|
|
name: openstack-tox-py313-arm64
|
|
parent: openstack-tox-py313
|
|
nodeset: ubuntu-noble-arm64
|
|
timeout: 3600
|
|
description: |
|
|
|
|
Run unit tests for an OpenStack Python project under cPython
|
|
version 3.13 on top of arm64 architecture.
|
|
|
|
Uses tox with the ``py313`` environment in arm64 platform.
|
|
|
|
- job:
|
|
name: openstack-tox-pypy
|
|
parent: openstack-tox
|
|
description: |
|
|
Run unit tests for an OpenStack Python project under PyPy.
|
|
|
|
Uses tox with the ``pypy`` environment.
|
|
irrelevant-files: *common-irrelevant-files
|
|
vars:
|
|
tox_envlist: pypy
|
|
bindep_profile: test pypy
|
|
|
|
- job:
|
|
name: openstack-tox-linters
|
|
parent: openstack-tox
|
|
description: |
|
|
Runs code linting tests.
|
|
|
|
Uses tox with the ``linters`` environment.
|
|
vars:
|
|
tox_envlist: linters
|
|
bindep_profile: test linters
|
|
|
|
- job:
|
|
name: openstack-tox-molecule
|
|
parent: tox-molecule
|
|
description: |
|
|
Runs molecule to test Ansible roles.
|
|
|
|
Uses tox with the ``molecule`` environment.
|
|
post-run: playbooks/tox-molecule/post.yaml
|
|
vars:
|
|
bindep_profile: test molecule
|
|
|
|
- job:
|
|
name: openstack-tox-pep8
|
|
parent: openstack-tox
|
|
description: |
|
|
Runs code pep8 tests.
|
|
|
|
Uses tox with the ``pep8`` environment.
|
|
vars:
|
|
tox_envlist: pep8
|
|
bindep_profile: test pep8
|
|
test_setup_skip: true
|
|
|
|
- job:
|
|
name: openstack-tox-cover
|
|
parent: tox-cover
|
|
description: |
|
|
Run code coverage tests.
|
|
|
|
Uses tox with the ``cover`` environment.
|
|
nodeset: ubuntu-jammy
|
|
branches:
|
|
regex: ^.*/(victoria|wallaby|xena|yoga|zed)$
|
|
negate: true
|
|
required-projects:
|
|
- name: openstack/requirements
|
|
irrelevant-files: *common-irrelevant-files
|
|
vars:
|
|
tox_constraints_file: '{{ ansible_user_dir }}/src/opendev.org/openstack/requirements/upper-constraints.txt'
|
|
timeout: 3000
|
|
|
|
- job:
|
|
name: openstack-tox-cover
|
|
parent: tox-cover
|
|
description: |
|
|
Run code coverage tests.
|
|
|
|
Uses tox with the ``cover`` environment.
|
|
|
|
This job runs on focal from stable/victoria until stable/zed.
|
|
nodeset: ubuntu-focal
|
|
branches:
|
|
- ^.*/victoria
|
|
- ^.*/wallaby
|
|
- ^.*/xena
|
|
- ^.*/yoga
|
|
- ^.*/zed
|
|
required-projects:
|
|
- name: openstack/requirements
|
|
irrelevant-files: *common-irrelevant-files
|
|
vars:
|
|
tox_constraints_file: '{{ ansible_user_dir }}/src/opendev.org/openstack/requirements/upper-constraints.txt'
|
|
# NOTE(gmann): This is stable branch (<=(stable|unmaintained)/zed) job and new
|
|
# tox 4 require some changes in tox.ini to be compatible with it. Let's
|
|
# pin tox <4 for stable branches testing (<=(stable|unmaintained)/zed).
|
|
ensure_tox_version: '<4'
|
|
timeout: 3000
|
|
|
|
- job:
|
|
name: openstack-tox-bashate
|
|
parent: openstack-tox
|
|
description: |
|
|
Run bashate tests.
|
|
|
|
Uses tox with the ``bashate`` environment.
|
|
vars:
|
|
tox_envlist: bashate
|
|
|
|
- job:
|
|
name: openstack-tox-build
|
|
parent: openstack-tox
|
|
description: |
|
|
Run build tests.
|
|
|
|
Uses tox with the ``build`` environment.
|
|
vars:
|
|
tox_envlist: build
|
|
|
|
- job:
|
|
name: openstack-tox-functional
|
|
parent: openstack-tox
|
|
description: |
|
|
Run tox-based functional tests for an OpenStack Python project.
|
|
|
|
Uses tox with the ``functional`` environment.
|
|
irrelevant-files: *common-irrelevant-files
|
|
nodeset: ubuntu-jammy
|
|
branches:
|
|
regex: ^.*/(victoria|wallaby|xena|yoga|zed)$
|
|
negate: true
|
|
vars:
|
|
tox_envlist: functional
|
|
|
|
- job:
|
|
name: openstack-tox-functional
|
|
parent: openstack-tox
|
|
description: |
|
|
Run tox-based functional tests for an OpenStack Python project.
|
|
|
|
Uses tox with the ``functional`` environment.
|
|
|
|
This job runs on focal from stable/victoria until stable/zed.
|
|
irrelevant-files: *common-irrelevant-files
|
|
nodeset: ubuntu-focal
|
|
branches:
|
|
regex: ^.*/(victoria|wallaby|xena|yoga|zed)$
|
|
vars:
|
|
tox_envlist: functional
|
|
|
|
- job:
|
|
name: openstack-tox-functional-with-sudo
|
|
parent: openstack-tox-with-sudo
|
|
description: |
|
|
Run tox-based functional tests for an OpenStack Python project.
|
|
|
|
Uses tox with the ``functional`` environment.
|
|
Sudo access is not revoked.
|
|
irrelevant-files: *common-irrelevant-files
|
|
nodeset: ubuntu-jammy
|
|
branches:
|
|
regex: ^.*/(victoria|wallaby|xena|yoga|zed)$
|
|
negate: true
|
|
vars:
|
|
tox_envlist: functional
|
|
|
|
- job:
|
|
name: openstack-tox-functional-with-sudo
|
|
parent: openstack-tox-with-sudo
|
|
description: |
|
|
Run tox-based functional tests for an OpenStack Python project.
|
|
|
|
Uses tox with the ``functional`` environment.
|
|
Sudo access is not revoked.
|
|
|
|
This job runs on focal from stable/victoria until stable/zed.
|
|
irrelevant-files: *common-irrelevant-files
|
|
nodeset: ubuntu-focal
|
|
branches:
|
|
regex: ^.*/(victoria|wallaby|xena|yoga|zed)$
|
|
vars:
|
|
tox_envlist: functional
|
|
|
|
- job:
|
|
name: openstack-tox-functional-py35
|
|
parent: openstack-tox
|
|
nodeset: ubuntu-xenial
|
|
description: |
|
|
Run tox-based functional tests for an OpenStack Python project
|
|
under cPython version 3.5..
|
|
|
|
Uses tox with the ``functional-py35`` environment.
|
|
irrelevant-files: *common-irrelevant-files
|
|
vars:
|
|
tox_envlist: functional-py35
|
|
|
|
- job:
|
|
name: openstack-tox-functional-py36
|
|
parent: openstack-tox
|
|
nodeset: ubuntu-bionic
|
|
description: |
|
|
Run tox-based functional tests for an OpenStack Python project
|
|
under cPython version 3.6.
|
|
|
|
Uses tox with the ``functional-py36`` environment.
|
|
irrelevant-files: *common-irrelevant-files
|
|
vars:
|
|
tox_envlist: functional-py36
|
|
|
|
- job:
|
|
name: openstack-tox-functional-py37
|
|
parent: openstack-tox
|
|
nodeset: ubuntu-bionic
|
|
description: |
|
|
Run tox-based functional tests for an OpenStack Python project
|
|
under cPython version 3.7.
|
|
|
|
Uses tox with the ``functional-py37`` environment.
|
|
irrelevant-files: *common-irrelevant-files
|
|
vars:
|
|
tox_envlist: functional-py37
|
|
python_version: '3.7'
|
|
|
|
- job:
|
|
name: openstack-tox-functional-py38
|
|
parent: openstack-tox
|
|
nodeset: ubuntu-focal
|
|
description: |
|
|
Run tox-based functional tests for an OpenStack Python project
|
|
under cPython version 3.8.
|
|
|
|
Uses tox with the ``functional-py38`` environment.
|
|
irrelevant-files: *common-irrelevant-files
|
|
vars:
|
|
tox_envlist: functional-py38
|
|
bindep_profile: test py38
|
|
python_version: '3.8'
|
|
|
|
- job:
|
|
name: openstack-tox-functional-py39
|
|
parent: openstack-tox
|
|
nodeset: ubuntu-focal
|
|
description: |
|
|
Run tox-based functional tests for an OpenStack Python project
|
|
under cPython version 3.9.
|
|
|
|
Uses tox with the ``functional-py39`` environment.
|
|
irrelevant-files: *common-irrelevant-files
|
|
vars:
|
|
tox_envlist: functional-py39
|
|
bindep_profile: test py39
|
|
python_version: '3.9'
|
|
|
|
- job:
|
|
name: openstack-tox-functional-py310
|
|
parent: openstack-tox
|
|
nodeset: ubuntu-jammy
|
|
description: |
|
|
Run tox-based functional tests for an OpenStack Python project
|
|
under cPython version 3.10.
|
|
|
|
Uses tox with the ``functional-py310`` environment.
|
|
irrelevant-files: *common-irrelevant-files
|
|
vars:
|
|
tox_envlist: functional-py310
|
|
bindep_profile: test py310
|
|
python_version: '3.10'
|
|
|
|
- job:
|
|
name: openstack-tox-functional-py311
|
|
parent: openstack-tox
|
|
nodeset: debian-bookworm
|
|
description: |
|
|
Run tox-based functional tests for an OpenStack Python project
|
|
under cPython version 3.11.
|
|
|
|
Uses tox with the ``functional-py311`` environment.
|
|
irrelevant-files: *common-irrelevant-files
|
|
vars:
|
|
tox_envlist: functional-py311
|
|
bindep_profile: test py311
|
|
python_version: '3.11'
|
|
|
|
- job:
|
|
name: openstack-tox-functional-py312
|
|
parent: openstack-tox
|
|
nodeset: ubuntu-noble
|
|
description: |
|
|
Run tox-based functional tests for an OpenStack Python project
|
|
under cPython version 3.12.
|
|
|
|
Uses tox with the ``functional-py312`` environment.
|
|
irrelevant-files: *common-irrelevant-files
|
|
vars:
|
|
tox_envlist: functional-py312
|
|
bindep_profile: test py312
|
|
python_use_pyenv: True
|
|
python_version: '3.12'
|
|
|
|
- job:
|
|
name: openstack-tox-validate
|
|
parent: openstack-tox
|
|
description: |
|
|
Run validate tests.
|
|
|
|
Uses tox with the ``validate`` environment.
|
|
vars:
|
|
tox_envlist: validate
|
|
ensure_global_symlinks: true
|
|
|
|
- job:
|
|
name: openstack-tox-pylint
|
|
parent: openstack-tox
|
|
description: |
|
|
Runs pylint tests.
|
|
|
|
Uses tox with the ``pylint`` environment.
|
|
irrelevant-files: *common-irrelevant-files
|
|
vars:
|
|
# pylint is very noisy
|
|
tox_inline_comments: false
|
|
tox_envlist: pylint
|
|
|
|
- job:
|
|
name: openstack-tox-compare-cover
|
|
parent: openstack-tox
|
|
# NOTE(sambetts) This job runs the full UTs twice to compare the coverage
|
|
# pre-and-post a patch so requires longer to run.
|
|
timeout: 4500
|
|
description: |
|
|
Run coverage comparison tests.
|
|
|
|
Uses tox with the ``compare-cover`` environment.
|
|
vars:
|
|
tox_envlist: compare-cover
|
|
|
|
- job:
|
|
name: openstack-tox-snap-with-sudo
|
|
parent: openstack-tox-with-sudo
|
|
description: |
|
|
Run tox-based functional tests for an OpenStack Python project.
|
|
|
|
Uses tox with the ``snap`` environment.
|
|
Sudo access is not revoked.
|
|
irrelevant-files: *common-irrelevant-files
|
|
# NOTE(jamespage) most snaps pull in and compile quite a bit of Python
|
|
# with native extensions - the default of 30 mins is not sufficient.
|
|
timeout: 3600
|
|
vars:
|
|
tox_envlist: snap
|
|
|
|
- job:
|
|
name: openstack-tox-docs
|
|
parent: opendev-tox-docs
|
|
nodeset: ubuntu-jammy
|
|
description: |
|
|
Run documentation build.
|
|
|
|
Uses tox with the ``docs`` environment.
|
|
|
|
.. zuul:jobvar: tox_envlist
|
|
|
|
The tox environment for building HTML, default is ``docs``.
|
|
|
|
.. zuul:jobvar: tox_pdf_envlist
|
|
|
|
The tox environment for building PDF, default is ``pdf-docs``.
|
|
If this environment does not exist, no PDF building is done.
|
|
|
|
.. zuul:jobvar: tox_skip_pdf
|
|
|
|
Whether to skip building of PDF documents. By default a PDF
|
|
file is build if the tox environment specified by
|
|
:zuul:jobvar:`tox_pdf_envlist` exists.
|
|
|
|
branches:
|
|
regex: ^stable/(victoria|wallaby|xena|yoga|zed)$
|
|
negate: true
|
|
required-projects:
|
|
- name: openstack/requirements
|
|
vars:
|
|
tox_constraints_file: '{{ ansible_user_dir }}/src/opendev.org/openstack/requirements/upper-constraints.txt'
|
|
bindep_profile: compile doc
|
|
tox_envlist: docs
|
|
tox_pdf_envlist: pdf-docs
|
|
tox_skip_pdf: false
|
|
# PDF Building is only done from stein onwards.
|
|
pre-run: playbooks/tox-docs/pre.yaml
|
|
run: playbooks/tox-docs/run.yaml
|
|
|
|
- job:
|
|
name: openstack-tox-docs
|
|
parent: opendev-tox-docs
|
|
description: |
|
|
Run documentation build (focal).
|
|
|
|
Uses tox with the ``docs`` environment.
|
|
|
|
This job runs on focal from stable/victoria until stable/zed.
|
|
|
|
.. zuul:jobvar: tox_envlist
|
|
|
|
The tox environment for building HTML, default is ``docs``.
|
|
|
|
.. zuul:jobvar: tox_pdf_envlist
|
|
|
|
The tox environment for building PDF, default is ``pdf-docs``.
|
|
If this environment does not exist, no PDF building is done.
|
|
|
|
.. zuul:jobvar: tox_skip_pdf
|
|
|
|
Whether to skip building of PDF documents. By default a PDF
|
|
file is build if the tox environment specified by
|
|
:zuul:jobvar:`tox_pdf_envlist` exists.
|
|
|
|
required-projects:
|
|
- name: openstack/requirements
|
|
vars:
|
|
tox_constraints_file: '{{ ansible_user_dir }}/src/opendev.org/openstack/requirements/upper-constraints.txt'
|
|
tox_envlist: docs
|
|
bindep_profile: compile doc
|
|
tox_pdf_envlist: pdf-docs
|
|
tox_skip_pdf: false
|
|
# NOTE(gmann): This is stable branch (<=(stable|unmaintained)/zed) job and new
|
|
# tox 4 require some changes in tox.ini to be compatible with it. Let's
|
|
# pin tox <4 for stable branches testing (<=(stable|unmaintained)/zed).
|
|
ensure_tox_version: '<4'
|
|
nodeset: ubuntu-focal
|
|
# PDF Building is only done from stein onwards, therefore these
|
|
# pre-run and run playbooks are not part of
|
|
# openstack-tox-docs job for older branches up to rocky.
|
|
pre-run: playbooks/tox-docs/pre.yaml
|
|
run: playbooks/tox-docs/run.yaml
|
|
branches:
|
|
- ^.*/victoria
|
|
- ^.*/wallaby
|
|
- ^.*/xena
|
|
- ^.*/yoga
|
|
- ^.*/zed
|
|
|
|
- job:
|
|
name: openstack-tox-py39-with-oslo-master
|
|
parent: openstack-tox-py39
|
|
nodeset: ubuntu-focal
|
|
description: |
|
|
This job installs all oslo libraries from source and tests that the
|
|
unit tests of the tested project work.
|
|
It uses the tox ``py39`` environment.
|
|
The job is normally run in a periodic pipeline, it is configured
|
|
to run on the master branch.
|
|
required-projects: &oslo-master-required-projects
|
|
- openstack/automaton
|
|
- openstack/debtcollector
|
|
- openstack/futurist
|
|
- openstack/osprofiler
|
|
- openstack/oslo.cache
|
|
- openstack/oslo.concurrency
|
|
- openstack/oslo.config
|
|
- openstack/oslo.context
|
|
- openstack/oslo.db
|
|
- openstack/oslo.i18n
|
|
- openstack/oslo.log
|
|
- openstack/oslo.messaging
|
|
- openstack/oslo.middleware
|
|
- openstack/oslo.policy
|
|
- openstack/oslo.privsep
|
|
- openstack/oslo.reports
|
|
- openstack/oslo.rootwrap
|
|
- openstack/oslo.serialization
|
|
- openstack/oslo.service
|
|
- openstack/oslo.utils
|
|
- openstack/oslo.versionedobjects
|
|
- openstack/oslo.vmware
|
|
- openstack/oslotest
|
|
- openstack/pycadf
|
|
- openstack/stevedore
|
|
- openstack/taskflow
|
|
- openstack/tooz
|
|
- openstack/pbr
|
|
branches: master
|
|
timeout: 3000
|
|
vars:
|
|
tox_install_siblings: true
|
|
|
|
- job:
|
|
name: openstack-tox-py310-with-oslo-master
|
|
parent: openstack-tox-py310
|
|
nodeset: ubuntu-jammy
|
|
description: |
|
|
This job installs all oslo libraries from source and tests that the
|
|
unit tests of the tested project work.
|
|
It uses the tox ``py310`` environment.
|
|
The job is normally run in a periodic pipeline, it is configured
|
|
to run on the master branch.
|
|
required-projects: *oslo-master-required-projects
|
|
branches: master
|
|
timeout: 3000
|
|
vars:
|
|
tox_install_siblings: true
|
|
|
|
- job:
|
|
name: openstack-tox-py311-with-oslo-master
|
|
parent: openstack-tox-py311
|
|
nodeset: ubuntu-jammy
|
|
description: |
|
|
This job installs all oslo libraries from source and tests that the
|
|
unit tests of the tested project work.
|
|
It uses the tox ``py311`` environment.
|
|
The job is normally run in a periodic pipeline, it is configured
|
|
to run on the master branch.
|
|
required-projects: *oslo-master-required-projects
|
|
branches: master
|
|
timeout: 3000
|
|
vars:
|
|
tox_install_siblings: true
|
|
|
|
- job:
|
|
name: openstack-tox-py312-with-oslo-master
|
|
parent: openstack-tox-py312
|
|
description: |
|
|
This job installs all oslo libraries from source and tests that the
|
|
unit tests of the tested project work.
|
|
It uses the tox ``py312`` environment.
|
|
The job is normally run in a periodic pipeline, it is configured
|
|
to run on the master branch.
|
|
required-projects: *oslo-master-required-projects
|
|
branches: master
|
|
timeout: 3000
|
|
vars:
|
|
tox_install_siblings: true
|
|
|
|
- job:
|
|
name: openstack-tox-py39-with-neutron-lib-master
|
|
parent: openstack-tox-py39
|
|
timeout: 3000
|
|
description: |
|
|
This job installs neutron-lib from source and tests that the
|
|
unit tests of the tested project work.
|
|
It uses the tox ``py39`` environment.
|
|
The job is normally run in a periodic pipeline, it is configured
|
|
to run on the master branch.
|
|
branches: master
|
|
required-projects:
|
|
- openstack/neutron
|
|
- openstack/neutron-lib
|
|
vars:
|
|
tox_install_siblings: true
|
|
|
|
- job:
|
|
name: openstack-tox-py310-with-neutron-lib-master
|
|
parent: openstack-tox-py310
|
|
timeout: 3000
|
|
description: |
|
|
This job installs neutron-lib from source and tests that the
|
|
unit tests of the tested project work.
|
|
It uses the tox ``py310`` environment.
|
|
The job is normally run in a periodic pipeline, it is configured
|
|
to run on the master branch.
|
|
branches: master
|
|
required-projects:
|
|
- openstack/neutron
|
|
- openstack/neutron-lib
|
|
vars:
|
|
tox_install_siblings: true
|
|
|
|
- job:
|
|
name: openstack-tox-py311-with-neutron-lib-master
|
|
parent: openstack-tox-py311
|
|
timeout: 3000
|
|
description: |
|
|
This job installs neutron-lib from source and tests that the
|
|
unit tests of the tested project work.
|
|
It uses the tox ``py311`` environment.
|
|
The job is normally run in a periodic pipeline, it is configured
|
|
to run on the master branch.
|
|
branches: master
|
|
required-projects:
|
|
- openstack/neutron
|
|
- openstack/neutron-lib
|
|
vars:
|
|
tox_install_siblings: true
|
|
|
|
- job:
|
|
name: openstack-tox-py312-with-neutron-lib-master
|
|
parent: openstack-tox-py312
|
|
timeout: 3000
|
|
description: |
|
|
This job installs neutron-lib from source and tests that the
|
|
unit tests of the tested project work.
|
|
It uses the tox ``py312`` environment.
|
|
The job is normally run in a periodic pipeline, it is configured
|
|
to run on the master branch.
|
|
branches: master
|
|
required-projects:
|
|
- openstack/neutron
|
|
- openstack/neutron-lib
|
|
vars:
|
|
tox_install_siblings: true
|
|
|
|
- job:
|
|
name: openstack-tox-py310-with-ovsdbapp-master
|
|
parent: openstack-tox-py310
|
|
timeout: 3000
|
|
description: |
|
|
This job installs ovsdbapp from source and tests that the
|
|
unit tests of the tested project work.
|
|
It uses the tox ``py310`` environment.
|
|
The job is normally run in a periodic pipeline, it is configured
|
|
to run on the master branch.
|
|
branches: master
|
|
required-projects:
|
|
- openstack/ovsdbapp
|
|
vars:
|
|
tox_install_siblings: true
|
|
|
|
- job:
|
|
name: openstack-tox-py311-with-ovsdbapp-master
|
|
parent: openstack-tox-py311
|
|
timeout: 3000
|
|
description: |
|
|
This job installs ovsdbapp from source and tests that the
|
|
unit tests of the tested project work.
|
|
It uses the tox ``py311`` environment.
|
|
The job is normally run in a periodic pipeline, it is configured
|
|
to run on the master branch.
|
|
branches: master
|
|
required-projects:
|
|
- openstack/ovsdbapp
|
|
vars:
|
|
tox_install_siblings: true
|
|
|
|
- job:
|
|
name: openstack-tox-py312-with-ovsdbapp-master
|
|
parent: openstack-tox-py312
|
|
timeout: 3000
|
|
description: |
|
|
This job installs ovsdbapp from source and tests that the
|
|
unit tests of the tested project work.
|
|
It uses the tox ``py312`` environment.
|
|
The job is normally run in a periodic pipeline, it is configured
|
|
to run on the master branch.
|
|
branches: master
|
|
required-projects:
|
|
- openstack/ovsdbapp
|
|
vars:
|
|
tox_install_siblings: true
|
|
|
|
|
|
- job:
|
|
name: openstack-tox-lower-constraints
|
|
parent: openstack-tox
|
|
nodeset: ubuntu-focal
|
|
branches:
|
|
regex: ^driverfixes/.*$
|
|
negate: true
|
|
timeout: 2400
|
|
description: |
|
|
Run unit tests using the lower constraints.
|
|
|
|
Uses tox with the ``lower-constraints`` environment,
|
|
which should be configured to use Python 3 by default
|
|
unless the project does not support Python 3.
|
|
irrelevant-files: *common-irrelevant-files
|
|
vars:
|
|
tox_envlist: lower-constraints
|
|
bindep_profile: test py38
|
|
|
|
- job:
|
|
name: build-openstack-puppet-tarball
|
|
description: |
|
|
Build a puppet tarball but do not upload it anywhere.
|
|
nodeset: ubuntu-jammy
|
|
pre-run: playbooks/puppet-tarball/pre.yaml
|
|
run: playbooks/puppet-tarball/run.yaml
|
|
files: ^metadata.json$
|
|
|
|
- job:
|
|
name: publish-openstack-puppet-branch-tarball
|
|
parent: publish-openstack-artifacts
|
|
description: |
|
|
Publish the results of the puppet-tarball job to tarballs.openstack.org.
|
|
pre-run: playbooks/puppet-tarball/pre.yaml
|
|
run: playbooks/puppet-tarball/run.yaml
|
|
post-run: playbooks/puppet-branch-tarball/post.yaml
|
|
|
|
- job:
|
|
name: publish-openstack-javascript-tarball
|
|
parent: publish-openstack-artifacts
|
|
description: |
|
|
Build and publish source tarball for a Javascript project.
|
|
|
|
Responds to these variables:
|
|
|
|
.. zuul:jobvar:: node_version
|
|
:default: 6
|
|
|
|
The version of Node to use.
|
|
|
|
.. zuul:jobvar: zuul_work_dir
|
|
:default: {{ zuul.project.src_dir }}
|
|
|
|
Path to operate in.
|
|
pre-run: playbooks/javascript/pre.yaml
|
|
run: playbooks/javascript/tarball.yaml
|
|
post-run:
|
|
- playbooks/javascript/post.yaml
|
|
- playbooks/javascript/post-tarball.yaml
|
|
|
|
- job:
|
|
name: announce-release
|
|
description: Send a release announcement after publishing a project
|
|
pre-run: playbooks/release/pre.yaml
|
|
run: playbooks/release/announce.yaml
|
|
required-projects:
|
|
- openstack/releases
|
|
|
|
- job:
|
|
name: xstatic-check-version
|
|
description: Check version used by xstatic packages
|
|
run: playbooks/xstatic/check-version.yaml
|
|
|
|
- job:
|
|
name: build-openstack-releasenotes
|
|
branches:
|
|
regex: ^driverfixes/.*$
|
|
negate: true
|
|
parent: build-reno-releasenotes
|
|
nodeset: ubuntu-jammy
|
|
description: |
|
|
Build releasenotes, with optional translation support, using reno.
|
|
# Building translated releasenotes can take long for large repositories
|
|
timeout: 3600
|
|
required-projects:
|
|
- name: openstack/requirements
|
|
vars:
|
|
constraints_file: '{{ ansible_user_dir }}/src/opendev.org/openstack/requirements/upper-constraints.txt'
|
|
|
|
- job:
|
|
name: build-openstack-api-ref
|
|
parent: openstack-tox-docs
|
|
description: |
|
|
Build api-ref document. This is only run on master branch of a
|
|
project.
|
|
timeout: 1800
|
|
vars:
|
|
sphinx_build_dir: api-ref/build
|
|
tox_envlist: api-ref
|
|
tox_skip_pdf: true
|
|
# We only publish the master branch, so no need to run
|
|
# for changes on other branches.
|
|
branches: master
|
|
|
|
- job:
|
|
name: build-openstack-api-guide
|
|
parent: openstack-tox-docs
|
|
description: |
|
|
Build api-guide document. This is only run for changes on master
|
|
branch of a project.
|
|
vars:
|
|
sphinx_build_dir: api-guide/build
|
|
tox_envlist: api-guide
|
|
tox_skip_pdf: true
|
|
# We only publish the master branch, so no need to run
|
|
# for changes on other branches.
|
|
branches: master
|
|
|
|
- job:
|
|
name: build-openstack-deploy-guide
|
|
parent: openstack-tox-docs
|
|
description: |
|
|
Build deploy-guide document.
|
|
vars:
|
|
sphinx_build_dir: deploy-guide/build
|
|
tox_envlist: deploy-guide
|
|
tox_skip_pdf: true
|
|
|
|
- job:
|
|
name: legacy-base
|
|
abstract: true
|
|
description: |
|
|
Base job (bionic) for autoconverted legacy jobs
|
|
|
|
This job runs on Bionic from stable/stein on.
|
|
pre-run: playbooks/legacy/pre.yaml
|
|
vars:
|
|
bindep_fallback: /usr/local/bindep-fallback/bindep-fallback.txt
|
|
nodeset: legacy-ubuntu-bionic
|
|
|
|
- job:
|
|
name: legacy-dsvm-base
|
|
abstract: true
|
|
description: |
|
|
Base job (bionic) for autoconverted legacy devstack-gate jobs
|
|
|
|
This job runs devstack-gate with as few changes as possible and
|
|
may be used by jobs which have been automatically converted as
|
|
part of the migration to Zuul v3. This job runs on Bionic from
|
|
stable/stein on.
|
|
nodeset: legacy-ubuntu-bionic
|
|
pre-run: playbooks/legacy/pre.yaml
|
|
required-projects:
|
|
- openstack/devstack
|
|
- openstack/tripleo-ci
|
|
- openstack/ceilometer
|
|
- openstack/ceilometermiddleware
|
|
- openstack/cinder
|
|
- openstack/glance
|
|
- openstack/glance_store
|
|
- openstack/heat
|
|
- openstack/heat-cfntools
|
|
- openstack/heat-templates
|
|
- openstack/horizon
|
|
- openstack/keystone
|
|
- openstack/keystoneauth
|
|
- openstack/keystonemiddleware
|
|
- openstack/manila
|
|
- openstack/manila-ui
|
|
- openstack/neutron
|
|
- openstack/nova
|
|
- openstack/octavia
|
|
- openstack/os-apply-config
|
|
- openstack/os-brick
|
|
- openstack/os-client-config
|
|
- openstack/os-collect-config
|
|
- openstack/os-refresh-config
|
|
- openstack/osc-lib
|
|
# NOTE(mriedem): The openstack/placement repo is new in Stein and will
|
|
# be ignored on stable branches before Stein.
|
|
- openstack/placement
|
|
- openstack/requirements
|
|
- openstack/swift
|
|
- openstack/tempest
|
|
- openstack/zaqar
|
|
|
|
- job:
|
|
name: legacy-publish-openstack-artifacts
|
|
abstract: true
|
|
parent: publish-openstack-artifacts
|
|
description: |
|
|
Base job (bionic) for autoconverted legacy jobs that publish artifacts.
|
|
|
|
This job runs on Bionic from stable/stein on.
|
|
nodeset: legacy-ubuntu-bionic
|
|
pre-run: playbooks/legacy/pre.yaml
|
|
|
|
|
|
- job:
|
|
name: project-config-gerrit
|
|
parent: tox
|
|
description: |
|
|
Runs checks on gerrit-related configuration. Uses ``gerrit``
|
|
tox env.
|
|
vars:
|
|
tox_envlist: gerrit
|
|
files:
|
|
- ^gerrit/acls/.*$
|
|
- bindep.txt
|
|
- tools/check_valid_gerrit_projects.py
|
|
- gerrit/projects.yaml
|
|
- other-requirements.txt
|
|
- tools/check_projects_yaml_alphabetized.sh
|
|
- tools/check_valid_gerrit_config.sh
|
|
- tools/normalize_acl.py
|
|
- tox.ini
|
|
- zuul/main.yaml
|
|
|
|
- job:
|
|
name: project-config-grafana
|
|
description: |
|
|
Validates import and creates screenshots of project-config
|
|
defined graphs.
|
|
run: playbooks/grafana/main.yaml
|
|
post-run: playbooks/grafana/post.yaml
|
|
required-projects:
|
|
- openstack/project-config
|
|
dependencies:
|
|
- name: opendev-buildset-registry
|
|
- name: grafyaml-build-image
|
|
soft: true
|
|
|
|
- job:
|
|
name: project-config-irc-access
|
|
parent: tox
|
|
description: |
|
|
Runs checks on IRC configuration with the ``irc`` tox
|
|
env.
|
|
vars:
|
|
tox_envlist: irc
|
|
files:
|
|
- bindep.txt
|
|
- accessbot/channels.yaml
|
|
- gerritbot/channels.yaml
|
|
- other-requirements.txt
|
|
- tools/check_irc_access.py
|
|
- tools/check_channels_yaml.sh
|
|
- tools/irc_tests.py
|
|
- tools/normalize_channels_yaml.py
|
|
- tools/projectconfig_yamllib.py
|
|
- tox.ini
|
|
|
|
- job:
|
|
name: project-config-nodepool
|
|
parent: tox
|
|
description: |
|
|
Runs checks on nodepool configuration with the ``nodepool`` tox
|
|
env.
|
|
nodeset: debian-bookworm
|
|
vars:
|
|
tox_envlist: nodepool
|
|
required-projects:
|
|
- zuul/nodepool
|
|
files:
|
|
- ^nodepool/nodepool.yaml
|
|
- ^nodepool/nl.*yaml$
|
|
- bindep.txt
|
|
- other-requirements.txt
|
|
- tox.ini
|
|
|
|
- job:
|
|
name: build-openstack-specs-site
|
|
parent: opendev-tox-docs
|
|
description: |
|
|
Generates the index page of http://specs.openstack.org/.
|
|
vars:
|
|
tox_envlist: specs
|
|
sphinx_build_dir: specs
|
|
|
|
- job:
|
|
name: project-config-dib
|
|
parent: tox
|
|
description: |
|
|
Runs diskimage-builder on all elements in project-config. Uses
|
|
the ``dib`` tox env.
|
|
vars:
|
|
tox_envlist: dib
|
|
files:
|
|
- ^nodepool/elements/.*$
|
|
- bindep.txt
|
|
- other-requirements.txt
|
|
- tox.ini
|
|
|
|
- job:
|
|
name: project-config-infra-docs-index
|
|
parent: opendev-tox-docs
|
|
description: |
|
|
Generates the index page for https://docs.openstack.org/infra/.
|
|
vars:
|
|
tox_envlist: infra-docs
|
|
sphinx_build_dir: docs-site
|
|
|
|
- job:
|
|
name: openafs-rpm-package-build
|
|
description: |
|
|
There are no official builds for AFS on Centos, hence we build
|
|
our own and publish them to tarballs.openstack.org for our
|
|
centos hosts that need access to the mirror to consume.
|
|
pre-run: playbooks/openafs-rpm-package-build/pre.yaml
|
|
run: playbooks/openafs-rpm-package-build/run.yaml
|
|
files: &afs-files
|
|
- playbooks/openafs-rpm-package-build
|
|
- roles/openafs-rpm-package-build
|
|
|
|
- job:
|
|
name: openafs-rpm-package-build-centos-9-stream-x86
|
|
parent: openafs-rpm-package-build
|
|
nodeset: centos-9-stream
|
|
|
|
- job:
|
|
name: openafs-rpm-package-build-centos-9-stream-arm64
|
|
parent: openafs-rpm-package-build
|
|
nodeset: centos-9-stream-arm64
|
|
|
|
- job:
|
|
name: openafs-rpm-package-build-promote
|
|
description: |
|
|
Publish the openafs RPM packages
|
|
parent: publish-openstack-artifacts
|
|
run: playbooks/openafs-rpm-package-build/publish.yaml
|
|
files: *afs-files
|
|
nodeset:
|
|
nodes: []
|
|
|
|
# This builds openafs source packages and, with the publishing steps,
|
|
# pushes them to be built by as an Ubuntu PPA.
|
|
#
|
|
# OpenDev has traditionally kept separate OpenAFS packages in a PPA
|
|
# which are used by production hosts. In the past the LTS distro
|
|
# versions have had bugs, or lacked support for architectures/kernels
|
|
# (ARM64 + HWE kernels, practically) we needed -- necessitating keeping
|
|
# separate, fresh versions.
|
|
#
|
|
# Upstream packages keep a PPA at
|
|
# https://launchpad.net/~openafs/+archive/ubuntu/stable
|
|
#
|
|
# As much as possible, we generally import and use their debian/*
|
|
# infrastructure (including patches, etc.) as a base. This PPA
|
|
# doesn't build all the architectures we need, but also isn't focused
|
|
# on the immediate needs of OpenDev production; thus despite it's
|
|
# regular maintence it is still helpful for us to have our own package
|
|
# builds. These problems are much less with current distros (>= 2022)
|
|
# and openafs 1.8 series; our goal is to generally carry no
|
|
# differences.
|
|
#
|
|
# Note the openafs-rpm-package-build jobs are a counter-part to this, as
|
|
# OpenAFS hasn't been available on RPM distros. We try to keep these in
|
|
# sync so our infrastructure is more or less at the same level.
|
|
- job:
|
|
name: openafs-deb-package-build
|
|
description: |
|
|
Build OpenAFS packages for OpenDev PPA
|
|
provides: openafs-deb-packages
|
|
run: playbooks/openafs-deb-package-build/run.yaml
|
|
|
|
- job:
|
|
name: openafs-deb-package-build-promote
|
|
requires: openafs-deb-packages
|
|
description: |
|
|
Publish the openafs deb packages to OpenDev PPA
|
|
run: playbooks/openafs-deb-package-build/publish.yaml
|
|
secrets:
|
|
- secret: openstack_ci_ppa_upload_key
|
|
name: gpg_key
|
|
|
|
- job:
|
|
name: vhd-util-deb-package-build
|
|
description: |
|
|
Build vhd-util packages for OpenDev PPA
|
|
provides: vhd-util-deb-packages
|
|
run: playbooks/vhd-util-deb-package-build/run.yaml
|
|
|
|
- job:
|
|
name: vhd-util-deb-package-build-promote
|
|
requires: vhd-util-deb-packages
|
|
description: |
|
|
Publish the vhd-util deb packages to OpenDev PPA
|
|
run: playbooks/vhd-util-deb-package-build/publish.yaml
|
|
secrets:
|
|
- secret: openstack_ci_ppa_upload_key
|
|
name: gpg_key
|
|
|
|
- job:
|
|
name: openstack-zuul-jobs-linters
|
|
parent: tox
|
|
description: |
|
|
This job runs against base-jobs, project-config, openstack-zuul-jobs
|
|
and zuul-jobs so we can properly lint our ansible playbooks / roles.
|
|
required-projects:
|
|
- opendev/base-jobs
|
|
- openstack/openstack-zuul-jobs
|
|
- openstack/project-config
|
|
- opendev/system-config
|
|
- zuul/zuul-jobs
|
|
vars:
|
|
tox_envlist: linters
|
|
tox_environment:
|
|
ANSIBLE_ROLES_PATH: ~/src/opendev.org/opendev/base-jobs/roles:~/src/opendev.org/zuul/zuul-jobs/roles:~/src/opendev.org/openstack/openstack-zuul-jobs/roles:~/src/opendev.org/openstack/project-config/roles:~/src/opendev.org/opendev/system-config/roles
|
|
|
|
- job:
|
|
name: ansible-role-functional-base
|
|
abstract: true
|
|
parent: tox
|
|
description: |
|
|
Run functional functional tests for ansible-role projects.
|
|
|
|
Uses tox with the ``functional`` environment.
|
|
pre-run: playbooks/ansible-role-functional/pre.yaml
|
|
run: playbooks/tox-with-sudo/run.yaml
|
|
vars:
|
|
tox_envlist: functional
|
|
|
|
- job:
|
|
name: ansible-role-functional-ubuntu-xenial
|
|
parent: ansible-role-functional-base
|
|
|
|
- job:
|
|
name: golang-base
|
|
parent: unittests
|
|
abstract: true
|
|
description: |
|
|
Base job for golang tests.
|
|
pre-run: playbooks/golang/pre.yaml
|
|
run: playbooks/golang/run.yaml
|
|
|
|
- job:
|
|
name: golang-fmt
|
|
parent: golang-base
|
|
description: |
|
|
Run golang fmt test.
|
|
|
|
This uses the make target ``fmt``.
|
|
vars:
|
|
golang_target: "fmt"
|
|
|
|
- job:
|
|
name: golang-unit
|
|
parent: golang-base
|
|
description: |
|
|
Run golang unit test.
|
|
|
|
This uses the make target ``test``.
|
|
vars:
|
|
golang_target: "test"
|
|
|
|
- job:
|
|
name: openstack-infra-extra-integration
|
|
description: |
|
|
Runs non-base roles that are used within various jobs to prevent
|
|
regressions. As opposed to base roles, these may run in a
|
|
limited set of environments or have other simplifying
|
|
assumptions.
|
|
abstract: true
|
|
protected: true
|
|
parent: base
|
|
required-projects:
|
|
- openstack/project-config
|
|
roles:
|
|
- zuul: zuul/zuul-jobs
|
|
run: tests/extra.yaml
|
|
files:
|
|
- ^zuul.d/*
|
|
- ^roles/prepare-zanata-client/.*
|
|
- ^tests/.*
|
|
|
|
# NOTE(ianw): This test restricted to the node type these roles
|
|
# run on in the gate.
|
|
- job:
|
|
name: openstack-infra-extra-integration-bionic
|
|
parent: openstack-infra-extra-integration
|
|
nodeset: ubuntu-bionic
|
|
|
|
- job:
|
|
name: build-wheel-cache-base
|
|
abstract: true
|
|
description: |
|
|
Base job for building wheels published in OpenStack CI mirrors.
|
|
pre-run:
|
|
- playbooks/wheel-cache/pre.yaml
|
|
run: playbooks/wheel-cache/build.yaml
|
|
post-run: playbooks/wheel-cache/post-base.yaml
|
|
# 2.5 hours
|
|
timeout: 9000
|
|
required-projects:
|
|
- name: openstack/requirements
|
|
# The job iterates over all branches, so we only need to run it on
|
|
# master.
|
|
branches: master
|
|
# The publish jobs use kerberos/openafs roles in pre/post
|
|
# playbooks, so this needs to be included here in the parent.
|
|
roles:
|
|
- zuul: opendev/system-config
|
|
vars:
|
|
bindep_dir: "{{ zuul.projects['opendev.org/openstack/requirements'].src_dir }}"
|
|
|
|
- job:
|
|
name: build-wheel-cache-centos-9-stream
|
|
parent: build-wheel-cache-base
|
|
description: |
|
|
Build CentOS 9 wheels for OpenStack CI mirrors.
|
|
nodeset:
|
|
nodes:
|
|
- name: wheel-cache-centos-9-stream-python3
|
|
label: centos-9-stream
|
|
host-vars:
|
|
wheel-cache-centos-9-stream-python3:
|
|
wheel_python: python3
|
|
|
|
- job:
|
|
name: build-wheel-cache-centos-9-stream-arm64
|
|
parent: build-wheel-cache-base
|
|
description: |
|
|
Build CentOS 9 wheels for OpenStack CI mirrors.
|
|
nodeset:
|
|
nodes:
|
|
- name: wheel-cache-centos-9-stream-arm64-python3
|
|
label: centos-9-stream-arm64
|
|
host-vars:
|
|
wheel-cache-centos-9-stream-arm64-python3:
|
|
wheel_python: python3
|
|
|
|
- job:
|
|
name: build-wheel-cache-debian-bullseye
|
|
parent: build-wheel-cache-base
|
|
description: |
|
|
Build Debian bullseye wheels for OpenStack CI mirrors.
|
|
nodeset:
|
|
nodes:
|
|
- name: wheel-cache-debian-bullseye-python3
|
|
label: debian-bullseye
|
|
host-vars:
|
|
wheel-cache-debian-bullseye-python3:
|
|
wheel_python: python3
|
|
|
|
- job:
|
|
name: build-wheel-cache-debian-bullseye-arm64
|
|
parent: build-wheel-cache-base
|
|
description: |
|
|
Build Debian bullseye wheels for OpenStack CI mirrors.
|
|
nodeset:
|
|
nodes:
|
|
- name: wheel-cache-debian-bullseye-arm64-python3
|
|
label: debian-bullseye-arm64
|
|
host-vars:
|
|
wheel-cache-debian-bullseye-arm64-python3:
|
|
wheel_python: python3
|
|
|
|
- job:
|
|
name: build-wheel-cache-ubuntu-jammy
|
|
parent: build-wheel-cache-base
|
|
description: |
|
|
Build Ubuntu Jammy wheels for OpenStack CI mirrors.
|
|
nodeset:
|
|
nodes:
|
|
- name: wheel-cache-ubuntu-jammy-python3
|
|
label: ubuntu-jammy
|
|
host-vars:
|
|
wheel-cache-ubuntu-jammy-python3:
|
|
wheel_python: python3
|
|
|
|
- job:
|
|
name: build-wheel-cache-ubuntu-jammy-arm64
|
|
parent: build-wheel-cache-base
|
|
description: |
|
|
Build Ubuntu Jammy wheels for OpenStack CI mirrors.
|
|
nodeset:
|
|
nodes:
|
|
- name: wheel-cache-ubuntu-jammy-arm64-python3
|
|
label: ubuntu-jammy-arm64
|
|
host-vars:
|
|
wheel-cache-ubuntu-jammy-arm64-python3:
|
|
wheel_python: python3
|
|
|
|
- job:
|
|
name: build-wheel-cache-ubuntu-focal
|
|
parent: build-wheel-cache-base
|
|
description: |
|
|
Build Ubuntu Focal wheels for OpenStack CI mirrors.
|
|
nodeset:
|
|
nodes:
|
|
- name: wheel-cache-ubuntu-focal-python3
|
|
label: ubuntu-focal
|
|
host-vars:
|
|
wheel-cache-ubuntu-focal-python3:
|
|
wheel_python: python3
|
|
|
|
- job:
|
|
name: build-wheel-cache-ubuntu-focal-arm64
|
|
parent: build-wheel-cache-base
|
|
description: |
|
|
Build Ubuntu Focal wheels for OpenStack CI mirrors.
|
|
nodeset:
|
|
nodes:
|
|
- name: wheel-cache-ubuntu-focal-arm64-python3
|
|
label: ubuntu-focal-arm64
|
|
host-vars:
|
|
wheel-cache-ubuntu-focal-arm64-python3:
|
|
wheel_python: python3
|
|
|
|
- job:
|
|
name: build-wheel-cache-ubuntu-bionic
|
|
parent: build-wheel-cache-base
|
|
description: |
|
|
Build Ubuntu Bionic wheels for OpenStack CI mirrors.
|
|
nodeset:
|
|
nodes:
|
|
- name: wheel-cache-ubuntu-bionic-python2
|
|
label: ubuntu-bionic
|
|
- name: wheel-cache-ubuntu-bionic-python3
|
|
label: ubuntu-bionic
|
|
host-vars:
|
|
wheel-cache-ubuntu-bionic-python2:
|
|
wheel_python: python2
|
|
wheel-cache-ubuntu-bionic-python3:
|
|
wheel_python: python3
|
|
|
|
- job:
|
|
name: build-wheel-cache-ubuntu-bionic-arm64
|
|
parent: build-wheel-cache-base
|
|
description: |
|
|
Build Ubuntu Bionic wheels for OpenStack CI mirrors.
|
|
nodeset:
|
|
nodes:
|
|
- name: wheel-cache-ubuntu-bionic-arm64-python2
|
|
label: ubuntu-bionic-arm64
|
|
- name: wheel-cache-ubuntu-bionic-arm64-python3
|
|
label: ubuntu-bionic-arm64
|
|
host-vars:
|
|
wheel-cache-ubuntu-bionic-arm64-python2:
|
|
wheel_python: python2
|
|
wheel-cache-ubuntu-bionic-arm64-python3:
|
|
wheel_python: python3
|
|
|
|
- job:
|
|
name: openstack-multinode-fips
|
|
abstract: true
|
|
parent: openstack-fips
|
|
description: |
|
|
Base job for OpenStack jobs to enable mutinode jobs while
|
|
being able to enable FIPS by specifying enable_fips as True.
|
|
pre-run:
|
|
- playbooks/fips/enable-fips.yaml
|
|
- playbooks/multinode/enable-multinode.yaml
|