Barazo Docker Compose templates for self-hosting
barazo.forum
1name: Validate Compose
2
3on:
4 pull_request:
5 branches: [main]
6 push:
7 branches: [main]
8
9permissions:
10 contents: read
11
12jobs:
13 validate:
14 name: Validate Docker Compose
15 runs-on: ubuntu-latest
16 steps:
17 - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
18
19 - name: Validate dev compose
20 run: docker compose -f docker-compose.dev.yml config --quiet
21
22 - name: Validate production compose
23 env:
24 POSTGRES_USER: barazo
25 POSTGRES_PASSWORD: ci_test
26 POSTGRES_DB: barazo
27 VALKEY_PASSWORD: ci_test
28 DATABASE_URL: postgresql://barazo:ci_test@postgres:5432/barazo
29 TAP_ADMIN_PASSWORD: ci_test
30 COMMUNITY_DID: did:plc:ci-test
31 COMMUNITY_NAME: CI Test
32 COMMUNITY_DOMAIN: ci.example.com
33 OAUTH_CLIENT_ID: https://ci.example.com
34 OAUTH_REDIRECT_URI: https://ci.example.com/api/auth/callback
35 NEXT_PUBLIC_SITE_URL: https://ci.example.com
36 run: docker compose -f docker-compose.yml config --quiet
37
38 - name: Validate global compose overlay
39 env:
40 POSTGRES_USER: barazo
41 POSTGRES_PASSWORD: ci_test
42 POSTGRES_DB: barazo
43 VALKEY_PASSWORD: ci_test
44 DATABASE_URL: postgresql://barazo:ci_test@postgres:5432/barazo
45 TAP_ADMIN_PASSWORD: ci_test
46 COMMUNITY_DID: did:plc:ci-test
47 COMMUNITY_NAME: CI Test
48 COMMUNITY_DOMAIN: ci.example.com
49 OAUTH_CLIENT_ID: https://ci.example.com
50 OAUTH_REDIRECT_URI: https://ci.example.com/api/auth/callback
51 NEXT_PUBLIC_SITE_URL: https://ci.example.com
52 run: docker compose -f docker-compose.yml -f docker-compose.global.yml config --quiet
53
54 - name: Check shell scripts syntax
55 run: |
56 bash -n scripts/backup.sh
57 bash -n scripts/restore.sh
58 bash -n scripts/smoke-test.sh