48 lines
795 B
Bash
Executable File
48 lines
795 B
Bash
Executable File
#!/usr/bin/env bash
|
|
set -e
|
|
|
|
LOCAL_IMAGE=xaicorp/acme-certbot
|
|
TAG=latest
|
|
REMOTE_IMAGE=dkregistry.xai-corp.net:5000/${LOCAL_IMAGE}:${TAG}
|
|
|
|
build() {
|
|
docker build --rm -f Dockerfile -t ${LOCAL_IMAGE} .
|
|
}
|
|
|
|
build_test() {
|
|
echo testing the image
|
|
docker run --rm $LOCAL_IMAGE --version | grep 'certbot 0.40'
|
|
}
|
|
|
|
build_deploy() {
|
|
echo push to registry
|
|
|
|
docker tag $LOCAL_IMAGE $REMOTE_IMAGE
|
|
docker push $REMOTE_IMAGE
|
|
}
|
|
|
|
print_usage() {
|
|
printf "Usage: %s: [-b] [-t] [-d] \n" "$0"
|
|
echo -b build
|
|
echo -t test
|
|
echo -d push to registry
|
|
echo -h help
|
|
exit 0
|
|
}
|
|
|
|
######
|
|
if [ -z "$1" ]; then
|
|
build && build_test && build_deploy
|
|
exit
|
|
fi
|
|
|
|
while getopts btdh name
|
|
do
|
|
case $name in
|
|
b) build;;
|
|
t) build_test;;
|
|
d) build_deploy;;
|
|
*) print_usage;;
|
|
esac
|
|
done
|