Migrate pike/master to stable/dev build streams

The use of pike/master naming when building StarlingX docker images
does not properly reflect the differences in how images are built,
resulting in some confusion for developers. Partly to address this,
and to allow for independence between images, this is being migrated
to use stable/dev build streams.

The stable build stream uses a base image (ie. stx-centos) that has
software repo configuration that points to StarlingX build output as a
source for software package installation. Images that use an upstream
repo as the main project code would generally use a stable branch for
this build stream, as well. For example, once Openstack Stein is
released, the stable builds for StarlingX Openstack services will be
updated to build from a stable/stein branch.

The dev build stream uses only upstream sources for software
installation, with images building from upstream master branches,
generally.

The stx-libvirt image, for example, is built solely from StarlingX
build output, and is therefore built in the stable build stream.

An image lineup for the stx-openstack application could therefore be a
mixture of stable and dev build stream images. The "stable"
application lineup (once we have Stein) would be all stable build
stream images, while the "dev" lineup would be dev build stream images
plus stable images for any that are stable-only (such as stx-libvirt).

To roll out these changes without impacting designers or builds, the
pike/master builds will still be supported for a short period.

This update provides the tool and base configuration changes to
support the introduction of the stable/dev build streams.

Change-Id: Ib5dc9a7c1d8c37368d073e28d83eeb883766ee3f
Story: 2005248
Task: 30098
Signed-off-by: Don Penney <don.penney@windriver.com>
This commit is contained in:
Don Penney 2019-03-19 14:20:03 -04:00
parent e5822469e2
commit 6c0cfedcaf
11 changed files with 153 additions and 56 deletions

View File

@ -5,7 +5,7 @@ PRIVATE_REGISTRY=xxx.xxx.xxx.xxx:9001
VERSION=2018.11.13
OS=centos
OS_VERSION=7.5.1804
OPENSTACK_RELEASE=pike
BUILD_STREAM=stable
HOST_PORT=8088
## Step 1: Build stx-centos
@ -25,15 +25,15 @@ time $MY_REPO/build-tools/build-docker-images/build-stx-base.sh \
time $MY_REPO/build-tools/build-wheels/build-wheel-tarball.sh \
--os ${OS} \
--os-version ${OS_VERSION} \
--release ${OPENSTACK_RELEASE}
--stream ${BUILD_STREAM}
## Step 3: Build images
time $MY_REPO/build-tools/build-docker-images/build-stx-images.sh \
--os ${OS} \
--version ${VERSION} \
--release ${OPENSTACK_RELEASE} \
--stream ${BUILD_STREAM} \
--base ${PRIVATE_REGISTRY}/${PRIVATE_REGISTRY_USERID}/stx-${OS}:${VERSION} \
--wheels http://${HOSTNAME}:${HOST_PORT}/${MY_WORKSPACE}/std/build-wheels-${OS}-${OPENSTACK_RELEASE}/stx-${OS}-${OPENSTACK_RELEASE}-wheels.tar \
--wheels http://${HOSTNAME}:${HOST_PORT}/${MY_WORKSPACE}/std/build-wheels-${OS}-${BUILD_STREAM}/stx-${OS}-${OPENSTACK_RELEASE}-wheels.tar \
--user ${PRIVATE_REGISTRY_USERID} \
--registry ${PRIVATE_REGISTRY} \
--push --latest \

View File

