Skip to content

Commit d34d6a2

Browse files
author
Simon Emms
committed
replace repl with envvars
1 parent 613d073 commit d34d6a2

File tree

3 files changed

+118
-58
lines changed

3 files changed

+118
-58
lines changed

install/installer/scripts/kots-install.sh

+57-58
Original file line numberDiff line numberDiff line change
@@ -2,36 +2,36 @@
22
# Copyright (c) 2022 Gitpod GmbH. All rights reserved.
33
# Licensed under the MIT License. See License-MIT.txt in the project root for license information.
44

5-
# shellcheck disable=SC2140,SC2050
5+
# shellcheck disable=SC2050,SC2153
66

77
set -e
88

99
echo "Gitpod: Killing any in-progress installations"
1010

11-
kubectl delete jobs.batch -n "{{repl Namespace }}" -l component="gitpod-installer,cursor!={{repl Cursor }}" --force --grace-period 0 || true
12-
kubectl delete pod -n "{{repl Namespace }}" -l component="gitpod-installer,cursor!={{repl Cursor }}" --force --grace-period 0 || true
11+
kubectl delete jobs.batch -n "${NAMESPACE}" -l component="gitpod-installer,cursor!=${CURSOR}" --force --grace-period 0 || true
12+
kubectl delete pod -n "${NAMESPACE}" -l component="gitpod-installer,cursor!=${CURSOR}" --force --grace-period 0 || true
1313

14-
if [ "$(helm status -n "{{repl Namespace }}" gitpod -o json | jq '.info.status == "deployed"')" = "false" ];
14+
if [ "$(helm status -n "${NAMESPACE}" gitpod -o json | jq '.info.status == "deployed"')" = "false" ];
1515
then
1616
echo "Gitpod: Deployment in-progress - clearing"
1717

18-
VERSION="$(helm status -n "{{repl Namespace }}" gitpod -o json | jq '.version')"
18+
VERSION="$(helm status -n "${NAMESPACE}" gitpod -o json | jq '.version')"
1919
if [ "${VERSION}" -le 1 ];
2020
then
2121
echo "Gitpod: Uninstall application"
22-
helm uninstall -n "{{repl Namespace }}" gitpod --wait || true
22+
helm uninstall -n "${NAMESPACE}" gitpod --wait || true
2323
else
2424
echo "Gitpod: Rolling back application"
25-
helm rollback -n "{{repl Namespace }}" gitpod --wait || true
25+
helm rollback -n "${NAMESPACE}" gitpod --wait || true
2626
fi
2727
fi
2828

2929
echo "Gitpod: Generate the base Installer config"
3030
/app/installer init > "${CONFIG_FILE}"
3131

3232
echo "Gitpod: auto-detecting ShiftFS support on host machine"
33-
kubectl wait job -n "{{repl Namespace }}" --for=condition=complete -l component=shiftfs-module-loader --timeout=30s || true
34-
ENABLE_SHIFTFS=$(kubectl get jobs.batch -n "{{repl Namespace }}" -l component=shiftfs-module-loader -o jsonpath='{.items[0].status.succeeded}')
33+
kubectl wait job -n "${NAMESPACE}" --for=condition=complete -l component=shiftfs-module-loader --timeout=30s || true
34+
ENABLE_SHIFTFS=$(kubectl get jobs.batch -n "${NAMESPACE}" -l component=shiftfs-module-loader -o jsonpath='{.items[0].status.succeeded}')
3535

3636
if [ "${ENABLE_SHIFTFS}" = "1" ]; then
3737
echo "Gitpod: enabling ShiftFS support"
@@ -61,27 +61,27 @@ elif [ -S "/mnt/node0${CONTAINERD_SOCKET_AL}" ]; then
6161
fi
6262

6363
echo "Gitpod: Inject the Replicated variables into the config"
64-
yq e -i '.domain = "{{repl ConfigOption "domain" }}"' "${CONFIG_FILE}"
64+
yq e -i ".domain = \"${DOMAIN}\"" "${CONFIG_FILE}"
6565
yq e -i '.license.kind = "secret"' "${CONFIG_FILE}"
6666
yq e -i '.license.name = "gitpod-license"' "${CONFIG_FILE}"
6767

