Browse Source

Migrate neutron-tempest-dvr-ha-multinode-full job to zuulv3

This patch migrates definition of
neutron-tempest-dvr-ha-multinode-full job to zuul v3 syntax.

Additionally this patch sets l3_ha config option in neutron
to True to make sure that routers created in tests are HA
always.

Change-Id: I3e48c5109dddc2fca6f3b9c289f416ed4a018a41
Related-Bug: #1804844
Slawek Kaplonski 2 months ago
parent
commit
b3d26ab2dd

+ 60
- 4
.zuul.yaml View File

@@ -227,17 +227,73 @@
227 227
 
228 228
 - job:
229 229
     name: neutron-tempest-dvr-ha-multinode-full
230
-    parent: legacy-dsvm-base-multinode
231
-    run: playbooks/legacy/neutron-tempest-dvr-ha-multinode-full/run.yaml
232
-    post-run: playbooks/legacy/neutron-tempest-dvr-ha-multinode-full/post.yaml
230
+    parent: tempest-multinode-full
231
+    nodeset: openstack-three-node-bionic
233 232
     timeout: 10800
233
+    roles:
234
+      - zuul: openstack/neutron-tempest-plugin
234 235
     required-projects:
235 236
       - openstack-infra/devstack-gate
236 237
       - openstack/neutron
237 238
       - openstack/tempest
238
-    nodeset: ubuntu-xenial-3-node
239
+    pre-run: playbooks/dvr-multinode-scenario-pre-run.yaml
239 240
     irrelevant-files: *tempest-irrelevant-files
240 241
     voting: false
242
+    vars:
243
+      devstack_local_conf:
244
+        post-config:
245
+          $NEUTRON_CONF:
246
+            DEFAULT:
247
+              router_distributed: True
248
+              l3_ha: True
249
+          # NOTE(slaweq): We can get rid of this hardcoded absolute path when
250
+          # devstack-tempest job will be switched to use lib/neutron instead of
251
+          # lib/neutron-legacy
252
+          "/$NEUTRON_CORE_PLUGIN_CONF":
253
+            ml2:
254
+              mechanism_drivers: openvswitch,l2population
255
+            agent:
256
+              enable_distributed_routing: True
257
+              l2_population: True
258
+              tunnel_types: vxlan
259
+            ovs:
260
+              tunnel_bridge: br-tun
261
+              bridge_mappings: public:br-ex
262
+          $NEUTRON_L3_CONF:
263
+            DEFAULT:
264
+              agent_mode: dvr
265
+            agent:
266
+              availability_zone: nova
267
+          $NEUTRON_DHCP_CONF:
268
+            agent:
269
+              availability_zone: nova
270
+    group-vars:
271
+      subnode:
272
+        devstack_services:
273
+          q-agt: true
274
+          q-l3: true
275
+          q-meta: true
276
+        devstack_local_conf:
277
+          post-config:
278
+            $NEUTRON_CONF:
279
+              DEFAULT:
280
+                router_distributed: True
281
+            # NOTE(slaweq): We can get rid of this hardcoded absolute path when
282
+            # devstack-tempest job will be switched to use lib/neutron instead of
283
+            # lib/neutron-legacy
284
+            "/$NEUTRON_CORE_PLUGIN_CONF":
285
+              agent:
286
+                enable_distributed_routing: True
287
+                l2_population: True
288
+                tunnel_types: vxlan
289
+              ovs:
290
+                tunnel_bridge: br-tun
291
+                bridge_mappings: public:br-ex
292
+            $NEUTRON_L3_CONF:
293
+              DEFAULT:
294
+                agent_mode: dvr_snat
295
+              agent:
296
+                availability_zone: nova
241 297
 
242 298
 - job:
243 299
     name: neutron-tempest-iptables_hybrid

+ 3
- 0
playbooks/dvr-multinode-scenario-pre-run.yaml View File

