-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathdeploy.yaml
103 lines (95 loc) · 3.09 KB
/
deploy.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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
steps:
- id: Save ssh key
name: gcr.io/cloud-builders/git
args:
- '-c'
- |
echo "$$GITHUB_DEPLOY_KEY" > /root/.ssh/id_ed25519
chmod 400 /root/.ssh/id_ed25519
ssh-keyscan github.com > /root/.ssh/known_hosts
entrypoint: bash
secretEnv:
- GITHUB_DEPLOY_KEY
volumes:
- name: ssh
path: /root/.ssh
- id: Delete existing folder
name: gcr.io/cloud-builders/git
entrypoint: bash
args: ['-c', 'find . -delete']
- id: Clone the repo
name: gcr.io/cloud-builders/git
args:
- clone
- 'git@github.com:spy4x/seed.git'
- .
volumes:
- name: ssh
path: /root/.ssh
- id: Checkout the branch
name: gcr.io/cloud-builders/git
args:
- checkout
- $COMMIT_SHA
- id: Install dependencies
name: gcr.io/$PROJECT_ID/builder
entrypoint: bash
args: ['-c', 'yarn ci:install-deps']
env:
- 'YARN_CACHE_FOLDER=/workspace/.cache/.yarn'
- id: deploy
name: gcr.io/$PROJECT_ID/builder
entrypoint: bash
args:
- -c
- |-
export \
PROJECT_ID=$PROJECT_ID \
REGION=$$REGION \
CLOUD_RUN_API_APP_NAME=$$CLOUD_RUN_API_APP_NAME \
API_URL=$$API_URL \
DB_CONNECTION_STRING=$$DB_CONNECTION_STRING \
CLOUD_SQL_INSTANCE_NAME=$$CLOUD_SQL_INSTANCE_NAME \
FRONT_ADMIN_HOSTING_TARGET=$$FRONT_ADMIN_HOSTING_TARGET \
FRONT_WEB_HOSTING_TARGET=$$FRONT_WEB_HOSTING_TARGET \
NX_CLOUD_AUTH_TOKEN=$$NX_CLOUD_AUTH_TOKEN \
API_KEY_CLOUD_TASKS=$$API_KEY_CLOUD_TASKS \
BAZEL_TARGET=true \
&& yarn ci:deploy
secretEnv:
[
REGION,
CLOUD_RUN_API_APP_NAME,
API_URL,
DB_CONNECTION_STRING,
CLOUD_SQL_INSTANCE_NAME,
FRONT_ADMIN_HOSTING_TARGET,
FRONT_WEB_HOSTING_TARGET,
NX_CLOUD_AUTH_TOKEN,
API_KEY_CLOUD_TASKS,
]
availableSecrets:
secretManager:
- versionName: projects/$PROJECT_ID/secrets/GITHUB_DEPLOY_KEY/versions/latest
env: GITHUB_DEPLOY_KEY
- versionName: projects/$PROJECT_ID/secrets/REGION/versions/latest
env: REGION
- versionName: projects/$PROJECT_ID/secrets/CLOUD_RUN_API_APP_NAME/versions/latest
env: CLOUD_RUN_API_APP_NAME
- versionName: projects/$PROJECT_ID/secrets/API_URL/versions/latest
env: API_URL
- versionName: projects/$PROJECT_ID/secrets/DB_CONNECTION_STRING/versions/latest
env: DB_CONNECTION_STRING
- versionName: projects/$PROJECT_ID/secrets/CLOUD_SQL_INSTANCE_NAME/versions/latest
env: CLOUD_SQL_INSTANCE_NAME
- versionName: projects/$PROJECT_ID/secrets/FRONT_ADMIN_HOSTING_TARGET/versions/latest
env: FRONT_ADMIN_HOSTING_TARGET
- versionName: projects/$PROJECT_ID/secrets/FRONT_WEB_HOSTING_TARGET/versions/latest
env: FRONT_WEB_HOSTING_TARGET
- versionName: projects/$PROJECT_ID/secrets/NX_CLOUD_AUTH_TOKEN/versions/latest
env: NX_CLOUD_AUTH_TOKEN
- versionName: projects/$PROJECT_ID/secrets/API_KEY_CLOUD_TASKS/versions/latest
env: API_KEY_CLOUD_TASKS
timeout: 1800s
options:
machineType: 'N1_HIGHCPU_8'