68-
if [ '{{repl ConfigOptionNotEquals "openVsxUrl" "" }}' = "true" ];
68+
if [ "${OPEN_VSX_URL}" != "" ];
6969
then
7070
echo "Gitpod: Setting Open VSX Registry URL"
71-
yq e -i ".openVSX.url = \"{{repl ConfigOption "openVsxUrl" }}\"" "${CONFIG_FILE}"
71+
yq e -i ".openVSX.url = \"${OPEN_VSX_URL}\"" "${CONFIG_FILE}"
7272
fi
7373

74-
if [ '{{repl and (ConfigOptionEquals "db_incluster" "0") (ConfigOptionEquals "db_cloudsql_enabled" "1") }}' = "true" ];
74+
if [ "${DB_INCLUSTER_ENABLED}" = "0" ] && [ "${DB_CLOUDSQL_INSTANCE}" = "1" ];
7575
then
7676
echo "Gitpod: configuring CloudSQLProxy"
7777

7878
yq e -i ".database.inCluster = false" "${CONFIG_FILE}"
79-
yq e -i ".database.cloudSQL.instance = \"{{repl ConfigOption "db_cloudsql_instance" }}\"" "${CONFIG_FILE}"
79+
yq e -i ".database.cloudSQL.instance = \"${DB_INCLUSTER_ENABLED}\"" "${CONFIG_FILE}"
8080
yq e -i ".database.cloudSQL.serviceAccount.kind = \"secret\"" "${CONFIG_FILE}"
8181
yq e -i ".database.cloudSQL.serviceAccount.name = \"cloudsql\"" "${CONFIG_FILE}"
8282
fi
8383

84-
if [ '{{repl and (ConfigOptionEquals "db_incluster" "0") (ConfigOptionEquals "db_cloudsql_enabled" "0") }}' = "true" ];
84+
if [ "${DB_INCLUSTER_ENABLED}" = "0" ] && [ "${DB_CLOUDSQL_INSTANCE}" = "0" ];
8585
then
8686
echo "Gitpod: configuring external database"
8787

@@ -90,139 +90,138 @@ then
9090
yq e -i ".database.external.certificate.name = \"database\"" "${CONFIG_FILE}"
9191
fi
9292

93-
if [ '{{repl HasLocalRegistry }}' = "true" ];
93+
if [ "${HAS_LOCAL_REGISTRY}" = "true" ];
9494
then
9595
echo "Gitpod: configuring mirrored container registry for airgapped installation"
9696

97-
yq e -i ".repository = \"{{repl LocalRegistryAddress }}\"" "${CONFIG_FILE}"
97+
yq e -i ".repository = \"${LOCAL_REGISTRY_ADDRESS}\"" "${CONFIG_FILE}"
9898
yq e -i ".imagePullSecrets[0].kind = \"secret\"" "${CONFIG_FILE}"
99-
yq e -i ".imagePullSecrets[0].name = \"{{repl ImagePullSecretName }}\"" "${CONFIG_FILE}"
99+
yq e -i ".imagePullSecrets[0].name = \"${IMAGE_PULL_SECRET_NAME}\"" "${CONFIG_FILE}"
100100
yq e -i '.dropImageRepo = true' "${CONFIG_FILE}"
101101

102102
# Add the registry to the server allowlist - keep docker.io in case it's just using the mirrored registry functionality without being airgapped
103-
yq e -i ".containerRegistry.privateBaseImageAllowList += \"{{repl LocalRegistryHost }}\"" "${CONFIG_FILE}"
103+
yq e -i ".containerRegistry.privateBaseImageAllowList += \"${LOCAL_REGISTRY_HOST}\"" "${CONFIG_FILE}"
104104
yq e -i ".containerRegistry.privateBaseImageAllowList += \"docker.io\"" "${CONFIG_FILE}"
105105
fi
106106

