Skip to content

Commit 6761595

Browse files
author
Dean Troyer
committed
Native DevStack jobs
Convert legacy DevStack jobs to native Zuul v3 form, plus some test-job-related docs updates. Change-Id: Ia8c08be81605da885b9eee799fc58129305dfc41
1 parent ef595fc commit 6761595

14 files changed

Lines changed: 122 additions & 640 deletions

File tree

.zuul.yaml

Lines changed: 92 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,112 @@
1-
# from zuul.d/zuul-legacy-jobs.yaml legacy-osc-dsvm-functional
1+
- job:
2+
name: osc-functional-devstack-base
3+
parent: devstack
4+
description: |
5+
Base job for devstack-based functional tests
6+
pre-run: playbooks/osc-devstack/pre
7+
run: playbooks/osc-devstack/run
8+
post-run: playbooks/osc-devstack/post
9+
required-projects:
10+
- name: openstack/swift
11+
roles:
12+
- zuul: openstack-infra/devstack
13+
timeout: 9000
14+
vars:
15+
devstack_localrc:
16+
SWIFT_HASH: "1234123412341234"
17+
LIBS_FROM_GIT: 'python-openstackclient'
18+
# NOTE(dtroyer): OSC needs to support Image v1 for a while yet so re-enable
19+
GLANCE_V1_ENABLED: True
20+
# NOTE(dtroyer): Functional tests need a bit more volume headroom
21+
VOLUME_BACKING_FILE_SIZE: 20G
22+
devstack_local_conf:
23+
post-config:
24+
"$CINDER_CONF":
25+
DEFAULT:
26+
# NOTE(dtroyer): OSC needs to support Volume v1 for a while yet so re-enable
27+
enable_v1_api: True
28+
devstack_services:
29+
ceilometer-acentral: False
30+
ceilometer-acompute: False
31+
ceilometer-alarm-evaluator: False
32+
ceilometer-alarm-notifier: False
33+
ceilometer-anotification: False
34+
ceilometer-api: False
35+
ceilometer-collector: False
36+
horizon: False
37+
s-account: True
38+
s-container: True
39+
s-object: True
40+
s-proxy: True
41+
osc_environment:
42+
PYTHONUNBUFFERED: 'true'
43+
OS_CLOUD: 'devstack-admin'
44+
tox_install_siblings: False
45+
zuul_work_dir: src/git.openstack.org/openstack/python-openstackclient
246

47+
# The Neutron bits are here rather than in osc-functional-devstack-base to
48+
# simplify removing Neutron in the osc-functional-devstack-n-net job.
349
- job:
450
name: osc-functional-devstack
5-
parent: legacy-dsvm-base
6-
run: playbooks/osc-functional-devstack/run
7-
post-run: playbooks/osc-functional-devstack/post
51+
parent: osc-functional-devstack-base
852
timeout: 7800
9-
required-projects:
10-
- openstack-infra/devstack-gate
11-
- openstack/python-openstackclient
53+
vars:
54+
devstack_plugins:
55+
# NOTE(amotoki): Some neutron features are enabled by devstack plugin
56+
neutron: https://git.openstack.org/openstack/neutron
57+
devstack_services:
58+
neutron-segments: True
59+
q-metering: True
60+
q-qos: True
61+
tox_envlist: functional
1262

1363
- job:
1464
name: osc-functional-devstack-n-net
15-
parent: legacy-dsvm-base
16-
run: playbooks/osc-functional-devstack-n-net/run
17-
post-run: playbooks/osc-functional-devstack-n-net/post
65+
parent: osc-functional-devstack-base
1866
timeout: 7800
19-
required-projects:
20-
- openstack-infra/devstack-gate
21-
- openstack/python-openstackclient
67+
vars:
68+
devstack_localrc:
69+
FLAT_INTERFACE: 'br_flat'
70+
PUBLIC_INTERFACE: 'br_pub'
71+
devstack_services:
72+
n-cell: True
73+
n-net: True
74+
neutron: False
75+
neutron-segments: False
76+
q-agt: False
77+
q-dhcp: False
78+
q-l3: False
79+
q-meta: False
80+
q-metering: False
81+
q-qos: False
82+
q-svc: False
83+
tox_envlist: functional
2284

