Browse Source

Make neutron-fullstack job run py3

In the Neutron CI meeting on 2018-10-02 [1] we decided on the proper
approach for fullstack testing of Neutron in Zuul.  The approach is:

1. There should be only one fullstack CI job, named "neutron-fullstack"
2. The neutron-fullstack job should invoke python3 in tox.ini

This change implements the agreed-upon approach.
Switching the nodeset to newer OS will be handled in a separate step

[1] http://eavesdrop.openstack.org/meetings/neutron_ci/2018/neutron_ci.2018-10-02-16.00.html

Co-Authored-By: Nate Johnston <nate.johnston@redhat.com>
Change-Id: I37c1cb42b3a94532e7b7fea21a929a39fe63f00b
changes/49/604749/11
Bernard Cafarelli 3 years ago
parent
commit
e67d99b654
No known key found for this signature in database GPG Key ID: D148244A3C2462BD
6 changed files with 3 additions and 152 deletions
  1. +0
    -8
      .zuul.yaml
  2. +1
    -1
      neutron/tests/contrib/gate_hook.sh
  3. +0
    -80
      playbooks/legacy/neutron-fullstack-python36/post.yaml
  4. +0
    -54
      playbooks/legacy/neutron-fullstack-python36/run.yaml
  5. +1
    -0
      playbooks/legacy/neutron-fullstack/run.yaml
  6. +1
    -9
      tox.ini

+ 0
- 8
.zuul.yaml View File

@ -37,7 +37,6 @@
- neutron-tempest-dvr-ha-multinode-full
- neutron-tempest-iptables_hybrid
- neutron-grenade
- neutron-fullstack-python36
- ironic-tempest-dsvm-ipa-wholedisk-bios-agent_ipmitool-tinyipa:
voting: false
irrelevant-files: *tempest-irrelevant-files
@ -59,7 +58,6 @@
- neutron-grenade-multinode
- neutron-grenade-dvr-multinode
- neutron-grenade
- neutron-fullstack-python36
- tempest-full:
timeout: 10800
- tempest-full-py3:
@ -141,12 +139,6 @@
- ^releasenotes/.*$
- job:
name: neutron-fullstack-python36
parent: neutron-fullstack
run: playbooks/legacy/neutron-fullstack-python36/run.yaml
post-run: playbooks/legacy/neutron-fullstack-python36/post.yaml
- job:
name: neutron-rally-task
parent: rally-task-neutron


+ 1
- 1
neutron/tests/contrib/gate_hook.sh View File

@ -55,7 +55,7 @@ function load_rc_for_rally {
case $VENV in
"dsvm-functional"|"dsvm-fullstack"|"dsvm-functional-python35"|"dsvm-fullstack-python35")
"dsvm-functional"|"dsvm-fullstack"|"dsvm-functional-python35")
# The following need to be set before sourcing
# configure_for_func_testing.
GATE_STACK_USER=stack


+ 0
- 80
playbooks/legacy/neutron-fullstack-python36/post.yaml View File

@ -1,80 +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=**/*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

+ 0
- 54
playbooks/legacy/neutron-fullstack-python36/run.yaml View File

@ -1,54 +0,0 @@
- hosts: all
name: This is a Neutron Fullstack test suite running with Python 3.5
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-infra/devstack-gate
dest: devstack-gate
EOF
/usr/zuul-env/bin/zuul-cloner -m clonemap.yaml --cache-dir /opt/git \
git://git.openstack.org \
openstack-infra/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=0
export DEVSTACK_GATE_EXERCISES=0
export DEVSTACK_GATE_NEUTRON=1
export DEVSTACK_GATE_INSTALL_TESTONLY=1
export BRANCH_OVERRIDE=default
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
fi
function gate_hook {
bash -xe $BASE/new/neutron/neutron/tests/contrib/gate_hook.sh dsvm-fullstack-python35
}
export -f gate_hook
function post_test_hook {
bash -xe $BASE/new/neutron/neutron/tests/contrib/post_test_hook.sh dsvm-fullstack-python35
}
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 }}'

+ 1
- 0
playbooks/legacy/neutron-fullstack/run.yaml View File

@ -27,6 +27,7 @@
cmd: |
set -e
set -x
export USE_PYTHON3=true
export PYTHONUNBUFFERED=true
export DEVSTACK_GATE_TEMPEST=0
export DEVSTACK_GATE_EXERCISES=0


+ 1
- 9
tox.ini View File

@ -78,7 +78,7 @@ commands =
stestr run {posargs}
[testenv:dsvm-fullstack]
basepython = python2.7
basepython = python3
setenv = {[testenv]setenv}
{[testenv:common]setenv}
{[testenv:dsvm]setenv}
@ -92,14 +92,6 @@ commands =
{toxinidir}/tools/deploy_rootwrap.sh {toxinidir} {envdir}/etc {envdir}/bin
stestr run --concurrency 4 {posargs}
[testenv:dsvm-fullstack-python35]
basepython = python3.5
setenv = {[testenv:dsvm-fullstack]setenv}
deps =
{[testenv:dsvm-fullstack]deps}
commands =
{[testenv:dsvm-fullstack]commands}
[testenv:releasenotes]
basepython = python3
deps = -r{toxinidir}/doc/requirements.txt


Loading…
Cancel
Save