107107
# Output the local registry secret - this is proxy.replicated.com if user hasn't set their own
108-
echo "{{repl LocalRegistryImagePullSecret }}" | base64 -d > /tmp/kotsregistry.json
108+
echo "${LOCAL_REGISTRY_IMAGE_PULL_SECRET}" | base64 -d > /tmp/kotsregistry.json
109109

110-
if [ '{{repl ConfigOptionEquals "reg_incluster" "0" }}' = "true" ];
110+
if [ "${REG_INCLUSTER_ENABLED}" = "0" ];
111111
then
112112
echo "Gitpod: configuring external container registry"
113113

114-
# Create a container-registry secret merging the external registry and KOTS registry keys
115-
echo '{{repl printf "{\"auths\": {\"%s\": {\"username\": \"%s\", \"password\": %s, \"auth\": \"%s\"}}}" (ConfigOption "reg_server" | default (ConfigOption "reg_url")) (ConfigOption "reg_username") (ConfigOption "reg_password" | toJson) (printf "%s:%s" (ConfigOption "reg_username") (ConfigOption "reg_password") | Base64Encode) }}' \
116-
| yq -o=json '.' - \
117-
> /tmp/gitpodregistry.json
114+
# Get the external-container-registry secret so we can merge the external registry and KOTS registry keys
115+
kubectl get secret external-container-registry \
116+
--namespace "${NAMESPACE}" \
117+
-o jsonpath='{.data.\.dockerconfigjson}' | base64 -d > /tmp/gitpodregistry.json
118118

119119
cat /tmp/kotsregistry.json /tmp/gitpodregistry.json | jq -s '.[0] * .[1]' - - > /tmp/container-registry-secret
120120

121121
echo "Gitpod: create the container-registry secret"
122122
kubectl create secret docker-registry container-registry \
123-
--namespace "{{repl Namespace }}" \
123+
--namespace "${NAMESPACE}" \
124124
--from-file=.dockerconfigjson=/tmp/container-registry-secret \
125125
-o yaml --dry-run=client | \
126-
kubectl replace --namespace "{{repl Namespace }}" --force -f -
126+
kubectl replace --namespace "${NAMESPACE}" --force -f -
127127

128128
yq e -i ".containerRegistry.inCluster = false" "${CONFIG_FILE}"
129-
yq e -i ".containerRegistry.external.url = \"{{repl ConfigOption "reg_url" }}\"" "${CONFIG_FILE}"
129+
yq e -i ".containerRegistry.external.url = \"${REG_URL}\"" "${CONFIG_FILE}"
130130
yq e -i ".containerRegistry.external.certificate.kind = \"secret\"" "${CONFIG_FILE}"
131131
yq e -i ".containerRegistry.external.certificate.name = \"container-registry\"" "${CONFIG_FILE}"
132132
else
133-
if [ '{{repl ConfigOptionEquals "reg_incluster_storage" "s3" }}' = "true" ];
133+
if [ "${REG_INCLUSTER_STORAGE}" = "s3" ];
134134
then
135135
echo "Gitpod: configuring container registry S3 backend"
136136

137-
yq e -i ".containerRegistry.s3storage.region = \"{{repl ConfigOption "reg_incluster_storage_s3_region" }}\"" "${CONFIG_FILE}"
138-
yq e -i ".containerRegistry.s3storage.endpoint = \"{{repl ConfigOption "reg_incluster_storage_s3_endpoint" }}\"" "${CONFIG_FILE}"
139-
yq e -i ".containerRegistry.s3storage.bucket = \"{{repl ConfigOption "reg_incluster_storage_s3_bucketname" }}\"" "${CONFIG_FILE}"
137+
yq e -i ".containerRegistry.s3storage.region = \"${REG_INCLUSTER_STORAGE_S3_REGION}\"" "${CONFIG_FILE}"
138+
yq e -i ".containerRegistry.s3storage.endpoint = \"${REG_INCLUSTER_STORAGE_S3_ENDPOINT}\"" "${CONFIG_FILE}"
139+
yq e -i ".containerRegistry.s3storage.bucket = \"${REG_INCLUSTER_STORAGE_S3_BUCKETNAME}\"" "${CONFIG_FILE}"
140140
yq e -i ".containerRegistry.s3storage.certificate.kind = \"secret\"" "${CONFIG_FILE}"
141141
yq e -i ".containerRegistry.s3storage.certificate.name = \"container-registry-s3-backend\"" "${CONFIG_FILE}"
142142
fi
143143
fi
144144

