From 990c3732d4c958197428ece880bbce200e10f286 Mon Sep 17 00:00:00 2001 From: Slawek Kaplonski Date: Sun, 3 May 2020 09:44:06 +0200 Subject: [PATCH] Migrate neutron grenade jobs to be native Zuul v3 This commit migrates neutron-grenade multinode jobs. OVN job will be switched later. For this ussuri backport, this also re-enables these jobs Depends-On: https://review.opendev.org/#/c/736750/ Change-Id: Ibe613a48116aed9cbcc7c689a50c1ef9fba60f05 (cherry picked from commit bc2a23a36a6051aed66f36b9ea86df5fa0dc4319) --- .../neutron-grenade-dvr-multinode/post.yaml | 15 ---- .../neutron-grenade-dvr-multinode/run.yaml | 60 ------------- .../neutron-grenade-multinode/post.yaml | 15 ---- .../legacy/neutron-grenade-multinode/run.yaml | 60 ------------- zuul.d/grenade.yaml | 86 ++++++++++++++++--- zuul.d/project.yaml | 12 +-- 6 files changed, 80 insertions(+), 168 deletions(-) delete mode 100644 playbooks/legacy/neutron-grenade-dvr-multinode/post.yaml delete mode 100644 playbooks/legacy/neutron-grenade-dvr-multinode/run.yaml delete mode 100644 playbooks/legacy/neutron-grenade-multinode/post.yaml delete mode 100644 playbooks/legacy/neutron-grenade-multinode/run.yaml diff --git a/playbooks/legacy/neutron-grenade-dvr-multinode/post.yaml b/playbooks/legacy/neutron-grenade-dvr-multinode/post.yaml deleted file mode 100644 index e07f5510ae7..00000000000 --- a/playbooks/legacy/neutron-grenade-dvr-multinode/post.yaml +++ /dev/null @@ -1,15 +0,0 @@ -- 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=/logs/** - - --include=*/ - - --exclude=* - - --prune-empty-dirs diff --git a/playbooks/legacy/neutron-grenade-dvr-multinode/run.yaml b/playbooks/legacy/neutron-grenade-dvr-multinode/run.yaml deleted file mode 100644 index 9e96b297f1f..00000000000 --- a/playbooks/legacy/neutron-grenade-dvr-multinode/run.yaml +++ /dev/null @@ -1,60 +0,0 @@ -- hosts: primary - name: Autoconverted job legacy-grenade-dsvm-neutron-dvr-multinode from old job gate-grenade-dsvm-neutron-dvr-multinode-ubuntu-xenial-nv - tasks: - - - 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_NEUTRON=1 - export DEVSTACK_GATE_CONFIGDRIVE=0 - export DEVSTACK_GATE_GRENADE=pullup - export DEVSTACK_GATE_USE_PYTHON3=True - # Test DVR upgrade on multinode - export PROJECTS="openstack/grenade $PROJECTS" - export DEVSTACK_GATE_NEUTRON_DVR=1 - export BRANCH_OVERRIDE=default - if [ "$BRANCH_OVERRIDE" != "default" ] ; then - export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE - fi - export DEVSTACK_GATE_TOPOLOGY="multinode" - - # Disable some services to use less memory - # Cinder-backup - export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service c-bak" - # Etcd - export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service etcd3" - # Swift - export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service s-account" - export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service s-container" - export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service s-container-sync" - export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service s-object" - export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service s-proxy" - - 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-grenade-multinode/post.yaml b/playbooks/legacy/neutron-grenade-multinode/post.yaml deleted file mode 100644 index e07f5510ae7..00000000000 --- a/playbooks/legacy/neutron-grenade-multinode/post.yaml +++ /dev/null @@ -1,15 +0,0 @@ -- 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=/logs/** - - --include=*/ - - --exclude=* - - --prune-empty-dirs diff --git a/playbooks/legacy/neutron-grenade-multinode/run.yaml b/playbooks/legacy/neutron-grenade-multinode/run.yaml deleted file mode 100644 index c30bfecf809..00000000000 --- a/playbooks/legacy/neutron-grenade-multinode/run.yaml +++ /dev/null @@ -1,60 +0,0 @@ -- hosts: primary - name: Autoconverted job legacy-grenade-dsvm-neutron-multinode from old job gate-grenade-dsvm-neutron-multinode-ubuntu-xenial - tasks: - - - 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_NEUTRON=1 - export DEVSTACK_GATE_CONFIGDRIVE=0 - export DEVSTACK_GATE_GRENADE=pullup - export DEVSTACK_GATE_USE_PYTHON3=True - export PROJECTS="openstack/grenade $PROJECTS" - # Default to non DVR - export DEVSTACK_GATE_NEUTRON_DVR=0 - export BRANCH_OVERRIDE=default - if [ "$BRANCH_OVERRIDE" != "default" ] ; then - export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE - fi - export DEVSTACK_GATE_TOPOLOGY="multinode" - - # Disable some services to use less memory - # Cinder - export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service c-bak" - # Etcd - export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service etcd3" - # Swift - export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service s-account" - export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service s-container" - export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service s-container-sync" - export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service s-object" - export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service s-proxy" - - 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/zuul.d/grenade.yaml b/zuul.d/grenade.yaml index ccaf1b46864..657259781e3 100644 --- a/zuul.d/grenade.yaml +++ b/zuul.d/grenade.yaml @@ -1,12 +1,8 @@ - job: name: neutron-grenade-multinode - parent: legacy-dsvm-base-multinode - run: playbooks/legacy/neutron-grenade-multinode/run.yaml - post-run: playbooks/legacy/neutron-grenade-multinode/post.yaml - timeout: 10800 + parent: grenade-multinode required-projects: - openstack/grenade - - openstack/devstack-gate - openstack/neutron irrelevant-files: &irrelevant-files - ^(test-|)requirements.txt$ @@ -20,18 +16,88 @@ - ^tox.ini$ - ^vagrant/.*$ - ^migration/.*$ + vars: + devstack_services: + c-bak: false + etcd: false + s-account: false + s-container: false + s-object: false + s-proxy: false - job: name: neutron-grenade-dvr-multinode - parent: legacy-dsvm-base-multinode - run: playbooks/legacy/neutron-grenade-dvr-multinode/run.yaml - post-run: playbooks/legacy/neutron-grenade-dvr-multinode/post.yaml - timeout: 7500 + parent: grenade-multinode + pre-run: playbooks/dvr-multinode-scenario-pre-run.yaml + roles: + - zuul: openstack/neutron-tempest-plugin required-projects: - openstack/grenade - - openstack/devstack-gate - openstack/neutron irrelevant-files: *irrelevant-files + vars: + devstack_services: + c-bak: false + etcd: false + s-account: false + s-container: false + s-object: false + s-proxy: false + devstack_local_conf: + post-config: + $NEUTRON_CONF: + DEFAULT: + router_distributed: True + # NOTE(slaweq): We can get rid of this hardcoded absolute path when + # devstack-tempest job will be switched to use lib/neutron instead of + # lib/neutron-legacy + "/$NEUTRON_CORE_PLUGIN_CONF": + ml2: + mechanism_drivers: openvswitch,l2population + agent: + enable_distributed_routing: True + l2_population: True + tunnel_types: vxlan + arp_responder: True + ovs: + tunnel_bridge: br-tun + bridge_mappings: public:br-ex + $NEUTRON_L3_CONF: + DEFAULT: + agent_mode: dvr + agent: + availability_zone: nova + $NEUTRON_DHCP_CONF: + agent: + availability_zone: nova + group-vars: + subnode: + devstack_services: + q-agt: true + q-l3: true + q-meta: true + devstack_local_conf: + post-config: + $NEUTRON_CONF: + DEFAULT: + router_distributed: True + # NOTE(slaweq): We can get rid of this hardcoded absolute path when + # devstack-tempest job will be switched to use lib/neutron instead of + # lib/neutron-legacy + "/$NEUTRON_CORE_PLUGIN_CONF": + agent: + enable_distributed_routing: True + l2_population: True + tunnel_types: vxlan + arp_responder: True + ovs: + tunnel_bridge: br-tun + bridge_mappings: public:br-ex + $NEUTRON_L3_CONF: + DEFAULT: + agent_mode: dvr_snat + agent: + availability_zone: nova - job: name: neutron-ovn-grenade diff --git a/zuul.d/project.yaml b/zuul.d/project.yaml index abc90d2bc1e..6f43a8a39ff 100644 --- a/zuul.d/project.yaml +++ b/zuul.d/project.yaml @@ -18,10 +18,8 @@ - neutron-fullstack - neutron-fullstack-with-uwsgi - neutron-rally-task - # TODO(bcafarel): temporarily disable these jobs so we can get multiple - # gate fixes properly backported - #- neutron-grenade-multinode - #- neutron-grenade-dvr-multinode + - neutron-grenade-multinode + - neutron-grenade-dvr-multinode - neutron-tempest-linuxbridge - neutron-tempest-with-uwsgi - tempest-integrated-networking: @@ -96,10 +94,8 @@ - tempest-integrated-networking - neutron-tempest-linuxbridge - neutron-tempest-iptables_hybrid - # TODO(bcafarel): temporarily disable these jobs so we can get multiple - # gate fixes properly backported - #- neutron-grenade-multinode - #- neutron-grenade-dvr-multinode + - neutron-grenade-multinode + - neutron-grenade-dvr-multinode - tempest-slow-py3: irrelevant-files: *irrelevant-files - tempest-ipv6-only: