glance/.zuul.yaml

411 lines
13 KiB
YAML

- job:
name: glance-code-constants-check
parent: tox
description: |
Tests to catch when code constants have gotten out of sync.
vars:
tox_envlist: gateonly
irrelevant-files:
- ^(test-|)requirements.txt$
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^etc/.*$
- ^releasenotes/.*$
- ^setup.cfg$
- ^tox.ini$
- ^\.zuul\.yaml$
- job:
name: glance-tox-oslo-tips-base
parent: tox
abstract: true
nodeset: ubuntu-focal
timeout: 2400
description: Abstract job for Glance vs. oslo libraries
# NOTE(rosmaita): we only need functional test jobs, oslo is
# already running periodic jobs using our unit tests. Those
# jobs are configured for glance in openstack/project-config/
# zuul.d/projects.yaml using the template 'periodic-jobs-with-oslo-master'
# which is defined in openstack/openstack-zuul-jobs/zuul.d/
# project-templates.yaml; the jobs the template refers to are
# defined in openstack/openstack-zuul-jobs/zuul.d/jobs.yaml
required-projects:
- name: openstack/debtcollector
- name: openstack/futurist
- name: openstack/oslo.concurrency
- name: openstack/oslo.config
- name: openstack/oslo.context
- name: openstack/oslo.db
- name: openstack/oslo.i18n
- name: openstack/oslo.log
- name: openstack/oslo.messaging
- name: openstack/oslo.middleware
- name: openstack/oslo.policy
- name: openstack/oslo.utils
- name: openstack/osprofiler
- name: openstack/stevedore
- name: openstack/taskflow
- job:
name: glance-tox-functional-py38-rbac-defaults
parent: openstack-tox-functional-py38
voting: false
description: |
Glance py38 functional tests with enforce_secure_rbac=True
vars:
python_version: 3.8
tox_envlist: functional-py38-rbac
- job:
name: glance-tox-functional-py38-oslo-tips
parent: glance-tox-oslo-tips-base
description: |
Glance py38 functional tests vs. oslo libraries masters
vars:
python_version: 3.8
tox_envlist: functional-py38
- job:
name: glance-tox-functional-py36-oslo-tips
parent: glance-tox-oslo-tips-base
description: |
Glance py36 functional tests vs. oslo libraries masters
nodeset: ubuntu-bionic
vars:
python_version: 3.6
tox_envlist: functional-py36
- job:
name: glance-tox-keystone-tips-base
parent: tox
abstract: true
nodeset: ubuntu-focal
timeout: 2400
description: Abstract job for Glance vs. keystone
required-projects:
- name: openstack/keystoneauth
- name: openstack/keystonemiddleware
- name: openstack/python-keystoneclient
- job:
name: glance-tox-py38-keystone-tips
parent: glance-tox-keystone-tips-base
description: |
Glance py38 unit tests vs. keystone masters
vars:
python_version: 3.8
tox_envlist: py38
- job:
name: glance-tox-py36-keystone-tips
parent: glance-tox-keystone-tips-base
description: |
Glance py36 unit tests vs. keystone masters
nodeset: ubuntu-bionic
vars:
python_version: 3.6
tox_envlist: py36
- job:
name: glance-tox-functional-py38-keystone-tips
parent: glance-tox-keystone-tips-base
description: |
Glance py38 functional tests vs. keystone masters
vars:
python_version: 3.8
tox_envlist: functional-py38
- job:
name: glance-tox-functional-py36-keystone-tips
parent: glance-tox-keystone-tips-base
description: |
Glance py36 functional tests vs. keystone masters
nodeset: ubuntu-bionic
vars:
python_version: 3.6
tox_envlist: functional-py36
- job:
name: glance-tox-glance_store-tips-base
parent: tox
abstract: true
nodeset: ubuntu-focal
timeout: 2400
description: Abstract job for Glance vs. glance_store
required-projects:
- name: openstack/glance_store
- job:
name: glance-tox-py38-glance_store-tips
parent: glance-tox-glance_store-tips-base
description: |
Glance py38 unit tests vs. glance_store master
vars:
python_version: 3.8
tox_envlist: py38
- job:
name: glance-tox-py36-glance_store-tips
parent: glance-tox-glance_store-tips-base
description: |
Glance py36 unit tests vs. glance_store master
nodeset: ubuntu-bionic
vars:
python_version: 3.6
tox_envlist: py36
- job:
name: glance-tox-functional-py38-glance_store-tips
parent: glance-tox-glance_store-tips-base
description: |
Glance py38 functional tests vs. glance_store master
vars:
python_version: 3.8
tox_envlist: functional-py38
- job:
name: glance-tox-functional-py36-glance_store-tips
parent: glance-tox-glance_store-tips-base
description: |
Glance py36 functional tests vs. glance_store master
nodeset: ubuntu-bionic
vars:
python_version: 3.6
tox_envlist: functional-py36
- job:
name: glance-tox-cursive-tips-base
parent: tox
abstract: true
nodeset: ubuntu-focal
timeout: 2400
description: Abstract job for Glance vs. cursive and related libs
required-projects:
- name: x/cursive
- name: openstack/python-barbicanclient
- name: openstack/castellan
- job:
name: glance-tox-py38-cursive-tips
parent: glance-tox-cursive-tips-base
description: |
Glance py38 unit tests vs. cursive (and related libs) master
vars:
python_version: 3.8
tox_envlist: py38
- job:
name: glance-tox-py36-cursive-tips
parent: glance-tox-cursive-tips-base
description: |
Glance py36 unit tests vs. cursive (and related libs) master
nodeset: ubuntu-bionic
vars:
python_version: 3.6
tox_envlist: py36
- job:
name: glance-tox-functional-py38-cursive-tips
parent: glance-tox-cursive-tips-base
description: |
Glance py38 functional tests vs. cursive (and related libs) master
vars:
python_version: 3.8
tox_envlist: functional-py38
- job:
name: glance-tox-functional-py36-cursive-tips
parent: glance-tox-cursive-tips-base
description: |
Glance py36 functional tests vs. cursive (and related libs) master
nodeset: ubuntu-bionic
vars:
python_version: 3.6
tox_envlist: functional-py36
- job:
name: tempest-integrated-storage-import
parent: tempest-integrated-storage
description: |
The regular tempest-integrated-storage job but with glance metadata injection
post-run: playbooks/post-check-metadata-injection.yaml
vars:
zuul_copy_output:
/etc/glance-remote: logs
devstack_localrc:
GLANCE_STANDALONE: False
GLANCE_USE_IMPORT_WORKFLOW: True
devstack_services:
g-api-r: true
devstack_local_conf:
post-config:
$GLANCE_API_CONF:
DEFAULT:
enabled_import_methods: "[\"copy-image\", \"glance-direct\"]"
wsgi:
python_interpreter: /usr/bin/python3
$GLANCE_IMAGE_IMPORT_CONF:
image_import_opts:
image_import_plugins: "['inject_image_metadata', 'image_conversion']"
inject_metadata_properties:
ignore_user_roles:
inject: |
"glance_devstack_test":"doyouseeme?"
image_conversion:
output_format: raw
- job:
name: glance-multistore-cinder-import
parent: tempest-integrated-storage-import
description: |
The regular import workflow job to test with multiple cinder stores
vars:
devstack_localrc:
USE_CINDER_FOR_GLANCE: True
GLANCE_ENABLE_MULTIPLE_STORES: True
CINDER_ENABLED_BACKENDS: lvm:lvmdriver-1,lvm:lvmdriver-2
GLANCE_CINDER_DEFAULT_BACKEND: lvmdriver-1
- job:
name: tempest-integrated-storage-import-standalone
parent: tempest-integrated-storage-import
description: |
The regular tempest-integrated-storage-import-workflow job but with glance in
standalone mode
vars:
devstack_services:
g-api-r: false
devstack_localrc:
GLANCE_STANDALONE: True
- job:
name: glance-ceph-thin-provisioning
parent: devstack-plugin-ceph-tempest-py3
description: |
Just like devstack-plugin-ceph-tempest-py3, but with thin provisioning enabled
required-projects:
- name: openstack/glance_store
vars:
devstack_local_conf:
post-config:
$GLANCE_API_CONF:
glance_store:
rbd_thin_provisioning: True
- project:
templates:
- check-requirements
- integrated-gate-storage
- openstack-python3-yoga-jobs
- periodic-stable-jobs
- publish-openstack-docs-pti
- release-notes-jobs-python3
check:
jobs:
- openstack-tox-functional-py36
- openstack-tox-functional-py38
- glance-tox-functional-py38-rbac-defaults
- glance-code-constants-check
- glance-ceph-thin-provisioning:
voting: false
irrelevant-files: &tempest-irrelevant-files
- ^(test-|)requirements.txt$
- ^.*\.rst$
- ^api-ref/.*$
- ^glance/hacking/.*$
- ^glance/locale/.*$
- ^glance/tests/.*$
- ^doc/.*$
- ^releasenotes/.*$
- ^tools/.*$
- ^tox.ini$
- ^\.zuul\.yaml$
- tempest-integrated-storage:
irrelevant-files: *tempest-irrelevant-files
- tempest-integrated-storage-import:
irrelevant-files: *tempest-irrelevant-files
- tempest-integrated-storage-import-standalone:
irrelevant-files: *tempest-irrelevant-files
- glance-multistore-cinder-import:
irrelevant-files: *tempest-irrelevant-files
- grenade:
irrelevant-files: *tempest-irrelevant-files
- tempest-ipv6-only:
irrelevant-files: *tempest-irrelevant-files
- nova-ceph-multistore:
irrelevant-files: *tempest-irrelevant-files
- glance-secure-rbac-protection-functional
gate:
jobs:
- openstack-tox-functional-py36
- openstack-tox-functional-py38
- tempest-integrated-storage:
irrelevant-files: *tempest-irrelevant-files
- tempest-integrated-storage-import:
irrelevant-files: *tempest-irrelevant-files
- tempest-integrated-storage-import-standalone:
irrelevant-files: *tempest-irrelevant-files
- grenade:
irrelevant-files: *tempest-irrelevant-files
- tempest-ipv6-only:
irrelevant-files: *tempest-irrelevant-files
- nova-ceph-multistore:
irrelevant-files: *tempest-irrelevant-files
- glance-secure-rbac-protection-functional
experimental:
jobs:
- glance-tox-py38-glance_store-tips
- glance-tox-py36-glance_store-tips
- glance-tox-functional-py38-glance_store-tips
- glance-tox-functional-py36-glance_store-tips
- barbican-tempest-plugin-simple-crypto
- grenade-multinode
- tempest-pg-full:
irrelevant-files: *tempest-irrelevant-files
- tempest-full-py3-opensuse15:
irrelevant-files: *tempest-irrelevant-files
periodic:
jobs:
# NOTE(rosmaita): we only want the "tips" jobs to be run against
# master, hence the 'branches' qualifiers below. Without them, when
# a stable branch is cut, the tests would be run against the stable
# branch as well, which is pointless because these libraries are
# frozen (more or less) in the stable branches.
#
# The "tips" jobs can be removed from the stable branch .zuul.yaml
# files if someone is so inclined, but that would require manual
# maintenance, so we do not do it by default. Another option is
# to define these jobs in the openstack/project-config repo.
# That would make us less agile in adjusting these tests, so we
# aren't doing that either.
- glance-tox-functional-py38-oslo-tips:
branches: master
- glance-tox-functional-py36-oslo-tips:
branches: master
- glance-tox-py38-keystone-tips:
branches: master
- glance-tox-py36-keystone-tips:
branches: master
- glance-tox-functional-py38-keystone-tips:
branches: master
- glance-tox-functional-py36-keystone-tips:
branches: master
- glance-tox-py38-glance_store-tips:
branches: master
- glance-tox-py36-glance_store-tips:
branches: master
- glance-tox-functional-py38-glance_store-tips:
branches: master
- glance-tox-functional-py36-glance_store-tips:
branches: master
- glance-tox-py38-cursive-tips:
branches: master
- glance-tox-py36-cursive-tips:
branches: master
- glance-tox-functional-py38-cursive-tips:
branches: master
- glance-tox-functional-py36-cursive-tips:
branches: master