From 0db7b77b4615f25217ad646b2e4082994e8dfb73 Mon Sep 17 00:00:00 2001 From: Stephen Finucane Date: Mon, 23 Oct 2017 10:29:07 +0100 Subject: [PATCH] zuul: Move legacy jobs to project Implement part of step one of the zuulv3 migration guide: move the purely nova projects to the nova repo [1]. This does not migrate any jobs used in other projects nor does it convert what is migrated to use the new 'devstack' or 'devstack-tempest' base jobs. Both of these steps should be done separately. What's migrated: - experimental: - legacy-tempest-dsvm-nova-lvm (renamed to nova-lvm) What's dropped: - experimental: - legacy-tempest-dsvm-nova-lxc (no one's using this) - legacy-tempest-dsvm-nova-wsgi-full (WSGI is the default since Pike) What's still to be migrated, here or to other projects: - check: - legacy-grenade-dsvm-neutron-multinode - legacy-grenade-dsvm-neutron-multinode-live-migration - legacy-tempest-dsvm-cells - legacy-tempest-dsvm-full-devstack-plugin-ceph - legacy-tempest-dsvm-neutron-linuxbridge - legacy-tempest-dsvm-neutron-multinode-full - legacy-tempest-dsvm-neutron-nova-next-full - legacy-tempest-dsvm-multinode-live-migration - ironic-tempest-dsvm-ipa-wholedisk-bios-agent_ipmitool-tinyipa - legacy-tempest-dsvm-neutron-full - legacy-grenade-dsvm-neutron - gate: - legacy-tempest-dsvm-cells - legacy-tempest-dsvm-multinode-live-migration - legacy-tempest-dsvm-neutron-full - legacy-grenade-dsvm-neutron - experimental: - legacy-tempest-dsvm-nova-v20-api - legacy-grenade-dsvm-neutron-nova-next - legacy-tempest-dsvm-multinode-full - legacy-tempest-dsvm-neutron-dvr-multinode-full - legacy-tempest-dsvm-neutron-dvr-ha-multinode-full - legacy-tempest-dsvm-neutron-scenario-multinode-lvm-multibackend - ironic-tempest-dsvm-pxe_ipa-full - legacy-tempest-dsvm-nova-os-vif - legacy-tempest-dsvm-nova-libvirt-kvm-apr - legacy-grenade-dsvm-neutron-multinode-zero-downtime - ironic-tempest-dsvm-multitenant-network - ironic-tempest-dsvm-ipa-resourceclasses-partition-pxe_ipmitool-tinyipa - legacy-tempest-dsvm-full-devstack-plugin-nfs - legacy-tripleo-ci-centos-7-nonha-multinode-oooq - legacy-barbican-simple-crypto-dsvm-tempest-nova - legacy-tempest-dsvm-py35-full-devstack-plugin-ceph - legacy-tempest-dsvm-neutron-pg-full - legacy-tempest-dsvm-neutron-full-opensuse-423 - legacy-tempest-dsvm-neutron-src-oslo.versionedobjects [1] https://docs.openstack.org/infra/manual/zuulv3.html#legacy-job-migration-details Change-Id: I41b03a34795efe139d5911c605cdbd3c47a2f059 --- .zuul.yaml | 33 +++++++++++++++++ playbooks/legacy/nova-lvm/post.yaml | 15 ++++++++ playbooks/legacy/nova-lvm/run.yaml | 57 +++++++++++++++++++++++++++++ 3 files changed, 105 insertions(+) create mode 100644 .zuul.yaml create mode 100644 playbooks/legacy/nova-lvm/post.yaml create mode 100644 playbooks/legacy/nova-lvm/run.yaml diff --git a/.zuul.yaml b/.zuul.yaml new file mode 100644 index 000000000000..860a0dbf5a49 --- /dev/null +++ b/.zuul.yaml @@ -0,0 +1,33 @@ +- job: + name: nova-lvm + parent: legacy-dsvm-base + description: | + Run standard integration tests using LVM image backend. This is useful if + there are tests touching this code. + timeout: 10800 + run: playbooks/legacy/nova-lvm/run.yaml + post-run: playbooks/legacy/nova-lvm/post.yaml + required-projects: + - openstack-infra/devstack-gate + - openstack/nova + - openstack/tempest + irrelevant-files: + - ^(placement-)?api-.*$ + - ^(test-|)requirements.txt$ + - ^.*\.rst$ + - ^.git.*$ + - ^doc/.*$ + - ^nova/hacking/.*$ + - ^nova/locale/.*$ + - ^nova/tests/.*$ + - ^releasenotes/.*$ + - ^setup.cfg$ + - ^tests-py3.txt$ + - ^tools/.*$ + - ^tox.ini$ + +- project: + name: openstack/nova + experimental: + jobs: + - nova-lvm diff --git a/playbooks/legacy/nova-lvm/post.yaml b/playbooks/legacy/nova-lvm/post.yaml new file mode 100644 index 000000000000..e07f5510ae70 --- /dev/null +++ b/playbooks/legacy/nova-lvm/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/nova-lvm/run.yaml b/playbooks/legacy/nova-lvm/run.yaml new file mode 100644 index 000000000000..5b032b237819 --- /dev/null +++ b/playbooks/legacy/nova-lvm/run.yaml @@ -0,0 +1,57 @@ +- hosts: all + name: Autoconverted job legacy-tempest-dsvm-lvm from old job gate-tempest-dsvm-lvm-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 + cat << 'EOF' >>"/tmp/dg-local.conf" + [[local|localrc]] + NOVA_BACKEND=LVM + LVM_VOLUME_CLEAR=none + + 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_TEMPEST=1 + export BRANCH_OVERRIDE=default + if [ "$BRANCH_OVERRIDE" != "default" ] ; then + export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE + fi + + export DEVSTACK_GATE_SETTINGS=/opt/stack/new/nova/devstack/tempest-dsvm-lvm-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 }}'