trove/zuul.d/jobs.yaml
Ghanshyam Mann 550b0f0d8f Update gate jobs as per the 2025.1 cycle testing runtime
As per 2025.1 testing runtime[1], we need to test on Ubuntu
Noble (which will be taken care by tempest and devstack [2]
patches to move base jobs to Noble) and at least single job to run on
Ubuntu Jammy (for smooth upgrade from previous releases).

This commit adds a new job to run on Jammy which can be removed
in future cycle when testing runtime test next version of Ubuntu
as default.

Also bump the hacking version to fix the pepe8 erorr:
 -AttributeError: 'EntryPoints' object has no attribute 'get'

[1] https://governance.openstack.org/tc/reference/runtimes/2025.1.html
[2] https://review.opendev.org/c/openstack/tempest/+/932156

Change-Id: Ia29391d5535b16589d7cf259f958b3b6aac5776c
2024-11-29 05:23:49 +00:00

489 lines
13 KiB
YAML

- job:
name: trove-tox-bandit-baseline
parent: openstack-tox
timeout: 2400
vars:
tox_envlist: bandit-baseline
required-projects:
- openstack/requirements
irrelevant-files:
- ^.*\.rst$
- ^.*\.txt$
- ^api-ref/.*$
- ^contrib/.*$
- ^doc/.*$
- ^etc/.*$
- ^releasenotes/.*$
- ^setup.cfg$
- ^tools/.*$
- ^trove/hacking/.*$
- ^trove/tests/scenario/.*$
- ^trove/tests/unittests/.*$
- job:
name: trove-tempest
parent: devstack-tempest
nodeset: trove-ubuntu-noble
timeout: 10800
required-projects: &base_required_projects
- openstack/trove
- openstack/trove-tempest-plugin
- openstack/tempest
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^etc/.*$
- ^releasenotes/.*$
- ^test-requirements.txt$
- ^tox.ini$
- ^LICENSE$
- ^contrib/
- ^zuul\.d/
- ^\..+
vars: &base_vars
tox_envlist: all
tempest_concurrency: 1
devstack_localrc:
TEMPEST_PLUGINS: /opt/stack/trove-tempest-plugin
SYNC_LOG_TO_CONTROLLER: True
TROVE_DATASTORE_VERSION: 5.7
TROVE_AGENT_CALL_HIGH_TIMEOUT: 1800
SWIFT_LOOPBACK_DISK_SIZE: 15G
TROVE_MGMT_GATEWAY: "192.168.254.1"
devstack_local_conf:
post-config:
$TROVE_CONF:
DEFAULT:
swift_api_insecure: True
usage_timeout: 1800
network:
network_isolation: True
test-config:
$TEMPEST_CONFIG:
auth:
tempest_roles: ResellerAdmin
database:
database_build_timeout: 2400
default_datastore_versions: mysql:5.7
devstack_plugins:
trove: https://opendev.org/openstack/trove.git
devstack_services:
etcd3: false
cinder: true
c-sch: true
c-api: true
c-vol: true
c-bak: false
swift: true
s-account: true
s-container: true
s-object: true
s-proxy: true
tls-proxy: true
tempest: true
tempest_test_regex: ^trove_tempest_plugin\.tests
tempest_test_timeout: 3600
zuul_copy_output:
'/var/log/guest-agent-logs/': 'logs'
- job:
name: trove-tempest-ubuntu-base
parent: trove-tempest
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^etc/.*$
- ^releasenotes/.*$
- ^test-requirements.txt$
- ^tox.ini$
- ^LICENSE$
- ^contrib/
- ^zuul\.d/
- ^backup/
- ^\..+
- ^trove/guestagent/strategies/replication/
vars:
devstack_services:
swift: false
s-account: false
s-container: false
s-object: false
s-proxy: false
tempest_test_regex: ^trove_tempest_plugin\.tests\.scenario\.test_instance_basic
- job:
name: trove-tempest-ubuntu-backup
parent: trove-tempest
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^etc/.*$
- ^releasenotes/.*$
- ^test-requirements.txt$
- ^tox.ini$
- ^LICENSE$
- ^contrib/
- ^zuul\.d/
- ^\..+
- ^trove/guestagent/strategies/replication/
vars:
devstack_localrc:
TROVE_ENABLE_LOCAL_REGISTRY: True
tempest_test_regex: ^trove_tempest_plugin\.tests\.scenario\.test_backup
- job:
name: trove-tempest-ubuntu-replication
parent: trove-tempest
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^etc/.*$
- ^releasenotes/.*$
- ^test-requirements.txt$
- ^tox.ini$
- ^LICENSE$
- ^contrib/
- ^zuul\.d/
- ^backup/
- ^\..+
vars:
devstack_localrc:
TROVE_ENABLE_LOCAL_REGISTRY: True
tempest_test_regex: ^trove_tempest_plugin\.tests\.scenario\.test_replication
- job:
name: trove-tempest-ubuntu-base-mysql5.7
parent: trove-tempest-ubuntu-base
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^etc/.*$
- ^releasenotes/.*$
- ^test-requirements.txt$
- ^tox.ini$
- ^LICENSE$
- ^contrib/
- ^zuul\.d/
- ^backup/
- ^\..+
- ^trove/guestagent/strategies/replication/
- ^trove/guestagent/datastore/(postgres|mariadb)/.*$
vars:
devstack_localrc:
TROVE_DATASTORE_VERSION: 5.7
devstack_local_conf:
test-config:
$TEMPEST_CONFIG:
database:
default_datastore_versions: mysql:5.7
# TODO(gmann): As per the 2025.1 testing runtime, we need to run at least
# one job on jammy. This job can be removed as per the future testing
# runtime (whenever we start testing Ubuntu 26.04 as default version).
- job:
name: trove-tempest-ubuntu-base-mysql5.7-jammy
description: This is integrated job testing on Ubuntu jammy(22.04)
parent: trove-tempest-ubuntu-base-mysql5.7
nodeset: trove-ubuntu-jammy
- job:
name: trove-tempest-ubuntu-backup-mysql5.7
parent: trove-tempest-ubuntu-backup
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^etc/.*$
- ^releasenotes/.*$
- ^test-requirements.txt$
- ^tox.ini$
- ^LICENSE$
- ^contrib/
- ^zuul\.d/
- ^\..+
- ^trove/guestagent/strategies/replication/
- ^trove/guestagent/datastore/(postgres|mariadb)/.*$
vars:
devstack_localrc:
TROVE_DATASTORE_VERSION: 5.7
devstack_local_conf:
test-config:
$TEMPEST_CONFIG:
database:
backup_wait_timeout: 1200
default_datastore_versions: mysql:5.7
- job:
name: trove-tempest-ubuntu-replication-mysql5.7
parent: trove-tempest-ubuntu-replication
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^etc/.*$
- ^releasenotes/.*$
- ^test-requirements.txt$
- ^tox.ini$
- ^LICENSE$
- ^contrib/
- ^zuul\.d/
- ^backup/
- ^\..+
- ^trove/guestagent/datastore/(postgres|mariadb)/.*$
- ^trove/guestagent/strategies/replication/(postgresql.*|mariadb.*)\.py$
vars:
devstack_localrc:
TROVE_DATASTORE_VERSION: 5.7
devstack_local_conf:
test-config:
$TEMPEST_CONFIG:
database:
backup_wait_timeout: 1200
default_datastore_versions: mysql:5.7
- job:
name: trove-tempest-ubuntu-base-mariadb10.4
parent: trove-tempest-ubuntu-base
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^etc/.*$
- ^releasenotes/.*$
- ^test-requirements.txt$
- ^tox.ini$
- ^LICENSE$
- ^contrib/
- ^zuul\.d/
- ^backup/
- ^\..+
- ^trove/guestagent/strategies/replication/
- ^trove/guestagent/datastore/(mysql.*|postgres)/.*$
vars:
devstack_localrc:
TROVE_DATASTORE_TYPE: mariadb
TROVE_DATASTORE_VERSION: 10.4
devstack_local_conf:
test-config:
$TEMPEST_CONFIG:
database:
enabled_datastores: "mariadb"
default_datastore_versions: mariadb:10.4
- job:
name: trove-tempest-ubuntu-backup-mariadb10.4
parent: trove-tempest-ubuntu-backup
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^etc/.*$
- ^releasenotes/.*$
- ^test-requirements.txt$
- ^tox.ini$
- ^LICENSE$
- ^contrib/
- ^zuul\.d/
- ^\..+
- ^trove/guestagent/strategies/replication/
- ^trove/guestagent/datastore/(mysql.*|postgres)/.*$
vars:
devstack_localrc:
TROVE_DATASTORE_TYPE: mariadb
TROVE_DATASTORE_VERSION: 10.4
devstack_local_conf:
test-config:
$TEMPEST_CONFIG:
database:
enabled_datastores: "mariadb"
default_datastore_versions: mariadb:10.4
- job:
name: trove-tempest-ubuntu-replication-mariadb10.4
parent: trove-tempest-ubuntu-replication
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^etc/.*$
- ^releasenotes/.*$
- ^test-requirements.txt$
- ^tox.ini$
- ^LICENSE$
- ^contrib/
- ^zuul\.d/
- ^backup/
- ^\..+
- ^trove/guestagent/datastore/(mysql.*|postgres)/.*$
- ^trove/guestagent/strategies/replication/(postgresql.*|mysql.*)\.py$
vars:
devstack_localrc:
TROVE_DATASTORE_TYPE: mariadb
TROVE_DATASTORE_VERSION: 10.4
devstack_local_conf:
test-config:
$TEMPEST_CONFIG:
database:
enabled_datastores: "mariadb"
default_datastore_versions: mariadb:10.4
- job:
name: trove-tempest-ubuntu-base-postgresql12
parent: trove-tempest-ubuntu-base
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^etc/.*$
- ^releasenotes/.*$
- ^test-requirements.txt$
- ^tox.ini$
- ^LICENSE$
- ^contrib/
- ^zuul\.d/
- ^backup/
- ^\..+
- ^trove/guestagent/strategies/replication/
- ^trove/guestagent/datastore/(mysql.*|mariadb)/.*$
vars:
devstack_localrc:
TROVE_DATASTORE_TYPE: postgresql
TROVE_DATASTORE_VERSION: 12
devstack_local_conf:
test-config:
$TEMPEST_CONFIG:
database:
enabled_datastores: "postgresql"
default_datastore_versions: postgresql:12
- job:
name: trove-tempest-ubuntu-backup-postgresql12
parent: trove-tempest-ubuntu-backup
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^etc/.*$
- ^releasenotes/.*$
- ^test-requirements.txt$
- ^tox.ini$
- ^LICENSE$
- ^contrib/
- ^zuul\.d/
- ^\..+
- ^trove/guestagent/strategies/replication/
- ^trove/guestagent/datastore/(mysql.*|mariadb)/.*$
vars:
devstack_localrc:
TROVE_DATASTORE_TYPE: postgresql
TROVE_DATASTORE_VERSION: 12
devstack_local_conf:
test-config:
$TEMPEST_CONFIG:
database:
enabled_datastores: "postgresql"
default_datastore_versions: postgresql:12
- job:
name: trove-tempest-ubuntu-replication-postgresql12
parent: trove-tempest-ubuntu-replication
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^etc/.*$
- ^releasenotes/.*$
- ^test-requirements.txt$
- ^tox.ini$
- ^LICENSE$
- ^contrib/
- ^zuul\.d/
- ^backup/
- ^\..+
- ^trove/guestagent/datastore/(mysql.*|mariadb)/.*$
- ^trove/guestagent/strategies/replication/(mariadb.*|mysql.*)\.py$
vars:
devstack_localrc:
TROVE_DATASTORE_TYPE: postgresql
TROVE_DATASTORE_VERSION: 12
devstack_local_conf:
test-config:
$TEMPEST_CONFIG:
database:
enabled_datastores: "postgresql"
default_datastore_versions: postgresql:12
- job:
name: publish-trove-guest-image
parent: publish-openstack-artifacts
run: playbooks/image-build/run.yaml
post-run: playbooks/image-build/post.yaml
required-projects:
- openstack/diskimage-builder
- openstack/trove
- job:
name: trove-ubuntu-guest-image-build
run: playbooks/image-build/run.yaml
nodeset: trove-ubuntu-noble-single
timeout: 3600
description: |
Build Ubuntu jammy based image only on ubuntu distro.
required-projects:
- openstack/diskimage-builder
- openstack/trove
files:
- ^integration/(scripts|tests)/
vars:
guest_os: ubuntu
guest_os_release: jammy
guest_username: ubuntu
branch: master
dev_mode: false
image_suffix: ""
- job:
name: publish-trove-guest-image-ubuntu-jammy
parent: publish-trove-guest-image
description: |
Build and publish Ubuntu jammy based Trove guest image to
tarballs.openstack.org.
vars:
guest_os: ubuntu
guest_os_release: jammy
guest_username: ubuntu
branch: master
dev_mode: false
image_suffix: ""
- job:
name: publish-trove-guest-image-ubuntu-jammy-dev
parent: publish-trove-guest-image
description: |
Build and publish Ubuntu jammy based Trove guest image to
tarballs.openstack.org.
vars:
guest_os: ubuntu
guest_os_release: jammy
guest_username: ubuntu
branch: master
dev_mode: true
image_suffix: "-dev"
- job:
name: publish-trove-datastore-images
description: |
Build and publish trove datastore docker images to
tarballs.openstack.org.
run: playbooks/image-build/docker-registry.yaml
parent: publish-openstack-artifacts
post-run: playbooks/image-build/post.yaml
nodeset: trove-ubuntu-noble-single
required-projects:
- openstack/trove