145-
if [ '{{repl ConfigOptionNotEquals "store_provider" "incluster" }}' = "true" ];
145+
if [ "${STORE_PROVIDER}" != "incluster" ];
146146
then
147147
echo "Gitpod: configuring the storage"
148148

149-
yq e -i ".metadata.region = \"{{repl ConfigOption "store_region" }}\"" "${CONFIG_FILE}"
149+
yq e -i ".metadata.region = \"${STORE_REGION}\"" "${CONFIG_FILE}"
150150
yq e -i ".objectStorage.inCluster = false" "${CONFIG_FILE}"
151151

152-
if [ '{{repl ConfigOptionEquals "store_provider" "azure" }}' = "true" ];
152+
if [ "${STORE_PROVIDER}" = "azure" ];
153153
then
154154
echo "Gitpod: configuring storage for Azure"
155155

156156
yq e -i ".objectStorage.azure.credentials.kind = \"secret\"" "${CONFIG_FILE}"
157157
yq e -i ".objectStorage.azure.credentials.name = \"storage-azure\"" "${CONFIG_FILE}"
158158
fi
159159

160-
if [ '{{repl ConfigOptionEquals "store_provider" "gcp" }}' = "true" ];
160+
if [ "${STORE_PROVIDER}" = "gcp" ];
161161
then
162162
echo "Gitpod: configuring storage for GCP"
163163

164-
yq e -i ".objectStorage.cloudStorage.project = \"{{repl ConfigOption "store_gcp_project" }}\"" "${CONFIG_FILE}"
164+
yq e -i ".objectStorage.cloudStorage.project = \"${STORE_GCP_PROJECT}\"" "${CONFIG_FILE}"
165165
yq e -i ".objectStorage.cloudStorage.serviceAccount.kind = \"secret\"" "${CONFIG_FILE}"
166166
yq e -i ".objectStorage.cloudStorage.serviceAccount.name = \"storage-gcp\"" "${CONFIG_FILE}"
167167
fi
168168

169-
if [ '{{repl ConfigOptionEquals "store_provider" "s3" }}' = "true" ];
169+
if [ "${STORE_PROVIDER}" = "s3" ];
170170
then
171171
echo "Gitpod: configuring storage for S3"
172172

173-
yq e -i ".objectStorage.s3.endpoint = \"{{repl ConfigOption "store_s3_endpoint" }}\"" "${CONFIG_FILE}"
174-
yq e -i ".objectStorage.s3.bucket = \"{{repl ConfigOption "store_s3_bucket" }}\"" "${CONFIG_FILE}"
173+
yq e -i ".objectStorage.s3.endpoint = \"${STORE_S3_ENDPOINT}\"" "${CONFIG_FILE}"
174+
yq e -i ".objectStorage.s3.bucket = \"${STORE_S3_BUCKET}\"" "${CONFIG_FILE}"
175175
yq e -i ".objectStorage.s3.credentials.kind = \"secret\"" "${CONFIG_FILE}"
176176
yq e -i ".objectStorage.s3.credentials.name = \"storage-s3\"" "${CONFIG_FILE}"
177177
fi
178178
fi
179179

180-
if [ '{{repl ConfigOptionEquals "ssh_gateway" "1" }}' = "true" ];
180+
if [ "${SSH_GATEWAY}" = "1" ];
181181
then
182182
echo "Gitpod: Generate SSH host key"
183183
ssh-keygen -t rsa -q -N "" -f host.key
184-
kubectl create secret generic ssh-gateway-host-key --from-file=host.key -n "{{repl Namespace }}" || echo "SSH Gateway Host Key secret has not been created. Does it exist already?"
184+
kubectl create secret generic ssh-gateway-host-key --from-file=host.key -n "${NAMESPACE}" || echo "SSH Gateway Host Key secret has not been created. Does it exist already?"
185185
yq e -i '.sshGatewayHostKey.kind = "secret"' "${CONFIG_FILE}"
186186
yq e -i '.sshGatewayHostKey.name = "ssh-gateway-host-key"' "${CONFIG_FILE}"
187187
fi
188188

