summaryrefslogtreecommitdiff
path: root/scripts/docker/build-docker-image.sh
blob: a35e201b4a90ef6e06847f8327ea050d193f250c (plain)
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
#!/bin/sh

set -e
set -o xtrace

if [ -z "${LEAP_CODE_O_MATIC_PRIVATE_TOKEN}" ]; then
  echo "Can't proceed without LEAP_CODE_O_MATIC_PRIVATE_TOKEN variable set."
  exit 1
fi

PIPELINE_URL="https://0xacab.org/api/v4/projects/519/pipelines"
TOKEN_HEADER="PRIVATE-TOKEN: ${LEAP_CODE_O_MATIC_PRIVATE_TOKEN}"
PYTHON_CMD="import sys, json; print json.load(sys.stdin)[1]['sha']"

RESPONSE=$(curl -f -s --header "${TOKEN_HEADER}" ${PIPELINE_URL})
LAST_COMMIT=$(echo "${RESPONSE}" | python -c "${PYTHON_CMD}")

if [ -z "${LAST_COMMIT}" ]; then
  echo "Can't proceed without LAST_COMMIT variable set."
  exit 1
fi

if git diff "${LAST_COMMIT}" HEAD --name-only | grep scripts/docker; then
  docker --version
  docker info
  docker login -u gitlab-ci-token -e sysdev@leap.se -p "${CI_JOB_TOKEN}" "${CI_REGISTRY}"
  docker build -t "${CI_REGISTRY_IMAGE}:latest" scripts/docker
  docker push "${CI_REGISTRY_IMAGE}":latest
fi