summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBernard Cafarelli <bcafarel@redhat.com>2020-07-02 10:07:55 +0200
committerBernard Cafarelli <bcafarel@redhat.com>2020-07-07 15:58:12 +0200
commit2c7e9810eccd8c7fd0140f4ffce9f3797f3861a2 (patch)
treef248842d8096f14bd331cf2977f90c1043bb0692
parent8f280339096ed702928f704fd20543ce4370c0d4 (diff)
downloadneutron-2c7e9810eccd8c7fd0140f4ffce9f3797f3861a2.tar.gz
Fix pike gates, multiple fixes
1. Make grenade jobs experimental for EM branches As discussed in ML thread[1], we are going to make grenade jobs as non voting for all EM stable and oldest stable. grenade jobs are failing not and it might take time to fix those if we are able to fix. Once it jobs are working depends on project team, they can bring them back to voting or keep non-voting. If those jobs are failing consistently and no one is fixing them then removing those n-v jobs in future also fine. Additionally, it was proposed in neutron CI meeting [2] that non-voting jobs would be moved to experimental, so move grenade jobs there instead of keeping them non-voting [1] http://lists.openstack.org/pipermail/openstack-discuss/2020-June/015499.html [2] http://eavesdrop.openstack.org/meetings/neutron_ci/2020/neutron_ci.2020-07-01-15.00.log.html#l-101 StableOnly Conflicts: .zuul.yaml (cherry picked from commit 9313dce4590116b13b24570c5455df415575817e) 2. Install pip2 for functional, fullstack, neutron-tempest-iptables_hybrid, rally Else both jobs fail with "sudo: pip: command not found" 3. Add ensure-tox for functional, fullstack, neutron-tempest-iptables_hybrid, rally Similar error message for tox 4. Disable OVS compilation for fullstack and move job to experimental Compilation fails similarly to recent master failures: /opt/stack/new/ovs/datapath/linux/geneve.c:943:15: error: ‘const struct ipv6_stub’ has no member named ‘ipv6_dst_lookup’ But branch 2.9 is not updated anymore. Use official package This triggers a few tests failures, so move it to experimental (instead of marking non-voting), same as grenade jobs 5. Adapt old legacy-neutron-dsvm-api job definition This copies old definition from openstack-zuul-jobs in repo as neutron-dsvm-api and add similar changes to other jobs (pip2 install and ensure-tox) Conflicts: .zuul.yaml neutron/tests/contrib/gate_hook.sh Depends-On: https://review.opendev.org/735616/ Change-Id: Ie846a8cb481da65999b12f5547b407cc7bdc3138 (cherry picked from commit 57f527a748f292597ee548e8d386720b72346d17) (cherry picked from commit 774b3ff89e5ec01494d7ca66773aba8984f0cd80)
-rw-r--r--.zuul.yaml48
-rw-r--r--neutron/tests/contrib/gate_hook.sh14
-rw-r--r--playbooks/legacy/neutron-dsvm-api/post.yaml80
-rw-r--r--playbooks/legacy/neutron-dsvm-api/run.yaml59
-rw-r--r--playbooks/legacy/neutron-fullstack/run.yaml6
-rw-r--r--playbooks/legacy/neutron-functional/run.yaml6
-rw-r--r--playbooks/legacy/neutron-rally-neutron/run.yaml6
-rw-r--r--playbooks/legacy/neutron-tempest-ovsfw/run.yaml6
8 files changed, 191 insertions, 34 deletions
diff --git a/.zuul.yaml b/.zuul.yaml
index 5703a0d4b3..56c66c1ab5 100644
--- a/.zuul.yaml
+++ b/.zuul.yaml
@@ -11,23 +11,14 @@
check:
jobs:
- neutron-functional
- - neutron-fullstack
- neutron-rally-neutron
- neutron-tempest-dvr
- neutron-tempest-linuxbridge
- - neutron-grenade-multinode
- - neutron-grenade-dvr-multinode
- neutron-tempest-multinode-full
- neutron-tempest-dvr-ha-multinode-full
- neutron-tempest-ovsfw
- - neutron-grenade
- openstack-tox-cover
- - legacy-neutron-dsvm-api:
- irrelevant-files:
- - ^.*\.rst$
- - ^doc/.*$
- - ^neutron/locale/.*$
- - ^releasenotes/.*$
+ - neutron-dsvm-api
- legacy-tempest-dsvm-neutron-dvr-multinode-scenario:
voting: false
irrelevant-files:
@@ -68,19 +59,17 @@
- neutron-functional
- neutron-tempest-dvr
- neutron-tempest-linuxbridge
-
- openstack-tox-cover
- - legacy-neutron-dsvm-api:
- irrelevant-files:
- - ^.*\.rst$
- - ^doc/.*$
- - ^neutron/locale/.*$
- - ^releasenotes/.*$
+ - neutron-dsvm-api
post:
jobs:
- openstack-tox-cover
experimental:
jobs:
+ - neutron-fullstack
+ - neutron-grenade
+ - neutron-grenade-multinode
+ - neutron-grenade-dvr-multinode
- legacy-grenade-dsvm-neutron-linuxbridge-multinode:
irrelevant-files:
- ^(test-|)requirements.txt$
@@ -169,6 +158,8 @@
required-projects:
- openstack/devstack-gate
- openstack/neutron
+ vars:
+ ensure_pip_from_packages_with_python2: yes
irrelevant-files:
- ^.*\.rst$
- ^doc/.*$
@@ -184,6 +175,8 @@
required-projects:
- openstack/devstack-gate
- openstack/neutron
+ vars:
+ ensure_pip_from_packages_with_python2: yes
irrelevant-files:
- ^.*\.rst$
- ^doc/.*$
@@ -220,6 +213,8 @@
- openstack/tripleo-image-elements
- openstack/watcher
- openstack/zaqar-ui
+ vars:
+ ensure_pip_from_packages_with_python2: yes
irrelevant-files:
- ^.*\.rst$
- ^doc/.*$
@@ -374,6 +369,8 @@
- openstack/devstack-gate
- openstack/neutron
- openstack/tempest
+ vars:
+ ensure_pip_from_packages_with_python2: yes
irrelevant-files:
- ^(test-|)requirements.txt$
- ^.*\.rst$
@@ -407,3 +404,20 @@
- ^tools/.*$
- ^tox.ini$
voting: false
+
+- job:
+ name: neutron-dsvm-api
+ parent: legacy-dsvm-base
+ run: playbooks/legacy/neutron-dsvm-api/run.yaml
+ post-run: playbooks/legacy/neutron-dsvm-api/post.yaml
+ timeout: 7800
+ required-projects:
+ - openstack/devstack-gate
+ - openstack/neutron
+ vars:
+ ensure_pip_from_packages_with_python2: yes
+ irrelevant-files:
+ - ^.*\.rst$
+ - ^doc/.*$
+ - ^neutron/locale/.*$
+ - ^releasenotes/.*$
diff --git a/neutron/tests/contrib/gate_hook.sh b/neutron/tests/contrib/gate_hook.sh
index a601249604..d4b1e4dc98 100644
--- a/neutron/tests/contrib/gate_hook.sh
+++ b/neutron/tests/contrib/gate_hook.sh
@@ -70,19 +70,7 @@ case $VENV in
configure_host_for_func_testing
- # Because of bug present in current Ubuntu Xenial kernel version
- # we need a fix for VXLAN local tunneling.
- if [[ "$VENV" =~ "dsvm-fullstack" ]]; then
- # The OVS_BRANCH variable is used by git checkout. In the case below,
- # we use openvswitch commit 175be4bf23a206b264719b5661707af186b31f32
- # that contains a fix for usage of VXLAN tunnels on a single node
- # (commit 741f47cf35df2bfc7811b2cff75c9bb8d05fd26f) and is compatible
- # with kernel 4.4.0-145
- # NOTE(slaweq): Replace with a release tag when one is available.
- # See commit 138df3e563de9da0e5a4155b3534a69621495742 (on the ovs repo).
- OVS_BRANCH="175be4bf23a206b264719b5661707af186b31f32"
- compile_ovs_kernel_module
- elif [[ "$VENV" =~ "dsvm-functional" ]]; then
+ if [[ "$VENV" =~ "dsvm-functional" ]]; then
# NOTE(slaweq): there is some bug in keepalived
# 1:1.2.24-1ubuntu0.16.04.1, and because of that we have to use older
# version for tests as workaround. For details check
diff --git a/playbooks/legacy/neutron-dsvm-api/post.yaml b/playbooks/legacy/neutron-dsvm-api/post.yaml
new file mode 100644
index 0000000000..dac875340a
--- /dev/null
+++ b/playbooks/legacy/neutron-dsvm-api/post.yaml
@@ -0,0 +1,80 @@
+- hosts: primary
+ tasks:
+
+ - name: Copy files from {{ ansible_user_dir }}/workspace/ on node
+ synchronize:
+ src: '{{ ansible_user_dir }}/workspace/'
+ dest: '{{ zuul.executor.log_root }}'
+ mode: pull
+ copy_links: true
+ verify_host: true
+ rsync_opts:
+ - --include=**/*nose_results.html
+ - --include=*/
+ - --exclude=*
+ - --prune-empty-dirs
+
+ - name: Copy files from {{ ansible_user_dir }}/workspace/ on node
+ synchronize:
+ src: '{{ ansible_user_dir }}/workspace/'
+ dest: '{{ zuul.executor.log_root }}'
+ mode: pull
+ copy_links: true
+ verify_host: true
+ rsync_opts:
+ - --include=**/*testr_results.html.gz
+ - --include=*/
+ - --exclude=*
+ - --prune-empty-dirs
+
+ - name: Copy files from {{ ansible_user_dir }}/workspace/ on node
+ synchronize:
+ src: '{{ ansible_user_dir }}/workspace/'
+ dest: '{{ zuul.executor.log_root }}'
+ mode: pull
+ copy_links: true
+ verify_host: true
+ rsync_opts:
+ - --include=/.testrepository/tmp*
+ - --include=*/
+ - --exclude=*
+ - --prune-empty-dirs
+
+ - name: Copy files from {{ ansible_user_dir }}/workspace/ on node
+ synchronize:
+ src: '{{ ansible_user_dir }}/workspace/'
+ dest: '{{ zuul.executor.log_root }}'
+ mode: pull
+ copy_links: true
+ verify_host: true
+ rsync_opts:
+ - --include=**/*testrepository.subunit.gz
+ - --include=*/
+ - --exclude=*
+ - --prune-empty-dirs
+
+ - name: Copy files from {{ ansible_user_dir }}/workspace/ on node
+ synchronize:
+ src: '{{ ansible_user_dir }}/workspace/'
+ dest: '{{ zuul.executor.log_root }}/tox'
+ mode: pull
+ copy_links: true
+ verify_host: true
+ rsync_opts:
+ - --include=/.tox/*/log/*
+ - --include=*/
+ - --exclude=*
+ - --prune-empty-dirs
+
+ - name: Copy files from {{ ansible_user_dir }}/workspace/ on node
+ synchronize:
+ src: '{{ ansible_user_dir }}/workspace/'
+ dest: '{{ zuul.executor.log_root }}'
+ mode: pull
+ copy_links: true
+ verify_host: true
+ rsync_opts:
+ - --include=/logs/**
+ - --include=*/
+ - --exclude=*
+ - --prune-empty-dirs
diff --git a/playbooks/legacy/neutron-dsvm-api/run.yaml b/playbooks/legacy/neutron-dsvm-api/run.yaml
new file mode 100644
index 0000000000..3907cc3721
--- /dev/null
+++ b/playbooks/legacy/neutron-dsvm-api/run.yaml
@@ -0,0 +1,59 @@
+- hosts: all
+ name: Autoconverted job legacy-neutron-dsvm-api from old job gate-neutron-dsvm-api-ubuntu-xenial-nv
+ tasks:
+ - name: Ensure tox is installed
+ include_role:
+ name: ensure-tox
+ vars:
+ ensure_global_symlinks: True
+ - name: Ensure legacy workspace directory
+ file:
+ path: '{{ ansible_user_dir }}/workspace'
+ state: directory
+
+ - shell:
+ cmd: |
+ set -e
+ set -x
+ cat > clonemap.yaml << EOF
+ clonemap:
+ - name: openstack/devstack-gate
+ dest: devstack-gate
+ EOF
+ /usr/zuul-env/bin/zuul-cloner -m clonemap.yaml --cache-dir /opt/git \
+ https://opendev.org \
+ openstack/devstack-gate
+ executable: /bin/bash
+ chdir: '{{ ansible_user_dir }}/workspace'
+ environment: '{{ zuul | zuul_legacy_vars }}'
+
+ - shell:
+ cmd: |
+ set -e
+ set -x
+ export PYTHONUNBUFFERED=true
+ export DEVSTACK_GATE_TEMPEST=1
+ export DEVSTACK_GATE_NEUTRON=1
+ export DEVSTACK_GATE_EXERCISES=0
+ export BRANCH_OVERRIDE=default
+ if [ "$BRANCH_OVERRIDE" != "default" ] ; then
+ export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
+ fi
+ export DEVSTACK_GATE_TEMPEST_ALL_PLUGINS=1
+ export DEVSTACK_GATE_TEMPEST_REGEX="^neutron.tests.tempest.api\."
+
+ function gate_hook {
+ bash -xe $BASE/new/neutron/neutron/tests/contrib/gate_hook.sh api
+ }
+ export -f gate_hook
+
+ function post_test_hook {
+ bash -xe $BASE/new/neutron/neutron/tests/contrib/post_test_hook.sh api
+ }
+ export -f post_test_hook
+
+ cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
+ ./safe-devstack-vm-gate-wrap.sh
+ executable: /bin/bash
+ chdir: '{{ ansible_user_dir }}/workspace'
+ environment: '{{ zuul | zuul_legacy_vars }}'
diff --git a/playbooks/legacy/neutron-fullstack/run.yaml b/playbooks/legacy/neutron-fullstack/run.yaml
index c13d6d7aac..a98777d83f 100644
--- a/playbooks/legacy/neutron-fullstack/run.yaml
+++ b/playbooks/legacy/neutron-fullstack/run.yaml
@@ -1,7 +1,11 @@
- hosts: all
name: Autoconverted job legacy-neutron-dsvm-fullstack from old job gate-neutron-dsvm-fullstack-ubuntu-xenial
tasks:
-
+ - name: Ensure tox is installed
+ include_role:
+ name: ensure-tox
+ vars:
+ ensure_global_symlinks: True
- name: Ensure legacy workspace directory
file:
path: '{{ ansible_user_dir }}/workspace'
diff --git a/playbooks/legacy/neutron-functional/run.yaml b/playbooks/legacy/neutron-functional/run.yaml
index 2c9819e9c9..fdd79533ee 100644
--- a/playbooks/legacy/neutron-functional/run.yaml
+++ b/playbooks/legacy/neutron-functional/run.yaml
@@ -1,7 +1,11 @@
- hosts: all
name: Autoconverted job legacy-neutron-dsvm-functional from old job gate-neutron-dsvm-functional-ubuntu-xenial-nv
tasks:
-
+ - name: Ensure tox is installed
+ include_role:
+ name: ensure-tox
+ vars:
+ ensure_global_symlinks: True
- name: Ensure legacy workspace directory
file:
path: '{{ ansible_user_dir }}/workspace'
diff --git a/playbooks/legacy/neutron-rally-neutron/run.yaml b/playbooks/legacy/neutron-rally-neutron/run.yaml
index 1b115dd615..8529b49fc2 100644
--- a/playbooks/legacy/neutron-rally-neutron/run.yaml
+++ b/playbooks/legacy/neutron-rally-neutron/run.yaml
@@ -1,7 +1,11 @@
- hosts: all
name: Autoconverted job legacy-rally-dsvm-neutron-neutron from old job gate-rally-dsvm-neutron-neutron-ubuntu-xenial
tasks:
-
+ - name: Ensure tox is installed
+ include_role:
+ name: ensure-tox
+ vars:
+ ensure_global_symlinks: True
- name: Ensure legacy workspace directory
file:
path: '{{ ansible_user_dir }}/workspace'
diff --git a/playbooks/legacy/neutron-tempest-ovsfw/run.yaml b/playbooks/legacy/neutron-tempest-ovsfw/run.yaml
index 7d4eec8022..c1766dfb44 100644
--- a/playbooks/legacy/neutron-tempest-ovsfw/run.yaml
+++ b/playbooks/legacy/neutron-tempest-ovsfw/run.yaml
@@ -1,7 +1,11 @@
- hosts: all
name: Autoconverted job legacy-tempest-dsvm-neutron-ovsfw from old job gate-tempest-dsvm-neutron-ovsfw-ubuntu-xenial-nv
tasks:
-
+ - name: Ensure tox is installed
+ include_role:
+ name: ensure-tox
+ vars:
+ ensure_global_symlinks: True
- name: Ensure legacy workspace directory
file:
path: '{{ ansible_user_dir }}/workspace'