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 <kiennt@vn.fujitsu.com>

Change-Id: Ia465588d025fc939c83434794db58d95fa5e1611
Needed-By: I02295ad9c2eb5e0b350ad297a99ef0e8638a46f8
Needed-By: I52d2d1c021d4af21993b006e36b5761435e3db50
This commit is contained in:
Tovin Seven 2017-10-24 10:33:20 +07:00 committed by Kien Nguyen
parent 4591831034
commit 884ea2d8ac
5 changed files with 255 additions and 0 deletions

36
.zuul.yaml Normal file
View File

@ -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

View File

@ -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 }}'

View File

@ -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 }}'

View File

@ -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

View File

@ -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 }}'