@@ -0,0 +1,3 @@
1
+- hosts: all
2
+  roles:
3
+    - multi-node-setup

+ 0
- 15
playbooks/legacy/neutron-tempest-dvr-ha-multinode-full/post.yaml View File

@@ -1,15 +0,0 @@
1
-- hosts: primary
2
-  tasks:
3
-
4
-    - name: Copy files from {{ ansible_user_dir }}/workspace/ on node
5
-      synchronize:
6
-        src: '{{ ansible_user_dir }}/workspace/'
7
-        dest: '{{ zuul.executor.log_root }}'
8
-        mode: pull
9
-        copy_links: true
10
-        verify_host: true
11
-        rsync_opts:
12
-          - --include=/logs/**
13
-          - --include=*/
14
-          - --exclude=*
15
-          - --prune-empty-dirs

+ 0
- 64
playbooks/legacy/neutron-tempest-dvr-ha-multinode-full/run.yaml View File

@@ -1,64 +0,0 @@
1
-- hosts: primary
2
-  name: Autoconverted job legacy-tempest-dsvm-neutron-dvr-ha-multinode-full from old
3
-    job gate-tempest-dsvm-neutron-dvr-ha-multinode-full-ubuntu-xenial-nv
4
-  tasks:
5
-
6
-    - name: Ensure legacy workspace directory
7
-      file:
8
-        path: '{{ ansible_user_dir }}/workspace'
9
-        state: directory
10
-
11
-    - shell:
12
-        cmd: |
13
-          set -e
14
-          set -x
15
-          cat > clonemap.yaml << EOF
16
-          clonemap:
17
-            - name: openstack-infra/devstack-gate
18
-              dest: devstack-gate
19
-          EOF
20
-          /usr/zuul-env/bin/zuul-cloner -m clonemap.yaml --cache-dir /opt/git \
21
-              git://git.openstack.org \
22
-              openstack-infra/devstack-gate
23
-        executable: /bin/bash
24
-        chdir: '{{ ansible_user_dir }}/workspace'
25
-      environment: '{{ zuul | zuul_legacy_vars }}'
26
-
27
-    - shell:
28
-        cmd: |
29
-          set -e
30
-          set -x
31
-          cat << 'EOF' >>"/tmp/dg-local.conf"
32
-          [[local|localrc]]
33
-          NOVA_VNC_ENABLED=true
34
-          VNCSERVER_LISTEN=0.0.0.0
35
-          VNCSERVER_PROXYCLIENT_ADDRESS=$HOST_IP
36
-
37
-          EOF
38
-        executable: /bin/bash
39
-        chdir: '{{ ansible_user_dir }}/workspace'
40
-      environment: '{{ zuul | zuul_legacy_vars }}'
41
-
42
-    - shell:
43
-        cmd: |
44
-          set -e
45
-          set -x
46
-          export PYTHONUNBUFFERED=true
47
-          export DEVSTACK_GATE_TEMPEST=1
48
-          export DEVSTACK_GATE_NEUTRON=1
49
-          export DEVSTACK_GATE_CONFIGDRIVE=0
50
-          export DEVSTACK_GATE_TEMPEST_FULL=1
51
-          export DEVSTACK_GATE_USE_PYTHON3=True
52
-          # Test DVR works multinode
53
-          export DEVSTACK_GATE_NEUTRON_DVR=1
54
-          export BRANCH_OVERRIDE=default
55
-          if [ "$BRANCH_OVERRIDE" != "default" ] ; then
56
-              export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
57
-          fi
58
-          export DEVSTACK_GATE_TOPOLOGY="multinode"
59
-
60
-          cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
61
-          ./safe-devstack-vm-gate-wrap.sh
62
-        executable: /bin/bash
63
-        chdir: '{{ ansible_user_dir }}/workspace'
64
-      environment: '{{ zuul | zuul_legacy_vars }}'

Loading…
Cancel
Save