summaryrefslogtreecommitdiff
path: root/.zuul.yaml
blob: 742de7af9035b4b5a56afa69c890eb0b34c8d734 (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
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
- 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/openstacksdk
      - openstack/os-client-config
      - openstack/osc-lib
      - openstack/python-openstackclient
    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/opendev.org/openstack/python-openstackclient

- job:
    name: osc-tox-py36-tips
    parent: openstack-tox-py36
    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/openstacksdk
      - openstack/os-client-config
      - openstack/osc-lib
      - openstack/python-openstackclient
    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/opendev.org/openstack/python-openstackclient

- job:
    name: osc-functional-devstack-base
    parent: devstack-tox-functional
    description: |
      Base job for devstack-based functional tests
    timeout: 9000
    irrelevant-files:
      - ^.*\.rst$
      - ^doc/.*$
      - ^releasenotes/.*$
    required-projects:
      - openstack/python-openstackclient
    vars:
      devstack_localrc:
        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
        s-account: true
        s-container: true
        s-object: true
        s-proxy: true
      osc_environment:
        PYTHONUNBUFFERED: 'true'
        OS_CLOUD: devstack-admin
      zuul_work_dir: src/opendev.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://opendev.org/openstack/neutron
      devstack_services:
        neutron-network-segment-range: true
        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/openstacksdk
      - openstack/os-client-config
      - openstack/osc-lib
      - openstack/python-openstackclient
    vars:
      devstack_localrc:
        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
        # As swift is not available for this job, c-bak service won't be functional.
        # The backup related tests can be handled by other jobs having swift enabled.
        # The backup service along with swift services can be enabled once swift is
        # compatible with py3
        c-bak: false
      tox_envlist: functional
      tox_install_siblings: true

- secret:
    name: osc-dockerhub
    data:
      username: osclientzuul
      password: !encrypted/pkcs1-oaep
        - X666jS/g43U4ykLzuQSNhl9XOVpKViT1bMQb/YJgTHj8AzigONu3+4BrxItS7mqwp9AWp
          YtNHZ0Dju3piNw07ulnsOAYHpBcz+zFK5UzVMXzkHk5vu1W0WWYLVayU4HJKliAwPmNii
          J3itt196sQ6IhIe/Hamcm715rP9cQd50w32lvAV4RNXoc4Gq7ZzOIzyA80UEl6HY7jiR9
          WYFI4PoCrmNxKKV8YAaH1OlJW71WF0O+77+oostKwFG35bxIniUl1ZinxOgjC2va8j5nT
          KKgVgQdjwjuMOXEA6iiLewAo39P+nL/81AheDGQNex6x1oJuVRklQmiznbQI3knTOeJIh
          ncRJuE9RfS0xuR5J45WOdKWVjIYpMkTXF+5Kn/pEtNelA2ADzaloGidNxEOvOD74vVf68
          mtZ1kffQi6d7yq57m0ZJ8WwTEo5g8Z+tmS40U2vdZ0vN5c/keGJisKbOpwavloP9owize
          U9EgIAMIT6LE/fJWPGGugMR57z7gnCNiq970crTjWvsP1yFGvo/FQiUpplv5ni6C+s9jq
          1rba4Ya0uxQa2r5zjFXNJ52zGoRVlpjSsfpEtvCmTzfF5p0fa2aSyDs8ZOjaiDCVSmTPn
          SE9rutyH0XO7CP9RFetxirfgSQ8ZDpUmXpfKaTGa0glIfjmmf4yyaaJRKOkubg=

- job:
    name: osc-build-image
    parent: opendev-build-docker-image
    description: Build Docker images.
    allowed-projects: openstack/python-openstackclient
    requires:
      - python-builder-container-image
      - python-base-container-image
    provides: osc-container-image
    vars: &osc_image_vars
      docker_images:
        - context: .
          repository: osclient/python-openstackclient

- job:
    name: osc-upload-image
    parent: opendev-upload-docker-image
    description: Build Docker images and upload to Docker Hub.
    allowed-projects: openstack/python-openstackclient
    requires:
      - python-builder-container-image
      - python-base-container-image
    provides: osc-container-image
    secrets:
      - name: docker_credentials
        secret: osc-dockerhub
        pass-to-parent: true
    vars: *osc_image_vars

- job:
    name: osc-promote-image
    parent: opendev-promote-docker-image
    allowed-projects: openstack/python-openstackclient
    description: Promote previously uploaded Docker images.
    secrets:
      - name: docker_credentials
        secret: osc-dockerhub
        pass-to-parent: true
    nodeset:
      nodes: []
    vars: *osc_image_vars

- project-template:
    name: osc-tox-unit-tips
    check:
      jobs:
        - osc-tox-py36-tips
    gate:
      jobs:
        - osc-tox-py36-tips

- project:
    templates:
      - openstackclient-plugin-jobs
      - osc-tox-unit-tips
      - openstack-cover-jobs
      - openstack-lower-constraints-jobs
      - openstack-python3-ussuri-jobs
      - publish-openstack-docs-pti
      - check-requirements
      - release-notes-jobs-python3
      - lib-forward-testing-python3
    check:
      jobs:
        - osc-build-image
        - 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:
            # The functional-tips job only tests the latest and shouldn't be run
            # on the stable branches
            branches: ^(?!stable)
    gate:
      jobs:
        - osc-upload-image
        - osc-functional-devstack
    promote:
      jobs:
        - osc-promote-image