python-openstackclient/.zuul.yaml
Monty Taylor 01d3b42a06
Make py27 and py35 versions and template of unit-tips jobs
Make py27 and py35 versions of the tips job, and a project-template to
hold them so it's easy for other projects to use both (or more, we ever
add them) The base tox job knows how to install siblings based on
required-projects, which makes it easy to piggyback on them.

Remove the irrelevant-files sections, as these are specified in the
base openstack-tox jobs.

Using the unit-tips or functional-tips tox env is no longer neccessary.
For the gate it's actually important to not do the sibling processing by
hand in tox as the base tox job version of the logic does all the
right things to deal with constraints and whatnot. Leave them for local
developer convenience.

Leave the osc-tox-unit-tips job for now, since there are some other
repos using it. Once we switch them to the template, we can remove the
job.

Change-Id: I599b18218c10cb08e508cca3b3bbc9c88b8f809c
2017-12-01 10:26:46 -06:00

212 lines
6.8 KiB
YAML

- job:
name: osc-tox-unit-tips
parent: openstack-tox
description: |
Run unit tests for OpenStackClient with master branch of important libs.
Takes advantage of the base tox job's install-siblings feature.
required-projects:
- openstack/cliff
- openstack/keystoneauth
- openstack/os-client-config
- openstack/osc-lib
- openstack/python-openstackclient
- openstack/python-openstacksdk
vars:
tox_envlist: py27
# Set work dir to openstackclient so that if it's triggered by one of the
# other repos the tests will run in the same place
zuul_work_dir: src/git.openstack.org/openstack/python-openstackclient
- job:
name: osc-tox-py27-tips
parent: openstack-tox-py27
description: |
Run unit tests for OpenStackClient with master branch of important libs.
Takes advantage of the base tox job's install-siblings feature.
# The job only tests the latest and shouldn't be run on the stable branches
branches: ^(?!stable)
required-projects:
- openstack/cliff
- openstack/keystoneauth
- openstack/os-client-config
- openstack/osc-lib
- openstack/python-openstackclient
- openstack/python-openstacksdk
vars:
# Set work dir to openstackclient so that if it's triggered by one of the
# other repos the tests will run in the same place
zuul_work_dir: src/git.openstack.org/openstack/python-openstackclient
- job:
name: osc-tox-py35-tips
parent: openstack-tox-py35
description: |
Run unit tests for OpenStackClient with master branch of important libs.
Takes advantage of the base tox job's install-siblings feature.
# The job only tests the latest and shouldn't be run on the stable branches
branches: ^(?!stable)
required-projects:
- openstack/cliff
- openstack/keystoneauth
- openstack/os-client-config
- openstack/osc-lib
- openstack/python-openstackclient
- openstack/python-openstacksdk
vars:
# Set work dir to openstackclient so that if it's triggered by one of the
# other repos the tests will run in the same place
zuul_work_dir: src/git.openstack.org/openstack/python-openstackclient
- job:
name: osc-functional-devstack-base
parent: devstack
description: |
Base job for devstack-based functional tests
pre-run: playbooks/osc-devstack/pre.yaml
run: playbooks/osc-devstack/run.yaml
post-run: playbooks/osc-devstack/post.yaml
required-projects:
- name: openstack/swift
roles:
- zuul: openstack-infra/devstack
timeout: 9000
irrelevant-files:
- ^.*\.rst$
- ^doc/.*$
- ^releasenotes/.*$
vars:
devstack_localrc:
SWIFT_HASH: '1234123412341234'
LIBS_FROM_GIT: python-openstackclient
# NOTE(dtroyer): OSC needs to support Image v1 for a while yet so re-enable
GLANCE_V1_ENABLED: true
# NOTE(dtroyer): Functional tests need a bit more volume headroom
VOLUME_BACKING_FILE_SIZE: 20G
devstack_local_conf:
post-config:
$CINDER_CONF:
DEFAULT:
# NOTE(dtroyer): OSC needs to support Volume v1 for a while yet so re-enable
enable_v1_api: true
devstack_services:
ceilometer-acentral: false
ceilometer-acompute: false
ceilometer-alarm-evaluator: false
ceilometer-alarm-notifier: false
ceilometer-anotification: false
ceilometer-api: false
ceilometer-collector: false
horizon: false
s-account: true
s-container: true
s-object: true
s-proxy: true
osc_environment:
PYTHONUNBUFFERED: 'true'
OS_CLOUD: devstack-admin
tox_install_siblings: false
zuul_work_dir: src/git.openstack.org/openstack/python-openstackclient
# The Neutron bits are here rather than in osc-functional-devstack-base to
# simplify removing Neutron in the osc-functional-devstack-n-net job.
- job:
name: osc-functional-devstack
parent: osc-functional-devstack-base
timeout: 7800
vars:
devstack_plugins:
# NOTE(amotoki): Some neutron features are enabled by devstack plugin
neutron: https://git.openstack.org/openstack/neutron
devstack_services:
neutron-segments: true
q-metering: true
q-qos: true
tox_envlist: functional
- job:
name: osc-functional-devstack-n-net
parent: osc-functional-devstack-base
timeout: 7800
vars:
devstack_localrc:
FLAT_INTERFACE: br_flat
PUBLIC_INTERFACE: br_pub
devstack_services:
n-cell: true
n-net: true
neutron: false
neutron-segments: false
q-agt: false
q-dhcp: false
q-l3: false
q-meta: false
q-metering: false
q-qos: false
q-svc: false
tox_envlist: functional
- job:
name: osc-functional-devstack-tips
parent: osc-functional-devstack
timeout: 7800
required-projects:
- openstack/cliff
- openstack/keystoneauth
- openstack/os-client-config
- openstack/osc-lib
- openstack/python-openstackclient
- openstack/python-openstacksdk
vars:
devstack_localrc:
USE_PYTHON3: true
LIBS_FROM_GIT: python-openstackclient,python-openstacksdk,osc-lib,os-client-config
# This is insufficient, but leaving it here as a reminder of what may
# someday be all we need to make this work
# disable_python3_package swift
DISABLED_PYTHON3_PACKAGES: swift
devstack_services:
# Swift is not ready for python3 yet: At a minimum keystonemiddleware needs
# to be installed in the py2 env, there are probably other things too...
s-account: false
s-container: false
s-object: false
s-proxy: false
tox_envlist: functional
- project-template:
name: osc-tox-unit-tips
check:
jobs:
- osc-tox-py27-tips
- osc-tox-py35-tips
gate:
jobs:
- osc-tox-py27-tips
- osc-tox-py35-tips
- project:
name: openstack/python-openstackclient
templates:
- openstackclient-plugin-jobs
- osc-tox-unit-tips
check:
jobs:
- osc-functional-devstack
# - osc-functional-devstack-n-net:
# voting: false
# # The job testing nova-network no longer works before Pike, and
# # should be disabled until the New Way of testing against old clouds
# # is ready and backported
# branches: ^(?!stable/(newton|ocata)).*$
- osc-functional-devstack-tips:
voting: false
# The functional-tips job only tests the latest and shouldn't be run
# on the stable branches
branches: ^(?!stable)
gate:
jobs:
- osc-functional-devstack