80001aa096
This patch added new non-voting gate job to check the s3api compatibility via swiftstack/s3compat tool that shows the ratio of compatible S3 APIs in the gate result for each patch. This is very useful to check the possibility if the new incoming patch breaks S3 API compatibility unexpectedly. Originally swift3 has this kind of the gate job but we missed the staff while migrating from swift3 into swift upstream repo so this is the porting of that. Note that currently the job is against to only tempauth because we don't have custom gate jobs using keystone environment other than dsvm. Change-Id: I6f30f74678ad35479da237361bee48c46c0ecc49
326 lines
10 KiB
YAML
326 lines
10 KiB
YAML
- job:
|
|
name: swift-tox-base
|
|
parent: openstack-tox-py27
|
|
description: |
|
|
Base job for swift-tox jobs.
|
|
|
|
It sets TMPDIR to an XFS mount point created via
|
|
tools/test-setup.sh.
|
|
timeout: 2400
|
|
vars:
|
|
tox_environment:
|
|
TMPDIR: '{{ ansible_env.HOME }}/xfstmp'
|
|
|
|
- job:
|
|
name: swift-tox-py27
|
|
parent: swift-tox-base
|
|
description: |
|
|
Run unit-tests for swift under cPython version 2.7.
|
|
|
|
Uses tox with the ``py27`` environment.
|
|
It sets TMPDIR to an XFS mount point created via
|
|
tools/test-setup.sh.
|
|
vars:
|
|
tox_envlist: py27
|
|
|
|
- job:
|
|
name: swift-tox-py27-centos-7
|
|
parent: swift-tox-py27
|
|
nodeset: centos-7
|
|
|
|
- job:
|
|
name: swift-tox-py35
|
|
parent: swift-tox-base
|
|
description: |
|
|
Run unit-tests for swift under cPython version 3.5.
|
|
|
|
Uses tox with the ``py35`` environment.
|
|
It sets TMPDIR to an XFS mount point created via
|
|
tools/test-setup.sh.
|
|
vars:
|
|
tox_envlist: py35
|
|
bindep_profile: test py35
|
|
|
|
- job:
|
|
name: swift-tox-py36
|
|
parent: swift-tox-base
|
|
nodeset: ubuntu-bionic
|
|
description: |
|
|
Run unit-tests for swift under cPython version 3.6.
|
|
|
|
Uses tox with the ``py36`` environment.
|
|
It sets TMPDIR to an XFS mount point created via
|
|
tools/test-setup.sh.
|
|
vars:
|
|
tox_envlist: py36
|
|
bindep_profile: test py36
|
|
|
|
- job:
|
|
name: swift-tox-func
|
|
parent: swift-tox-base
|
|
description: |
|
|
Run functional tests for swift under cPython version 2.7.
|
|
|
|
Uses tox with the ``func`` environment.
|
|
It sets TMPDIR to an XFS mount point created via
|
|
tools/test-setup.sh.
|
|
vars:
|
|
tox_envlist: func
|
|
|
|
- job:
|
|
name: swift-tox-func-centos-7
|
|
parent: swift-tox-func
|
|
nodeset: centos-7
|
|
|
|
- job:
|
|
name: swift-tox-func-encryption
|
|
parent: swift-tox-base
|
|
description: |
|
|
Run functional tests for swift under cPython version 2.7.
|
|
|
|
Uses tox with the ``func-encryption`` environment.
|
|
It sets TMPDIR to an XFS mount point created via
|
|
tools/test-setup.sh.
|
|
vars:
|
|
tox_envlist: func-encryption
|
|
|
|
- job:
|
|
name: swift-tox-func-encryption-centos-7
|
|
parent: swift-tox-func-encryption
|
|
nodeset: centos-7
|
|
|
|
- job:
|
|
name: swift-tox-func-ec
|
|
parent: swift-tox-base
|
|
description: |
|
|
Run functional tests for swift under cPython version 2.7.
|
|
|
|
Uses tox with the ``func-post-ec`` environment.
|
|
It sets TMPDIR to an XFS mount point created via
|
|
tools/test-setup.sh.
|
|
branches: ^(?!stable/ocata).*$
|
|
vars:
|
|
tox_envlist: func-ec
|
|
|
|
- job:
|
|
name: swift-tox-func-ec-centos-7
|
|
parent: swift-tox-func-ec
|
|
nodeset: centos-7
|
|
|
|
- job:
|
|
name: swift-tox-func-domain-remap-staticweb
|
|
parent: swift-tox-base
|
|
description: |
|
|
Run functional tests for swift under cPython version 2.7.
|
|
|
|
Uses tox with the ``func-domain-remap-staticweb`` environment.
|
|
It sets TMPDIR to an XFS mount point created via
|
|
tools/test-setup.sh.
|
|
vars:
|
|
tox_envlist: func-domain-remap-staticweb
|
|
|
|
- job:
|
|
name: swift-tox-func-s3api
|
|
parent: swift-tox-base
|
|
description: |
|
|
Run functional tests for swift under cPython version 2.7.
|
|
|
|
Uses tox with the ``func-s3api`` environment.
|
|
It sets TMPDIR to an XFS mount point created via
|
|
tools/test-setup.sh.
|
|
vars:
|
|
tox_envlist: func-s3api
|
|
|
|
- job:
|
|
name: swift-dsvm-functional
|
|
parent: devstack-minimal
|
|
description: |
|
|
Setup a Swift/Keystone environment and run Swift's func tests.
|
|
required-projects:
|
|
- git.openstack.org/openstack/requirements
|
|
- git.openstack.org/openstack/swift
|
|
- git.openstack.org/openstack/keystone
|
|
timeout: 2700
|
|
vars:
|
|
tox_constraints_file: '{{ ansible_user_dir }}/src/git.openstack.org/openstack/requirements/upper-constraints.txt'
|
|
# This tox env get run twice; once for Keystone and once for tempauth
|
|
tox_envlist: func
|
|
devstack_localrc:
|
|
SWIFT_HASH: changeme
|
|
# We don't need multiple replicas to run purely functional tests.
|
|
# In fact, devstack special cases some things when there's only
|
|
# one replica.
|
|
SWIFT_REPLICAS: 1
|
|
# One replica => no need for replicators, etc.
|
|
SWIFT_START_ALL_SERVICES: False
|
|
# Keystone v3 is currently the default, but may as well be explicit
|
|
ENABLE_IDENTITY_V2: False
|
|
IDENTITY_API_VERSION: 3
|
|
devstack_services:
|
|
keystone: true
|
|
swift: true
|
|
zuul_work_dir: src/git.openstack.org/openstack/swift
|
|
pre-run: tools/playbooks/dsvm/pre.yaml
|
|
run: tools/playbooks/dsvm/run.yaml
|
|
post-run: tools/playbooks/dsvm/post.yaml
|
|
|
|
- job:
|
|
name: swift-dsvm-functional-ipv6
|
|
parent: swift-dsvm-functional
|
|
vars:
|
|
devstack_localrc:
|
|
SERVICE_IP_VERSION: 6
|
|
HOST_IPV6: '[::1]'
|
|
SERVICE_HOST: '[::1]'
|
|
|
|
- job:
|
|
name: swift-tox-func-s3api-ceph-s3tests-tempauth
|
|
parent: unittests
|
|
voting: false
|
|
nodeset: centos-7
|
|
description: |
|
|
Setup a SAIO dev environment and run ceph-s3tests
|
|
pre-run:
|
|
- tools/playbooks/saio_single_node_setup/install_dependencies.yaml
|
|
- tools/playbooks/saio_single_node_setup/setup_saio.yaml
|
|
- tools/playbooks/saio_single_node_setup/make_rings.yaml
|
|
run: tools/playbooks/ceph-s3tests/run.yaml
|
|
post-run:
|
|
- tools/playbooks/probetests/post.yaml
|
|
- tools/playbooks/ceph-s3tests/post.yaml
|
|
|
|
- job:
|
|
name: swift-probetests-centos-7
|
|
parent: unittests
|
|
nodeset: centos-7
|
|
description: |
|
|
Setup a SAIO dev environment and run Swift's probe tests
|
|
timeout: 3600
|
|
pre-run:
|
|
- tools/playbooks/saio_single_node_setup/install_dependencies.yaml
|
|
- tools/playbooks/saio_single_node_setup/setup_saio.yaml
|
|
- tools/playbooks/saio_single_node_setup/make_rings.yaml
|
|
run: tools/playbooks/probetests/run.yaml
|
|
post-run: tools/playbooks/probetests/post.yaml
|
|
|
|
- project:
|
|
templates:
|
|
- publish-openstack-docs-pti
|
|
- periodic-stable-jobs
|
|
- check-requirements
|
|
- release-notes-jobs-python3
|
|
check:
|
|
jobs:
|
|
- swift-tox-py27:
|
|
irrelevant-files:
|
|
- ^(api-ref|doc|releasenotes)/.*$
|
|
- ^test/(functional|probe)/.*$
|
|
- swift-tox-py35:
|
|
irrelevant-files:
|
|
- ^(api-ref|doc|releasenotes)/.*$
|
|
- ^test/(functional|probe)/.*$
|
|
- swift-tox-py36:
|
|
irrelevant-files:
|
|
- ^(api-ref|doc|releasenotes)/.*$
|
|
- ^test/(functional|probe)/.*$
|
|
voting: false
|
|
- swift-tox-func:
|
|
irrelevant-files:
|
|
- ^(api-ref|doc|releasenotes)/.*$
|
|
- ^test/probe/.*$
|
|
- ^(.gitreview|.mailmap|AUTHORS|CHANGELOG)$
|
|
- swift-tox-func-encryption:
|
|
irrelevant-files:
|
|
- ^(api-ref|doc|releasenotes)/.*$
|
|
- ^test/probe/.*$
|
|
- ^(.gitreview|.mailmap|AUTHORS|CHANGELOG)$
|
|
- swift-tox-func-domain-remap-staticweb:
|
|
irrelevant-files:
|
|
- ^(api-ref|doc|releasenotes)/.*$
|
|
- ^test/probe/.*$
|
|
- ^(.gitreview|.mailmap|AUTHORS|CHANGELOG)$
|
|
- swift-tox-func-ec:
|
|
irrelevant-files:
|
|
- ^(api-ref|doc|releasenotes)/.*$
|
|
- ^test/probe/.*$
|
|
- ^(.gitreview|.mailmap|AUTHORS|CHANGELOG)$
|
|
- swift-tox-func-s3api:
|
|
irrelevant-files:
|
|
- ^(api-ref|doc|releasenotes)/.*$
|
|
- ^test/probe/.*$
|
|
- ^(.gitreview|.mailmap|AUTHORS|CHANGELOG)$
|
|
- swift-tox-func-s3api-ceph-s3tests-tempauth:
|
|
irrelevant-files:
|
|
- ^(api-ref|releasenotes)/.*$
|
|
- ^test/probe/.*$
|
|
- ^(.gitreview|.mailmap|AUTHORS|CHANGELOG)$
|
|
- swift-probetests-centos-7:
|
|
irrelevant-files:
|
|
- ^(api-ref|releasenotes)/.*$
|
|
# Keep doc/saio -- we use those sample configs in the saio playbooks
|
|
- ^doc/(requirements.txt|(manpages|s3api|source)/.*)$
|
|
- ^test/(unit|functional)/.*$
|
|
- ^(.gitreview|.mailmap|AUTHORS|CHANGELOG)$
|
|
- swift-dsvm-functional:
|
|
irrelevant-files:
|
|
- ^(api-ref|doc|releasenotes)/.*$
|
|
- ^test/probe/.*$
|
|
- ^(.gitreview|.mailmap|AUTHORS|CHANGELOG)$
|
|
- swift-dsvm-functional-ipv6:
|
|
irrelevant-files:
|
|
- ^(api-ref|doc|releasenotes)/.*$
|
|
- ^test/probe/.*$
|
|
- ^(.gitreview|.mailmap|AUTHORS|CHANGELOG)$
|
|
- openstack-tox-lower-constraints:
|
|
irrelevant-files:
|
|
- ^(api-ref|doc|releasenotes)/.*$
|
|
- ^test/(functional|probe)/.*$
|
|
- openstack-tox-pep8:
|
|
irrelevant-files:
|
|
- ^(api-ref|doc|etc|examples|releasenotes)/.*$
|
|
gate:
|
|
jobs:
|
|
# For gate jobs, err towards running more jobs (so, generally avoid
|
|
# using irrelevant-files). Exceptions should mainly be made for
|
|
# long-running jobs, like probetests or (once they move to
|
|
# in-tree definitions) dsvm jobs.
|
|
- swift-tox-py27
|
|
- swift-tox-py35
|
|
- swift-tox-func
|
|
- swift-tox-func-encryption
|
|
- swift-tox-func-domain-remap-staticweb
|
|
- swift-tox-func-ec
|
|
- swift-tox-func-s3api
|
|
- swift-probetests-centos-7:
|
|
irrelevant-files:
|
|
- ^(api-ref|releasenotes)/.*$
|
|
# Keep doc/saio -- we use those sample configs in the saio playbooks
|
|
- ^doc/(requirements.txt|(manpages|s3api|source)/.*)$
|
|
- ^test/(unit|functional)/.*$
|
|
- ^(.gitreview|.mailmap|AUTHORS|CHANGELOG)$
|
|
- swift-dsvm-functional:
|
|
irrelevant-files:
|
|
- ^(api-ref|doc|releasenotes)/.*$
|
|
- ^test/probe/.*$
|
|
- ^(.gitreview|.mailmap|AUTHORS|CHANGELOG)$
|
|
- swift-dsvm-functional-ipv6:
|
|
irrelevant-files:
|
|
- ^(api-ref|doc|releasenotes)/.*$
|
|
- ^test/probe/.*$
|
|
- ^(.gitreview|.mailmap|AUTHORS|CHANGELOG)$
|
|
- openstack-tox-lower-constraints
|
|
- openstack-tox-pep8:
|
|
irrelevant-files:
|
|
- ^(api-ref|doc|etc|examples|releasenotes)/.*$
|
|
experimental:
|
|
jobs:
|
|
- swift-tox-py27-centos-7
|
|
- swift-tox-func-centos-7
|
|
- swift-tox-func-encryption-centos-7
|
|
- swift-tox-func-ec-centos-7
|
|
|
|
post:
|
|
jobs:
|
|
- openstack-tox-cover
|
|
- publish-openstack-python-branch-tarball
|