Sorin Sbarnea 4a41ca7bf0 Lint fixes for ci-scripts and config folders
This normalizes the formatting of files from ci-scripts and config
folders in order to allow further hardening of linting.

Fixing linting was too big to be made in a single commit as it would
involve too many files to review and could merge conflicts with
existing changes. Thus doing it in few chunks would makes it possible.

Original full change is at https://review.openstack.org/#/c/627545/ and
will be the one merging the last.

Change-Id: Ifb215c0e2ea0ef7115897721f75ba8489bd59b97
2018-12-28 10:01:11 +00:00

50 lines
1.7 KiB
Bash

#!/bin/bash
# CI test that builds images for both promote and gate jobs.
# For the promote jobs it publishes the image to the testing location.
# For the gate jobs it tests them with a full deploy.
# Usage: images.sh <release> <build_system> <config> <job_type>
set -eux
RELEASE=$1
BUILD_SYS=$2
CONFIG=$3
JOB_TYPE=$4
# These are set here to make it possible to locally reproduce the promote
# image building job in the same way as the other jobs.
PUBLISH=${PUBLISH:-"false"}
delorean_current_hash=${delorean_current_hash:-"consistent"}
REL_TYPE=${LOCATION:-"testing"}
if [ "$JOB_TYPE" = "gate" ] || [ "$JOB_TYPE" = "periodic" ]; then
PLAYBOOK='build-images-and-quickstart.yml'
delorean_current_hash='current-passed-ci'
elif [ "$JOB_TYPE" = "promote" ]; then
PLAYBOOK='build-images.yml'
else
echo "Job type must be one of gate, periodic, or promote"
exit 1
fi
# (trown) This is so that we ensure separate ssh sockets for
# concurrent jobs. Without this, two jobs running in parallel
# would try to use the same undercloud-stack socket.
socketdir=$(mktemp -d /tmp/sockXXXXXX)
export ANSIBLE_SSH_CONTROL_PATH=$socketdir/%%h-%%r
bash quickstart.sh \
--tags all \
--config $WORKSPACE/config/general_config/$CONFIG.yml \
--working-dir $WORKSPACE/ \
--playbook $PLAYBOOK \
--extra-vars undercloud_image_url="file:///var/lib/oooq-images/undercloud.qcow2" \
--extra-vars artib_release=$RELEASE \
--extra-vars artib_build_system=$BUILD_SYS \
--extra-vars artib_delorean_hash=$delorean_current_hash \
--extra-vars publish=$PUBLISH \
--extra-vars artib_image_stage_location="$REL_TYPE" \
--bootstrap \
--no-clone \
--release ${CI_ENV:+$CI_ENV/}$RELEASE \
$VIRTHOST