[ussuri][goal] Drop python 2.7 support and testing

OpenStack is dropping the py2.7 support in ussuri cycle.

Congress-tempest-plugin is ready with python 3 and ok to drop the
python 2.7 support.

Complete discussion & schedule can be found in
- http://lists.openstack.org/pipermail/openstack-discuss/2019-October/010142.html
- https://etherpad.openstack.org/p/drop-python2-support

Ussuri Communtiy-wide goal:
https://governance.openstack.org/tc/goals/selected/ussuri/drop-py27.html

Depends-On: https://review.opendev.org/#/c/693631/
Change-Id: I47cda983c99ec6fb05956f09a0b395350a97d791
This commit is contained in:
Ghanshyam Mann 2019-11-15 03:08:47 +00:00
parent 49cf9efc57
commit 21fe3ce217
11 changed files with 10 additions and 395 deletions

View File

@ -1,18 +1,8 @@
- job:
name: congress-tempest-py2-mysql-train
parent: congress-tempest-py2
override-checkout: stable/train
- job:
name: congress-tempest-py3-mysql-train
parent: congress-tempest-py3
override-checkout: stable/train
- job:
name: congress-tempest-py2-mysql-stein
parent: congress-tempest-py2
override-checkout: stable/stein
- job:
name: congress-tempest-py3-mysql-stein
parent: congress-tempest-py3
@ -90,12 +80,6 @@
post-run: playbooks/legacy/congress-legacy-pe-replicated-base/post.yaml
timeout: 6000
- job:
name: congress-legacy-devstack-api-mysql
parent: congress-legacy-devstack-api-base
vars:
database: mysql
- job:
name: congress-legacy-devstack-api-postgresql
parent: congress-legacy-devstack-api-base
@ -138,13 +122,6 @@
vars:
database: postgresql
- job:
name: congress-legacy-devstack-api-mysql-rocky
parent: congress-legacy-devstack-api-mysql
run: playbooks/legacy/congress-devstack-api-py27-rocky/run.yaml
post-run: playbooks/legacy/congress-devstack-api-py27-rocky/post.yaml
nodeset: openstack-single-node-xenial
- job:
name: congress-legacy-devstack-api-py35-mysql-rocky
parent: congress-legacy-devstack-py35-api-mysql
@ -152,13 +129,6 @@
post-run: playbooks/legacy/congress-devstack-api-py35-rocky/post.yaml
nodeset: openstack-single-node-xenial
- job:
name: congress-legacy-devstack-api-mysql-queens
parent: congress-legacy-devstack-api-mysql
run: playbooks/legacy/congress-devstack-api-py27-queens/run.yaml
post-run: playbooks/legacy/congress-devstack-api-py27-queens/post.yaml
nodeset: openstack-single-node-xenial
- job:
name: congress-legacy-devstack-api-py35-mysql-queens
parent: congress-legacy-devstack-py35-api-mysql
@ -171,22 +141,16 @@
- check-requirements
- tempest-plugin-jobs
- publish-openstack-docs-pti
- openstack-python3-train-jobs
- openstack-python3-ussuri-jobs
check:
jobs:
- congress-tempest-py2-mysql
- congress-tempest-py3-mysql
- congress-tempest-replicated-postgresql
- congress-tempest-py2-mysql-train
- congress-tempest-py3-mysql-train
- congress-tempest-py2-mysql-stein
- congress-tempest-py3-mysql-stein
- congress-legacy-devstack-api-mysql-rocky
- congress-legacy-devstack-api-py35-mysql-rocky
- congress-legacy-devstack-api-mysql-queens
- congress-legacy-devstack-api-py35-mysql-queens
gate:
queue: congress
jobs:
- congress-tempest-py2-mysql
- congress-tempest-py3-mysql

View File

@ -61,6 +61,7 @@
export DEVSTACK_GATE_TEMPEST=1
export DEVSTACK_GATE_TEMPEST_REGEX="congress_tempest_plugin"
export DEVSTACK_GATE_NEUTRON=1
export DEVSTACK_GATE_USE_PYTHON3=1
export PROJECTS="openstack/congress $PROJECTS"
export PROJECTS="openstack/congress-dashboard $PROJECTS"
export PROJECTS="openstack/python-congressclient $PROJECTS"

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

View File

