forked from dora-team/fourkeys
-
Notifications
You must be signed in to change notification settings - Fork 0
81 lines (70 loc) · 3.06 KB
/
build_initial_containers.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
name: Build the containers for each service
env:
working_dir: './setup/'
FOURKEYS_PROJECT: 'fourkeys-009742'
PARENT_PROJECT: 'fourkeys-346715'
REGION: 'australia-southeast1'
on:
push:
branches:
- 'main'
- 'release/**'
paths:
- 'event_handler/**'
- 'bq-workers/**'
- 'dashboard/**'
workflow_dispatch:
branches: ['main', 'release/**']
jobs:
build-gc:
name: 'Submit container builds to GCP'
runs-on: ubuntu-latest
defaults:
run:
working-directory: ${{ env.working_dir }}
# Add "id-token" with the intended permissions.
permissions:
contents: 'read'
id-token: 'write'
steps:
- name: Checkout
uses: actions/checkout@v3
- id: 'auth'
uses: 'google-github-actions/auth@v0'
with:
workload_identity_provider: 'projects/92964762464/locations/global/workloadIdentityPools/fourkeys-pool/providers/fourkeys-provider'
service_account: '[email protected]'
- name: 'Set up Cloud SDK'
uses: 'google-github-actions/setup-gcloud@v0'
- name: 'Use gcloud CLI'
run: 'gcloud info'
- uses: dorny/paths-filter@v2
id: filter
with:
filters: |
event_handler:
- 'event_handler/**'
bq_workers:
- 'bq-workers/**'
dashboard:
- 'dashboard/**'
- name: Build and launch event-handler container
if: steps.filter.outputs.event_handler == 'true' || github.event_name == 'workflow_dispatch'
working-directory: './'
run: |
gcloud builds submit ./event_handler --config=./event_handler/cloudbuild.yaml --tag=gcr.io/${{ env.FOURKEYS_PROJECT }}/event-handler --project=${{ env.PARENT_PROJECT }} --gcs-log-dir=gs://${{ env.PARENT_PROJECT }}-cloudbuild-logs
- name: Build and launch Git parser container
if: steps.filter.outputs.bq_workers == 'true' || github.event_name == 'workflow_dispatch'
working-directory: './'
run: |
gcloud builds submit ./bq-workers/github-parser --tag=gcr.io/${{ env.FOURKEYS_PROJECT }}/github-parser --project=${{ env.PARENT_PROJECT }} --gcs-log-dir=gs://${{ env.PARENT_PROJECT }}-cloudbuild-logs
- name: Build and launch Sentry parser container
if: steps.filter.outputs.bq_workers == 'true' || github.event_name == 'workflow_dispatch'
working-directory: './'
run: |
gcloud builds submit ./bq-workers/sentry-parser --tag=gcr.io/${{ env.FOURKEYS_PROJECT }}/sentry-parser --project=${{ env.PARENT_PROJECT }} --gcs-log-dir=gs://${{ env.PARENT_PROJECT }}-cloudbuild-logs
- name: Build and launch dashboard container
if: steps.filter.outputs.dashboard == 'true' || github.event_name == 'workflow_dispatch'
working-directory: './'
run: |
gcloud builds submit ./dashboard --tag=gcr.io/${{ env.FOURKEYS_PROJECT }}/fourkeys-grafana-dashboard --project=${{ env.PARENT_PROJECT }} --gcs-log-dir=gs://${{ env.PARENT_PROJECT }}-cloudbuild-logs