a2029198c2
This should permit running the openshift-ansible docker image installer from within the mistral container. Change-Id: Ied75bfbeed71aca83962e60bfc801a2527f5dfba
56 lines
1.7 KiB
Bash
Executable File
56 lines
1.7 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
: ${CONFIG_DOWNLOAD_DIR:=}
|
|
: ${OPENSHIFT_ANSIBLE_IMAGE:=docker.io/openshift/origin-ansible:latest}
|
|
|
|
usage () {
|
|
echo "Usage: $0 [options]"
|
|
echo ""
|
|
echo "Options:"
|
|
echo " -i, --image the openshift-ansible image tag to use. Default to"
|
|
echo " docker.io/openshift/origin-ansible:latest"
|
|
echo " -d, --config-download-dir the path to the config-download directory for openshift"
|
|
echo " -h, --help print this help and exit"
|
|
}
|
|
|
|
OPTS=`getopt -o hd:i: --long help,config-download-dir:,image: -- "$@"`
|
|
eval set -- "$OPTS"
|
|
|
|
while true; do
|
|
case "$1" in
|
|
-h | --help)
|
|
usage; exit ;;
|
|
-d | --config-download-dir)
|
|
shift
|
|
export CONFIG_DOWNLOAD_DIR=$1; shift ;;
|
|
-i | --image)
|
|
shift
|
|
export OPENSHIFT_ANSIBLE_IMAGE=$1; shift ;;
|
|
--) shift ; break ;;
|
|
* ) break ;;
|
|
esac
|
|
done
|
|
|
|
if [[ -z $CONFIG_DOWNLOAD_DIR ]]; then
|
|
echo "Missing required --config-download-dir option"
|
|
usage
|
|
exit
|
|
fi
|
|
|
|
ANSIBLE_OPTS="-e @${CONFIG_DOWNLOAD_DIR}/openshift/global_vars.yml"
|
|
if [[ -f ${CONFIG_DOWNLOAD_DIR}/openshift/global_gluster_vars.yml ]]; then
|
|
ANSIBLE_OPTS="${ANSIBLE_OPTS} -e @${CONFIG_DOWNLOAD_DIR}/openshift/global_gluster_vars.yml"
|
|
fi
|
|
|
|
docker run \
|
|
--net=host \
|
|
-u `id -u` \
|
|
-v ${CONFIG_DOWNLOAD_DIR}:${CONFIG_DOWNLOAD_DIR} \
|
|
-w ${CONFIG_DOWNLOAD_DIR} \
|
|
-e ANSIBLE_HOST_KEY_CHECKING=False \
|
|
-e ANSIBLE_CONFIG=${CONFIG_DOWNLOAD_DIR}/ansible.cfg \
|
|
-e INVENTORY_DIR=${CONFIG_DOWNLOAD_DIR}/openshift/inventory \
|
|
-e PLAYBOOK_FILE=${CONFIG_DOWNLOAD_DIR}/openshift/playbook.yml \
|
|
-e OPTS="${ANSIBLE_OPTS}" \
|
|
-t ${OPENSHIFT_ANSIBLE_IMAGE}
|