-
Notifications
You must be signed in to change notification settings - Fork 9
174 lines (174 loc) · 6.9 KB
/
dockerize.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
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
name: Deploy deeplinks app
on:
push:
branches: [ main ]
paths-ignore:
- 'postgresql/**'
workflow_dispatch:
defaults:
run:
working-directory: ./
env:
DEEPLINKS_PUBLIC_URL: http://localhost:3006
NEXT_PUBLIC_DEEPLINKS_URL: http://localhost:3006
NEXT_PUBLIC_GQL_PATH: http://localhost:3006/gql
NEXT_PUBLIC_GQL_SSL: 0
NEXT_PUBLIC_DEEPLINKS_SERVER: http://localhost:3007
NEXT_PUBLIC_ENGINES_ROUTE: 0
NEXT_PUBLIC_DISABLE_CONNECTOR: 1
JWT_SECRET: '{"type":"HS256","key":"6HZ/FHOibbfr6FsGaArmXVwY1JEO+l2lTVDJeibc2yj2T6OKmx5dIw3UtMFBdUkhd9Q="}'
HASURA_GRAPHQL_JWT_SECRET: '{"type":"HS256","key":"6HZ/FHOibbfr6FsGaArmXVwY1JEO+l2lTVDJeibc2yj2T6OKmx5dIw3UtMFBdUkhd9Q="}'
DEEP_HASURA_GRAPHQL_JWT_SECRET: '{"type":"HS256","key":"6HZ/FHOibbfr6FsGaArmXVwY1JEO+l2lTVDJeibc2yj2T6OKmx5dIw3UtMFBdUkhd9Q="}'
DEEPLINKS_HASURA_STORAGE_URL: http://deep-hasura-storage:8000/
HASURA_ENDPOINT: http://deep-hasura:8080/v1
DOCKER_DEEPLINKS_URL: http://deep-links:3006
MIGRATIONS_DEEPLINKS_URL: http://host.docker.internal:3006
HASURA_GRAPHQL_ADMIN_SECRET: e9cd987d6c7dd8206a34f7790fed2a29
MIGRATIONS_HASURA_SECRET: e9cd987d6c7dd8206a34f7790fed2a29
DEEPLINKS_HASURA_SECRET: e9cd987d6c7dd8206a34f7790fed2a29
POSTGRES_PASSWORD: d2ef4e87ecc262ff4615887006d8b7b4
HASURA_GRAPHQL_DATABASE_URL: postgres://postgres:d2ef4e87ecc262ff4615887006d8b7b4@deep-postgres:5432/postgres?sslmode=disable
POSTGRES_MIGRATIONS_SOURCE: postgres://postgres:d2ef4e87ecc262ff4615887006d8b7b4@host.docker.internal:5432/postgres?sslmode=disable
RESTORE_VOLUME_FROM_SNAPSHOT: 0
MANUAL_MIGRATIONS: 1
MINIO_ROOT_USER: ce790e9910e093881a2f88382ac18c47
MINIO_ROOT_PASSWORD: 01f99f6095777953c9470ddecfe45931
S3_ACCESS_KEY: ce790e9910e093881a2f88382ac18c47
S3_SECRET_KEY: 01f99f6095777953c9470ddecfe45931
DEEPLINKS_PORT: 3006
DEEPCASE_PORT: 3007
npm_config_yes: true
DEEP_HASURA_PORT: 8080
DEEP_HASURA_GRAPHQL_DATABASE_URL: postgres://postgres:d2ef4e87ecc262ff4615887006d8b7b4@deep-postgres:5432/postgres?sslmode=disable
HASURA_GRAPHQL_ENABLE_CONSOLE: true
DEEP_HASURA_GRAPHQL_ENABLE_CONSOLE: true
HASURA_GRAPHQL_DEV_MODE: true
DEEP_HASURA_GRAPHQL_DEV_MODE: true
HASURA_GRAPHQL_LOG_LEVEL: debug
DEEP_HASURA_GRAPHQL_LOG_LEVEL: debug
HASURA_GRAPHQL_ENABLED_LOG_TYPES: startup,http-log,webhook-log,websocket-log,query-log
DEEP_HASURA_GRAPHQL_ENABLED_LOG_TYPES: startup,http-log,webhook-log,websocket-log,query-log
DEEP_HASURA_GRAPHQL_ADMIN_SECRET: e9cd987d6c7dd8206a34f7790fed2a29
HASURA_GRAPHQL_ENABLE_REMOTE_SCHEMA_PERMISSIONS: true
DEEP_HASURA_GRAPHQL_ENABLE_REMOTE_SCHEMA_PERMISSIONS: true
HASURA_GRAPHQL_UNAUTHORIZED_ROLE: undefined
DEEP_HASURA_GRAPHQL_UNAUTHORIZED_ROLE: undefined
DEEP_POSTGRES_PORT: 5432
POSTGRES_USER: postgres
DEEP_POSTGRES_USER: postgres
DEEP_POSTGRES_PASSWORD: d2ef4e87ecc262ff4615887006d8b7b4
PGGSSENCMODE: disable
DEEP_POSTGRES_GSS_ENCODING_MODE: disable
PGSSLMODE: disable
DEEP_POSTGRES_SSL_MODE: disable
PGREQUIRESSL: 0
DEEP_POSTGRES_REQUIRE_SSL: 0
DEEP_HASURA_STORAGE_PORT: 8000
DEEP_HASURA_STORAGE_HASURA_GRAPHQL_ADMIN_SECRET: e9cd987d6c7dd8206a34f7790fed2a29
HASURA_STORAGE_DEBUG: true
DEEP_HASURA_STORAGE_DEBUG: true
HASURA_METADATA: 1
DEEP_HASURA_STORAGE_HASURA_METADATA: 1
DEEP_HASURA_STORAGE_HASURA_ENDPOINT: http://deep-hasura:8080/v1
S3_ENDPOINT: http://deep-minio:9000
DEEP_HASURA_STORAGE_S3_ENDPOINT: http://deep-minio:9000
DEEP_HASURA_STORAGE_S3_ACCESS_KEY: ce790e9910e093881a2f88382ac18c47
DEEP_HASURA_STORAGE_S3_SECRET_KEY: 01f99f6095777953c9470ddecfe45931
S3_BUCKET: default
DEEP_HASURA_STORAGE_S3_BUCKET: default
S3_ROOT_FOLDER: default
DEEP_HASURA_STORAGE_S3_ROOT_FOLDER: default
POSTGRES_MIGRATIONS: 0
DEEP_HASURA_STORAGE_POSTGRES_MIGRATIONS: 0
DEEP_HASURA_STORAGE_POSTGRES_MIGRATIONS_SOURCE: postgres://postgres:d2ef4e87ecc262ff4615887006d8b7b4@deep-postgres:5432/postgres?sslmode=disable
DEEP_MINIO_PORT: 9000
DEEP_MINIO_CONSOLE_PORT: 32765
DEEP_MINIO_ROOT_USER: ce790e9910e093881a2f88382ac18c47
DEEP_MINIO_ROOT_PASSWORD: 01f99f6095777953c9470ddecfe45931
MIGRATIONS_ID_TYPE_SQL: bigint
MIGRATIONS_ID_TYPE_GQL: bigint
MIGRATIONS_SCHEMA: public
MIGRATIONS_RL_TABLE: rl_example__links__reserved
MIGRATIONS_DATE_TYPE_SQL: timestamp
RESERVED_LIFETIME_MS: 86400000
MIGRATIONS_DIR: /tmp/deep
MIGRATIONS_HASURA_PATH: localhost:8080
DEEPLINKS_HASURA_PATH: deep-hasura:8080
MIGRATIONS_HASURA_SSL: 0
DEEPLINKS_HASURA_SSL: 0
jobs:
dockerize:
name: dockerize
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
with:
node-version: 18
- name: ci
run: npm ci
- name: build
run: npm run package:build
- name: docker-ver backup dir
run: mkdir backup
- name: Log in to Docker Hub
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKER_HUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Extract metadata (tags, labels) for Docker
id: meta
uses: docker/metadata-action@v3
with:
images: deepf/deeplinks
- name: build docker image for
id: docker_build
uses: docker/build-push-action@v2
with:
context: .
push: false
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
- name: Image digest
run: echo ${{ steps.docker_build.outputs.digest }}
- name: docker init
run: docker compose -p deep up -d
- name: docker logs deep-links
run: docker logs deep-links
- name: migrate
run: npx -q wait-on --timeout 100000 http://localhost:3006/api/healthz && npm run migrate
- name: snapshot:create
run: 'npm run snapshot:create'
- name: docker-ver backup volume
run: docker run --rm --volumes-from deep-postgres -v $(pwd):/temp ubuntu tar -c -v -C /var/lib/postgresql -f /temp/backup/volume.tar ./data
- name: docker-ver backup migrations log
run: cp .migrate backup/.migrate
- name: Extract metadata (tags, labels) for Docker
id: meta_push
uses: docker/metadata-action@v3
with:
images: deepf/deeplinks
- name: build docker image and push
id: docker_build_push
uses: docker/build-push-action@v2
with:
context: .
push: true
tags: ${{ steps.meta_push.outputs.tags }}
labels: ${{ steps.meta_push.outputs.labels }}
- name: Image digest
run: echo ${{ steps.docker_build_push.outputs.digest }}
- name: Collect Docker Logs
if: failure()
uses: jwalton/gh-docker-logs@v2.2.2
with:
dest: './logs'
- name: Tar logs
if: failure()
run: tar cvzf ./logs.tgz ./logs
- name: Upload logs to GitHub
if: failure()
uses: actions/upload-artifact@master
with:
name: logs.tgz
path: ./logs.tgz