trove/zuul.d/jobs.yaml
wu.chunyang 3134fd478d Follow up: CI: test build docker image
The previous patch forgot to push the tarball to openstack website.
This change adds a task to push it and replaces hard quote with soft
quote

Change-Id: I8619621b4348bff26808104e4f9e070c64429c3f
2022-11-23 18:57:18 +08:00

492 lines
14 KiB
YAML

- job:
name: trove-devstack-base
parent: devstack
abstract: true
timeout: 10800
required-projects:
- openstack/tempest
- openstack/diskimage-builder
- openstack/tripleo-image-elements
- openstack/trove
- openstack/trove-dashboard
vars:
devstack_services:
tempest: true
etcd3: false
ceilometer-acentral: false
ceilometer-acompute: false
ceilometer-alarm-evaluator: false
ceilometer-alarm-notifier: false
ceilometer-anotification: false
ceilometer-api: false
ceilometer-collector: false
q-svc: true
q-agt: true
q-dhcp: true
q-l3: true
q-meta: true
q-ovn-metadata-agent: false
ovn-controller: false
ovn-northd: false
devstack_plugins:
trove: https://opendev.org/openstack/trove
# NOTE(zhaochao): we have to override the default settings from the
# the base devstack job about "SERVICE_HOST" and "HOST_IP", as trove
# guestagent should use public addresses to access the underlying
# components(MQ and Swift), and the previous devstack-gate jobs didn't
# set these variables. However we cannot unset variables in job
# definition, so we just set SERVICE_HOST and HOST_IP to empty strings,
# and VNCSERVER_PROXYCLIENT_ADDRESS to 127.0.0.1 instead.
devstack_localrc:
SERVICE_HOST: ''
HOST_IP: ''
VNCSERVER_PROXYCLIENT_ADDRESS: 127.0.0.1
USE_PYTHON3: True
Q_AGENT: openvswitch
Q_PLUGIN: ml2
Q_ML2_TENANT_NETWORK_TYPE: vxlan
Q_ML2_PLUGIN_MECHANISM_DRIVERS: openvswitch
run: playbooks/trove-devstack-base.yaml
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^releasenotes/.*$
- ^tools/.*$
- ^trove/hacking/.*$
- ^trove/tests/unittests/.*$
- job:
name: trove-fakemodetests-base
parent: openstack-tox-py36
abstract: true
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^contrib/.*$
- ^doc/.*$
- ^releasenotes/.*$
- ^setup.cfg$
- ^tools/.*$
- ^trove/hacking/.*$
- ^trove/tests/api/.*$
- ^trove/tests/db/.*$
- ^trove/tests/scenario/.*$
- ^trove/tests/unittests/.*$
- job:
name: trove-functional-mysql
parent: trove-devstack-base
nodeset: trove-ubuntu-focal
timeout: 10800
vars:
devstack_localrc:
TROVE_RESIZE_TIME_OUT: 1800
trove_resize_time_out: 1800
trove_test_datastore: 'mysql'
trove_test_group: 'mysql'
trove_test_datastore_version: '5.7.29'
- job:
name: trove-functional-mysql-nondev
parent: trove-devstack-base
vars:
devstack_localrc:
TROVE_RESIZE_TIME_OUT: 1800
TROVE_NON_DEV_IMAGE_URL: https://tarballs.opendev.org/openstack/trove/images/trove-master-mysql-ubuntu-focal.qcow2
trove_resize_time_out: 1800
trove_test_datastore: 'mysql'
trove_test_group: 'mysql'
trove_test_datastore_version: '5.7.29'
- job:
name: trove-scenario-cassandra-single
parent: trove-devstack-base
vars:
trove_test_datastore: cassandra
trove_test_group: cassandra-supported-single
devstack_localrc:
TROVE_ENABLE_IMAGE_BUILD: false
- job:
name: trove-scenario-cassandra-multi
parent: trove-devstack-base
vars:
trove_test_datastore: cassandra
trove_test_group: cassandra-supported-multi
devstack_localrc:
TROVE_ENABLE_IMAGE_BUILD: false
- job:
name: trove-scenario-couchdb-single
parent: trove-devstack-base
vars:
trove_test_datastore: couchdb
trove_test_group: couchdb-supported-single
devstack_localrc:
TROVE_ENABLE_IMAGE_BUILD: false
- job:
name: trove-scenario-couchbase-single
parent: trove-devstack-base
vars:
trove_test_datastore: couchbase
trove_test_group: couchbase-supported-single
devstack_localrc:
TROVE_ENABLE_IMAGE_BUILD: false
- job:
name: trove-scenario-mariadb-single
parent: trove-devstack-base
vars:
trove_test_datastore: mariadb
trove_test_group: mariadb-supported-single
trove_test_datastore_version: 10.4.12
devstack_localrc:
TROVE_ENABLE_IMAGE_BUILD: false
- job:
name: trove-scenario-mariadb-multi
parent: trove-devstack-base
vars:
trove_test_datastore: mariadb
trove_test_group: mariadb-supported-multi
trove_test_datastore_version: 10.4.12
devstack_localrc:
TROVE_ENABLE_IMAGE_BUILD: false
- job:
name: trove-scenario-mysql-single
parent: trove-devstack-base
vars:
trove_test_datastore: mysql
trove_test_group: mysql-supported-single
trove_test_datastore_version: 5.7.29
- job:
name: trove-scenario-mysql-multi
parent: trove-devstack-base
vars:
trove_test_datastore: mysql
trove_test_group: mysql-supported-multi
trove_test_datastore_version: 5.7.29
- job:
name: trove-scenario-percona-multi
parent: trove-devstack-base
vars:
trove_test_datastore: percona
trove_test_group: percona-supported-multi
devstack_localrc:
TROVE_ENABLE_IMAGE_BUILD: false
- job:
name: trove-scenario-percona-single
parent: trove-devstack-base
vars:
trove_test_datastore: percona
trove_test_group: percona-supported-single
devstack_localrc:
TROVE_ENABLE_IMAGE_BUILD: false
- job:
name: trove-scenario-postgresql-single
parent: trove-devstack-base
vars:
trove_test_datastore: postgresql
trove_test_group: postgresql-supported-single
devstack_localrc:
TROVE_ENABLE_IMAGE_BUILD: false
- job:
name: trove-scenario-postgresql-multi
parent: trove-devstack-base
vars:
trove_test_datastore: postgresql
trove_test_group: postgresql-supported-multi
devstack_localrc:
TROVE_ENABLE_IMAGE_BUILD: false
- job:
name: trove-scenario-pxc-single
parent: trove-devstack-base
vars:
trove_test_datastore: pxc
trove_test_group: pxc-supported-single
devstack_localrc:
TROVE_ENABLE_IMAGE_BUILD: false
- job:
name: trove-scenario-pxc-multi
parent: trove-devstack-base
vars:
trove_test_datastore: pxc
trove_test_group: pxc-supported-multi
devstack_localrc:
TROVE_ENABLE_IMAGE_BUILD: false
- job:
name: trove-scenario-redis-single
parent: trove-devstack-base
vars:
trove_test_datastore: redis
trove_test_group: redis-supported-single
devstack_localrc:
TROVE_ENABLE_IMAGE_BUILD: false
- job:
name: trove-scenario-redis-multi
parent: trove-devstack-base
vars:
trove_test_datastore: redis
trove_test_group: redis-supported-multi
devstack_localrc:
TROVE_ENABLE_IMAGE_BUILD: false
- 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-focal
timeout: 10800
required-projects: &base_required_projects
- openstack/trove
- openstack/trove-tempest-plugin
- openstack/tempest
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^etc/.*$
- ^releasenotes/.*$
vars: &base_vars
tox_envlist: all
tempest_concurrency: 1
devstack_localrc:
TEMPEST_PLUGINS: /opt/stack/trove-tempest-plugin
USE_PYTHON3: true
Q_AGENT: openvswitch
Q_PLUGIN: ml2
Q_ML2_TENANT_NETWORK_TYPE: vxlan
Q_ML2_PLUGIN_MECHANISM_DRIVERS: openvswitch
devstack_local_conf:
post-config:
$TROVE_CONF:
DEFAULT:
usage_timeout: 1800
devstack_plugins:
trove: https://opendev.org/openstack/trove.git
devstack_services:
etcd3: false
ceilometer-acentral: false
ceilometer-acompute: false
ceilometer-alarm-evaluator: false
ceilometer-alarm-notifier: false
ceilometer-anotification: false
ceilometer-api: false
ceilometer-collector: 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
tempest: true
q-svc: true
q-agt: true
q-dhcp: true
q-l3: true
q-meta: true
q-ovn-metadata-agent: false
ovn-controller: false
ovn-northd: false
tempest_test_regex: ^trove_tempest_plugin\.tests
tempest_test_blacklist: '{{ ansible_user_dir }}/{{ zuul.projects["opendev.org/openstack/trove-tempest-plugin"].src_dir }}/tempest_blacklist.txt'
- job:
name: trove-tempest-postgres
parent: devstack-tempest
nodeset: trove-ubuntu-focal
timeout: 10800
required-projects:
- openstack/trove
- openstack/trove-tempest-plugin
- openstack/tempest
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^etc/.*$
- ^releasenotes/.*$
- ^trove/guestagent/(mysql.*|mariadb)/.*$
- ^trove/guestagent/strategies/replication/(mysql.*|mariadb.*)\.py$
vars:
tox_envlist: all
tempest_concurrency: 1
devstack_localrc:
TEMPEST_PLUGINS: /opt/stack/trove-tempest-plugin
USE_PYTHON3: true
Q_AGENT: openvswitch
Q_PLUGIN: ml2
Q_ML2_TENANT_NETWORK_TYPE: vxlan
Q_ML2_PLUGIN_MECHANISM_DRIVERS: openvswitch
TROVE_DATASTORE_TYPE: postgresql
TROVE_DATASTORE_VERSION: 12.4
devstack_local_conf:
post-config:
$TROVE_CONF:
DEFAULT:
usage_timeout: 1800
test-config:
$TEMPEST_CONFIG:
database:
enabled_datastores: "postgresql"
default_datastore_versions: "postgresql:12.4"
devstack_plugins:
trove: https://opendev.org/openstack/trove.git
devstack_services:
etcd3: false
ceilometer-acentral: false
ceilometer-acompute: false
ceilometer-alarm-evaluator: false
ceilometer-alarm-notifier: false
ceilometer-anotification: false
ceilometer-api: false
ceilometer-collector: 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
tempest: true
q-svc: true
q-agt: true
q-dhcp: true
q-l3: true
q-meta: true
q-ovn-metadata-agent: false
ovn-controller: false
ovn-northd: false
tempest_test_regex: ^trove_tempest_plugin\.tests
tempest_test_blacklist: '{{ ansible_user_dir }}/{{ zuul.projects["opendev.org/openstack/trove-tempest-plugin"].src_dir }}/tempest_blacklist.txt'
- 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
- openstack/tripleo-image-elements
- job:
name: trove-ubuntu-guest-image-build
run: playbooks/image-build/run.yaml
nodeset: trove-ubuntu-focal-single
description: |
Build Ubuntu focal based image only on ubuntu distro.
required-projects:
- openstack/diskimage-builder
- openstack/trove
- openstack/tripleo-image-elements
files:
- ^integration/(scripts|tests)/
vars:
guest_os: ubuntu
guest_os_release: focal
guest_username: ubuntu
branch: master
dev_mode: false
image_suffix: ""
- job:
name: trove-centos8s-guest-image-build
run: playbooks/image-build/run.yaml
nodeset: trove-centos8s-single
description: |
Build Ubuntu focal based image only on centos8 stream.
required-projects:
- openstack/diskimage-builder
- openstack/trove
- openstack/tripleo-image-elements
files:
- ^integration/(scripts|tests)/
vars:
guest_os: ubuntu
guest_os_release: focal
guest_username: ubuntu
branch: master
dev_mode: false
image_suffix: ""
- job:
name: publish-trove-guest-image-ubuntu-focal
parent: publish-trove-guest-image
description: |
Build and publish Ubuntu focal based Trove guest image to
tarballs.openstack.org.
vars:
guest_os: ubuntu
guest_os_release: focal
guest_username: ubuntu
branch: master
dev_mode: false
image_suffix: ""
- job:
name: publish-trove-guest-image-ubuntu-focal-dev
parent: publish-trove-guest-image
description: |
Build and publish Ubuntu focal based Trove guest image to
tarballs.openstack.org.
vars:
guest_os: ubuntu
guest_os_release: focal
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-focal-single
required-projects:
- openstack/trove