-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild.sh
executable file
·27 lines (21 loc) · 889 Bytes
/
build.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
#!/usr/bin/env bash
set -euo pipefail
SCRIPT_DIR="$(dirname "$0")"
cd "$SCRIPT_DIR"
image_name="${DOCKER_IMAGE:-dciancu/borgbackup-server}"
image_arch="${BUILD_ARCH:-$(arch | tr -d '\n')}"
if [[ -n "${CIRCLE_BRANCH+x}" ]] && [[ "$CIRCLE_BRANCH" == 'test' ]]; then
image_tag="${image_name}:test-${image_arch}"
else
if [[ -n "${CIRCLE_BRANCH+x}" ]] && [[ "$CIRCLE_BRANCH" == 'build' ]]; then
docker images | grep "$image_name" | tr -s ' ' | cut -d ' ' -f 2 \
| xargs -I {} docker rmi -f "${image_name}:{}" || true
docker buildx prune -f
fi
image_tag="${image_name}:latest-${image_arch}"
fi
docker build -t "$image_tag" --pull --build-arg "UID=${UID:-50000}" --build-arg "GID=${GID:-50000}" .
if [[ -n "${CIRCLE_BRANCH+x}" ]]; then
echo "$DOCKER_PASS" | docker login -u "$DOCKER_USERNAME" --password-stdin
docker push "$image_tag"
fi