Move legacy bifrost jobs in-tree

Moving the legacy CI jobs into the bifrost repository so we may have
direct control over the jobs in the repository.

Added additional logic to troubleshoot ocata test failures, and
use the correct tinyipa image for the ocata branch.

Changed the default for inspector to be source based installations
as opposed to package based installations. As a result, with the
defaults present in ocata, the newest version of inspector was
being installed, which would thus fail to execute.

Change-Id: Ic51078addb9282f777689fd769fa3507a29f2990
(cherry picked from commit a81172aa55)
(cherry picked from commit de9604ab50)
This commit is contained in:
Julia Kreger 2017-10-26 19:47:38 +00:00
parent debece382b
commit 568fa70b90
24 changed files with 1046 additions and 5 deletions

View File

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

View File

@ -0,0 +1,73 @@
- hosts: all
name: Autoconverted job legacy-bifrost-integration-dhcp-centos-7 from old job gate-bifrost-integration-dhcp-centos-7-nv
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: |
set -u
set -e
set -x
cd $WORKSPACE
/usr/zuul-env/bin/zuul-cloner --cache-dir /opt/git \
git://git.openstack.org \
openstack/bifrost \
openstack/diskimage-builder \
openstack/ironic \
openstack/python-ironicclient \
openstack-infra/shade \
openstack/ironic-inspector \
openstack/python-ironic-inspector-client \
openstack/requirements
export GIT_BASE=$(pwd)
export UPPER_CONSTRAINTS_FILE=$WORKSPACE/upper-constraints.txt
cd openstack/bifrost
scripts/test-bifrost-inventory-dhcp.sh
executable: /bin/bash
chdir: '{{ ansible_user_dir }}/workspace'
environment: '{{ zuul | zuul_legacy_vars }}'

View File

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

View File

@ -0,0 +1,74 @@
- hosts: all
name: Autoconverted job legacy-bifrost-integration-dhcp-opensuse-423 from old job
gate-bifrost-integration-dhcp-opensuse-423-nv
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: |
set -u
set -e
set -x
cd $WORKSPACE
/usr/zuul-env/bin/zuul-cloner --cache-dir /opt/git \
git://git.openstack.org \
openstack/bifrost \
openstack/diskimage-builder \
openstack/ironic \
openstack/python-ironicclient \
openstack-infra/shade \
openstack/ironic-inspector \
openstack/python-ironic-inspector-client \
openstack/requirements
export GIT_BASE=$(pwd)
export UPPER_CONSTRAINTS_FILE=$WORKSPACE/upper-constraints.txt
cd openstack/bifrost
scripts/test-bifrost-inventory-dhcp.sh
executable: /bin/bash
chdir: '{{ ansible_user_dir }}/workspace'
environment: '{{ zuul | zuul_legacy_vars }}'

View File

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

View File

@ -0,0 +1,73 @@
- hosts: all
name: Autoconverted job legacy-bifrost-integration-dhcp from old job gate-bifrost-integration-dhcp-ubuntu-xenial-nv
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: |
set -u
set -e
set -x
cd $WORKSPACE
/usr/zuul-env/bin/zuul-cloner --cache-dir /opt/git \
git://git.openstack.org \
openstack/bifrost \
openstack/diskimage-builder \
openstack/ironic \
openstack/python-ironicclient \
openstack-infra/shade \
openstack/ironic-inspector \
openstack/python-ironic-inspector-client \
openstack/requirements
export GIT_BASE=$(pwd)
export UPPER_CONSTRAINTS_FILE=$WORKSPACE/upper-constraints.txt
cd openstack/bifrost
scripts/test-bifrost-inventory-dhcp.sh
executable: /bin/bash
chdir: '{{ ansible_user_dir }}/workspace'
environment: '{{ zuul | zuul_legacy_vars }}'

View File

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

View File

@ -0,0 +1,74 @@
- hosts: all
name: Autoconverted job legacy-bifrost-integration-dibipa-debian-centos-7 from old
job gate-bifrost-integration-dibipa-debian-centos-7-nv
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: |
set -u
set -e
set -x
cd $WORKSPACE
/usr/zuul-env/bin/zuul-cloner --cache-dir /opt/git \
git://git.openstack.org \
openstack/bifrost \
openstack/diskimage-builder \
openstack/ironic \
openstack/python-ironicclient \
openstack-infra/shade \
openstack/ironic-inspector \
openstack/python-ironic-inspector-client \
openstack/requirements
export GIT_BASE=$(pwd)
export UPPER_CONSTRAINTS_FILE=$WORKSPACE/upper-constraints.txt
cd openstack/bifrost
scripts/test-bifrost-build-images.sh
executable: /bin/bash
chdir: '{{ ansible_user_dir }}/workspace'
environment: '{{ zuul | zuul_legacy_vars }}'