@ -1,90 +0,0 @@
- hosts: all
name: Autoconverted job legacy-congress-dsvm-api-mysql from old job gate-congress-dsvm-api-mysql-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 heat https://opendev.org/openstack/heat
enable_plugin congress https://opendev.org/openstack/congress
enable_plugin murano https://opendev.org/openstack/murano
enable_plugin aodh https://opendev.org/openstack/aodh
enable_plugin mistral https://opendev.org/openstack/mistral
enable_plugin neutron https://opendev.org/openstack/neutron
# To deploy congress as multi-process (api, pe, datasources)
CONGRESS_MULTIPROCESS_DEPLOYMENT=True
CONGRESS_EXPOSE_ENCRYPTION_KEY_FOR_TEST=True
TEMPEST_PLUGINS='/opt/stack/new/congress-tempest-plugin /opt/stack/new/telemetry-tempest-plugin /opt/stack/new/murano-tempest-plugin /opt/stack/new/heat-tempest-plugin'
EOF
executable: /bin/bash
chdir: '{{ ansible_user_dir }}/workspace'
environment: '{{ zuul | zuul_legacy_vars }}'
- shell:
cmd: |
set -e
set -x
ENABLED_SERVICES=s-proxy,s-object,s-container,s-account,
ENABLED_SERVICES+=neutron-qos
export PYTHONUNBUFFERED=true
export DEVSTACK_GATE_TEMPEST=1
export DEVSTACK_GATE_TEMPEST_REGEX="congress_tempest_plugin"
export DEVSTACK_GATE_NEUTRON=1
export PROJECTS="openstack/congress $PROJECTS"
export PROJECTS="openstack/congress-dashboard $PROJECTS"
export PROJECTS="openstack/python-congressclient $PROJECTS"
export PROJECTS="openstack/congress-tempest-plugin $PROJECTS"
export PROJECTS="openstack/murano $PROJECTS"
export PROJECTS="openstack/aodh $PROJECTS"
export PROJECTS="openstack/mistral $PROJECTS"
export PROJECTS="openstack/python-mistralclient $PROJECTS"
export PROJECTS="openstack/mistral-tempest-plugin $PROJECTS"
export PROJECTS="openstack/murano-dashboard $PROJECTS"
export PROJECTS="openstack/python-muranoclient $PROJECTS"
export PROJECTS="openstack/python-aodhclient $PROJECTS"
export PROJECTS="openstack/telemetry-tempest-plugin $PROJECTS"
export PROJECTS="openstack/murano-tempest-plugin $PROJECTS"
export PROJECTS="openstack/heat-tempest-plugin $PROJECTS"
export ENABLED_SERVICES
export BRANCH_OVERRIDE=stable/queens
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
fi
if [ "{{ database }}" == "postgresql" ] ; then
export DEVSTACK_GATE_POSTGRES=1
fi
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 }}'

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

View File

