forked from quarkusio/code.quarkus.io
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathbuild_deploy.sh
executable file
·22 lines (18 loc) · 987 Bytes
/
build_deploy.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#!/bin/bash
set -exv
GIT_REV=$(git rev-parse HEAD)
GIT_REV_SHORT=$(git rev-parse --short=7 HEAD)
IMAGE=${IMAGE-"quay.io/quarkus/code-quarkus-app"}
IMAGE_TAG=${IMAGE_TAG-$GIT_REV_SHORT}
MAVEN_BUILD_EXTRA_ARGS=${MAVEN_BUILD_EXTRA_ARGS-""}
MAVEN_EXTRA_ARGS=${MAVEN_EXTRA_ARGS-""}
NATIVE_BUILD_MEMORY=${NATIVE_BUILD_MEMORY-"4g"}
docker build --compress -f src/main/docker/Dockerfile.multistage --build-arg NATIVE_BUILD_MEMORY="$NATIVE_BUILD_MEMORY" --build-arg MAVEN_BUILD_EXTRA_ARGS="$MAVEN_BUILD_EXTRA_ARGS -Dgit.commit.id=$GIT_REV" --build-arg MAVEN_EXTRA_ARGS="$MAVEN_EXTRA_ARGS" -t "${IMAGE}:${IMAGE_TAG}" .
if [[ -n "$QUAY_USER" && -n "$QUAY_TOKEN" ]]; then
DOCKER_CONF="$PWD/.docker"
mkdir -p "$DOCKER_CONF"
docker tag "${IMAGE}:${IMAGE_TAG}" "${IMAGE}:latest"
docker --config="$DOCKER_CONF" login -u="$QUAY_USER" -p="$QUAY_TOKEN" quay.io
docker --config="$DOCKER_CONF" push "${IMAGE}:${IMAGE_TAG}"
docker --config="$DOCKER_CONF" push "${IMAGE}:latest"
fi