189-
if [ '{{repl ConfigOptionEquals "tls_self_signed_enabled" "1" }}' = "true" ];
189+
if [ "${TLS_SELF_SIGNED_ENABLED}" = "1" ];
190190
then
191191
echo "Gitpod: Generating a self-signed certificate with the internal CA"
192192
yq e -i '.customCACert.kind = "secret"' "${CONFIG_FILE}"
193193
yq e -i '.customCACert.name = "ca-issuer-ca"' "${CONFIG_FILE}"
194-
elif [ '{{repl and (ConfigOptionEquals "tls_self_signed_enabled" "0") (ConfigOptionEquals "cert_manager_enabled" "0") (ConfigOptionNotEquals "tls_ca_crt" "") }}' = "true" ];
194+
elif [ "${TLS_SELF_SIGNED_ENABLED}" = "0" ] && [ "${CERT_MANAGER_ENABLED}" = "0" ] && [ "${TLS_CUSTOM_CA_CRT_ENABLED}" = "true" ];
195195
then
196196
echo "Gitpod: Setting CA to be used for certificate"
197197
yq e -i '.customCACert.kind = "secret"' "${CONFIG_FILE}"
198198
yq e -i '.customCACert.name = "ca-certificate"' "${CONFIG_FILE}"
199199
fi
200200

201-
if [ '{{repl ConfigOptionEquals "user_management_block_enabled" "1" }}' = "true" ];
201+
if [ "${USER_MANAGEMENT_BLOCK_ENABLED}" = "1" ];
202202
then
203203
echo "Gitpod: Adding blockNewUsers to config"
204204
yq e -i '.blockNewUsers.enabled = true' "${CONFIG_FILE}"
205205

206-
# shellcheck disable=SC1083
207-
for domain in {{repl ConfigOption "user_management_block_passlist" }}
206+
for domain in ${USER_MANAGEMENT_BLOCK_PASSLIST}
208207
do
209208
echo "Gitpod: Adding domain \"${domain}\" to blockNewUsers config"
210209
yq e -i ".blockNewUsers.passlist += \"${domain}\"" "${CONFIG_FILE}"
211210
done
212211
fi
213212

214-
if [ '{{repl ConfigOptionEquals "advanced_mode_enabled" "1" }}' = "true" ];
213+
if [ "${ADVANCED_MODE_ENABLED}" = "1" ];
215214
then
216215
echo "Gitpod: Applying advanced configuration"
217216

218-
if [ '{{repl ConfigOptionNotEquals "component_proxy_service_serviceType" "" }}' = "true" ];
217+
if [ "${COMPONENT_PROXY_SERVICE_SERVICETYPE}" != "" ];
219218
then
220219
# Empty string defaults to LoadBalancer. This maintains backwards compatibility with the deprecated experimental value
221220
echo "Gitpod: Applying Proxy service type"
222-
yq e -i ".components.proxy.service.serviceType = \"{{repl ConfigOption "component_proxy_service_serviceType" }}\"" "${CONFIG_FILE}"
221+
yq e -i ".components.proxy.service.serviceType = \"${COMPONENT_PROXY_SERVICE_SERVICETYPE}\"" "${CONFIG_FILE}"
223222
fi
224223

225-
if [ '{{repl ConfigOptionNotEquals "customization_patch" "" }}' = "true" ];
224+
if [ "${CUSTOMIZATION_PATCH_ENABLED}" = "true" ];
226225
then
227226
CUSTOMIZATION='{{repl ConfigOptionData "customization_patch" | Base64Encode }}'
228227
echo "Gitpod: Applying customization patch ${CUSTOMIZATION}"
@@ -235,7 +234,7 @@ else
235234
fi
236235

