Add Makefile
[vaultmon/.git] / build.sh
1 #!/bin/bash
2
3 set -e
4
5 EXTRA_ARGS="$@"
6
7 IMAGE="gonitro/${PWD##*/}"
8 TAG=$(git rev-parse --short HEAD)
9 IMAGE_NAME="${IMAGE}:${TAG}"
10
11 echo Building Go binary
12 CGO_ENABLED=0 GOOS=linux go build -a -x -installsuffix cgo -ldflags '-d -s -w' .
13
14 [[ `file vaultmon | awk '/executable/{print $2}'` != 'ELF' ]] && {
15     echo Must be a Linux ELF binary
16     exit 1
17 }
18
19 echo Building Docker image ${IMAGE_NAME}
20 docker build -t ${IMAGE_NAME} ${EXTRA_ARGS} .
21 [[ $? -eq 0 ]] && {
22     docker tag ${IMAGE_NAME} ${IMAGE}:latest
23     echo Publishing ${IMAGE_NAME}
24     docker push ${IMAGE_NAME}
25     docker push ${IMAGE}:latest
26 }
27
28 exit 0