View File

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

View File

@ -0,0 +1,74 @@
- hosts: all
name: Autoconverted job legacy-bifrost-integration-dibipa-debian-opensuse-423 from
old job gate-bifrost-integration-dibipa-debian-opensuse-423-nv
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: |
set -u
set -e
set -x
cd $WORKSPACE
/usr/zuul-env/bin/zuul-cloner --cache-dir /opt/git \
git://git.openstack.org \
openstack/bifrost \
openstack/diskimage-builder \
openstack/ironic \
openstack/python-ironicclient \
openstack-infra/shade \
openstack/ironic-inspector \
openstack/python-ironic-inspector-client \
openstack/requirements
export GIT_BASE=$(pwd)
export UPPER_CONSTRAINTS_FILE=$WORKSPACE/upper-constraints.txt
cd openstack/bifrost
scripts/test-bifrost-build-images.sh
executable: /bin/bash
chdir: '{{ ansible_user_dir }}/workspace'
environment: '{{ zuul | zuul_legacy_vars }}'

View File

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

View File

@ -0,0 +1,73 @@
- hosts: all
name: Autoconverted job legacy-bifrost-integration-dibipa-debian from old job gate-bifrost-integration-dibipa-debian-ubuntu-xenial-nv
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: |
set -u
set -e
set -x
cd $WORKSPACE
/usr/zuul-env/bin/zuul-cloner --cache-dir /opt/git \
git://git.openstack.org \
openstack/bifrost \
openstack/diskimage-builder \
openstack/ironic \
openstack/python-ironicclient \
openstack-infra/shade \
openstack/ironic-inspector \
openstack/python-ironic-inspector-client \
openstack/requirements
export GIT_BASE=$(pwd)
export UPPER_CONSTRAINTS_FILE=$WORKSPACE/upper-constraints.txt
cd openstack/bifrost
scripts/test-bifrost-build-images.sh
executable: /bin/bash
chdir: '{{ ansible_user_dir }}/workspace'
environment: '{{ zuul | zuul_legacy_vars }}'

View File

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

View File

@ -0,0 +1,73 @@
- hosts: all
name: Autoconverted job legacy-bifrost-integration-tinyipa-centos-7 from old job
gate-bifrost-integration-tinyipa-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: |
set -u
set -e
set -x
cd $WORKSPACE
/usr/zuul-env/bin/zuul-cloner --cache-dir /opt/git \
git://git.openstack.org \
openstack/bifrost \
openstack/ironic \
openstack/python-ironicclient \
openstack-infra/shade \
openstack/ironic-inspector \
openstack/python-ironic-inspector-client \
openstack/requirements
export GIT_BASE=$(pwd)
export UPPER_CONSTRAINTS_FILE=$WORKSPACE/upper-constraints.txt
cd openstack/bifrost
scripts/test-bifrost.sh
executable: /bin/bash
chdir: '{{ ansible_user_dir }}/workspace'
environment: '{{ zuul | zuul_legacy_vars }}'

View File

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

View File

@ -0,0 +1,73 @@
- hosts: all
name: Autoconverted job legacy-bifrost-integration-tinyipa-opensuse-423 from old
job gate-bifrost-integration-tinyipa-opensuse-423
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: |
set -u
set -e
set -x
cd $WORKSPACE
/usr/zuul-env/bin/zuul-cloner --cache-dir /opt/git \
git://git.openstack.org \
openstack/bifrost \
openstack/ironic \
openstack/python-ironicclient \
openstack-infra/shade \
openstack/ironic-inspector \
openstack/python-ironic-inspector-client \
openstack/requirements
export GIT_BASE=$(pwd)
export UPPER_CONSTRAINTS_FILE=$WORKSPACE/upper-constraints.txt
cd openstack/bifrost
scripts/test-bifrost.sh
executable: /bin/bash
chdir: '{{ ansible_user_dir }}/workspace'
environment: '{{ zuul | zuul_legacy_vars }}'