237236
echo "Gitpod: Update platform telemetry value"
238-
yq eval-all --inplace '.experimental.telemetry.data.platform = "{{repl Distribution }}"' "${CONFIG_FILE}"
237+
yq eval-all --inplace ".experimental.telemetry.data.platform = \"${DISTRIBUTION}\"" "${CONFIG_FILE}"
239238

240239
echo "Gitpod: Patch Gitpod config"
241240
base64 -d "${CONFIG_PATCH_FILE}" > /tmp/patch.yaml
@@ -259,9 +258,9 @@ appVersion: "$(/app/installer version | yq e '.version' -)"
259258
EOF
260259

261260
echo "Gitpod: render Kubernetes manifests"
262-
/app/installer render -c "${CONFIG_FILE}" --namespace "{{repl Namespace }}" --use-experimental-config > "${GITPOD_OBJECTS}/templates/gitpod.yaml"
261+
/app/installer render -c "${CONFIG_FILE}" --namespace "${NAMESPACE}" --use-experimental-config > "${GITPOD_OBJECTS}/templates/gitpod.yaml"
263262

264-
if [ '{{repl ConfigOptionEquals "reg_incluster" "1" }}' = "true" ];
263+
if [ "${REG_INCLUSTER_ENABLED}" = "1" ];
265264
then
266265
echo "Gitpod: Add the local registry secret to the in-cluster registry secret"
267266

@@ -277,14 +276,14 @@ then
277276
echo "Gitpod: update the in-cluster registry secret"
278277
yq eval-all --inplace '(select(.kind == "Secret" and .metadata.name == "builtin-registry-auth") | .data.".dockerconfigjson") |= env(REGISTRY_SECRET)' \
279278
"${GITPOD_OBJECTS}/templates/gitpod.yaml"
280-
fi
279+
fi
281280

282281
echo "Gitpod: Escape any Golang template values"
283282
# shellcheck disable=SC2016
284283
sed -i -r 's/(.*\{\{.*)/{{`\1`}}/' "${GITPOD_OBJECTS}/templates/gitpod.yaml"
285284

286285
# If certificate secret already exists, set the timeout to 5m
287-
CERT_SECRET=$(kubectl get secrets -n "{{repl Namespace }}" https-certificates -o jsonpath='{.metadata.name}' || echo '')
286+
CERT_SECRET=$(kubectl get secrets -n "${NAMESPACE}" https-certificates -o jsonpath='{.metadata.name}' || echo '')
288287
HELM_TIMEOUT="5m"
289288
if [ "${CERT_SECRET}" = "" ]; then
290289
HELM_TIMEOUT="1h"
@@ -297,14 +296,14 @@ helm upgrade \
297296
--cleanup-on-fail \
298297
--create-namespace \
299298
--install \
300-
--namespace="{{repl Namespace }}" \
299+
--namespace="${NAMESPACE}" \
301300
--reset-values \
302301
--timeout "${HELM_TIMEOUT}" \
303302
--wait \
304303
gitpod \
305304
"${GITPOD_OBJECTS}"
306305

307306
echo "Gitpod: Restarting installation status job"
308-
kubectl delete pod -n "{{repl Namespace }}" -l component=gitpod-installer-status || true
307+
kubectl delete pod -n "${NAMESPACE}" -l component=gitpod-installer-status || true
309308

310309
echo "Gitpod: Installer job finished - goodbye"

install/kots/manifests/gitpod-installer-job.yaml

