From 884ea2d8acd60cc18e37cfa721ba1b29789da818 Mon Sep 17 00:00:00 2001 From: Tovin Seven Date: Tue, 24 Oct 2017 10:33:20 +0700 Subject: Migrate to zuulv3 - move legacy jobs to project This patch do step 1 in the docs: Move Legacy Jobs to Projects. Co-Authored-By: Kien Nguyen Change-Id: Ia465588d025fc939c83434794db58d95fa5e1611 Needed-By: I02295ad9c2eb5e0b350ad297a99ef0e8638a46f8 Needed-By: I52d2d1c021d4af21993b006e36b5761435e3db50 --- .zuul.yaml | 36 +++++++++ .../legacy/libec-pyeclib-unit-centos-7/run.yaml | 33 +++++++++ playbooks/legacy/libec-pyeclib-unit/run.yaml | 33 +++++++++ .../legacy/pyeclib-tox-py27-centos-7/post.yaml | 67 +++++++++++++++++ .../legacy/pyeclib-tox-py27-centos-7/run.yaml | 86 ++++++++++++++++++++++ 5 files changed, 255 insertions(+) create mode 100644 .zuul.yaml create mode 100644 playbooks/legacy/libec-pyeclib-unit-centos-7/run.yaml create mode 100644 playbooks/legacy/libec-pyeclib-unit/run.yaml create mode 100644 playbooks/legacy/pyeclib-tox-py27-centos-7/post.yaml create mode 100644 playbooks/legacy/pyeclib-tox-py27-centos-7/run.yaml diff --git a/.zuul.yaml b/.zuul.yaml new file mode 100644 index 0000000..af4628b --- /dev/null +++ b/.zuul.yaml @@ -0,0 +1,36 @@ +- project: + name: openstack/pyeclib + experimental: + jobs: + - pyeclib-tox-py27-centos-7 + - libec-pyeclib-unit-centos-7 + - libec-pyeclib-unit + +- job: + name: pyeclib-tox-py27-centos-7 + parent: legacy-base + run: playbooks/legacy/pyeclib-tox-py27-centos-7/run + post-run: playbooks/legacy/pyeclib-tox-py27-centos-7/post + timeout: 2400 + nodeset: legacy-centos-7 + required-projects: + - openstack/requirements + +- job: + name: libec-pyeclib-unit-centos-7 + parent: legacy-base + run: playbooks/legacy/libec-pyeclib-unit-centos-7/run + timeout: 1800 + nodeset: legacy-centos-7 + required-projects: + - openstack/liberasurecode + - openstack/pyeclib + +- job: + name: libec-pyeclib-unit + parent: legacy-base + run: playbooks/legacy/libec-pyeclib-unit/run + timeout: 1800 + required-projects: + - openstack/liberasurecode + - openstack/pyeclib diff --git a/playbooks/legacy/libec-pyeclib-unit-centos-7/run.yaml b/playbooks/legacy/libec-pyeclib-unit-centos-7/run.yaml new file mode 100644 index 0000000..a7e122b --- /dev/null +++ b/playbooks/legacy/libec-pyeclib-unit-centos-7/run.yaml @@ -0,0 +1,33 @@ +- hosts: all + name: Autoconverted job legacy-libec-pyeclib-unit-centos-7 from old job gate-libec-pyeclib-unit-centos-7 + tasks: + + - name: Ensure legacy workspace directory + file: + path: '{{ ansible_user_dir }}/workspace' + state: directory + + - shell: + cmd: | + set -e + set -x + cd $WORKSPACE + /usr/zuul-env/bin/zuul-cloner --cache-dir /opt/git \ + git://git.openstack.org \ + openstack/liberasurecode \ + openstack/pyeclib + # build libec + cd openstack/liberasurecode + /usr/local/jenkins/slave_scripts/install-distro-packages.sh + ./autogen.sh + ./configure + make + sudo make install + sudo bash -c "echo /usr/local/lib >> /etc/ld.so.conf" + sudo ldconfig + # test pyeclib + cd $WORKSPACE/openstack/pyeclib + tox -e py27 + executable: /bin/bash + chdir: '{{ ansible_user_dir }}/workspace' + environment: '{{ zuul | zuul_legacy_vars }}' diff --git a/playbooks/legacy/libec-pyeclib-unit/run.yaml b/playbooks/legacy/libec-pyeclib-unit/run.yaml new file mode 100644 index 0000000..f908184 --- /dev/null +++ b/playbooks/legacy/libec-pyeclib-unit/run.yaml @@ -0,0 +1,33 @@ +- hosts: all + name: Autoconverted job legacy-libec-pyeclib-unit from old job gate-libec-pyeclib-unit-ubuntu-xenial + tasks: + + - name: Ensure legacy workspace directory + file: + path: '{{ ansible_user_dir }}/workspace' + state: directory + + - shell: + cmd: | + set -e + set -x + cd $WORKSPACE + /usr/zuul-env/bin/zuul-cloner --cache-dir /opt/git \ + git://git.openstack.org \ + openstack/liberasurecode \ + openstack/pyeclib + # build libec + cd openstack/liberasurecode + /usr/local/jenkins/slave_scripts/install-distro-packages.sh + ./autogen.sh + ./configure + make + sudo make install + sudo bash -c "echo /usr/local/lib >> /etc/ld.so.conf" + sudo ldconfig + # test pyeclib + cd $WORKSPACE/openstack/pyeclib + tox -e py27 + executable: /bin/bash + chdir: '{{ ansible_user_dir }}/workspace' + environment: '{{ zuul | zuul_legacy_vars }}' diff --git a/playbooks/legacy/pyeclib-tox-py27-centos-7/post.yaml b/playbooks/legacy/pyeclib-tox-py27-centos-7/post.yaml new file mode 100644 index 0000000..68fbdf8 --- /dev/null +++ b/playbooks/legacy/pyeclib-tox-py27-centos-7/post.yaml @@ -0,0 +1,67 @@ +- 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 diff --git a/playbooks/legacy/pyeclib-tox-py27-centos-7/run.yaml b/playbooks/legacy/pyeclib-tox-py27-centos-7/run.yaml new file mode 100644 index 0000000..90478c9 --- /dev/null +++ b/playbooks/legacy/pyeclib-tox-py27-centos-7/run.yaml @@ -0,0 +1,86 @@ +- hosts: all + name: Autoconverted job legacy-pyeclib-tox-py27-centos-7 from old job gate-pyeclib-tox-py27-centos-7 + tasks: + + - name: Ensure legacy workspace directory + file: + path: '{{ ansible_user_dir }}/workspace' + state: directory + + - shell: + cmd: | + set -e + set -x + CLONEMAP=`mktemp` + REQS_DIR=`mktemp -d` + function cleanup { + mkdir -p $WORKSPACE + rm -rf $CLONEMAP $REQS_DIR + } + trap cleanup EXIT + cat > $CLONEMAP << EOF + clonemap: + - name: $ZUUL_PROJECT + dest: . + EOF + # zuul cloner works poorly if there are 2 names that are the + # same in here. + if [[ "$ZUUL_PROJECT" != "openstack/requirements" ]]; then + cat >> $CLONEMAP << EOF + - name: openstack/requirements + dest: $REQS_DIR + EOF + fi + /usr/zuul-env/bin/zuul-cloner -m $CLONEMAP --cache-dir /opt/git \ + git://git.openstack.org $ZUUL_PROJECT openstack/requirements + # REQS_DIR is not set for openstack/requirements and there is also + # no need to copy in this case. + if [[ "$ZUUL_PROJECT" != "openstack/requirements" ]]; then + cp $REQS_DIR/upper-constraints.txt ./ + fi + executable: /bin/bash + chdir: '{{ ansible_user_dir }}/workspace' + environment: '{{ zuul | zuul_legacy_vars }}' + + - shell: + cmd: /usr/local/jenkins/slave_scripts/install-distro-packages.sh + chdir: '{{ ansible_user_dir }}/workspace' + environment: '{{ zuul | zuul_legacy_vars }}' + + - shell: + cmd: | + if [ -x tools/test-setup.sh ] ; then + tools/test-setup.sh + fi + chdir: '{{ ansible_user_dir }}/workspace' + environment: '{{ zuul | zuul_legacy_vars }}' + + - shell: + cmd: | + set -x + sudo rm -f /etc/sudoers.d/zuul + # Prove that general sudo access is actually revoked + ! sudo -n true + executable: /bin/bash + chdir: '{{ ansible_user_dir }}/workspace' + environment: '{{ zuul | zuul_legacy_vars }}' + + - shell: + cmd: /usr/local/jenkins/slave_scripts/run-tox.sh py27 + chdir: '{{ ansible_user_dir }}/workspace' + environment: '{{ zuul | zuul_legacy_vars }}' + + - shell: + cmd: | + OUT=`git ls-files --other --exclude-standard --directory` + if [ -z "$OUT" ]; then + echo "No extra files created during test." + exit 0 + else + echo "The following un-ignored files were created during the test:" + echo "$OUT" + exit 0 # TODO: change to 1 to fail tests. + fi + executable: /bin/bash + chdir: '{{ ansible_user_dir }}/workspace' + environment: '{{ zuul | zuul_legacy_vars }}' -- cgit v1.2.1