@@ -96,27 +96,34 @@ Get the full image name for supervisor
9696{ {- end } }
9797
9898{ {/*
99- PostgreSQL hostname
99+ PostgreSQL hostname (deprecated - used only for legacy DATABASE_HOST env var)
100100*/} }
101101{ {- define " trigger-v4.postgres.hostname" -} }
102- { {- if .Values.postgres.external.host } }
103- { {- .Values.postgres.external.host } }
104- { {- else if .Values.postgres.deploy } }
102+ { {- if .Values.postgres.deploy } }
105103{ {- printf " %s-postgres" .Release.Name } }
104+ { {- else } }
105+ { {- " external-postgres" } }
106106{ {- end } }
107107{ {- end } }
108108
109109{ {/*
110- PostgreSQL connection string
110+ PostgreSQL connection string (fallback when not using secrets)
111111*/} }
112112{ {- define " trigger-v4.postgres.connectionString" -} }
113- { {- if .Values.postgres.external.host -} }
114- postgresql:// { { .Values.postgres.external.username } }: { { .Values.postgres.external.password } }@ { { .Values.postgres.external.host } }: { { .Values.postgres.external.port | default 5432 } }/ { { .Values.postgres.external.database } }?schema= { { .Values.postgres.connection.schema | default " public " } }&sslmode= { { .Values.postgres.connection.sslMode | default " prefer " } }
113+ { {- if .Values.postgres.external.databaseUrl -} }
114+ { { .Values.postgres.external.databaseUrl } }
115115{ {- else if .Values.postgres.deploy -} }
116116postgresql://{ { .Values.postgres.auth.username } }:{ { .Values.postgres.auth.password } }@{ { include " trigger-v4.postgres.hostname" . } }:5432/{ { .Values.postgres.auth.database } }?schema={ { .Values.postgres.connection.schema | default " public" } }&sslmode={ { .Values.postgres.connection.sslMode | default " prefer" } }
117117{ {- end -} }
118118{ {- end } }
119119
120+ { {/*
121+ Check if we should use DATABASE_URL from secret
122+ */} }
123+ { {- define " trigger-v4.postgres.useSecretUrl" -} }
124+ { {- or (and .Values.postgres.external.databaseUrl .Values.postgres.external.existingSecret) (and .Values.postgres.external.existingSecret) -} }
125+ { {- end } }
126+
120127{ {/*
121128Redis hostname
122129*/} }
@@ -165,6 +172,94 @@ Redis TLS disabled setting
165172{ {- end -} }
166173{ {- end } }
167174
175+ { {/*
176+ PostgreSQL external secret name
177+ */} }
178+ { {- define " trigger-v4.postgres.external.secretName" -} }
179+ { {- if .Values.postgres.external.existingSecret -} }
180+ { { .Values.postgres.external.existingSecret } }
181+ { {- else -} }
182+ { { include " trigger-v4.secretsName" . } }
183+ { {- end -} }
184+ { {- end } }
185+
186+ { {/*
187+ PostgreSQL external secret database URL key
188+ */} }
189+ { {- define " trigger-v4.postgres.external.databaseUrlKey" -} }
190+ { {- if .Values.postgres.external.existingSecret -} }
191+ { { .Values.postgres.external.secretKeys.databaseUrlKey } }
192+ { {- else -} }
193+ postgres-database-url
194+ { {- end -} }
195+ { {- end } }
196+
197+ { {/*
198+ PostgreSQL external secret direct URL key
199+ */} }
200+ { {- define " trigger-v4.postgres.external.directUrlKey" -} }
201+ { {- if .Values.postgres.external.existingSecret -} }
202+ { { .Values.postgres.external.secretKeys.directUrlKey | default .Values.postgres.external.secretKeys.databaseUrlKey } }
203+ { {- else -} }
204+ postgres-direct-url
205+ { {- end -} }
206+ { {- end } }
207+
208+ { {/*
209+ PostgreSQL direct URL (fallback to database URL if not set)
210+ */} }
211+ { {- define " trigger-v4.postgres.directUrl" -} }
212+ { {- if .Values.postgres.external.directUrl -} }
213+ { { .Values.postgres.external.directUrl } }
214+ { {- else -} }
215+ { { include " trigger-v4.postgres.connectionString" . } }
216+ { {- end -} }
217+ { {- end } }
218+
219+ { {/*
220+ Redis external secret name
221+ */} }
222+ { {- define " trigger-v4.redis.external.secretName" -} }
223+ { {- if .Values.redis.external.existingSecret -} }
224+ { { .Values.redis.external.existingSecret } }
225+ { {- else -} }
226+ { { include " trigger-v4.secretsName" . } }
227+ { {- end -} }
228+ { {- end } }
229+
230+ { {/*
231+ Redis external secret password key
232+ */} }
233+ { {- define " trigger-v4.redis.external.passwordKey" -} }
234+ { {- if .Values.redis.external.existingSecret -} }
235+ { { .Values.redis.external.existingSecretPasswordKey } }
236+ { {- else -} }
237+ redis-password
238+ { {- end -} }
239+ { {- end } }
240+
241+ { {/*
242+ ClickHouse external secret name
243+ */} }
244+ { {- define " trigger-v4.clickhouse.external.secretName" -} }
245+ { {- if .Values.clickhouse.external.existingSecret -} }
246+ { { .Values.clickhouse.external.existingSecret } }
247+ { {- else -} }
248+ { { include " trigger-v4.secretsName" . } }
249+ { {- end -} }
250+ { {- end } }
251+
252+ { {/*
253+ ClickHouse external secret password key
254+ */} }
255+ { {- define " trigger-v4.clickhouse.external.passwordKey" -} }
256+ { {- if .Values.clickhouse.external.existingSecret -} }
257+ { { .Values.clickhouse.external.existingSecretKey } }
258+ { {- else -} }
259+ clickhouse-password
260+ { {- end -} }
261+ { {- end } }
262+
168263{ {/*
169264Electric service URL
170265*/} }
@@ -198,8 +293,12 @@ ClickHouse URL for application (with secure parameter)
198293{ {- else if .Values.clickhouse.external.host -} }
199294{ {- $protocol := ternary " https" " http" .Values.clickhouse.external.secure -} }
200295{ {- $secure := ternary " true" " false" .Values.clickhouse.external.secure -} }
296+ { {- if .Values.clickhouse.external.existingSecret -} }
297+ { { $protocol } }://{ { .Values.clickhouse.external.username } }:${ CLICKHOUSE_PASSWORD} @{ { .Values.clickhouse.external.host } }:{ { .Values.clickhouse.external.httpPort | default 8123 } }?secure={ { $secure } }
298+ { {- else -} }
201299{ { $protocol } }://{ { .Values.clickhouse.external.username } }:{ { .Values.clickhouse.external.password } }@{ { .Values.clickhouse.external.host } }:{ { .Values.clickhouse.external.httpPort | default 8123 } }?secure={ { $secure } }
202300{ {- end -} }
301+ { {- end -} }
203302{ {- end } }
204303
205304{ {/*
@@ -211,8 +310,12 @@ ClickHouse URL for replication (without secure parameter)
211310{ { $protocol } }://{ { .Values.clickhouse.auth.username } }:{ { .Values.clickhouse.auth.password } }@{ { include " trigger-v4.clickhouse.hostname" . } }:8123
212311{ {- else if .Values.clickhouse.external.host -} }
213312{ {- $protocol := ternary " https" " http" .Values.clickhouse.external.secure -} }
313+ { {- if .Values.clickhouse.external.existingSecret -} }
314+ { { $protocol } }://{ { .Values.clickhouse.external.username } }:${ CLICKHOUSE_PASSWORD} @{ { .Values.clickhouse.external.host } }:{ { .Values.clickhouse.external.httpPort | default 8123 } }
315+ { {- else -} }
214316{ { $protocol } }://{ { .Values.clickhouse.external.username } }:{ { .Values.clickhouse.external.password } }@{ { .Values.clickhouse.external.host } }:{ { .Values.clickhouse.external.httpPort | default 8123 } }
215317{ {- end -} }
318+ { {- end -} }
216319{ {- end } }
217320
218321{ {/*
@@ -266,14 +369,27 @@ Registry connection details
266369{ {- end -} }
267370{ {- end } }
268371
372+ { {/*
373+ Webapp connectivity check enabled
374+ */} }
375+ { {- define " trigger-v4.webapp.connectivityCheckEnabled" -} }
376+ { {- $connectivityCheckEnabled := true -} }
377+ { {- if hasKey .Values.webapp " connectivityCheck" -} }
378+ { {- if hasKey .Values.webapp.connectivityCheck " postgres" -} }
379+ { {- $connectivityCheckEnabled = .Values.webapp.connectivityCheck.postgres -} }
380+ { {- end -} }
381+ { {- end -} }
382+ { {- $connectivityCheckEnabled -} }
383+ { {- end } }
384+
269385{ {/*
270386PostgreSQL host (for wait-for-it script)
271387*/} }
272388{ {- define " trigger-v4.postgres.host" -} }
273- { {- if .Values.postgres.external.host -} }
274- { { .Values.postgres.external.host } }:{ { .Values.postgres.external.port | default 5432 } }
275- { {- else if .Values.postgres.deploy -} }
389+ { {- if .Values.postgres.deploy -} }
276390{ { include " trigger-v4.postgres.hostname" . } }:5432
391+ { {- else if .Values.postgres.external.connectivityCheck.host -} }
392+ { { .Values.postgres.external.connectivityCheck.host } }
277393{ {- end -} }
278394{ {- end } }
279395
0 commit comments