@ -1,104 +0,0 @@
- hosts: all
name: Autoconverted job legacy-congress-dsvm-api-mysql from old job gate-congress-dsvm-api-mysql-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 heat https://opendev.org/openstack/heat
enable_plugin congress https://opendev.org/openstack/congress
enable_plugin murano https://opendev.org/openstack/murano
enable_plugin aodh https://opendev.org/openstack/aodh
enable_plugin mistral https://opendev.org/openstack/mistral
enable_plugin monasca-api https://opendev.org/openstack/monasca-api
enable_plugin neutron https://opendev.org/openstack/neutron
# To deploy congress as multi-process (api, pe, datasources)
CONGRESS_MULTIPROCESS_DEPLOYMENT=True
CONGRESS_EXPOSE_ENCRYPTION_KEY_FOR_TEST=True
ENABLE_CONGRESS_Z3=True
USE_Z3_RELEASE=4.7.1
TEMPEST_PLUGINS='/opt/stack/new/congress-tempest-plugin /opt/stack/new/telemetry-tempest-plugin /opt/stack/new/murano-tempest-plugin /opt/stack/new/heat-tempest-plugin /opt/stack/new/mistral-tempest-plugin /opt/stack/new/monasca-tempest-plugin'
EOF
executable: /bin/bash
chdir: '{{ ansible_user_dir }}/workspace'
environment: '{{ zuul | zuul_legacy_vars }}'
- shell:
cmd: |
set -e
set -x
ENABLED_SERVICES=s-proxy,s-object,s-container,s-account,
ENABLED_SERVICES+=neutron-qos
export SERVICE_TIMEOUT=120 # default too short for this job
export PYTHONUNBUFFERED=true
export DEVSTACK_GATE_TEMPEST=1
export DEVSTACK_GATE_TEMPEST_REGEX="congress_tempest_plugin"
export DEVSTACK_GATE_NEUTRON=1
export PROJECTS="openstack/congress $PROJECTS"
export PROJECTS="openstack/congress-dashboard $PROJECTS"
export PROJECTS="openstack/python-congressclient $PROJECTS"
export PROJECTS="openstack/congress-tempest-plugin $PROJECTS"
export PROJECTS="openstack/murano $PROJECTS"
export PROJECTS="openstack/aodh $PROJECTS"
export PROJECTS="openstack/mistral $PROJECTS"
export PROJECTS="openstack/python-mistralclient $PROJECTS"
export PROJECTS="openstack/mistral-tempest-plugin $PROJECTS"
export PROJECTS="openstack/murano-dashboard $PROJECTS"
export PROJECTS="openstack/python-muranoclient $PROJECTS"
export PROJECTS="openstack/python-aodhclient $PROJECTS"
export PROJECTS="openstack/telemetry-tempest-plugin $PROJECTS"
export PROJECTS="openstack/murano-tempest-plugin $PROJECTS"
export PROJECTS="openstack/heat-tempest-plugin $PROJECTS"
export PROJECTS="openstack/monasca-api $PROJECTS"
export PROJECTS="openstack/monasca-persister $PROJECTS"
export PROJECTS="openstack/monasca-common $PROJECTS"
export PROJECTS="openstack/monasca-agent $PROJECTS"
export PROJECTS="openstack/monasca-notification $PROJECTS"
export PROJECTS="openstack/monasca-thresh $PROJECTS"
export PROJECTS="openstack/monasca-statsd $PROJECTS"
export PROJECTS="openstack/python-monascaclient $PROJECTS"
export PROJECTS="openstack/monasca-grafana-datasource $PROJECTS"
export PROJECTS="openstack/monasca-ui $PROJECTS"
export PROJECTS="openstack/monasca-tempest-plugin $PROJECTS"
export ENABLED_SERVICES
export BRANCH_OVERRIDE=stable/rocky
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
fi
if [ "{{ database }}" == "postgresql" ] ; then
export DEVSTACK_GATE_POSTGRES=1
fi
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 }}'

View File

@ -56,6 +56,7 @@
export PYTHONUNBUFFERED=true
export DEVSTACK_GATE_TEMPEST=1
export DEVSTACK_GATE_USE_PYTHON3=1
export DEVSTACK_GATE_TEMPEST_REGEX="congress_tempest_plugin"
export DEVSTACK_GATE_NEUTRON=1
export PROJECTS="openstack/congress $PROJECTS"

View File

@ -0,0 +1,6 @@
---
upgrade:
- |
Python 2.7 support has been dropped. Last release of Congress-tempest-plugin
to support python 2.7 is OpenStack Train. The minimum version of Python now
supported by Congress-tempest-plugin is Python 3.6.

View File

@ -13,8 +13,6 @@ classifier =
License :: OSI Approved :: Apache Software License
Operating System :: POSIX :: Linux
Programming Language :: Python
Programming Language :: Python :: 2
Programming Language :: Python :: 2.7
Programming Language :: Python :: 3
Programming Language :: Python :: 3.5
Programming Language :: Python :: 3.6

View File

@ -5,7 +5,6 @@
hacking>=1.1.0,<1.2.0 # Apache-2.0
coverage!=4.4,>=4.0 # Apache-2.0
sphinx!=1.6.6,!=1.6.7,>=1.6.2,<2.0.0;python_version=='2.7' # BSD
sphinx!=1.6.6,!=1.6.7,!=2.1.0,>=1.6.2;python_version>='3.4' # BSD
openstackdocstheme>=1.20.0 # Apache-2.0

View File

@ -1,6 +1,6 @@
[tox]
minversion = 2.0
envlist = py37,py27,pep8
envlist = py37,pep8
skipsdist = True
[testenv]