@ -18,7 +18,7 @@ fi
SUPPORTED_OS_ARGS=('centos')
OS=centos
OS_VERSION=7.5.1804
OPENSTACK_RELEASE=pike
BUILD_STREAM=stable
IMAGE_VERSION=
PUSH=no
PROXY=""
@ -41,7 +41,7 @@ Options:
--os: Specify base OS (valid options: ${SUPPORTED_OS_ARGS[@]})
--os-version: Specify OS version
--version: Specify version for output image
--release: Openstack release (default: pike)
--stream: Build stream, stable or dev (default: stable)
--repo: Software repository (Format: name,baseurl), can be specified multiple times
--local: Use local build for software repository (cannot be used with --repo)
--push: Push to docker repo
@ -56,7 +56,7 @@ Options:
EOF
}
OPTS=$(getopt -o h -l help,os:,os-version:,version:,release:,repo:,push,proxy:,latest,latest-tag:,user:,registry:,local,clean,hostname: -- "$@")
OPTS=$(getopt -o h -l help,os:,os-version:,version:,stream:,release:,repo:,push,proxy:,latest,latest-tag:,user:,registry:,local,clean,hostname: -- "$@")
if [ $? -ne 0 ]; then
usage
exit 1
@ -83,8 +83,12 @@ while true; do
IMAGE_VERSION=$2
shift 2
;;
--release)
OPENSTACK_RELEASE=$2
--stream)
BUILD_STREAM=$2
shift 2
;;
--release) # Temporarily keep --release support as an alias for --stream
BUILD_STREAM=$2
shift 2
;;
--repo)
@ -162,7 +166,7 @@ if [ ${#REPO_LIST[@]} -eq 0 ]; then
if [ "${LOCAL}" = "yes" ]; then
REPO_LIST+=("local-std,http://${HOST}:8088${MY_WORKSPACE}/std/rpmbuild/RPMS")
REPO_LIST+=("stx-distro,http://${HOST}:8088${MY_REPO}/cgcs-${OS}-repo/Binary")
elif [ "${OPENSTACK_RELEASE}" != "master" ]; then
elif [ "${BUILD_STREAM}" != "dev" -a "${BUILD_STREAM}" != "master" ]; then
echo "Either --local or --repo must be specified" >&2
exit 1
fi
@ -186,7 +190,7 @@ if [ $? -ne 0 ]; then
fi
# Get the Dockerfile
SRC_DOCKERFILE=${MY_SCRIPT_DIR}/stx-${OS}/Dockerfile.${OPENSTACK_RELEASE}
SRC_DOCKERFILE=${MY_SCRIPT_DIR}/stx-${OS}/Dockerfile.${BUILD_STREAM}
cp ${SRC_DOCKERFILE} ${BUILDDIR}/Dockerfile
# Generate the stx.repo file

View File

@ -19,7 +19,7 @@ source ${MY_REPO}/build-tools/git-utils.sh
SUPPORTED_OS_ARGS=('centos')
OS=centos
OPENSTACK_RELEASE=pike
BUILD_STREAM=stable
IMAGE_VERSION=$(date --utc '+%Y.%m.%d.%H.%M') # Default version, using timestamp
PREFIX=dev
LATEST_PREFIX=""
@ -42,7 +42,7 @@ $(basename $0)
Options:
--os: Specify base OS (valid options: ${SUPPORTED_OS_ARGS[@]})
--version: Specify version for output image
--release: Openstack release (default: pike)
--stream: Build stream, stable or dev (default: stable)
--base: Specify base docker image (required option)
--wheels: Specify path to wheels tarball or image, URL or docker tag (required option)
--push: Push to docker repo
@ -195,7 +195,7 @@ function build_image_loci {
docker build ${WORKDIR}/loci --no-cache \
"${BUILD_ARGS[@]}" \
--tag ${build_image_name} 2>&1 | tee ${WORKDIR}/docker-${LABEL}-${OS}-${OPENSTACK_RELEASE}.log
--tag ${build_image_name} 2>&1 | tee ${WORKDIR}/docker-${LABEL}-${OS}-${BUILD_STREAM}.log
if [ ${PIPESTATUS[0]} -ne 0 ]; then
echo "Failed to build ${LABEL}... Aborting"
RESULTS_FAILED+=(${LABEL})
@ -312,7 +312,7 @@ function build_image_docker {
BASE_BUILD_ARGS+=(--build-arg http_proxy=$PROXY)
fi
BASE_BUILD_ARGS+=(--tag ${build_image_name})
docker build ${BASE_BUILD_ARGS[@]} 2>&1 | tee ${WORKDIR}/docker-${LABEL}-${OS}-${OPENSTACK_RELEASE}.log
docker build ${BASE_BUILD_ARGS[@]} 2>&1 | tee ${WORKDIR}/docker-${LABEL}-${OS}-${BUILD_STREAM}.log
if [ ${PIPESTATUS[0]} -ne 0 ]; then
echo "Failed to build ${LABEL}... Aborting"
@ -360,7 +360,7 @@ function build_image {
esac
}
OPTS=$(getopt -o h -l help,os:,version:,release:,push,proxy:,user:,registry:,release:,base:,wheels:,only:,skip:,prefix:,latest,latest-prefix:,clean -- "$@")
OPTS=$(getopt -o h -l help,os:,version:,release:,stream:,push,proxy:,user:,registry:,base:,wheels:,only:,skip:,prefix:,latest,latest-prefix:,clean -- "$@")
if [ $? -ne 0 ]; then
usage
exit 1
@ -391,8 +391,12 @@ while true; do
IMAGE_VERSION=$2
shift 2
;;
--release)
OPENSTACK_RELEASE=$2
--stream)
BUILD_STREAM=$2
shift 2
;;
--release) # Temporarily keep --release support as an alias for --stream
BUILD_STREAM=$2
shift 2
;;
--prefix)
@ -473,7 +477,7 @@ if [ -z "${BASE}" ]; then
exit 1
fi
IMAGE_TAG="${OS}-${OPENSTACK_RELEASE}"
IMAGE_TAG="${OS}-${BUILD_STREAM}"
IMAGE_TAG_LATEST="${IMAGE_TAG}-latest"
if [ -n "${LATEST_PREFIX}" ]; then
@ -511,10 +515,10 @@ if [ $? -ne 0 ]; then
fi
# Find the directives files
for image_build_inc_file in $(find ${GIT_LIST} -maxdepth 1 -name "${OS}_${OPENSTACK_RELEASE}_docker_images.inc"); do
for image_build_inc_file in $(find ${GIT_LIST} -maxdepth 1 -name "${OS}_${BUILD_STREAM}_docker_images.inc"); do
basedir=$(dirname ${image_build_inc_file})
for image_build_dir in $(sed -e 's/#.*//' ${image_build_inc_file} | sort -u); do
for image_build_file in ${basedir}/${image_build_dir}/${OS}/*.${OPENSTACK_RELEASE}_docker_image; do
for image_build_file in ${basedir}/${image_build_dir}/${OS}/*.${BUILD_STREAM}_docker_image; do
# Failures are reported by the build functions
build_image ${image_build_file}
done

View File

@ -0,0 +1,14 @@
# Expected build arguments:
# RELEASE: centos release
#
ARG RELEASE=7.5.1804
FROM centos:${RELEASE}
RUN set -ex ;\
sed -i '/\[main\]/ atimeout=120' /etc/yum.conf ;\
yum install -y centos-release-openstack-rocky ;\
rm -rf \
/var/log/* \
/tmp/* \
/var/tmp/*

View File

@ -0,0 +1,25 @@
# Expected build arguments:
# RELEASE: centos release
# REPO_OPTS: yum options to enable StarlingX repo
#
ARG RELEASE=7.5.1804
FROM centos:${RELEASE}
ARG REPO_OPTS
# The stx.repo file must be generated by the build tool first
COPY stx.repo /
RUN set -ex ;\
sed -i '/\[main\]/ atimeout=120' /etc/yum.conf ;\
mv /stx.repo /etc/yum.repos.d/ ;\
yum upgrade --disablerepo=* ${REPO_OPTS} -y ;\
yum install --disablerepo=* ${REPO_OPTS} -y \
qemu-img \
openssh-clients \
;\
rm -rf \
/var/log/* \
/tmp/* \
/var/tmp/*

View File

@ -19,13 +19,13 @@ KEEP_IMAGE=no
KEEP_CONTAINER=no
OS=centos
OS_VERSION=7.5.1804
OPENSTACK_RELEASE=pike
BUILD_STREAM=stable
PROXY=""
function usage {
cat >&2 <<EOF
Usage:
$(basename $0) [ --os <os> ] [ --keep-image ] [ --keep-container ] [ --release <release> ]
$(basename $0) [ --os <os> ] [ --keep-image ] [ --keep-container ] [ --stream <stable|dev> ]
Options:
--os: Specify base OS (eg. centos)
@ -33,12 +33,12 @@ Options:
--keep-image: Skip deletion of the wheel build image in docker
--keep-container: Skip deletion of container used for the build
--proxy: Set proxy <URL>:<PORT>
--release: Openstack release (default: pike)
--stream: Build stream, stable or dev (default: stable)
EOF
}
OPTS=$(getopt -o h -l help,os:,os-version:,keep-image,keep-container,release:,proxy: -- "$@")
OPTS=$(getopt -o h -l help,os:,os-version:,keep-image,keep-container,release:,stream:,proxy: -- "$@")
if [ $? -ne 0 ]; then
usage
exit 1
@ -69,8 +69,12 @@ while true; do
KEEP_CONTAINER=yes
shift
;;
--release)
OPENSTACK_RELEASE=$2
--stream)
BUILD_STREAM=$2
shift 2
;;
--release) # Temporarily keep --release support as an alias for --stream
BUILD_STREAM=$2
shift 2
;;
--proxy)
@ -88,16 +92,16 @@ while true; do
esac
done
BUILD_OUTPUT_PATH=${MY_WORKSPACE}/std/build-wheels-${OS}-${OPENSTACK_RELEASE}/base
BUILD_OUTPUT_PATH=${MY_WORKSPACE}/std/build-wheels-${OS}-${BUILD_STREAM}/base
BUILD_IMAGE_NAME="${USER}-$(basename ${MY_WORKSPACE})-wheelbuilder:${OS}-${OPENSTACK_RELEASE}"
BUILD_IMAGE_NAME="${USER}-$(basename ${MY_WORKSPACE})-wheelbuilder:${OS}-${BUILD_STREAM}"
# BUILD_IMAGE_NAME can't have caps if it's passed to docker build -t $BUILD_IMAGE_NAME.
# The following will substitute caps with lower case.
BUILD_IMAGE_NAME="${BUILD_IMAGE_NAME,,}"
DOCKER_FILE=${DOCKER_PATH}/${OS}-dockerfile
WHEELS_CFG=${DOCKER_PATH}/${OPENSTACK_RELEASE}-wheels.cfg
WHEELS_CFG=${DOCKER_PATH}/${BUILD_STREAM}-wheels.cfg
function supported_os_list {
for f in ${DOCKER_PATH}/*-dockerfile; do
@ -146,7 +150,7 @@ for wheel in $(cat ${WHEELS_CFG} | sed 's/#.*//' | awk -F '|' '{print $1}'); do
fi
done
if [ "${OPENSTACK_RELEASE}" = "master" ]; then
if [ "${BUILD_STREAM}" = "dev" -o "${BUILD_STREAM}" = "master" ]; then
# Download the master wheel from loci, so we're only building pieces not covered by it
MASTER_WHEELS_IMAGE="loci/requirements:master-${OS}"
@ -197,7 +201,7 @@ BASE_IMAGE_PRESENT=$?
# Create the builder image
declare -a BUILD_ARGS
BUILD_ARGS+=(--build-arg RELEASE=${OS_VERSION})
BUILD_ARGS+=(--build-arg OPENSTACK_RELEASE=${OPENSTACK_RELEASE})
BUILD_ARGS+=(--build-arg BUILD_STREAM=${BUILD_STREAM})
if [ ! -z "$PROXY" ]; then
BUILD_ARGS+=(--build-arg http_proxy=$PROXY)
BUILD_ARGS+=(--build-arg https_proxy=$PROXY)

