-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcloudbuild.yaml
50 lines (42 loc) · 1.77 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
steps:
# Build the container image
- name: 'gcr.io/cloud-builders/docker'
args: ['build', '-t', 'gcr.io/$PROJECT_ID/${_IMAGE_NAME}', '.']
# Push the container image to Container Registry
- name: 'gcr.io/cloud-builders/docker'
args: ['push', 'gcr.io/$PROJECT_ID/${_IMAGE_NAME}']
# Deploy container image to Cloud Run Region 1
- name: 'gcr.io/google.com/cloudsdktool/cloud-sdk'
entrypoint: gcloud
args: ['run', 'deploy', '${_SERVICE_NAME}',
'--image', 'gcr.io/$PROJECT_ID/${_IMAGE_NAME}',
'--region', '${_REGION_1}',
'--allow-unauthenticated']
# Build the integration test container image
- name: 'gcr.io/cloud-builders/docker'
args: ['build', '-t', 'gcr.io/$PROJECT_ID/${_IMAGE_NAME_TESTS}', './integ_tests']
# Push the container image to Container Registry
- name: 'gcr.io/cloud-builders/docker'
args: ['push', 'gcr.io/$PROJECT_ID/${_IMAGE_NAME_TESTS}']
- name: 'gcr.io/google.com/cloudsdktool/cloud-sdk'
entrypoint: gcloud
args: ['run', 'deploy', '${_SERVICE_NAME_TESTS}',
'--image', 'gcr.io/$PROJECT_ID/${_IMAGE_NAME_TESTS}',
'--region', '${_REGION_1}']
# Deploy container image to Cloud Run Region 2
- name: 'gcr.io/google.com/cloudsdktool/cloud-sdk'
entrypoint: gcloud
args: ['run', 'deploy', '${_SERVICE_NAME}',
'--image', 'gcr.io/$PROJECT_ID/${_IMAGE_NAME}',
'--region', '${_REGION_2}',
'--allow-unauthenticated']
substitutions:
_IMAGE_NAME: python_flask_app_image
_IMAGE_NAME_TESTS: python_flask_app_tests_image
_SERVICE_NAME: python-flask-service
_SERVICE_NAME_TESTS: python-flask-service-tests
_REGION_1: us-east1
_REGION_2: us-central1
images:
- gcr.io/$PROJECT_ID/${_IMAGE_NAME}
- gcr.io/$PROJECT_ID/${_IMAGE_NAME_TESTS}