summaryrefslogtreecommitdiff
path: root/.zuul.yaml
blob: eed8d20017e44daa7f5d1b899162915afdc03bb7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
- 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/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/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/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/openstacksdk
    vars:
      devstack_localrc:
        USE_PYTHON3: true
        LIBS_FROM_GIT: python-openstackclient,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