2385
- job:
2486
name: osc-functional-devstack-tips
25-
parent: legacy-dsvm-base
26-
run: playbooks/osc-functional-devstack-tips/run
27-
post-run: playbooks/osc-functional-devstack-tips/post
87+
parent: osc-functional-devstack
2888
timeout: 7800
2989
required-projects:
30-
- openstack-infra/devstack-gate
3190
- openstack/os-client-config
3291
- openstack/osc-lib
3392
- openstack/python-openstackclient
3493
- openstack/python-openstacksdk
35-
94+
vars:
95+
devstack_localrc:
96+
USE_PYTHON3: True
97+
LIBS_FROM_GIT: 'python-openstackclient,python-openstacksdk,osc-lib,os-client-config'
98+
# This is insufficient, but leaving it here as a reminder of what may
99+
# someday be all we need to make this work
100+
# disable_python3_package swift
101+
DISABLED_PYTHON3_PACKAGES: 'swift'
102+
devstack_services:
103+
# Swift is not ready for python3 yet: At a minimum keystonemiddleware needs
104+
# to be installed in the py2 env, there are probably other things too...
105+
s-account: False
106+
s-container: False
107+
s-object: False
108+
s-proxy: False
109+
tox_envlist: functional-tips
36110

37111
- project:
38112
name: openstack/python-openstackclient

doc/source/contributor/plugins.rst

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -217,16 +217,13 @@ more steps needed to fully integrate the client with openstackclient.
217217
Add the command checker to your CI
218218
----------------------------------
219219

220-
#. Modify the section of ``zuul/layout.yaml`` related to your repository to
221-
add ``osc-plugin-jobs`` to the list of job templates for your project.
222-
This job checks that to see if any new commands are: duplicated, missing
223-
entry points, or have overlap; across all openstackclient plugins.
224-
225-
#. Update ``jenkins/scripts/check-osc-plugins.sh`` to include your new
226-
library to be installed from source. This is essential in running the
227-
previously mentioned check job. Simply add
228-
``install_from_source python-fooclient`` to the block of code where all
229-
other clients are installed.
220+
#. Add ``openstackclient-plugin-jobs`` to the list of job templates for your project.
221+
These jobs ensures that all plugin libraries are co-installable with
222+
``python-openstackclient`` and checks for conflicts across all OpenStackClient
223+
plugins, such as duplicated commands, missing entry points, or other overlaps.
224+
225+
#. Add your project to the ``required-projects`` list in the ``.zuul.yaml`` file
226+
in the ``openstack/openstackclient`` repo.
230227

231228
Changes to python-openstackclient
232229
---------------------------------

openstackclient/tests/functional/post_test_hook.sh

Lines changed: 0 additions & 51 deletions
This file was deleted.

openstackclient/tests/functional/post_test_hook_tips.sh

Lines changed: 0 additions & 55 deletions
This file was deleted.

playbooks/osc-devstack/post.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
- hosts: all
2+
roles:
3+
- fetch-tox-output
4+
- fetch-stestr-output

playbooks/osc-devstack/pre.yaml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
- hosts: all
2+
roles:
3+
- run-devstack
4+
- role: bindep
5+
bindep_profile: test
6+
bindep_dir: "{{ zuul_work_dir }}"
7+
- test-setup
8+
- ensure-tox

playbooks/osc-devstack/run.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
- hosts: all
2+
roles:
3+
- tox

playbooks/osc-functional-devstack-n-net/post.yaml

Lines changed: 0 additions & 80 deletions
This file was deleted.

0 commit comments

Comments
 (0)