92 lines (83 loc) · 3.75 KB
/
deploy.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
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
name: Deploy Docker Images
#on: [ push ]
on:
push:
tags:
- '*'
jobs:
deploy-vor:
runs-on: ubuntu-latest
env:
DOCKER_BUILDKIT: 1
steps:
- uses: actions/checkout@v3
- name: Get the version
id: get_version
run: echo ::set-output name=VERSION::${GITHUB_REF#refs/tags/}
- name: Setup secrets
run: |
touch sentrysecret
echo SENTRY_ORG=obserfy >> sentrysecret
echo SENTRY_AUTH_TOKEN=$SENTRY_AUTH_TOKEN >> sentrysecret
echo SENTRY_PROJECT=vor >> sentrysecret
env:
SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}
- name: Build docker image
run: docker build -f ./docker/vor/prod.dockerfile -t "obserfy/vor:${{ steps.get_version.outputs.VERSION }}" .
- name: Docker login
run: echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_LOGIN" --password-stdin
env:
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
DOCKER_LOGIN: ${{ secrets.DOCKER_LOGIN }}
- name: Push image
run: docker push obserfy/vor:${{ steps.get_version.outputs.VERSION }}
- name: Sentry Release
env:
SENTRY_ORG: obserfy
SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}
run: |
yarn dlx @sentry/cli releases -p vor-frontend new ${{ steps.get_version.outputs.VERSION }}
yarn dlx @sentry/cli releases -p vor-frontend set-commits --auto ${{ steps.get_version.outputs.VERSION }}
yarn dlx @sentry/cli releases -p vor-frontend finalize ${{ steps.get_version.outputs.VERSION }}
yarn dlx @sentry/cli releases -p vor-backend new ${{ steps.get_version.outputs.VERSION }}
yarn dlx @sentry/cli releases -p vor-backend set-commits --auto ${{ steps.get_version.outputs.VERSION }}
yarn dlx @sentry/cli releases -p vor-backend finalize ${{ steps.get_version.outputs.VERSION }}
deploy-gaia:
runs-on: ubuntu-latest
env:
DOCKER_BUILDKIT: 1
NEXT_PUBLIC_GAIA_SEGMENT_KEY: ${{ secrets.NEXT_PUBLIC_GAIA_SEGMENT_KEY }}
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
DOCKER_LOGIN: ${{ secrets.DOCKER_LOGIN }}
steps:
- uses: actions/checkout@v3
- name: Get the version
id: get_version
run: echo ::set-output name=VERSION::${GITHUB_REF#refs/tags/}
- name: Setup secrets
run: |
touch sentrysecret
echo SENTRY_ORG=obserfy >> sentrysecret
echo SENTRY_AUTH_TOKEN=$SENTRY_AUTH_TOKEN >> sentrysecret
echo SENTRY_PROJECT=gaia >> sentrysecret
echo NEXT_PUBLIC_SENTRY_DSN=https://cb901298e868441898d8717f07a20188@o330610.ingest.sentry.io/5447244 >> sentrysecret
env:
SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}
- name: Build docker image
run: docker build --secret id=sentrysecret,src=sentrysecret -f ./docker/gaia/prod.dockerfile -t "obserfy/gaia:${{ steps.get_version.outputs.VERSION }}" .
- name: Docker login
run: echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_LOGIN" --password-stdin
env:
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
DOCKER_LOGIN: ${{ secrets.DOCKER_LOGIN }}
- name: Push image
run: docker push obserfy/gaia:${{ steps.get_version.outputs.VERSION }}
- name: Sentry Release
env:
SENTRY_ORG: obserfy
SENTRY_PROJECT: gaia
SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}
run: |
yarn dlx @sentry/cli releases -p gaia new ${{ steps.get_version.outputs.VERSION }}
yarn dlx @sentry/cli releases -p gaia set-commits --auto ${{ steps.get_version.outputs.VERSION }}
yarn dlx @sentry/cli releases -p gaia finalize ${{ steps.get_version.outputs.VERSION }}