/
cloudbuild.yaml
63 lines (63 loc) · 2.38 KB
/
cloudbuild.yaml
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
timeout: 7200s
options:
machineType: N1_HIGHCPU_32
steps:
- name: 'maven:3.6.3-openjdk-11'
entrypoint: 'bash'
args:
- '-c'
- mvn package -Dmaven.test.skip=true
- name: 'gcr.io/cloud-builders/docker'
entrypoint: 'bash'
timeout: 7200s
env:
- "DEBIAN_FRONTEND=noninteractive"
args:
- '-c'
- |
if [ -n "${_DEPLOYMENT}" ]; then
if [ -n "${_NATIVE}" ]; then
apt update && apt install -y wget &&
wget -c https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-${_GRAAL_VM_VERSION}/graalvm-ce-java11-linux-amd64-${_GRAAL_VM_VERSION}.tar.gz -O - | tar -xz &&
mv graalvm-ce-java11-${_GRAAL_VM_VERSION} /tmp/graalvm &&
export PATH=/tmp/graalvm/bin:$$PATH &&
export JAVA_HOME=/tmp/graalvm &&
java -version &&
gu install native-image &&
./gradlew build -Dquarkus.package.type=native -Dquarkus.native.container-build=true -x test
else
docker build -f src/main/docker/Dockerfile.jvm -t ${_DOCKER_REPO_URL}:$(echo ${BUILD_ID} | cut -b 1-8) .
fi
fi
- name: 'gcr.io/cloud-builders/docker'
entrypoint: 'bash'
env:
- "DEBIAN_FRONTEND=noninteractive"
- "AWS_ACCESS_KEY_ID=${_AWS_ACCESS_KEY_ID}"
- "AWS_SECRET_ACCESS_KEY=${_AWS_SECRET_ACCESS_KEY}"
- "AWS_DEFAULT_REGION=${_AWS_DEFAULT_REGION}"
args:
- '-c'
- |
if [ -n "${_DEPLOYMENT}" ]; then
apt update && apt install -y unzip &&
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" &&
unzip awscliv2.zip &&
./aws/install &&
aws ecr get-login-password | docker login --username AWS --password-stdin ${_DOCKER_REPO_URL}
docker push ${_DOCKER_REPO_URL}:$(echo ${BUILD_ID} | cut -b 1-8)
fi
- name: 'gcr.io/cloud-builders/kubectl'
entrypoint: 'bash'
env:
- "AWS_ACCESS_KEY_ID=${_AWS_ACCESS_KEY_ID}"
- "AWS_SECRET_ACCESS_KEY=${_AWS_SECRET_ACCESS_KEY}"
- "AWS_DEFAULT_REGION=${_AWS_DEFAULT_REGION}"
args:
- '-c'
- |
if [ -n "${_DEPLOYMENT}" ]; then
./aws/install &&
aws eks update-kubeconfig --name ${_CLUSTER} --region=${_AWS_DEFAULT_REGION} &&
kubectl -n ${_NAMESPACE} set image deployment/${_DEPLOYMENT} ${_DEPLOYMENT}=${_DOCKER_REPO_URL}:$(echo ${BUILD_ID} | cut -b 1-8)
fi