View File

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

View File

@ -0,0 +1,72 @@
- hosts: all
name: Autoconverted job legacy-bifrost-integration-tinyipa from old job gate-bifrost-integration-tinyipa-ubuntu-xenial
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: |
set -u
set -e
set -x
cd $WORKSPACE
/usr/zuul-env/bin/zuul-cloner --cache-dir /opt/git \
git://git.openstack.org \
openstack/bifrost \
openstack/ironic \
openstack/python-ironicclient \
openstack-infra/shade \
openstack/ironic-inspector \
openstack/python-ironic-inspector-client \
openstack/requirements
export GIT_BASE=$(pwd)
export UPPER_CONSTRAINTS_FILE=$WORKSPACE/upper-constraints.txt
cd openstack/bifrost
scripts/test-bifrost.sh
executable: /bin/bash
chdir: '{{ ansible_user_dir }}/workspace'
environment: '{{ zuul | zuul_legacy_vars }}'

View File

@ -7,8 +7,8 @@ staging_drivers_include: false
file_url_port: "8080"
ironicclient_source_install: false
shade_source_install: true
ironicinspector_source_install: false
ironicinspectorclient_source_install: false
ironicinspector_source_install: true
ironicinspectorclient_source_install: true
staging_drivers_source_install: false
# Setting to utilize diskimage-builder to create a bootable image.
create_image_via_dib: true
@ -43,9 +43,9 @@ ipa_file_protocol: "http"
ipa_kernel: "{{http_boot_folder}}/ipa.vmlinuz"
ipa_ramdisk: "{{http_boot_folder}}/ipa.initramfs"
ipa_kernel_url: "{{ ipa_file_protocol }}://{{ hostvars[inventory_hostname]['ansible_' + ans_network_interface]['ipv4']['address'] }}:{{file_url_port}}/ipa.vmlinuz"
ipa_kernel_upstream_url: https://tarballs.openstack.org/ironic-python-agent/tinyipa/files/tinyipa-master.vmlinuz
ipa_kernel_upstream_url: https://tarballs.openstack.org/ironic-python-agent/tinyipa/files/tinyipa-stable-ocata.vmlinuz
ipa_ramdisk_url: "{{ ipa_file_protocol }}://{{ hostvars[inventory_hostname]['ansible_' + ans_network_interface]['ipv4']['address'] }}:{{file_url_port}}/ipa.initramfs"
ipa_ramdisk_upstream_url: https://tarballs.openstack.org/ironic-python-agent/tinyipa/files/tinyipa-master.gz
ipa_ramdisk_upstream_url: https://tarballs.openstack.org/ironic-python-agent/tinyipa/files/tinyipa-stable-ocata.gz
deploy_image_filename: "deployment_image.qcow2"
deploy_image: "{{http_boot_folder}}/{{deploy_image_filename}}"
# Use cirros instead of building an image via diskimage-builder

View File

@ -241,6 +241,17 @@
with_items:
- "/var/lib/ironic"
- "/var/lib/ironic/images"
# Due to CI failures on stable/ocata, we need to ensure
# this folder exists.
- name: "Create and set /var/log/ironic"
file:
path: "{{ item }}"
state: directory
mode: 0755
owner: "ironic"
group: "ironic"
with_items:
- "/var/log/ironic"
- name: "Place ironic services"
template:
src: "{{ init_template }}"

View File

