Files
virtual-kubelet/vendor/github.com/hyperhq/hypercli/integration-cli/autotest/util.sh
2018-01-05 10:46:11 -08:00

92 lines
1.9 KiB
Bash
Executable File

#!/bin/bash
set -e
if [ ! -f etc/config ];then
cp etc/config.template etc/config
echo "please config etc/config first"
exit 1
fi
. etc/config
repo="hyperhq/hypercli-auto-test"
tag="auto"
image=${repo}:${tag}
function build(){
echo "starting build..."
echo "=============================================================="
docker build --build-arg http_proxy=${http_proxy} --build-arg https_proxy=${https_proxy} -t ${image} .
}
function push(){
echo -e "\nstarting push [${image}] ..."
echo "=============================================================="
docker push ${image}
}
function run(){
CONFIG_FILE=$1
if [ "${CONFIG_FILE}" != "" ];then
if [ ! -f "${CONFIG_FILE}" ];then
echo "${CONFIG_FILE} not found"
exit 1
else
echo "use config: ${CONFIG_FILE}"
. ${CONFIG_FILE}
fi
else
echo "use default config: etc/config"
fi
docker run -it --rm \
-e http_proxy="$http_proxy" \
-e https_proxy="$https_proxy" \
-e TARGET_REGION="$TARGET_REGION" \
-e BRANCH="$BRANCH" \
-e TEST_CASE_REG="$TEST_CASE_REG" \
-e ACCESS_KEY="${ACCESS_KEY}" \
-e SECRET_KEY="${SECRET_KEY}" \
-e SLACK_TOKEN="${SLACK_TOKEN}" \
-e SLACK_CHANNEL_ID="${SLACK_CHANNEL_ID}" \
${image}
}
case "$1" in
"push")
build
push
;;
"build")
build
;;
"run")
run "$2"
;;
*)
cat <<EOF
usage:
./util.sh # show usage
./util.sh build # build only
./util.sh push # build and push
./util.sh run <config> # run docker container
example:
./util.sh run
./util.sh run etc/config
./util.sh run etc/config.zl2
./util.sh run etc/config.eu1
./util.sh run etc/config.pkt
EOF
exit 1
;;
esac
echo -e "\n=============================================================="
echo "Done!"