-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcloudbuild.yaml
58 lines (58 loc) · 1.75 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
steps:
- name: "gcr.io/cloud-builders/gsutil"
entrypoint: "bash"
args:
[
"-c",
"gsutil ls -b gs://$PROJECT_ID-tf-state || gsutil mb gs://$PROJECT_ID-tf-state",
]
- name: "gcr.io/cloud-builders/docker"
args:
[
"build",
"./ui",
"-t",
"us-central1-docker.pkg.dev/$PROJECT_ID/$_ARTIFACT_REPOSITORY_NAME/nginx-ui:$SHORT_SHA",
]
- name: "gcr.io/cloud-builders/docker"
args:
[
"push",
"us-central1-docker.pkg.dev/$PROJECT_ID/$_ARTIFACT_REPOSITORY_NAME/nginx-ui:$SHORT_SHA",
]
- name: "gcr.io/cloud-builders/docker"
args:
[
"build",
"./api",
"-t",
"us-central1-docker.pkg.dev/$PROJECT_ID/$_ARTIFACT_REPOSITORY_NAME/node-api:$SHORT_SHA",
"--target",
"production",
]
- name: "gcr.io/cloud-builders/docker"
args:
[
"push",
"us-central1-docker.pkg.dev/$PROJECT_ID/$_ARTIFACT_REPOSITORY_NAME/node-api:$SHORT_SHA",
]
- id: "tf init"
name: "hashicorp/terraform:1.0.0"
entrypoint: sh
args:
[
"-c",
'terraform -chdir=terraform init -upgrade -backend-config="bucket=$PROJECT_ID-tf-state"',
]
- id: "tf plan"
name: "hashicorp/terraform:1.0.0"
entrypoint: sh
args:
[
"-c",
'terraform -chdir=terraform plan -out=plan.out -var="api_image_name=us-central1-docker.pkg.dev/$PROJECT_ID/$_ARTIFACT_REPOSITORY_NAME/node-api:$SHORT_SHA" -var="project_id=$PROJECT_ID" -var="ui_image_name=us-central1-docker.pkg.dev/$PROJECT_ID/$_ARTIFACT_REPOSITORY_NAME/nginx-ui:$SHORT_SHA"',
]
- id: "tf apply"
name: "hashicorp/terraform:1.0.0"
entrypoint: sh
args: ["-c", "terraform -chdir=terraform apply plan.out"]