-
Notifications
You must be signed in to change notification settings - Fork 197
40 lines (36 loc) · 1.13 KB
/
ci_cd_web_app.yml
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
name: CI/CD for the web app (API + frontend)
on:
push:
paths-ignore:
- 'batch-prediction-pipeline/'
- 'feature-pipeline/'
- 'training-pipeline'
- '**/*.yml'
- '**/*.md'
branches: [ "main" ]
env:
CLOUDSDK_CORE_PROJECT: '${{ vars.CLOUDSDK_CORE_PROJECT }}'
USER: '${{ vars.USER }}'
INSTANCE_NAME: '${{ vars.APP_INSTANCE_NAME }}'
ZONE: '${{ vars.ZONE }}'
jobs:
ci_cd:
runs-on: ubuntu-latest
steps:
- uses: 'actions/checkout@v3'
- id: 'auth'
uses: 'google-github-actions/auth@v0'
with:
credentials_json: '${{ secrets.GCP_CREDENTIALS }}'
- id: 'compute-ssh'
uses: 'google-github-actions/ssh-compute@v0'
with:
project_id: '${{ env.CLOUDSDK_CORE_PROJECT }}'
user: '${{ env.USER }}'
instance_name: '${{ env.INSTANCE_NAME }}'
zone: '${{ env.ZONE }}'
ssh_private_key: '${{ secrets.GCP_SSH_PRIVATE_KEY }}'
command: >
cd ~/energy-forecasting &&
git pull &&
docker compose -f deploy/app-docker-compose.yml --project-directory . up --build -d