From 720ac632259b7c0d43a681b1dc4cf358b850601e Mon Sep 17 00:00:00 2001 From: Tim Burke Date: Mon, 13 Aug 2018 22:02:38 +0000 Subject: Use Swift's in-tree DSVM tests This is not a backport since devstack does not support Ocata with Zuul v3 jobs, instead it imports the legacy jobs from openstack-zuul-jobs as well as using the swift in-repo ones. Change-Id: I919c0b77ac4888350194f55a9c12e0742845024f Depends-On: https://review.openstack.org/600349 --- .zuul.yaml | 40 ++++++++++++-- .../post.yaml | 15 +++++ .../run.yaml | 64 ++++++++++++++++++++++ playbooks/swiftclient-dsvm-functional/post.yaml | 15 +++++ playbooks/swiftclient-dsvm-functional/run.yaml | 63 +++++++++++++++++++++ 5 files changed, 191 insertions(+), 6 deletions(-) create mode 100644 playbooks/swiftclient-dsvm-functional-identity-v3-only/post.yaml create mode 100644 playbooks/swiftclient-dsvm-functional-identity-v3-only/run.yaml create mode 100644 playbooks/swiftclient-dsvm-functional/post.yaml create mode 100644 playbooks/swiftclient-dsvm-functional/run.yaml diff --git a/.zuul.yaml b/.zuul.yaml index 2d001c1..be72547 100644 --- a/.zuul.yaml +++ b/.zuul.yaml @@ -1,3 +1,31 @@ +- job: + name: swiftclient-functional + description: | + Legacy swiftclient funcional jobs for Ocata only. + parent: legacy-dsvm-base + run: playbooks/swiftclient-dsvm-functional/run.yaml + post-run: playbooks/swiftclient-dsvm-functional/post.yaml + timeout: 6000 + required-projects: + - openstack-infra/devstack-gate + - openstack/python-swiftclient + - openstack/swift + +- job: + name: swiftclient-functional-identity-v3-only + parent: legacy-dsvm-base + description: | + Legacy swiftclient funcional jobs for Ocata only. + + This uses Identity API v3. + run: playbooks/swiftclient-dsvm-functional-identity-v3-only/run.yaml + post-run: playbooks/swiftclient-dsvm-functional-identity-v3-only/post.yaml + timeout: 6000 + required-projects: + - openstack-infra/devstack-gate + - openstack/python-swiftclient + - openstack/swift + - project: templates: - openstack-python-jobs @@ -9,18 +37,18 @@ - release-notes-jobs check: jobs: - - legacy-swift-dsvm-functional - - legacy-swift-dsvm-functional-identity-v3-only: + - swift-dsvm-functional + - swift-dsvm-functional-identity-v3-only: voting: false - - legacy-swiftclient-dsvm-functional - - legacy-swiftclient-dsvm-functional-identity-v3-only: + - swiftclient-functional + - swiftclient-functional-identity-v3-only: voting: false - openstack-tox-py36: voting: false gate: jobs: - - legacy-swift-dsvm-functional - - legacy-swiftclient-dsvm-functional + - swift-dsvm-functional + - swiftclient-functional post: jobs: - openstack-tox-cover diff --git a/playbooks/swiftclient-dsvm-functional-identity-v3-only/post.yaml b/playbooks/swiftclient-dsvm-functional-identity-v3-only/post.yaml new file mode 100644 index 0000000..e07f551 --- /dev/null +++ b/playbooks/swiftclient-dsvm-functional-identity-v3-only/post.yaml @@ -0,0 +1,15 @@ +- 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/swiftclient-dsvm-functional-identity-v3-only/run.yaml b/playbooks/swiftclient-dsvm-functional-identity-v3-only/run.yaml new file mode 100644 index 0000000..a90c27d --- /dev/null +++ b/playbooks/swiftclient-dsvm-functional-identity-v3-only/run.yaml @@ -0,0 +1,64 @@ +- hosts: all + name: Autoconverted job legacy-swiftclient-dsvm-functional-identity-v3-only from + old job gate-swiftclient-dsvm-functional-identity-v3-only-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-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 FUNCTEST_TIMEOUT=30 + # Disable all services + export DEVSTACK_GATE_NO_SERVICES=1 + # Add only what we want, keystone + swift + export DEVSTACK_GATE_SWIFT=1 + export DEVSTACK_GATE_KEYSTONE=1 + # Need to override default which is neutron enabled + export DEVSTACK_GATE_NEUTRON=0 + export DEVSTACK_GATE_TEMPEST=0 + export DEVSTACK_GATE_EXERCISES=0 + export DEVSTACK_GATE_INSTALL_TESTONLY=1 + export BRANCH_OVERRIDE=default + export DEVSTACK_PROJECT_FROM_GIT=python-swiftclient + if [ "$BRANCH_OVERRIDE" != "default" ] ; then + export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE + fi + if [ "-identity-v3-only" == "-identity-v3-only" ] ; then + export DEVSTACK_LOCAL_CONFIG="ENABLE_IDENTITY_V2=False" + fi + + function post_test_hook { + cd /opt/stack/new/python-swiftclient + # Launch V2 auth tests and v1 tests after. + sudo -H -u stack timeout -s 9 ${FUNCTEST_TIMEOUT}m tox -e func && \ + sudo -H -u stack SWIFT_TEST_CONFIG_FILE=/opt/stack/new/swift/test/sample.conf \ + timeout -s 9 ${FUNCTEST_TIMEOUT}m tox -e func + } + 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/swiftclient-dsvm-functional/post.yaml b/playbooks/swiftclient-dsvm-functional/post.yaml new file mode 100644 index 0000000..e07f551 --- /dev/null +++ b/playbooks/swiftclient-dsvm-functional/post.yaml @@ -0,0 +1,15 @@ +- 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/swiftclient-dsvm-functional/run.yaml b/playbooks/swiftclient-dsvm-functional/run.yaml new file mode 100644 index 0000000..b3060e1 --- /dev/null +++ b/playbooks/swiftclient-dsvm-functional/run.yaml @@ -0,0 +1,63 @@ +- hosts: all + name: Autoconverted job legacy-swiftclient-dsvm-functional from old job gate-swiftclient-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-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 FUNCTEST_TIMEOUT=30 + # Disable all services + export DEVSTACK_GATE_NO_SERVICES=1 + # Add only what we want, keystone + swift + export DEVSTACK_GATE_SWIFT=1 + export DEVSTACK_GATE_KEYSTONE=1 + # Need to override default which is neutron enabled + export DEVSTACK_GATE_NEUTRON=0 + export DEVSTACK_GATE_TEMPEST=0 + export DEVSTACK_GATE_EXERCISES=0 + export DEVSTACK_GATE_INSTALL_TESTONLY=1 + export BRANCH_OVERRIDE=default + export DEVSTACK_PROJECT_FROM_GIT=python-swiftclient + if [ "$BRANCH_OVERRIDE" != "default" ] ; then + export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE + fi + if [ "" == "-identity-v3-only" ] ; then + export DEVSTACK_LOCAL_CONFIG="ENABLE_IDENTITY_V2=False" + fi + + function post_test_hook { + cd /opt/stack/new/python-swiftclient + # Launch V2 auth tests and v1 tests after. + sudo -H -u stack timeout -s 9 ${FUNCTEST_TIMEOUT}m tox -e func && \ + sudo -H -u stack SWIFT_TEST_CONFIG_FILE=/opt/stack/new/swift/test/sample.conf \ + timeout -s 9 ${FUNCTEST_TIMEOUT}m tox -e func + } + 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 }}' -- cgit v1.2.1