View File

@ -18,7 +18,8 @@ fi
SUPPORTED_OS_ARGS=('centos')
OS=centos
OS_VERSION=7.5.1804
OPENSTACK_RELEASE=pike
BUILD_STREAM=stable
CURRENT_STABLE_OPENSTACK=pike
VERSION=$(date --utc '+%Y.%m.%d.%H.%M') # Default version, using timestamp
PUSH=no
PROXY=""
@ -49,8 +50,8 @@ $(basename $0)
Options:
--os: Specify base OS (valid options: ${SUPPORTED_OS_ARGS[@]})
--os-version: Specify OS version
--release: Openstack release (default: pike)
--os-version: Specify OS version
--stream: Build stream, stable or dev (default: stable)
--push: Push to docker repo
--proxy: Set proxy <URL>:<PORT>
--user: Docker repo userid
@ -59,7 +60,7 @@ Options:
EOF
}
OPTS=$(getopt -o h -l help,os:,os-version:,push,clean,user:,release:,proxy:,version: -- "$@")
OPTS=$(getopt -o h -l help,os:,os-version:,push,clean,user:,release:,stream:,proxy:,version: -- "$@")
if [ $? -ne 0 ]; then
usage
exit 1
@ -94,8 +95,12 @@ while true; do
DOCKER_USER=$2
shift 2
;;
--release)
OPENSTACK_RELEASE=$2
--stream)
BUILD_STREAM=$2
shift 2
;;
--release) # Temporarily keep --release support as an alias for --stream
BUILD_STREAM=$2
shift 2
;;
--proxy)
@ -133,7 +138,7 @@ fi
# Build the base wheels and retrieve the StarlingX wheels
declare -a BUILD_BASE_WL_ARGS
BUILD_BASE_WL_ARGS+=(--os ${OS} --os-version ${OS_VERSION} --release ${OPENSTACK_RELEASE})
BUILD_BASE_WL_ARGS+=(--os ${OS} --os-version ${OS_VERSION} --stream ${BUILD_STREAM})
if [ ! -z "$PROXY" ]; then
BUILD_BASE_WL_ARGS+=(--proxy ${PROXY})
fi
@ -144,13 +149,13 @@ if [ $? -ne 0 ]; then
exit 1
fi
${MY_SCRIPT_DIR}/get-stx-wheels.sh --os ${OS} --release ${OPENSTACK_RELEASE}
${MY_SCRIPT_DIR}/get-stx-wheels.sh --os ${OS} --stream ${BUILD_STREAM}
if [ $? -ne 0 ]; then
echo "Failure running get-stx-wheels.sh" >&2
exit 1
fi
BUILD_OUTPUT_PATH=${MY_WORKSPACE}/std/build-wheels-${OS}-${OPENSTACK_RELEASE}/tarball
BUILD_OUTPUT_PATH=${MY_WORKSPACE}/std/build-wheels-${OS}-${BUILD_STREAM}/tarball
if [ -d ${BUILD_OUTPUT_PATH} ]; then
# Wipe out the existing dir to ensure there are no stale files
rm -rf ${BUILD_OUTPUT_PATH}
@ -158,18 +163,18 @@ fi
mkdir -p ${BUILD_OUTPUT_PATH}
cd ${BUILD_OUTPUT_PATH}
IMAGE_NAME=stx-${OS}-${OPENSTACK_RELEASE}-wheels
IMAGE_NAME=stx-${OS}-${BUILD_STREAM}-wheels
TARBALL_FNAME=${MY_WORKSPACE}/std/build-wheels-${OS}-${OPENSTACK_RELEASE}/${IMAGE_NAME}.tar
TARBALL_FNAME=${MY_WORKSPACE}/std/build-wheels-${OS}-${BUILD_STREAM}/${IMAGE_NAME}.tar
if [ -f ${TARBALL_FNAME} ]; then
rm -f ${TARBALL_FNAME}
fi
# Download the global-requirements.txt and upper-constraints.txt files
if [ "${OPENSTACK_RELEASE}" = "master" ]; then
OPENSTACK_BRANCH=${OPENSTACK_RELEASE}
if [ "${BUILD_STREAM}" = "dev" -o "${BUILD_STREAM}" = "master" ]; then
OPENSTACK_BRANCH=master
else
OPENSTACK_BRANCH=stable/${OPENSTACK_RELEASE}
OPENSTACK_BRANCH=stable/${CURRENT_STABLE_OPENSTACK}
fi
wget https://raw.githubusercontent.com/openstack/requirements/${OPENSTACK_BRANCH}/global-requirements.txt
@ -193,6 +198,9 @@ for name in ${SKIP_CONSTRAINTS[@]}; do
fi
done
# Set nullglob so wildcards will return empty string if no match
shopt -s nullglob
# Copy the base and stx wheels, updating upper-constraints.txt as necessary
for wheel in ../base/*.whl ../stx/wheels/*.whl; do
# Get the wheel name and version from the METADATA
@ -242,6 +250,8 @@ for wheel in ../base/*.whl ../stx/wheels/*.whl; do
fi
done
shopt -u nullglob
echo "Creating $(basename ${TARBALL_FNAME})..."
tar cf ${TARBALL_FNAME} *
if [ $? -ne 0 ]; then

View File

@ -1,7 +1,7 @@
ARG RELEASE=7.5.1804
FROM centos:${RELEASE}
ARG OPENSTACK_RELEASE=pike
ARG BUILD_STREAM=stable
# Install the necessary packages for building the python modules.
# Some of these are dependencies of the specific modules, and could
@ -17,5 +17,5 @@ RUN set -ex ;\
pip install --upgrade pip setuptools
COPY docker-build-wheel.sh /
COPY ${OPENSTACK_RELEASE}-wheels.cfg /wheels.cfg
COPY ${BUILD_STREAM}-wheels.cfg /wheels.cfg

View File

@ -0,0 +1,14 @@
#
# git: wheelname|git|git-source|basedir|branch
# tar: wheelname|tar|wget-source|basedir
# pypi: wheelname|pypi|wget-source
# zip: wheelname|zip|wget-source|basedir
#
# If fix_setup must be called, add |fix_setup at the end of the line
#
lz4-0.9.0-cp27-none-linux_x86_64.whl|git|https://github.com/python-lz4/python-lz4|python-lz4|v0.9.0
panko-5.0.0-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/a9/89/d666e0889d869e41c9b7f87a0a34858b2520782b82e025da84c98e0db8f6/panko-5.0.0.tar.gz|panko-5.0.0
google_api_python_client-1.7.7-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/d7/47/940908e52487440f61fb93ad55cbbe3a28235d3bb143b26affb17b37dd28/google_api_python_client-1.7.7-py2.py3-none-any.whl
neutron_lib-*.whl|git|https://github.com/openstack/neutron-lib|neutron-lib|master
python_openstackclient-*.whl|git|https://github.com/donpenney/python-openstackclient|python-openstackclient|master
openstacksdk-*.whl|git|https://github.com/openstack/openstacksdk|openstacksdk|master

View File

@ -0,0 +1,18 @@
#
# git: wheelname|git|git-source|basedir|branch
# tar: wheelname|tar|wget-source|basedir
# pypi: wheelname|pypi|wget-source
# zip: wheelname|zip|wget-source|basedir
#
# If fix_setup must be called, add |fix_setup at the end of the line
#
PyYAML-3.12-cp27-none-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/4a/85/db5a2df477072b2902b0eb892feb37d88ac635d36245a72a6a69b23b383a/PyYAML-3.12.tar.gz|PyYAML-3.12
configparser-3.5.0-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/7c/69/c2ce7e91c89dc073eb1aa74c0621c3eefbffe8216b3f9af9d3885265c01c/configparser-3.5.0.tar.gz|configparser-3.5.0
enum_compat-0.0.2-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/95/6e/26bdcba28b66126f66cf3e4cd03bcd63f7ae330d29ee68b1f6b623550bfa/enum-compat-0.0.2.tar.gz|enum-compat-0.0.2
msgpack_python-0.4.8-cp27-none-linux_x86_64.whl|git|https://github.com/msgpack/msgpack-python.git|msgpack-python|0.4.8
netifaces-0.10.6-cp27-none-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/72/01/ba076082628901bca750bf53b322a8ff10c1d757dc29196a8e6082711c9d/netifaces-0.10.6.tar.gz|netifaces-0.10.6
positional-1.1.2-py2.py3-none-any.whl|tar|https://files.pythonhosted.org/packages/8c/16/64a4fa0967c486380468dca18867d22ac1c17bba06349e31ace77c7757f7/positional-1.1.2.tar.gz|positional-1.1.2
pycadf-2.6.0-py2-none-any.whl|pypi|https://files.pythonhosted.org/packages/59/95/9e12d47ce915d219d76af7a21095cb1f1f6bec2187abd4ea6c6ff066ff0a/pycadf-2.6.0-py2-none-any.whl
pyinotify-0.9.6-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/e3/c0/fd5b18dde17c1249658521f69598f3252f11d9d7a980c5be8619970646e1/pyinotify-0.9.6.tar.gz|pyinotify-0.9.6
repoze.lru-0.6-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/6e/1e/aa15cc90217e086dc8769872c8778b409812ff036bf021b15795638939e4/repoze.lru-0.6.tar.gz|repoze.lru-0.6
wrapt-1.10.10-cp27-none-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/a3/bb/525e9de0a220060394f4aa34fdf6200853581803d92714ae41fc3556e7d7/wrapt-1.10.10.tar.gz|wrapt-1.10.10|fix_setup

View File

@ -16,21 +16,21 @@ fi
SUPPORTED_OS_ARGS=('centos')
OS=centos
OPENSTACK_RELEASE=pike
BUILD_STREAM=stable
function usage {
cat >&2 <<EOF
Usage:
$(basename $0) [ --os <os> ] [ --release <release> ]
$(basename $0) [ --os <os> ] [ --stream <stable|dev> ]
Options:
--os: Specify base OS (eg. centos)
--release: Openstack release (default: pike)
--stream: Openstack release (default: stable)
EOF
}
OPTS=$(getopt -o h -l help,os:,release: -- "$@")
OPTS=$(getopt -o h -l help,os:,release:,stream: -- "$@")
if [ $? -ne 0 ]; then
usage
exit 1
@ -49,8 +49,12 @@ while true; do
OS=$2
shift 2
;;
--release)
OPENSTACK_RELEASE=$2
--stream)
BUILD_STREAM=$2
shift 2
;;
--release) # Temporarily keep --release support as an alias for --stream
BUILD_STREAM=$2
shift 2
;;
-h | --help )
@ -81,7 +85,7 @@ fi
source ${MY_REPO}/build-tools/git-utils.sh
function get_wheels_files {
find ${GIT_LIST} -maxdepth 1 -name "${OS}_${OPENSTACK_RELEASE}_wheels.inc"
find ${GIT_LIST} -maxdepth 1 -name "${OS}_${BUILD_STREAM}_wheels.inc"
}
declare -a WHEELS_FILES=($(get_wheels_files))
@ -90,7 +94,7 @@ if [ ${#WHEELS_FILES[@]} -eq 0 ]; then
exit 1
fi
BUILD_OUTPUT_PATH=${MY_WORKSPACE}/std/build-wheels-${OS}-${OPENSTACK_RELEASE}/stx
BUILD_OUTPUT_PATH=${MY_WORKSPACE}/std/build-wheels-${OS}-${BUILD_STREAM}/stx
if [ -d ${BUILD_OUTPUT_PATH} ]; then
# Wipe out the existing dir to ensure there are no stale files
rm -rf ${BUILD_OUTPUT_PATH}