-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdeploy-worker
executable file
·38 lines (33 loc) · 951 Bytes
/
deploy-worker
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#!/bin/bash
set -e
export PATH=${PWD}/vendor:${PATH}
export PYTHONPATH=${PWD}:${PYTHONPATH}
CLUSTER=
PUBLIC_IP=
SPEC_FILE=
while [ $# -gt 0 ]; do
case ${1} in
--cluster)
shift 1; CLUSTER=$1; shift 1 ;;
--public-ip)
shift 1; PUBLIC_IP=$1; shift 1 ;;
--spec)
shift 1; SPEC_FILE=$1; shift 1 ;;
help|--help|-h)
echo "Command usage:"
echo "deploy-worker --public-ip [hostname] --spec [specfile]"
exit 0 ;;
*)
echo "Refuse to process $@; Unexpected arguments/flag"
exit 1 ;;
esac
done
# Setup Docker Client environment
export DOCKER_HOST=tcp://${PUBLIC_IP}:2376
export DOCKER_TLS_VERIFY=1
export DOCKER_CERT_PATH=${PWD}/cert
export DOCKER_CONFIG=/tmp
# Login to get credentials
eval $(aws ecr get-login --region us-east-1)
# Launch service by specification
docker-compose -p ${CLUSTER} -f ${SPEC_FILE} up -d