/
merkely_log_deployment.sh
executable file
·39 lines (33 loc) · 1.3 KB
/
merkely_log_deployment.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
#!/bin/bash -Eeu
# - - - - - - - - - - - - - - - - - - -
merkely_log_deployment()
{
local -r MERKELY_ENVIRONMENT="${1}"
local -r MERKELY_HOST="${2}"
local -r MERKELY_OWNER=cyber-dojo
local -r MERKELY_PIPELINE=dashboard
# Set CYBER_DOJO_DASHBOARD_IMAGE, CYBER_DOJO_DASHBOARD_TAG
local -r VERSIONER_URL=https://raw.githubusercontent.com/cyber-dojo/versioner/master
export $(curl "${VERSIONER_URL}/app/.env")
local -r CYBER_DOJO_DASHBOARD_TAG="${CIRCLE_SHA1:0:7}"
# Pull image so merkely_fingerprint() works
docker pull ${CYBER_DOJO_DASHBOARD_IMAGE}:${CYBER_DOJO_DASHBOARD_TAG}
docker run \
--env MERKELY_COMMAND=log_deployment \
--env MERKELY_OWNER=${MERKELY_OWNER} \
--env MERKELY_PIPELINE=${MERKELY_PIPELINE} \
--env MERKELY_FINGERPRINT=$(merkely_fingerprint) \
--env MERKELY_DESCRIPTION="Deployed to ${environment} in circleci pipeline" \
--env MERKELY_ENVIRONMENT="${MERKELY_ENVIRONMENT}" \
--env MERKELY_CI_BUILD_URL=${CIRCLE_BUILD_URL} \
--env MERKELY_API_TOKEN=${MERKELY_API_TOKEN} \
--env MERKELY_HOST="${MERKELY_HOST}" \
--rm \
--volume /var/run/docker.sock:/var/run/docker.sock \
merkely/change:latest
}
# - - - - - - - - - - - - - - - - - - -
merkely_fingerprint()
{
echo "docker://${CYBER_DOJO_DASHBOARD_IMAGE}:${CYBER_DOJO_DASHBOARD_TAG}"
}