+3
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,9 @@ spec:
5151
value: /run/containerd/containerd.sock
5252
- name: GITPOD_OBJECTS
5353
value: /tmp/gitpod
54+
envFrom:
55+
- configMapRef:
56+
name: gitpod-kots-config
5457
command:
5558
- /app/scripts/kots-install.sh
5659
volumes:
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
# Copyright (c) 2022 Gitpod GmbH. All rights reserved.
2+
# Licensed under the MIT License. See License-MIT.txt in the project root for license information.
3+
4+
apiVersion: v1
5+
kind: ConfigMap
6+
metadata:
7+
name: gitpod-kots-config
8+
labels:
9+
app: gitpod
10+
component: gitpod-installer
11+
data:
12+
# General settings
13+
CURSOR: repl{{ Cursor | quote }}
14+
DISTRIBUTION: repl{{ Distribution | quote }}
15+
DOMAIN: repl{{ ConfigOption "domain" | quote }}
16+
NAMESPACE: repl{{ Namespace | quote }}
17+
OPEN_VSX_URL: repl{{ ConfigOption "openVsxUrl" | quote }}
18+
SSH_GATEWAY: repl{{ ConfigOption "ssh_gateway" | quote }}
19+
20+
# Database settings
21+
DB_INCLUSTER_ENABLED: repl{{ ConfigOption "db_incluster" | quote }}
22+
DB_CLOUDSQL_ENABLED: repl{{ ConfigOption "db_cloudsql_enabled" | quote }}
23+
DB_CLOUDSQL_INSTANCE: repl{{ ConfigOption "db_cloudsql_instance" | quote }}
24+
25+
# Airgap settings
26+
HAS_LOCAL_REGISTRY: repl{{ HasLocalRegistry | quote }}
27+
LOCAL_REGISTRY_ADDRESS: repl{{ LocalRegistryAddress | quote }}
28+
LOCAL_REGISTRY_HOST: repl{{ LocalRegistryHost | quote }}
29+
LOCAL_REGISTRY_IMAGE_PULL_SECRET: repl{{ LocalRegistryImagePullSecret | quote }}
30+
IMAGE_PULL_SECRET_NAME: repl{{ ImagePullSecretName | quote }}
31+
32+
# Registry settings
33+
REG_INCLUSTER_ENABLED: repl{{ ConfigOption "reg_incluster" | quote }}
34+
REG_URL: repl{{ ConfigOption "reg_url" | quote }}
35+
REG_INCLUSTER_STORAGE: repl{{ ConfigOption "reg_incluster_storage" | quote }}
36+
REG_INCLUSTER_STORAGE_S3_REGION: repl{{ ConfigOption "reg_incluster_storage_s3_region" | quote }}
37+
REG_INCLUSTER_STORAGE_S3_ENDPOINT: repl{{ ConfigOption "reg_incluster_storage_s3_endpoint" | quote }}
38+
REG_INCLUSTER_STORAGE_S3_BUCKETNAME: repl{{ ConfigOption "reg_incluster_storage_s3_bucketname" | quote }}
39+
40+
# Storage settings
41+
STORE_PROVIDER: repl{{ ConfigOption "store_provider" | quote }}
42+
STORE_REGION: repl{{ ConfigOption "store_region" | quote }}
43+
STORE_GCP_PROJECT: repl{{ ConfigOption "store_gcp_project" | quote }}
44+
STORE_S3_ENDPOINT: repl{{ ConfigOption "store_s3_endpoint" | quote }}
45+
STORE_S3_BUCKET: repl{{ ConfigOption "store_s3_bucket" | quote }}
46+
47+
# TLS certificate settings
48+
CERT_MANAGER_ENABLED: repl{{ ConfigOption "cert_manager_enabled" | quote }}
49+
TLS_SELF_SIGNED_ENABLED: repl{{ ConfigOption "tls_self_signed_enabled" | quote }}
50+
TLS_USE_CUSTOM_CA_CRT: repl{{ ConfigOptionNotEquals tls_ca_crt" "" | quote }} # Use comparison not value
51+
52+
# User management settings
53+
USER_MANAGEMENT_BLOCK_ENABLED: repl{{ ConfigOption "user_management_block_enabled" | quote }}
54+
USER_MANAGEMENT_BLOCK_PASSLIST: repl{{ ConfigOption "user_management_block_passlist" | quote }}
55+
56+
# Advanced settings
57+
ADVANCED_MODE_ENABLED: repl{{ ConfigOption "advanced_mode_enabled" | quote }}
58+
COMPONENT_PROXY_SERVICE_SERVICETYPE: repl{{ ConfigOption "component_proxy_service_serviceType" | quote }}

0 commit comments

Comments
 (0)