Switch functional/install jobs to Zuulv3 syntax
This patch switches from legacy jobs to standard jobs (neutron-functional for functional jobs) Clean up relevant files from legacy jobs Remove hook calls in install jobs as they did nothing TODO: not sure what to do about the install jobs, should we keep them? Change-Id: If27b989195999d202fb819b01fe085c143b920f4
This commit is contained in:
Bernard Cafarelli
committed by
Lajos Katona
parent
7b00569276
commit
49c7e585a9
12 changed files with 40 additions and 374 deletions
60
.zuul.yaml
60
.zuul.yaml
@@ -1,13 +1,35 @@
- job:
name:networking-bgpvpn-bagpipe-dsvm-functional
parent:legacy-dsvm-base
run:playbooks/networking-bgpvpn-bagpipe-dsvm-functional/run.yaml
post-run:playbooks/networking-bgpvpn-bagpipe-dsvm-functional/post.yaml
timeout:7800
name:networking-bgpvpn-functional-bagpipe
parent:neutron-functional
required-projects:
- openstack/devstack-gate
- openstack/networking-bagpipe
- openstack/neutron
- openstack/networking-bgpvpn
- openstack/networking-bagpipe
vars:
project_name:networking-bgpvpn
devstack_localrc:
NETWORKING_BGPVPN_DRIVER:BGPVPN:BaGPipe:networking_bgpvpn.neutron.services.service_drivers.bagpipe.bagpipe_v2.BaGPipeBGPVPNDriver:default
BAGPIPE_DATAPLANE_DRIVER_IPVPN:ovs
BAGPIPE_BGP_PEERS:"-"
devstack_plugins:
networking-bagpipe:https://opendev.org/openstack/networking-bagpipe
networking-bgpvpn:https://opendev.org/openstack/networking-bgpvpn
neutron:https://opendev.org/openstack/neutron
- job:
name:networking-bgpvpn-functional-full
parent:neutron-functional
required-projects:
- openstack/neutron
- openstack/networking-bgpvpn
- openstack/networking-bagpipe
- openstack/networking-odl
- openstack/horizon
vars:
project_name:networking-bgpvpn
devstack_plugins:
networking-bgpvpn:https://opendev.org/openstack/networking-bgpvpn
neutron:https://opendev.org/openstack/neutron
- job:
name:networking-bgpvpn-bagpipe-dsvm-install
@@ -20,20 +42,6 @@
- openstack/networking-bagpipe
- openstack/networking-bgpvpn
- job:
name:networking-bgpvpn-dsvm-functional
parent:legacy-dsvm-base
run:playbooks/networking-bgpvpn-dsvm-functional/run.yaml
post-run:playbooks/networking-bgpvpn-dsvm-functional/post.yaml
timeout:7800
required-projects:
- openstack/devstack-gate
- openstack/networking-bgpvpn
- openstack/neutron
- openstack/networking-bagpipe
- openstack/networking-odl
- openstack/horizon
- job:
name:networking-bgpvpn-dsvm-install
parent:legacy-dsvm-base
@@ -80,6 +88,10 @@
required-projects:
- openstack/networking-bagpipe
- openstack/horizon
- openstack-tox-py38:
required-projects:
- openstack/networking-bagpipe
- openstack/horizon
- neutron-tempest-plugin-bgpvpn-bagpipe:
irrelevant-files:
- ^(test-|)requirements.txt$
@@ -89,7 +101,7 @@
- openstack/neutron
- openstack/networking-bagpipe
- openstack/horizon
- networking-bgpvpn-dsvm-functional
- networking-bgpvpn-functional-full
gate:
jobs:
- openstack-tox-lower-constraints:
@@ -113,9 +125,9 @@
irrelevant-files:
- ^(test-|)requirements.txt$
- ^setup.cfg$
- networking-bgpvpn-dsvm-functional
- networking-bgpvpn-functional-full
experimental:
jobs:
- networking-bgpvpn-dsvm-install
- networking-bgpvpn-bagpipe-dsvm-install
- networking-bgpvpn-bagpipe-dsvm-functional
- networking-bgpvpn-functional-bagpipe
@@ -4,6 +4,7 @@
libpq-dev [platform:dpkg]
mysql-client [platform:dpkg]
mysql-server [platform:dpkg]
postgresql
postgresql-client [platform:dpkg]
postgresql [test]
postgresql-client [platform:dpkg test]
postgresql-devel [platform:rpm test]
postgresql-server [platform:rpm test]
@@ -1,22 +0,0 @@
#!/bin/sh
set -xe
testtype=${1:-"unknown"}
GATE_DEST=$BASE/new
sudo modprobe bridge
case "$testtype" in
dsvm-bagpipe-functional*|dsvm-functional*)
# Used by configure_for_func_testing
DEVSTACK_PATH=$GATE_DEST/devstack
IS_GATE=True
source "$GATE_DEST"/neutron/tools/configure_for_func_testing.sh
configure_host_for_func_testing
sudo chown -R stack:stack /opt/stack
;;
*)
$GATE_DEST/devstack-gate/devstack-vm-gate.sh
esac
@@ -1,48 +0,0 @@
#!/usr/bin/env bash
set -xe
NETWORKING_BGPVPN_DIR="$BASE/new/networking-bgpvpn"
LOGS=/opt/stack/logs
GATE_STACK_USER=stack
SCRIPTS_DIR="/usr/os-testr-env/bin/"
typetest=${1:-"unknown"}
function generate_testr_results {
sudo -H -u $GATE_STACK_USER chmod o+rw .
sudo -H -u $GATE_STACK_USER chmod o+rw -R .stestr
if [ -f ".stestr/0" ] ; then
.tox/$venv/bin/subunit-1to2 < .stestr/0 > ./stestr.subunit
$SCRIPTS_DIR/subunit2html ./stestr.subunit testr_results.html
gzip -9 ./stestr.subunit
gzip -9 ./testr_results.html
sudo mv *.gz $LOGS
fi
}
case "$typetest" in
dsvm-bagpipe-functional*|dsvm-functional*)
cd $NETWORKING_BGPVPN_DIR
sudo chown -R $GATE_STACK_USER:$GATE_STACK_USER .
# Run tests
venv=${typetest/dsvm-bagpipe/dsvm}
echo "Running networking-bgpvpn $venv test suite"
set +e
sudo -H -u $GATE_STACK_USER tox -e ${venv}
testr_exit_code=$?
set -e
# move and zip tox logs into log directory
sudo mv $NETWORKING_BGPVPN_DIR/.tox/$venv/log /opt/stack/logs/tox
sudo -H -u $GATE_STACK_USER chmod o+rw -R /opt/stack/logs/tox/
gzip -9 /opt/stack/logs/tox/*.log
# Collect and parse results
generate_testr_results
exit $testr_exit_code
;;
*)
;;
esac
@@ -1,2 +0,0 @@
# place holder until we have something useful to do here
@@ -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
@@ -1,80 +0,0 @@
- hosts:all
name:Autoconverted job legacy-networking-bgpvpn-bagpipe-dsvm-functional from old
job gate-networking-bgpvpn-bagpipe-dsvm-functional-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
cat << 'EOF' >>"/tmp/dg-local.conf"
[[local|localrc]]
enable_plugin networking-bgpvpn https://opendev.org/openstack/networking-bgpvpn
EOF
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 BRANCH_OVERRIDE=default
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
fi
# Because we are testing a non standard project, add
# our project repository. This makes zuul do the right
# reference magic for testing changes.
export PROJECTS="openstack/networking-bgpvpn $PROJECTS"
export PROJECTS="openstack/networking-bagpipe $PROJECTS"
# Keep localrc to be able to set some vars in pre_test_hook
export KEEP_LOCALRC=1
function pre_test_hook {
. $BASE/new/networking-bgpvpn/devstack/pre_test_hook.sh dsvm-bagpipe-functional
}
export -f pre_test_hook
function gate_hook {
. $BASE/new/networking-bgpvpn/devstack/gate_hook.sh dsvm-bagpipe-functional
}
export -f gate_hook
function post_test_hook {
. $BASE/new/networking-bgpvpn/devstack/post_test_hook.sh dsvm-bagpipe-functional
}
export -f post_test_hook
export DEVSTACK_GATE_SETTINGS=/opt/stack/new/networking-bgpvpn/devstack/devstack-gate-bagpipe-rc
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 }}'
@@ -56,21 +56,6 @@
# Keep localrc to be able to set some vars in pre_test_hook
export KEEP_LOCALRC=1
function pre_test_hook {
. $BASE/new/networking-bgpvpn/devstack/pre_test_hook.sh dsvm-bagpipe-install
}
export -f pre_test_hook
function gate_hook {
. $BASE/new/networking-bgpvpn/devstack/gate_hook.sh dsvm-bagpipe-install
}
export -f gate_hook
function post_test_hook {
. $BASE/new/networking-bgpvpn/devstack/post_test_hook.sh dsvm-bagpipe-install
}
export -f post_test_hook
export DEVSTACK_GATE_SETTINGS=/opt/stack/new/networking-bgpvpn/devstack/devstack-gate-bagpipe-rc
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
@@ -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
@@ -1,78 +0,0 @@
- hosts:all
name:Autoconverted job legacy-networking-bgpvpn-dsvm-functional from old job gate-networking-bgpvpn-dsvm-functional-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
cat << 'EOF' >>"/tmp/dg-local.conf"
[[local|localrc]]
enable_plugin networking-bgpvpn https://opendev.org/openstack/networking-bgpvpn
EOF
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 BRANCH_OVERRIDE=default
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
fi
# Because we are testing a non standard project, add
# our project repository. This makes zuul do the right
# reference magic for testing changes.
export PROJECTS="openstack/networking-bgpvpn $PROJECTS"
# Keep localrc to be able to set some vars in pre_test_hook
export KEEP_LOCALRC=1
function pre_test_hook {
. $BASE/new/networking-bgpvpn/devstack/pre_test_hook.sh dsvm-functional
}
export -f pre_test_hook
function gate_hook {
. $BASE/new/networking-bgpvpn/devstack/gate_hook.sh dsvm-functional
}
export -f gate_hook
function post_test_hook {
. $BASE/new/networking-bgpvpn/devstack/post_test_hook.sh dsvm-functional
}
export -f post_test_hook
export DEVSTACK_GATE_SETTINGS=/opt/stack/new/networking-bgpvpn/devstack/devstack-gate-rc
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 }}'
@@ -54,21 +54,6 @@
# Keep localrc to be able to set some vars in pre_test_hook
export KEEP_LOCALRC=1
function pre_test_hook {
. $BASE/new/networking-bgpvpn/devstack/pre_test_hook.sh dsvm-install
}
export -f pre_test_hook
function gate_hook {
. $BASE/new/networking-bgpvpn/devstack/gate_hook.sh dsvm-install
}
export -f gate_hook
function post_test_hook {
. $BASE/new/networking-bgpvpn/devstack/post_test_hook.sh dsvm-install
}
export -f post_test_hook
export DEVSTACK_GATE_SETTINGS=/opt/stack/new/networking-bgpvpn/devstack/devstack-gate-rc
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
@@ -1,57 +0,0 @@
#!/bin/bash -xe
# This script will be run by OpenStack CI before unit tests are run,
# it sets up the test system as needed.
# Developers should setup their test systems in a similar way.
# This setup needs to be run as a user that can run sudo.
# The root password for the MySQL database; pass it in via
# MYSQL_ROOT_PW.
DB_ROOT_PW=${MYSQL_ROOT_PW:-insecure_slave}
# This user and its password are used by the tests, if you change it,
# your tests might fail.
DB_USER=openstack_citest
DB_PW=openstack_citest
sudo -H mysqladmin -u root password $DB_ROOT_PW
# It's best practice to remove anonymous users from the database. If
# a anonymous user exists, then it matches first for connections and
# other connections from that host will not work.
sudo -H mysql -u root -p$DB_ROOT_PW -h localhost -e "
DELETE FROM mysql.user WHERE User='';
FLUSH PRIVILEGES;
GRANT ALL PRIVILEGES ON *.*
TO '$DB_USER'@'%' identified by '$DB_PW' WITH GRANT OPTION;"
# Now create our database.
mysql -u $DB_USER -p$DB_PW -h 127.0.0.1 -e "
SET default_storage_engine=MYISAM;
DROP DATABASE IF EXISTS openstack_citest;
CREATE DATABASE openstack_citest CHARACTER SET utf8;"
# Same for PostgreSQL
# The root password for the PostgreSQL database; pass it in via
# POSTGRES_ROOT_PW.
DB_ROOT_PW=${POSTGRES_ROOT_PW:-insecure_slave}
# Setup user
root_roles=$(sudo -H -u postgres psql -t -c "
SELECT 'HERE' from pg_roles where rolname='$DB_USER'")
if [[ ${root_roles} == *HERE ]];then
sudo -H -u postgres psql -c "ALTER ROLE $DB_USER WITH SUPERUSER LOGIN PASSWORD '$DB_PW'"
else
sudo -H -u postgres psql -c "CREATE ROLE $DB_USER WITH SUPERUSER LOGIN PASSWORD '$DB_PW'"
fi
# Store password for tests
cat << EOF > $HOME/.pgpass
*:*:*:$DB_USER:$DB_PW
EOF
chmod 0600 $HOME/.pgpass
# Now create our database
psql -h 127.0.0.1 -U $DB_USER -d template1 -c "DROP DATABASE IF EXISTS openstack_citest"
createdb -h 127.0.0.1 -U $DB_USER -l C -T template0 -E utf8 openstack_citest
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.