@ -13,6 +13,14 @@ LOG_LOCATION="${WORKSPACE:-${SCRIPT_HOME}/..}/logs"
echo "Making logs directory and collecting logs."
[ -d ${LOG_LOCATION} ] || mkdir -p ${LOG_LOCATION}
# NOTE(TheJulia): In order to troubleshoot issues with the ocata branch,
# we need to collect some extra information if present.
if [ -x "/var/log/ironic/" ]; then
cp -a /var/log/ironic ${LOG_LOCATION}/ironic
sudo chown -R $USER ${LOG_LOCATION}/ironic
sudo chmod -R o+r ${LOG_LOCATION}/ironic
fi
if [ -z "${TEST_VM_NODE_NAMES+x}" ]; then
sudo cp /var/log/libvirt/baremetal_logs/testvm[[:digit:]]_console.log ${LOG_LOCATION}
sudo chown $USER ${LOG_LOCATION}/testvm[[:digit:]]_console.log
@ -36,12 +44,15 @@ fi
if $(journalctl --version &>/dev/null); then
sudo journalctl -u ironic-api &> ${LOG_LOCATION}/ironic-api.log
sudo journalctl -u ironic-conductor &> ${LOG_LOCATION}/ironic-conductor.log
sudo journalctl -u ironic-inspector &> ${LOG_LOCATION}/ironic-inspector.log
else
sudo cp /var/log/upstart/ironic-api.log ${LOG_LOCATION}/
sudo cp /var/log/upstart/ironic-conductor.log ${LOG_LOCATION}/
sudo cp /var/log/upstart/ironic-inspector.log ${LOG_LOCATION}/
fi
sudo chown $USER ${LOG_LOCATION}/ironic-api.log
sudo chown $USER ${LOG_LOCATION}/ironic-conductor.log
sudo chown $USER ${LOG_LOCATION}/ironic-inspector.log
# In CI scenarios, we want other users to be able to read the logs.
sudo chmod o+r ${LOG_LOCATION}/ironic-api.log
sudo chmod o+r ${LOG_LOCATION}/ironic-conductor.log

View File

@ -64,7 +64,7 @@ elif [ -x '/usr/bin/dnf' ] || [ -x '/usr/bin/yum' ]; then
[venv]=python-virtualenv
[wget]=wget
)
EXTRA_PKG_DEPS=()
EXTRA_PKG_DEPS=( epel-release )
else
echo "ERROR: Supported package manager not found. Supported: apt,yum,zypper"
fi

View File

@ -0,0 +1,146 @@
- job:
name: bifrost-integration-dhcp
parent: legacy-base
run: playbooks/legacy/bifrost-integration-dhcp/run
post-run: playbooks/legacy/bifrost-integration-dhcp/post
timeout: 7200
required-projects:
- openstack/bifrost
- openstack/diskimage-builder
- openstack/ironic
- openstack/ironic-inspector
- openstack/python-ironic-inspector-client
- openstack/python-ironicclient
- openstack/requirements
- openstack-infra/shade
- job:
name: bifrost-integration-dhcp-centos-7
parent: legacy-base
run: playbooks/legacy/bifrost-integration-dhcp-centos-7/run
post-run: playbooks/legacy/bifrost-integration-dhcp-centos-7/post
timeout: 7200
nodeset: legacy-centos-7
required-projects:
- openstack/bifrost
- openstack/diskimage-builder
- openstack/ironic
- openstack/ironic-inspector
- openstack/python-ironic-inspector-client
- openstack/python-ironicclient
- openstack/requirements
- openstack-infra/shade
- job:
name: bifrost-integration-dhcp-opensuse-423
parent: legacy-base
run: playbooks/legacy/bifrost-integration-dhcp-opensuse-423/run
post-run: playbooks/legacy/bifrost-integration-dhcp-opensuse-423/post
timeout: 7200
nodeset: legacy-opensuse-423
required-projects:
- openstack/bifrost
- openstack/diskimage-builder
- openstack/ironic
- openstack/ironic-inspector
- openstack/python-ironic-inspector-client
- openstack/python-ironicclient
- openstack/requirements
- openstack-infra/shade
- job:
name: bifrost-integration-dibipa-debian
parent: legacy-base
run: playbooks/legacy/bifrost-integration-dibipa-debian/run
post-run: playbooks/legacy/bifrost-integration-dibipa-debian/post
timeout: 7200
required-projects:
- openstack/bifrost
- openstack/diskimage-builder
- openstack/ironic
- openstack/ironic-inspector
- openstack/python-ironic-inspector-client
- openstack/python-ironicclient
- openstack/requirements
- openstack-infra/shade
- job:
name: bifrost-integration-dibipa-debian-centos-7
parent: legacy-base
run: playbooks/legacy/bifrost-integration-dibipa-debian-centos-7/run
post-run: playbooks/legacy/bifrost-integration-dibipa-debian-centos-7/post
timeout: 7200
nodeset: legacy-centos-7
required-projects:
- openstack/bifrost
- openstack/diskimage-builder
- openstack/ironic
- openstack/ironic-inspector
- openstack/python-ironic-inspector-client
- openstack/python-ironicclient
- openstack/requirements
- openstack-infra/shade
- job:
name: bifrost-integration-dibipa-debian-opensuse-423
parent: legacy-base
run: playbooks/legacy/bifrost-integration-dibipa-debian-opensuse-423/run
post-run: playbooks/legacy/bifrost-integration-dibipa-debian-opensuse-423/post
timeout: 7200
nodeset: legacy-opensuse-423
required-projects:
- openstack/bifrost
- openstack/diskimage-builder
- openstack/ironic
- openstack/ironic-inspector
- openstack/python-ironic-inspector-client
- openstack/python-ironicclient
- openstack/requirements
- openstack-infra/shade
- job:
name: bifrost-integration-tinyipa
parent: legacy-base
run: playbooks/legacy/bifrost-integration-tinyipa/run
post-run: playbooks/legacy/bifrost-integration-tinyipa/post
timeout: 3600
required-projects:
- openstack/bifrost
- openstack/ironic
- openstack/ironic-inspector
- openstack/python-ironic-inspector-client
- openstack/python-ironicclient
- openstack/requirements
- openstack-infra/shade
- job:
name: bifrost-integration-tinyipa-centos-7
parent: legacy-base
run: playbooks/legacy/bifrost-integration-tinyipa-centos-7/run
post-run: playbooks/legacy/bifrost-integration-tinyipa-centos-7/post
timeout: 3600
nodeset: legacy-centos-7
required-projects:
- openstack/bifrost
- openstack/ironic
- openstack/ironic-inspector
- openstack/python-ironic-inspector-client
- openstack/python-ironicclient
- openstack/requirements
- openstack-infra/shade
- job:
name: bifrost-integration-tinyipa-opensuse-423
parent: legacy-base
run: playbooks/legacy/bifrost-integration-tinyipa-opensuse-423/run
post-run: playbooks/legacy/bifrost-integration-tinyipa-opensuse-423/post
timeout: 3600
nodeset: legacy-opensuse-423
required-projects:
- openstack/bifrost
- openstack/ironic
- openstack/ironic-inspector
- openstack/python-ironic-inspector-client
- openstack/python-ironicclient
- openstack/requirements
- openstack-infra/shade

