-
-
Notifications
You must be signed in to change notification settings - Fork 157
/
deploy.sh
executable file
·45 lines (36 loc) · 1.23 KB
/
deploy.sh
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
39
40
41
42
43
44
45
#!/bin/bash
#
# This script runs within the CircleCI environment to deploy st2-docker images
# to Docker Hub.
set -euo pipefail
IDS=$'\n\t'
source bin/common.sh
for name in stackstorm; do
if [ ! -z ${BUILD_DEV} ]; then
# Build unstable, and tag as "dev".
# TODO: Potentially useful to prepend "dev" with revision of latest unstable
# release (e.g. "2.4dev")
${dry_run} docker push stackstorm/${name}:dev
continue
fi
# From this point on, not a dev build...
name_tag="${name}:${tag}"
if ${tagged_build}; then
# gatekeeper.sh returns 'allow' on STDOUT if the images can be pushed
if [ `bin/gatekeeper.sh ${name} ${tag}` != 'allow' ]; then
echo "${name_tag} already exists on docker hub.. not pushing again!"
exit 1
fi
fi
${dry_run} docker push stackstorm/${name}:${tag}
if ${tagged_build}; then
if [ "${st2_tag}" == "${latest_short}" ]; then
${dry_run} docker tag stackstorm/${name_tag} stackstorm/${name}:${short_tag}
${dry_run} docker push stackstorm/${name}:${short_tag}
fi
if [ "${st2_tag}" == "${latest}" ]; then
${dry_run} docker tag stackstorm/${name_tag} stackstorm/${name}:latest
${dry_run} docker push stackstorm/${name}:latest
fi
fi
done