Scalable and distributed custom feed generator, ott - on that topic
1apiVersion: skaffold/v4beta13
2kind: Config
3metadata:
4 name: ott
5build:
6 artifacts:
7 #
8 # Database images
9 #
10 - image: loaded-pg
11 context: docker/postgres
12 docker:
13 dockerfile: Dockerfile
14 - image: migration-pg
15 context: .
16 docker:
17 dockerfile: docker/postgres/migration.Dockerfile
18 buildArgs:
19 CRATE_NAME: "ott-db-migration"
20
21 #
22 # CONNECTORS
23 #
24 - image: posts-connector
25 context: connectors
26 docker:
27 dockerfile: Dockerfile
28 buildArgs:
29 CONFIG_FILE: "posts-config.yaml"
30 - image: likes-connector
31 context: connectors
32 docker:
33 dockerfile: Dockerfile
34 buildArgs:
35 CONFIG_FILE: "likes-config.yaml"
36
37
38 #
39 # The actual main services
40 #
41 - image: ott-embed
42 context: .
43 docker:
44 dockerfile: docker/rust-service/Dockerfile
45 buildArgs:
46 CRATE_NAME: "ott-embed"
47 - image: ott-filter
48 context: .
49 docker:
50 dockerfile: docker/rust-service/Dockerfile
51 buildArgs:
52 CRATE_NAME: "ott-filter"
53 - image: ott-xrpc
54 context: .
55 docker:
56 dockerfile: docker/rust-service/Dockerfile
57 buildArgs:
58 CRATE_NAME: "ott-xrpc"
59
60
61 tagPolicy:
62 envTemplate:
63 template: >-
64 {{- if contains "loaded-pg" .IMAGE_NAME -}}
65 {{.POSTGRES_VERSION | default "17"}}
66 {{- else -}}
67 {{.GIT_COMMIT | default "HEJA"}}
68 {{- end -}}
69deploy:
70 helm:
71 hooks:
72 before:
73 - host:
74 command: ["sh", "-c", "./hooks.sh"]
75 releases:
76 - name: system-setup
77 chartPath: helm/system-setup
78 valuesFiles:
79 - helm/system-setup/values.yaml
80 version: 0.1.0
81 wait: true
82
83 - name: ott
84 chartPath: helm/ott
85 valuesFiles:
86 - helm/ott/values.yaml
87 setValueTemplates:
88 cloudflared.token: "{{.CLOUDFLARE_TUNNEL_TOKEN}}"
89 app_auth.did: "{{.APP_AUTH_DID}}"
90 app_auth.key: "{{.APP_AUTH_KEY}}"
91 postgresql.migration_image_fqn: "{{.IMAGE_FULLY_QUALIFIED_migration_pg}}"
92 services.likes_connector.image.fqn: "{{.IMAGE_FULLY_QUALIFIED_likes_connector}}"
93 services.posts_connector.image.fqn: "{{.IMAGE_FULLY_QUALIFIED_posts_connector}}"
94 services.ott_filter.image.fqn: "{{.IMAGE_FULLY_QUALIFIED_ott_filter}}"
95 services.ott_embed.image.fqn: "{{.IMAGE_FULLY_QUALIFIED_ott_embed}}"
96 services.ott_xrpc.image.fqn: "{{.IMAGE_FULLY_QUALIFIED_ott_xrpc}}"
97 services.ott_xrpc.env[0].value: "{{.EXTERNAL_BASE_URL}}"
98 version: 0.1.0