79
zuul.d/project.yaml Normal file
View File

@ -0,0 +1,79 @@
- project:
name: openstack/bifrost
experimental:
jobs:
- bifrost-integration-tinyipa-opensuse-423:
branches: ^(?!stable/ocata).*$
irrelevant-files:
- ^.*\.rst$
- ^doc/.*$
- ^releasenotes/.*$
check:
jobs:
- bifrost-integration-tinyipa-centos-7:
voting: false
irrelevant-files:
- ^.*\.rst$
- ^doc/.*$
- ^releasenotes/.*$
- bifrost-integration-dibipa-debian-centos-7:
voting: false
irrelevant-files:
- ^.*\.rst$
- ^doc/.*$
- ^releasenotes/.*$
- bifrost-integration-tinyipa:
irrelevant-files:
- ^.*\.rst$
- ^doc/.*$
- ^releasenotes/.*$
- bifrost-integration-tinyipa-opensuse-423:
branches: ^(?!stable/ocata).*$
irrelevant-files:
- ^.*\.rst$
- ^doc/.*$
- ^releasenotes/.*$
- bifrost-integration-dibipa-debian:
voting: false
irrelevant-files:
- ^.*\.rst$
- ^doc/.*$
- ^releasenotes/.*$
- bifrost-integration-dibipa-debian-opensuse-423:
voting: false
irrelevant-files:
- ^.*\.rst$
- ^doc/.*$
- ^releasenotes/.*$
- bifrost-integration-dhcp:
voting: false
irrelevant-files:
- ^.*\.rst$
- ^doc/.*$
- ^releasenotes/.*$
- bifrost-integration-dhcp-opensuse-423:
voting: false
irrelevant-files:
- ^.*\.rst$
- ^doc/.*$
- ^releasenotes/.*$
- bifrost-integration-dhcp-centos-7:
voting: false
irrelevant-files:
- ^.*\.rst$
- ^doc/.*$
- ^releasenotes/.*$
gate:
jobs:
- bifrost-integration-tinyipa:
irrelevant-files:
- ^.*\.rst$
- ^doc/.*$
- ^releasenotes/.*$
- bifrost-integration-tinyipa-opensuse-423:
branches: ^(?!stable/ocata).*$
irrelevant-files:
- ^.*\.rst$
- ^doc/.*$
- ^releasenotes/.*$