summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSlawek Kaplonski <skaplons@redhat.com>2019-03-14 17:21:08 +0100
committerSlawek Kaplonski <skaplons@redhat.com>2019-03-16 09:59:59 +0100
commit6ef6f2b59be09baa5663126b49fbdce27c4798d6 (patch)
tree9932a55162ef484677458d8a440d8a3439a64e1c
parent45e73be4162a2cf9865ced874957505741920f95 (diff)
Migrate fullstack job definition to zuulv3 syntax
Now, as neutron-functional job is moved to zuulv3 syntax, the same can be easily done with fullstack job. This patch also switches experimental neutron-fullstack-with-wsgi job. This patch removes also fullstack part from gate scripts and it removes hooks for dstat and stack_base as both are not used anywhere else. Related-Bug: #1804844 Change-Id: Iac7583f01651410a3df3e349b2c843b109a8bb18
Notes
Notes (review): Code-Review+1: Manjeet Singh Bhatia <manjeet.s.bhatia@intel.com> Code-Review+2: Hongbin Lu <hongbin.lu@huawei.com> Code-Review+2: Brian Haley <haleyb.dev@gmail.com> Workflow+1: Brian Haley <haleyb.dev@gmail.com> Verified+2: Zuul Submitted-by: Zuul Submitted-at: Tue, 19 Mar 2019 18:52:18 +0000 Reviewed-on: https://review.openstack.org/643389 Project: openstack/neutron Branch: refs/heads/master
-rw-r--r--.zuul.yaml37
-rw-r--r--neutron/tests/contrib/gate_hook.sh38
-rw-r--r--neutron/tests/contrib/hooks/dstat1
-rw-r--r--neutron/tests/contrib/hooks/stack_base8
-rw-r--r--neutron/tests/contrib/post_test_hook.sh5
-rw-r--r--playbooks/legacy/neutron-fullstack-with-uwsgi/post.yaml80
-rw-r--r--playbooks/legacy/neutron-fullstack-with-uwsgi/run.yaml67
-rw-r--r--playbooks/legacy/neutron-fullstack/post.yaml96
-rw-r--r--playbooks/legacy/neutron-fullstack/run.yaml55
9 files changed, 14 insertions, 373 deletions
diff --git a/.zuul.yaml b/.zuul.yaml
index 1bb1ac4..3c042d3 100644
--- a/.zuul.yaml
+++ b/.zuul.yaml
@@ -145,19 +145,14 @@
145 145
146- job: 146- job:
147 name: neutron-fullstack 147 name: neutron-fullstack
148 parent: legacy-dsvm-base 148 parent: neutron-functional
149 run: playbooks/legacy/neutron-fullstack/run.yaml 149 vars:
150 post-run: playbooks/legacy/neutron-fullstack/post.yaml 150 tox_envlist: dsvm-fullstack
151 timeout: 7800 151 zuul_copy_output:
152 required-projects: 152 # We need to copy directory with logs to have it in job artifacts also,
153 - openstack-infra/devstack-gate 153 # /opt/stack/logs is default logs directory defined in neutron's
154 - openstack/neutron 154 # tox.ini file
155 irrelevant-files: 155 '{{ devstack_base_dir }}/logs/dsvm-fullstack-logs': logs
156 - ^.*\.rst$
157 - ^doc/.*$
158 - ^neutron/locale/.*$
159 - ^releasenotes/.*$
160
161 156
162- job: 157- job:
163 name: neutron-rally-task 158 name: neutron-rally-task
@@ -415,18 +410,10 @@
415 410
416- job: 411- job:
417 name: neutron-fullstack-with-uwsgi 412 name: neutron-fullstack-with-uwsgi
418 parent: legacy-dsvm-base 413 parent: neutron-fullstack
419 run: playbooks/legacy/neutron-fullstack-with-uwsgi/run.yaml 414 vars:
420 post-run: playbooks/legacy/neutron-fullstack-with-uwsgi/post.yaml 415 devstack_localrc:
421 timeout: 7800 416 NEUTRON_DEPLOY_MOD_WSGI: true
422 required-projects:
423 - openstack-infra/devstack-gate
424 - openstack/neutron
425 irrelevant-files:
426 - ^.*\.rst$
427 - ^doc/.*$
428 - ^neutron/locale/.*$
429 - ^releasenotes/.*$
430 voting: false 417 voting: false
431 418
432- job: 419- job:
diff --git a/neutron/tests/contrib/gate_hook.sh b/neutron/tests/contrib/gate_hook.sh
index 58b1dc4..552c628 100644
--- a/neutron/tests/contrib/gate_hook.sh
+++ b/neutron/tests/contrib/gate_hook.sh
@@ -2,7 +2,7 @@
2 2
3set -ex 3set -ex
4 4
5VENV=${1:-"dsvm-fullstack"} 5VENV=${1:-"api"}
6FLAVOR=${2:-"all"} 6FLAVOR=${2:-"all"}
7 7
8GATE_DEST=$BASE/new 8GATE_DEST=$BASE/new
@@ -55,42 +55,6 @@ function load_rc_for_rally {
55 55
56 56
57case $VENV in 57case $VENV in
58"dsvm-fullstack")
59 # The following need to be set before sourcing
60 # configure_for_func_testing.
61 GATE_STACK_USER=stack
62 PROJECT_NAME=neutron
63 IS_GATE=True
64 LOCAL_CONF=$DEVSTACK_PATH/local.conf
65
66 source $DEVSTACK_PATH/functions
67 source $NEUTRON_PATH/devstack/lib/ovs
68
69 source $NEUTRON_PATH/tools/configure_for_func_testing.sh
70
71 configure_host_for_func_testing
72
73 # Because of bug present in current Ubuntu Xenial kernel version
74 # we need a fix for VXLAN local tunneling.
75 if [[ "$VENV" =~ "dsvm-fullstack" ]]; then
76 if is_ubuntu && [ ${DISTRO} == "xenial" ]; then
77 # The OVS_BRANCH variable is used by git checkout. In the case below,
78 # we use openvswitch release 2.9.3 that contains a fix for usage of
79 # VXLAN tunnels on a single node (ovs repository commit
80 # 741f47cf35df2bfc7811b2cff75c9bb8d05fd26f). This can be dropped once
81 # we switch to Ubuntu Bionic nodes, where kernel has the fix
82 OVS_BRANCH="v2.9.3"
83 compile_ovs_kernel_module
84 fi
85 fi
86
87 # prepare base environment for ./stack.sh
88 load_rc_hook stack_base
89
90 # enable monitoring
91 load_rc_hook dstat
92 ;;
93
94"api"|"api-pecan"|"full-pecan"|"dsvm-scenario-ovs") 58"api"|"api-pecan"|"full-pecan"|"dsvm-scenario-ovs")
95 # TODO(ihrachys) consider feeding result of ext-list into tempest.conf 59 # TODO(ihrachys) consider feeding result of ext-list into tempest.conf
96 load_rc_hook api_all_extensions 60 load_rc_hook api_all_extensions
diff --git a/neutron/tests/contrib/hooks/dstat b/neutron/tests/contrib/hooks/dstat
deleted file mode 100644
index b380601..0000000
--- a/neutron/tests/contrib/hooks/dstat
+++ /dev/null
@@ -1 +0,0 @@
1enable_service dstat
diff --git a/neutron/tests/contrib/hooks/stack_base b/neutron/tests/contrib/hooks/stack_base
deleted file mode 100644
index a8e06e9..0000000
--- a/neutron/tests/contrib/hooks/stack_base
+++ /dev/null
@@ -1,8 +0,0 @@
1# set password, otherwise devstack enters interactive mode and fails
2ADMIN_PASSWORD=secretadmin
3# don't use screen to start services (needed to disable colorization in
4# captured service logs)
5USE_SCREEN=False
6# start with an empty service list, otherwise devstack will configure several
7# 'default' services, including rabbitmq and mysql
8disable_all_services
diff --git a/neutron/tests/contrib/post_test_hook.sh b/neutron/tests/contrib/post_test_hook.sh
index 58cbf8b..99059fe 100644
--- a/neutron/tests/contrib/post_test_hook.sh
+++ b/neutron/tests/contrib/post_test_hook.sh
@@ -27,9 +27,6 @@ function generate_log_index {
27 27
28 # honor job flavors like -python35 28 # honor job flavors like -python35
29 case $venv in 29 case $venv in
30 *"dsvm-fullstack"*)
31 venv="dsvm-fullstack"
32 ;;
33 *"dsvm-functional"*) 30 *"dsvm-functional"*)
34 venv="dsvm-functional" 31 venv="dsvm-functional"
35 ;; 32 ;;
@@ -52,7 +49,7 @@ function generate_log_index {
52 $xtrace 49 $xtrace
53} 50}
54 51
55if [[ "$venv" == dsvm-functional* ]] || [[ "$venv" == dsvm-fullstack* ]]; then 52if [[ "$venv" == dsvm-functional* ]]; then
56 owner=stack 53 owner=stack
57 sudo_env= 54 sudo_env=
58 55
diff --git a/playbooks/legacy/neutron-fullstack-with-uwsgi/post.yaml b/playbooks/legacy/neutron-fullstack-with-uwsgi/post.yaml
deleted file mode 100644
index dac8753..0000000
--- a/playbooks/legacy/neutron-fullstack-with-uwsgi/post.yaml
+++ /dev/null
@@ -1,80 +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=**/*nose_results.html
13 - --include=*/
14 - --exclude=*
15 - --prune-empty-dirs
16
17 - name: Copy files from {{ ansible_user_dir }}/workspace/ on node
18 synchronize:
19 src: '{{ ansible_user_dir }}/workspace/'
20 dest: '{{ zuul.executor.log_root }}'
21 mode: pull
22 copy_links: true
23 verify_host: true
24 rsync_opts:
25 - --include=**/*testr_results.html.gz
26 - --include=*/
27 - --exclude=*
28 - --prune-empty-dirs
29
30 - name: Copy files from {{ ansible_user_dir }}/workspace/ on node
31 synchronize:
32 src: '{{ ansible_user_dir }}/workspace/'
33 dest: '{{ zuul.executor.log_root }}'
34 mode: pull
35 copy_links: true
36 verify_host: true
37 rsync_opts:
38 - --include=/.testrepository/tmp*
39 - --include=*/
40 - --exclude=*
41 - --prune-empty-dirs
42
43 - name: Copy files from {{ ansible_user_dir }}/workspace/ on node
44 synchronize:
45 src: '{{ ansible_user_dir }}/workspace/'
46 dest: '{{ zuul.executor.log_root }}'
47 mode: pull
48 copy_links: true
49 verify_host: true
50 rsync_opts:
51 - --include=**/*testrepository.subunit.gz
52 - --include=*/
53 - --exclude=*
54 - --prune-empty-dirs
55
56 - name: Copy files from {{ ansible_user_dir }}/workspace/ on node
57 synchronize:
58 src: '{{ ansible_user_dir }}/workspace/'
59 dest: '{{ zuul.executor.log_root }}/tox'
60 mode: pull
61 copy_links: true
62 verify_host: true
63 rsync_opts:
64 - --include=/.tox/*/log/*
65 - --include=*/
66 - --exclude=*
67 - --prune-empty-dirs
68
69 - name: Copy files from {{ ansible_user_dir }}/workspace/ on node
70 synchronize:
71 src: '{{ ansible_user_dir }}/workspace/'
72 dest: '{{ zuul.executor.log_root }}'
73 mode: pull
74 copy_links: true
75 verify_host: true
76 rsync_opts:
77 - --include=/logs/**
78 - --include=*/
79 - --exclude=*
80 - --prune-empty-dirs
diff --git a/playbooks/legacy/neutron-fullstack-with-uwsgi/run.yaml b/playbooks/legacy/neutron-fullstack-with-uwsgi/run.yaml
deleted file mode 100644
index 2e0926c..0000000
--- a/playbooks/legacy/neutron-fullstack-with-uwsgi/run.yaml
+++ /dev/null
@@ -1,67 +0,0 @@
1- hosts: all
2 name: This is a Neutron Fullstack test suite running with uwsgi
3 tasks:
4
5 - name: Ensure legacy workspace directory
6 file:
7 path: '{{ ansible_user_dir }}/workspace'
8 state: directory
9
10 - shell:
11 cmd: |
12 set -e
13 set -x
14 cat > clonemap.yaml << EOF
15 clonemap:
16 - name: openstack-infra/devstack-gate
17 dest: devstack-gate
18 EOF
19 /usr/zuul-env/bin/zuul-cloner -m clonemap.yaml --cache-dir /opt/git \
20 git://git.openstack.org \
21 openstack-infra/devstack-gate
22 executable: /bin/bash
23 chdir: '{{ ansible_user_dir }}/workspace'
24 environment: '{{ zuul | zuul_legacy_vars }}'
25
26 - shell:
27 cmd: |
28 set -e
29 set -x
30 cat << 'EOF' >>"/tmp/dg-local.conf"
31 [[local|localrc]]
32 NEUTRON_DEPLOY_MOD_WSGI=True
33
34 EOF
35 executable: /bin/bash
36 chdir: '{{ ansible_user_dir }}/workspace'
37 environment: '{{ zuul | zuul_legacy_vars }}'
38
39 - shell:
40 cmd: |
41 set -e
42 set -x
43 export PYTHONUNBUFFERED=true
44 export DEVSTACK_GATE_TEMPEST=0
45 export DEVSTACK_GATE_EXERCISES=0
46 export DEVSTACK_GATE_NEUTRON=1
47 export DEVSTACK_GATE_INSTALL_TESTONLY=1
48 export BRANCH_OVERRIDE=default
49 if [ "$BRANCH_OVERRIDE" != "default" ] ; then
50 export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
51 fi
52
53 function gate_hook {
54 bash -xe $BASE/new/neutron/neutron/tests/contrib/gate_hook.sh dsvm-fullstack
55 }
56 export -f gate_hook
57
58 function post_test_hook {
59 bash -xe $BASE/new/neutron/neutron/tests/contrib/post_test_hook.sh dsvm-fullstack
60 }
61 export -f post_test_hook
62
63 cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
64 ./safe-devstack-vm-gate-wrap.sh
65 executable: /bin/bash
66 chdir: '{{ ansible_user_dir }}/workspace'
67 environment: '{{ zuul | zuul_legacy_vars }}'
diff --git a/playbooks/legacy/neutron-fullstack/post.yaml b/playbooks/legacy/neutron-fullstack/post.yaml
deleted file mode 100644
index 3b3df75..0000000
--- a/playbooks/legacy/neutron-fullstack/post.yaml
+++ /dev/null
@@ -1,96 +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=**/*nose_results.html
13 - --include=*/
14 - --exclude=*
15 - --prune-empty-dirs
16
17 - name: Copy files from {{ ansible_user_dir }}/workspace/ on node
18 synchronize:
19 src: '{{ ansible_user_dir }}/workspace/'
20 dest: '{{ zuul.executor.log_root }}'
21 mode: pull
22 copy_links: true
23 verify_host: true
24 rsync_opts:
25 - --include=**/*testr_results.html.gz
26 - --include=*/
27 - --exclude=*
28 - --prune-empty-dirs
29
30 - name: Copy files from {{ ansible_user_dir }}/workspace/ on node
31 synchronize:
32 src: '{{ ansible_user_dir }}/workspace/'
33 dest: '{{ zuul.executor.log_root }}'
34 mode: pull
35 copy_links: true
36 verify_host: true
37 rsync_opts:
38 - --include=/.testrepository/tmp*
39 - --include=*/
40 - --exclude=*
41 - --prune-empty-dirs
42
43 - name: Copy files from {{ ansible_user_dir }}/workspace/ on node
44 synchronize:
45 src: '{{ ansible_user_dir }}/workspace/'
46 dest: '{{ zuul.executor.log_root }}'
47 mode: pull
48 copy_links: true
49 verify_host: true
50 rsync_opts:
51 - --include=**/*testrepository.subunit.gz
52 - --include=*/
53 - --exclude=*
54 - --prune-empty-dirs
55
56 - name: Copy files from {{ ansible_user_dir }}/workspace/ on node
57 synchronize:
58 src: '{{ ansible_user_dir }}/workspace/'
59 dest: '{{ zuul.executor.log_root }}/tox'
60 mode: pull
61 copy_links: true
62 verify_host: true
63 rsync_opts:
64 - --include=/.tox/*/log/*
65 - --include=*/
66 - --exclude=*
67 - --prune-empty-dirs
68
69 # TODO(slaweq): this should be moved to separate role and used in zuulv3
70 # jobs definitions also
71 - name: Store journal logs in {{ ansible_user_dir }}/workspace/logs/journal.log
72 become: yes
73 shell:
74 cmd: |
75 /bin/journalctl -a > {{ ansible_user_dir }}/workspace/logs/journal.log
76
77 - name: Set journal.log file permissions
78 become: yes
79 file:
80 path: '{{ ansible_user_dir }}/workspace/logs/journal.log'
81 owner: '{{ ansible_user }}'
82 group: '{{ ansible_user }}'
83 mode: 0644
84
85 - name: Copy files from {{ ansible_user_dir }}/workspace/ on node
86 synchronize:
87 src: '{{ ansible_user_dir }}/workspace/'
88 dest: '{{ zuul.executor.log_root }}'
89 mode: pull
90 copy_links: true
91 verify_host: true
92 rsync_opts:
93 - --include=/logs/**
94 - --include=*/
95 - --exclude=*
96 - --prune-empty-dirs
diff --git a/playbooks/legacy/neutron-fullstack/run.yaml b/playbooks/legacy/neutron-fullstack/run.yaml
deleted file mode 100644
index 079ee47..0000000
--- a/playbooks/legacy/neutron-fullstack/run.yaml
+++ /dev/null
@@ -1,55 +0,0 @@
1- hosts: all
2 name: Autoconverted job legacy-neutron-dsvm-fullstack from old job gate-neutron-dsvm-fullstack-ubuntu-xenial
3 tasks:
4
5 - name: Ensure legacy workspace directory
6 file:
7 path: '{{ ansible_user_dir }}/workspace'
8 state: directory
9
10 - shell:
11 cmd: |
12 set -e
13 set -x
14 cat > clonemap.yaml << EOF
15 clonemap:
16 - name: openstack-infra/devstack-gate
17 dest: devstack-gate
18 EOF
19 /usr/zuul-env/bin/zuul-cloner -m clonemap.yaml --cache-dir /opt/git \
20 git://git.openstack.org \
21 openstack-infra/devstack-gate
22 executable: /bin/bash
23 chdir: '{{ ansible_user_dir }}/workspace'
24 environment: '{{ zuul | zuul_legacy_vars }}'
25
26 - shell:
27 cmd: |
28 set -e
29 set -x
30 export USE_PYTHON3=true
31 export PYTHONUNBUFFERED=true
32 export DEVSTACK_GATE_TEMPEST=0
33 export DEVSTACK_GATE_EXERCISES=0
34 export DEVSTACK_GATE_NEUTRON=1
35 export DEVSTACK_GATE_INSTALL_TESTONLY=1
36 export BRANCH_OVERRIDE=default
37 if [ "$BRANCH_OVERRIDE" != "default" ] ; then
38 export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
39 fi
40
41 function gate_hook {
42 bash -xe $BASE/new/neutron/neutron/tests/contrib/gate_hook.sh dsvm-fullstack
43 }
44 export -f gate_hook
45
46 function post_test_hook {
47 bash -xe $BASE/new/neutron/neutron/tests/contrib/post_test_hook.sh dsvm-fullstack
48 }
49 export -f post_test_hook
50
51 cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
52 ./safe-devstack-vm-gate-wrap.sh
53 executable: /bin/bash
54 chdir: '{{ ansible_user_dir }}/workspace'
55 environment: '{{ zuul | zuul_legacy_vars }}'