From a61105bd556a2f393893cc663e98ee462eff037f Mon Sep 17 00:00:00 2001 From: Nam Nguyen Hoai Date: Thu, 5 Oct 2017 13:39:25 +0700 Subject: [PATCH] Migrate to Zuul v3 Migrate all functional jobs and gate to zuul v3. We will have to migrate all other legacy jobs too later. This patch do step 1 in the docs: Move Legacy Jobs to Projects. Co-Authored-By: Dai Dang Van Needed-By: If7dfc17ccc93cd5d99cc899abf7c7cbe08a738dd Needed-By: I18b026fbfc1741ca397f36c8cbf24aa02c03f4b5 Change-Id: I5c230a5cdd9ee42eee218f84e678d4f155dfc953 --- .zuul.yaml | 177 ++++++++++++++++++ .../legacy/barbican-devstack-base/post.yaml | 15 ++ .../legacy/barbican-devstack-base/run.yaml | 65 +++++++ .../post.yaml | 15 ++ .../run.yaml | 74 ++++++++ .../barbican-devstack-tempest-base/post.yaml | 15 ++ .../barbican-devstack-tempest-base/run.yaml | 72 +++++++ .../grenade-devstack-barbican/post.yaml | 15 ++ .../legacy/grenade-devstack-barbican/run.yaml | 60 ++++++ 9 files changed, 508 insertions(+) create mode 100644 .zuul.yaml create mode 100644 playbooks/legacy/barbican-devstack-base/post.yaml create mode 100644 playbooks/legacy/barbican-devstack-base/run.yaml create mode 100644 playbooks/legacy/barbican-devstack-functional-base/post.yaml create mode 100644 playbooks/legacy/barbican-devstack-functional-base/run.yaml create mode 100644 playbooks/legacy/barbican-devstack-tempest-base/post.yaml create mode 100644 playbooks/legacy/barbican-devstack-tempest-base/run.yaml create mode 100644 playbooks/legacy/grenade-devstack-barbican/post.yaml create mode 100644 playbooks/legacy/grenade-devstack-barbican/run.yaml diff --git a/.zuul.yaml b/.zuul.yaml new file mode 100644 index 000000000..41198658d --- /dev/null +++ b/.zuul.yaml @@ -0,0 +1,177 @@ +- job: + name: barbican-devstack-functional-base + # start running with Pike + branches: ^(?!stable/ocata).*$ + parent: legacy-dsvm-base + vars: + database: sql + python_version: py27 + services: "tempest,rabbit,mysql,key" + required-projects: + - openstack-infra/devstack-gate + - openstack/barbican + - openstack/barbican-tempest-plugin + - openstack/python-barbicanclient + run: playbooks/legacy/barbican-devstack-functional-base/run + post-run: playbooks/legacy/barbican-devstack-functional-base/post + timeout: 4200 + +- job: + name: barbican-devstack-base + parent: legacy-base + vars: + database: sql + python_version: py27 + services: "tempest,keystone" + required-projects: + - openstack-dev/devstack + - openstack-infra/devstack-gate + - openstack/barbican + - openstack/barbican-tempest-plugin + - openstack/python-barbicanclient + run: playbooks/legacy/barbican-devstack-base/run + post-run: playbooks/legacy/barbican-devstack-base/post + timeout: 4200 + +- job: + name: barbican-devstack-tempest-base + parent: legacy-dsvm-base + vars: + python_version: py27 + database: sql + castellan_from_git: 0 + cursive: 0 + required-projects: + - openstack-infra/devstack-gate + - openstack/barbican + - openstack/barbican-tempest-plugin + - openstack/castellan + - openstack/cursive + - openstack/python-barbicanclient + - openstack/tempest + run: playbooks/legacy/barbican-devstack-tempest-base/run + post-run: playbooks/legacy/barbican-devstack-tempest-base/post + timeout: 4200 + +- job: + name: barbican-dogtag-devstack-functional-fedora-26 + nodeset: legacy-fedora-26 + parent: barbican-devstack-functional-base + vars: + services: "barbican-dogtag,tempest,rabbit,mysql,key" + plugin: dogtag + +- job: + name: barbican-kmip-devstack-functional + parent: barbican-devstack-functional-base + vars: + services: "barbican-pykmip,pykmip-server,tempest,rabbit,mysql,key" + plugin: kmip + +- job: + name: barbican-simple-crypto-devstack-functional + parent: barbican-devstack-functional-base + vars: + plugin: simple-crypto + +- job: + name: barbican-simple-crypto-devstack-functional-postgres + parent: barbican-devstack-functional-base + voting: false + vars: + database: postgres + plugin: simple-crypto + +- job: + name: barbican-simple-crypto-devstack-functional-py35 + parent: barbican-devstack-functional-base + vars: + python_version: py35 + plugin: simple-crypto + +- job: + name: barbican-dogtag-devstack-fedora-26 + nodeset: legacy-fedora-26 + parent: barbican-devstack-base + vars: + services: "barbican-dogtag,tempest,keystone" + plugin: dogtag + +- job: + name: barbican-simple-crypto-devstack + parent: barbican-devstack-base + vars: + plugin: simple-crypto + +- job: + name: barbican-simple-crypto-devstack-postgres + parent: barbican-devstack-base + voting: false + vars: + plugin: simple-crypto + database: postgres + +- job: + name: barbican-simple-crypto-devstack-tempest + parent: barbican-devstack-tempest-base + +- job: + name: barbican-simple-crypto-devstack-tempest-castellan-from-git + parent: barbican-devstack-tempest-base + vars: + castellan_from_git: 1 + +- job: + name: barbican-simple-crypto-devstack-tempest-cursive + parent: barbican-devstack-tempest-base + vars: + cursive: 1 + +- job: + name: barbican-simple-crypto-devstack-tempest-py35 + parent: barbican-devstack-tempest-base + voting: false + vars: + python_version: py35 + +- job: + name: grenade-devstack-barbican + parent: legacy-dsvm-base + # Start testing with pike + branches: ^(?!stable/ocata).*$ + irrelevant-files: + - ^(test-|)requirements.txt$ + - ^setup.cfg$ + post-run: playbooks/legacy/grenade-devstack-barbican/post + required-projects: + - openstack-dev/grenade + - openstack-infra/devstack-gate + - openstack/barbican + - openstack/barbican-tempest-plugin + - openstack/python-barbicanclient + run: playbooks/legacy/grenade-devstack-barbican/run + timeout: 7800 + +- project: + name: openstack/barbican + check: + jobs: + - barbican-simple-crypto-devstack-tempest + - barbican-simple-crypto-devstack-functional + - barbican-simple-crypto-devstack-functional-py35 + - barbican-simple-crypto-devstack-functional-postgres + - barbican-dogtag-devstack-functional-fedora-26 + - barbican-kmip-devstack-functional + - grenade-devstack-barbican + gate: + queue: barbican + jobs: + - barbican-simple-crypto-devstack-tempest + - barbican-simple-crypto-devstack-functional + - barbican-simple-crypto-devstack-functional-py35 + - barbican-kmip-devstack-functional + - barbican-dogtag-devstack-functional-fedora-26 + - grenade-devstack-barbican + experimental: + jobs: + - barbican-simple-crypto-devstack-tempest-py35 diff --git a/playbooks/legacy/barbican-devstack-base/post.yaml b/playbooks/legacy/barbican-devstack-base/post.yaml new file mode 100644 index 000000000..e07f5510a --- /dev/null +++ b/playbooks/legacy/barbican-devstack-base/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/legacy/barbican-devstack-base/run.yaml b/playbooks/legacy/barbican-devstack-base/run.yaml new file mode 100644 index 000000000..5b8f574f1 --- /dev/null +++ b/playbooks/legacy/barbican-devstack-base/run.yaml @@ -0,0 +1,65 @@ +- hosts: all + name: Barbican devstack base + 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 ENABLED_SERVICES="{{ services }}" + export PROJECTS="openstack/barbican $PROJECTS" + export PROJECTS="openstack/python-barbicanclient $PROJECTS" + export PROJECTS="openstack/barbican-tempest-plugin $PROJECTS" + export DEVSTACK_LOCAL_CONFIG="enable_plugin barbican git://git.openstack.org/openstack/barbican" + if [ "{{ python_version }}" == "py35" ] ; then + export DEVSTACK_GATE_USE_PYTHON3=True + 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-object" + export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service s-proxy" + else + export DEVSTACK_GATE_USE_PYTHON3=False + fi + + function gate_hook { + $BASE/new/barbican/devstack/gate_hook.sh + } + export -f gate_hook + + function post_test_hook { + cd /opt/stack/new/barbican/functionaltests + ./post_test_hook.sh "{{ plugin }}" + } + export -f post_test_hook + + if [ "{{ database }}" == "postgres" ] ; 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 }}' diff --git a/playbooks/legacy/barbican-devstack-functional-base/post.yaml b/playbooks/legacy/barbican-devstack-functional-base/post.yaml new file mode 100644 index 000000000..e07f5510a --- /dev/null +++ b/playbooks/legacy/barbican-devstack-functional-base/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/legacy/barbican-devstack-functional-base/run.yaml b/playbooks/legacy/barbican-devstack-functional-base/run.yaml new file mode 100644 index 000000000..e6b4d74b8 --- /dev/null +++ b/playbooks/legacy/barbican-devstack-functional-base/run.yaml @@ -0,0 +1,74 @@ +- hosts: all + name: Barbican devstack functional base + 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 + cat << 'EOF' >>"/tmp/dg-local.conf" + [[local|localrc]] + enable_plugin barbican git://git.openstack.org/openstack/barbican + + EOF + executable: /bin/bash + chdir: '{{ ansible_user_dir }}/workspace' + environment: '{{ zuul | zuul_legacy_vars }}' + + - shell: + cmd: | + set -e + set -x + export PYTHONUNBUFFERED=true + export OVERRIDE_ENABLED_SERVICES="{{ services }}" + export PROJECTS="openstack/barbican $PROJECTS" + export PROJECTS="openstack/python-barbicanclient $PROJECTS" + export PROJECTS="openstack/barbican-tempest-plugin $PROJECTS" + + if [ "{{ python_version }}" == "py35" ] ; then + export DEVSTACK_GATE_USE_PYTHON3=True + else + export DEVSTACK_GATE_USE_PYTHON3=False + fi + + function gate_hook { + $BASE/new/barbican/devstack/gate_hook.sh + } + export -f gate_hook + + function post_test_hook { + cd /opt/stack/new/barbican/functionaltests + ./post_test_hook.sh "{{plugin}}" + } + export -f post_test_hook + + if [ "{{ database }}" == "postgres" ] ; 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 }}' diff --git a/playbooks/legacy/barbican-devstack-tempest-base/post.yaml b/playbooks/legacy/barbican-devstack-tempest-base/post.yaml new file mode 100644 index 000000000..e07f5510a --- /dev/null +++ b/playbooks/legacy/barbican-devstack-tempest-base/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/legacy/barbican-devstack-tempest-base/run.yaml b/playbooks/legacy/barbican-devstack-tempest-base/run.yaml new file mode 100644 index 000000000..8ed634e3d --- /dev/null +++ b/playbooks/legacy/barbican-devstack-tempest-base/run.yaml @@ -0,0 +1,72 @@ +- hosts: all + name: Barbican devstack tempest base + 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=1 + export DEVSTACK_GATE_TEMPEST_REGEX=barbican + export KEEP_LOCALRC=1 + + export PROJECTS="openstack/barbican $PROJECTS" + export PROJECTS="openstack/python-barbicanclient $PROJECTS" + export PROJECTS="openstack/barbican-tempest-plugin $PROJECTS" + export DEVSTACK_LOCAL_CONFIG="enable_plugin barbican git://git.openstack.org/openstack/barbican" + export DEVSTACK_LOCAL_CONFIG+=$'\n'"export TEMPEST_PLUGINS='/opt/stack/new/barbican-tempest-plugin'" + + export BRANCH_OVERRIDE=default + if [ "$BRANCH_OVERRIDE" != "default" ] ; then + export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE + fi + # Add configuration values for enabling security features in local.conf + function pre_test_hook { + if [ -f $BASE/new/barbican-tempest-plugin/tools/pre_test_hook.sh ] ; then + . $BASE/new/barbican-tempest-plugin/tools/pre_test_hook.sh + fi + } + export -f pre_test_hook + + if [ "{{ database }}" == "postgres" ] ; then + export DEVSTACK_GATE_POSTGRES=1 + elif [ "{{ castellan_from_git }}" == "1" ] ; then + export DEVSTACK_PROJECT_FROM_GIT="castellan" + elif [ "{{ cursive }}" == "1" ] ; then + export DEVSTACK_PROJECT_FROM_GIT="cursive" + elif [ "{{ python_version }}" == "py35" ] ; then + export DEVSTACK_GATE_USE_PYTHON3=True + 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-object" + export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service s-proxy" + 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 }}' diff --git a/playbooks/legacy/grenade-devstack-barbican/post.yaml b/playbooks/legacy/grenade-devstack-barbican/post.yaml new file mode 100644 index 000000000..e07f5510a --- /dev/null +++ b/playbooks/legacy/grenade-devstack-barbican/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/legacy/grenade-devstack-barbican/run.yaml b/playbooks/legacy/grenade-devstack-barbican/run.yaml new file mode 100644 index 000000000..552cb17b6 --- /dev/null +++ b/playbooks/legacy/grenade-devstack-barbican/run.yaml @@ -0,0 +1,60 @@ +- hosts: all + name: Autoconverted job legacy-grenade-dsvm-barbican from old job gate-grenade-dsvm-barbican-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 PROJECTS="openstack/barbican $PROJECTS" + export PROJECTS="openstack-dev/grenade $PROJECTS" + export PROJECTS="openstack/python-barbicanclient $PROJECTS" + export PROJECTS="openstack/barbican-tempest-plugin $PROJECTS" + + export GRENADE_PLUGINRC="enable_grenade_plugin barbican https://git.openstack.org/openstack/barbican" + export DEVSTACK_LOCAL_CONFIG+=$'\n'"export TEMPEST_PLUGINS='/opt/stack/new/barbican-tempest-plugin'" + + export DEVSTACK_GATE_TEMPEST=1 + export DEVSTACK_GATE_GRENADE=pullup + export DEVSTACK_GATE_TEMPEST_REGEX=barbican + + export BRANCH_OVERRIDE=default + if [ "$BRANCH_OVERRIDE" != "default" ] ; then + export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE + fi + # Add configuration values for enabling security features in local.conf + function pre_test_hook { + if [ -f /opt/stack/old/barbican-tempest-plugin/tools/pre_test_hook.sh ] ; then + . /opt/stack/old/barbican-tempest-plugin/tools/pre_test_hook.sh + fi + } + export -f pre_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 }}'