mirror of
https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk.git
synced 2025-12-06 15:31:38 +01:00
Compare commits
81 Commits
uv-jbornho
...
trossner/u
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
6242b5067e | ||
|
|
7aee88ec94 | ||
|
|
cc4b359124 | ||
|
|
fc7099a8a6 | ||
|
|
e3238f96f7 | ||
|
|
a91f181c46 | ||
|
|
a7e5f64b50 | ||
|
|
e619db6da2 | ||
|
|
28dd762db3 | ||
|
|
6347966765 | ||
|
|
560aa30cba | ||
|
|
3a9468f04d | ||
|
|
b7faa24d76 | ||
|
|
7bf8e6976a | ||
|
|
d641359c29 | ||
|
|
fdb37c3943 | ||
|
|
c9ae0391b0 | ||
|
|
71f21dc433 | ||
|
|
356d8dfbfd | ||
|
|
e512486e74 | ||
|
|
d693ff94f4 | ||
|
|
11b0d441e0 | ||
|
|
6b2ca6a136 | ||
|
|
fb8f7cd28a | ||
|
|
6325b69a91 | ||
|
|
add2ab1a41 | ||
|
|
b1946d0c1d | ||
|
|
3baf37c509 | ||
|
|
81f5969653 | ||
|
|
a7ea701cc6 | ||
|
|
b9db81f69d | ||
|
|
ef1dad7433 | ||
|
|
751f5783d0 | ||
|
|
13e0bb8d68 | ||
|
|
8229949b47 | ||
|
|
dcb6e15e90 | ||
|
|
a7d3d2585c | ||
|
|
e923468cd6 | ||
|
|
4ff720d36f | ||
|
|
fa8572f785 | ||
|
|
9eb854616c | ||
|
|
6a60c6dd43 | ||
|
|
8cd2f3a993 | ||
|
|
9d7d89f74f | ||
|
|
180ccddfaa | ||
|
|
11f750e1d6 | ||
|
|
91e34aabaa | ||
|
|
deacbc9db5 | ||
|
|
cbe6b1ae6c | ||
|
|
67d52c771e | ||
|
|
1023f3d081 | ||
|
|
12680e5c1a | ||
|
|
592f03135f | ||
|
|
bdc6ad2864 | ||
|
|
57f70b876a | ||
|
|
e9f779049c | ||
|
|
9f081d8567 | ||
|
|
603b102f41 | ||
|
|
f297d8c0b7 | ||
|
|
f4b9395b41 | ||
|
|
31753ffb19 | ||
|
|
73455630fd | ||
|
|
5f72da4e57 | ||
|
|
dd80abe622 | ||
|
|
9950b73ae3 | ||
|
|
6b88f731eb | ||
|
|
11ebb80494 | ||
|
|
ade8535c44 | ||
|
|
3d84e804c2 | ||
|
|
8bca56d4ac | ||
|
|
df9380b924 | ||
|
|
7348547d96 | ||
|
|
8ef69ecaf2 | ||
|
|
fa04f88370 | ||
|
|
efc41cb3aa | ||
|
|
370c7cd836 | ||
|
|
ac148d0c28 | ||
|
|
3d441933ca | ||
|
|
b60fe39b5c | ||
|
|
c03566dd63 | ||
|
|
fbe4909a8e |
4
.gitignore
vendored
4
.gitignore
vendored
@@ -6,7 +6,11 @@
|
|||||||
|
|
||||||
# Ignore changes to sample environments
|
# Ignore changes to sample environments
|
||||||
helmfile/environments/dev/*.yaml.gotmpl
|
helmfile/environments/dev/*.yaml.gotmpl
|
||||||
|
helmfile/environments/test/*.yaml.gotmpl
|
||||||
helmfile/environments/prod/*.yaml.gotmpl
|
helmfile/environments/prod/*.yaml.gotmpl
|
||||||
|
!helmfile/environments/dev/sample.yaml.gotmpl
|
||||||
|
!helmfile/environments/test/sample.yaml.gotmpl
|
||||||
|
!helmfile/environments/prod/sample.yaml.gotmpl
|
||||||
|
|
||||||
# Ignore in CI generated files
|
# Ignore in CI generated files
|
||||||
.kyverno/opendesk.yaml
|
.kyverno/opendesk.yaml
|
||||||
|
|||||||
124
.gitlab-ci.yml
124
.gitlab-ci.yml
@@ -4,7 +4,7 @@
|
|||||||
---
|
---
|
||||||
include:
|
include:
|
||||||
- project: "${PROJECT_PATH_GITLAB_CONFIG_TOOLING}"
|
- project: "${PROJECT_PATH_GITLAB_CONFIG_TOOLING}"
|
||||||
ref: "v2.3.3"
|
ref: "v2.4.2"
|
||||||
file:
|
file:
|
||||||
- "ci/common/automr.yml"
|
- "ci/common/automr.yml"
|
||||||
- "ci/common/lint.yml"
|
- "ci/common/lint.yml"
|
||||||
@@ -97,12 +97,6 @@ variables:
|
|||||||
options:
|
options:
|
||||||
- "yes"
|
- "yes"
|
||||||
- "no"
|
- "no"
|
||||||
DEPLOY_PROVISIONING:
|
|
||||||
description: "Enable Provisioning Components."
|
|
||||||
value: "no"
|
|
||||||
options:
|
|
||||||
- "yes"
|
|
||||||
- "no"
|
|
||||||
DEPLOY_COLLABORA:
|
DEPLOY_COLLABORA:
|
||||||
description: "Enable Collabora deployment."
|
description: "Enable Collabora deployment."
|
||||||
value: "no"
|
value: "no"
|
||||||
@@ -127,12 +121,6 @@ variables:
|
|||||||
options:
|
options:
|
||||||
- "yes"
|
- "yes"
|
||||||
- "no"
|
- "no"
|
||||||
DEPLOY_ICS:
|
|
||||||
description: "Enable ICS deployment."
|
|
||||||
value: "no"
|
|
||||||
options:
|
|
||||||
- "yes"
|
|
||||||
- "no"
|
|
||||||
DEPLOY_XWIKI:
|
DEPLOY_XWIKI:
|
||||||
description: "Enable XWiki deployment."
|
description: "Enable XWiki deployment."
|
||||||
value: "no"
|
value: "no"
|
||||||
@@ -159,7 +147,7 @@ variables:
|
|||||||
- "no"
|
- "no"
|
||||||
RUN_TESTS:
|
RUN_TESTS:
|
||||||
description: "Triggers execution of E2E-tests."
|
description: "Triggers execution of E2E-tests."
|
||||||
value: "yes"
|
value: "no"
|
||||||
options:
|
options:
|
||||||
- "yes"
|
- "yes"
|
||||||
- "no"
|
- "no"
|
||||||
@@ -171,14 +159,26 @@ variables:
|
|||||||
- "no"
|
- "no"
|
||||||
TESTS_BRANCH:
|
TESTS_BRANCH:
|
||||||
description: "Branch of E2E-tests on which the test pipeline is triggered"
|
description: "Branch of E2E-tests on which the test pipeline is triggered"
|
||||||
value: "main"
|
value: "develop"
|
||||||
|
TESTS_PROJECT_URL:
|
||||||
|
description: "Project url for e2e-tests (`<domain of gitlab>/api/v4/projects/<id>`)"
|
||||||
|
value: "gitlab.opencode.de/api/v4/projects/1506"
|
||||||
|
TESTS_TESTSET:
|
||||||
|
description: "Selects testset for E2E-tests"
|
||||||
|
value: "Smoke"
|
||||||
|
options:
|
||||||
|
- "Regression"
|
||||||
|
- "Smoke"
|
||||||
|
TESTS_GRACE_PERIOD:
|
||||||
|
description: "A new deployment sometimes needs a few minutes to sort itself. If tested too early tests may fail. GRACE_PERIOD is the period in seconds that should be waited before running the tests."
|
||||||
|
value: "0"
|
||||||
|
|
||||||
.deploy-common:
|
.deploy-common:
|
||||||
cache: {}
|
cache: {}
|
||||||
dependencies: []
|
dependencies: []
|
||||||
extends: ".environments"
|
extends: ".environments"
|
||||||
image: "registry.opencode.de/bmi/opendesk/components/platform-development/images/helm:1.0.1\
|
image: "registry.opencode.de/bmi/opendesk/components/platform-development/images/helm:1.1.0\
|
||||||
@sha256:d38f41b88374e055332860018f2936db8807b763caf6089735db0484cbb2842a"
|
@sha256:74f349066ac5d20e3afaa6abd28781b4c8dc086f67e3d3c1b8345e4a9c3371b1"
|
||||||
script:
|
script:
|
||||||
- "cd ${CI_PROJECT_DIR}/helmfile/apps/${COMPONENT}"
|
- "cd ${CI_PROJECT_DIR}/helmfile/apps/${COMPONENT}"
|
||||||
# MASTER_PASSWORD_WEB_VAR as precedence for MASTER_PASSWORD
|
# MASTER_PASSWORD_WEB_VAR as precedence for MASTER_PASSWORD
|
||||||
@@ -236,14 +236,6 @@ env-start:
|
|||||||
script:
|
script:
|
||||||
- "echo \"Deploying to Environment ${NAMESPACE} in ${CLUSTER} Cluster\""
|
- "echo \"Deploying to Environment ${NAMESPACE} in ${CLUSTER} Cluster\""
|
||||||
- "kubectl create namespace ${NAMESPACE} --dry-run=client -o yaml | kubectl apply -f -"
|
- "kubectl create namespace ${NAMESPACE} --dry-run=client -o yaml | kubectl apply -f -"
|
||||||
- >
|
|
||||||
kubectl create secret
|
|
||||||
--namespace "${NAMESPACE}"
|
|
||||||
docker-registry external-registry
|
|
||||||
--docker-server "${EXTERNAL_REGISTRY}"
|
|
||||||
--docker-username "${EXTERNAL_REGISTRY_USERNAME}"
|
|
||||||
--docker-password "${EXTERNAL_REGISTRY_PASSWORD}"
|
|
||||||
--dry-run=client -o yaml | kubectl apply -f -
|
|
||||||
stage: "env"
|
stage: "env"
|
||||||
|
|
||||||
policies-deploy:
|
policies-deploy:
|
||||||
@@ -295,19 +287,7 @@ services-deploy:
|
|||||||
variables:
|
variables:
|
||||||
COMPONENT: "services"
|
COMPONENT: "services"
|
||||||
|
|
||||||
provisioning-deploy:
|
nubus-deploy:
|
||||||
stage: "component-deploy-stage-2"
|
|
||||||
extends: ".deploy-common"
|
|
||||||
rules:
|
|
||||||
- if: >
|
|
||||||
$CI_PIPELINE_SOURCE =~ "web|schedules|trigger|api" &&
|
|
||||||
$NAMESPACE =~ /.+/ &&
|
|
||||||
($DEPLOY_ALL_COMPONENTS != "no" || $DEPLOY_UMS != "no" || $DEPLOY_PROVISIONING != "no")
|
|
||||||
when: "on_success"
|
|
||||||
variables:
|
|
||||||
COMPONENT: "provisioning"
|
|
||||||
|
|
||||||
ums-deploy:
|
|
||||||
stage: "component-deploy-stage-1"
|
stage: "component-deploy-stage-1"
|
||||||
extends: ".deploy-common"
|
extends: ".deploy-common"
|
||||||
rules:
|
rules:
|
||||||
@@ -332,18 +312,6 @@ ox-deploy:
|
|||||||
variables:
|
variables:
|
||||||
COMPONENT: "open-xchange"
|
COMPONENT: "open-xchange"
|
||||||
|
|
||||||
ics-deploy:
|
|
||||||
stage: "component-deploy-stage-1"
|
|
||||||
extends: ".deploy-common"
|
|
||||||
rules:
|
|
||||||
- if: >
|
|
||||||
$CI_PIPELINE_SOURCE =~ "web|schedules|trigger|api" &&
|
|
||||||
$NAMESPACE =~ /.+/ &&
|
|
||||||
($DEPLOY_ALL_COMPONENTS != "no" || $DEPLOY_ICS != "no")
|
|
||||||
when: "on_success"
|
|
||||||
variables:
|
|
||||||
COMPONENT: "intercom-service"
|
|
||||||
|
|
||||||
xwiki-deploy:
|
xwiki-deploy:
|
||||||
stage: "component-deploy-stage-1"
|
stage: "component-deploy-stage-1"
|
||||||
extends: ".deploy-common"
|
extends: ".deploy-common"
|
||||||
@@ -461,15 +429,11 @@ env-stop:
|
|||||||
|
|
||||||
.ums-default-password: &ums-default-password
|
.ums-default-password: &ums-default-password
|
||||||
- |
|
- |
|
||||||
UMS_PASSWORDS=$( \
|
DEFAULT_ADMINISTRATOR_PASSWORD=$(
|
||||||
kubectl -n ${NAMESPACE} get cm ums-stack-data-swp-data -o jsonpath='{.data.dev-test-users\.yaml}' \
|
kubectl \
|
||||||
| yq '.properties.password' > passwords.txt \
|
-n ${NAMESPACE} \
|
||||||
)
|
get secret ums-nubus-credentials \
|
||||||
DEFAULT_USER_PASSWORD=$( \
|
-o jsonpath='{.data.administrator_password}' | base64 -d \
|
||||||
awk 'NR==1{print $1}' passwords.txt \
|
|
||||||
)
|
|
||||||
DEFAULT_ADMIN_PASSWORD=$(
|
|
||||||
awk 'NR==3{print $1}' passwords.txt \
|
|
||||||
)
|
)
|
||||||
|
|
||||||
run-tests:
|
run-tests:
|
||||||
@@ -481,6 +445,11 @@ run-tests:
|
|||||||
- if: >
|
- if: >
|
||||||
$CI_PIPELINE_SOURCE =~ "web|schedules|trigger|api" && $NAMESPACE =~ /.+/ && $RUN_TESTS == "yes"
|
$CI_PIPELINE_SOURCE =~ "web|schedules|trigger|api" && $NAMESPACE =~ /.+/ && $RUN_TESTS == "yes"
|
||||||
when: "on_success"
|
when: "on_success"
|
||||||
|
parallel:
|
||||||
|
matrix:
|
||||||
|
- LANGUAGE:
|
||||||
|
- "de"
|
||||||
|
- "en"
|
||||||
script:
|
script:
|
||||||
- *ums-default-password
|
- *ums-default-password
|
||||||
- |
|
- |
|
||||||
@@ -490,27 +459,27 @@ run-tests:
|
|||||||
\"ref\": \"${TESTS_BRANCH}\", \
|
\"ref\": \"${TESTS_BRANCH}\", \
|
||||||
\"token\": \"${CI_JOB_TOKEN}\", \
|
\"token\": \"${CI_JOB_TOKEN}\", \
|
||||||
\"variables\": { \
|
\"variables\": { \
|
||||||
\"url\": \"https://portal.${DOMAIN}\", \
|
\"operator\": \"${OPERATOR}\", \
|
||||||
\"user_name\": \"${DEFAULT_USER_NAME}\", \
|
\"cluster\": \"${CLUSTER}\", \
|
||||||
\"user_password\": \"${DEFAULT_USER_PASSWORD}\", \
|
\"namespace\": \"${NAMESPACE}\", \
|
||||||
\"admin_name\": \"${DEFAULT_ADMIN_NAME}\", \
|
\"url\": \"https://portal.${DOMAIN}/\", \
|
||||||
\"admin_password\": \"${DEFAULT_ADMIN_PASSWORD}\", \
|
\"language\": \"${LANGUAGE}\", \
|
||||||
\"DEPLOY_ALL_COMPONENTS\": \"${DEPLOY_ALL_COMPONENTS}\", \
|
\"udm_api_username\": \"Administrator\", \
|
||||||
\"DEPLOY_COLLABORA\": \"${DEPLOY_COLLABORA}\", \
|
\"udm_api_password\": \"${DEFAULT_ADMINISTRATOR_PASSWORD}\", \
|
||||||
\"DEPLOY_ELEMENT\": \"${DEPLOY_ELEMENT}\", \
|
\"screenshot_test\": \"yes\", \
|
||||||
\"DEPLOY_ICS\": \"${DEPLOY_ICS}\", \
|
\"screenshot_before_step\": \"yes\", \
|
||||||
\"DEPLOY_JITSI\": \"${DEPLOY_JITSI}\", \
|
\"screenshot_after_step\": \"yes\", \
|
||||||
\"DEPLOY_KEYCLOAK\": \"${DEPLOY_UMS}\", \
|
\"screenshot_redirect_step\": \"yes\", \
|
||||||
\"DEPLOY_NEXTCLOUD\": \"${DEPLOY_NEXTCLOUD}\", \
|
\"testset\": \"${TESTS_TESTSET}\", \
|
||||||
\"DEPLOY_OPENPROJECT\": \"${DEPLOY_OPENPROJECT}\", \
|
\"testprofile\": \"Namespace\", \
|
||||||
\"DEPLOY_OX\": \"${DEPLOY_OX}\", \
|
\"gitlab_functional_yaml\": \"https://gitlab.opencode.de/api/v4/projects/1317/repository/files/helmfile%2Fenvironments%2Fdefault%2Ffunctional.yaml?ref=develop\", \
|
||||||
\"DEPLOY_SERVICES\": \"${DEPLOY_SERVICES}\", \
|
\"gitlab_env_namespace_template\": \"https://gitlab.opencode.de/api/v4/projects/1564/repository/files/environments%2F{operator}%2F{cluster}%2F{namespace}.yaml.gotmpl?ref=main\", \
|
||||||
\"DEPLOY_UCS\": \"${DEPLOY_UMS}\", \
|
\"gitlab_default_env_namespace\": \"values\", \
|
||||||
\"DEPLOY_XWIKI\": \"${DEPLOY_XWIKI}\", \
|
\"GRACE_PERIOD\": \"${TESTS_GRACE_PERIOD}\" \
|
||||||
\"DEPLOY_PROVISIONING\": \"${DEPLOY_PROVISIONING}\" \
|
|
||||||
} \
|
} \
|
||||||
}" \
|
}" \
|
||||||
"https://${TESTS_PROJECT_URL}/trigger/pipeline"
|
"https://${TESTS_PROJECT_URL}/trigger/pipeline"
|
||||||
|
retry: 1
|
||||||
|
|
||||||
avscan-prepare:
|
avscan-prepare:
|
||||||
stage: ".pre"
|
stage: ".pre"
|
||||||
@@ -687,5 +656,4 @@ renovate:
|
|||||||
script:
|
script:
|
||||||
- "renovate ${RENOVATE_EXTRA_FLAGS}"
|
- "renovate ${RENOVATE_EXTRA_FLAGS}"
|
||||||
stage: "renovate"
|
stage: "renovate"
|
||||||
|
|
||||||
...
|
...
|
||||||
|
|||||||
@@ -2,10 +2,10 @@
|
|||||||
# SPDX-License-Identifier: Apache-2.0
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
---
|
---
|
||||||
variables:
|
variables:
|
||||||
OPENDESK_CI_CLI_IMAGE: "registry.opencode.de/bmi/opendesk/tooling/opendesk-ci-cli:2.4.4\
|
OPENDESK_CI_CLI_IMAGE: "registry.opencode.de/bmi/opendesk/tooling/opendesk-ci-cli:2.5.0\
|
||||||
@sha256:4120fe717071876f4c9ff128f26019d089fda158a4fb1912911e09af2fd3875f"
|
@sha256:630e102edc70c9e730a46180e79ff278fd8b5039eb336110e0df89fe415225ef"
|
||||||
OPENDESK_LINT_IMAGE: "registry.opencode.de/bmi/opendesk/components/platform-development/images/ci-lint:1.0.5\
|
OPENDESK_LINT_IMAGE: "registry.opencode.de/bmi/opendesk/components/platform-development/images/ci-lint:1.0.6\
|
||||||
@sha256:60870adb64b0503d4a6efd16cef4e074b91a4ca52b48811cfcea057bcccd07e4"
|
@sha256:0a8997876a0c3f5a3c73eb6bd75c5cde63757bc31b983bfd92cfcb17389d536f"
|
||||||
|
|
||||||
.common:
|
.common:
|
||||||
cache: {}
|
cache: {}
|
||||||
|
|||||||
@@ -14,19 +14,32 @@ lint-kyverno:
|
|||||||
- "collabora"
|
- "collabora"
|
||||||
- "cryptpad"
|
- "cryptpad"
|
||||||
- "element"
|
- "element"
|
||||||
- "intercom-service"
|
|
||||||
- "jitsi"
|
- "jitsi"
|
||||||
- "nextcloud"
|
- "nextcloud"
|
||||||
- "nubus"
|
- "nubus"
|
||||||
- "open-xchange"
|
- "open-xchange"
|
||||||
- "openproject"
|
- "openproject"
|
||||||
- "openproject-bootstrap"
|
- "openproject-bootstrap"
|
||||||
- "provisioning"
|
|
||||||
- "services"
|
- "services"
|
||||||
- "xwiki"
|
- "xwiki"
|
||||||
script:
|
script:
|
||||||
- "cd ${CI_PROJECT_DIR}/helmfile/apps/${APP}"
|
- "cd ${CI_PROJECT_DIR}/helmfile/apps/${APP}"
|
||||||
- "helmfile template -e test --include-needs > ${CI_PROJECT_DIR}/.kyverno/opendesk.yaml"
|
- >
|
||||||
|
node /app/opendesk-ci-cli/src/index.js generate-kyverno-env
|
||||||
|
-d ${CI_PROJECT_DIR}/helmfile/environments
|
||||||
|
- "helmfile template -e test --include-needs --skip-tests > ${CI_PROJECT_DIR}/.kyverno/opendesk.yaml"
|
||||||
|
- "cd ${CI_PROJECT_DIR}/.kyverno"
|
||||||
|
# Test optional
|
||||||
|
- >
|
||||||
|
node /app/opendesk-ci-cli/src/index.js generate-kyverno-tests
|
||||||
|
-d ${CI_PROJECT_DIR}/.kyverno
|
||||||
|
-t optional
|
||||||
|
-s manifest
|
||||||
|
-f opendesk.yaml
|
||||||
|
--skip-tests true
|
||||||
|
${APP}
|
||||||
|
- "kyverno test . || true"
|
||||||
|
# Test required
|
||||||
- >
|
- >
|
||||||
node /app/opendesk-ci-cli/src/index.js generate-kyverno-tests
|
node /app/opendesk-ci-cli/src/index.js generate-kyverno-tests
|
||||||
-d ${CI_PROJECT_DIR}/.kyverno
|
-d ${CI_PROJECT_DIR}/.kyverno
|
||||||
@@ -35,8 +48,5 @@ lint-kyverno:
|
|||||||
-f opendesk.yaml
|
-f opendesk.yaml
|
||||||
--skip-tests true
|
--skip-tests true
|
||||||
${APP}
|
${APP}
|
||||||
- "node /app/opendesk-ci-cli/src/index.js filter-for-kinds -f ${CI_PROJECT_DIR}/.kyverno/opendesk.yaml"
|
|
||||||
- "cd ${CI_PROJECT_DIR}/.kyverno"
|
|
||||||
- "kyverno test ."
|
- "kyverno test ."
|
||||||
|
|
||||||
...
|
...
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ pod:
|
|||||||
- "DaemonSet"
|
- "DaemonSet"
|
||||||
- name: "disallow-default-serviceaccount"
|
- name: "disallow-default-serviceaccount"
|
||||||
rule: "disallow-default-serviceAccountName"
|
rule: "disallow-default-serviceAccountName"
|
||||||
type: "required"
|
type: "optional"
|
||||||
kinds:
|
kinds:
|
||||||
- "StatefulSet"
|
- "StatefulSet"
|
||||||
- "Deployment"
|
- "Deployment"
|
||||||
@@ -58,7 +58,7 @@ pod:
|
|||||||
- "DaemonSet"
|
- "DaemonSet"
|
||||||
- name: "require-health-and-liveness-check"
|
- name: "require-health-and-liveness-check"
|
||||||
rule: "require-health-and-liveness-check"
|
rule: "require-health-and-liveness-check"
|
||||||
type: "required"
|
type: "optional"
|
||||||
kinds:
|
kinds:
|
||||||
- "StatefulSet"
|
- "StatefulSet"
|
||||||
- "Deployment"
|
- "Deployment"
|
||||||
@@ -158,7 +158,7 @@ pod:
|
|||||||
- "DaemonSet"
|
- "DaemonSet"
|
||||||
- name: "require-containersecuritycontext"
|
- name: "require-containersecuritycontext"
|
||||||
rule: "require-seccomp-profile"
|
rule: "require-seccomp-profile"
|
||||||
type: "required"
|
type: "optional"
|
||||||
kinds:
|
kinds:
|
||||||
- "StatefulSet"
|
- "StatefulSet"
|
||||||
- "Deployment"
|
- "Deployment"
|
||||||
@@ -176,7 +176,7 @@ pod:
|
|||||||
- "DaemonSet"
|
- "DaemonSet"
|
||||||
- name: "require-containersecuritycontext"
|
- name: "require-containersecuritycontext"
|
||||||
rule: "require-empty-seLinuxOptions"
|
rule: "require-empty-seLinuxOptions"
|
||||||
type: "required"
|
type: "optional"
|
||||||
kinds:
|
kinds:
|
||||||
- "StatefulSet"
|
- "StatefulSet"
|
||||||
- "Deployment"
|
- "Deployment"
|
||||||
@@ -285,7 +285,7 @@ pod:
|
|||||||
- "Ingress"
|
- "Ingress"
|
||||||
- name: "template-replicas"
|
- name: "template-replicas"
|
||||||
rule: "template-replicas"
|
rule: "template-replicas"
|
||||||
type: "required"
|
type: "optional"
|
||||||
kinds:
|
kinds:
|
||||||
- "StatefulSet"
|
- "StatefulSet"
|
||||||
- "Deployment"
|
- "Deployment"
|
||||||
|
|||||||
@@ -27,6 +27,20 @@ spec:
|
|||||||
message: "CPU and memory resource requests and limits are required."
|
message: "CPU and memory resource requests and limits are required."
|
||||||
pattern:
|
pattern:
|
||||||
spec:
|
spec:
|
||||||
|
=(ephemeralContainers):
|
||||||
|
- resources:
|
||||||
|
limits:
|
||||||
|
memory: "?*"
|
||||||
|
requests:
|
||||||
|
cpu: "?*"
|
||||||
|
memory: "?*"
|
||||||
|
=(initContainers):
|
||||||
|
- resources:
|
||||||
|
limits:
|
||||||
|
memory: "?*"
|
||||||
|
requests:
|
||||||
|
cpu: "?*"
|
||||||
|
memory: "?*"
|
||||||
containers:
|
containers:
|
||||||
- resources:
|
- resources:
|
||||||
limits:
|
limits:
|
||||||
|
|||||||
16
.reuse/dep5
16
.reuse/dep5
@@ -1,16 +0,0 @@
|
|||||||
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
|
|
||||||
Upstream-Name: openDesk - der Souveräne Arbeitsplatz
|
|
||||||
Upstream-Contact: <opendesk@zendis.de>
|
|
||||||
Source: https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk
|
|
||||||
|
|
||||||
Files: helmfile/files/theme/*
|
|
||||||
Copyright: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
|
||||||
License: Apache-2.0
|
|
||||||
|
|
||||||
Files: helmfile/files/gpg-pubkeys/*
|
|
||||||
Copyright: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
|
||||||
License: CC0-1.0
|
|
||||||
|
|
||||||
Files: cspell.json
|
|
||||||
Copyright: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
|
||||||
License: Apache-2.0
|
|
||||||
10
README.md
10
README.md
@@ -32,13 +32,13 @@ openDesk currently features the following functional main components:
|
|||||||
| -------------------- | --------------------------- | ------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
|
| -------------------- | --------------------------- | ------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||||
| Chat & collaboration | Element ft. Nordeck widgets | [1.11.67](https://github.com/element-hq/element-desktop/releases/tag/v1.11.67) | [For the most recent release](https://element.io/user-guide) |
|
| Chat & collaboration | Element ft. Nordeck widgets | [1.11.67](https://github.com/element-hq/element-desktop/releases/tag/v1.11.67) | [For the most recent release](https://element.io/user-guide) |
|
||||||
| Diagram editor | CryptPad ft. diagrams.net | [5.6.0](https://github.com/cryptpad/cryptpad/releases/tag/5.6.0) | [For the most recent release](https://docs.cryptpad.org/en/) |
|
| Diagram editor | CryptPad ft. diagrams.net | [5.6.0](https://github.com/cryptpad/cryptpad/releases/tag/5.6.0) | [For the most recent release](https://docs.cryptpad.org/en/) |
|
||||||
| File management | Nextcloud | [28.0.5](https://nextcloud.com/de/changelog/#28-0-5) | [Nextcloud 28](https://docs.nextcloud.com/) |
|
| File management | Nextcloud | [29.0.7](https://nextcloud.com/de/changelog/#29-0-7) | [SNextcloud 29](https://docs.nextcloud.com/) |
|
||||||
| Groupware | OX App Suite | [8.26](https://documentation.open-xchange.com/appsuite/releases/8.26/) | Online documentation available from within the installed application; [Additional resources](https://www.open-xchange.com/resources/oxpedia) |
|
| Groupware | OX App Suite | [8.26](https://documentation.open-xchange.com/appsuite/releases/8.26/) | Online documentation available from within the installed application; [Additional resources](https://www.open-xchange.com/resources/oxpedia) |
|
||||||
| Knowledge management | XWiki | [16.4.1](https://www.xwiki.org/xwiki/bin/view/ReleaseNotes/Data/XWiki/16.4.1/) | [For the most recent release](https://www.xwiki.org/xwiki/bin/view/Documentation) |
|
| Knowledge management | XWiki | [16.4.4](https://www.xwiki.org/xwiki/bin/view/ReleaseNotes/Data/XWiki/16.4.4/) | [For the most recent release](https://www.xwiki.org/xwiki/bin/view/Documentation) |
|
||||||
| Portal & IAM | Nubus | Product Preview[^1] | [Univention's documentation website](https://docs.software-univention.de/n/en/index.html) |
|
| Portal & IAM | Nubus | [1.0] | [Univention's documentation website](https://docs.software-univention.de/n/en/nubus.html) |
|
||||||
| Project management | OpenProject | [14.4.0](https://www.openproject.org/docs/release-notes/14-4-0/) | [For the most recent release](https://www.openproject.org/docs/user-guide/) |
|
| Project management | OpenProject | [14.6.1](https://www.openproject.org/docs/release-notes/14-6-1/) | [For the most recent release](https://www.openproject.org/docs/user-guide/) |
|
||||||
| Videoconferencing | Jitsi | [2.0.9646](https://github.com/jitsi/jitsi-meet/releases/tag/stable%2Fjitsi-meet_9646) | [For the most recent release](https://jitsi.github.io/handbook/docs/category/user-guide/) |
|
| Videoconferencing | Jitsi | [2.0.9646](https://github.com/jitsi/jitsi-meet/releases/tag/stable%2Fjitsi-meet_9646) | [For the most recent release](https://jitsi.github.io/handbook/docs/category/user-guide/) |
|
||||||
| Weboffice | Collabora | [24.04.6.1.1](https://www.collaboraoffice.com/code-24-04-release-notes/) | Online documentation available from within the installed application; [Additional resources](https://sdk.collaboraonline.com/) |
|
| Weboffice | Collabora | [24.04.7.2](https://www.collaboraoffice.com/code-24-04-release-notes/) | Online documentation available from within the installed application; [Additional resources](https://sdk.collaboraonline.com/) |
|
||||||
|
|
||||||
While not all components are perfectly shaped for the execution inside containers, one of the project's objectives is to
|
While not all components are perfectly shaped for the execution inside containers, one of the project's objectives is to
|
||||||
align the applications with best practices regarding container design and operations.
|
align the applications with best practices regarding container design and operations.
|
||||||
|
|||||||
24
REUSE.toml
Normal file
24
REUSE.toml
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
# SPDX-FileCopyrightText: 2024 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
version = 1
|
||||||
|
|
||||||
|
[[annotations]]
|
||||||
|
path = "cspell.json"
|
||||||
|
SPDX-FileCopyrightText = "2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH"
|
||||||
|
SPDX-License-Identifier = "Apache-2.0"
|
||||||
|
|
||||||
|
[[annotations]]
|
||||||
|
path = "helmfile/files/gpg-pubkeys/*"
|
||||||
|
SPDX-FileCopyrightText = "2023 Bundesministerium des Innern und für Heimat, PG ZenDiS \"Projektgruppe für Aufbau ZenDiS\""
|
||||||
|
SPDX-License-Identifier = "CC0-1.0"
|
||||||
|
|
||||||
|
[[annotations]]
|
||||||
|
path = "helmfile/files/theme/*"
|
||||||
|
SPDX-FileCopyrightText = "2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH"
|
||||||
|
SPDX-License-Identifier = "Apache-2.0"
|
||||||
|
|
||||||
|
[[annotations]]
|
||||||
|
path = "helmfile/files/portal-tiles/*"
|
||||||
|
SPDX-FileCopyrightText = "2024 Google LLC"
|
||||||
|
SPDX-License-Identifier = "Apache-2.0"
|
||||||
@@ -73,7 +73,8 @@
|
|||||||
"Addressbooks",
|
"Addressbooks",
|
||||||
"filestore",
|
"filestore",
|
||||||
"trashbin",
|
"trashbin",
|
||||||
"bootstrap"
|
"bootstrap",
|
||||||
|
"configurability"
|
||||||
],
|
],
|
||||||
"ignoreWords": [],
|
"ignoreWords": [],
|
||||||
"import": []
|
"import": []
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ script_path = os.path.dirname(os.path.realpath(__file__))
|
|||||||
log_path = script_path+'/../logs'
|
log_path = script_path+'/../logs'
|
||||||
charts_yaml = script_path+'/../helmfile/environments/default/charts.yaml'
|
charts_yaml = script_path+'/../helmfile/environments/default/charts.yaml'
|
||||||
base_repo_path = script_path+'/..'
|
base_repo_path = script_path+'/..'
|
||||||
base_helmfile = base_repo_path+'/helmfile_generic.yaml'
|
base_helmfile = base_repo_path+'/helmfile_generic.yaml.gotmpl'
|
||||||
helmfile_backup_extension = '.bak'
|
helmfile_backup_extension = '.bak'
|
||||||
|
|
||||||
Path(log_path).mkdir(parents=True, exist_ok=True)
|
Path(log_path).mkdir(parents=True, exist_ok=True)
|
||||||
|
|||||||
@@ -33,10 +33,11 @@ You might want to set credential variables in the GitLab project at `Settings` >
|
|||||||
# Tests
|
# Tests
|
||||||
|
|
||||||
The GitLab CI pipeline contains a job named `run-tests` that can trigger a test suite pipeline on another GitLab project.
|
The GitLab CI pipeline contains a job named `run-tests` that can trigger a test suite pipeline on another GitLab project.
|
||||||
The `DEPLOY_`-variables are used to determine which components should be tested.
|
|
||||||
In order for the trigger to work, the variable `TESTS_PROJECT_URL` has to be set on this GitLab project's CI variables
|
In order for the trigger to work, the variable `TESTS_PROJECT_URL` has to be set on this GitLab project's CI variables
|
||||||
that can be found at `Settings` -> `CI/CD` -> `Variables`. The variable should have this format:
|
that can be found at `Settings` -> `CI/CD` -> `Variables`. The variable should have this format:
|
||||||
`<domain of gitlab>/api/v4/projects/<id>`.
|
`<domain of gitlab>/api/v4/projects/<id>`.
|
||||||
|
To select the current testset, use the variable `TESTS_TESTSET`. Default: `Smoke`.
|
||||||
If the branch of the test pipeline is not `main` this can be set with the `.gitlab-ci.yml` variable
|
If the branch of the test pipeline is not `main` this can be set with the `.gitlab-ci.yml` variable
|
||||||
`TESTS_BRANCH` while creating a new pipeline.
|
`TESTS_BRANCH` while creating a new pipeline.
|
||||||
|
|
||||||
|
The variable `testprofile` within the job is set to `Namespace`, which tells the e2e tests to use environment specific settings that will be read from the cluster and namespace specific file in the opendesk-env repository.
|
||||||
@@ -33,21 +33,20 @@ they need to be replaced in production deployments.
|
|||||||
| ClamAV (Simple) | Antivirus engine | Eval |
|
| ClamAV (Simple) | Antivirus engine | Eval |
|
||||||
| Collabora | Weboffice | Functional |
|
| Collabora | Weboffice | Functional |
|
||||||
| CryptPad | Weboffice | Functional |
|
| CryptPad | Weboffice | Functional |
|
||||||
|
| dkimpy-milter | DKIM milter for Postfix | Eval |
|
||||||
| Element | Secure communications platform | Functional |
|
| Element | Secure communications platform | Functional |
|
||||||
| Intercom Service | Cross service data exchange | Functional |
|
|
||||||
| Jitsi | Videoconferencing | Functional |
|
| Jitsi | Videoconferencing | Functional |
|
||||||
| MariaDB | Database | Eval |
|
| MariaDB | Database | Eval |
|
||||||
| Memcached | Cache Database | Eval |
|
| Memcached | Cache Database | Eval |
|
||||||
| MinIO | Object Storage | Eval |
|
| MinIO | Object Storage | Eval |
|
||||||
| Nextcloud | File share | Functional |
|
| Nextcloud | File share | Functional |
|
||||||
|
| Nubus (UMS) | Identity Management & Portal | Functional |
|
||||||
| OpenProject | Project management | Functional |
|
| OpenProject | Project management | Functional |
|
||||||
| OX Appsuite | Groupware | Functional |
|
| OX Appsuite | Groupware | Functional |
|
||||||
| OX Dovecot | Mail backend (IMAP) | Functional |
|
| OX Dovecot | Mail backend (IMAP) | Functional |
|
||||||
| Provisioning (OX Connector) | Groupware provisioning | Functional |
|
|
||||||
| Postfix | MTA | Eval |
|
| Postfix | MTA | Eval |
|
||||||
| PostgreSQL | Database | Eval |
|
| PostgreSQL | Database | Eval |
|
||||||
| Redis | Cache Database | Eval |
|
| Redis | Cache Database | Eval |
|
||||||
| Univention Management Stack | Identity Management & Portal | Functional |
|
|
||||||
| XWiki | Knowledge Management | Functional |
|
| XWiki | Knowledge Management | Functional |
|
||||||
|
|
||||||
# Component integration
|
# Component integration
|
||||||
@@ -74,9 +73,9 @@ Most details can be found in the upstream documentation that is linked in the re
|
|||||||
|
|
||||||
## Intercom Service / Silent Login
|
## Intercom Service / Silent Login
|
||||||
|
|
||||||
The Intercom Service's role is to enable cross-application integration based on the user's browser interaction as handling
|
The Intercom Service is deployed in context of Nubus/UMS. Its role is to enable cross-application integration
|
||||||
authentication when the frontend of an application has to call the API from another application is often a
|
based on the user's browser interaction as handling authentication when the frontend of an application has to call
|
||||||
challenge.
|
the API from another application is often a challenge.
|
||||||
|
|
||||||
To establish a session with the Intercom Service an application can use the silent login feature within an iframe.
|
To establish a session with the Intercom Service an application can use the silent login feature within an iframe.
|
||||||
|
|
||||||
|
|||||||
@@ -36,6 +36,9 @@ component's log level to debug and it get some features like:
|
|||||||
- An ingress for `http://minio-console.<your_domain>` is configured.
|
- An ingress for `http://minio-console.<your_domain>` is configured.
|
||||||
and set the log level for components to "Debug".
|
and set the log level for components to "Debug".
|
||||||
|
|
||||||
|
**Note**: When enabling debug and running upgrades you must manually delete all jobs before the upgrade. As with debug
|
||||||
|
we keep the jobs and some job fields are immutable it could otherwise lead into an upgrade failure.
|
||||||
|
|
||||||
**Note:** All containers should write their log output to STDOUT, if you find (valuable) logs inside a container, please let us know!
|
**Note:** All containers should write their log output to STDOUT, if you find (valuable) logs inside a container, please let us know!
|
||||||
|
|
||||||
# Adding containers to a pod for debugging purposes
|
# Adding containers to a pod for debugging purposes
|
||||||
@@ -153,7 +156,7 @@ OpenProject is a Ruby on Rails application. Therefore you can make use of the Ra
|
|||||||
and run debug code like this:
|
and run debug code like this:
|
||||||
|
|
||||||
```
|
```
|
||||||
uri = URI('https://nextcloud.url/index.php/apps/integration_openproject/check-config')
|
uri = URI('https://nextcloud.url/apps/integration_openproject/check-config')
|
||||||
Net::HTTP.start(uri.host, uri.port,
|
Net::HTTP.start(uri.host, uri.port,
|
||||||
:use_ssl => uri.scheme == 'https') do |http|
|
:use_ssl => uri.scheme == 'https') do |http|
|
||||||
request = Net::HTTP::Get.new uri
|
request = Net::HTTP::Get.new uri
|
||||||
|
|||||||
@@ -138,6 +138,9 @@ configured to pull artifacts that do not originate from Open CoDE into projects
|
|||||||
|
|
||||||
The mirror script takes the information on what artifacts to mirror from the annotation inside the two yaml files:
|
The mirror script takes the information on what artifacts to mirror from the annotation inside the two yaml files:
|
||||||
- `# upstreamRegistry` *required*: To identify the source registry
|
- `# upstreamRegistry` *required*: To identify the source registry
|
||||||
|
- `# upstreamRegistryCredentialId`: *optional*: In case the source registry is not public the access credentials have to be specified as ENV variables containing the value of this key in their name, so you want to specific that key all uppercase:
|
||||||
|
- `MIRROR_CREDENTIALS_SRC_<upstreamRegistryCredentialId>_USERNAME`
|
||||||
|
- `MIRROR_CREDENTIALS_SRC_<upstreamRegistryCredentialId>_PASSWORT`
|
||||||
- `# upstreamRepository` *required*: To identify the source repository
|
- `# upstreamRepository` *required*: To identify the source repository
|
||||||
- `# upstreamMirrorTagFilterRegEx` *required*: If this annotation is set it activates the mirror for the component. Only tags are being mirrored that match the given regular expression. **Note:** You have to use single quotes for this attribute's value in case you use backslash leading regex notation like `\d`.
|
- `# upstreamMirrorTagFilterRegEx` *required*: If this annotation is set it activates the mirror for the component. Only tags are being mirrored that match the given regular expression. **Note:** You have to use single quotes for this attribute's value in case you use backslash leading regex notation like `\d`.
|
||||||
- `# upstreamMirrorStartFrom` *optional*: Array of numeric values in case you want to mirror only artifacts beginning with a specific version. You must use capturing groups
|
- `# upstreamMirrorStartFrom` *optional*: Array of numeric values in case you want to mirror only artifacts beginning with a specific version. You must use capturing groups
|
||||||
|
|||||||
@@ -60,16 +60,16 @@ The deployment is designed to deploy each application/service under a dedicated
|
|||||||
For your convenience, we recommend to create a `*.domain.tld` A-Record to your cluster ingress controller,
|
For your convenience, we recommend to create a `*.domain.tld` A-Record to your cluster ingress controller,
|
||||||
otherwise you need to create an A-Record for each subdomain.
|
otherwise you need to create an A-Record for each subdomain.
|
||||||
|
|
||||||
| Record name | Type | Value | Additional information |
|
| Record name | Type | Value | Additional information |
|
||||||
| ----------------------- | ---- | -------------------------------------------------- | ---------------------------------------------------------------------------------- |
|
|-------------------------------|------|----------------------------------------------------|------------------------------------------------------------------|
|
||||||
| *.domain.tld | A | IPv4 address of your Ingress Controller | |
|
| *.domain.tld | A | IPv4 address of your Ingress Controller | |
|
||||||
| *.domain.tld | AAAA | IPv6 address of your Ingress Controller | |
|
| *.domain.tld | AAAA | IPv6 address of your Ingress Controller | |
|
||||||
| mail.domain.tld | A | IPv4 address of your postfix NodePort/LoadBalancer | Optional mail should directly be delivered to openDesk's Postfix |
|
| mail.domain.tld | A | IPv4 address of your postfix NodePort/LoadBalancer | Optional mail should directly be delivered to openDesk's Postfix |
|
||||||
| mail.domain.tld | AAAA | IPv6 address of your postfix NodePort/LoadBalancer | Optional mail should directly be delivered to openDesk's Postfix |
|
| mail.domain.tld | AAAA | IPv6 address of your postfix NodePort/LoadBalancer | Optional mail should directly be delivered to openDesk's Postfix |
|
||||||
| domain.tld | MX | `10 mail.domain.tld` | |
|
| domain.tld | MX | `10 mail.domain.tld` | |
|
||||||
| domain.tld | TXT | `v=spf1 +a +mx +a:mail.domain.tld ~all` | Optional, use proper MTA record if present |
|
| domain.tld | TXT | `v=spf1 +a +mx +a:mail.domain.tld ~all` | Optional, use proper MTA record if present |
|
||||||
| _dmarc.domain.tld | TXT | `v=DMARC1; p=quarantine` | Optional |
|
| _dmarc.domain.tld | TXT | `v=DMARC1; p=quarantine` | Optional |
|
||||||
| _matrix._tcp.domain.tld | SRV | `1 10 PORT matrix.domain.tld` | `PORT` is your NodePort/LoadBalancer port of `opendesk-synapse-federation` service |
|
| default._domainkey.domain.tld | TXT | `v=DKIM1; k=rsa; h=sha256; ...` | Optional DKIM settings |
|
||||||
|
|
||||||
## Domain
|
## Domain
|
||||||
|
|
||||||
@@ -109,7 +109,6 @@ All available apps and their default value can be found in `helmfile/environment
|
|||||||
| CryptPad | `cryptpad.enabled` | `true` | Weboffice |
|
| CryptPad | `cryptpad.enabled` | `true` | Weboffice |
|
||||||
| Dovecot | `dovecot.enabled` | `true` | Mail backend |
|
| Dovecot | `dovecot.enabled` | `true` | Mail backend |
|
||||||
| Element | `element.enabled` | `true` | Secure communications platform |
|
| Element | `element.enabled` | `true` | Secure communications platform |
|
||||||
| Intercom Service | `intercom.enabled` | `true` | Cross service data exchange |
|
|
||||||
| Jitsi | `jitsi.enabled` | `true` | Videoconferencing |
|
| Jitsi | `jitsi.enabled` | `true` | Videoconferencing |
|
||||||
| MariaDB | `mariadb.enabled` | `true` | Database |
|
| MariaDB | `mariadb.enabled` | `true` | Database |
|
||||||
| Memcached | `memcached.enabled` | `true` | Cache Database |
|
| Memcached | `memcached.enabled` | `true` | Cache Database |
|
||||||
@@ -118,7 +117,6 @@ All available apps and their default value can be found in `helmfile/environment
|
|||||||
| Nubus | `nubus.enabled` | `true` | Identity Management & Portal |
|
| Nubus | `nubus.enabled` | `true` | Identity Management & Portal |
|
||||||
| OpenProject | `openproject.enabled` | `true` | Project management |
|
| OpenProject | `openproject.enabled` | `true` | Project management |
|
||||||
| OX Appsuite | `oxAppsuite.enabled` | `true` | Groupware |
|
| OX Appsuite | `oxAppsuite.enabled` | `true` | Groupware |
|
||||||
| Provisioning | `oxConnector.enabled` | `true` | Backend provisioning |
|
|
||||||
| Postfix | `postfix.enabled` | `true` | MTA |
|
| Postfix | `postfix.enabled` | `true` | MTA |
|
||||||
| PostgreSQL | `postgresql.enabled` | `true` | Database |
|
| PostgreSQL | `postgresql.enabled` | `true` | Database |
|
||||||
| Redis | `redis.enabled` | `true` | Cache Database |
|
| Redis | `redis.enabled` | `true` | Cache Database |
|
||||||
@@ -157,6 +155,15 @@ alternatively you can use an environment variable:
|
|||||||
export PRIVATE_IMAGE_REGISTRY_URL=my_private_registry.domain.tld
|
export PRIVATE_IMAGE_REGISTRY_URL=my_private_registry.domain.tld
|
||||||
```
|
```
|
||||||
|
|
||||||
|
or control repository override fine-granular per registry:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
repositories:
|
||||||
|
image:
|
||||||
|
dockerHub: "my_private_registry.domain.tld/docker.io/"
|
||||||
|
registryOpencodeDe: "my_private_registry.domain.tld/registry.opencode.de/"
|
||||||
|
```
|
||||||
|
|
||||||
If authentication is required, you can reference imagePullSecrets as following:
|
If authentication is required, you can reference imagePullSecrets as following:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
@@ -263,6 +270,8 @@ To use the openDesk functionality with its web based user interface you need to
|
|||||||
|
|
||||||
| Component | Description | Port | Type |
|
| Component | Description | Port | Type |
|
||||||
| ------------------ | ----------------------- | ----: | ---: |
|
| ------------------ | ----------------------- | ----: | ---: |
|
||||||
|
| openDesk | Kubernetes Ingress | 80 | TCP |
|
||||||
|
| openDesk | Kubernetes Ingress | 443 | TCP |
|
||||||
| Jitsi Video Bridge | ICE Port for video data | 10000 | UDP |
|
| Jitsi Video Bridge | ICE Port for video data | 10000 | UDP |
|
||||||
|
|
||||||
#### Mail clients
|
#### Mail clients
|
||||||
@@ -288,6 +297,20 @@ smtp:
|
|||||||
password: "secret"
|
password: "secret"
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Enabling DKIM signing of emails helps to reduce spam and increases trust.
|
||||||
|
openDesk ships dkimpy-milter as Postfix milter for signing mails.
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
dkimpy:
|
||||||
|
enable: true
|
||||||
|
dkim:
|
||||||
|
key:
|
||||||
|
value: |
|
||||||
|
HzZs08QF1O7UiAkcM9T3U7rePPECtSFvWZIvyKqdg8E=
|
||||||
|
selector: "default"
|
||||||
|
useED25519: true # when false, RSA is used
|
||||||
|
```
|
||||||
|
|
||||||
### TURN configuration
|
### TURN configuration
|
||||||
|
|
||||||
Some components (Jitsi, Element) use for direct communication a TURN server. You can configure your own TURN server with
|
Some components (Jitsi, Element) use for direct communication a TURN server. You can configure your own TURN server with
|
||||||
|
|||||||
@@ -8,7 +8,15 @@ SPDX-License-Identifier: Apache-2.0
|
|||||||
* [Disclaimer](#disclaimer)
|
* [Disclaimer](#disclaimer)
|
||||||
* [Releases upgrades](#releases-upgrades)
|
* [Releases upgrades](#releases-upgrades)
|
||||||
* [From v0.9.0](#from-v090)
|
* [From v0.9.0](#from-v090)
|
||||||
|
* [Changed openDesk defaults](#changed-opendesk-defaults)
|
||||||
|
* [Removal of unnecessary OX-Profiles in Nubus](#removal-of-unnecessary-ox-profiles-in-nubus)
|
||||||
|
* [MatrixID localpart update](#matrixid-localpart-update)
|
||||||
|
* [File-share configurability](#file-share-configurability)
|
||||||
|
* [Updated default subdomains in `global.hosts`](#updated-default-subdomains-in-globalhosts)
|
||||||
|
* [Updated `global.imagePullSecrets`](#updated-globalimagepullsecrets)
|
||||||
|
* [Dedicated group for access of the UDM REST API](#dedicated-group-for-access-of-the-udm-rest-api)
|
||||||
* [Automated migrations](#automated-migrations)
|
* [Automated migrations](#automated-migrations)
|
||||||
|
* [Local Postfix as Relay](#local-postfix-as-relay)
|
||||||
* [Updated IAM component Nubus](#updated-iam-component-nubus)
|
* [Updated IAM component Nubus](#updated-iam-component-nubus)
|
||||||
* [Manual cleanup](#manual-cleanup)
|
* [Manual cleanup](#manual-cleanup)
|
||||||
* [From v0.8.1](#from-v081)
|
* [From v0.8.1](#from-v081)
|
||||||
@@ -24,25 +32,208 @@ We do not offer support for upgrades before we reach openDesk 1.0.
|
|||||||
|
|
||||||
Though we try to ease the pain when it comes to 0.x upgrades. That is what this document is for.
|
Though we try to ease the pain when it comes to 0.x upgrades. That is what this document is for.
|
||||||
|
|
||||||
Limitations:
|
**Limitations:**
|
||||||
- We assume that the PV reclaim policy is set to `delete`, so expect that PVs get deleted as soon as the related PVC was deleted and will cover an explicit delete for PVs.
|
- We assume that the PV reclaim policy is set to `delete`, so expect that PVs get deleted as soon as the related PVC was
|
||||||
|
deleted and will cover an explicit delete for PVs.
|
||||||
|
|
||||||
# Releases upgrades
|
# Releases upgrades
|
||||||
|
|
||||||
## From v0.9.0
|
## From v0.9.0
|
||||||
|
|
||||||
|
### Changed openDesk defaults
|
||||||
|
|
||||||
|
|
||||||
|
#### Removal of unnecessary OX-Profiles in Nubus
|
||||||
|
|
||||||
|
**Warning: If you do not address this section with your current deployment the upgrade will fail.**
|
||||||
|
|
||||||
|
The update will remove unnecessary OX-Profiles in Nubus, but can't as long as these profiles are in use.
|
||||||
|
|
||||||
|
So please ensure that only the following two supported profiles are assigned to your users:
|
||||||
|
- `opendesk_standard`: "opendesk Standard"
|
||||||
|
- `none`: "Login disabled"
|
||||||
|
|
||||||
|
You can review and update other accounts as follows:
|
||||||
|
- Login as IAM admin.
|
||||||
|
- Open the user module.
|
||||||
|
- Open the extended search by clicking the funnel (Trichter) icon next to the search input field.
|
||||||
|
- Open the "Property" (Eigenschaft) list and select "OX Access" (OX-Berechtigung).
|
||||||
|
- In the input field right next to the list enter an asterisk (*).
|
||||||
|
- Start the search by clicking once more on the funnel icon.
|
||||||
|
- Sort the result list for the "OX Access" column
|
||||||
|
- Edit every user that has a value different to `opendesk_standard` or `none`:
|
||||||
|
- Open the user.
|
||||||
|
- Go to section "OX App Suite".
|
||||||
|
- Change the value in the dropdown "OX Access" to either:
|
||||||
|
- "openDesk Standard" if the user should be able to use the Groupware module or
|
||||||
|
- "Login disabled" if the user should not user the Groupware module.
|
||||||
|
- Update the user account with the green "SAVE" button on top of the page.
|
||||||
|
|
||||||
|
#### MatrixID localpart update
|
||||||
|
|
||||||
|
Until 0.9.0 openDesk used the LDAP entryUUID of a user to generate the user's MatrixID. Due to restrictions of the
|
||||||
|
Matrix protocol, an update of a MatrixID is not possible, therefore, it was technically convenient to use the UUID
|
||||||
|
as it is immutable (see https://de.wikipedia.org/wiki/Universally_Unique_Identifier for more details on UUIDs.)
|
||||||
|
|
||||||
|
From the user experience perspective, that was a bad approach, so from now on, by default, the username which
|
||||||
|
is also used for logging into openDesk is used to define the localpart of the MatrixID.
|
||||||
|
|
||||||
|
For existing installations: The changed setting only affects users that login to Element the first time. Existing
|
||||||
|
user accounts will not be harmed. If you want existing users to get new MatrixIDs based on the new setting, you
|
||||||
|
need to update their external ID in Synapse and deactivate the old user afterward. The user will get a new
|
||||||
|
Matrix account from scratch, losing the existing contacts, chats and rooms.
|
||||||
|
|
||||||
|
The following Admin API calls are helpful:
|
||||||
|
- GET /_synapse/admin/v2/users/@<entryuuid>:<matrixdomain> get the user's existing external_id (auth_provider: "oidc")
|
||||||
|
- PUT /_synapse/admin/v2/users/@<entryuuid>:<matrixdomain> update user's external_id with JSON payload:
|
||||||
|
`{ "external_ids": [ { "auth_provider": "oidc", "external_id": "<old_id>+deprecated" } ] }`
|
||||||
|
- POST /_synapse/admin/v1/deactivate/@<entryuuid>:<matrixdomain> deactivate old user with JSON payload:
|
||||||
|
`{ "erase": true }`
|
||||||
|
|
||||||
|
For more details, check the Admin API documentation:
|
||||||
|
https://element-hq.github.io/synapse/latest/usage/administration/admin_api/index.html
|
||||||
|
|
||||||
|
You can enforce the old standard with the following setting:
|
||||||
|
```
|
||||||
|
functional:
|
||||||
|
chat:
|
||||||
|
matrix:
|
||||||
|
profile:
|
||||||
|
useImmutableIdentifierForLocalpart: true
|
||||||
|
```
|
||||||
|
|
||||||
|
#### File-share configurability
|
||||||
|
|
||||||
|
Now we provide some configurability regarding the sharing capabilities of the Nextcloud component.
|
||||||
|
|
||||||
|
The new default is different from the standard until now.
|
||||||
|
To keep the current state after the upgrade from 0.9.0, you have to provide the following settings:
|
||||||
|
|
||||||
|
```
|
||||||
|
functional:
|
||||||
|
filestore:
|
||||||
|
sharing:
|
||||||
|
external:
|
||||||
|
enabled: true
|
||||||
|
```
|
||||||
|
|
||||||
|
Please also check the other new options available at `functional.filestore.sharing`.
|
||||||
|
|
||||||
|
#### Updated default subdomains in `global.hosts`
|
||||||
|
|
||||||
|
We have streamlined the subdomain names used by openDesk to be more user-friendly and to avoid the use of specific
|
||||||
|
product names.
|
||||||
|
|
||||||
|
This results in following change of default subdomain naming:
|
||||||
|
|
||||||
|
- **collabora**: `collabora` → `office`
|
||||||
|
- **cryptpad**: `cryptpad` → `pad`
|
||||||
|
- **minioApi**: `minio` → `objectstore`
|
||||||
|
- **minioConsole**: `minio-console` → `objectstore-ui`
|
||||||
|
- **nextcloud**: `fs` → `files`
|
||||||
|
- **openproject**: `project` → `projects`
|
||||||
|
|
||||||
|
During upgrade, any existing environment needs to keep the old subdomains,
|
||||||
|
cause url/link changes are not every supported and not tested at all.
|
||||||
|
|
||||||
|
If you have not already defined the entire `global.hosts` dictionary in your custom environments values, please set it
|
||||||
|
to the defaults that were used before the upgrade:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
global:
|
||||||
|
hosts:
|
||||||
|
collabora: "collabora"
|
||||||
|
cryptpad: "cryptpad"
|
||||||
|
element: "chat"
|
||||||
|
intercomService: "ics"
|
||||||
|
jitsi: "meet"
|
||||||
|
keycloak: "id"
|
||||||
|
matrixNeoBoardWidget: "matrix-neoboard-widget"
|
||||||
|
matrixNeoChoiceWidget: "matrix-neochoice-widget"
|
||||||
|
matrixNeoDateFixBot: "matrix-neodatefix-bot"
|
||||||
|
matrixNeoDateFixWidget: "matrix-neodatefix-widget"
|
||||||
|
minioApi: "minio"
|
||||||
|
minioConsole: "minio-console"
|
||||||
|
nextcloud: "fs"
|
||||||
|
openproject: "project"
|
||||||
|
openxchange: "webmail"
|
||||||
|
synapse: "matrix"
|
||||||
|
synapseFederation: "matrix-federation"
|
||||||
|
univentionManagementStack: "portal"
|
||||||
|
whiteboard: "whiteboard"
|
||||||
|
xwiki: "wiki"
|
||||||
|
```
|
||||||
|
|
||||||
|
In case you would like to use the updated hostnames you at least have to apply some manual changes. But do this at
|
||||||
|
your own risk. Be also aware that some of your user's bookmarks and links will stop working.
|
||||||
|
|
||||||
|
- Update the affected portal tiles:
|
||||||
|
- All tiles in the "Files" category.
|
||||||
|
- The "Projects" tile in the "Management" category.
|
||||||
|
- There are two options to change the link for the portal tiles:
|
||||||
|
- Use an admin account to access the portal's edit mode (on the bottom of the sidebar portal's menu).
|
||||||
|
- Utilize the UDM REST API to update the portal tile objects.
|
||||||
|
- Update the hostnames for the OpenProject-Nextcloud integration using a functional admin user for both components:
|
||||||
|
- In OpenProject: *Administration* > *Files* > *External file storages* > Select `Nextcloud at [your_domain]`
|
||||||
|
Edit *Details* - *General Information* - *Storage provider* and update the *hostname* to `files.<your_domain>`.
|
||||||
|
- In Nextcloud: *Administration* > *OpenProject* > *OpenProject server* update the *OpenProject host* to
|
||||||
|
to `projects.<your_domain>`.
|
||||||
|
|
||||||
|
#### Updated `global.imagePullSecrets`
|
||||||
|
|
||||||
|
Without using a custom registry, you can pull all the openDesk images without authentication.
|
||||||
|
Thus defining not existing imagePullSecrets creates unnecessary errors, so we removed them.
|
||||||
|
|
||||||
|
You can keep the current settings by setting the `external-registry` in your custom environment values:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
global:
|
||||||
|
imagePullSecrets:
|
||||||
|
- "external-registry"
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Dedicated group for access of the UDM REST API
|
||||||
|
|
||||||
|
Prerequisite: You allow the use of the [IAM's API](https://docs.software-univention.de/developer-reference/5.0/en/udm/rest-api.html)
|
||||||
|
with the following settings:
|
||||||
|
|
||||||
|
```
|
||||||
|
functional:
|
||||||
|
externalServices:
|
||||||
|
nubus:
|
||||||
|
udmRestApi:
|
||||||
|
enabled: true
|
||||||
|
```
|
||||||
|
|
||||||
|
With 0.9.0 all members of the group "Domain Admins" were able to successfully authenticate with the API.
|
||||||
|
|
||||||
|
This has been changed and there is now a dedicated group required for using the API: `IAM API - Full Access`
|
||||||
|
|
||||||
|
If you need specific accounts to make use of the API, please go ahead and assign them to the aforementioned group.
|
||||||
|
|
||||||
### Automated migrations
|
### Automated migrations
|
||||||
|
|
||||||
|
#### Local Postfix as Relay
|
||||||
|
|
||||||
|
All components relay outgoing mails to the local Postfix. In order for the configuration to be picked up by all components the following restarts are triggered in the migrations `POST` stage:
|
||||||
|
|
||||||
|
- Deployments:
|
||||||
|
- `opendesk-nextcloud-php`
|
||||||
|
- `ums-umc-server`
|
||||||
|
- Stateful Sets:
|
||||||
|
- `ums-selfservice-listener`
|
||||||
|
- `opendesk-synapse`
|
||||||
|
|
||||||
#### Updated IAM component Nubus
|
#### Updated IAM component Nubus
|
||||||
|
|
||||||
openDesk is integrating the latest [Nubus](https://www.univention.de/produkte/nubus/) development from Univention. The now redundant and scalable LDAP requires migration activities. These have been automated to avoid manual interaction. The `run_2` of the openDesk
|
openDesk is integrating the latest [Nubus](https://www.univention.de/produkte/nubus/) development from Univention. The now redundant and scalable LDAP requires migration activities. These have been automated to avoid manual interaction. The `run_2` of the openDesk
|
||||||
upgrade migrations executes the following steps:
|
upgrade migrations executes the following steps:
|
||||||
|
|
||||||
- Stage PRE:
|
- Stage `PRE`:
|
||||||
- Delete service `ums-keycloak`, as it will be recreated headless.
|
- Delete service `ums-keycloak`, as it will be recreated headless.
|
||||||
- Scale down `statefulset/ums-ldap-server` and `statefulset/ums-ldap-notifier` in preparation or the next step:
|
- Scale down `statefulset/ums-ldap-server` and `statefulset/ums-ldap-notifier` in preparation or the next step:
|
||||||
- Create two new PVCs `shared-data-ums-ldap-server-primary-0` and `shared-data-ums-ldap-server-primary-1` for the new LDAP primary pods as copy from the existing `shared-data-ums-ldap-server-0`. The LDAP secondaries will sync from the primary nodes.
|
- Create two new PVCs `shared-data-ums-ldap-server-primary-0` and `shared-data-ums-ldap-server-primary-1` for the new LDAP primary pods as copy from the existing `shared-data-ums-ldap-server-0`. The LDAP secondaries will sync from the primary nodes.
|
||||||
- Stage POST:
|
- Stage `POST`:
|
||||||
- Restart Keycloak.
|
- Restart Keycloak.
|
||||||
|
|
||||||
##### Manual cleanup
|
##### Manual cleanup
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ openDesk is a Kubernetes only solution and requires an existing Kubernetes (K8s)
|
|||||||
- Domain and DNS Service
|
- Domain and DNS Service
|
||||||
- Ingress controller (Ingress NGINX)
|
- Ingress controller (Ingress NGINX)
|
||||||
- [Helm](https://helm.sh/) >= v3.9.0
|
- [Helm](https://helm.sh/) >= v3.9.0
|
||||||
- [Helmfile](https://helmfile.readthedocs.io/en/latest/) >= **v0.157.0**
|
- [Helmfile](https://helmfile.readthedocs.io/en/latest/) >= **v1.0.0-rc.5**
|
||||||
- [HelmDiff](https://github.com/databus23/helm-diff) >= 3.6.0
|
- [HelmDiff](https://github.com/databus23/helm-diff) >= 3.6.0
|
||||||
- Volume provisioner supporting RWO (read-write-once)
|
- Volume provisioner supporting RWO (read-write-once)
|
||||||
- Certificate handling with [cert-manager](https://cert-manager.io/)
|
- Certificate handling with [cert-manager](https://cert-manager.io/)
|
||||||
|
|||||||
@@ -158,7 +158,6 @@ This list gives you an overview of templated security settings and if they compl
|
|||||||
| **element**/opendesk-synapse | :white_check_mark: | no | no | yes | yes | 10991 | 10991 | yes | yes |
|
| **element**/opendesk-synapse | :white_check_mark: | no | no | yes | yes | 10991 | 10991 | yes | yes |
|
||||||
| **element**/opendesk-synapse-web | :white_check_mark: | no | no | yes | yes | 101 | 101 | yes | yes |
|
| **element**/opendesk-synapse-web | :white_check_mark: | no | no | yes | yes | 101 | 101 | yes | yes |
|
||||||
| **element**/opendesk-well-known | :white_check_mark: | no | no | yes | yes | 101 | 101 | yes | yes |
|
| **element**/opendesk-well-known | :white_check_mark: | no | no | yes | yes | 101 | 101 | yes | yes |
|
||||||
| **intercom-service**/intercom-service | :white_check_mark: | no | no | yes | yes | 1000 | 1000 | yes | yes |
|
|
||||||
| **jitsi**/jitsi | :white_check_mark: | no | no | yes | yes | 1993 | 1993 | yes | yes |
|
| **jitsi**/jitsi | :white_check_mark: | no | no | yes | yes | 1993 | 1993 | yes | yes |
|
||||||
| **jitsi**/jitsi/jitsi/jibri | :x: | n/a | n/a | n/a | n/a | n/a | n/a | n/a | no ["SYS_ADMIN"] |
|
| **jitsi**/jitsi/jitsi/jibri | :x: | n/a | n/a | n/a | n/a | n/a | n/a | n/a | no ["SYS_ADMIN"] |
|
||||||
| **jitsi**/jitsi/jitsi/jicofo | :x: | no | no | no | no | 0 | 0 | yes | no |
|
| **jitsi**/jitsi/jitsi/jicofo | :x: | no | no | no | no | 0 | 0 | yes | no |
|
||||||
@@ -183,7 +182,7 @@ This list gives you an overview of templated security settings and if they compl
|
|||||||
| **open-xchange**/open-xchange/public-sector-ui | :white_check_mark: | no | no | yes | yes | 1000 | 1000 | yes | yes |
|
| **open-xchange**/open-xchange/public-sector-ui | :white_check_mark: | no | no | yes | yes | 1000 | 1000 | yes | yes |
|
||||||
| **openproject**/openproject | :white_check_mark: | no | no | yes | yes | 1000 | 1000 | yes | yes |
|
| **openproject**/openproject | :white_check_mark: | no | no | yes | yes | 1000 | 1000 | yes | yes |
|
||||||
| **openproject-bootstrap**/opendesk-openproject-bootstrap | :white_check_mark: | no | no | yes | yes | 1000 | 1000 | yes | yes |
|
| **openproject-bootstrap**/opendesk-openproject-bootstrap | :white_check_mark: | no | no | yes | yes | 1000 | 1000 | yes | yes |
|
||||||
| **provisioning**/ox-connector | :x: | no | no | no | no | 0 | 0 | yes | no ["CHOWN","DAC_OVERRIDE","FOWNER","FSETID","KILL","SETGID","SETUID","SETPCAP","NET_BIND_SERVICE","NET_RAW","SYS_CHROOT"] |
|
| **open-xchange**/ox-connector | :x: | no | no | no | no | 0 | 0 | yes | no ["CHOWN","DAC_OVERRIDE","FOWNER","FSETID","KILL","SETGID","SETUID","SETPCAP","NET_BIND_SERVICE","NET_RAW","SYS_CHROOT"] |
|
||||||
| **services**/clamav | :x: | no | no | yes | no | 0 | 0 | yes | no |
|
| **services**/clamav | :x: | no | no | yes | no | 0 | 0 | yes | no |
|
||||||
| **services**/clamav-simple | :white_check_mark: | no | no | yes | yes | 100 | 101 | yes | yes |
|
| **services**/clamav-simple | :white_check_mark: | no | no | yes | yes | 100 | 101 | yes | yes |
|
||||||
| **services**/clamav/clamd | :white_check_mark: | no | no | yes | yes | 100 | 101 | yes | yes |
|
| **services**/clamav/clamd | :white_check_mark: | no | no | yes | yes | 100 | 101 | yes | yes |
|
||||||
@@ -196,6 +195,7 @@ This list gives you an overview of templated security settings and if they compl
|
|||||||
| **services**/postfix | :x: | yes | yes | no | no | 0 | 0 | yes | no |
|
| **services**/postfix | :x: | yes | yes | no | no | 0 | 0 | yes | no |
|
||||||
| **services**/postgresql | :white_check_mark: | no | no | yes | yes | 1001 | 1001 | yes | yes |
|
| **services**/postgresql | :white_check_mark: | no | no | yes | yes | 1001 | 1001 | yes | yes |
|
||||||
| **services**/redis/master | :white_check_mark: | no | no | yes | yes | 1001 | 1001 | yes | yes |
|
| **services**/redis/master | :white_check_mark: | no | no | yes | yes | 1001 | 1001 | yes | yes |
|
||||||
|
| **univention-management-stack**/intercom-service | :white_check_mark: | no | no | yes | yes | 1000 | 1000 | yes | yes |
|
||||||
| **univention-management-stack**/opendesk-keycloak-bootstrap | :white_check_mark: | no | no | yes | yes | 1000 | 1000 | yes | yes |
|
| **univention-management-stack**/opendesk-keycloak-bootstrap | :white_check_mark: | no | no | yes | yes | 1000 | 1000 | yes | yes |
|
||||||
| **univention-management-stack**/ums/keycloak | :x: | no | no | no | yes | 1000 | 1000 | yes | yes |
|
| **univention-management-stack**/ums/keycloak | :x: | no | no | no | yes | 1000 | 1000 | yes | yes |
|
||||||
| **univention-management-stack**/ums/keycloak-bootstrap | :x: | no | no | no | yes | 1000 | 1000 | yes | yes |
|
| **univention-management-stack**/ums/keycloak-bootstrap | :x: | no | no | no | yes | 1000 | 1000 | yes | yes |
|
||||||
|
|||||||
@@ -355,7 +355,7 @@ Commit messages must adhere to the [Conventional Commit standard](https://www.co
|
|||||||
│ │ |
|
│ │ |
|
||||||
│ │ └─> Issue reference (optional)
|
│ │ └─> Issue reference (optional)
|
||||||
│ │
|
│ │
|
||||||
│ └─> Commit Scope: helmfile, docs, collabora, intercom-service, ...
|
│ └─> Commit Scope: helmfile, docs, collabora, nextcloud, open-xhcange etc.
|
||||||
│
|
│
|
||||||
└─> Commit Type: chore, ci, docs, feat, fix
|
└─> Commit Type: chore, ci, docs, feat, fix
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ environments:
|
|||||||
---
|
---
|
||||||
# yamllint disable
|
# yamllint disable
|
||||||
helmfiles:
|
helmfiles:
|
||||||
- path: "./helmfile_generic.yaml"
|
- path: "./helmfile_generic.yaml.gotmpl"
|
||||||
values:
|
values:
|
||||||
- {{ toYaml .Values | nindent 8 }}
|
- {{ toYaml .Values | nindent 8 }}
|
||||||
# {{/*
|
# {{/*
|
||||||
@@ -10,8 +10,7 @@ repositories:
|
|||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.collabora.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.collabora.registry }}/{{ .Values.charts.collabora.repository }}"
|
||||||
{{ .Values.charts.collabora.repository }}"
|
|
||||||
|
|
||||||
releases:
|
releases:
|
||||||
- name: "collabora-online"
|
- name: "collabora-online"
|
||||||
@@ -19,6 +18,7 @@ releases:
|
|||||||
version: "{{ .Values.charts.collabora.version }}"
|
version: "{{ .Values.charts.collabora.version }}"
|
||||||
values:
|
values:
|
||||||
- "values.yaml.gotmpl"
|
- "values.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.collaboraOnline | default "additionalValues: false" }}
|
||||||
installed: {{ .Values.collabora.enabled }}
|
installed: {{ .Values.collabora.enabled }}
|
||||||
|
|
||||||
commonLabels:
|
commonLabels:
|
||||||
@@ -6,7 +6,7 @@ bases:
|
|||||||
- "../../bases/environments.yaml"
|
- "../../bases/environments.yaml"
|
||||||
---
|
---
|
||||||
helmfiles:
|
helmfiles:
|
||||||
- path: "./helmfile-child.yaml"
|
- path: "./helmfile-child.yaml.gotmpl"
|
||||||
values:
|
values:
|
||||||
- {{ toYaml .Values | nindent 8 }}
|
- {{ toYaml .Values | nindent 8 }}
|
||||||
...
|
...
|
||||||
@@ -1,4 +1,5 @@
|
|||||||
{{/*
|
{{/*
|
||||||
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
SPDX-License-Identifier: Apache-2.0
|
SPDX-License-Identifier: Apache-2.0
|
||||||
*/}}
|
*/}}
|
||||||
@@ -7,7 +8,13 @@ autoscaling:
|
|||||||
enabled: false
|
enabled: false
|
||||||
|
|
||||||
collabora:
|
collabora:
|
||||||
extra_params: "--o:ssl.enable=false --o:ssl.termination=true --o:fetch_update_check=0"
|
extra_params: >
|
||||||
|
--o:ssl.enable=false
|
||||||
|
--o:ssl.termination=true
|
||||||
|
--o:fetch_update_check=0
|
||||||
|
--o:remote_font_config.url=https://{{ .Values.global.hosts.nextcloud }}.{{ .Values.global.domain }}/apps/richdocuments/settings/fonts.json
|
||||||
|
--o:net.proto={{ if eq .Values.cluster.networking.ipFamilies "DualStack" }}all{{ else }}{{ .Values.cluster.networking.ipFamilies }}{{ end }}
|
||||||
|
|
||||||
username: "collabora-internal-admin"
|
username: "collabora-internal-admin"
|
||||||
password: {{ .Values.secrets.collabora.adminPassword | quote }}
|
password: {{ .Values.secrets.collabora.adminPassword | quote }}
|
||||||
aliasgroups:
|
aliasgroups:
|
||||||
@@ -24,7 +31,7 @@ grafana:
|
|||||||
{{ .Values.monitoring.grafana.dashboards.annotations | toYaml | nindent 6 }}
|
{{ .Values.monitoring.grafana.dashboards.annotations | toYaml | nindent 6 }}
|
||||||
|
|
||||||
image:
|
image:
|
||||||
repository: "{{ .Values.global.imageRegistry | default .Values.images.collabora.registry }}/{{ .Values.images.collabora.repository }}"
|
repository: "{{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.collabora.registry }}/{{ .Values.images.collabora.repository }}"
|
||||||
tag: {{ .Values.images.collabora.tag | quote }}
|
tag: {{ .Values.images.collabora.tag | quote }}
|
||||||
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
@@ -83,6 +90,8 @@ ingress:
|
|||||||
hosts:
|
hosts:
|
||||||
- "{{ .Values.global.hosts.collabora }}.{{ .Values.global.domain }}"
|
- "{{ .Values.global.hosts.collabora }}.{{ .Values.global.domain }}"
|
||||||
|
|
||||||
|
podAnnotations: {}
|
||||||
|
|
||||||
podSecurityContext:
|
podSecurityContext:
|
||||||
fsGroup: 100
|
fsGroup: 100
|
||||||
|
|
||||||
@@ -115,17 +124,9 @@ securityContext:
|
|||||||
- "ALL"
|
- "ALL"
|
||||||
add:
|
add:
|
||||||
- "CHOWN"
|
- "CHOWN"
|
||||||
- "DAC_OVERRIDE"
|
|
||||||
- "FOWNER"
|
- "FOWNER"
|
||||||
- "FSETID"
|
|
||||||
- "KILL"
|
|
||||||
- "SETGID"
|
|
||||||
- "SETUID"
|
|
||||||
- "SETPCAP"
|
|
||||||
- "NET_BIND_SERVICE"
|
|
||||||
- "NET_RAW"
|
|
||||||
- "SYS_CHROOT"
|
- "SYS_CHROOT"
|
||||||
- "MKNOD"
|
|
||||||
seLinuxOptions:
|
seLinuxOptions:
|
||||||
{{ .Values.seLinuxOptions.collabora | toYaml | nindent 4 }}
|
{{ .Values.seLinuxOptions.collabora | toYaml | nindent 4 }}
|
||||||
serviceAccount:
|
serviceAccount:
|
||||||
|
|||||||
@@ -10,8 +10,7 @@ repositories:
|
|||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.cryptpad.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.cryptpad.registry }}/{{ .Values.charts.cryptpad.repository }}"
|
||||||
{{ .Values.charts.cryptpad.repository }}"
|
|
||||||
|
|
||||||
releases:
|
releases:
|
||||||
- name: "cryptpad"
|
- name: "cryptpad"
|
||||||
@@ -19,6 +18,7 @@ releases:
|
|||||||
version: "{{ .Values.charts.cryptpad.version }}"
|
version: "{{ .Values.charts.cryptpad.version }}"
|
||||||
values:
|
values:
|
||||||
- "values.yaml.gotmpl"
|
- "values.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.cryptpad | default "additionalValues: false" }}
|
||||||
installed: {{ .Values.cryptpad.enabled }}
|
installed: {{ .Values.cryptpad.enabled }}
|
||||||
|
|
||||||
commonLabels:
|
commonLabels:
|
||||||
@@ -6,7 +6,7 @@ bases:
|
|||||||
- "../../bases/environments.yaml"
|
- "../../bases/environments.yaml"
|
||||||
---
|
---
|
||||||
helmfiles:
|
helmfiles:
|
||||||
- path: "./helmfile-child.yaml"
|
- path: "./helmfile-child.yaml.gotmpl"
|
||||||
values:
|
values:
|
||||||
- {{ toYaml .Values | nindent 8 }}
|
- {{ toYaml .Values | nindent 8 }}
|
||||||
...
|
...
|
||||||
@@ -1,5 +1,8 @@
|
|||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
{{/*
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
---
|
---
|
||||||
# https://github.com/cryptpad/helm/blob/main/charts/cryptpad/README.md or
|
# https://github.com/cryptpad/helm/blob/main/charts/cryptpad/README.md or
|
||||||
# https://github.com/cryptpad/helm/blob/main/charts/cryptpad/values.yaml
|
# https://github.com/cryptpad/helm/blob/main/charts/cryptpad/values.yaml
|
||||||
@@ -23,7 +26,7 @@ enableEmbedding: true
|
|||||||
fullnameOverride: "cryptpad"
|
fullnameOverride: "cryptpad"
|
||||||
|
|
||||||
image:
|
image:
|
||||||
repository: "{{ .Values.global.imageRegistry | default .Values.images.cryptpad.registry }}/{{ .Values.images.cryptpad.repository }}"
|
repository: "{{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.cryptpad.registry }}/{{ .Values.images.cryptpad.repository }}"
|
||||||
tag: {{ .Values.images.cryptpad.tag | quote }}
|
tag: {{ .Values.images.cryptpad.tag | quote }}
|
||||||
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
@@ -50,6 +53,8 @@ ingress:
|
|||||||
persistence:
|
persistence:
|
||||||
enabled: false
|
enabled: false
|
||||||
|
|
||||||
|
podAnnotations: {}
|
||||||
|
|
||||||
podSecurityContext:
|
podSecurityContext:
|
||||||
fsGroup: 4001
|
fsGroup: 4001
|
||||||
|
|
||||||
|
|||||||
@@ -10,40 +10,36 @@ repositories:
|
|||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.element.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.element.registry }}/{{ .Values.charts.element.repository }}"
|
||||||
{{ .Values.charts.element.repository }}"
|
|
||||||
- name: "element-well-known-repo"
|
- name: "element-well-known-repo"
|
||||||
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
||||||
verify: {{ .Values.charts.elementWellKnown.verify }}
|
verify: {{ .Values.charts.elementWellKnown.verify }}
|
||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.elementWellKnown.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.elementWellKnown.registry }}/{{ .Values.charts.elementWellKnown.repository }}"
|
||||||
{{ .Values.charts.elementWellKnown.repository }}"
|
|
||||||
- name: "synapse-web-repo"
|
- name: "synapse-web-repo"
|
||||||
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
||||||
verify: {{ .Values.charts.synapseWeb.verify }}
|
verify: {{ .Values.charts.synapseWeb.verify }}
|
||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.synapseWeb.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.synapseWeb.registry }}/{{ .Values.charts.synapseWeb.repository }}"
|
||||||
{{ .Values.charts.synapseWeb.repository }}"
|
|
||||||
- name: "synapse-repo"
|
- name: "synapse-repo"
|
||||||
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
||||||
verify: {{ .Values.charts.synapse.verify }}
|
verify: {{ .Values.charts.synapse.verify }}
|
||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.synapse.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.synapse.registry }}/{{ .Values.charts.synapse.repository }}"
|
||||||
{{ .Values.charts.synapse.repository }}"
|
|
||||||
- name: "synapse-create-account-repo"
|
- name: "synapse-create-account-repo"
|
||||||
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
||||||
verify: {{ .Values.charts.synapseCreateAccount.verify }}
|
verify: {{ .Values.charts.synapseCreateAccount.verify }}
|
||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.synapseCreateAccount.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.synapseCreateAccount.registry }}/{{ .Values.charts.synapseCreateAccount.repository }}"
|
||||||
{{ .Values.charts.synapseCreateAccount.repository }}"
|
|
||||||
|
|
||||||
# openDesk Matrix Widgets
|
# openDesk Matrix Widgets
|
||||||
# Source: https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-matrix-widgets
|
# Source: https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-matrix-widgets
|
||||||
@@ -53,41 +49,35 @@ repositories:
|
|||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.matrixUserVerificationService.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.matrixUserVerificationService.registry }}/{{ .Values.charts.matrixUserVerificationService.repository }}"
|
||||||
{{ .Values.charts.matrixUserVerificationService.repository }}"
|
|
||||||
- name: "matrix-neoboard-widget-repo"
|
- name: "matrix-neoboard-widget-repo"
|
||||||
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
||||||
verify: {{ .Values.charts.matrixNeoboardWidget.verify }}
|
verify: {{ .Values.charts.matrixNeoboardWidget.verify }}
|
||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.matrixNeoboardWidget.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.matrixNeoboardWidget.registry }}/{{ .Values.charts.matrixNeoboardWidget.repository }}"
|
||||||
{{ .Values.charts.matrixNeoboardWidget.repository }}"
|
|
||||||
- name: "matrix-neochoice-widget-repo"
|
- name: "matrix-neochoice-widget-repo"
|
||||||
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
||||||
verify: {{ .Values.charts.matrixNeoboardWidget.verify }}
|
verify: {{ .Values.charts.matrixNeoboardWidget.verify }}
|
||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.matrixNeoboardWidget.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.matrixNeoboardWidget.registry }}/{{ .Values.charts.matrixNeoboardWidget.repository }}"
|
||||||
{{ .Values.charts.matrixNeoboardWidget.repository }}"
|
|
||||||
- name: "matrix-neodatefix-widget-repo"
|
- name: "matrix-neodatefix-widget-repo"
|
||||||
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
||||||
verify: {{ .Values.charts.matrixNeodatefixWidget.verify }}
|
verify: {{ .Values.charts.matrixNeodatefixWidget.verify }}
|
||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.matrixNeodatefixWidget.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.matrixNeodatefixWidget.registry }}/{{ .Values.charts.matrixNeodatefixWidget.repository }}"
|
||||||
{{ .Values.charts.matrixNeodatefixWidget.repository }}"
|
|
||||||
- name: "matrix-neodatefix-bot-repo"
|
- name: "matrix-neodatefix-bot-repo"
|
||||||
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
||||||
verify: {{ .Values.charts.matrixNeodatefixBot.verify }}
|
verify: {{ .Values.charts.matrixNeodatefixBot.verify }}
|
||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.matrixNeodatefixBot.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.matrixNeodatefixBot.registry }}/{{ .Values.charts.matrixNeodatefixBot.repository }}"
|
||||||
{{ .Values.charts.matrixNeodatefixBot.repository }}"
|
|
||||||
|
|
||||||
|
|
||||||
releases:
|
releases:
|
||||||
- name: "opendesk-element"
|
- name: "opendesk-element"
|
||||||
@@ -95,6 +85,7 @@ releases:
|
|||||||
version: "{{ .Values.charts.element.version }}"
|
version: "{{ .Values.charts.element.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-element.yaml.gotmpl"
|
- "values-element.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.opendeskElement | default "additionalValues: false" }}
|
||||||
installed: {{ .Values.element.enabled }}
|
installed: {{ .Values.element.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
@@ -103,6 +94,7 @@ releases:
|
|||||||
version: "{{ .Values.charts.elementWellKnown.version }}"
|
version: "{{ .Values.charts.elementWellKnown.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-well-known.yaml.gotmpl"
|
- "values-well-known.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.opendeskWellKnown | default "additionalValues: false" }}
|
||||||
installed: {{ .Values.element.enabled }}
|
installed: {{ .Values.element.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
@@ -111,6 +103,7 @@ releases:
|
|||||||
version: "{{ .Values.charts.synapseWeb.version }}"
|
version: "{{ .Values.charts.synapseWeb.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-synapse-web.yaml.gotmpl"
|
- "values-synapse-web.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.opendeskSynapseWeb | default "additionalValues: false" }}
|
||||||
installed: {{ .Values.element.enabled }}
|
installed: {{ .Values.element.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
@@ -119,6 +112,7 @@ releases:
|
|||||||
version: "{{ .Values.charts.synapse.version }}"
|
version: "{{ .Values.charts.synapse.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-synapse.yaml.gotmpl"
|
- "values-synapse.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.opendeskSynapse | default "additionalValues: false" }}
|
||||||
installed: {{ .Values.element.enabled }}
|
installed: {{ .Values.element.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
@@ -6,7 +6,7 @@ bases:
|
|||||||
- "../../bases/environments.yaml"
|
- "../../bases/environments.yaml"
|
||||||
---
|
---
|
||||||
helmfiles:
|
helmfiles:
|
||||||
- path: "./helmfile-child.yaml"
|
- path: "./helmfile-child.yaml.gotmpl"
|
||||||
values:
|
values:
|
||||||
- {{ toYaml .Values | nindent 8 }}
|
- {{ toYaml .Values | nindent 8 }}
|
||||||
...
|
...
|
||||||
@@ -1,11 +1,13 @@
|
|||||||
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
{{/*
|
||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
---
|
---
|
||||||
configuration:
|
configuration:
|
||||||
endToEndEncryption: true
|
endToEndEncryption: true
|
||||||
additionalConfiguration:
|
additionalConfiguration:
|
||||||
logout_redirect_url: "https://{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}/realms/{{ .Values.platform.realm }}/protocol/openid-connect/logout?client_id=matrix&post_logout_redirect_uri=https%3A%2F%2F{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}"
|
logout_redirect_url: "https://{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}/realms/{{ .Values.platform.realm }}/protocol/openid-connect/logout?client_id=opendesk-matrix&post_logout_redirect_uri=https%3A%2F%2F{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}"
|
||||||
|
|
||||||
"net.nordeck.element_web.module.opendesk":
|
"net.nordeck.element_web.module.opendesk":
|
||||||
config:
|
config:
|
||||||
@@ -42,6 +44,8 @@ configuration:
|
|||||||
- org.matrix.msc3819.send.to_device:net.nordeck.whiteboard.connection_signaling
|
- org.matrix.msc3819.send.to_device:net.nordeck.whiteboard.connection_signaling
|
||||||
- org.matrix.msc3819.receive.to_device:net.nordeck.whiteboard.connection_signaling
|
- org.matrix.msc3819.receive.to_device:net.nordeck.whiteboard.connection_signaling
|
||||||
- town.robin.msc3846.turn_servers
|
- town.robin.msc3846.turn_servers
|
||||||
|
- org.matrix.msc4039.upload_file
|
||||||
|
- org.matrix.msc4039.download_file
|
||||||
"https://{{ .Values.global.hosts.matrixNeoChoiceWidget }}.{{ .Values.global.domain }}/*":
|
"https://{{ .Values.global.hosts.matrixNeoChoiceWidget }}.{{ .Values.global.domain }}/*":
|
||||||
preload_approved: true
|
preload_approved: true
|
||||||
capabilities_approved:
|
capabilities_approved:
|
||||||
@@ -121,7 +125,7 @@ global:
|
|||||||
|
|
||||||
image:
|
image:
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.element.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.element.registry | quote }}
|
||||||
repository: {{ .Values.images.element.repository | quote }}
|
repository: {{ .Values.images.element.repository | quote }}
|
||||||
tag: {{ .Values.images.element.tag | quote }}
|
tag: {{ .Values.images.element.tag | quote }}
|
||||||
|
|
||||||
@@ -133,6 +137,8 @@ ingress:
|
|||||||
enabled: {{ .Values.ingress.tls.enabled }}
|
enabled: {{ .Values.ingress.tls.enabled }}
|
||||||
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
||||||
|
|
||||||
|
podAnnotations: {}
|
||||||
|
|
||||||
podSecurityContext:
|
podSecurityContext:
|
||||||
enabled: true
|
enabled: true
|
||||||
fsGroup: 101
|
fsGroup: 101
|
||||||
|
|||||||
@@ -1,5 +1,8 @@
|
|||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
{{/*
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
SPDX-FileCopyrightText: 2024 Center for Digital Sovereignty of Public Administration (ZenDiS) GmbH
|
||||||
|
SPDX-FileCopyrightText: 2023 Federal Ministry of the Interior and Community, PG ZenDiS "Project group for the development of ZenDiS"
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
---
|
---
|
||||||
containerSecurityContext:
|
containerSecurityContext:
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
@@ -26,7 +29,7 @@ global:
|
|||||||
|
|
||||||
image:
|
image:
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.matrixNeoBoardWidget.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.matrixNeoBoardWidget.registry | quote }}
|
||||||
repository: {{ .Values.images.matrixNeoBoardWidget.repository | quote }}
|
repository: {{ .Values.images.matrixNeoBoardWidget.repository | quote }}
|
||||||
tag: {{ .Values.images.matrixNeoBoardWidget.tag | quote }}
|
tag: {{ .Values.images.matrixNeoBoardWidget.tag | quote }}
|
||||||
|
|
||||||
@@ -37,6 +40,8 @@ ingress:
|
|||||||
enabled: {{ .Values.ingress.tls.enabled }}
|
enabled: {{ .Values.ingress.tls.enabled }}
|
||||||
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
||||||
|
|
||||||
|
podAnnotations: {}
|
||||||
|
|
||||||
podSecurityContext:
|
podSecurityContext:
|
||||||
enabled: true
|
enabled: true
|
||||||
fsGroup: 101
|
fsGroup: 101
|
||||||
|
|||||||
@@ -1,5 +1,8 @@
|
|||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
{{/*
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
SPDX-FileCopyrightText: 2024 Center for Digital Sovereignty of Public Administration (ZenDiS) GmbH
|
||||||
|
SPDX-FileCopyrightText: 2023 Federal Ministry of the Interior and Community, PG ZenDiS "Project group for the development of ZenDiS"
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
---
|
---
|
||||||
containerSecurityContext:
|
containerSecurityContext:
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
@@ -26,7 +29,7 @@ global:
|
|||||||
|
|
||||||
image:
|
image:
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.matrixNeoChoiceWidget.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.matrixNeoChoiceWidget.registry | quote }}
|
||||||
repository: {{ .Values.images.matrixNeoChoiceWidget.repository | quote }}
|
repository: {{ .Values.images.matrixNeoChoiceWidget.repository | quote }}
|
||||||
tag: {{ .Values.images.matrixNeoChoiceWidget.tag | quote }}
|
tag: {{ .Values.images.matrixNeoChoiceWidget.tag | quote }}
|
||||||
|
|
||||||
@@ -37,6 +40,8 @@ ingress:
|
|||||||
enabled: {{ .Values.ingress.tls.enabled }}
|
enabled: {{ .Values.ingress.tls.enabled }}
|
||||||
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
||||||
|
|
||||||
|
podAnnotations: {}
|
||||||
|
|
||||||
podSecurityContext:
|
podSecurityContext:
|
||||||
enabled: true
|
enabled: true
|
||||||
fsGroup: 101
|
fsGroup: 101
|
||||||
|
|||||||
@@ -1,5 +1,8 @@
|
|||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
{{/*
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
SPDX-FileCopyrightText: 2024 Center for Digital Sovereignty of Public Administration (ZenDiS) GmbH
|
||||||
|
SPDX-FileCopyrightText: 2023 Federal Ministry of the Interior and Community, PG ZenDiS "Project group for the development of ZenDiS"
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
---
|
---
|
||||||
cleanup:
|
cleanup:
|
||||||
deletePodsOnSuccess: {{ .Values.debug.cleanup.deletePodsOnSuccess }}
|
deletePodsOnSuccess: {{ .Values.debug.cleanup.deletePodsOnSuccess }}
|
||||||
@@ -16,13 +19,15 @@ global:
|
|||||||
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
|
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.synapseCreateUser.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.dockerHub .Values.global.imageRegistry .Values.images.synapseCreateUser.registry | quote }}
|
||||||
url: {{ .Values.images.synapseCreateUser.repository | quote }}
|
url: {{ .Values.images.synapseCreateUser.repository | quote }}
|
||||||
tag: {{ .Values.images.synapseCreateUser.tag | quote }}
|
tag: {{ .Values.images.synapseCreateUser.tag | quote }}
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
fullnameOverride: "matrix-neodatefix-bot-bootstrap"
|
fullnameOverride: "matrix-neodatefix-bot-bootstrap"
|
||||||
|
|
||||||
|
podAnnotations: {}
|
||||||
|
|
||||||
securityContext:
|
securityContext:
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
capabilities:
|
capabilities:
|
||||||
|
|||||||
@@ -1,5 +1,8 @@
|
|||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
{{/*
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
SPDX-FileCopyrightText: 2024 Center for Digital Sovereignty of Public Administration (ZenDiS) GmbH
|
||||||
|
SPDX-FileCopyrightText: 2023 Federal Ministry of the Interior and Community, PG ZenDiS "Project group for the development of ZenDiS"
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
---
|
---
|
||||||
global:
|
global:
|
||||||
domain: {{ .Values.global.domain | quote }}
|
domain: {{ .Values.global.domain | quote }}
|
||||||
@@ -11,7 +14,7 @@ global:
|
|||||||
configuration:
|
configuration:
|
||||||
bot:
|
bot:
|
||||||
username: "meetings-bot"
|
username: "meetings-bot"
|
||||||
displayname: "Terminplaner Bot"
|
display name: "Terminplaner Bot"
|
||||||
openxchangeBaseUrl: "https://{{ .Values.global.hosts.openxchange }}.{{ .Values.global.domain }}"
|
openxchangeBaseUrl: "https://{{ .Values.global.hosts.openxchange }}.{{ .Values.global.domain }}"
|
||||||
strings:
|
strings:
|
||||||
breakoutSessionWidgetName: "Breakoutsessions"
|
breakoutSessionWidgetName: "Breakoutsessions"
|
||||||
@@ -47,7 +50,7 @@ extraEnvVars:
|
|||||||
|
|
||||||
image:
|
image:
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.matrixNeoDateFixBot.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.matrixNeoDateFixBot.registry | quote }}
|
||||||
repository: {{ .Values.images.matrixNeoDateFixBot.repository | quote }}
|
repository: {{ .Values.images.matrixNeoDateFixBot.repository | quote }}
|
||||||
tag: {{ .Values.images.matrixNeoDateFixBot.tag | quote }}
|
tag: {{ .Values.images.matrixNeoDateFixBot.tag | quote }}
|
||||||
|
|
||||||
@@ -58,13 +61,15 @@ ingress:
|
|||||||
enabled: {{ .Values.ingress.tls.enabled }}
|
enabled: {{ .Values.ingress.tls.enabled }}
|
||||||
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
||||||
|
|
||||||
livenessProbe:
|
liveness sample:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
|
||||||
persistence:
|
persistence:
|
||||||
size: {{ .Values.persistence.size.matrixNeoDateFixBot | quote }}
|
size: {{ .Values.persistence.size.matrixNeoDateFixBot | quote }}
|
||||||
storageClass: {{ .Values.persistence.storageClassNames.RWO | quote }}
|
storageClass: {{ .Values.persistence.storageClassNames.RWO | quote }}
|
||||||
|
|
||||||
|
podAnnotations: {}
|
||||||
|
|
||||||
podSecurityContext:
|
podSecurityContext:
|
||||||
enabled: true
|
enabled: true
|
||||||
fsGroup: 101
|
fsGroup: 101
|
||||||
|
|||||||
@@ -1,5 +1,8 @@
|
|||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
{{/*
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
SPDX-FileCopyrightText: 2024 Center for Digital Sovereignty of Public Administration (ZenDiS) GmbH
|
||||||
|
SPDX-FileCopyrightText: 2023 Federal Ministry of the Interior and Community, PG ZenDiS "Project group for the development of ZenDiS"
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
---
|
---
|
||||||
configuration:
|
configuration:
|
||||||
bot:
|
bot:
|
||||||
@@ -31,7 +34,7 @@ global:
|
|||||||
|
|
||||||
image:
|
image:
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.matrixNeoDateFixWidget.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.matrixNeoDateFixWidget.registry | quote }}
|
||||||
repository: {{ .Values.images.matrixNeoDateFixWidget.repository | quote }}
|
repository: {{ .Values.images.matrixNeoDateFixWidget.repository | quote }}
|
||||||
tag: {{ .Values.images.matrixNeoDateFixWidget.tag | quote }}
|
tag: {{ .Values.images.matrixNeoDateFixWidget.tag | quote }}
|
||||||
|
|
||||||
@@ -42,6 +45,8 @@ ingress:
|
|||||||
enabled: {{ .Values.ingress.tls.enabled }}
|
enabled: {{ .Values.ingress.tls.enabled }}
|
||||||
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
||||||
|
|
||||||
|
podAnnotations: {}
|
||||||
|
|
||||||
podSecurityContext:
|
podSecurityContext:
|
||||||
enabled: true
|
enabled: true
|
||||||
fsGroup: 101
|
fsGroup: 101
|
||||||
|
|||||||
@@ -1,5 +1,8 @@
|
|||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
{{/*
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
SPDX-FileCopyrightText: 2024 Center for Digital Sovereignty of Public Administration (ZenDiS) GmbH
|
||||||
|
SPDX-FileCopyrightText: 2023 Federal Ministry of the Interior and Community, PG ZenDiS "Project group for the development of ZenDiS"
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
---
|
---
|
||||||
cleanup:
|
cleanup:
|
||||||
deletePodsOnSuccess: {{ .Values.debug.cleanup.deletePodsOnSuccess }}
|
deletePodsOnSuccess: {{ .Values.debug.cleanup.deletePodsOnSuccess }}
|
||||||
@@ -16,13 +19,15 @@ global:
|
|||||||
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
|
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.synapseCreateUser.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.dockerHub .Values.global.imageRegistry .Values.images.synapseCreateUser.registry | quote }}
|
||||||
url: {{ .Values.images.synapseCreateUser.repository | quote }}
|
url: {{ .Values.images.synapseCreateUser.repository | quote }}
|
||||||
tag: {{ .Values.images.synapseCreateUser.tag | quote }}
|
tag: {{ .Values.images.synapseCreateUser.tag | quote }}
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
fullnameOverride: "opendesk-matrix-user-verification-service-bootstrap"
|
fullnameOverride: "opendesk-matrix-user-verification-service-bootstrap"
|
||||||
|
|
||||||
|
podAnnotations: {}
|
||||||
|
|
||||||
securityContext:
|
securityContext:
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
capabilities:
|
capabilities:
|
||||||
|
|||||||
@@ -1,5 +1,8 @@
|
|||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
{{/*
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
SPDX-FileCopyrightText: 2024 Center for Digital Sovereignty of Public Administration (ZenDiS) GmbH
|
||||||
|
SPDX-FileCopyrightText: 2023 Federal Ministry of the Interior and Community, PG ZenDiS "Project group for the development of ZenDiS"
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
---
|
---
|
||||||
containerSecurityContext:
|
containerSecurityContext:
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
@@ -35,10 +38,12 @@ global:
|
|||||||
|
|
||||||
image:
|
image:
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.matrixUserVerificationService.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.matrixUserVerificationService.registry | quote }}
|
||||||
repository: {{ .Values.images.matrixUserVerificationService.repository | quote }}
|
repository: {{ .Values.images.matrixUserVerificationService.repository | quote }}
|
||||||
tag: {{ .Values.images.matrixUserVerificationService.tag | quote }}
|
tag: {{ .Values.images.matrixUserVerificationService.tag | quote }}
|
||||||
|
|
||||||
|
podAnnotations: {}
|
||||||
|
|
||||||
podSecurityContext:
|
podSecurityContext:
|
||||||
enabled: true
|
enabled: true
|
||||||
fsGroup: 101
|
fsGroup: 101
|
||||||
|
|||||||
@@ -1,5 +1,8 @@
|
|||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
{{/*
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
---
|
---
|
||||||
clusterDomain: {{ .Values.cluster.networking.domain }}
|
clusterDomain: {{ .Values.cluster.networking.domain }}
|
||||||
|
|
||||||
@@ -29,7 +32,7 @@ global:
|
|||||||
|
|
||||||
image:
|
image:
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.synapseWeb.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.dockerHub .Values.global.imageRegistry .Values.images.synapseWeb.registry | quote }}
|
||||||
repository: {{ .Values.images.synapseWeb.repository | quote }}
|
repository: {{ .Values.images.synapseWeb.repository | quote }}
|
||||||
tag: {{ .Values.images.synapseWeb.tag | quote }}
|
tag: {{ .Values.images.synapseWeb.tag | quote }}
|
||||||
|
|
||||||
@@ -48,6 +51,8 @@ ingress:
|
|||||||
enabled: {{ .Values.ingress.tls.enabled }}
|
enabled: {{ .Values.ingress.tls.enabled }}
|
||||||
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
||||||
|
|
||||||
|
podAnnotations: {}
|
||||||
|
|
||||||
podSecurityContext:
|
podSecurityContext:
|
||||||
enabled: true
|
enabled: true
|
||||||
fsGroup: 101
|
fsGroup: 101
|
||||||
|
|||||||
@@ -1,5 +1,8 @@
|
|||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
{{/*
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
---
|
---
|
||||||
configuration:
|
configuration:
|
||||||
additionalConfiguration:
|
additionalConfiguration:
|
||||||
@@ -11,8 +14,8 @@ configuration:
|
|||||||
- "m.space.parent"
|
- "m.space.parent"
|
||||||
- "net.nordeck.meetings.metadata"
|
- "net.nordeck.meetings.metadata"
|
||||||
- "m.room.power_levels"
|
- "m.room.power_levels"
|
||||||
# When a user logs into Element a parallel request is done through Intercom Service to allow Synapse API
|
# To allow intercom service logins for the users and also allow proper testautomation we want to raise the
|
||||||
# interaction, to avoid (temporary) blocking of the user for followup logins we want to raise the limits.
|
# ratelimit in a reasonable manner.
|
||||||
# https://matrix-org.github.io/synapse/v1.59/usage/configuration/config_documentation.html#ratelimiting
|
# https://matrix-org.github.io/synapse/v1.59/usage/configuration/config_documentation.html#ratelimiting
|
||||||
rc_login:
|
rc_login:
|
||||||
account:
|
account:
|
||||||
@@ -50,20 +53,26 @@ configuration:
|
|||||||
url: null
|
url: null
|
||||||
sender_localpart: ox-appsuite
|
sender_localpart: ox-appsuite
|
||||||
|
|
||||||
presence:
|
presence:
|
||||||
enabled: {{ .Values.functional.dataProtection.matrixPresence.enabled }}
|
enabled: {{ .Values.functional.dataProtection.matrixPresence.enabled }}
|
||||||
|
|
||||||
|
profile:
|
||||||
|
allowUsersToUpdateDisplayname: {{ .Values.functional.chat.matrix.profile.allowUsersToUpdateDisplayname }}
|
||||||
|
|
||||||
smtp:
|
smtp:
|
||||||
senderAddress: "{{ .Values.smtp.localpartNoReply }}@{{ if .Values.functional.email.systemGenerated.useComponentInSenderdomain }}{{ .Values.global.hosts.element }}.{{ end }}{{ .Values.global.domain }}"
|
senderAddress: "{{ .Values.smtp.localpartNoReply }}@{{ .Values.global.domain }}"
|
||||||
host: {{ .Values.smtp.host | quote }}
|
host: {{ printf "%s.%s.svc.%s" "postfix" (.Values.postfix.namespace | default .Release.Namespace) .Values.cluster.networking.domain | quote }}
|
||||||
port: {{ .Values.smtp.port }}
|
port: 25
|
||||||
username: {{ .Values.smtp.username | quote }}
|
tls: false
|
||||||
password: {{ .Values.smtp.password | quote }}
|
starttls: false
|
||||||
|
username: ""
|
||||||
|
password: ""
|
||||||
|
|
||||||
oidc:
|
oidc:
|
||||||
clientId: "opendesk-matrix"
|
clientId: "opendesk-matrix"
|
||||||
clientSecret: {{ .Values.secrets.keycloak.clientSecret.matrix | quote }}
|
clientSecret: {{ .Values.secrets.keycloak.clientSecret.matrix | quote }}
|
||||||
issuer: "https://{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}/realms/{{ .Values.platform.realm }}"
|
issuer: "https://{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}/realms/{{ .Values.platform.realm }}"
|
||||||
|
matrixIdLocalpart: {{ if .Values.functional.chat.matrix.profile.useImmutableIdentifierForLocalpart }}"opendesk_useruuid"{{ else }}"opendesk_username"{{ end }}
|
||||||
scopes:
|
scopes:
|
||||||
- "openid"
|
- "openid"
|
||||||
- "opendesk-matrix-scope"
|
- "opendesk-matrix-scope"
|
||||||
@@ -85,7 +94,7 @@ configuration:
|
|||||||
enabled: true
|
enabled: true
|
||||||
image:
|
image:
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.synapseGuestModule.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.synapseGuestModule.registry | quote }}
|
||||||
repository: {{ .Values.images.synapseGuestModule.repository | quote }}
|
repository: {{ .Values.images.synapseGuestModule.repository | quote }}
|
||||||
tag: {{ .Values.images.synapseGuestModule.tag | quote }}
|
tag: {{ .Values.images.synapseGuestModule.tag | quote }}
|
||||||
|
|
||||||
@@ -124,7 +133,7 @@ global:
|
|||||||
|
|
||||||
image:
|
image:
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.synapse.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.synapse.registry | quote }}
|
||||||
repository: {{ .Values.images.synapse.repository | quote }}
|
repository: {{ .Values.images.synapse.repository | quote }}
|
||||||
tag: {{ .Values.images.synapse.tag | quote }}
|
tag: {{ .Values.images.synapse.tag | quote }}
|
||||||
|
|
||||||
@@ -132,6 +141,8 @@ persistence:
|
|||||||
size: {{ .Values.persistence.size.synapse | quote }}
|
size: {{ .Values.persistence.size.synapse | quote }}
|
||||||
storageClass: {{ .Values.persistence.storageClassNames.RWO | quote }}
|
storageClass: {{ .Values.persistence.storageClassNames.RWO | quote }}
|
||||||
|
|
||||||
|
podAnnotations: {}
|
||||||
|
|
||||||
podSecurityContext:
|
podSecurityContext:
|
||||||
enabled: true
|
enabled: true
|
||||||
fsGroup: 10991
|
fsGroup: 10991
|
||||||
|
|||||||
@@ -1,5 +1,8 @@
|
|||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
{{/*
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
---
|
---
|
||||||
configuration:
|
configuration:
|
||||||
e2ee:
|
e2ee:
|
||||||
@@ -30,7 +33,7 @@ global:
|
|||||||
|
|
||||||
image:
|
image:
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.wellKnown.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.dockerHub .Values.global.imageRegistry .Values.images.wellKnown.registry | quote }}
|
||||||
repository: {{ .Values.images.wellKnown.repository | quote }}
|
repository: {{ .Values.images.wellKnown.repository | quote }}
|
||||||
tag: {{ .Values.images.wellKnown.tag | quote }}
|
tag: {{ .Values.images.wellKnown.tag | quote }}
|
||||||
|
|
||||||
@@ -42,6 +45,8 @@ ingress:
|
|||||||
enabled: {{ .Values.ingress.tls.enabled }}
|
enabled: {{ .Values.ingress.tls.enabled }}
|
||||||
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
||||||
|
|
||||||
|
podAnnotations: {}
|
||||||
|
|
||||||
podSecurityContext:
|
podSecurityContext:
|
||||||
enabled: true
|
enabled: true
|
||||||
fsGroup: 101
|
fsGroup: 101
|
||||||
|
|||||||
@@ -1,27 +0,0 @@
|
|||||||
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
|
||||||
---
|
|
||||||
repositories:
|
|
||||||
# Intercom Service
|
|
||||||
# Source: https://gitlab.souvap-univention.de/souvap/tooling/charts/intercom-service
|
|
||||||
- name: "intercom-service-repo"
|
|
||||||
keyring: "../../files/gpg-pubkeys/souvap-univention-de.gpg"
|
|
||||||
verify: {{ .Values.charts.intercomService.verify }}
|
|
||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
|
||||||
oci: true
|
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.intercomService.registry }}/\
|
|
||||||
{{ .Values.charts.intercomService.repository }}"
|
|
||||||
|
|
||||||
releases:
|
|
||||||
- name: "intercom-service"
|
|
||||||
chart: "intercom-service-repo/{{ .Values.charts.intercomService.name }}"
|
|
||||||
version: "{{ .Values.charts.intercomService.version }}"
|
|
||||||
values:
|
|
||||||
- "values.yaml.gotmpl"
|
|
||||||
installed: {{ .Values.intercom.enabled }}
|
|
||||||
|
|
||||||
commonLabels:
|
|
||||||
deploy-stage: "component-1"
|
|
||||||
component: "intercom-service"
|
|
||||||
...
|
|
||||||
@@ -10,8 +10,7 @@ repositories:
|
|||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.jitsi.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.jitsi.registry }}/{{ .Values.charts.jitsi.repository }}"
|
||||||
{{ .Values.charts.jitsi.repository }}"
|
|
||||||
|
|
||||||
releases:
|
releases:
|
||||||
- name: "jitsi"
|
- name: "jitsi"
|
||||||
@@ -19,6 +18,7 @@ releases:
|
|||||||
version: "{{ .Values.charts.jitsi.version }}"
|
version: "{{ .Values.charts.jitsi.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-jitsi.yaml.gotmpl"
|
- "values-jitsi.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.jitsi | default "additionalValues: false" }}
|
||||||
installed: {{ .Values.jitsi.enabled }}
|
installed: {{ .Values.jitsi.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
|
||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
|
||||||
---
|
|
||||||
bases:
|
|
||||||
- "../../bases/environments.yaml"
|
|
||||||
---
|
|
||||||
helmfiles:
|
|
||||||
- path: "./helmfile-child.yaml"
|
|
||||||
values:
|
|
||||||
- {{ toYaml .Values | nindent 8 }}
|
|
||||||
...
|
|
||||||
@@ -6,7 +6,7 @@ bases:
|
|||||||
- "../../bases/environments.yaml"
|
- "../../bases/environments.yaml"
|
||||||
---
|
---
|
||||||
helmfiles:
|
helmfiles:
|
||||||
- path: "./helmfile-child.yaml"
|
- path: "./helmfile-child.yaml.gotmpl"
|
||||||
values:
|
values:
|
||||||
- {{ toYaml .Values | nindent 8 }}
|
- {{ toYaml .Values | nindent 8 }}
|
||||||
...
|
...
|
||||||
@@ -1,4 +1,5 @@
|
|||||||
{{/*
|
{{/*
|
||||||
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
SPDX-License-Identifier: Apache-2.0
|
SPDX-License-Identifier: Apache-2.0
|
||||||
*/}}
|
*/}}
|
||||||
@@ -9,6 +10,7 @@ global:
|
|||||||
{{ .Values.global.hosts | toYaml | nindent 4 }}
|
{{ .Values.global.hosts | toYaml | nindent 4 }}
|
||||||
imagePullSecrets:
|
imagePullSecrets:
|
||||||
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
|
podAnnotations: {}
|
||||||
|
|
||||||
containerSecurityContext:
|
containerSecurityContext:
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
@@ -31,7 +33,7 @@ cleanup:
|
|||||||
|
|
||||||
image:
|
image:
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.jitsiKeycloakAdapter.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.jitsiKeycloakAdapter.registry | quote }}
|
||||||
repository: {{ .Values.images.jitsiKeycloakAdapter.repository | quote }}
|
repository: {{ .Values.images.jitsiKeycloakAdapter.repository | quote }}
|
||||||
tag: {{ .Values.images.jitsiKeycloakAdapter.tag | quote }}
|
tag: {{ .Values.images.jitsiKeycloakAdapter.tag | quote }}
|
||||||
|
|
||||||
@@ -48,8 +50,9 @@ jitsi:
|
|||||||
web:
|
web:
|
||||||
replicaCount: {{ .Values.replicas.jitsi }}
|
replicaCount: {{ .Values.replicas.jitsi }}
|
||||||
image:
|
image:
|
||||||
repository: "{{ .Values.global.imageRegistry | default .Values.images.jitsi.registry }}/{{ .Values.images.jitsi.repository }}"
|
repository: "{{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.jitsi.registry }}/{{ .Values.images.jitsi.repository }}"
|
||||||
tag: {{ .Values.images.jitsi.tag | quote }}
|
tag: {{ .Values.images.jitsi.tag | quote }}
|
||||||
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
ingress:
|
ingress:
|
||||||
enabled: {{ .Values.ingress.enabled }}
|
enabled: {{ .Values.ingress.enabled }}
|
||||||
ingressClassName: {{ .Values.ingress.ingressClassName | quote }}
|
ingressClassName: {{ .Values.ingress.ingressClassName | quote }}
|
||||||
@@ -61,6 +64,8 @@ jitsi:
|
|||||||
- secretName: {{ .Values.ingress.tls.secretName | quote }}
|
- secretName: {{ .Values.ingress.tls.secretName | quote }}
|
||||||
hosts:
|
hosts:
|
||||||
- "{{ .Values.global.hosts.jitsi }}.{{ .Values.global.domain }}"
|
- "{{ .Values.global.hosts.jitsi }}.{{ .Values.global.domain }}"
|
||||||
|
extraConfigJs:
|
||||||
|
doNotStoreRoom: {{ not .Values.functional.dataProtection.jitsiRoomHistory.enabled }}
|
||||||
extraEnvs:
|
extraEnvs:
|
||||||
TURN_ENABLE: "1"
|
TURN_ENABLE: "1"
|
||||||
resources:
|
resources:
|
||||||
@@ -79,8 +84,9 @@ jitsi:
|
|||||||
{{ .Values.seLinuxOptions.jitsi | toYaml | nindent 8 }}
|
{{ .Values.seLinuxOptions.jitsi | toYaml | nindent 8 }}
|
||||||
prosody:
|
prosody:
|
||||||
image:
|
image:
|
||||||
repository: "{{ .Values.global.imageRegistry | default .Values.images.prosody.registry }}/{{ .Values.images.prosody.repository }}"
|
repository: "{{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.prosody.registry }}/{{ .Values.images.prosody.repository }}"
|
||||||
tag: {{ .Values.images.prosody.tag | quote }}
|
tag: {{ .Values.images.prosody.tag | quote }}
|
||||||
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
imagePullSecrets:
|
imagePullSecrets:
|
||||||
{{- range .Values.global.imagePullSecrets }}
|
{{- range .Values.global.imagePullSecrets }}
|
||||||
- name: {{ . | quote }}
|
- name: {{ . | quote }}
|
||||||
@@ -128,8 +134,9 @@ jitsi:
|
|||||||
jicofo:
|
jicofo:
|
||||||
replicaCount: {{ .Values.replicas.jicofo }}
|
replicaCount: {{ .Values.replicas.jicofo }}
|
||||||
image:
|
image:
|
||||||
repository: "{{ .Values.global.imageRegistry | default .Values.images.jicofo.registry }}/{{ .Values.images.jicofo.repository }}"
|
repository: "{{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.jicofo.registry }}/{{ .Values.images.jicofo.repository }}"
|
||||||
tag: {{ .Values.images.jicofo.tag | quote }}
|
tag: {{ .Values.images.jicofo.tag | quote }}
|
||||||
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
xmpp:
|
xmpp:
|
||||||
password: {{ .Values.secrets.jitsi.jicofoAuthPassword | quote }}
|
password: {{ .Values.secrets.jitsi.jicofoAuthPassword | quote }}
|
||||||
componentSecret: {{ .Values.secrets.jitsi.jicofoComponentPassword | quote }}
|
componentSecret: {{ .Values.secrets.jitsi.jicofoComponentPassword | quote }}
|
||||||
@@ -150,8 +157,9 @@ jitsi:
|
|||||||
jvb:
|
jvb:
|
||||||
replicaCount: {{ .Values.replicas.jvb }}
|
replicaCount: {{ .Values.replicas.jvb }}
|
||||||
image:
|
image:
|
||||||
repository: "{{ .Values.global.imageRegistry | default .Values.images.jvb.registry }}/{{ .Values.images.jvb.repository }}"
|
repository: "{{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.jvb.registry }}/{{ .Values.images.jvb.repository }}"
|
||||||
tag: {{ .Values.images.jvb.tag | quote }}
|
tag: {{ .Values.images.jvb.tag | quote }}
|
||||||
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
xmpp:
|
xmpp:
|
||||||
password: {{ .Values.secrets.jitsi.jvbAuthPassword | quote }}
|
password: {{ .Values.secrets.jitsi.jvbAuthPassword | quote }}
|
||||||
resources:
|
resources:
|
||||||
@@ -173,8 +181,9 @@ jitsi:
|
|||||||
jibri:
|
jibri:
|
||||||
replicaCount: {{ .Values.replicas.jibri }}
|
replicaCount: {{ .Values.replicas.jibri }}
|
||||||
image:
|
image:
|
||||||
repository: "{{ .Values.global.imageRegistry | default .Values.images.jibri.registry }}/{{ .Values.images.jibri.repository }}"
|
repository: "{{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.jibri.registry }}/{{ .Values.images.jibri.repository }}"
|
||||||
tag: {{ .Values.images.jibri.tag | quote }}
|
tag: {{ .Values.images.jibri.tag | quote }}
|
||||||
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
recorder:
|
recorder:
|
||||||
password: {{ .Values.secrets.jitsi.jibriRecorderPassword | quote }}
|
password: {{ .Values.secrets.jitsi.jibriRecorderPassword | quote }}
|
||||||
xmpp:
|
xmpp:
|
||||||
@@ -211,9 +220,12 @@ patchJVB:
|
|||||||
{{ .Values.seLinuxOptions.jitsiPatchJVB | toYaml | nindent 6 }}
|
{{ .Values.seLinuxOptions.jitsiPatchJVB | toYaml | nindent 6 }}
|
||||||
image:
|
image:
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.jitsiPatchJVB.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.dockerHub .Values.global.imageRegistry .Values.images.jitsiPatchJVB.registry | quote }}
|
||||||
repository: {{ .Values.images.jitsiPatchJVB.repository | quote }}
|
repository: {{ .Values.images.jitsiPatchJVB.repository | quote }}
|
||||||
tag: {{ .Values.images.jitsiPatchJVB.tag | quote }}
|
tag: {{ .Values.images.jitsiPatchJVB.tag | quote }}
|
||||||
|
|
||||||
|
podAnnotations: {}
|
||||||
|
|
||||||
replicaCount: {{ .Values.replicas.jitsiKeycloakAdapter }}
|
replicaCount: {{ .Values.replicas.jitsiKeycloakAdapter }}
|
||||||
|
|
||||||
resources:
|
resources:
|
||||||
|
|||||||
@@ -10,8 +10,7 @@ repositories:
|
|||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.migrations.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.migrations.registry }}/{{ .Values.charts.migrations.repository }}"
|
||||||
{{ .Values.charts.migrations.repository }}"
|
|
||||||
|
|
||||||
releases:
|
releases:
|
||||||
- name: "opendesk-migrations-post"
|
- name: "opendesk-migrations-post"
|
||||||
@@ -22,6 +21,7 @@ releases:
|
|||||||
values:
|
values:
|
||||||
- "values.yaml.gotmpl"
|
- "values.yaml.gotmpl"
|
||||||
- "../../shared/migrations.yaml.gotmpl"
|
- "../../shared/migrations.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.migrationsPost | default "additionalValues: false" }}
|
||||||
installed: {{ .Values.migrations.enabled }}
|
installed: {{ .Values.migrations.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
@@ -5,7 +5,7 @@ bases:
|
|||||||
- "../../bases/environments.yaml"
|
- "../../bases/environments.yaml"
|
||||||
---
|
---
|
||||||
helmfiles:
|
helmfiles:
|
||||||
- path: "./helmfile-child.yaml"
|
- path: "./helmfile-child.yaml.gotmpl"
|
||||||
values:
|
values:
|
||||||
- {{ toYaml .Values | nindent 8 }}
|
- {{ toYaml .Values | nindent 8 }}
|
||||||
...
|
...
|
||||||
@@ -3,6 +3,8 @@
|
|||||||
SPDX-License-Identifier: Apache-2.0
|
SPDX-License-Identifier: Apache-2.0
|
||||||
*/}}
|
*/}}
|
||||||
---
|
---
|
||||||
|
podAnnotations: {}
|
||||||
|
|
||||||
migrations:
|
migrations:
|
||||||
stage: "POST"
|
stage: "POST"
|
||||||
...
|
...
|
||||||
|
|||||||
@@ -10,8 +10,7 @@ repositories:
|
|||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.migrations.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.migrations.registry }}/{{ .Values.charts.migrations.repository }}"
|
||||||
{{ .Values.charts.migrations.repository }}"
|
|
||||||
|
|
||||||
releases:
|
releases:
|
||||||
- name: "opendesk-migrations-pre"
|
- name: "opendesk-migrations-pre"
|
||||||
@@ -22,6 +21,7 @@ releases:
|
|||||||
values:
|
values:
|
||||||
- "values.yaml.gotmpl"
|
- "values.yaml.gotmpl"
|
||||||
- "../../shared/migrations.yaml.gotmpl"
|
- "../../shared/migrations.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.migrationsPre | default "additionalValues: false" }}
|
||||||
installed: {{ .Values.migrations.enabled }}
|
installed: {{ .Values.migrations.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
@@ -5,7 +5,7 @@ bases:
|
|||||||
- "../../bases/environments.yaml"
|
- "../../bases/environments.yaml"
|
||||||
---
|
---
|
||||||
helmfiles:
|
helmfiles:
|
||||||
- path: "./helmfile-child.yaml"
|
- path: "./helmfile-child.yaml.gotmpl"
|
||||||
values:
|
values:
|
||||||
- {{ toYaml .Values | nindent 8 }}
|
- {{ toYaml .Values | nindent 8 }}
|
||||||
...
|
...
|
||||||
@@ -3,6 +3,8 @@
|
|||||||
SPDX-License-Identifier: Apache-2.0
|
SPDX-License-Identifier: Apache-2.0
|
||||||
*/}}
|
*/}}
|
||||||
---
|
---
|
||||||
|
podAnnotations: {}
|
||||||
|
|
||||||
migrations:
|
migrations:
|
||||||
stage: "PRE"
|
stage: "PRE"
|
||||||
...
|
...
|
||||||
|
|||||||
@@ -10,16 +10,14 @@ repositories:
|
|||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.nextcloudManagement.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.nextcloudManagement.registry }}/{{ .Values.charts.nextcloudManagement.repository }}"
|
||||||
{{ .Values.charts.nextcloudManagement.repository }}"
|
|
||||||
- name: "nextcloud-repo"
|
- name: "nextcloud-repo"
|
||||||
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
||||||
verify: {{ .Values.charts.nextcloud.verify }}
|
verify: {{ .Values.charts.nextcloud.verify }}
|
||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.nextcloud.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.nextcloud.registry }}/{{ .Values.charts.nextcloud.repository }}"
|
||||||
{{ .Values.charts.nextcloud.repository }}"
|
|
||||||
|
|
||||||
releases:
|
releases:
|
||||||
- name: "opendesk-nextcloud-management"
|
- name: "opendesk-nextcloud-management"
|
||||||
@@ -27,6 +25,7 @@ releases:
|
|||||||
version: "{{ .Values.charts.nextcloudManagement.version }}"
|
version: "{{ .Values.charts.nextcloudManagement.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-nextcloud-mgmt.yaml.gotmpl"
|
- "values-nextcloud-mgmt.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.opendeskNextcloudManagement | default "additionalValues: false" }}
|
||||||
waitForJobs: true
|
waitForJobs: true
|
||||||
wait: true
|
wait: true
|
||||||
installed: {{ .Values.nextcloud.enabled }}
|
installed: {{ .Values.nextcloud.enabled }}
|
||||||
@@ -36,6 +35,7 @@ releases:
|
|||||||
version: "{{ .Values.charts.nextcloud.version }}"
|
version: "{{ .Values.charts.nextcloud.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-nextcloud.yaml.gotmpl"
|
- "values-nextcloud.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.opendeskNextcloud | default "additionalValues: false" }}
|
||||||
needs:
|
needs:
|
||||||
- "opendesk-nextcloud-management"
|
- "opendesk-nextcloud-management"
|
||||||
installed: {{ .Values.nextcloud.enabled }}
|
installed: {{ .Values.nextcloud.enabled }}
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
|
||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
|
||||||
---
|
|
||||||
bases:
|
|
||||||
- "../../bases/environments.yaml"
|
|
||||||
---
|
|
||||||
helmfiles:
|
|
||||||
- path: "./helmfile-child.yaml"
|
|
||||||
values:
|
|
||||||
- {{ toYaml .Values | nindent 8 }}
|
|
||||||
...
|
|
||||||
12
helmfile/apps/nextcloud/helmfile.yaml.gotmpl
Normal file
12
helmfile/apps/nextcloud/helmfile.yaml.gotmpl
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
---
|
||||||
|
bases:
|
||||||
|
- "../../bases/environments.yaml"
|
||||||
|
---
|
||||||
|
helmfiles:
|
||||||
|
- path: "./helmfile-child.yaml.gotmpl"
|
||||||
|
values:
|
||||||
|
- {{ toYaml .Values | nindent 8 }}
|
||||||
|
...
|
||||||
@@ -18,8 +18,10 @@ cleanup:
|
|||||||
|
|
||||||
configuration:
|
configuration:
|
||||||
administrator:
|
administrator:
|
||||||
username: "nextcloud"
|
username:
|
||||||
password: {{ .Values.secrets.nextcloud.adminPassword | quote }}
|
value: "nextcloud"
|
||||||
|
password:
|
||||||
|
value: {{ .Values.secrets.nextcloud.adminPassword | quote }}
|
||||||
antivirus:
|
antivirus:
|
||||||
{{- if .Values.clamavDistributed.enabled }}
|
{{- if .Values.clamavDistributed.enabled }}
|
||||||
host: "clamav-icap"
|
host: "clamav-icap"
|
||||||
@@ -48,7 +50,8 @@ configuration:
|
|||||||
value: {{ .Values.databases.nextcloud.password | default .Values.secrets.mariadb.nextcloudUser | quote }}
|
value: {{ .Values.databases.nextcloud.password | default .Values.secrets.mariadb.nextcloudUser | quote }}
|
||||||
ldap:
|
ldap:
|
||||||
host: {{ .Values.ldap.host | quote }}
|
host: {{ .Values.ldap.host | quote }}
|
||||||
password: {{ .Values.secrets.nubus.ldapSearch.nextcloud | quote }}
|
password:
|
||||||
|
value: {{ .Values.secrets.nubus.ldapSearch.nextcloud | quote }}
|
||||||
adminGroupName: "managed-by-attribute-FileshareAdmin"
|
adminGroupName: "managed-by-attribute-FileshareAdmin"
|
||||||
objectstore:
|
objectstore:
|
||||||
auth:
|
auth:
|
||||||
@@ -73,16 +76,31 @@ configuration:
|
|||||||
value: "opendesk_username"
|
value: "opendesk_username"
|
||||||
password:
|
password:
|
||||||
value: {{ .Values.secrets.centralnavigation.apiKey | quote }}
|
value: {{ .Values.secrets.centralnavigation.apiKey | quote }}
|
||||||
|
sharing:
|
||||||
|
allowLinks: {{ .Values.functional.filestore.sharing.external.enabled }}
|
||||||
|
allowMailNotification: {{ .Values.functional.filestore.sharing.external.enabled }}
|
||||||
|
allowPublicUpload: {{ .Values.functional.filestore.sharing.external.enabled }}
|
||||||
|
enforceLinksPassword: {{ .Values.functional.filestore.sharing.external.enforcePasswords }}
|
||||||
|
enforcePasswordProtection: {{ .Values.functional.filestore.sharing.external.enforcePasswords }}
|
||||||
|
defaultInternalExpireEnabled: {{ .Values.functional.filestore.sharing.internal.expiry.activeByDefault }}
|
||||||
|
defaultInternalExpireEnforced: {{ .Values.functional.filestore.sharing.internal.expiry.enforced }}
|
||||||
|
defaultInternalExpireDays: {{ .Values.functional.filestore.sharing.internal.expiry.defaultDays | quote }}
|
||||||
|
defaultExternalExpireEnabled: {{ .Values.functional.filestore.sharing.external.expiry.activeByDefault }}
|
||||||
|
defaultExternalExpireEnforced: {{ .Values.functional.filestore.sharing.external.expiry.enforced }}
|
||||||
|
defaultExternalExpireDays: {{ .Values.functional.filestore.sharing.external.expiry.defaultDays | quote }}
|
||||||
smtp:
|
smtp:
|
||||||
auth:
|
auth:
|
||||||
|
enabled: false
|
||||||
username:
|
username:
|
||||||
value: {{ .Values.smtp.username | quote }}
|
value: ""
|
||||||
password:
|
password:
|
||||||
value: {{ .Values.smtp.password | quote }}
|
value: ""
|
||||||
host: {{ .Values.smtp.host | quote }}
|
host: {{ printf "%s.%s.svc.%s" "postfix" (.Values.postfix.namespace | default .Release.Namespace) .Values.cluster.networking.domain | quote }}
|
||||||
port: {{ .Values.smtp.port | quote }}
|
port: 25
|
||||||
fromAddress: {{ .Values.smtp.localpartNoReply | quote }}
|
fromAddress: {{ .Values.smtp.localpartNoReply | quote }}
|
||||||
mailDomain: "{{ if .Values.functional.email.systemGenerated.useComponentInSenderdomain }}{{ .Values.global.hosts.nextcloud }}.{{ end }}{{ .Values.global.domain }}"
|
mailDomain: "{{ .Values.global.domain }}"
|
||||||
|
security: ""
|
||||||
|
skipVerifyPeer: true
|
||||||
quota:
|
quota:
|
||||||
default: "{{ .Values.functional.filestore.quota.default }} GB"
|
default: "{{ .Values.functional.filestore.quota.default }} GB"
|
||||||
retentionObligation:
|
retentionObligation:
|
||||||
@@ -99,28 +117,30 @@ containerSecurityContext:
|
|||||||
- "ALL"
|
- "ALL"
|
||||||
enabled: true
|
enabled: true
|
||||||
privileged: false
|
privileged: false
|
||||||
runAsUser: 65532
|
runAsUser: 101
|
||||||
runAsGroup: 65532
|
runAsGroup: 101
|
||||||
seccompProfile:
|
seccompProfile:
|
||||||
type: "RuntimeDefault"
|
type: "RuntimeDefault"
|
||||||
readOnlyRootFilesystem: false
|
readOnlyRootFilesystem: false
|
||||||
runAsNonRoot: true
|
runAsNonRoot: true
|
||||||
seLinuxOptions:
|
seLinuxOptions:
|
||||||
{{ .Values.seLinuxOptions.nextcloudManagement | toYaml | nindent 4 }}
|
{{ .Values.seLinuxOptions.nextcloudManagement | toYaml | nindent 4 }}
|
||||||
|
podSecurityContext:
|
||||||
|
fsGroup: 101
|
||||||
|
|
||||||
debug:
|
debug:
|
||||||
loglevel: {{ if .Values.debug.enabled }}"0"{{ else }}"2"{{ end }}
|
loglevel: {{ if .Values.debug.enabled }}"0"{{ else }}"2"{{ end }}
|
||||||
|
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.nextcloudManagement.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nextcloud.registry | quote }}
|
||||||
repository: {{ .Values.images.nextcloudManagement.repository | quote }}
|
repository: {{ .Values.images.nextcloud.repository | quote }}
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
tag: {{ .Values.images.nextcloudManagement.tag | quote }}
|
tag: {{ .Values.images.nextcloud.tag | quote }}
|
||||||
|
|
||||||
theme:
|
theme:
|
||||||
{{ .Values.theme | toYaml | nindent 2 }}
|
{{ .Values.theme | toYaml | nindent 2 }}
|
||||||
|
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.nextcloudPHP | toYaml | nindent 4 }}
|
{{ .Values.resources.nextcloud | toYaml | nindent 4 }}
|
||||||
|
|
||||||
...
|
...
|
||||||
|
|||||||
@@ -28,10 +28,11 @@ exporter:
|
|||||||
seLinuxOptions:
|
seLinuxOptions:
|
||||||
{{ .Values.seLinuxOptions.nextcloudExporter | toYaml | nindent 6 }}
|
{{ .Values.seLinuxOptions.nextcloudExporter | toYaml | nindent 6 }}
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.nextcloudExporter.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nextcloudExporter.registry | quote }}
|
||||||
repository: "{{ .Values.images.nextcloudExporter.repository }}"
|
repository: "{{ .Values.images.nextcloudExporter.repository }}"
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
tag: {{ .Values.images.nextcloudExporter.tag | quote }}
|
tag: {{ .Values.images.nextcloudExporter.tag | quote }}
|
||||||
|
podAnnotations: {}
|
||||||
prometheus:
|
prometheus:
|
||||||
serviceMonitor:
|
serviceMonitor:
|
||||||
enabled: {{ .Values.monitoring.prometheus.serviceMonitors.enabled }}
|
enabled: {{ .Values.monitoring.prometheus.serviceMonitors.enabled }}
|
||||||
@@ -45,9 +46,9 @@ exporter:
|
|||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.nextcloudExporter | toYaml | nindent 4 }}
|
{{ .Values.resources.nextcloudExporter | toYaml | nindent 4 }}
|
||||||
|
|
||||||
php:
|
aio:
|
||||||
additionalAnnotations:
|
additionalAnnotations:
|
||||||
intents.otterize.com/service-name: "opendesk-nextcloud-php"
|
intents.otterize.com/service-name: "opendesk-nextcloud"
|
||||||
configuration:
|
configuration:
|
||||||
cache:
|
cache:
|
||||||
auth:
|
auth:
|
||||||
@@ -74,56 +75,23 @@ php:
|
|||||||
- "ALL"
|
- "ALL"
|
||||||
enabled: true
|
enabled: true
|
||||||
privileged: false
|
privileged: false
|
||||||
runAsUser: 65532
|
runAsUser: 101
|
||||||
runAsGroup: 65532
|
runAsGroup: 101
|
||||||
seccompProfile:
|
seccompProfile:
|
||||||
type: "RuntimeDefault"
|
type: "RuntimeDefault"
|
||||||
readOnlyRootFilesystem: true
|
readOnlyRootFilesystem: true
|
||||||
runAsNonRoot: true
|
runAsNonRoot: true
|
||||||
seLinuxOptions:
|
seLinuxOptions:
|
||||||
{{ .Values.seLinuxOptions.nextcloudPHP | toYaml | nindent 6 }}
|
{{ .Values.seLinuxOptions.nextcloud | toYaml | nindent 6 }}
|
||||||
cron:
|
cron:
|
||||||
successfulJobsHistoryLimit: {{ if .Values.debug.enabled }}"3"{{ else }}"0"{{ end }}
|
successfulJobsHistoryLimit: {{ if .Values.debug.enabled }}"3"{{ else }}"0"{{ end }}
|
||||||
debug:
|
debug:
|
||||||
loglevel: {{ if .Values.debug.enabled }}"0"{{ else }}"2"{{ end }}
|
loglevel: {{ if .Values.debug.enabled }}"0"{{ else }}"2"{{ end }}
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.nextcloudPHP.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nextcloud.registry | quote }}
|
||||||
repository: "{{ .Values.images.nextcloudPHP.repository }}"
|
repository: "{{ .Values.images.nextcloud.repository }}"
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
tag: {{ .Values.images.nextcloudPHP.tag | quote }}
|
tag: {{ .Values.images.nextcloud.tag | quote }}
|
||||||
prometheus:
|
|
||||||
serviceMonitor:
|
|
||||||
enabled: {{ .Values.monitoring.prometheus.serviceMonitors.enabled }}
|
|
||||||
labels:
|
|
||||||
{{ .Values.monitoring.prometheus.serviceMonitors.labels | toYaml | nindent 8 }}
|
|
||||||
prometheusRule:
|
|
||||||
enabled: {{ .Values.monitoring.prometheus.prometheusRules.enabled }}
|
|
||||||
additionalLabels:
|
|
||||||
{{ .Values.monitoring.prometheus.prometheusRules.labels | toYaml | nindent 8 }}
|
|
||||||
replicaCount: {{ .Values.replicas.nextcloudPHP }}
|
|
||||||
resources:
|
|
||||||
{{ .Values.resources.nextcloudPHP | toYaml | nindent 4 }}
|
|
||||||
|
|
||||||
apache2:
|
|
||||||
configuration:
|
|
||||||
php:
|
|
||||||
host: "opendesk-nextcloud-php.{{ .Release.Namespace }}.svc.{{ .Values.cluster.networking.domain }}"
|
|
||||||
trustedProxies: {{ join " " .Values.cluster.networking.cidr | quote }}
|
|
||||||
containerSecurityContext:
|
|
||||||
allowPrivilegeEscalation: false
|
|
||||||
capabilities:
|
|
||||||
drop:
|
|
||||||
- "ALL"
|
|
||||||
enabled: true
|
|
||||||
privileged: false
|
|
||||||
runAsUser: 65532
|
|
||||||
runAsGroup: 65532
|
|
||||||
seccompProfile:
|
|
||||||
type: "RuntimeDefault"
|
|
||||||
readOnlyRootFilesystem: true
|
|
||||||
runAsNonRoot: true
|
|
||||||
seLinuxOptions:
|
|
||||||
{{ .Values.seLinuxOptions.nextcloudApache2 | toYaml | nindent 6 }}
|
|
||||||
ingress:
|
ingress:
|
||||||
enabled: {{ .Values.ingress.enabled }}
|
enabled: {{ .Values.ingress.enabled }}
|
||||||
annotations:
|
annotations:
|
||||||
@@ -137,13 +105,20 @@ apache2:
|
|||||||
host: "{{ .Values.global.hosts.nextcloud }}.{{ .Values.global.domain }}"
|
host: "{{ .Values.global.hosts.nextcloud }}.{{ .Values.global.domain }}"
|
||||||
tls:
|
tls:
|
||||||
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
||||||
image:
|
podAnnotations: {}
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.nextcloudApache2.registry | quote }}
|
podSecurityContext:
|
||||||
repository: {{ .Values.images.nextcloudApache2.repository | quote }}
|
fsGroup: 101
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
prometheus:
|
||||||
tag: {{ .Values.images.nextcloudApache2.tag | quote }}
|
serviceMonitor:
|
||||||
replicaCount: {{ .Values.replicas.nextcloudApache2 }}
|
enabled: {{ .Values.monitoring.prometheus.serviceMonitors.enabled }}
|
||||||
|
labels:
|
||||||
|
{{ .Values.monitoring.prometheus.serviceMonitors.labels | toYaml | nindent 8 }}
|
||||||
|
prometheusRule:
|
||||||
|
enabled: {{ .Values.monitoring.prometheus.prometheusRules.enabled }}
|
||||||
|
additionalLabels:
|
||||||
|
{{ .Values.monitoring.prometheus.prometheusRules.labels | toYaml | nindent 8 }}
|
||||||
|
replicaCount: {{ .Values.replicas.nextcloud }}
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.nextcloudApache2 | toYaml | nindent 4 }}
|
{{ .Values.resources.nextcloud | toYaml | nindent 4 }}
|
||||||
|
|
||||||
...
|
...
|
||||||
|
|||||||
@@ -10,17 +10,24 @@ repositories:
|
|||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url:
|
url:
|
||||||
"{{ .Values.global.helmRegistry | default .Values.charts.nubus.registry }}/\
|
"{{ .Values.global.helmRegistry | default .Values.charts.nubus.registry }}/{{ .Values.charts.nubus.repository }}"
|
||||||
{{ .Values.charts.nubus.repository }}"
|
# Intercom Service
|
||||||
# OpenDesk Keycloak Bootstrap Chart
|
# Source: https://gitlab.souvap-univention.de/souvap/tooling/charts/intercom-service
|
||||||
|
- name: "intercom-service-repo"
|
||||||
|
keyring: "../../files/gpg-pubkeys/univention-de.gpg"
|
||||||
|
verify: {{ .Values.charts.intercomService.verify }}
|
||||||
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
|
oci: true
|
||||||
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.intercomService.registry }}/{{ .Values.charts.intercomService.repository }}"
|
||||||
|
# openDesk Keycloak Bootstrap Chart
|
||||||
- name: "opendesk-keycloak-bootstrap-repo"
|
- name: "opendesk-keycloak-bootstrap-repo"
|
||||||
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
||||||
verify: {{ .Values.charts.opendeskKeycloakBootstrap.verify }}
|
verify: {{ .Values.charts.opendeskKeycloakBootstrap.verify }}
|
||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.opendeskKeycloakBootstrap.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.opendeskKeycloakBootstrap.registry }}/{{ .Values.charts.opendeskKeycloakBootstrap.repository }}"
|
||||||
{{ .Values.charts.opendeskKeycloakBootstrap.repository }}"
|
|
||||||
|
|
||||||
releases:
|
releases:
|
||||||
# Univention Management Stack Umbrella Chart
|
# Univention Management Stack Umbrella Chart
|
||||||
@@ -31,14 +38,25 @@ releases:
|
|||||||
- "values-nubus.yaml.gotmpl"
|
- "values-nubus.yaml.gotmpl"
|
||||||
- "values-opendesk-customization.yaml.gotmpl"
|
- "values-opendesk-customization.yaml.gotmpl"
|
||||||
- "values-opendesk-images.yaml.gotmpl"
|
- "values-opendesk-images.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.ums | default "additionalValues: false" }}
|
||||||
installed: {{ .Values.nubus.enabled }}
|
installed: {{ .Values.nubus.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
# OpenDesk Keycloak Bootstrap Chart
|
# Intercom-Service
|
||||||
|
- name: "intercom-service"
|
||||||
|
chart: "intercom-service-repo/{{ .Values.charts.intercomService.name }}"
|
||||||
|
version: "{{ .Values.charts.intercomService.version }}"
|
||||||
|
values:
|
||||||
|
- "values-intercom-service.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.intercomService | default "additionalValues: false" }}
|
||||||
|
installed: {{ .Values.nubus.enabled }}
|
||||||
|
|
||||||
|
# openDesk Keycloak Bootstrap Chart
|
||||||
- name: "opendesk-keycloak-bootstrap"
|
- name: "opendesk-keycloak-bootstrap"
|
||||||
chart: "opendesk-keycloak-bootstrap-repo/{{ .Values.charts.opendeskKeycloakBootstrap.name }}"
|
chart: "opendesk-keycloak-bootstrap-repo/{{ .Values.charts.opendeskKeycloakBootstrap.name }}"
|
||||||
version: "{{ .Values.charts.opendeskKeycloakBootstrap.version }}"
|
version: "{{ .Values.charts.opendeskKeycloakBootstrap.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-opendesk-keycloak-bootstrap.yaml.gotmpl"
|
- "values-opendesk-keycloak-bootstrap.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.opendeskKeycloakBootstrap | default "additionalValues: false" }}
|
||||||
needs:
|
needs:
|
||||||
- "ums"
|
- "ums"
|
||||||
installed: {{ .Values.nubus.enabled }}
|
installed: {{ .Values.nubus.enabled }}
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
|
||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
|
||||||
---
|
|
||||||
bases:
|
|
||||||
- "../../bases/environments.yaml"
|
|
||||||
---
|
|
||||||
helmfiles:
|
|
||||||
- path: "./helmfile-child.yaml"
|
|
||||||
values:
|
|
||||||
- {{ toYaml .Values | nindent 8 }}
|
|
||||||
...
|
|
||||||
12
helmfile/apps/nubus/helmfile.yaml.gotmpl
Normal file
12
helmfile/apps/nubus/helmfile.yaml.gotmpl
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
---
|
||||||
|
bases:
|
||||||
|
- "../../bases/environments.yaml"
|
||||||
|
---
|
||||||
|
helmfiles:
|
||||||
|
- path: "./helmfile-child.yaml.gotmpl"
|
||||||
|
values:
|
||||||
|
- {{ toYaml .Values | nindent 8 }}
|
||||||
|
...
|
||||||
@@ -1,5 +1,8 @@
|
|||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
{{/*
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
---
|
---
|
||||||
containerSecurityContext:
|
containerSecurityContext:
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
@@ -28,6 +31,7 @@ ics:
|
|||||||
secret: {{ .Values.secrets.intercom.secret | quote }}
|
secret: {{ .Values.secrets.intercom.secret | quote }}
|
||||||
issuerBaseUrl: "https://{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}/realms/{{ .Values.platform.realm }}"
|
issuerBaseUrl: "https://{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}/realms/{{ .Values.platform.realm }}"
|
||||||
originRegex: "{{ .Values.global.domain }}"
|
originRegex: "{{ .Values.global.domain }}"
|
||||||
|
userUniqueMapper: {{ if .Values.functional.chat.matrix.profile.useImmutableIdentifierForLocalpart }}"entryuuid"{{ else }}"phoenixusername"{{ end }}
|
||||||
keycloak:
|
keycloak:
|
||||||
realm: {{ .Values.platform.realm | quote }}
|
realm: {{ .Values.platform.realm | quote }}
|
||||||
default:
|
default:
|
||||||
@@ -52,10 +56,12 @@ ics:
|
|||||||
url: "https://{{ .Values.global.hosts.openxchange }}.{{ .Values.global.domain }}"
|
url: "https://{{ .Values.global.hosts.openxchange }}.{{ .Values.global.domain }}"
|
||||||
audience: "opendesk-oxappsuite"
|
audience: "opendesk-oxappsuite"
|
||||||
nextcloud:
|
nextcloud:
|
||||||
|
origin: {{ .Values.global.hosts.nextcloud | quote }}
|
||||||
|
subdomain: {{ .Values.global.hosts.nextcloud | quote }}
|
||||||
audience: "opendesk-nextcloud"
|
audience: "opendesk-nextcloud"
|
||||||
image:
|
image:
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.intercom.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.intercom.registry | quote }}
|
||||||
repository: {{ .Values.images.intercom.repository | quote }}
|
repository: {{ .Values.images.intercom.repository | quote }}
|
||||||
tag: {{ .Values.images.intercom.tag | quote }}
|
tag: {{ .Values.images.intercom.tag | quote }}
|
||||||
|
|
||||||
@@ -67,11 +73,47 @@ ingress:
|
|||||||
enabled: {{ .Values.ingress.tls.enabled }}
|
enabled: {{ .Values.ingress.tls.enabled }}
|
||||||
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
||||||
|
|
||||||
|
podAnnotations: {}
|
||||||
|
|
||||||
podSecurityContext:
|
podSecurityContext:
|
||||||
enabled: true
|
enabled: true
|
||||||
fsGroup: 1000
|
fsGroup: 1000
|
||||||
fsGroupChangePolicy: "Always"
|
fsGroupChangePolicy: "Always"
|
||||||
|
|
||||||
|
provisioning:
|
||||||
|
enabled: true
|
||||||
|
config:
|
||||||
|
nubusBaseUrl: "https://{{ .Values.global.hosts.intercomService }}.{{ .Values.global.domain }}"
|
||||||
|
keycloak:
|
||||||
|
url: "http://ums-keycloak:8080/realms/{{ .Values.platform.realm }}/"
|
||||||
|
username: "kcadmin"
|
||||||
|
realm: {{ .Values.platform.realm | quote }}
|
||||||
|
connection:
|
||||||
|
host: "{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}"
|
||||||
|
baseUrl: "http://ums-keycloak:8080"
|
||||||
|
credentialSecret:
|
||||||
|
name: "ums-opendesk-keycloak-credentials"
|
||||||
|
key: "admin_password"
|
||||||
|
ics_client:
|
||||||
|
clientSecret: {{ .Values.secrets.keycloak.clientSecret.intercom | quote }}
|
||||||
|
credentialSecret:
|
||||||
|
key: "ics_secret"
|
||||||
|
image:
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusWaitForDependency.registry | quote }}
|
||||||
|
repository: {{ .Values.images.nubusWaitForDependency.repository | quote }}
|
||||||
|
tag: {{ .Values.images.nubusWaitForDependency.tag | quote }}
|
||||||
|
provisioningImage:
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusKeycloakBootstrap.registry | quote }}
|
||||||
|
repository: {{ .Values.images.nubusKeycloakBootstrap.repository | quote }}
|
||||||
|
tag: {{ .Values.images.nubusKeycloakBootstrap.tag | quote }}
|
||||||
|
securityContext:
|
||||||
|
seccompProfile:
|
||||||
|
type: "RuntimeDefault"
|
||||||
|
seLinuxOptions:
|
||||||
|
{{ .Values.seLinuxOptions.intercom | toYaml | nindent 6 }}
|
||||||
|
|
||||||
replicaCount: {{ .Values.replicas.intercomService }}
|
replicaCount: {{ .Values.replicas.intercomService }}
|
||||||
|
|
||||||
resources:
|
resources:
|
||||||
@@ -1,5 +1,7 @@
|
|||||||
# SPDX-FileCopyrightText: 2024 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
{{/*
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
---
|
---
|
||||||
global:
|
global:
|
||||||
nubusDeployment: true
|
nubusDeployment: true
|
||||||
@@ -7,8 +9,11 @@ global:
|
|||||||
baseDn: {{ .Values.ldap.baseDn | quote }}
|
baseDn: {{ .Values.ldap.baseDn | quote }}
|
||||||
domainName: {{ .Values.global.domain | quote }}
|
domainName: {{ .Values.global.domain | quote }}
|
||||||
domain: {{ .Values.global.domain | quote }}
|
domain: {{ .Values.global.domain | quote }}
|
||||||
|
subDomains:
|
||||||
|
portal: {{ .Values.global.hosts.nubus | quote }}
|
||||||
|
keycloak: {{ .Values.global.hosts.keycloak | quote }}
|
||||||
ingressClass: {{ .Values.ingress.ingressClassName | default "nginx" | quote }}
|
ingressClass: {{ .Values.ingress.ingressClassName | default "nginx" | quote }}
|
||||||
certManagerIssuer: "letsencrypt-prod-dns"
|
certManagerIssuer: {{ .Values.certificate.issuerRef.name | quote }}
|
||||||
nubusMasterPassword: {{ env "MASTER_PASSWORD" | default "sovereign-workplace" | quote }}
|
nubusMasterPassword: {{ env "MASTER_PASSWORD" | default "sovereign-workplace" | quote }}
|
||||||
keycloak:
|
keycloak:
|
||||||
realm: {{ .Values.platform.realm | quote }}
|
realm: {{ .Values.platform.realm | quote }}
|
||||||
@@ -24,21 +29,45 @@ global:
|
|||||||
defaultUsers:
|
defaultUsers:
|
||||||
defaultAdminPassword: {{ .Values.secrets.nubus.defaultAccounts.adminPassword | quote}}
|
defaultAdminPassword: {{ .Values.secrets.nubus.defaultAccounts.adminPassword | quote}}
|
||||||
defaultUserPassword: {{ .Values.secrets.nubus.defaultAccounts.userPassword | quote}}
|
defaultUserPassword: {{ .Values.secrets.nubus.defaultAccounts.userPassword | quote}}
|
||||||
|
defaultAdministratorPassword: {{ .Values.secrets.nubus.systemAccounts.administratorPassword | quote}}
|
||||||
|
portalConsumer:
|
||||||
|
minio:
|
||||||
|
accessKey: {{ .Values.objectstores.nubus.username | quote }}
|
||||||
|
secretKey: {{ .Values.objectstores.nubus.secretKey | default .Values.secrets.minio.umsUser | quote }}
|
||||||
|
provisioningApi:
|
||||||
|
password: {{ .Values.secrets.nubus.portalConsumer.provisioningApiPassword | quote}}
|
||||||
|
provisioning:
|
||||||
|
api:
|
||||||
|
adminPassword: {{ .Values.secrets.nubus.provisioning.api.adminPassword | quote}}
|
||||||
|
natsPassword: {{ .Values.secrets.nubus.provisioning.api.natsPassword | quote}}
|
||||||
|
prefillPassword: {{ .Values.secrets.nubus.provisioning.api.prefillPassword | quote}}
|
||||||
|
udmTransformerPassword: {{ .Values.secrets.nubus.provisioning.api.udmTransformerPassword | quote}}
|
||||||
|
dispatcher:
|
||||||
|
natsPassword: {{ .Values.secrets.nubus.provisioning.dispatcherNatsPassword | quote}}
|
||||||
|
nats:
|
||||||
|
adminPassword: {{ .Values.secrets.nats.natsAdminPassword | quote}}
|
||||||
|
prefill:
|
||||||
|
natsPassword: {{ .Values.secrets.nubus.provisioning.prefillNatsPassword | quote}}
|
||||||
|
udmTransformer:
|
||||||
|
natsPassword: {{ .Values.secrets.nubus.provisioning.udmTransformerNatsPassword | quote}}
|
||||||
|
selfserviceConsumer:
|
||||||
|
provisioningApi:
|
||||||
|
password: {{ .Values.secrets.nubus.selfserviceConsumer.provisioningApiPassword | quote}}
|
||||||
|
|
||||||
# -- Extensions to load. Add entries to load additional extensions into Nubus.
|
# -- Extensions to load. Add entries to load additional extensions into Nubus.
|
||||||
extensions:
|
extensions:
|
||||||
- name: "ox"
|
- name: "ox"
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusOxExtension.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusOxExtension.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusOxExtension.repository }}
|
repository: {{ .Values.images.nubusOxExtension.repository }}
|
||||||
tag: {{ .Values.images.nubusOxExtension.tag }}
|
tag: {{ .Values.images.nubusOxExtension.tag }}
|
||||||
imagePullPolicy: "IfNotPresent"
|
imagePullPolicy: {{ .Values.global.imagePullPolicy }}
|
||||||
- name: "opendesk"
|
- name: "opendesk"
|
||||||
image:
|
image:
|
||||||
registry: "registry.opencode.de"
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusOpendeskExtension.registry | quote }}
|
||||||
repository: "bmi/opendesk/components/platform-development/images/opendesk-nubus"
|
repository: {{ .Values.images.nubusOpendeskExtension.repository }}
|
||||||
imagePullPolicy: "IfNotPresent"
|
imagePullPolicy: {{ .Values.global.imagePullPolicy }}
|
||||||
tag: "1.1.0"
|
tag: {{ .Values.images.nubusOpendeskExtension.tag }}
|
||||||
|
|
||||||
# -- Allows to configure the system extensions to load. This is intended for
|
# -- Allows to configure the system extensions to load. This is intended for
|
||||||
# internal usage, prefer to use `global.extensions` for user configured
|
# internal usage, prefer to use `global.extensions` for user configured
|
||||||
@@ -46,10 +75,80 @@ global:
|
|||||||
systemExtensions:
|
systemExtensions:
|
||||||
- name: "portal"
|
- name: "portal"
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusPortalExtension.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusPortalExtension.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusPortalExtension.repository }}
|
repository: {{ .Values.images.nubusPortalExtension.repository }}
|
||||||
tag: {{ .Values.images.nubusPortalExtension.tag }}
|
tag: {{ .Values.images.nubusPortalExtension.tag }}
|
||||||
imagePullPolicy: "IfNotPresent"
|
imagePullPolicy: {{ .Values.global.imagePullPolicy }}
|
||||||
|
configUcr:
|
||||||
|
directory:
|
||||||
|
manager:
|
||||||
|
rest:
|
||||||
|
authorized-groups:
|
||||||
|
domain-admins: __DELETE_KEY__
|
||||||
|
iam-api-full-access: "cn=IAM API - Full Access,cn=groups,{{ .Values.ldap.baseDn }}"
|
||||||
|
web:
|
||||||
|
modules:
|
||||||
|
users:
|
||||||
|
user:
|
||||||
|
add:
|
||||||
|
default: "cn=openDesk User,cn=templates,cn=univention,{{ .Values.ldap.baseDn }}"
|
||||||
|
properties:
|
||||||
|
description:
|
||||||
|
syntax: "TextArea"
|
||||||
|
firstname:
|
||||||
|
required: "true"
|
||||||
|
mailPrimaryAddress:
|
||||||
|
required: "true"
|
||||||
|
username:
|
||||||
|
syntax: "uid"
|
||||||
|
search:
|
||||||
|
autosearch: "True"
|
||||||
|
wizard:
|
||||||
|
property:
|
||||||
|
invite:
|
||||||
|
default: "True"
|
||||||
|
overridePWLength:
|
||||||
|
default: "False"
|
||||||
|
visible: "False"
|
||||||
|
pwdChangeNextLogin:
|
||||||
|
default: "True"
|
||||||
|
visible: "False"
|
||||||
|
wizard:
|
||||||
|
disabled: "No"
|
||||||
|
|
||||||
|
ucs:
|
||||||
|
web:
|
||||||
|
theme: "light"
|
||||||
|
|
||||||
|
umc:
|
||||||
|
cookie-banner:
|
||||||
|
show: "false"
|
||||||
|
login:
|
||||||
|
password-complexity-message:
|
||||||
|
de: "Das Passwort muss den folgenden Anforderungen entsprechen:<br><ul><li>Mindestlänge: 8 Zeichen</li></ul>Anmerkung: Wird befinden uns nicht in einer Produktivumgebung."
|
||||||
|
en: "Password must comply with the following rules:<br><ul><li>Minimum length: 8 characters</li></ul>Note: We are in a non production (dev/test/demo) system."
|
||||||
|
module:
|
||||||
|
udm:
|
||||||
|
oxmail:
|
||||||
|
oxcontext:
|
||||||
|
disabled: "True"
|
||||||
|
portals:
|
||||||
|
all:
|
||||||
|
disabled: "True"
|
||||||
|
self-service:
|
||||||
|
account-registration:
|
||||||
|
usertemplate: __DELETE_KEY__
|
||||||
|
passwordreset:
|
||||||
|
token_validity_period: 172800
|
||||||
|
blacklist:
|
||||||
|
groups: __DELETE_KEY__
|
||||||
|
|
||||||
|
ingress:
|
||||||
|
certManager:
|
||||||
|
enabled: false
|
||||||
|
tls:
|
||||||
|
enabled: {{ .Values.ingress.tls.enabled }}
|
||||||
|
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
||||||
|
|
||||||
# Nubus bundled services
|
# Nubus bundled services
|
||||||
postgresql:
|
postgresql:
|
||||||
@@ -83,9 +182,15 @@ keycloak:
|
|||||||
|
|
||||||
nubusGuardian:
|
nubusGuardian:
|
||||||
provisioning:
|
provisioning:
|
||||||
enabled: true
|
enabled: false
|
||||||
config:
|
config:
|
||||||
|
nubusBaseUrl: {{ printf "https://%s.%s" .Values.global.hosts.nubus .Values.global.domain }}
|
||||||
keycloak:
|
keycloak:
|
||||||
|
realm: {{ .Values.platform.realm | quote }}
|
||||||
|
username: "kcadmin"
|
||||||
|
connection:
|
||||||
|
host: "{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}"
|
||||||
|
baseUrl: "http://ums-keycloak:8080"
|
||||||
credentialSecret:
|
credentialSecret:
|
||||||
name: "ums-opendesk-keycloak-credentials"
|
name: "ums-opendesk-keycloak-credentials"
|
||||||
key: "admin_password"
|
key: "admin_password"
|
||||||
@@ -93,7 +198,12 @@ nubusGuardian:
|
|||||||
credentialSecret:
|
credentialSecret:
|
||||||
name: "ums-opendesk-guardian-client-secret"
|
name: "ums-opendesk-guardian-client-secret"
|
||||||
key: "managementApiClientSecret"
|
key: "managementApiClientSecret"
|
||||||
|
ingress:
|
||||||
|
certManager:
|
||||||
|
enabled: false
|
||||||
|
tls:
|
||||||
|
enabled: {{ .Values.ingress.tls.enabled }}
|
||||||
|
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
||||||
postgresql:
|
postgresql:
|
||||||
connection:
|
connection:
|
||||||
host: {{ .Values.databases.umsGuardianManagementApi.host | quote }}
|
host: {{ .Values.databases.umsGuardianManagementApi.host | quote }}
|
||||||
@@ -114,7 +224,20 @@ nubusNotificationsApi:
|
|||||||
username: {{ .Values.databases.umsNotificationsApi.username | quote }}
|
username: {{ .Values.databases.umsNotificationsApi.username | quote }}
|
||||||
database: {{ .Values.databases.umsNotificationsApi.name | quote }}
|
database: {{ .Values.databases.umsNotificationsApi.name | quote }}
|
||||||
existingSecret: "ums-notifications-api-postgresql-opendesk-credentials"
|
existingSecret: "ums-notifications-api-postgresql-opendesk-credentials"
|
||||||
|
ingress:
|
||||||
|
certManager:
|
||||||
|
enabled: false
|
||||||
|
tls:
|
||||||
|
enabled: {{ .Values.ingress.tls.enabled }}
|
||||||
|
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
||||||
|
|
||||||
|
nubusPortalFrontend:
|
||||||
|
ingress:
|
||||||
|
certManager:
|
||||||
|
enabled: false
|
||||||
|
tls:
|
||||||
|
enabled: {{ .Values.ingress.tls.enabled }}
|
||||||
|
secretName: {{ .Values.ingress.tls.secretName }}
|
||||||
|
|
||||||
nubusKeycloakExtensions:
|
nubusKeycloakExtensions:
|
||||||
keycloak:
|
keycloak:
|
||||||
@@ -138,6 +261,11 @@ nubusKeycloakExtensions:
|
|||||||
path: "/resources/"
|
path: "/resources/"
|
||||||
- pathType: "Prefix"
|
- pathType: "Prefix"
|
||||||
path: "/fingerprintjs"
|
path: "/fingerprintjs"
|
||||||
|
certManager:
|
||||||
|
enabled: false
|
||||||
|
tls:
|
||||||
|
enabled: {{ .Values.ingress.tls.enabled }}
|
||||||
|
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
||||||
|
|
||||||
|
|
||||||
postgresql:
|
postgresql:
|
||||||
@@ -152,10 +280,13 @@ nubusKeycloakExtensions:
|
|||||||
key: "umcKeycloakExtensionsDatabasePassword"
|
key: "umcKeycloakExtensionsDatabasePassword"
|
||||||
smtp:
|
smtp:
|
||||||
connection:
|
connection:
|
||||||
host: {{ .Values.smtp.host | quote }}
|
host: {{ printf "%s.%s.svc.%s" "postfix" (.Values.postfix.namespace | default .Release.Namespace) .Values.cluster.networking.domain | quote }}
|
||||||
port: {{ .Values.smtp.port | quote }}
|
port: 25
|
||||||
|
ssl: false
|
||||||
|
starttls: false
|
||||||
auth:
|
auth:
|
||||||
username: {{ .Values.smtp.username | quote }}
|
enabled: false
|
||||||
|
username: ""
|
||||||
credentialSecret:
|
credentialSecret:
|
||||||
name: "ums-keycloak-extensions-smtp-opendesk-credentials"
|
name: "ums-keycloak-extensions-smtp-opendesk-credentials"
|
||||||
key: "umcKeycloakExtensionsSmtpPassword"
|
key: "umcKeycloakExtensionsSmtpPassword"
|
||||||
@@ -163,16 +294,20 @@ nubusKeycloakExtensions:
|
|||||||
appConfig:
|
appConfig:
|
||||||
logLevel: {{ if .Values.debug.enabled }}"DEBUG"{{ else }}"WARN"{{ end }}
|
logLevel: {{ if .Values.debug.enabled }}"DEBUG"{{ else }}"WARN"{{ end }}
|
||||||
newDeviceLoginSubject: "New device login on your {{ .Values.theme.texts.productName }} account"
|
newDeviceLoginSubject: "New device login on your {{ .Values.theme.texts.productName }} account"
|
||||||
mailFrom: "{{ .Values.smtp.localpartNoReply }}@{{ if .Values.functional.email.systemGenerated.useComponentInSenderdomain }}{{ .Values.global.hosts.keycloak }}.{{ end }}{{ .Values.global.domain }}"
|
mailFrom: "{{ .Values.smtp.localpartNoReply }}@{{ .Values.global.domain }}"
|
||||||
|
|
||||||
nubusPortalListener:
|
nubusPortalListener:
|
||||||
portalListener:
|
enabled: false
|
||||||
|
|
||||||
|
nubusPortalConsumer:
|
||||||
|
enabled: true
|
||||||
|
portalConsumer:
|
||||||
|
logLevel: {{ if .Values.debug.enabled }}"DEBUG"{{ else }}"INFO"{{ end }}
|
||||||
objectStorageEndpoint: {{ .Values.objectstores.nubus.endpoint | default (printf "https://%s.%s" .Values.global.hosts.minioApi .Values.global.domain) | quote }}
|
objectStorageEndpoint: {{ .Values.objectstores.nubus.endpoint | default (printf "https://%s.%s" .Values.global.hosts.minioApi .Values.global.domain) | quote }}
|
||||||
objectStorageBucket: {{ .Values.objectstores.nubus.bucket | quote }}
|
objectStorageBucket: {{ .Values.objectstores.nubus.bucket | quote }}
|
||||||
objectStorageCredentialSecret:
|
provisioningApi:
|
||||||
name: "ums-portal-listener-minio-opendesk-credentials"
|
auth:
|
||||||
accessKeyKey: "access-key-id"
|
username: "portal-consumer"
|
||||||
secretKeyKey: "secret-key-id"
|
|
||||||
|
|
||||||
nubusPortalServer:
|
nubusPortalServer:
|
||||||
portalServer:
|
portalServer:
|
||||||
@@ -185,19 +320,38 @@ nubusPortalServer:
|
|||||||
centralNavigation:
|
centralNavigation:
|
||||||
enabled: true
|
enabled: true
|
||||||
authenticatorSecretName: "ums-opendesk-portal-server-central-navigation"
|
authenticatorSecretName: "ums-opendesk-portal-server-central-navigation"
|
||||||
|
ingress:
|
||||||
|
certManager:
|
||||||
|
enabled: false
|
||||||
|
tls:
|
||||||
|
enabled: {{ .Values.ingress.tls.enabled }}
|
||||||
|
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
||||||
|
|
||||||
|
nubusUdmRestApi:
|
||||||
|
ingress:
|
||||||
|
certManager:
|
||||||
|
enabled: false
|
||||||
|
tls:
|
||||||
|
enabled: {{ .Values.ingress.tls.enabled }}
|
||||||
|
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
||||||
|
|
||||||
# NOTE: disabled until the next update.
|
|
||||||
nubusProvisioning:
|
nubusProvisioning:
|
||||||
enabled: false
|
|
||||||
nubusUdmListener:
|
|
||||||
enabled: false
|
|
||||||
nubusSelfServiceListener:
|
|
||||||
enabled: true
|
enabled: true
|
||||||
selfserviceListener:
|
|
||||||
umcAdminUser: "default.admin"
|
nubusUdmListener:
|
||||||
|
enabled: true
|
||||||
|
|
||||||
|
nubusSelfServiceListener:
|
||||||
|
enabled: false
|
||||||
|
|
||||||
|
nubusSelfServiceConsumer:
|
||||||
|
enabled: true
|
||||||
|
|
||||||
# Nubus services
|
# Nubus services
|
||||||
nubusStackDataUms:
|
nubusStackDataUms:
|
||||||
|
additionalAnnotations:
|
||||||
|
argocd.argoproj.io/hook: "Sync"
|
||||||
|
argocd.argoproj.io/hook-delete-policy: "HookSucceeded"
|
||||||
stackDataContext:
|
stackDataContext:
|
||||||
umcPostgresqlHostname: {{ .Values.databases.umsSelfservice.host | quote }}
|
umcPostgresqlHostname: {{ .Values.databases.umsSelfservice.host | quote }}
|
||||||
umcPostgresqlUsername: {{ .Values.databases.umsSelfservice.username | quote }}
|
umcPostgresqlUsername: {{ .Values.databases.umsSelfservice.username | quote }}
|
||||||
@@ -205,27 +359,16 @@ nubusStackDataUms:
|
|||||||
umcMemcachedUsername: ""
|
umcMemcachedUsername: ""
|
||||||
externalMailDomain: {{ .Values.global.mailDomain | default .Values.global.domain }}
|
externalMailDomain: {{ .Values.global.mailDomain | default .Values.global.domain }}
|
||||||
umcHtmlTitle: "openDesk Portal"
|
umcHtmlTitle: "openDesk Portal"
|
||||||
installUmcPolicies: true
|
smtpHost: {{ printf "%s.%s.svc.%s" "postfix" (.Values.postfix.namespace | default .Release.Namespace) .Values.cluster.networking.domain | quote }}
|
||||||
nubusUmcServer:
|
smtpPort: 25
|
||||||
memcached:
|
smtpUser: ""
|
||||||
auth:
|
smtpStartTls: false
|
||||||
username: ""
|
|
||||||
|
|
||||||
# TODO: Remove values when upstreaming fixes
|
|
||||||
nubusStackDataSwp:
|
|
||||||
stackDataContext:
|
|
||||||
ldapSearchUsers:
|
|
||||||
{{- range $username, $password := .Values.secrets.nubus.ldapSearch }}
|
|
||||||
- username: {{ printf "ldapsearch_%s" $username | quote }}
|
|
||||||
password: {{ $password | quote }}
|
|
||||||
lastname: "LDAP-Search-User"
|
|
||||||
{{- end }}
|
|
||||||
externalMailDomain: {{ .Values.global.mailDomain | default .Values.global.domain }}
|
|
||||||
smtpHost: {{ .Values.smtp.host | quote }}
|
|
||||||
smtpPort: {{ .Values.smtp.port | quote }}
|
|
||||||
smtpUser: {{ .Values.smtp.username | quote }}
|
|
||||||
ldapBase: {{ .Values.ldap.baseDn }}
|
ldapBase: {{ .Values.ldap.baseDn }}
|
||||||
# FIXME: Should be templated correctly in the future
|
templateContext:
|
||||||
|
# creates the default.user and default.admin
|
||||||
|
loadDevData: true
|
||||||
|
portalHeaderLogo: {{ toYaml .Values.theme.imagery.logoHeaderSvgB64 | quote }}
|
||||||
|
portalTiles: {{ toYaml .Values.theme.portalTiles | nindent 6 }}
|
||||||
portalRealtimeCollaborationLinkBase: {{ printf "https://%s.%s" .Values.global.hosts.element .Values.global.domain }}
|
portalRealtimeCollaborationLinkBase: {{ printf "https://%s.%s" .Values.global.hosts.element .Values.global.domain }}
|
||||||
portalRealtimeVideoconferenceLinkBase: {{ printf "https://%s.%s" .Values.global.hosts.jitsi .Values.global.domain }}
|
portalRealtimeVideoconferenceLinkBase: {{ printf "https://%s.%s" .Values.global.hosts.jitsi .Values.global.domain }}
|
||||||
portalManagementProjectLinkBase: {{ printf "https://%s.%s" .Values.global.hosts.openproject .Values.global.domain }}
|
portalManagementProjectLinkBase: {{ printf "https://%s.%s" .Values.global.hosts.openproject .Values.global.domain }}
|
||||||
@@ -235,6 +378,49 @@ nubusStackDataSwp:
|
|||||||
portalTitleDE: "openDesk Portal"
|
portalTitleDE: "openDesk Portal"
|
||||||
portalTitleEN: "openDesk Portal"
|
portalTitleEN: "openDesk Portal"
|
||||||
oxDefaultContext: "1"
|
oxDefaultContext: "1"
|
||||||
|
ldapSearchUsers:
|
||||||
|
{{- range $username, $password := .Values.secrets.nubus.ldapSearch }}
|
||||||
|
- username: {{ printf "ldapsearch_%s" $username | quote }}
|
||||||
|
password: {{ $password | quote }}
|
||||||
|
lastname: "LDAP-Search-User"
|
||||||
|
{{- end }}
|
||||||
|
ldapSystemUsers: []
|
||||||
|
portaltileGroupUserStandard:
|
||||||
|
- 'cn=Domain Users,cn=groups,{{ .Values.ldap.baseDn }}'
|
||||||
|
- 'cn=Domain Users,cn=groups,{{ .Values.ldap.baseDn }}'
|
||||||
|
portaltileGroupUserAdmin:
|
||||||
|
- 'cn=Domain Admins,cn=groups,{{ .Values.ldap.baseDn }}'
|
||||||
|
- 'cn=Support,cn=groups,{{ .Values.ldap.baseDn }}'
|
||||||
|
portaltileGroupUserAll:
|
||||||
|
- 'cn=Domain Admins,cn=groups,{{ .Values.ldap.baseDn }}'
|
||||||
|
- 'cn=Domain Users,cn=groups,{{ .Values.ldap.baseDn }}'
|
||||||
|
portaltileGroupGroupware:
|
||||||
|
- 'cn=managed-by-attribute-Groupware,cn=groups,{{ .Values.ldap.baseDn }}'
|
||||||
|
portaltileGroupFileshare:
|
||||||
|
- 'cn=managed-by-attribute-Fileshare,cn=groups,{{ .Values.ldap.baseDn }}'
|
||||||
|
portaltileGroupManagementProject:
|
||||||
|
- 'cn=managed-by-attribute-Projectmanagement,cn=groups,{{ .Values.ldap.baseDn }}'
|
||||||
|
portaltileGroupManagementKnowledge:
|
||||||
|
- 'cn=managed-by-attribute-Knowledgemanagement,cn=groups,{{ .Values.ldap.baseDn }}'
|
||||||
|
portaltileGroupManagementLearn:
|
||||||
|
- 'cn=managed-by-attribute-Learnmanagement,cn=groups,{{ .Values.ldap.baseDn }}'
|
||||||
|
portaltileGroupLiveCollaboration:
|
||||||
|
- 'cn=managed-by-attribute-Livecollaboration,cn=groups,{{ .Values.ldap.baseDn }}'
|
||||||
|
portaltileGroupVideoconference:
|
||||||
|
- 'cn=managed-by-attribute-Videoconference,cn=groups,{{ .Values.ldap.baseDn }}'
|
||||||
|
systemInformation:
|
||||||
|
releaseVersion: "Release: {{ .Values.global.systemInformation.releaseVersion }}"
|
||||||
|
{{- if .Values.functional.admin.portal.deploymentTimestamp.enabled }}
|
||||||
|
deployDate: "Deployed: {{ now | date "2006-01-02T15:04:05-0700" }}"
|
||||||
|
{{- else }}
|
||||||
|
deployDate: false
|
||||||
|
{{- end }}
|
||||||
|
# In openDesk the external memcache does not expect a username to be set. Overwriting
|
||||||
|
# the default username of `selfservice` is part of the customizing:
|
||||||
|
nubusUmcServer:
|
||||||
|
memcached:
|
||||||
|
auth:
|
||||||
|
username: ""
|
||||||
|
|
||||||
nubusUmcServer:
|
nubusUmcServer:
|
||||||
postgresql:
|
postgresql:
|
||||||
@@ -258,12 +444,26 @@ nubusUmcServer:
|
|||||||
smtp:
|
smtp:
|
||||||
credentialSecret:
|
credentialSecret:
|
||||||
name: "ums-umc-server-smtp-credentials-custom"
|
name: "ums-umc-server-smtp-credentials-custom"
|
||||||
|
ingress:
|
||||||
|
certManager:
|
||||||
|
enabled: false
|
||||||
|
tls:
|
||||||
|
enabled: {{ .Values.ingress.tls.enabled }}
|
||||||
|
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
||||||
|
|
||||||
nubusUmcGateway:
|
nubusUmcGateway:
|
||||||
umcGateway:
|
umcGateway:
|
||||||
umcHtmlTitle: "openDesk Portal"
|
umcHtmlTitle: "openDesk Portal"
|
||||||
|
ingress:
|
||||||
|
certManager:
|
||||||
|
enabled: false
|
||||||
|
tls:
|
||||||
|
enabled: {{ .Values.ingress.tls.enabled }}
|
||||||
|
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
||||||
|
|
||||||
nubusKeycloakBootstrap:
|
nubusKeycloakBootstrap:
|
||||||
|
additionalAnnotations:
|
||||||
|
argocd.argoproj.io/hook: "Sync"
|
||||||
keycloak:
|
keycloak:
|
||||||
auth:
|
auth:
|
||||||
username: "kcadmin"
|
username: "kcadmin"
|
||||||
@@ -277,6 +477,11 @@ nubusKeycloakBootstrap:
|
|||||||
twoFactorAuthentication:
|
twoFactorAuthentication:
|
||||||
enabled: true
|
enabled: true
|
||||||
group: "2fa-users"
|
group: "2fa-users"
|
||||||
|
ldap:
|
||||||
|
auth:
|
||||||
|
bindDn: {{ printf "uid=ldapsearch_keycloak,cn=users,%s" .Values.ldap.baseDn }}
|
||||||
|
credentialSecret:
|
||||||
|
name: "ums-keycloak-bootstrap-ldap-opendesk-credentials"
|
||||||
|
|
||||||
# Credential secrets for accessing customer supplied services
|
# Credential secrets for accessing customer supplied services
|
||||||
extraSecrets:
|
extraSecrets:
|
||||||
@@ -309,15 +514,14 @@ extraSecrets:
|
|||||||
umcKeycloakExtensionsDatabasePassword: {{ .Values.databases.keycloakExtension.password | default .Values.secrets.postgresql.keycloakExtensionUser | quote }}
|
umcKeycloakExtensionsDatabasePassword: {{ .Values.databases.keycloakExtension.password | default .Values.secrets.postgresql.keycloakExtensionUser | quote }}
|
||||||
- name: "ums-keycloak-extensions-smtp-opendesk-credentials"
|
- name: "ums-keycloak-extensions-smtp-opendesk-credentials"
|
||||||
stringData:
|
stringData:
|
||||||
umcKeycloakExtensionsSmtpPassword: {{ .Values.smtp.password | quote }}
|
umcKeycloakExtensionsSmtpPassword: ""
|
||||||
- name: "ums-portal-server-minio-opendesk-credentials"
|
- name: "ums-keycloak-bootstrap-ldap-opendesk-credentials"
|
||||||
stringData:
|
stringData:
|
||||||
access-key-id: {{ .Values.objectstores.nubus.username | quote }}
|
password: {{ .Values.secrets.nubus.ldapSearch.keycloak | quote }}
|
||||||
secret-key-id: {{ .Values.objectstores.nubus.secretKey | default .Values.secrets.minio.umsUser | quote }}
|
- name: "ums-portal-server-minio-opendesk-credentials"
|
||||||
- name: "ums-portal-listener-minio-opendesk-credentials"
|
|
||||||
stringData:
|
stringData:
|
||||||
access-key-id: {{ .Values.objectstores.nubus.username | quote }}
|
access-key-id: {{ .Values.objectstores.nubus.username | quote }}
|
||||||
secret-key-id: {{ .Values.objectstores.nubus.secretKey | default .Values.secrets.minio.umsUser | quote }}
|
secret-key-id: {{ .Values.objectstores.nubus.secretKey | default .Values.secrets.minio.umsUser | quote }}
|
||||||
- name: "ums-umc-server-smtp-credentials-custom"
|
- name: "ums-umc-server-smtp-credentials-custom"
|
||||||
stringData:
|
stringData:
|
||||||
password: {{ .Values.smtp.password | quote }}
|
password: ""
|
||||||
|
|||||||
@@ -1,35 +1,130 @@
|
|||||||
# SPDX-FileCopyrightText: 2024 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
{{/*
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
---
|
---
|
||||||
keycloak:
|
keycloak:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
containerSecurityContext:
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
capabilities:
|
||||||
|
drop:
|
||||||
|
- "ALL"
|
||||||
|
enabled: true
|
||||||
|
runAsUser: 1000
|
||||||
|
runAsGroup: 1000
|
||||||
|
seccompProfile:
|
||||||
|
type: "RuntimeDefault"
|
||||||
|
readOnlyRootFilesystem: false
|
||||||
|
runAsNonRoot: true
|
||||||
|
seLinuxOptions:
|
||||||
|
{{ .Values.seLinuxOptions.umsKeycloak | toYaml | nindent 6 }}
|
||||||
|
imagePullSecrets:
|
||||||
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
podAnnotations:
|
podAnnotations:
|
||||||
intents.otterize.com/service-name: "ums-keycloak"
|
intents.otterize.com/service-name: "ums-keycloak"
|
||||||
replicaCount: {{ .Values.replicas.keycloak }}
|
replicaCount: {{ .Values.replicas.keycloak }}
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.umsKeycloak | toYaml | nindent 4 }}
|
{{ .Values.resources.umsKeycloak | toYaml | nindent 4 }}
|
||||||
|
|
||||||
guardian:
|
nubusGuardian:
|
||||||
authorizationApi:
|
authorizationApi:
|
||||||
|
imagePullSecrets:
|
||||||
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 6 }}
|
||||||
podAnnotations:
|
podAnnotations:
|
||||||
intents.otterize.com/service-name: "ums-guardian-authorization-api"
|
intents.otterize.com/service-name: "ums-guardian-authorization-api"
|
||||||
|
podSecurityContext:
|
||||||
|
fsGroup: 1000
|
||||||
|
fsGroupChangePolicy: "Always"
|
||||||
|
replicaCount: {{ .Values.replicas.umsGuardianAuthorizationApi }}
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.umsGuardianAuthorizationApi | toYaml | nindent 6 }}
|
{{ .Values.resources.umsGuardianAuthorizationApi | toYaml | nindent 6 }}
|
||||||
|
securityContext:
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
capabilities:
|
||||||
|
drop:
|
||||||
|
- ALL
|
||||||
|
privileged: false
|
||||||
|
readOnlyRootFilesystem: true
|
||||||
|
runAsGroup: 1000
|
||||||
|
runAsNonRoot: true
|
||||||
|
runAsUser: 1000
|
||||||
|
seccompProfile:
|
||||||
|
type: RuntimeDefault
|
||||||
|
seLinuxOptions:
|
||||||
|
{{ .Values.seLinuxOptions.umsGuardianAuthorizationApi | toYaml | nindent 8 }}
|
||||||
managementApi:
|
managementApi:
|
||||||
|
imagePullSecrets:
|
||||||
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 6 }}
|
||||||
podAnnotations:
|
podAnnotations:
|
||||||
intents.otterize.com/service-name: "ums-guardian-management-api"
|
intents.otterize.com/service-name: "ums-guardian-management-api"
|
||||||
|
podSecurityContext:
|
||||||
|
fsGroup: 1000
|
||||||
|
fsGroupChangePolicy: "Always"
|
||||||
|
replicaCount: {{ .Values.replicas.umsGuardianManagementApi }}
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.umsGuardianManagementApi | toYaml | nindent 6 }}
|
{{ .Values.resources.umsGuardianManagementApi | toYaml | nindent 6 }}
|
||||||
|
securityContext:
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
capabilities:
|
||||||
|
drop:
|
||||||
|
- ALL
|
||||||
|
privileged: false
|
||||||
|
readOnlyRootFilesystem: true
|
||||||
|
runAsGroup: 1000
|
||||||
|
runAsNonRoot: true
|
||||||
|
runAsUser: 1000
|
||||||
|
seccompProfile:
|
||||||
|
type: RuntimeDefault
|
||||||
|
seLinuxOptions:
|
||||||
|
{{ .Values.seLinuxOptions.umsGuardianManagementApi | toYaml | nindent 8 }}
|
||||||
managementUi:
|
managementUi:
|
||||||
|
imagePullSecrets:
|
||||||
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 6 }}
|
||||||
podAnnotations:
|
podAnnotations:
|
||||||
intents.otterize.com/service-name: "ums-guardian-management-ui"
|
intents.otterize.com/service-name: "ums-guardian-management-ui"
|
||||||
|
replicaCount: {{ .Values.replicas.umsGuardianManagementUi }}
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.umsGuardianManagementUi | toYaml | nindent 6 }}#
|
{{ .Values.resources.umsGuardianManagementUi | toYaml | nindent 6 }}
|
||||||
|
securityContext:
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
capabilities:
|
||||||
|
drop:
|
||||||
|
- ALL
|
||||||
|
privileged: false
|
||||||
|
readOnlyRootFilesystem: true
|
||||||
|
runAsGroup: 1000
|
||||||
|
runAsNonRoot: true
|
||||||
|
runAsUser: 1000
|
||||||
|
seccompProfile:
|
||||||
|
type: RuntimeDefault
|
||||||
|
seLinuxOptions:
|
||||||
|
{{ .Values.seLinuxOptions.umsGuardianManagementUi | toYaml | nindent 8 }}
|
||||||
openPolicyAgent:
|
openPolicyAgent:
|
||||||
|
imagePullSecrets:
|
||||||
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 6 }}
|
||||||
|
podSecurityContext:
|
||||||
|
fsGroup: 1000
|
||||||
|
fsGroupChangePolicy: "Always"
|
||||||
podAnnotations:
|
podAnnotations:
|
||||||
intents.otterize.com/service-name: "ums-ums-open-policy-agent"
|
intents.otterize.com/service-name: "ums-ums-open-policy-agent"
|
||||||
|
replicaCount: {{ .Values.replicas.umsGuardianOpenPolicyAgent }}
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.umsOpenPolicyAgent | toYaml | nindent 6 }}
|
{{ .Values.resources.umsOpenPolicyAgent | toYaml | nindent 6 }}
|
||||||
|
securityContext:
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
capabilities:
|
||||||
|
drop:
|
||||||
|
- ALL
|
||||||
|
privileged: false
|
||||||
|
readOnlyRootFilesystem: true
|
||||||
|
runAsGroup: 1000
|
||||||
|
runAsNonRoot: true
|
||||||
|
runAsUser: 1000
|
||||||
|
seccompProfile:
|
||||||
|
type: RuntimeDefault
|
||||||
|
seLinuxOptions:
|
||||||
|
{{ .Values.seLinuxOptions.umsGuardianOpenPolicyAgent | toYaml | nindent 8 }}
|
||||||
provisioning:
|
provisioning:
|
||||||
# Using openDesk keycloak provisioning
|
# Using openDesk keycloak provisioning
|
||||||
enabled: false
|
enabled: false
|
||||||
@@ -37,9 +132,24 @@ guardian:
|
|||||||
nubusNotificationsApi:
|
nubusNotificationsApi:
|
||||||
additionalAnnotations:
|
additionalAnnotations:
|
||||||
intents.otterize.com/service-name: "ums-notifications-api"
|
intents.otterize.com/service-name: "ums-notifications-api"
|
||||||
|
containerSecurityContext:
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
capabilities:
|
||||||
|
drop:
|
||||||
|
- "ALL"
|
||||||
|
enabled: true
|
||||||
|
runAsUser: 1000
|
||||||
|
runAsGroup: 1000
|
||||||
|
seccompProfile:
|
||||||
|
type: "RuntimeDefault"
|
||||||
|
readOnlyRootFilesystem: true
|
||||||
|
runAsNonRoot: true
|
||||||
|
seLinuxOptions:
|
||||||
|
{{ .Values.seLinuxOptions.umsNotificationsApi | toYaml | nindent 6 }}
|
||||||
|
imagePullSecrets:
|
||||||
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
serviceAccount:
|
serviceAccount:
|
||||||
annotations:
|
create: true
|
||||||
intended.usage: "compliance"
|
|
||||||
replicaCount: {{ .Values.replicas.umsNotificationsApi }}
|
replicaCount: {{ .Values.replicas.umsNotificationsApi }}
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.umsNotificationsApi | toYaml | nindent 4 }}
|
{{ .Values.resources.umsNotificationsApi | toYaml | nindent 4 }}
|
||||||
@@ -47,7 +157,67 @@ nubusNotificationsApi:
|
|||||||
nubusUmcServer:
|
nubusUmcServer:
|
||||||
additionalAnnotations:
|
additionalAnnotations:
|
||||||
intents.otterize.com/service-name: "ums-umc-server"
|
intents.otterize.com/service-name: "ums-umc-server"
|
||||||
|
containerSecurityContext:
|
||||||
|
enabled: true
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
capabilities:
|
||||||
|
drop:
|
||||||
|
- "ALL"
|
||||||
|
runAsUser: 0
|
||||||
|
runAsGroup: 0
|
||||||
|
seccompProfile:
|
||||||
|
type: "RuntimeDefault"
|
||||||
|
readOnlyRootFilesystem: true
|
||||||
|
runAsNonRoot: false
|
||||||
|
seLinuxOptions:
|
||||||
|
{{ .Values.seLinuxOptions.umsUmcServer | toYaml | nindent 6 }}
|
||||||
|
containerSecurityContextInit:
|
||||||
|
enabled: true
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
capabilities:
|
||||||
|
drop:
|
||||||
|
- "ALL"
|
||||||
|
runAsUser: 0
|
||||||
|
runAsGroup: 0
|
||||||
|
seccompProfile:
|
||||||
|
type: "RuntimeDefault"
|
||||||
|
readOnlyRootFilesystem: true
|
||||||
|
runAsNonRoot: false
|
||||||
|
seLinuxOptions:
|
||||||
|
{{ .Values.seLinuxOptions.umsUmcServer | toYaml | nindent 6 }}
|
||||||
|
containerSecurityContextSssd:
|
||||||
|
enabled: true
|
||||||
|
allowPrivilegeEscalation: true
|
||||||
|
capabilities:
|
||||||
|
drop:
|
||||||
|
- "ALL"
|
||||||
|
add:
|
||||||
|
- "DAC_OVERRIDE"
|
||||||
|
- "SETGID"
|
||||||
|
- "AUDIT_WRITE"
|
||||||
|
- "SETUID"
|
||||||
|
- "CHOWN"
|
||||||
|
- "SETPCAP"
|
||||||
|
- "FOWNER"
|
||||||
|
- "FSETID"
|
||||||
|
- "KILL"
|
||||||
|
- "MKNOD"
|
||||||
|
- "NET_BIND_SERVICE"
|
||||||
|
- "SYS_CHROOT"
|
||||||
|
runAsUser: 0
|
||||||
|
runAsGroup: 0
|
||||||
|
seccompProfile:
|
||||||
|
type: "RuntimeDefault"
|
||||||
|
readOnlyRootFilesystem: true
|
||||||
|
runAsNonRoot: false
|
||||||
|
seLinuxOptions:
|
||||||
|
{{ .Values.seLinuxOptions.umsUmcServer | toYaml | nindent 6 }}
|
||||||
|
imagePullSecrets:
|
||||||
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
|
proxy:
|
||||||
|
replicaCount: {{ .Values.replicas.umsUmcServerProxy }}
|
||||||
replicaCount: {{ .Values.replicas.umsUmcServer }}
|
replicaCount: {{ .Values.replicas.umsUmcServer }}
|
||||||
|
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.umsUmcServer | toYaml | nindent 4 }}
|
{{ .Values.resources.umsUmcServer | toYaml | nindent 4 }}
|
||||||
selfService:
|
selfService:
|
||||||
@@ -69,39 +239,118 @@ nubusUmcServer:
|
|||||||
|
|
||||||
nubusKeycloakExtensions:
|
nubusKeycloakExtensions:
|
||||||
handler:
|
handler:
|
||||||
|
imagePullSecrets:
|
||||||
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 6 }}
|
||||||
replicaCount: {{ .Values.replicas.umsKeycloakExtensionsHandler }}
|
replicaCount: {{ .Values.replicas.umsKeycloakExtensionsHandler }}
|
||||||
podAnnotations:
|
podAnnotations:
|
||||||
intents.otterize.com/service-name: "ums-keycloak-extensions-handler"
|
intents.otterize.com/service-name: "ums-keycloak-extensions-handler"
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.umsKeycloakExtensionHandler | toYaml | nindent 6 }}
|
{{ .Values.resources.umsKeycloakExtensionHandler | toYaml | nindent 6 }}
|
||||||
|
securityContext:
|
||||||
|
seccompProfile:
|
||||||
|
type: "RuntimeDefault"
|
||||||
|
seLinuxOptions:
|
||||||
|
{{ .Values.seLinuxOptions.umsKeycloakExtensionHandler | toYaml | nindent 8 }}
|
||||||
proxy:
|
proxy:
|
||||||
|
imagePullSecrets:
|
||||||
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 6 }}
|
||||||
replicaCount: {{ .Values.replicas.umsKeycloakExtensionsProxy }}
|
replicaCount: {{ .Values.replicas.umsKeycloakExtensionsProxy }}
|
||||||
podAnnotations:
|
podAnnotations:
|
||||||
intents.otterize.com/service-name: "ums-keycloak-extensions-proxy"
|
intents.otterize.com/service-name: "ums-keycloak-extensions-proxy"
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.umsKeycloakExtensionProxy | toYaml | nindent 6 }}
|
{{ .Values.resources.umsKeycloakExtensionProxy | toYaml | nindent 6 }}
|
||||||
|
securityContext:
|
||||||
|
seccompProfile:
|
||||||
|
type: "RuntimeDefault"
|
||||||
|
seLinuxOptions:
|
||||||
|
{{ .Values.seLinuxOptions.umsKeycloakExtensionHandler | toYaml | nindent 8 }}
|
||||||
|
|
||||||
nubusPortalListener:
|
nubusPortalConsumer:
|
||||||
|
portalConsumer:
|
||||||
|
image:
|
||||||
|
pullSecrets:
|
||||||
|
{{- range .Values.global.imagePullSecrets }}
|
||||||
|
- name: {{ . | quote }}
|
||||||
|
{{- end }}
|
||||||
podAnnotations:
|
podAnnotations:
|
||||||
intents.otterize.com/service-name: "ums-portal-listener"
|
intents.otterize.com/service-name: "ums-portal-consumer"
|
||||||
replicaCount: {{ .Values.replicas.umsPortalListener }}
|
replicaCount: {{ .Values.replicas.umsPortalConsumer }}
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.umsPortalListener | toYaml | nindent 4 }}
|
{{ .Values.resources.umsPortalConsumer | toYaml | nindent 4 }}
|
||||||
|
resourcesWaitForDependency:
|
||||||
|
{{ .Values.resources.umsPortalConsumerDependencies | toYaml | nindent 4 }}
|
||||||
persistence:
|
persistence:
|
||||||
storageClass: {{ .Values.persistence.storageClassNames.RWO | quote }}
|
storageClass: {{ .Values.persistence.storageClassNames.RWO | quote }}
|
||||||
size: {{ .Values.persistence.size.nubus.portalListener | quote }}
|
size: {{ .Values.persistence.size.nubus.portalConsumer | quote }}
|
||||||
|
securityContext:
|
||||||
|
seccompProfile:
|
||||||
|
type: "RuntimeDefault"
|
||||||
|
seLinuxOptions:
|
||||||
|
{{ .Values.seLinuxOptions.umsPortalConsumer | toYaml | nindent 6 }}
|
||||||
|
|
||||||
|
nubusUdmListener:
|
||||||
|
containerSecurityContext:
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
capabilities:
|
||||||
|
drop:
|
||||||
|
- "ALL"
|
||||||
|
enabled: true
|
||||||
|
runAsUser: 102
|
||||||
|
runAsGroup: 65534
|
||||||
|
seccompProfile:
|
||||||
|
type: "RuntimeDefault"
|
||||||
|
readOnlyRootFilesystem: true
|
||||||
|
runAsNonRoot: true
|
||||||
|
seLinuxOptions:
|
||||||
|
{{ .Values.seLinuxOptions.umsUdmListener | toYaml | nindent 6 }}
|
||||||
|
imagePullSecrets:
|
||||||
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
|
replicaCount: {{ .Values.replicas.umsUdmListener }}
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.umsUdmListener | toYaml | nindent 4 }}
|
||||||
|
|
||||||
nubusPortalServer:
|
nubusPortalServer:
|
||||||
additionalAnnotations:
|
additionalAnnotations:
|
||||||
intents.otterize.com/service-name: "ums-portal-server"
|
intents.otterize.com/service-name: "ums-portal-server"
|
||||||
|
containerSecurityContext:
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
capabilities:
|
||||||
|
drop:
|
||||||
|
- "ALL"
|
||||||
|
enabled: true
|
||||||
|
runAsUser: 1000
|
||||||
|
runAsGroup: 1000
|
||||||
|
seccompProfile:
|
||||||
|
type: "RuntimeDefault"
|
||||||
|
readOnlyRootFilesystem: true
|
||||||
|
runAsNonRoot: true
|
||||||
|
seLinuxOptions:
|
||||||
|
{{ .Values.seLinuxOptions.umsPortalServer | toYaml | nindent 6 }}
|
||||||
|
imagePullSecrets:
|
||||||
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
serviceAccount:
|
serviceAccount:
|
||||||
annotations:
|
create: true
|
||||||
intended.usage: "compliance"
|
|
||||||
replicaCount: {{ .Values.replicas.umsPortalServer }}
|
replicaCount: {{ .Values.replicas.umsPortalServer }}
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.umsPortalServer | toYaml | nindent 4 }}
|
{{ .Values.resources.umsPortalServer | toYaml | nindent 4 }}
|
||||||
|
|
||||||
nubusLdapNotifier:
|
nubusLdapNotifier:
|
||||||
|
containerSecurityContext:
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
capabilities:
|
||||||
|
drop:
|
||||||
|
- "ALL"
|
||||||
|
enabled: true
|
||||||
|
runAsUser: 101
|
||||||
|
runAsGroup: 102
|
||||||
|
seccompProfile:
|
||||||
|
type: "RuntimeDefault"
|
||||||
|
readOnlyRootFilesystem: true
|
||||||
|
runAsNonRoot: true
|
||||||
|
seLinuxOptions:
|
||||||
|
{{ .Values.seLinuxOptions.umsLdapNotifier | toYaml | nindent 6 }}
|
||||||
|
imagePullSecrets:
|
||||||
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
podAnnotations:
|
podAnnotations:
|
||||||
intents.otterize.com/service-name: "ums-ldap-notifier"
|
intents.otterize.com/service-name: "ums-ldap-notifier"
|
||||||
replicaCount: {{ .Values.replicas.umsLdapNotifier }}
|
replicaCount: {{ .Values.replicas.umsLdapNotifier }}
|
||||||
@@ -109,23 +358,95 @@ nubusLdapNotifier:
|
|||||||
{{ .Values.resources.umsLdapNotifier | toYaml | nindent 4 }}
|
{{ .Values.resources.umsLdapNotifier | toYaml | nindent 4 }}
|
||||||
|
|
||||||
nubusLdapServer:
|
nubusLdapServer:
|
||||||
|
imagePullSecrets:
|
||||||
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
|
highAvailabilityMode: false
|
||||||
|
replicaCountPrimary: 1
|
||||||
|
replicaCountSecondary: 0 # {{ .Values.replicas.umsLdapServerSecondary }}
|
||||||
|
replicaCountProxy: 0 # {{ .Values.replicas.umsLdapServerProxy }}
|
||||||
additionalAnnotations:
|
additionalAnnotations:
|
||||||
intents.otterize.com/service-name: "ums-ldap-server"
|
intents.otterize.com/service-name: "ums-ldap-server"
|
||||||
serviceAccount:
|
serviceAccount:
|
||||||
annotations:
|
create: true
|
||||||
intended.usage: "compliance"
|
|
||||||
initResources: {{ .Values.resources.umsLdapServer | toYaml | nindent 4 }}
|
initResources: {{ .Values.resources.umsLdapServer | toYaml | nindent 4 }}
|
||||||
resources: {{ .Values.resources.umsLdapServer | toYaml | nindent 4 }}
|
resources: {{ .Values.resources.umsLdapServer | toYaml | nindent 4 }}
|
||||||
persistence:
|
persistence:
|
||||||
storageClass: {{ .Values.persistence.storageClassNames.RWO | quote }}
|
storageClass: {{ .Values.persistence.storageClassNames.RWO | quote }}
|
||||||
size: {{ .Values.persistence.size.nubus.ldapServerData | quote }}
|
size: {{ .Values.persistence.size.nubus.ldapServerData | quote }}
|
||||||
|
extraVolumes:
|
||||||
|
- name: "migration-scripts"
|
||||||
|
secret:
|
||||||
|
secretName: "ums-ldap-server-migration"
|
||||||
|
defaultMode: 0555
|
||||||
|
extraVolumeMounts:
|
||||||
|
- name: "migration-scripts"
|
||||||
|
mountPath: "/entrypoint.d/30-purge.sh"
|
||||||
|
subPath: "30-purge.sh"
|
||||||
|
- name: "migration-scripts"
|
||||||
|
mountPath: "/entrypoint.d/95-slapadd-24-ldiff.sh"
|
||||||
|
subPath: "95-slapadd-24-ldif.sh"
|
||||||
|
extraSecrets:
|
||||||
|
- name: "ums-ldap-server-migration"
|
||||||
|
stringData:
|
||||||
|
30-purge.sh: |
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
me=$(basename "$0")
|
||||||
|
echo "- Running ${me}"
|
||||||
|
if [ -f /var/lib/univention-ldap/ldap-24-export.ldif ]; then
|
||||||
|
echo "- Cleaning up /var/lib/univention-ldap."
|
||||||
|
cd /var/lib/univention-ldap
|
||||||
|
rm -rf internal
|
||||||
|
rm -rf ldap
|
||||||
|
ls -l
|
||||||
|
else
|
||||||
|
echo "- File /var/lib/univention-ldap/ldap-24-export.ldif not found."
|
||||||
|
fi
|
||||||
|
95-slapadd-24-ldif.sh: |
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
me=$(basename "$0")
|
||||||
|
echo "- Running ${me}"
|
||||||
|
ls -l /var/lib/univention-ldap
|
||||||
|
if [ -f /var/lib/univention-ldap/ldap-24-export.ldif ]; then
|
||||||
|
echo "- slapadd-ing /var/lib/univention-ldap/ldap-24-export.ldif"
|
||||||
|
ls -l /var/lib/univention-ldap/
|
||||||
|
rm -rf /var/lib/univention-ldap/ldap
|
||||||
|
rm -rf /var/lib/univention-ldap/internal
|
||||||
|
echo "- deleted /var/lib/univention-ldap/ldap and /var/lib/univention-ldap/internal"
|
||||||
|
ls -l /var/lib/univention-ldap/
|
||||||
|
mkdir /var/lib/univention-ldap/ldap
|
||||||
|
mkdir /var/lib/univention-ldap/internal
|
||||||
|
echo "- created /var/lib/univention-ldap/ldap and /var/lib/univention-ldap/internal"
|
||||||
|
ls -l /var/lib/univention-ldap/
|
||||||
|
/usr/sbin/slapadd -v -l /var/lib/univention-ldap/ldap-24-export.ldif
|
||||||
|
echo "- slapadd executed"
|
||||||
|
ls -l /var/lib/univention-ldap/
|
||||||
|
mv /var/lib/univention-ldap/ldap-24-export.ldif /var/lib/univention-ldap/ldap-24-export.ldif-imported
|
||||||
|
echo "- import file renamed"
|
||||||
|
ls -l /var/lib/univention-ldap/
|
||||||
|
else
|
||||||
|
echo "- File /var/lib/univention-ldap/ldap-24-export.ldif not found."
|
||||||
|
fi
|
||||||
nubusPortalFrontend:
|
nubusPortalFrontend:
|
||||||
additionalAnnotations:
|
additionalAnnotations:
|
||||||
intents.otterize.com/service-name: "ums-portal-frontend"
|
intents.otterize.com/service-name: "ums-portal-frontend"
|
||||||
|
containerSecurityContext:
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
capabilities:
|
||||||
|
drop:
|
||||||
|
- "ALL"
|
||||||
|
enabled: true
|
||||||
|
runAsUser: 1000
|
||||||
|
runAsGroup: 1000
|
||||||
|
seccompProfile:
|
||||||
|
type: "RuntimeDefault"
|
||||||
|
readOnlyRootFilesystem: true
|
||||||
|
runAsNonRoot: true
|
||||||
|
seLinuxOptions:
|
||||||
|
{{ .Values.seLinuxOptions.umsPortalFrontend | toYaml | nindent 6 }}
|
||||||
|
imagePullSecrets:
|
||||||
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
serviceAccount:
|
serviceAccount:
|
||||||
annotations:
|
create: true
|
||||||
intended.usage: "compliance"
|
|
||||||
replicaCount: {{ .Values.replicas.umsPortalFrontend }}
|
replicaCount: {{ .Values.replicas.umsPortalFrontend }}
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.umsPortalFrontend | toYaml | nindent 4 }}
|
{{ .Values.resources.umsPortalFrontend | toYaml | nindent 4 }}
|
||||||
@@ -137,27 +458,69 @@ nubusPortalFrontend:
|
|||||||
backgroundImage: {{ .Values.theme.imagery.logoPortalBackgroundSvgB64 | toJson }}
|
backgroundImage: {{ .Values.theme.imagery.logoPortalBackgroundSvgB64 | toJson }}
|
||||||
|
|
||||||
nubusStackDataUms:
|
nubusStackDataUms:
|
||||||
|
containerSecurityContext:
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
capabilities:
|
||||||
|
drop:
|
||||||
|
- "ALL"
|
||||||
|
enabled: true
|
||||||
|
runAsUser: 1000
|
||||||
|
runAsGroup: 1000
|
||||||
|
seccompProfile:
|
||||||
|
type: "RuntimeDefault"
|
||||||
|
readOnlyRootFilesystem: true
|
||||||
|
runAsNonRoot: true
|
||||||
|
seLinuxOptions:
|
||||||
|
{{ .Values.seLinuxOptions.umsStackDataUms | toYaml | nindent 6 }}
|
||||||
|
pullSecrets:
|
||||||
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
additionalAnnotations:
|
additionalAnnotations:
|
||||||
intents.otterize.com/service-name: "ums-stack-data-ums"
|
intents.otterize.com/service-name: "ums-stack-data-ums"
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.umsStackDataUms | toYaml | nindent 4 }}
|
{{ .Values.resources.umsStackDataUms | toYaml | nindent 4 }}
|
||||||
|
|
||||||
nubusStackDataSwp:
|
nubusSelfServiceConsumer:
|
||||||
additionalAnnotations:
|
containerSecurityContext:
|
||||||
intents.otterize.com/service-name: "ums-stack-data-swp"
|
allowPrivilegeEscalation: false
|
||||||
resources:
|
capabilities:
|
||||||
{{ .Values.resources.umsStackDataSwp | toYaml | nindent 4 }}
|
drop:
|
||||||
|
- "ALL"
|
||||||
nubusSelfServiceListener:
|
enabled: true
|
||||||
|
runAsUser: 1000
|
||||||
|
runAsGroup: 1000
|
||||||
|
seccompProfile:
|
||||||
|
type: "RuntimeDefault"
|
||||||
|
readOnlyRootFilesystem: true
|
||||||
|
runAsNonRoot: true
|
||||||
|
seLinuxOptions:
|
||||||
|
{{ .Values.seLinuxOptions.umsSelfserviceConsumer | toYaml | nindent 6 }}
|
||||||
|
imagePullSecrets:
|
||||||
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
podAnnotations:
|
podAnnotations:
|
||||||
intents.otterize.com/service-name: "ums-selfservice-listener"
|
intents.otterize.com/service-name: "ums-selfservice-listener"
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.umsSelfserviceListener | toYaml | nindent 4 }}
|
{{ .Values.resources.umsSelfserviceConsumer | toYaml | nindent 4 }}
|
||||||
replicaCount: {{ .Values.replicas.umsSelfserviceListener }}
|
replicaCount: {{ .Values.replicas.umsSelfserviceConsumer }}
|
||||||
|
|
||||||
nubusUdmRestApi:
|
nubusUdmRestApi:
|
||||||
additionalAnnotations:
|
additionalAnnotations:
|
||||||
intents.otterize.com/service-name: "ums-udm-rest-api"
|
intents.otterize.com/service-name: "ums-udm-rest-api"
|
||||||
|
containerSecurityContext:
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
capabilities:
|
||||||
|
drop:
|
||||||
|
- "ALL"
|
||||||
|
enabled: true
|
||||||
|
runAsUser: 1000
|
||||||
|
runAsGroup: 1000
|
||||||
|
seccompProfile:
|
||||||
|
type: "RuntimeDefault"
|
||||||
|
readOnlyRootFilesystem: true
|
||||||
|
runAsNonRoot: true
|
||||||
|
seLinuxOptions:
|
||||||
|
{{ .Values.seLinuxOptions.umsUdmRestApi | toYaml | nindent 6 }}
|
||||||
|
imagePullSecrets:
|
||||||
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
serviceAccount:
|
serviceAccount:
|
||||||
annotations:
|
annotations:
|
||||||
intended.usage: "compliance"
|
intended.usage: "compliance"
|
||||||
@@ -168,20 +531,43 @@ nubusUdmRestApi:
|
|||||||
replicaCount: {{ .Values.replicas.umsUdmRestApi }}
|
replicaCount: {{ .Values.replicas.umsUdmRestApi }}
|
||||||
|
|
||||||
nubusUmcGateway:
|
nubusUmcGateway:
|
||||||
|
containerSecurityContext:
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
capabilities:
|
||||||
|
drop:
|
||||||
|
- "ALL"
|
||||||
|
enabled: true
|
||||||
|
runAsUser: 1000
|
||||||
|
runAsGroup: 1000
|
||||||
|
seccompProfile:
|
||||||
|
type: "RuntimeDefault"
|
||||||
|
readOnlyRootFilesystem: true
|
||||||
|
runAsNonRoot: true
|
||||||
|
seLinuxOptions:
|
||||||
|
{{ .Values.seLinuxOptions.umsUmcGateway | toYaml | nindent 6 }}
|
||||||
|
imagePullSecrets:
|
||||||
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
replicaCount: {{ .Values.replicas.umsUmcGateway }}
|
replicaCount: {{ .Values.replicas.umsUmcGateway }}
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.umsUmcGateway | toYaml | nindent 4 }}
|
{{ .Values.resources.umsUmcGateway | toYaml | nindent 4 }}
|
||||||
extraVolumes:
|
|
||||||
- name: "entrypoint-swp-patches"
|
|
||||||
configMap:
|
|
||||||
name: "ums-stack-data-swp-umc-gateway-entrypoint"
|
|
||||||
defaultMode: 0555
|
|
||||||
extraVolumeMounts:
|
|
||||||
- name: "entrypoint-swp-patches"
|
|
||||||
mountPath: "/entrypoint.d/90-swp.sh"
|
|
||||||
subPath: "90-swp.sh"
|
|
||||||
|
|
||||||
nubusKeycloakBootstrap:
|
nubusKeycloakBootstrap:
|
||||||
|
containerSecurityContext:
|
||||||
|
enabled: true
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
capabilities:
|
||||||
|
drop:
|
||||||
|
- "ALL"
|
||||||
|
readOnlyRootFilesystem: false
|
||||||
|
runAsGroup: 1000
|
||||||
|
runAsNonRoot: true
|
||||||
|
runAsUser: 1000
|
||||||
|
seccompProfile:
|
||||||
|
type: "RuntimeDefault"
|
||||||
|
seLinuxOptions:
|
||||||
|
{{ .Values.seLinuxOptions.umsKeycloakBootstrap | toYaml | nindent 6 }}
|
||||||
|
imagePullSecrets:
|
||||||
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
podAnnotations:
|
podAnnotations:
|
||||||
intents.otterize.com/service-name: "ums-keycloak-bootstrap"
|
intents.otterize.com/service-name: "ums-keycloak-bootstrap"
|
||||||
serviceAccount:
|
serviceAccount:
|
||||||
@@ -191,39 +577,81 @@ nubusKeycloakBootstrap:
|
|||||||
{{ .Values.resources.umsKeycloakBootstrap | toYaml | nindent 4 }}
|
{{ .Values.resources.umsKeycloakBootstrap | toYaml | nindent 4 }}
|
||||||
|
|
||||||
nubusProvisioning:
|
nubusProvisioning:
|
||||||
|
containerSecurityContext:
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
capabilities:
|
||||||
|
drop:
|
||||||
|
- "ALL"
|
||||||
|
enabled: true
|
||||||
|
runAsUser: 1000
|
||||||
|
runAsGroup: 1000
|
||||||
|
seccompProfile:
|
||||||
|
type: "RuntimeDefault"
|
||||||
|
readOnlyRootFilesystem: true
|
||||||
|
runAsNonRoot: true
|
||||||
|
seLinuxOptions:
|
||||||
|
{{ .Values.seLinuxOptions.umsProvisioning | toYaml | nindent 6 }}
|
||||||
|
imagePullSecrets:
|
||||||
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
|
replicaCount:
|
||||||
|
dispatcher: {{ .Values.replicas.umsProvisioningDispatcher }}
|
||||||
|
udmTransformer: {{ .Values.replicas.umsProvisioningUdmTransformer }}
|
||||||
|
prefill: {{ .Values.replicas.umsProvisioningPrefill }}
|
||||||
|
api: {{ .Values.replicas.umsProvisioningApi }}
|
||||||
|
|
||||||
serviceAccount:
|
serviceAccount:
|
||||||
annotations:
|
create: true
|
||||||
intended.usage: "compliance"
|
|
||||||
nats:
|
nats:
|
||||||
|
config:
|
||||||
|
cluster:
|
||||||
|
replicas: {{ .Values.replicas.umsProvisioningNats }}
|
||||||
|
containerSecurityContext:
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
capabilities:
|
||||||
|
drop:
|
||||||
|
- "ALL"
|
||||||
|
enabled: true
|
||||||
|
runAsUser: 1000
|
||||||
|
runAsGroup: 1000
|
||||||
|
seccompProfile:
|
||||||
|
type: "RuntimeDefault"
|
||||||
|
readOnlyRootFilesystem: true
|
||||||
|
runAsNonRoot: true
|
||||||
|
seLinuxOptions:
|
||||||
|
{{ .Values.seLinuxOptions.umsProvisioningNats | toYaml | nindent 8 }}
|
||||||
|
imagePullSecrets:
|
||||||
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 6 }}
|
||||||
|
persistence:
|
||||||
|
size: {{ .Values.persistence.size.nubus.provisioningNats }}
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.nubusProvisioning.nats | toYaml | nindent 6 }}
|
{{ .Values.resources.umsProvisioningNats | toYaml | nindent 6 }}
|
||||||
additionalAnnotations:
|
additionalAnnotations:
|
||||||
intents.otterize.com/service-name: "ums-provisioning-nats"
|
intents.otterize.com/service-name: "ums-provisioning-nats"
|
||||||
serviceAccount:
|
serviceAccount:
|
||||||
annotations:
|
create: true
|
||||||
intended.usage: "compliance"
|
|
||||||
api:
|
api:
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.nubusProvisioning.api | toYaml | nindent 6 }}
|
{{ .Values.resources.umsProvisioningApi | toYaml | nindent 6 }}
|
||||||
additionalAnnotations:
|
additionalAnnotations:
|
||||||
intents.otterize.com/service-name: "ums-provisioning-api"
|
intents.otterize.com/service-name: "ums-provisioning-api"
|
||||||
dispatcher:
|
dispatcher:
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.nubusProvisioning.dispatcher | toYaml | nindent 6 }}
|
{{ .Values.resources.umsProvisioningDispatcher | toYaml | nindent 6 }}
|
||||||
additionalAnnotations:
|
additionalAnnotations:
|
||||||
intents.otterize.com/service-name: "ums-provisioning-dispatcher"
|
intents.otterize.com/service-name: "ums-provisioning-dispatcher"
|
||||||
prefill:
|
prefill:
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.nubusProvisioning.prefill | toYaml | nindent 6 }}
|
{{ .Values.resources.umsProvisioningPrefill | toYaml | nindent 6 }}
|
||||||
additionalAnnotations:
|
additionalAnnotations:
|
||||||
intents.otterize.com/service-name: "ums-provisioning-prefill"
|
intents.otterize.com/service-name: "ums-provisioning-prefill"
|
||||||
registerConsumers:
|
registerConsumers:
|
||||||
resources:
|
|
||||||
{{ .Values.resources.nubusProvisioning.registerConsumers | toYaml | nindent 6 }}
|
|
||||||
additionalAnnotations:
|
additionalAnnotations:
|
||||||
intents.otterize.com/service-name: "ums-provisioning-register-consumers"
|
intents.otterize.com/service-name: "ums-provisioning-register-consumers"
|
||||||
udmTransformer:
|
udmTransformer:
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.nubusProvisioning.udmTransformer | toYaml | nindent 6 }}
|
{{ .Values.resources.umsProvisioningUdmTransformer | toYaml | nindent 6 }}
|
||||||
additionalAnnotations:
|
additionalAnnotations:
|
||||||
intents.otterize.com/service-name: "ums-provisioning-udm-transformer"
|
intents.otterize.com/service-name: "ums-provisioning-udm-transformer"
|
||||||
|
resources:
|
||||||
|
registerConsumers:
|
||||||
|
{{ .Values.resources.umsProvisioningRegisterConsumers | toYaml | nindent 6 }}
|
||||||
|
|||||||
@@ -1,241 +1,260 @@
|
|||||||
# SPDX-FileCopyrightText: 2024 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
{{/*
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
---
|
---
|
||||||
|
global:
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
keycloak:
|
keycloak:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusKeycloak.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusKeycloak.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusKeycloak.repository }}
|
repository: {{ .Values.images.nubusKeycloak.repository }}
|
||||||
tag: {{ .Values.images.nubusKeycloak.tag }}
|
tag: {{ .Values.images.nubusKeycloak.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
nubusKeycloakBootstrap:
|
nubusKeycloakBootstrap:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusKeycloakBootstrap.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusKeycloakBootstrap.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusKeycloakBootstrap.repository }}
|
repository: {{ .Values.images.nubusKeycloakBootstrap.repository }}
|
||||||
tag: {{ .Values.images.nubusKeycloakBootstrap.tag }}
|
tag: {{ .Values.images.nubusKeycloakBootstrap.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
nubusKeycloakExtensions:
|
nubusKeycloakExtensions:
|
||||||
handler:
|
handler:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusKeycloakExtensionHandler.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusKeycloakExtensionHandler.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusKeycloakExtensionHandler.repository }}
|
repository: {{ .Values.images.nubusKeycloakExtensionHandler.repository }}
|
||||||
tag: {{ .Values.images.nubusKeycloakExtensionHandler.tag }}
|
tag: {{ .Values.images.nubusKeycloakExtensionHandler.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
proxy:
|
proxy:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusKeycloakExtensionProxy.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusKeycloakExtensionProxy.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusKeycloakExtensionProxy.repository }}
|
repository: {{ .Values.images.nubusKeycloakExtensionProxy.repository }}
|
||||||
tag: {{ .Values.images.nubusKeycloakExtensionProxy.tag }}
|
tag: {{ .Values.images.nubusKeycloakExtensionProxy.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
nubusLdapNotifier:
|
nubusLdapNotifier:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusLdapNotifier.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusLdapNotifier.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusLdapNotifier.repository }}
|
repository: {{ .Values.images.nubusLdapNotifier.repository }}
|
||||||
tag: {{ .Values.images.nubusLdapNotifier.tag }}
|
tag: {{ .Values.images.nubusLdapNotifier.tag }}
|
||||||
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
nubusLdapServer:
|
nubusLdapServer:
|
||||||
ldapServer:
|
ldapServer:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusLdapServer.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusLdapServer.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusLdapServer.repository }}
|
repository: {{ .Values.images.nubusLdapServer.repository }}
|
||||||
tag: {{ .Values.images.nubusLdapServer.tag }}
|
tag: {{ .Values.images.nubusLdapServer.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
dhInitcontainer:
|
dhInitcontainer:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusLdapServerDhInitContainer.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusLdapServerDhInitContainer.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusLdapServerDhInitContainer.repository }}
|
repository: {{ .Values.images.nubusLdapServerDhInitContainer.repository }}
|
||||||
tag: {{ .Values.images.nubusLdapServerDhInitContainer.tag }}
|
tag: {{ .Values.images.nubusLdapServerDhInitContainer.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
waitForDependency:
|
waitForDependency:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusWaitForDependency.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusWaitForDependency.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusWaitForDependency.repository }}
|
repository: {{ .Values.images.nubusWaitForDependency.repository }}
|
||||||
tag: {{ .Values.images.nubusWaitForDependency.tag }}
|
tag: {{ .Values.images.nubusWaitForDependency.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
|
nubusNotificationsApi:
|
||||||
|
image:
|
||||||
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusNotificationsApi.registry | quote }}
|
||||||
|
repository: {{ .Values.images.nubusNotificationsApi.repository }}
|
||||||
|
tag: {{ .Values.images.nubusNotificationsApi.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
|
nubusPortalFrontend:
|
||||||
|
image:
|
||||||
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusPortalFrontend.registry | quote }}
|
||||||
|
repository: {{ .Values.images.nubusPortalFrontend.repository }}
|
||||||
|
tag: {{ .Values.images.nubusPortalFrontend.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
nubusPortalConsumer:
|
nubusPortalConsumer:
|
||||||
portalConsumer:
|
portalConsumer:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusPortalConsumer.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusPortalConsumer.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusPortalConsumer.repository }}
|
repository: {{ .Values.images.nubusPortalConsumer.repository }}
|
||||||
tag: {{ .Values.images.nubusPortalConsumer.tag }}
|
tag: {{ .Values.images.nubusPortalConsumer.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
nubusNotificationsApi:
|
|
||||||
image:
|
|
||||||
registry: {{ .Values.images.nubusNotificationsApi.registry }}
|
|
||||||
repository: {{ .Values.images.nubusNotificationsApi.repository }}
|
|
||||||
tag: {{ .Values.images.nubusNotificationsApi.tag }}
|
|
||||||
|
|
||||||
nubusPortalFrontend:
|
|
||||||
image:
|
|
||||||
registry: {{ .Values.images.nubusPortalFrontend.registry }}
|
|
||||||
repository: {{ .Values.images.nubusPortalFrontend.repository }}
|
|
||||||
tag: {{ .Values.images.nubusPortalFrontend.tag }}
|
|
||||||
|
|
||||||
nubusPortalListener:
|
|
||||||
image:
|
|
||||||
registry: {{ .Values.images.nubusPortalListener.registry }}
|
|
||||||
repository: {{ .Values.images.nubusPortalListener.repository }}
|
|
||||||
tag: {{ .Values.images.nubusPortalListener.tag }}
|
|
||||||
waitForDependency:
|
waitForDependency:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusWaitForDependency.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusWaitForDependency.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusWaitForDependency.repository }}
|
repository: {{ .Values.images.nubusWaitForDependency.repository }}
|
||||||
tag: {{ .Values.images.nubusWaitForDependency.tag }}
|
tag: {{ .Values.images.nubusWaitForDependency.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
nubusPortalServer:
|
nubusPortalServer:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusPortalServer.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusPortalServer.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusPortalServer.repository }}
|
repository: {{ .Values.images.nubusPortalServer.repository }}
|
||||||
tag: {{ .Values.images.nubusPortalServer.tag }}
|
tag: {{ .Values.images.nubusPortalServer.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
nubusProvisioning:
|
nubusProvisioning:
|
||||||
api:
|
api:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusProvisioningEventsAndConsumerApi.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusProvisioningEventsAndConsumerApi.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusProvisioningEventsAndConsumerApi.repository }}
|
repository: {{ .Values.images.nubusProvisioningEventsAndConsumerApi.repository }}
|
||||||
tag: {{ .Values.images.nubusProvisioningEventsAndConsumerApi.tag }}
|
tag: {{ .Values.images.nubusProvisioningEventsAndConsumerApi.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
dispatcher:
|
dispatcher:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusProvisioningDispatcher.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusProvisioningDispatcher.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusProvisioningDispatcher.repository }}
|
repository: {{ .Values.images.nubusProvisioningDispatcher.repository }}
|
||||||
tag: {{ .Values.images.nubusProvisioningDispatcher.tag }}
|
tag: {{ .Values.images.nubusProvisioningDispatcher.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
udmTransformer:
|
udmTransformer:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusProvisioningUdmTransformer.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusProvisioningUdmTransformer.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusProvisioningUdmTransformer.repository }}
|
repository: {{ .Values.images.nubusProvisioningUdmTransformer.repository }}
|
||||||
tag: {{ .Values.images.nubusProvisioningUdmTransformer.tag }}
|
tag: {{ .Values.images.nubusProvisioningUdmTransformer.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
prefill:
|
prefill:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusProvisioningPrefill.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusProvisioningPrefill.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusProvisioningPrefill.repository }}
|
repository: {{ .Values.images.nubusProvisioningPrefill.repository }}
|
||||||
tag: {{ .Values.images.nubusProvisioningPrefill.tag }}
|
tag: {{ .Values.images.nubusProvisioningPrefill.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
registerConsumers:
|
registerConsumers:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusWaitForDependency.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusWaitForDependency.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusWaitForDependency.repository }}
|
repository: {{ .Values.images.nubusWaitForDependency.repository }}
|
||||||
tag: {{ .Values.images.nubusWaitForDependency.tag }}
|
tag: {{ .Values.images.nubusWaitForDependency.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
nats:
|
nats:
|
||||||
nats:
|
nats:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusNats.registry }}
|
registry: {{ coalesce .Values.repositories.image.dockerHub .Values.global.imageRegistry .Values.images.nubusNats.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusNats.repository }}
|
repository: {{ .Values.images.nubusNats.repository }}
|
||||||
tag: {{ .Values.images.nubusNats.tag }}
|
tag: {{ .Values.images.nubusNats.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
reloader:
|
reloader:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusNatsReloader.registry }}
|
registry: {{ coalesce .Values.repositories.image.dockerHub .Values.global.imageRegistry .Values.images.nubusNatsReloader.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusNatsReloader.repository }}
|
repository: {{ .Values.images.nubusNatsReloader.repository }}
|
||||||
tag: {{ .Values.images.nubusNatsReloader.tag }}
|
tag: {{ .Values.images.nubusNatsReloader.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
natsBox:
|
natsBox:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusNatsBox.registry }}
|
registry: {{ coalesce .Values.repositories.image.dockerHub .Values.global.imageRegistry .Values.images.nubusNatsBox.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusNatsBox.repository }}
|
repository: {{ .Values.images.nubusNatsBox.repository }}
|
||||||
tag: {{ .Values.images.nubusNatsBox.tag }}
|
tag: {{ .Values.images.nubusNatsBox.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
nubusProvisioningEventsAndConsumerApi:
|
nubusProvisioningEventsAndConsumerApi:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusProvisioningEventsAndConsumerApi.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusProvisioningEventsAndConsumerApi.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusProvisioningEventsAndConsumerApi.repository }}
|
repository: {{ .Values.images.nubusProvisioningEventsAndConsumerApi.repository }}
|
||||||
tag: {{ .Values.images.nubusProvisioningEventsAndConsumerApi.tag }}
|
tag: {{ .Values.images.nubusProvisioningEventsAndConsumerApi.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
nubusProvisioningPrefill:
|
nubusProvisioningPrefill:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusProvisioningPrefill.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusProvisioningPrefill.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusProvisioningPrefill.repository }}
|
repository: {{ .Values.images.nubusProvisioningPrefill.repository }}
|
||||||
tag: {{ .Values.images.nubusProvisioningPrefill.tag }}
|
tag: {{ .Values.images.nubusProvisioningPrefill.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
nubusUdmListener:
|
nubusUdmListener:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusProvisioningUdmListener.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusProvisioningUdmListener.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusProvisioningUdmListener.repository }}
|
repository: {{ .Values.images.nubusProvisioningUdmListener.repository }}
|
||||||
tag: {{ .Values.images.nubusProvisioningUdmListener.tag }}
|
tag: {{ .Values.images.nubusProvisioningUdmListener.tag }}
|
||||||
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
nubusSelfServiceListener:
|
nubusSelfServiceConsumer:
|
||||||
selfserviceListener:
|
image:
|
||||||
image:
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusSelfServiceConsumer.registry | quote }}
|
||||||
registry: {{ .Values.images.nubusSelfserviceListener.registry }}
|
repository: {{ .Values.images.nubusSelfServiceConsumer.repository }}
|
||||||
repository: {{ .Values.images.nubusSelfserviceListener.repository }}
|
tag: {{ .Values.images.nubusSelfServiceConsumer.tag }}
|
||||||
tag: {{ .Values.images.nubusSelfserviceListener.tag }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
selfserviceInvitation:
|
|
||||||
image:
|
|
||||||
registry: {{ .Values.images.nubusSelfserviceInvitation.registry }}
|
|
||||||
repository: {{ .Values.images.nubusSelfserviceInvitation.repository }}
|
|
||||||
tag: {{ .Values.images.nubusSelfserviceInvitation.tag }}
|
|
||||||
waitForDependency:
|
waitForDependency:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusWaitForDependency.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusWaitForDependency.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusWaitForDependency.repository }}
|
repository: {{ .Values.images.nubusWaitForDependency.repository }}
|
||||||
tag: {{ .Values.images.nubusWaitForDependency.tag }}
|
tag: {{ .Values.images.nubusWaitForDependency.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
nubusUdmRestApi:
|
nubusUdmRestApi:
|
||||||
# oxPlugin:
|
|
||||||
# image:
|
|
||||||
# registry: \{\{ .Values.images.nubusUdmRestApiOxPlugin.registry }}
|
|
||||||
# repository: \{\{ .Values.images.nubusUdmRestApiOxPlugin.repository }}
|
|
||||||
# tag: \{\{ .Values.images.nubusUdmRestApiOxPlugin.tag }}
|
|
||||||
# portalPlugin:
|
|
||||||
# image:
|
|
||||||
# registry: \{\{ .Values.images.nubusUdmRestApiPortalPlugin.registry }}
|
|
||||||
# repository: \{\{ .Values.images.nubusUdmRestApiPortalPlugin.repository }}
|
|
||||||
# tag: \{\{ .Values.images.nubusUdmRestApiPortalPlugin.tag }}
|
|
||||||
udmRestApi:
|
udmRestApi:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusUdmRestApi.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusUdmRestApi.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusUdmRestApi.repository }}
|
repository: {{ .Values.images.nubusUdmRestApi.repository }}
|
||||||
tag: {{ .Values.images.nubusUdmRestApi.tag }}
|
tag: {{ .Values.images.nubusUdmRestApi.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
nubusUmcGateway:
|
nubusUmcGateway:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusUmcGateway.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusUmcGateway.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusUmcGateway.repository }}
|
repository: {{ .Values.images.nubusUmcGateway.repository }}
|
||||||
tag: {{ .Values.images.nubusUmcGateway.tag }}
|
tag: {{ .Values.images.nubusUmcGateway.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
nubusUmcServer:
|
nubusUmcServer:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusUmcServer.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusUmcServer.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusUmcServer.repository }}
|
repository: {{ .Values.images.nubusUmcServer.repository }}
|
||||||
tag: {{ .Values.images.nubusUmcServer.tag }}
|
tag: {{ .Values.images.nubusUmcServer.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
proxy:
|
||||||
|
image:
|
||||||
|
registry: {{ coalesce .Values.repositories.image.dockerHub .Values.global.imageRegistry .Values.images.nubusUmcServerProxy.registry | quote }}
|
||||||
|
repository: {{ .Values.images.nubusUmcServerProxy.repository }}
|
||||||
|
tag: {{ .Values.images.nubusUmcServerProxy.tag }}
|
||||||
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
nubusWaitForDependency:
|
nubusWaitForDependency:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusWaitForDependency.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusWaitForDependency.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusWaitForDependency.repository }}
|
repository: {{ .Values.images.nubusWaitForDependency.repository }}
|
||||||
tag: {{ .Values.images.nubusWaitForDependency.tag }}
|
tag: {{ .Values.images.nubusWaitForDependency.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
|
|
||||||
nubusGuardian:
|
nubusGuardian:
|
||||||
provisioning:
|
provisioning:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusGuardianProvisioning.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusGuardianProvisioning.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusGuardianProvisioning.repository }}
|
repository: {{ .Values.images.nubusGuardianProvisioning.repository }}
|
||||||
tag: {{ .Values.images.nubusGuardianProvisioning.tag }}
|
tag: {{ .Values.images.nubusGuardianProvisioning.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
authorizationApi:
|
authorizationApi:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusGuardianAuthorizationApi.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusGuardianAuthorizationApi.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusGuardianAuthorizationApi.repository }}
|
repository: {{ .Values.images.nubusGuardianAuthorizationApi.repository }}
|
||||||
tag: {{ .Values.images.nubusGuardianAuthorizationApi.tag }}
|
tag: {{ .Values.images.nubusGuardianAuthorizationApi.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
managementApi:
|
managementApi:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusGuardianManagementApi.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusGuardianManagementApi.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusGuardianManagementApi.repository }}
|
repository: {{ .Values.images.nubusGuardianManagementApi.repository }}
|
||||||
tag: {{ .Values.images.nubusGuardianManagementApi.tag }}
|
tag: {{ .Values.images.nubusGuardianManagementApi.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
managementUi:
|
managementUi:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusGuardianManagementUi.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusGuardianManagementUi.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusGuardianManagementUi.repository }}
|
repository: {{ .Values.images.nubusGuardianManagementUi.repository }}
|
||||||
tag: {{ .Values.images.nubusGuardianManagementUi.tag }}
|
tag: {{ .Values.images.nubusGuardianManagementUi.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
openPolicyAgent:
|
openPolicyAgent:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusOpenPolicyAgent.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusOpenPolicyAgent.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusOpenPolicyAgent.repository }}
|
repository: {{ .Values.images.nubusOpenPolicyAgent.repository }}
|
||||||
tag: {{ .Values.images.nubusOpenPolicyAgent.tag }}
|
tag: {{ .Values.images.nubusOpenPolicyAgent.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
nubusStackDataUms:
|
nubusStackDataUms:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.images.nubusDataLoader.registry }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusDataLoader.registry | quote }}
|
||||||
repository: {{ .Values.images.nubusDataLoader.repository }}
|
|
||||||
tag: {{ .Values.images.nubusDataLoader.tag }}
|
|
||||||
|
|
||||||
nubusStackDataSwp:
|
|
||||||
image:
|
|
||||||
registry: {{ .Values.images.nubusDataLoader.registry }}
|
|
||||||
repository: {{ .Values.images.nubusDataLoader.repository }}
|
repository: {{ .Values.images.nubusDataLoader.repository }}
|
||||||
tag: {{ .Values.images.nubusDataLoader.tag }}
|
tag: {{ .Values.images.nubusDataLoader.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
{{/*
|
{{/*
|
||||||
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
SPDX-License-Identifier: Apache-2.0
|
SPDX-License-Identifier: Apache-2.0
|
||||||
*/}}
|
*/}}
|
||||||
---
|
---
|
||||||
@@ -11,7 +11,7 @@ global:
|
|||||||
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
|
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.opendeskKeycloakBootstrap.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.opendeskKeycloakBootstrap.registry | quote }}
|
||||||
repository: {{ .Values.images.opendeskKeycloakBootstrap.repository | quote }}
|
repository: {{ .Values.images.opendeskKeycloakBootstrap.repository | quote }}
|
||||||
tag: {{ .Values.images.opendeskKeycloakBootstrap.tag | quote }}
|
tag: {{ .Values.images.opendeskKeycloakBootstrap.tag | quote }}
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
@@ -28,7 +28,8 @@ config:
|
|||||||
{{ .Values.functional.authentication.oidc.clients | toYaml | nindent 6 }}
|
{{ .Values.functional.authentication.oidc.clients | toYaml | nindent 6 }}
|
||||||
managed:
|
managed:
|
||||||
clientScopes: [ 'acr', 'web-origins', 'email', 'profile', 'microprofile-jwt', 'role_list', 'offline_access', 'roles', 'address', 'phone' ]
|
clientScopes: [ 'acr', 'web-origins', 'email', 'profile', 'microprofile-jwt', 'role_list', 'offline_access', 'roles', 'address', 'phone' ]
|
||||||
clients: [ 'UMC', 'guardian-management-api', 'guardian-scripts', 'guardian-ui', '${client_account}', '${client_account-console}', '${client_admin-cli}', '${client_broker}', '${client_realm-management}', '${client_security-admin-console}' ]
|
# 'guardian-management-api', 'guardian-scripts', 'guardian-ui' clients have been added explicitly for the moment (see further down this file)
|
||||||
|
clients: [ 'opendesk-intercom', 'guardian-management-api', 'guardian-scripts', 'guardian-ui', 'UMC', '${client_account}', '${client_account-console}', '${client_admin-cli}', '${client_broker}', '${client_realm-management}', '${client_security-admin-console}' ]
|
||||||
keycloak:
|
keycloak:
|
||||||
adminUser: "kcadmin"
|
adminUser: "kcadmin"
|
||||||
adminPassword: {{ .Values.secrets.keycloak.adminPassword | quote }}
|
adminPassword: {{ .Values.secrets.keycloak.adminPassword | quote }}
|
||||||
@@ -388,60 +389,6 @@ config:
|
|||||||
backchannel.logout.session.required: false
|
backchannel.logout.session.required: false
|
||||||
defaultClientScopes:
|
defaultClientScopes:
|
||||||
- "opendesk-dovecot-scope"
|
- "opendesk-dovecot-scope"
|
||||||
- name: "opendesk-intercom"
|
|
||||||
clientId: "opendesk-intercom"
|
|
||||||
protocol: "openid-connect"
|
|
||||||
clientAuthenticatorType: "client-secret"
|
|
||||||
secret: {{ .Values.secrets.keycloak.clientSecret.intercom | quote }}
|
|
||||||
redirectUris:
|
|
||||||
- "https://{{ .Values.global.hosts.intercomService }}.{{ .Values.global.domain }}/callback"
|
|
||||||
consentRequired: false
|
|
||||||
frontchannelLogout: false
|
|
||||||
publicClient: false
|
|
||||||
authorizationServicesEnabled: false
|
|
||||||
attributes:
|
|
||||||
backchannel.logout.session.required: true
|
|
||||||
backchannel.logout.revoke.offline.tokens: true
|
|
||||||
backchannel.logout.url: "https://{{ .Values.global.hosts.intercomService }}.{{ .Values.global.domain }}/backchannel-logout"
|
|
||||||
protocolMappers:
|
|
||||||
- name: "intercom-audience"
|
|
||||||
protocol: "openid-connect"
|
|
||||||
protocolMapper: "oidc-audience-mapper"
|
|
||||||
consentRequired: false
|
|
||||||
config:
|
|
||||||
included.client.audience: "opendesk-intercom"
|
|
||||||
id.token.claim: false
|
|
||||||
access.token.claim: true
|
|
||||||
# temporary additional claim while entryuuid is a hardcoded attribute in IntercomService and we cannot set
|
|
||||||
# it to `opendesk_useruuid` standard claim. For reference:
|
|
||||||
# https://github.com/univention/intercom-service/blob/cd819b6ced6433e532e74a8878943d05412c1416/intercom/app.js#L89
|
|
||||||
- name: "entryuuid_temp"
|
|
||||||
protocol: "openid-connect"
|
|
||||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
|
||||||
consentRequired: false
|
|
||||||
config:
|
|
||||||
userinfo.token.claim: true
|
|
||||||
user.attribute: "entryUUID"
|
|
||||||
id.token.claim: true
|
|
||||||
access.token.claim: true
|
|
||||||
claim.name: "entryuuid"
|
|
||||||
jsonType.label: "String"
|
|
||||||
# temporary additional claim while phoenixusername is a hardcoded attribute in IntercomService and we cannot
|
|
||||||
# set it to `opendesk_username` standard claim. For reference:
|
|
||||||
# https://github.com/univention/intercom-service/blob/cd819b6ced6433e532e74a8878943d05412c1416/intercom/routes/navigation.js#L27
|
|
||||||
- name: "phoenixusername_temp"
|
|
||||||
protocol: "openid-connect"
|
|
||||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
|
||||||
consentRequired: false
|
|
||||||
config:
|
|
||||||
userinfo.token.claim: true
|
|
||||||
user.attribute: "uid"
|
|
||||||
id.token.claim: true
|
|
||||||
access.token.claim: true
|
|
||||||
claim.name: "phoenixusername"
|
|
||||||
jsonType.label: "String"
|
|
||||||
defaultClientScopes:
|
|
||||||
- "offline_access"
|
|
||||||
- name: "opendesk-jitsi"
|
- name: "opendesk-jitsi"
|
||||||
clientId: "opendesk-jitsi"
|
clientId: "opendesk-jitsi"
|
||||||
protocol: "openid-connect"
|
protocol: "openid-connect"
|
||||||
@@ -507,7 +454,7 @@ config:
|
|||||||
authorizationServicesEnabled: false
|
authorizationServicesEnabled: false
|
||||||
attributes:
|
attributes:
|
||||||
backchannel.logout.session.required: true
|
backchannel.logout.session.required: true
|
||||||
backchannel.logout.url: "https://{{ .Values.global.hosts.nextcloud }}.{{ .Values.global.domain }}/index.php/apps/user_oidc/backchannel-logout/opendesk"
|
backchannel.logout.url: "https://{{ .Values.global.hosts.nextcloud }}.{{ .Values.global.domain }}/apps/user_oidc/backchannel-logout/opendesk"
|
||||||
post.logout.redirect.uris: "https://{{ .Values.global.hosts.nextcloud }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/*"
|
post.logout.redirect.uris: "https://{{ .Values.global.hosts.nextcloud }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/*"
|
||||||
defaultClientScopes:
|
defaultClientScopes:
|
||||||
- "opendesk-nextcloud-scope"
|
- "opendesk-nextcloud-scope"
|
||||||
@@ -587,6 +534,10 @@ containerSecurityContext:
|
|||||||
seLinuxOptions:
|
seLinuxOptions:
|
||||||
{{ .Values.seLinuxOptions.opendeskKeycloakBootstrap | toYaml | nindent 4 }}
|
{{ .Values.seLinuxOptions.opendeskKeycloakBootstrap | toYaml | nindent 4 }}
|
||||||
|
|
||||||
|
additionalAnnotations:
|
||||||
|
argocd.argoproj.io/hook: "Sync"
|
||||||
|
argocd.argoproj.io/hook-delete-policy: "BeforeHookCreation"
|
||||||
|
|
||||||
podAnnotations:
|
podAnnotations:
|
||||||
intents.otterize.com/service-name: "ums-keycloak-bootstrap"
|
intents.otterize.com/service-name: "ums-keycloak-bootstrap"
|
||||||
|
|
||||||
|
|||||||
@@ -10,8 +10,7 @@ repositories:
|
|||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.dovecot.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.dovecot.registry }}/{{ .Values.charts.dovecot.repository }}"
|
||||||
{{ .Values.charts.dovecot.repository }}"
|
|
||||||
|
|
||||||
# Open-Xchange
|
# Open-Xchange
|
||||||
- name: "open-xchange-repo"
|
- name: "open-xchange-repo"
|
||||||
@@ -20,8 +19,7 @@ repositories:
|
|||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.openXchangeAppSuite.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.openXchangeAppSuite.registry }}/{{ .Values.charts.openXchangeAppSuite.repository }}"
|
||||||
{{ .Values.charts.openXchangeAppSuite.repository }}"
|
|
||||||
|
|
||||||
# openDesk Open-Xchange Bootstrap
|
# openDesk Open-Xchange Bootstrap
|
||||||
# Source:
|
# Source:
|
||||||
@@ -32,8 +30,14 @@ repositories:
|
|||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.openXchangeAppSuiteBootstrap.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.openXchangeAppSuiteBootstrap.registry }}/{{ .Values.charts.openXchangeAppSuiteBootstrap.repository }}"
|
||||||
{{ .Values.charts.openXchangeAppSuiteBootstrap.repository }}"
|
|
||||||
|
# OX Connector
|
||||||
|
- name: "ox-connector-repo"
|
||||||
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
|
oci: true
|
||||||
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.oxConnector.registry }}/{{ .Values.charts.oxConnector.repository }}"
|
||||||
|
|
||||||
releases:
|
releases:
|
||||||
- name: "dovecot"
|
- name: "dovecot"
|
||||||
@@ -41,6 +45,7 @@ releases:
|
|||||||
version: "{{ .Values.charts.dovecot.version }}"
|
version: "{{ .Values.charts.dovecot.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-dovecot.yaml.gotmpl"
|
- "values-dovecot.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.dovecot | default "additionalValues: false" }}
|
||||||
installed: {{ .Values.dovecot.enabled }}
|
installed: {{ .Values.dovecot.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
@@ -50,6 +55,7 @@ releases:
|
|||||||
values:
|
values:
|
||||||
- "values-openxchange.yaml.gotmpl"
|
- "values-openxchange.yaml.gotmpl"
|
||||||
- "values-openxchange-enterprise-contact-picker.yaml.gotmpl"
|
- "values-openxchange-enterprise-contact-picker.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.openXchange | default "additionalValues: false" }}
|
||||||
installed: {{ .Values.oxAppsuite.enabled }}
|
installed: {{ .Values.oxAppsuite.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
@@ -58,9 +64,20 @@ releases:
|
|||||||
version: "{{ .Values.charts.openXchangeAppSuiteBootstrap.version }}"
|
version: "{{ .Values.charts.openXchangeAppSuiteBootstrap.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-openxchange-bootstrap.yaml.gotmpl"
|
- "values-openxchange-bootstrap.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.opendeskOpenXchangeBootstrap | default "additionalValues: false" }}
|
||||||
installed: {{ .Values.oxAppsuite.enabled }}
|
installed: {{ .Values.oxAppsuite.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
|
- name: "ox-connector"
|
||||||
|
chart: "ox-connector-repo/{{ .Values.charts.oxConnector.name }}"
|
||||||
|
version: "{{ .Values.charts.oxConnector.version }}"
|
||||||
|
values:
|
||||||
|
- "values-oxconnector.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.oxConnector | default "additionalValues: false" }}
|
||||||
|
installed: {{ .Values.oxAppsuite.enabled }}
|
||||||
|
needs:
|
||||||
|
- "open-xchange"
|
||||||
|
|
||||||
commonLabels:
|
commonLabels:
|
||||||
deploy-stage: "component-1"
|
deploy-stage: "component-1"
|
||||||
component: "open-xchange"
|
component: "open-xchange"
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
|
||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
|
||||||
---
|
|
||||||
bases:
|
|
||||||
- "../../bases/environments.yaml"
|
|
||||||
---
|
|
||||||
helmfiles:
|
|
||||||
- path: "./helmfile-child.yaml"
|
|
||||||
values:
|
|
||||||
- {{ toYaml .Values | nindent 8 }}
|
|
||||||
...
|
|
||||||
12
helmfile/apps/open-xchange/helmfile.yaml.gotmpl
Normal file
12
helmfile/apps/open-xchange/helmfile.yaml.gotmpl
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
---
|
||||||
|
bases:
|
||||||
|
- "../../bases/environments.yaml"
|
||||||
|
---
|
||||||
|
helmfiles:
|
||||||
|
- path: "./helmfile-child.yaml.gotmpl"
|
||||||
|
values:
|
||||||
|
- {{ toYaml .Values | nindent 8 }}
|
||||||
|
...
|
||||||
@@ -1,22 +1,24 @@
|
|||||||
{{/*
|
{{/*
|
||||||
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
SPDX-License-Identifier: Apache-2.0
|
SPDX-License-Identifier: Apache-2.0
|
||||||
*/}}
|
*/}}
|
||||||
---
|
---
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.dovecot.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.dovecot.registry | quote }}
|
||||||
repository: {{ .Values.images.dovecot.repository | quote }}
|
repository: {{ .Values.images.dovecot.repository | quote }}
|
||||||
tag: {{ .Values.images.dovecot.tag | quote }}
|
tag: {{ .Values.images.dovecot.tag | quote }}
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
imagePullSecrets:
|
imagePullSecrets:
|
||||||
{{- range .Values.global.imagePullSecrets }}
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 2 }}
|
||||||
- name: {{ . | quote }}
|
|
||||||
{{- end }}
|
|
||||||
|
|
||||||
dovecot:
|
dovecot:
|
||||||
mailDomain: {{ .Values.global.mailDomain | default .Values.global.domain | quote }}
|
mailDomain: {{ .Values.global.mailDomain | default .Values.global.domain | quote }}
|
||||||
password: {{ .Values.secrets.dovecot.doveadm | quote }}
|
password: {{ .Values.secrets.dovecot.doveadm | quote }}
|
||||||
|
migration:
|
||||||
|
enabled: {{ .Values.functional.migration.oxAppsuite.enabled }}
|
||||||
|
masterPassword: {{ .Values.secrets.oxAppsuite.migrationsMasterPassword | quote }}
|
||||||
ldap:
|
ldap:
|
||||||
enabled: true
|
enabled: true
|
||||||
host: {{ .Values.ldap.host | quote }}
|
host: {{ .Values.ldap.host | quote }}
|
||||||
@@ -36,7 +38,7 @@ dovecot:
|
|||||||
submission:
|
submission:
|
||||||
enabled: true
|
enabled: true
|
||||||
ssl: "no"
|
ssl: "no"
|
||||||
host: "postfix:25"
|
host: "{{ printf "%s.%s.svc.%s" "postfix" (.Values.postfix.namespace | default .Release.Namespace) .Values.cluster.networking.domain }}:25"
|
||||||
|
|
||||||
certificate:
|
certificate:
|
||||||
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
||||||
@@ -67,6 +69,9 @@ containerSecurityContext:
|
|||||||
seLinuxOptions:
|
seLinuxOptions:
|
||||||
{{ .Values.seLinuxOptions.dovecot | toYaml | nindent 4 }}
|
{{ .Values.seLinuxOptions.dovecot | toYaml | nindent 4 }}
|
||||||
|
|
||||||
|
|
||||||
|
podAnnotations: {}
|
||||||
|
|
||||||
podSecurityContext:
|
podSecurityContext:
|
||||||
enabled: true
|
enabled: true
|
||||||
fsGroup: 1000
|
fsGroup: 1000
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
{{/*
|
{{/*
|
||||||
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
SPDX-License-Identifier: Apache-2.0
|
SPDX-License-Identifier: Apache-2.0
|
||||||
*/}}
|
*/}}
|
||||||
@@ -7,14 +8,30 @@ cleanup:
|
|||||||
deletePodsOnSuccess: {{ .Values.debug.cleanup.deletePodsOnSuccess }}
|
deletePodsOnSuccess: {{ .Values.debug.cleanup.deletePodsOnSuccess }}
|
||||||
deletePodsOnSuccessTimeout: {{ .Values.debug.cleanup.deletePodsOnSuccessTimeout }}
|
deletePodsOnSuccessTimeout: {{ .Values.debug.cleanup.deletePodsOnSuccessTimeout }}
|
||||||
|
|
||||||
|
containerSecurityContext:
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
capabilities:
|
||||||
|
drop:
|
||||||
|
- "ALL"
|
||||||
|
runAsUser: 1000
|
||||||
|
runAsGroup: 1000
|
||||||
|
seccompProfile:
|
||||||
|
type: "RuntimeDefault"
|
||||||
|
readOnlyRootFilesystem: true
|
||||||
|
runAsNonRoot: true
|
||||||
|
seLinuxOptions:
|
||||||
|
{{ .Values.seLinuxOptions.openxchangeBootstrap | toYaml | nindent 4 }}
|
||||||
|
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.openxchangeBootstrap.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.dockerHub .Values.global.imageRegistry .Values.images.openxchangeBootstrap.registry | quote }}
|
||||||
url: {{ .Values.images.openxchangeBootstrap.repository | quote }}
|
url: {{ .Values.images.openxchangeBootstrap.repository | quote }}
|
||||||
tag: {{ .Values.images.openxchangeBootstrap.tag | quote }}
|
tag: {{ .Values.images.openxchangeBootstrap.tag | quote }}
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
imagePullSecrets:
|
imagePullSecrets:
|
||||||
{{- range .Values.global.imagePullSecrets }}
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 2 }}
|
||||||
- name: {{ . | quote }}
|
|
||||||
{{- end }}
|
additionalAnnotations:
|
||||||
|
argocd.argoproj.io/hook: "Sync"
|
||||||
|
argocd.argoproj.io/hook-delete-policy: "HookSucceeded"
|
||||||
...
|
...
|
||||||
|
|||||||
@@ -1,5 +1,8 @@
|
|||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
{{/*
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
---
|
---
|
||||||
appsuite:
|
appsuite:
|
||||||
core-mw:
|
core-mw:
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
{{/*
|
{{/*
|
||||||
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
SPDX-License-Identifier: Apache-2.0
|
SPDX-License-Identifier: Apache-2.0
|
||||||
*/}}
|
*/}}
|
||||||
@@ -19,13 +20,16 @@ global:
|
|||||||
|
|
||||||
nextcloud-integration-ui:
|
nextcloud-integration-ui:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.openxchangeNextcloudIntegrationUI.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.openxchangeNextcloudIntegrationUI.registry | quote }}
|
||||||
repository: {{ .Values.images.openxchangeNextcloudIntegrationUI.repository | quote }}
|
repository: {{ .Values.images.openxchangeNextcloudIntegrationUI.repository | quote }}
|
||||||
tag: {{ .Values.images.openxchangeNextcloudIntegrationUI.tag | quote }}
|
tag: {{ .Values.images.openxchangeNextcloudIntegrationUI.tag | quote }}
|
||||||
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
imagePullSecrets:
|
imagePullSecrets:
|
||||||
{{- range .Values.global.imagePullSecrets }}
|
{{- range .Values.global.imagePullSecrets }}
|
||||||
- name: {{ . | quote }}
|
- name: {{ . | quote }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
podAnnotations: {}
|
||||||
|
replicaCount: {{ .Values.replicas.openxchangeNextcloudIntegrationUI }}
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.openxchangeNextcloudIntegrationUI | toYaml | nindent 4 }}
|
{{ .Values.resources.openxchangeNextcloudIntegrationUI | toYaml | nindent 4 }}
|
||||||
securityContext:
|
securityContext:
|
||||||
@@ -43,17 +47,22 @@ nextcloud-integration-ui:
|
|||||||
type: "RuntimeDefault"
|
type: "RuntimeDefault"
|
||||||
seLinuxOptions:
|
seLinuxOptions:
|
||||||
{{ .Values.seLinuxOptions.openxchangeNextcloudIntegrationUI | toYaml | nindent 6 }}
|
{{ .Values.seLinuxOptions.openxchangeNextcloudIntegrationUI | toYaml | nindent 6 }}
|
||||||
|
serviceAccount:
|
||||||
|
create: false
|
||||||
|
|
||||||
public-sector-ui:
|
public-sector-ui:
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.openxchangePublicSectorUI.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.openxchangePublicSectorUI.registry | quote }}
|
||||||
repository: {{ .Values.images.openxchangePublicSectorUI.repository | quote }}
|
repository: {{ .Values.images.openxchangePublicSectorUI.repository | quote }}
|
||||||
tag: {{ .Values.images.openxchangePublicSectorUI.tag | quote }}
|
tag: {{ .Values.images.openxchangePublicSectorUI.tag | quote }}
|
||||||
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
imagePullSecrets:
|
imagePullSecrets:
|
||||||
{{- range .Values.global.imagePullSecrets }}
|
{{- range .Values.global.imagePullSecrets }}
|
||||||
- name: {{ . | quote }}
|
- name: {{ . | quote }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
replicaCount: {{ .Values.replicas.openxchangePublicSectorUI }}
|
||||||
|
podAnnotations: {}
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.openxchangePublicSectorUI | toYaml | nindent 4 }}
|
{{ .Values.resources.openxchangePublicSectorUI | toYaml | nindent 4 }}
|
||||||
securityContext:
|
securityContext:
|
||||||
@@ -71,6 +80,8 @@ public-sector-ui:
|
|||||||
type: "RuntimeDefault"
|
type: "RuntimeDefault"
|
||||||
seLinuxOptions:
|
seLinuxOptions:
|
||||||
{{ .Values.seLinuxOptions.openxchangePublicSectorUI | toYaml | nindent 6 }}
|
{{ .Values.seLinuxOptions.openxchangePublicSectorUI | toYaml | nindent 6 }}
|
||||||
|
serviceAccount:
|
||||||
|
create: false
|
||||||
|
|
||||||
appsuite:
|
appsuite:
|
||||||
appsuite-toolkit:
|
appsuite-toolkit:
|
||||||
@@ -116,6 +127,7 @@ appsuite:
|
|||||||
jolokiaLogin: "jolokia"
|
jolokiaLogin: "jolokia"
|
||||||
jolokiaPassword: {{ .Values.secrets.oxAppsuite.jolokiaPassword | quote }}
|
jolokiaPassword: {{ .Values.secrets.oxAppsuite.jolokiaPassword | quote }}
|
||||||
hostname: "{{ .Values.global.hosts.openxchange }}.{{ .Values.global.domain }}"
|
hostname: "{{ .Values.global.hosts.openxchange }}.{{ .Values.global.domain }}"
|
||||||
|
podAnnotations: {}
|
||||||
serviceAccount:
|
serviceAccount:
|
||||||
create: true
|
create: true
|
||||||
features:
|
features:
|
||||||
@@ -131,9 +143,11 @@ appsuite:
|
|||||||
- name: {{ . | quote }}
|
- name: {{ . | quote }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
image:
|
image:
|
||||||
repository: "{{ .Values.global.imageRegistry | default .Values.images.openxchangeGotenberg.registry }}/{{ .Values.images.openxchangeGotenberg.repository }}"
|
repository: "{{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.openxchangeGotenberg.registry }}/{{ .Values.images.openxchangeGotenberg.repository }}"
|
||||||
tag: {{ .Values.images.openxchangeGotenberg.tag | quote }}
|
tag: {{ .Values.images.openxchangeGotenberg.tag | quote }}
|
||||||
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
replicaCount: {{ .Values.replicas.openxchangeGotenberg }}
|
||||||
|
podAnnotations: {}
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.openxchangeGotenberg | toYaml | nindent 8 }}
|
{{ .Values.resources.openxchangeGotenberg | toYaml | nindent 8 }}
|
||||||
securityContext:
|
securityContext:
|
||||||
@@ -151,6 +165,8 @@ appsuite:
|
|||||||
type: "RuntimeDefault"
|
type: "RuntimeDefault"
|
||||||
seLinuxOptions:
|
seLinuxOptions:
|
||||||
{{ .Values.seLinuxOptions.openxchangeGotenberg | toYaml | nindent 10 }}
|
{{ .Values.seLinuxOptions.openxchangeGotenberg | toYaml | nindent 10 }}
|
||||||
|
serviceAccount:
|
||||||
|
create: false
|
||||||
hooks:
|
hooks:
|
||||||
beforeAppsuiteStart:
|
beforeAppsuiteStart:
|
||||||
create-guard-dir.sh: |
|
create-guard-dir.sh: |
|
||||||
@@ -158,9 +174,17 @@ appsuite:
|
|||||||
chown open-xchange:open-xchange /opt/open-xchange/guard-files
|
chown open-xchange:open-xchange /opt/open-xchange/guard-files
|
||||||
packages:
|
packages:
|
||||||
status:
|
status:
|
||||||
|
{{- if .Values.functional.migration.oxAppsuite.enabled }}
|
||||||
|
open-xchange-authentication-masterpassword: "enabled"
|
||||||
|
open-xchange-authentication-ldap: "disabled"
|
||||||
|
open-xchange-authentication-oauth: "disabled"
|
||||||
|
open-xchange-oidc: "disabled"
|
||||||
|
{{- else }}
|
||||||
open-xchange-oidc: "enabled"
|
open-xchange-oidc: "enabled"
|
||||||
open-xchange-authentication-database: "disabled"
|
open-xchange-authentication-database: "disabled"
|
||||||
open-xchange-authentication-oauth: "enabled"
|
open-xchange-authentication-oauth: "enabled"
|
||||||
|
open-xchange-authentication-ldap: "disabled"
|
||||||
|
{{- end }}
|
||||||
properties:
|
properties:
|
||||||
com.openexchange.UIWebPath: "/appsuite/"
|
com.openexchange.UIWebPath: "/appsuite/"
|
||||||
com.openexchange.showAdmin: "false"
|
com.openexchange.showAdmin: "false"
|
||||||
@@ -211,6 +235,9 @@ appsuite:
|
|||||||
com.openexchange.mail.transport.authType: "xoauth2"
|
com.openexchange.mail.transport.authType: "xoauth2"
|
||||||
com.openexchange.mail.transportServer: "postfix"
|
com.openexchange.mail.transportServer: "postfix"
|
||||||
com.openexchange.mail.transportServerSource: "global"
|
com.openexchange.mail.transportServerSource: "global"
|
||||||
|
# Requirements for OX-Connector
|
||||||
|
com.openexchange.user.enforceUniqueDisplayName: "false"
|
||||||
|
com.openexchange.folderstorage.database.preferDisplayName: "false"
|
||||||
# Mailfilter
|
# Mailfilter
|
||||||
com.openexchange.mail.filter.loginType: "global"
|
com.openexchange.mail.filter.loginType: "global"
|
||||||
com.openexchange.mail.filter.credentialSource: "mail"
|
com.openexchange.mail.filter.credentialSource: "mail"
|
||||||
@@ -238,7 +265,7 @@ appsuite:
|
|||||||
com.openexchange.mail.secondary.authType: "XOAUTH2"
|
com.openexchange.mail.secondary.authType: "XOAUTH2"
|
||||||
com.openexchange.mail.transport.secondary.authType: "xoauth2"
|
com.openexchange.mail.transport.secondary.authType: "xoauth2"
|
||||||
# Nextcloud integration
|
# Nextcloud integration
|
||||||
com.openexchange.file.storage.nextcloud.oauth.url: "http://opendesk-nextcloud-apache2/"
|
com.openexchange.file.storage.nextcloud.oauth.url: "http://opendesk-nextcloud-aio/"
|
||||||
com.openexchange.file.storage.nextcloud.oauth.webdav.username.strategy: "user"
|
com.openexchange.file.storage.nextcloud.oauth.webdav.username.strategy: "user"
|
||||||
com.openexchange.nextcloud.filepicker.includeAccessToken: "false"
|
com.openexchange.nextcloud.filepicker.includeAccessToken: "false"
|
||||||
# Element integration
|
# Element integration
|
||||||
@@ -266,6 +293,8 @@ appsuite:
|
|||||||
com.openexchange.share.cryptKey: {{ .Values.secrets.oxAppsuite.shareCryptKey | quote }}
|
com.openexchange.share.cryptKey: {{ .Values.secrets.oxAppsuite.shareCryptKey | quote }}
|
||||||
com.openexchange.conference.element.authToken: {{ .Values.secrets.oxAppsuite.synapseAsToken | quote }}
|
com.openexchange.conference.element.authToken: {{ .Values.secrets.oxAppsuite.synapseAsToken | quote }}
|
||||||
propertiesFiles:
|
propertiesFiles:
|
||||||
|
/opt/open-xchange/etc/masterpassword-authentication.properties:
|
||||||
|
com.openexchange.authentication.masterpassword.password: {{ .Values.secrets.oxAppsuite.migrationsMasterPassword | quote }}
|
||||||
/opt/open-xchange/etc/AdminDaemon.properties:
|
/opt/open-xchange/etc/AdminDaemon.properties:
|
||||||
MASTER_ACCOUNT_OVERRIDE: "true"
|
MASTER_ACCOUNT_OVERRIDE: "true"
|
||||||
/opt/open-xchange/etc/AdminUser.properties:
|
/opt/open-xchange/etc/AdminUser.properties:
|
||||||
@@ -341,7 +370,7 @@ appsuite:
|
|||||||
enabled: true
|
enabled: true
|
||||||
password: {{ .Values.secrets.redis.password | quote }}
|
password: {{ .Values.secrets.redis.password | quote }}
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.openxchangeCoreMW.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.openxchangeCoreMW.registry | quote }}
|
||||||
repository: {{ .Values.images.openxchangeCoreMW.repository | quote }}
|
repository: {{ .Values.images.openxchangeCoreMW.repository | quote }}
|
||||||
tag: {{ .Values.images.openxchangeCoreMW.tag | quote }}
|
tag: {{ .Values.images.openxchangeCoreMW.tag | quote }}
|
||||||
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
@@ -356,6 +385,7 @@ appsuite:
|
|||||||
{{- range .Values.global.imagePullSecrets }}
|
{{- range .Values.global.imagePullSecrets }}
|
||||||
- name: {{ . | quote }}
|
- name: {{ . | quote }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
replicas: {{ .Values.replicas.openxchangeCoreMW }}
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.openxchangeCoreMW | toYaml | nindent 6 }}
|
{{ .Values.resources.openxchangeCoreMW | toYaml | nindent 6 }}
|
||||||
|
|
||||||
@@ -366,10 +396,12 @@ appsuite:
|
|||||||
- name: {{ . | quote }}
|
- name: {{ . | quote }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.openxchangeCoreUI.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.openxchangeCoreUI.registry | quote }}
|
||||||
repository: {{ .Values.images.openxchangeCoreUI.repository | quote }}
|
repository: {{ .Values.images.openxchangeCoreUI.repository | quote }}
|
||||||
tag: {{ .Values.images.openxchangeCoreUI.tag | quote }}
|
tag: {{ .Values.images.openxchangeCoreUI.tag | quote }}
|
||||||
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
replicaCount: {{ .Values.replicas.openxchangeCoreUI }}
|
||||||
|
podAnnotations: {}
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.openxchangeCoreUI | toYaml | nindent 6 }}
|
{{ .Values.resources.openxchangeCoreUI | toYaml | nindent 6 }}
|
||||||
securityContext:
|
securityContext:
|
||||||
@@ -386,6 +418,8 @@ appsuite:
|
|||||||
type: "RuntimeDefault"
|
type: "RuntimeDefault"
|
||||||
seLinuxOptions:
|
seLinuxOptions:
|
||||||
{{ .Values.seLinuxOptions.openxchangeCoreUI | toYaml | nindent 8 }}
|
{{ .Values.seLinuxOptions.openxchangeCoreUI | toYaml | nindent 8 }}
|
||||||
|
serviceAccount:
|
||||||
|
create: false
|
||||||
|
|
||||||
core-ui-middleware:
|
core-ui-middleware:
|
||||||
enabled: true
|
enabled: true
|
||||||
@@ -398,12 +432,14 @@ appsuite:
|
|||||||
- name: {{ . | quote }}
|
- name: {{ . | quote }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.openxchangeCoreUIMiddleware.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.openxchangeCoreUIMiddleware.registry | quote }}
|
||||||
repository: {{ .Values.images.openxchangeCoreUIMiddleware.repository | quote }}
|
repository: {{ .Values.images.openxchangeCoreUIMiddleware.repository | quote }}
|
||||||
tag: {{ .Values.images.openxchangeCoreUIMiddleware.tag | quote }}
|
tag: {{ .Values.images.openxchangeCoreUIMiddleware.tag | quote }}
|
||||||
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
overrides: {}
|
overrides: {}
|
||||||
|
podAnnotations: {}
|
||||||
redis: *redisConfiguration
|
redis: *redisConfiguration
|
||||||
|
replicaCount: {{ .Values.replicas.openxchangeCoreUIMiddleware }}
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.openxchangeCoreUIMiddleware | toYaml | nindent 6 }}
|
{{ .Values.resources.openxchangeCoreUIMiddleware | toYaml | nindent 6 }}
|
||||||
updater:
|
updater:
|
||||||
@@ -423,6 +459,9 @@ appsuite:
|
|||||||
type: "RuntimeDefault"
|
type: "RuntimeDefault"
|
||||||
seLinuxOptions:
|
seLinuxOptions:
|
||||||
{{ .Values.seLinuxOptions.openxchangeCoreUIMiddleware | toYaml | nindent 8 }}
|
{{ .Values.seLinuxOptions.openxchangeCoreUIMiddleware | toYaml | nindent 8 }}
|
||||||
|
serviceAccount:
|
||||||
|
create: false
|
||||||
|
|
||||||
core-cacheservice:
|
core-cacheservice:
|
||||||
enabled: false
|
enabled: false
|
||||||
|
|
||||||
@@ -437,10 +476,13 @@ appsuite:
|
|||||||
remoteCache:
|
remoteCache:
|
||||||
enabled: false
|
enabled: false
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.openxchangeDocumentConverter.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.openxchangeDocumentConverter.registry | quote }}
|
||||||
repository: {{ .Values.images.openxchangeDocumentConverter.repository | quote }}
|
repository: {{ .Values.images.openxchangeDocumentConverter.repository | quote }}
|
||||||
tag: {{ .Values.images.openxchangeDocumentConverter.tag | quote }}
|
tag: {{ .Values.images.openxchangeDocumentConverter.tag | quote }}
|
||||||
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
podAnnotations: {}
|
||||||
redis: *redisConfiguration
|
redis: *redisConfiguration
|
||||||
|
replicaCount: {{ .Values.replicas.openxchangeCoreDocumentConverter }}
|
||||||
resources:
|
resources:
|
||||||
{{- .Values.resources.openxchangeCoreDocumentConverter | toYaml | nindent 6 }}
|
{{- .Values.resources.openxchangeCoreDocumentConverter | toYaml | nindent 6 }}
|
||||||
securityContext:
|
securityContext:
|
||||||
@@ -459,6 +501,8 @@ appsuite:
|
|||||||
type: "RuntimeDefault"
|
type: "RuntimeDefault"
|
||||||
seLinuxOptions:
|
seLinuxOptions:
|
||||||
{{ .Values.seLinuxOptions.openxchangeDocumentConverter | toYaml | nindent 8 }}
|
{{ .Values.seLinuxOptions.openxchangeDocumentConverter | toYaml | nindent 8 }}
|
||||||
|
serviceAccount:
|
||||||
|
create: false
|
||||||
|
|
||||||
core-documents-collaboration:
|
core-documents-collaboration:
|
||||||
enabled: false
|
enabled: false
|
||||||
@@ -482,10 +526,12 @@ appsuite:
|
|||||||
- name: {{ . | quote }}
|
- name: {{ . | quote }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.openxchangeCoreGuidedtours.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.openxchangeCoreGuidedtours.registry | quote }}
|
||||||
repository: {{ .Values.images.openxchangeCoreGuidedtours.repository | quote }}
|
repository: {{ .Values.images.openxchangeCoreGuidedtours.repository | quote }}
|
||||||
tag: {{ .Values.images.openxchangeCoreGuidedtours.tag | quote }}
|
tag: {{ .Values.images.openxchangeCoreGuidedtours.tag | quote }}
|
||||||
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
podAnnotations: {}
|
||||||
|
replicaCount: {{ .Values.replicas.openxchangeCoreGuidedtours }}
|
||||||
resources:
|
resources:
|
||||||
{{- .Values.resources.openxchangeCoreGuidedtours | toYaml | nindent 6 }}
|
{{- .Values.resources.openxchangeCoreGuidedtours | toYaml | nindent 6 }}
|
||||||
securityContext:
|
securityContext:
|
||||||
@@ -502,6 +548,8 @@ appsuite:
|
|||||||
type: "RuntimeDefault"
|
type: "RuntimeDefault"
|
||||||
seLinuxOptions:
|
seLinuxOptions:
|
||||||
{{ .Values.seLinuxOptions.openxchangeCoreGuidedtours | toYaml | nindent 8 }}
|
{{ .Values.seLinuxOptions.openxchangeCoreGuidedtours | toYaml | nindent 8 }}
|
||||||
|
serviceAccount:
|
||||||
|
create: false
|
||||||
|
|
||||||
core-imageconverter:
|
core-imageconverter:
|
||||||
enabled: true
|
enabled: true
|
||||||
@@ -510,16 +558,19 @@ appsuite:
|
|||||||
basicAuthLogin: "oxlogin"
|
basicAuthLogin: "oxlogin"
|
||||||
basicAuthPassword: {{ .Values.secrets.oxAppsuite.basicAuthPassword | quote }}
|
basicAuthPassword: {{ .Values.secrets.oxAppsuite.basicAuthPassword | quote }}
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.openxchangeImageConverter.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.openxchangeImageConverter.registry | quote }}
|
||||||
repository: {{ .Values.images.openxchangeImageConverter.repository | quote }}
|
repository: {{ .Values.images.openxchangeImageConverter.repository | quote }}
|
||||||
tag: {{ .Values.images.openxchangeImageConverter.tag | quote }}
|
tag: {{ .Values.images.openxchangeImageConverter.tag | quote }}
|
||||||
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
objectCache:
|
objectCache:
|
||||||
s3ObjectStores:
|
s3ObjectStores:
|
||||||
- id: -1
|
- id: -1
|
||||||
endpoint: "."
|
endpoint: "."
|
||||||
accessKey: "."
|
accessKey: "."
|
||||||
secretKey: "."
|
secretKey: "."
|
||||||
|
podAnnotations: {}
|
||||||
redis: *redisConfiguration
|
redis: *redisConfiguration
|
||||||
|
replicaCount: {{ .Values.replicas.openxchangeCoreImageConverter }}
|
||||||
resources:
|
resources:
|
||||||
{{- .Values.resources.openxchangeCoreImageConverter | toYaml | nindent 6 }}
|
{{- .Values.resources.openxchangeCoreImageConverter | toYaml | nindent 6 }}
|
||||||
securityContext:
|
securityContext:
|
||||||
@@ -538,6 +589,8 @@ appsuite:
|
|||||||
type: "RuntimeDefault"
|
type: "RuntimeDefault"
|
||||||
seLinuxOptions:
|
seLinuxOptions:
|
||||||
{{ .Values.seLinuxOptions.openxchangeImageConverter | toYaml | nindent 8 }}
|
{{ .Values.seLinuxOptions.openxchangeImageConverter | toYaml | nindent 8 }}
|
||||||
|
serviceAccount:
|
||||||
|
create: false
|
||||||
|
|
||||||
guard-ui:
|
guard-ui:
|
||||||
enabled: true
|
enabled: true
|
||||||
@@ -546,10 +599,12 @@ appsuite:
|
|||||||
- name: {{ . | quote }}
|
- name: {{ . | quote }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.openxchangeGuardUI.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.openxchangeGuardUI.registry | quote }}
|
||||||
repository: {{ .Values.images.openxchangeGuardUI.repository | quote }}
|
repository: {{ .Values.images.openxchangeGuardUI.repository | quote }}
|
||||||
tag: {{ .Values.images.openxchangeGuardUI.tag | quote }}
|
tag: {{ .Values.images.openxchangeGuardUI.tag | quote }}
|
||||||
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
podAnnotations: {}
|
||||||
|
replicaCount: {{ .Values.replicas.openxchangeGuardUI }}
|
||||||
resources:
|
resources:
|
||||||
{{- .Values.resources.openxchangeGuardUI | toYaml | nindent 6 }}
|
{{- .Values.resources.openxchangeGuardUI | toYaml | nindent 6 }}
|
||||||
securityContext:
|
securityContext:
|
||||||
@@ -566,13 +621,15 @@ appsuite:
|
|||||||
type: "RuntimeDefault"
|
type: "RuntimeDefault"
|
||||||
seLinuxOptions:
|
seLinuxOptions:
|
||||||
{{ .Values.seLinuxOptions.openxchangeGuardUI | toYaml | nindent 8 }}
|
{{ .Values.seLinuxOptions.openxchangeGuardUI | toYaml | nindent 8 }}
|
||||||
|
serviceAccount:
|
||||||
|
create: false
|
||||||
core-spellcheck:
|
core-spellcheck:
|
||||||
enabled: false
|
enabled: false
|
||||||
|
|
||||||
core-user-guide:
|
core-user-guide:
|
||||||
enabled: true
|
enabled: true
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.openxchangeCoreUserGuide.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.openxchangeCoreUserGuide.registry | quote }}
|
||||||
repository: {{ .Values.images.openxchangeCoreUserGuide.repository | quote }}
|
repository: {{ .Values.images.openxchangeCoreUserGuide.repository | quote }}
|
||||||
tag: {{ .Values.images.openxchangeCoreUserGuide.tag | quote }}
|
tag: {{ .Values.images.openxchangeCoreUserGuide.tag | quote }}
|
||||||
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
@@ -580,6 +637,8 @@ appsuite:
|
|||||||
{{- range .Values.global.imagePullSecrets }}
|
{{- range .Values.global.imagePullSecrets }}
|
||||||
- name: {{ . | quote }}
|
- name: {{ . | quote }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
podAnnotations: {}
|
||||||
|
replicaCount: {{ .Values.replicas.openxchangeCoreUserGuide }}
|
||||||
resources:
|
resources:
|
||||||
{{- .Values.resources.openxchangeCoreUserGuide | toYaml | nindent 6 }}
|
{{- .Values.resources.openxchangeCoreUserGuide | toYaml | nindent 6 }}
|
||||||
securityContext:
|
securityContext:
|
||||||
@@ -596,4 +655,6 @@ appsuite:
|
|||||||
type: "RuntimeDefault"
|
type: "RuntimeDefault"
|
||||||
seLinuxOptions:
|
seLinuxOptions:
|
||||||
{{ .Values.seLinuxOptions.openxchangeCoreUserGuide | toYaml | nindent 8 }}
|
{{ .Values.seLinuxOptions.openxchangeCoreUserGuide | toYaml | nindent 8 }}
|
||||||
|
serviceAccount:
|
||||||
|
create: false
|
||||||
...
|
...
|
||||||
|
|||||||
@@ -1,12 +1,25 @@
|
|||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
{{/*
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
---
|
---
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.oxConnector.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.oxConnector.registry | quote }}
|
||||||
repository: {{ .Values.images.oxConnector.repository | quote }}
|
repository: {{ .Values.images.oxConnector.repository | quote }}
|
||||||
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
tag: {{ .Values.images.oxConnector.tag | quote }}
|
tag: {{ .Values.images.oxConnector.tag | quote }}
|
||||||
|
|
||||||
|
waitForDependency:
|
||||||
|
registry: {{ .Values.global.imageRegistry | default .Values.images.nubusWaitForDependency.registry | quote }}
|
||||||
|
repository: {{ .Values.images.nubusWaitForDependency.repository }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy }}
|
||||||
|
pullSecrets:
|
||||||
|
{{- range .Values.global.imagePullSecrets }}
|
||||||
|
- name: {{ . | quote }}
|
||||||
|
{{- end }}
|
||||||
|
tag: {{ .Values.images.nubusWaitForDependency.tag | quote }}
|
||||||
|
|
||||||
imagePullSecrets:
|
imagePullSecrets:
|
||||||
{{- range .Values.global.imagePullSecrets }}
|
{{- range .Values.global.imagePullSecrets }}
|
||||||
- name: {{ . | quote }}
|
- name: {{ . | quote }}
|
||||||
@@ -16,16 +29,8 @@ ingress:
|
|||||||
enabled: false
|
enabled: false
|
||||||
|
|
||||||
oxConnector:
|
oxConnector:
|
||||||
caCert: "ucctempldapstring"
|
|
||||||
debugLevel: {{ if .Values.debug.enabled }}"4"{{ else }}"1"{{ end }}
|
|
||||||
domainName: {{ .Values.global.domain | quote }}
|
domainName: {{ .Values.global.domain | quote }}
|
||||||
ldapHost: "{{ .Values.ldap.host }}-primary"
|
logLevel: {{ if .Values.debug.enabled }}"DEBUG"{{ else }}"INFO"{{ end }}
|
||||||
logLevel: {{ if .Values.debug.enabled }}"DEBUG"{{ else }}"WARN"{{ end }}
|
|
||||||
ldapPassword: {{ .Values.secrets.nubus.ldapSecret | quote }}
|
|
||||||
ldapBaseDn: "dc=swp-ldap,dc=internal"
|
|
||||||
ldapHostDn: "cn=admin,dc=swp-ldap,dc=internal"
|
|
||||||
tlsMode: "off"
|
|
||||||
notifierServer: {{ .Values.ldap.notifierHost | quote }}
|
|
||||||
oxDefaultContext: "1"
|
oxDefaultContext: "1"
|
||||||
oxImapServer: "imap://127.0.0.1:143"
|
oxImapServer: "imap://127.0.0.1:143"
|
||||||
oxLocalTimezone: "Europe/Berlin"
|
oxLocalTimezone: "Europe/Berlin"
|
||||||
@@ -35,12 +40,21 @@ oxConnector:
|
|||||||
oxSmtpServer: "smtp://127.0.0.1:587"
|
oxSmtpServer: "smtp://127.0.0.1:587"
|
||||||
oxSoapServer: "https://{{ .Values.global.hosts.openxchange }}.{{ .Values.global.domain }}"
|
oxSoapServer: "https://{{ .Values.global.hosts.openxchange }}.{{ .Values.global.domain }}"
|
||||||
|
|
||||||
|
provisioningApi:
|
||||||
|
connection:
|
||||||
|
baseUrl: "http://ums-provisioning-api"
|
||||||
|
auth:
|
||||||
|
username: "ox-connector"
|
||||||
|
password: {{ .Values.secrets.oxConnector.provisioningApiPassword | quote }}
|
||||||
|
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.oxConnector | toYaml | nindent 2 }}
|
{{ .Values.resources.oxConnector | toYaml | nindent 2 }}
|
||||||
|
|
||||||
persistence:
|
persistence:
|
||||||
storageClass: {{ .Values.persistence.storageClassNames.RWO | quote }}
|
storageClass: {{ .Values.persistence.storageClassNames.RWO | quote }}
|
||||||
|
|
||||||
|
podAnnotations: {}
|
||||||
|
|
||||||
## Container deployment probes
|
## Container deployment probes
|
||||||
probes:
|
probes:
|
||||||
liveness:
|
liveness:
|
||||||
@@ -76,7 +90,6 @@ securityContext:
|
|||||||
- "SETUID"
|
- "SETUID"
|
||||||
- "SETPCAP"
|
- "SETPCAP"
|
||||||
- "NET_BIND_SERVICE"
|
- "NET_BIND_SERVICE"
|
||||||
- "NET_RAW"
|
|
||||||
- "SYS_CHROOT"
|
- "SYS_CHROOT"
|
||||||
privileged: false
|
privileged: false
|
||||||
seccompProfile:
|
seccompProfile:
|
||||||
@@ -10,8 +10,7 @@ repositories:
|
|||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.openprojectBootstrap.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.openprojectBootstrap.registry }}/{{ .Values.charts.openprojectBootstrap.repository }}"
|
||||||
{{ .Values.charts.openprojectBootstrap.repository }}"
|
|
||||||
|
|
||||||
releases:
|
releases:
|
||||||
- name: "opendesk-openproject-bootstrap"
|
- name: "opendesk-openproject-bootstrap"
|
||||||
@@ -21,6 +20,7 @@ releases:
|
|||||||
waitForJobs: true
|
waitForJobs: true
|
||||||
values:
|
values:
|
||||||
- "values.yaml.gotmpl"
|
- "values.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.opendeskOpenprojectBootstrap | default "additionalValues: false" }}
|
||||||
installed: {{ .Values.openproject.enabled }}
|
installed: {{ .Values.openproject.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
|
||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
|
||||||
---
|
|
||||||
bases:
|
|
||||||
- "../../bases/environments.yaml"
|
|
||||||
---
|
|
||||||
helmfiles:
|
|
||||||
- path: "./helmfile-child.yaml"
|
|
||||||
values:
|
|
||||||
- {{ toYaml .Values | nindent 8 }}
|
|
||||||
...
|
|
||||||
12
helmfile/apps/openproject-bootstrap/helmfile.yaml.gotmpl
Normal file
12
helmfile/apps/openproject-bootstrap/helmfile.yaml.gotmpl
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
---
|
||||||
|
bases:
|
||||||
|
- "../../bases/environments.yaml"
|
||||||
|
---
|
||||||
|
helmfiles:
|
||||||
|
- path: "./helmfile-child.yaml.gotmpl"
|
||||||
|
values:
|
||||||
|
- {{ toYaml .Values | nindent 8 }}
|
||||||
|
...
|
||||||
@@ -1,4 +1,5 @@
|
|||||||
{{/*
|
{{/*
|
||||||
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
SPDX-License-Identifier: Apache-2.0
|
SPDX-License-Identifier: Apache-2.0
|
||||||
*/}}
|
*/}}
|
||||||
@@ -15,6 +16,8 @@ cleanup:
|
|||||||
keepPVCOnDelete: {{ .Values.debug.cleanup.keepPVCOnDelete }}
|
keepPVCOnDelete: {{ .Values.debug.cleanup.keepPVCOnDelete }}
|
||||||
|
|
||||||
config:
|
config:
|
||||||
|
debug:
|
||||||
|
enabled: {{ .Values.debug.enabled }}
|
||||||
openproject:
|
openproject:
|
||||||
fileshareName: "Nextcloud at {{ .Values.global.domain }}"
|
fileshareName: "Nextcloud at {{ .Values.global.domain }}"
|
||||||
admin:
|
admin:
|
||||||
@@ -42,7 +45,7 @@ containerSecurityContext:
|
|||||||
{{ .Values.seLinuxOptions.openprojectBootstrap | toYaml | nindent 4 }}
|
{{ .Values.seLinuxOptions.openprojectBootstrap | toYaml | nindent 4 }}
|
||||||
|
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.openprojectBootstrap.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.openprojectBootstrap.registry | quote }}
|
||||||
repository: {{ .Values.images.openprojectBootstrap.repository | quote }}
|
repository: {{ .Values.images.openprojectBootstrap.repository | quote }}
|
||||||
tag: {{ .Values.images.openprojectBootstrap.tag | quote }}
|
tag: {{ .Values.images.openprojectBootstrap.tag | quote }}
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy |quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy |quote }}
|
||||||
|
|||||||
@@ -10,8 +10,7 @@ repositories:
|
|||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.openproject.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.openproject.registry }}/{{ .Values.charts.openproject.repository }}"
|
||||||
{{ .Values.charts.openproject.repository }}"
|
|
||||||
|
|
||||||
releases:
|
releases:
|
||||||
- name: "openproject"
|
- name: "openproject"
|
||||||
@@ -21,8 +20,9 @@ releases:
|
|||||||
waitForJobs: true
|
waitForJobs: true
|
||||||
values:
|
values:
|
||||||
- "values.yaml.gotmpl"
|
- "values.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.openproject | default "additionalValues: false" }}
|
||||||
installed: {{ .Values.openproject.enabled }}
|
installed: {{ .Values.openproject.enabled }}
|
||||||
timeout: 900
|
timeout: 1800
|
||||||
|
|
||||||
commonLabels:
|
commonLabels:
|
||||||
deploy-stage: "component-1"
|
deploy-stage: "component-1"
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
|
||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
|
||||||
---
|
|
||||||
bases:
|
|
||||||
- "../../bases/environments.yaml"
|
|
||||||
---
|
|
||||||
helmfiles:
|
|
||||||
- path: "./helmfile-child.yaml"
|
|
||||||
values:
|
|
||||||
- {{ toYaml .Values | nindent 8 }}
|
|
||||||
...
|
|
||||||
12
helmfile/apps/openproject/helmfile.yaml.gotmpl
Normal file
12
helmfile/apps/openproject/helmfile.yaml.gotmpl
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
---
|
||||||
|
bases:
|
||||||
|
- "../../bases/environments.yaml"
|
||||||
|
---
|
||||||
|
helmfiles:
|
||||||
|
- path: "./helmfile-child.yaml.gotmpl"
|
||||||
|
values:
|
||||||
|
- {{ toYaml .Values | nindent 8 }}
|
||||||
|
...
|
||||||
@@ -1,4 +1,5 @@
|
|||||||
{{/*
|
{{/*
|
||||||
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
SPDX-License-Identifier: Apache-2.0
|
SPDX-License-Identifier: Apache-2.0
|
||||||
*/}}
|
*/}}
|
||||||
@@ -7,6 +8,10 @@ global:
|
|||||||
imagePullSecrets:
|
imagePullSecrets:
|
||||||
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
|
|
||||||
|
appInit:
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.openprojectAppInit | toYaml | nindent 4 }}
|
||||||
|
|
||||||
containerSecurityContext:
|
containerSecurityContext:
|
||||||
enabled: true
|
enabled: true
|
||||||
privileged: false
|
privileged: false
|
||||||
@@ -23,6 +28,15 @@ containerSecurityContext:
|
|||||||
seLinuxOptions:
|
seLinuxOptions:
|
||||||
{{ .Values.seLinuxOptions.openproject | toYaml | nindent 4 }}
|
{{ .Values.seLinuxOptions.openproject | toYaml | nindent 4 }}
|
||||||
|
|
||||||
|
dbInit:
|
||||||
|
image:
|
||||||
|
registry: {{ coalesce .Values.repositories.image.dockerHub .Values.global.imageRegistry .Values.images.openprojectDbInit.registry | quote }}
|
||||||
|
repository: {{ .Values.images.openprojectDbInit.repository | quote }}
|
||||||
|
tag: {{ .Values.images.openprojectDbInit.tag | quote }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.openprojectDbInit | toYaml | nindent 4 }}
|
||||||
|
|
||||||
environment:
|
environment:
|
||||||
# For more details and more options see
|
# For more details and more options see
|
||||||
# https://www.openproject.org/docs/installation-and-operations/configuration/environment/
|
# https://www.openproject.org/docs/installation-and-operations/configuration/environment/
|
||||||
@@ -31,7 +45,6 @@ environment:
|
|||||||
OPENPROJECT_USER__DEFAULT__TIMEZONE: "Europe/Berlin"
|
OPENPROJECT_USER__DEFAULT__TIMEZONE: "Europe/Berlin"
|
||||||
OPENPROJECT_OAUTH__ALLOW__REMAPPING__OF__EXISTING__USERS: "true"
|
OPENPROJECT_OAUTH__ALLOW__REMAPPING__OF__EXISTING__USERS: "true"
|
||||||
OPENPROJECT_OMNIAUTH__DIRECT__LOGIN__PROVIDER: "keycloak"
|
OPENPROJECT_OMNIAUTH__DIRECT__LOGIN__PROVIDER: "keycloak"
|
||||||
OPENPROJECT_PER__PAGE__OPTIONS: "20, 50, 100, 200"
|
|
||||||
OPENPROJECT_EMAIL__DELIVERY__METHOD: "smtp"
|
OPENPROJECT_EMAIL__DELIVERY__METHOD: "smtp"
|
||||||
OPENPROJECT_DEFAULT__COMMENT__SORT__ORDER: "desc"
|
OPENPROJECT_DEFAULT__COMMENT__SORT__ORDER: "desc"
|
||||||
# Details: https://www.openproject-edge.com/docs/installation-and-operations/configuration/#seeding-ldap-connections
|
# Details: https://www.openproject-edge.com/docs/installation-and-operations/configuration/#seeding-ldap-connections
|
||||||
@@ -59,15 +72,15 @@ environment:
|
|||||||
OPENPROJECT_SOUVAP__NAVIGATION__SECRET: {{ .Values.secrets.centralnavigation.apiKey | quote }}
|
OPENPROJECT_SOUVAP__NAVIGATION__SECRET: {{ .Values.secrets.centralnavigation.apiKey | quote }}
|
||||||
OPENPROJECT_SOUVAP__NAVIGATION__URL: "https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/univention/portal/navigation.json?base=https%3A//{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}"
|
OPENPROJECT_SOUVAP__NAVIGATION__URL: "https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/univention/portal/navigation.json?base=https%3A//{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}"
|
||||||
OPENPROJECT_SMTP__DOMAIN: {{ .Values.global.mailDomain | default .Values.global.domain | quote }}
|
OPENPROJECT_SMTP__DOMAIN: {{ .Values.global.mailDomain | default .Values.global.domain | quote }}
|
||||||
OPENPROJECT_SMTP__USER__NAME: {{ .Values.smtp.username | quote }}
|
OPENPROJECT_SMTP__USER__NAME: ""
|
||||||
OPENPROJECT_SMTP__PASSWORD: {{ .Values.smtp.password | quote }}
|
OPENPROJECT_SMTP__PASSWORD: ""
|
||||||
OPENPROJECT_SMTP__PORT: {{ .Values.smtp.port | quote }}
|
OPENPROJECT_SMTP__PORT: 25
|
||||||
OPENPROJECT_SMTP__SSL: "false" # (default=false)
|
OPENPROJECT_SMTP__SSL: "false" # (default=false)
|
||||||
OPENPROJECT_SMTP__ADDRESS: {{ .Values.smtp.host | quote }}
|
OPENPROJECT_SMTP__ADDRESS: {{ printf "%s.%s.svc.%s" "postfix" (.Values.postfix.namespace | default .Release.Namespace) .Values.cluster.networking.domain | quote }}
|
||||||
OPENPROJECT_SMTP__AUTHENTICATION: "plain"
|
OPENPROJECT_SMTP__AUTHENTICATION: "none"
|
||||||
OPENPROJECT_SMTP__ENABLE__STARTTLS__AUTO: "true"
|
OPENPROJECT_SMTP__ENABLE__STARTTLS__AUTO: "false"
|
||||||
OPENPROJECT_SMTP__OPENSSL__VERIFY__MODE: "peer"
|
OPENPROJECT_SMTP__OPENSSL__VERIFY__MODE: "none"
|
||||||
OPENPROJECT_MAIL__FROM: "{{ .Values.smtp.localpartNoReply }}@{{ if .Values.functional.email.systemGenerated.useComponentInSenderdomain }}{{ .Values.global.hosts.openproject }}.{{ end }}{{ .Values.global.domain }}"
|
OPENPROJECT_MAIL__FROM: "{{ .Values.smtp.localpartNoReply }}@{{ .Values.global.domain }}"
|
||||||
OPENPROJECT_HOME__URL: {{ printf "https://%s.%s/" .Values.global.hosts.nubus .Values.global.domain | quote }}
|
OPENPROJECT_HOME__URL: {{ printf "https://%s.%s/" .Values.global.hosts.nubus .Values.global.domain | quote }}
|
||||||
OPENPROJECT_OPENID__CONNECT_KEYCLOAK_ISSUER: "https://{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}/realms/{{ .Values.platform.realm }}"
|
OPENPROJECT_OPENID__CONNECT_KEYCLOAK_ISSUER: "https://{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}/realms/{{ .Values.platform.realm }}"
|
||||||
OPENPROJECT_OPENID__CONNECT_KEYCLOAK_POST__LOGOUT__REDIRECT__URI: "https://{{ .Values.global.hosts.openproject }}.{{ .Values.global.domain }}/"
|
OPENPROJECT_OPENID__CONNECT_KEYCLOAK_POST__LOGOUT__REDIRECT__URI: "https://{{ .Values.global.hosts.openproject }}.{{ .Values.global.domain }}/"
|
||||||
@@ -76,18 +89,11 @@ environment:
|
|||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.openproject.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.openproject.registry | quote }}
|
||||||
repository: {{ .Values.images.openproject.repository | quote }}
|
repository: {{ .Values.images.openproject.repository | quote }}
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
tag: {{ .Values.images.openproject.tag | quote }}
|
tag: {{ .Values.images.openproject.tag | quote }}
|
||||||
|
|
||||||
initdb:
|
|
||||||
image:
|
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.openprojectInitDb.registry | quote }}
|
|
||||||
repository: {{ .Values.images.openprojectInitDb.repository | quote }}
|
|
||||||
tag: {{ .Values.images.openprojectInitDb.tag | quote }}
|
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
|
||||||
|
|
||||||
memcached:
|
memcached:
|
||||||
bundled: false
|
bundled: false
|
||||||
connection:
|
connection:
|
||||||
@@ -97,6 +103,8 @@ memcached:
|
|||||||
persistence:
|
persistence:
|
||||||
enabled: false
|
enabled: false
|
||||||
|
|
||||||
|
podAnnotations: {}
|
||||||
|
|
||||||
postgresql:
|
postgresql:
|
||||||
bundled: false
|
bundled: false
|
||||||
auth:
|
auth:
|
||||||
@@ -180,5 +188,14 @@ s3:
|
|||||||
seederJob:
|
seederJob:
|
||||||
annotations:
|
annotations:
|
||||||
intents.otterize.com/service-name: "openproject-seeder"
|
intents.otterize.com/service-name: "openproject-seeder"
|
||||||
|
argocd.argoproj.io/hook: "Sync"
|
||||||
|
argocd.argoproj.io/hook-delete-policy: "HookSucceeded"
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.openprojectSeederJob | toYaml | nindent 4 }}
|
||||||
|
|
||||||
|
workers:
|
||||||
|
default:
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.openprojectWorkers | toYaml | nindent 6 }}
|
||||||
|
|
||||||
...
|
...
|
||||||
|
|||||||
@@ -1,24 +0,0 @@
|
|||||||
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
|
||||||
---
|
|
||||||
repositories:
|
|
||||||
# OX Connector
|
|
||||||
- name: "ox-connector-repo"
|
|
||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
|
||||||
oci: true
|
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.oxConnector.registry }}/\
|
|
||||||
{{ .Values.charts.oxConnector.repository }}"
|
|
||||||
|
|
||||||
releases:
|
|
||||||
- name: "ox-connector"
|
|
||||||
chart: "ox-connector-repo/{{ .Values.charts.oxConnector.name }}"
|
|
||||||
version: "{{ .Values.charts.oxConnector.version }}"
|
|
||||||
values:
|
|
||||||
- "values-oxconnector.yaml.gotmpl"
|
|
||||||
installed: {{ .Values.oxConnector.enabled }}
|
|
||||||
|
|
||||||
commonLabels:
|
|
||||||
deploy-stage: "component-2"
|
|
||||||
component: "provisioning"
|
|
||||||
...
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
|
||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
|
||||||
---
|
|
||||||
bases:
|
|
||||||
- "../../bases/environments.yaml"
|
|
||||||
---
|
|
||||||
helmfiles:
|
|
||||||
- path: "./helmfile-child.yaml"
|
|
||||||
values:
|
|
||||||
- {{ toYaml .Values | nindent 8 }}
|
|
||||||
...
|
|
||||||
@@ -10,8 +10,7 @@ repositories:
|
|||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.otterize.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.otterize.registry }}/{{ .Values.charts.otterize.repository }}"
|
||||||
{{ .Values.charts.otterize.repository }}"
|
|
||||||
|
|
||||||
# openDesk Home
|
# openDesk Home
|
||||||
# Source: https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-home
|
# Source: https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-home
|
||||||
@@ -21,8 +20,7 @@ repositories:
|
|||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.home.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.home.registry }}/{{ .Values.charts.home.repository }}"
|
||||||
{{ .Values.charts.home.repository }}"
|
|
||||||
|
|
||||||
# openDesk Certificates
|
# openDesk Certificates
|
||||||
# Source: https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-certificates
|
# Source: https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-certificates
|
||||||
@@ -32,8 +30,7 @@ repositories:
|
|||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.certificates.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.certificates.registry }}/{{ .Values.charts.certificates.repository }}"
|
||||||
{{ .Values.charts.certificates.repository }}"
|
|
||||||
|
|
||||||
# openDesk PostgreSQL
|
# openDesk PostgreSQL
|
||||||
# Source: https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-postgresql
|
# Source: https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-postgresql
|
||||||
@@ -43,8 +40,7 @@ repositories:
|
|||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.postgresql.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.postgresql.registry }}/{{ .Values.charts.postgresql.repository }}"
|
||||||
{{ .Values.charts.postgresql.repository }}"
|
|
||||||
|
|
||||||
# openDesk MariaDB
|
# openDesk MariaDB
|
||||||
# Source: https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-mariadb
|
# Source: https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-mariadb
|
||||||
@@ -54,8 +50,17 @@ repositories:
|
|||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.mariadb.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.mariadb.registry }}/{{ .Values.charts.mariadb.repository }}"
|
||||||
{{ .Values.charts.mariadb.repository }}"
|
|
||||||
|
# openDesk dkimpy-milter
|
||||||
|
# https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-dkimpy-milter
|
||||||
|
- name: "dkimpy-repo"
|
||||||
|
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
||||||
|
verify: {{ .Values.charts.dkimpy.verify }}
|
||||||
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
|
oci: true
|
||||||
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.dkimpy.registry }}/{{ .Values.charts.dkimpy.repository }}"
|
||||||
|
|
||||||
# openDesk Postfix
|
# openDesk Postfix
|
||||||
# https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-postfix
|
# https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-postfix
|
||||||
@@ -65,8 +70,7 @@ repositories:
|
|||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.postfix.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.postfix.registry }}/{{ .Values.charts.postfix.repository }}"
|
||||||
{{ .Values.charts.postfix.repository }}"
|
|
||||||
|
|
||||||
# openDesk ClamAV
|
# openDesk ClamAV
|
||||||
# https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-clamav
|
# https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-clamav
|
||||||
@@ -76,16 +80,14 @@ repositories:
|
|||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.clamav.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.clamav.registry }}/{{ .Values.charts.clamav.repository }}"
|
||||||
{{ .Values.charts.clamav.repository }}"
|
|
||||||
- name: "clamav-simple-repo"
|
- name: "clamav-simple-repo"
|
||||||
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
||||||
verify: {{ .Values.charts.clamavSimple.verify }}
|
verify: {{ .Values.charts.clamavSimple.verify }}
|
||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.clamavSimple.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.clamavSimple.registry }}/{{ .Values.charts.clamavSimple.repository }}"
|
||||||
{{ .Values.charts.clamavSimple.repository }}"
|
|
||||||
|
|
||||||
# VMWare Bitnami
|
# VMWare Bitnami
|
||||||
# Source: https://github.com/bitnami/charts/
|
# Source: https://github.com/bitnami/charts/
|
||||||
@@ -95,24 +97,21 @@ repositories:
|
|||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.memcached.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.memcached.registry }}/{{ .Values.charts.memcached.repository }}"
|
||||||
{{ .Values.charts.memcached.repository }}"
|
|
||||||
- name: "redis-repo"
|
- name: "redis-repo"
|
||||||
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
||||||
verify: {{ .Values.charts.redis.verify }}
|
verify: {{ .Values.charts.redis.verify }}
|
||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.redis.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.redis.registry }}/{{ .Values.charts.redis.repository }}"
|
||||||
{{ .Values.charts.redis.repository }}"
|
|
||||||
- name: "minio-repo"
|
- name: "minio-repo"
|
||||||
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
||||||
verify: {{ .Values.charts.minio.verify }}
|
verify: {{ .Values.charts.minio.verify }}
|
||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.minio.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.minio.registry }}/{{ .Values.charts.minio.repository }}"
|
||||||
{{ .Values.charts.minio.repository }}"
|
|
||||||
|
|
||||||
releases:
|
releases:
|
||||||
- name: "opendesk-otterize"
|
- name: "opendesk-otterize"
|
||||||
@@ -120,6 +119,7 @@ releases:
|
|||||||
version: "{{ .Values.charts.otterize.version }}"
|
version: "{{ .Values.charts.otterize.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-otterize.yaml.gotmpl"
|
- "values-otterize.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.opendeskOtterize | default "additionalValues: false" }}
|
||||||
installed: {{ .Values.security.otterizeIntents.enabled }}
|
installed: {{ .Values.security.otterizeIntents.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
@@ -128,6 +128,7 @@ releases:
|
|||||||
version: "{{ .Values.charts.home.version }}"
|
version: "{{ .Values.charts.home.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-home.yaml.gotmpl"
|
- "values-home.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.opendeskHome | default "additionalValues: false" }}
|
||||||
installed: {{ .Values.home.enabled }}
|
installed: {{ .Values.home.enabled }}
|
||||||
|
|
||||||
- name: "opendesk-certificates"
|
- name: "opendesk-certificates"
|
||||||
@@ -135,6 +136,7 @@ releases:
|
|||||||
version: "{{ .Values.charts.certificates.version }}"
|
version: "{{ .Values.charts.certificates.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-certificates.yaml.gotmpl"
|
- "values-certificates.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.opendeskCertificates | default "additionalValues: false" }}
|
||||||
installed: {{ .Values.certificates.enabled }}
|
installed: {{ .Values.certificates.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
@@ -143,6 +145,7 @@ releases:
|
|||||||
version: "{{ .Values.charts.redis.version }}"
|
version: "{{ .Values.charts.redis.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-redis.yaml.gotmpl"
|
- "values-redis.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.redis | default "additionalValues: false" }}
|
||||||
installed: {{ .Values.redis.enabled }}
|
installed: {{ .Values.redis.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
@@ -151,6 +154,7 @@ releases:
|
|||||||
version: "{{ .Values.charts.memcached.version }}"
|
version: "{{ .Values.charts.memcached.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-memcached.yaml.gotmpl"
|
- "values-memcached.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.memcached | default "additionalValues: false" }}
|
||||||
installed: {{ .Values.memcached.enabled }}
|
installed: {{ .Values.memcached.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
@@ -159,6 +163,7 @@ releases:
|
|||||||
version: "{{ .Values.charts.postgresql.version }}"
|
version: "{{ .Values.charts.postgresql.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-postgresql.yaml.gotmpl"
|
- "values-postgresql.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.postgresql | default "additionalValues: false" }}
|
||||||
installed: {{ .Values.postgresql.enabled }}
|
installed: {{ .Values.postgresql.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
@@ -167,6 +172,7 @@ releases:
|
|||||||
version: "{{ .Values.charts.mariadb.version }}"
|
version: "{{ .Values.charts.mariadb.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-mariadb.yaml.gotmpl"
|
- "values-mariadb.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.mariadb | default "additionalValues: false" }}
|
||||||
installed: {{ .Values.mariadb.enabled }}
|
installed: {{ .Values.mariadb.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
@@ -175,14 +181,25 @@ releases:
|
|||||||
version: "{{ .Values.charts.postfix.version }}"
|
version: "{{ .Values.charts.postfix.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-postfix.yaml.gotmpl"
|
- "values-postfix.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.postfix | default "additionalValues: false" }}
|
||||||
installed: {{ .Values.postfix.enabled }}
|
installed: {{ .Values.postfix.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
|
- name: "opendesk-dkimpy-milter"
|
||||||
|
chart: "dkimpy-repo/{{ .Values.charts.dkimpy.name }}"
|
||||||
|
version: "{{ .Values.charts.dkimpy.version }}"
|
||||||
|
values:
|
||||||
|
- "values-dkimpy.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.opendeskDkimpyMilter | default "additionalValues: false" }}
|
||||||
|
installed: {{ .Values.dkimpy.enabled }}
|
||||||
|
timeout: 900
|
||||||
|
|
||||||
- name: "clamav"
|
- name: "clamav"
|
||||||
chart: "clamav-repo/{{ .Values.charts.clamav.name }}"
|
chart: "clamav-repo/{{ .Values.charts.clamav.name }}"
|
||||||
version: "{{ .Values.charts.clamav.version }}"
|
version: "{{ .Values.charts.clamav.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-clamav-distributed.yaml.gotmpl"
|
- "values-clamav-distributed.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.clamav | default "additionalValues: false" }}
|
||||||
installed: {{ .Values.clamavDistributed.enabled }}
|
installed: {{ .Values.clamavDistributed.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
@@ -191,6 +208,7 @@ releases:
|
|||||||
version: "{{ .Values.charts.clamavSimple.version }}"
|
version: "{{ .Values.charts.clamavSimple.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-clamav-simple.yaml.gotmpl"
|
- "values-clamav-simple.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.clamavSimple | default "additionalValues: false" }}
|
||||||
installed: {{ .Values.clamavSimple.enabled }}
|
installed: {{ .Values.clamavSimple.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
@@ -199,6 +217,7 @@ releases:
|
|||||||
version: "{{ .Values.charts.minio.version }}"
|
version: "{{ .Values.charts.minio.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-minio.yaml.gotmpl"
|
- "values-minio.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.minio | default "additionalValues: false" }}
|
||||||
installed: {{ .Values.minio.enabled }}
|
installed: {{ .Values.minio.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
|
||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
|
||||||
---
|
|
||||||
bases:
|
|
||||||
- "../../bases/environments.yaml"
|
|
||||||
---
|
|
||||||
helmfiles:
|
|
||||||
- path: "./helmfile-child.yaml"
|
|
||||||
values:
|
|
||||||
- {{ toYaml .Values | nindent 8 }}
|
|
||||||
...
|
|
||||||
12
helmfile/apps/services/helmfile.yaml.gotmpl
Normal file
12
helmfile/apps/services/helmfile.yaml.gotmpl
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
---
|
||||||
|
bases:
|
||||||
|
- "../../bases/environments.yaml"
|
||||||
|
---
|
||||||
|
helmfiles:
|
||||||
|
- path: "./helmfile-child.yaml.gotmpl"
|
||||||
|
values:
|
||||||
|
- {{ toYaml .Values | nindent 8 }}
|
||||||
|
...
|
||||||
@@ -1,4 +1,5 @@
|
|||||||
{{/*
|
{{/*
|
||||||
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
SPDX-License-Identifier: Apache-2.0
|
SPDX-License-Identifier: Apache-2.0
|
||||||
*/}}
|
*/}}
|
||||||
@@ -6,7 +7,48 @@ SPDX-License-Identifier: Apache-2.0
|
|||||||
global:
|
global:
|
||||||
domain: {{ .Values.global.domain | quote }}
|
domain: {{ .Values.global.domain | quote }}
|
||||||
hosts:
|
hosts:
|
||||||
{{ .Values.global.hosts | toYaml | nindent 4 }}
|
{{- if .Values.collabora.enabled }}
|
||||||
|
collabora: {{ .Values.global.hosts.collabora }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.cryptpad.enabled }}
|
||||||
|
cryptpad: {{ .Values.global.hosts.cryptpad }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.element.enabled }}
|
||||||
|
element: {{ .Values.global.hosts.element }}
|
||||||
|
matrixNeoBoardWidget: {{ .Values.global.hosts.matrixNeoBoardWidget }}
|
||||||
|
matrixNeoChoiceWidget: {{ .Values.global.hosts.matrixNeoChoiceWidget }}
|
||||||
|
matrixNeoDateFixBot: {{ .Values.global.hosts.matrixNeoDateFixBot }}
|
||||||
|
matrixNeoDateFixWidget: {{ .Values.global.hosts.matrixNeoDateFixWidget }}
|
||||||
|
synapse: {{ .Values.global.hosts.synapse }}
|
||||||
|
synapseFederation: {{ .Values.global.hosts.synapseFederation }}
|
||||||
|
whiteboard: {{ .Values.global.hosts.whiteboard }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.nubus.enabled }}
|
||||||
|
intercomService: {{ .Values.global.hosts.intercomService }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.jitsi.enabled }}
|
||||||
|
jitsi: {{ .Values.global.hosts.jitsi }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.minio.enabled }}
|
||||||
|
minioApi: {{ .Values.global.hosts.minioApi }}
|
||||||
|
minioConsole: {{ .Values.global.hosts.minioConsole }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.nextcloud.enabled }}
|
||||||
|
nextcloud: {{ .Values.global.hosts.nextcloud }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.openproject.enabled }}
|
||||||
|
openproject: {{ .Values.global.hosts.openproject }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.oxAppsuite.enabled }}
|
||||||
|
openxchange: {{ .Values.global.hosts.openxchange }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.nubus.enabled }}
|
||||||
|
keycloak: {{ .Values.global.hosts.keycloak }}
|
||||||
|
nubus: {{ .Values.global.hosts.nubus }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.xwiki.enabled }}
|
||||||
|
xwiki: {{ .Values.global.hosts.xwiki }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
issuerRef:
|
issuerRef:
|
||||||
name: {{ .Values.certificate.issuerRef.name | quote }}
|
name: {{ .Values.certificate.issuerRef.name | quote }}
|
||||||
|
|||||||
@@ -1,5 +1,8 @@
|
|||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
{{/*
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
---
|
---
|
||||||
clamd:
|
clamd:
|
||||||
containerSecurityContext:
|
containerSecurityContext:
|
||||||
@@ -18,10 +21,11 @@ clamd:
|
|||||||
seLinuxOptions:
|
seLinuxOptions:
|
||||||
{{ .Values.seLinuxOptions.clamd | toYaml | nindent 6 }}
|
{{ .Values.seLinuxOptions.clamd | toYaml | nindent 6 }}
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.clamd.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.dockerHub .Values.global.imageRegistry .Values.images.clamd.registry | quote }}
|
||||||
repository: {{ .Values.images.clamd.repository | quote }}
|
repository: {{ .Values.images.clamd.repository | quote }}
|
||||||
tag: {{ .Values.images.clamd.tag | quote }}
|
tag: {{ .Values.images.clamd.tag | quote }}
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
podAnnotations: {}
|
||||||
podSecurityContext:
|
podSecurityContext:
|
||||||
enabled: true
|
enabled: true
|
||||||
fsGroup: 101
|
fsGroup: 101
|
||||||
@@ -62,10 +66,11 @@ freshclam:
|
|||||||
seLinuxOptions:
|
seLinuxOptions:
|
||||||
{{ .Values.seLinuxOptions.freshclam | toYaml | nindent 6 }}
|
{{ .Values.seLinuxOptions.freshclam | toYaml | nindent 6 }}
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.freshclam.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.dockerHub .Values.global.imageRegistry .Values.images.freshclam.registry | quote }}
|
||||||
repository: {{ .Values.images.freshclam.repository | quote }}
|
repository: {{ .Values.images.freshclam.repository | quote }}
|
||||||
tag: {{ .Values.images.freshclam.tag | quote }}
|
tag: {{ .Values.images.freshclam.tag | quote }}
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
podAnnotations: {}
|
||||||
podSecurityContext:
|
podSecurityContext:
|
||||||
enabled: true
|
enabled: true
|
||||||
fsGroup: 101
|
fsGroup: 101
|
||||||
@@ -73,7 +78,15 @@ freshclam:
|
|||||||
replicaCount: {{ .Values.replicas.freshclam }}
|
replicaCount: {{ .Values.replicas.freshclam }}
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.freshclam | toYaml | nindent 4 }}
|
{{ .Values.resources.freshclam | toYaml | nindent 4 }}
|
||||||
|
settings:
|
||||||
|
database:
|
||||||
|
auth:
|
||||||
|
{{ .Values.repositories.clamav.auth | toYaml | nindent 8 }}
|
||||||
|
mirror:
|
||||||
|
scheme: {{ .Values.repositories.clamav.mirror.scheme | quote }}
|
||||||
|
url: {{ .Values.repositories.clamav.mirror.url | quote }}
|
||||||
|
customURLs:
|
||||||
|
{{ .Values.repositories.clamav.customURLs | toYaml | nindent 8 }}
|
||||||
global:
|
global:
|
||||||
imagePullSecrets:
|
imagePullSecrets:
|
||||||
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
@@ -95,10 +108,11 @@ icap:
|
|||||||
seLinuxOptions:
|
seLinuxOptions:
|
||||||
{{ .Values.seLinuxOptions.icap | toYaml | nindent 6 }}
|
{{ .Values.seLinuxOptions.icap | toYaml | nindent 6 }}
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.icap.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.icap.registry | quote }}
|
||||||
repository: {{ .Values.images.icap.repository | quote }}
|
repository: {{ .Values.images.icap.repository | quote }}
|
||||||
tag: {{ .Values.images.icap.tag | quote }}
|
tag: {{ .Values.images.icap.tag | quote }}
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
podAnnotations: {}
|
||||||
podSecurityContext:
|
podSecurityContext:
|
||||||
enabled: true
|
enabled: true
|
||||||
fsGroup: 101
|
fsGroup: 101
|
||||||
@@ -124,10 +138,11 @@ milter:
|
|||||||
seLinuxOptions:
|
seLinuxOptions:
|
||||||
{{ .Values.seLinuxOptions.milter | toYaml | nindent 6 }}
|
{{ .Values.seLinuxOptions.milter | toYaml | nindent 6 }}
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.milter.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.dockerHub .Values.global.imageRegistry .Values.images.milter.registry | quote }}
|
||||||
repository: {{ .Values.images.milter.repository | quote }}
|
repository: {{ .Values.images.milter.repository | quote }}
|
||||||
tag: {{ .Values.images.milter.tag | quote }}
|
tag: {{ .Values.images.milter.tag | quote }}
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
podAnnotations: {}
|
||||||
podSecurityContext:
|
podSecurityContext:
|
||||||
enabled: true
|
enabled: true
|
||||||
fsGroup: 101
|
fsGroup: 101
|
||||||
|
|||||||
@@ -1,5 +1,8 @@
|
|||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
{{/*
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
---
|
---
|
||||||
containerSecurityContext:
|
containerSecurityContext:
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
@@ -23,12 +26,12 @@ global:
|
|||||||
|
|
||||||
image:
|
image:
|
||||||
clamav:
|
clamav:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.clamd.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.dockerHub .Values.global.imageRegistry .Values.images.clamd.registry | quote }}
|
||||||
repository: {{ .Values.images.clamd.repository | quote }}
|
repository: {{ .Values.images.clamd.repository | quote }}
|
||||||
tag: {{ .Values.images.clamd.tag | quote }}
|
tag: {{ .Values.images.clamd.tag | quote }}
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
icap:
|
icap:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.icap.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.icap.registry | quote }}
|
||||||
repository: {{ .Values.images.icap.repository | quote }}
|
repository: {{ .Values.images.icap.repository | quote }}
|
||||||
tag: {{ .Values.images.icap.tag | quote }}
|
tag: {{ .Values.images.icap.tag | quote }}
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
@@ -37,6 +40,8 @@ persistence:
|
|||||||
storageClass: {{ .Values.persistence.storageClassNames.RWO | quote }}
|
storageClass: {{ .Values.persistence.storageClassNames.RWO | quote }}
|
||||||
size: {{ .Values.persistence.size.clamav | quote }}
|
size: {{ .Values.persistence.size.clamav | quote }}
|
||||||
|
|
||||||
|
podAnnotations: {}
|
||||||
|
|
||||||
podSecurityContext:
|
podSecurityContext:
|
||||||
enabled: true
|
enabled: true
|
||||||
fsGroup: 101
|
fsGroup: 101
|
||||||
@@ -47,4 +52,14 @@ replicaCount: {{ .Values.replicas.clamav }}
|
|||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.clamd | toYaml | nindent 4 }}
|
{{ .Values.resources.clamd | toYaml | nindent 4 }}
|
||||||
|
|
||||||
|
settings:
|
||||||
|
freshclam:
|
||||||
|
database:
|
||||||
|
auth:
|
||||||
|
{{ .Values.repositories.clamav.auth | toYaml | nindent 8 }}
|
||||||
|
mirror:
|
||||||
|
scheme: {{ .Values.repositories.clamav.mirror.scheme | quote }}
|
||||||
|
url: {{ .Values.repositories.clamav.mirror.url | quote }}
|
||||||
|
customURLs:
|
||||||
|
{{ .Values.repositories.clamav.customURLs | toYaml | nindent 8 }}
|
||||||
...
|
...
|
||||||
|
|||||||
47
helmfile/apps/services/values-dkimpy.yaml.gotmpl
Normal file
47
helmfile/apps/services/values-dkimpy.yaml.gotmpl
Normal file
@@ -0,0 +1,47 @@
|
|||||||
|
{{/*
|
||||||
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
|
---
|
||||||
|
containerSecurityContext:
|
||||||
|
allowPrivilegeEscalation: true
|
||||||
|
capabilities: {}
|
||||||
|
enabled: true
|
||||||
|
seccompProfile:
|
||||||
|
type: "RuntimeDefault"
|
||||||
|
readOnlyRootFilesystem: true
|
||||||
|
runAsNonRoot: true
|
||||||
|
runAsUser: 1000
|
||||||
|
runAsGroup: 1000
|
||||||
|
privileged: false
|
||||||
|
seLinuxOptions:
|
||||||
|
{{ .Values.seLinuxOptions.dkimpy | toYaml | nindent 4 }}
|
||||||
|
|
||||||
|
global:
|
||||||
|
imagePullSecrets:
|
||||||
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
|
|
||||||
|
image:
|
||||||
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.dkimpy.registry | quote }}
|
||||||
|
repository: {{ .Values.images.dkimpy.repository | quote }}
|
||||||
|
tag: {{ .Values.images.dkimpy.tag | quote }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
|
podSecurityContext:
|
||||||
|
enabled: true
|
||||||
|
fsGroup: 1000
|
||||||
|
|
||||||
|
configuration:
|
||||||
|
domain: "{{ .Values.global.domain }}{{ if .Values.global.mailDomain }}, {{ .Values.global.mailDomain }}{{ end }}"
|
||||||
|
key:
|
||||||
|
{{ .Values.smtp.dkim.key | toYaml | nindent 4 }}
|
||||||
|
mode: "s"
|
||||||
|
selector: {{ .Values.smtp.dkim.selector }}
|
||||||
|
useED25519: {{ .Values.smtp.dkim.useED25519 }}
|
||||||
|
|
||||||
|
replicaCount: {{ .Values.replicas.dkimpy }}
|
||||||
|
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.dkimpy | toYaml | nindent 2 }}
|
||||||
|
...
|
||||||
@@ -1,8 +1,12 @@
|
|||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
{{/*
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
---
|
---
|
||||||
cleanup:
|
cleanup:
|
||||||
deletePodsOnSuccess: {{ .Values.debug.cleanup.deletePodsOnSuccess }}
|
deletePodsOnSuccess: {{ .Values.debug.cleanup.deletePodsOnSuccess }}
|
||||||
|
deletePodsOnSuccessTimeout: {{ .Values.debug.cleanup.deletePodsOnSuccessTimeout }}
|
||||||
|
|
||||||
containerSecurityContext:
|
containerSecurityContext:
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
@@ -25,7 +29,7 @@ global:
|
|||||||
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
|
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.mariadb.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.dockerHub .Values.global.imageRegistry .Values.images.mariadb.registry | quote }}
|
||||||
repository: {{ .Values.images.mariadb.repository | quote }}
|
repository: {{ .Values.images.mariadb.repository | quote }}
|
||||||
tag: {{ .Values.images.mariadb.tag | quote }}
|
tag: {{ .Values.images.mariadb.tag | quote }}
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
@@ -35,19 +39,32 @@ job:
|
|||||||
retries: 10
|
retries: 10
|
||||||
wait: 30
|
wait: 30
|
||||||
users:
|
users:
|
||||||
- username: "xwiki_user"
|
- username: {{ .Values.databases.nextcloud.username | quote }}
|
||||||
password: {{ .Values.secrets.mariadb.xwikiUser | quote }}
|
|
||||||
- username: "openxchange_user"
|
|
||||||
password: {{ .Values.secrets.mariadb.openxchangeUser | quote }}
|
|
||||||
- username: "nextcloud_user"
|
|
||||||
password: {{ .Values.secrets.mariadb.nextcloudUser | quote}}
|
password: {{ .Values.secrets.mariadb.nextcloudUser | quote}}
|
||||||
|
connectionLimit: {{ .Values.databases.nextcloud.connectionLimit | default .Values.databases.defaults.userConnectionLimit }}
|
||||||
|
# OX and XWiki are using the db's `root` users (see `database.yaml`). So we are statically referencing their dedicated
|
||||||
|
# users for the moment.
|
||||||
|
- username: "openxchange_user"
|
||||||
|
# - username: {{ .Values.databases.xwiki.username | quote }}
|
||||||
|
password: {{ .Values.secrets.mariadb.openxchangeUser | quote }}
|
||||||
|
connectionLimit: {{ .Values.databases.oxAppsuite.connectionLimit | default .Values.databases.defaults.userConnectionLimit }}
|
||||||
|
- username: "xwiki_user"
|
||||||
|
# - username: {{ .Values.databases.oxAppsuite.username | quote }}
|
||||||
|
password: {{ .Values.secrets.mariadb.xwikiUser | quote }}
|
||||||
|
connectionLimit: {{ .Values.databases.xwiki.connectionLimit | default .Values.databases.defaults.userConnectionLimit }}
|
||||||
databases:
|
databases:
|
||||||
- name: "xwiki"
|
- name: {{ .Values.databases.nextcloud.name | quote }}
|
||||||
user: "xwiki_user"
|
user: {{ .Values.databases.nextcloud.username | quote }}
|
||||||
- name: "nextcloud"
|
# OX and XWiki are using the db's `root` users (see `database.yaml`). So we are statically referencing their dedicated
|
||||||
user: "nextcloud_user"
|
# users for the moment.
|
||||||
- name: "openxchange"
|
- name: "openxchange"
|
||||||
user: "openxchange_user"
|
user: "openxchange_user"
|
||||||
|
# - name: {{ .Values.databases.oxAppsuite.name | quote }}
|
||||||
|
# user: {{ .Values.databases.oxAppsuite.username | quote }}
|
||||||
|
- name: "xwiki"
|
||||||
|
user: "xwiki_user"
|
||||||
|
# - name: {{ .Values.databases.xwiki.name | quote }}
|
||||||
|
# user: {{ .Values.databases.xwiki.username | quote }}
|
||||||
|
|
||||||
mariadb:
|
mariadb:
|
||||||
rootPassword: {{ .Values.secrets.mariadb.rootPassword | quote }}
|
rootPassword: {{ .Values.secrets.mariadb.rootPassword | quote }}
|
||||||
@@ -56,6 +73,10 @@ persistence:
|
|||||||
storageClass: {{ .Values.persistence.storageClassNames.RWO | quote }}
|
storageClass: {{ .Values.persistence.storageClassNames.RWO | quote }}
|
||||||
size: {{ .Values.persistence.size.mariadb | quote }}
|
size: {{ .Values.persistence.size.mariadb | quote }}
|
||||||
|
|
||||||
|
podAnnotations:
|
||||||
|
argocd.argoproj.io/hook: "PostSync"
|
||||||
|
argocd.argoproj.io/hook-delete-policy: "BeforeHookCreation"
|
||||||
|
|
||||||
podSecurityContext:
|
podSecurityContext:
|
||||||
enabled: true
|
enabled: true
|
||||||
fsGroup: 1001
|
fsGroup: 1001
|
||||||
|
|||||||
@@ -1,5 +1,8 @@
|
|||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
{{/*
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
---
|
---
|
||||||
architecture: {{ if gt .Values.replicas.memcached 1 }}"high-availability"{{ else }}"standalone"{{ end }}
|
architecture: {{ if gt .Values.replicas.memcached 1 }}"high-availability"{{ else }}"standalone"{{ end }}
|
||||||
|
|
||||||
@@ -24,11 +27,13 @@ global:
|
|||||||
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
|
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.memcached.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.dockerHub .Values.global.imageRegistry .Values.images.memcached.registry | quote }}
|
||||||
repository: {{ .Values.images.memcached.repository | quote }}
|
repository: {{ .Values.images.memcached.repository | quote }}
|
||||||
tag: {{ .Values.images.memcached.tag | quote }}
|
tag: {{ .Values.images.memcached.tag | quote }}
|
||||||
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
|
podAnnotations: {}
|
||||||
|
|
||||||
replicaCount: {{ .Values.replicas.memcached }}
|
replicaCount: {{ .Values.replicas.memcached }}
|
||||||
|
|
||||||
resources:
|
resources:
|
||||||
|
|||||||
@@ -1,5 +1,8 @@
|
|||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
{{/*
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
---
|
---
|
||||||
apiIngress:
|
apiIngress:
|
||||||
enabled: {{ .Values.ingress.enabled }}
|
enabled: {{ .Values.ingress.enabled }}
|
||||||
@@ -39,7 +42,7 @@ global:
|
|||||||
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
|
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.minio.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.dockerHub .Values.global.imageRegistry .Values.images.minio.registry | quote }}
|
||||||
repository: "{{ .Values.images.minio.repository }}"
|
repository: "{{ .Values.images.minio.repository }}"
|
||||||
tag: "{{ .Values.images.minio.tag }}"
|
tag: "{{ .Values.images.minio.tag }}"
|
||||||
pullPolicy: "{{ .Values.global.imagePullPolicy }}"
|
pullPolicy: "{{ .Values.global.imagePullPolicy }}"
|
||||||
@@ -85,7 +88,8 @@ persistence:
|
|||||||
provisioning:
|
provisioning:
|
||||||
enabled: true
|
enabled: true
|
||||||
cleanupAfterFinished:
|
cleanupAfterFinished:
|
||||||
enabled: true
|
enabled: {{ .Values.debug.cleanup.deletePodsOnSuccess }}
|
||||||
|
seconds: {{ .Values.debug.cleanup.deletePodsOnSuccessTimeout }}
|
||||||
extraCommands:
|
extraCommands:
|
||||||
- "mc anonymous set download provisioning/ums/portal-assets"
|
- "mc anonymous set download provisioning/ums/portal-assets"
|
||||||
buckets:
|
buckets:
|
||||||
@@ -178,6 +182,8 @@ provisioning:
|
|||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.minio | toYaml | nindent 4 }}
|
{{ .Values.resources.minio | toYaml | nindent 4 }}
|
||||||
|
|
||||||
|
podAnnotations: {}
|
||||||
|
|
||||||
readinessProbe:
|
readinessProbe:
|
||||||
enabled: true
|
enabled: true
|
||||||
initialDelaySeconds: 5
|
initialDelaySeconds: 5
|
||||||
|
|||||||
@@ -16,8 +16,6 @@ apps:
|
|||||||
enabled: {{ .Values.dovecot.enabled }}
|
enabled: {{ .Values.dovecot.enabled }}
|
||||||
element:
|
element:
|
||||||
enabled: {{ .Values.element.enabled }}
|
enabled: {{ .Values.element.enabled }}
|
||||||
intercom:
|
|
||||||
enabled: {{ .Values.intercom.enabled }}
|
|
||||||
jitsi:
|
jitsi:
|
||||||
enabled: {{ .Values.jitsi.enabled }}
|
enabled: {{ .Values.jitsi.enabled }}
|
||||||
mariadb:
|
mariadb:
|
||||||
@@ -32,8 +30,6 @@ apps:
|
|||||||
enabled: {{ .Values.openproject.enabled }}
|
enabled: {{ .Values.openproject.enabled }}
|
||||||
oxAppsuite:
|
oxAppsuite:
|
||||||
enabled: {{ .Values.oxAppsuite.enabled }}
|
enabled: {{ .Values.oxAppsuite.enabled }}
|
||||||
oxConnector:
|
|
||||||
enabled: {{ .Values.oxConnector.enabled }}
|
|
||||||
postfix:
|
postfix:
|
||||||
enabled: {{ .Values.postfix.enabled }}
|
enabled: {{ .Values.postfix.enabled }}
|
||||||
postgresql:
|
postgresql:
|
||||||
@@ -48,7 +44,6 @@ apps:
|
|||||||
ingressController:
|
ingressController:
|
||||||
{{ .Values.security.ingressController | toYaml | nindent 2 }}
|
{{ .Values.security.ingressController | toYaml | nindent 2 }}
|
||||||
|
|
||||||
|
|
||||||
extraApps:
|
extraApps:
|
||||||
clusterPostfix:
|
clusterPostfix:
|
||||||
enabled: {{ .Values.security.clusterPostfix.enabled }}
|
enabled: {{ .Values.security.clusterPostfix.enabled }}
|
||||||
|
|||||||
@@ -1,5 +1,8 @@
|
|||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
{{/*
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
---
|
---
|
||||||
certificate:
|
certificate:
|
||||||
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
||||||
@@ -25,7 +28,7 @@ global:
|
|||||||
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
|
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.postfix.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.postfix.registry | quote }}
|
||||||
repository: {{ .Values.images.postfix.repository | quote }}
|
repository: {{ .Values.images.postfix.repository | quote }}
|
||||||
tag: {{ .Values.images.postfix.tag | quote }}
|
tag: {{ .Values.images.postfix.tag | quote }}
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
@@ -49,6 +52,9 @@ postfix:
|
|||||||
- fileName: "sasl_passwd.map"
|
- fileName: "sasl_passwd.map"
|
||||||
content:
|
content:
|
||||||
- {{ printf "%s %s:%s" .Values.smtp.host .Values.smtp.username .Values.smtp.password | quote }}
|
- {{ printf "%s %s:%s" .Values.smtp.host .Values.smtp.username .Values.smtp.password | quote }}
|
||||||
|
{{- if .Values.dkimpy.enabled }}
|
||||||
|
dkimpyHost: "opendesk-dkimpy-milter.{{ .Release.Namespace }}.svc.{{.Values.cluster.networking.domain }}:8892"
|
||||||
|
{{- end }}
|
||||||
rspamdHost: ""
|
rspamdHost: ""
|
||||||
relayHost: {{ if .Values.smtp.host }}{{ printf "[%s]:%d" .Values.smtp.host .Values.smtp.port | quote }}{{ else }}""{{ end }}
|
relayHost: {{ if .Values.smtp.host }}{{ printf "[%s]:%d" .Values.smtp.host .Values.smtp.port | quote }}{{ else }}""{{ end }}
|
||||||
relayNets: {{ join " " .Values.cluster.networking.cidr | quote }}
|
relayNets: {{ join " " .Values.cluster.networking.cidr | quote }}
|
||||||
@@ -70,6 +76,8 @@ postfix:
|
|||||||
virtualMailboxDomains: {{ .Values.global.mailDomain | default .Values.global.domain | quote }}
|
virtualMailboxDomains: {{ .Values.global.mailDomain | default .Values.global.domain | quote }}
|
||||||
virtualTransport: "lmtps:dovecot:24"
|
virtualTransport: "lmtps:dovecot:24"
|
||||||
|
|
||||||
|
podAnnotations: {}
|
||||||
|
|
||||||
replicaCount: {{ .Values.replicas.postfix }}
|
replicaCount: {{ .Values.replicas.postfix }}
|
||||||
|
|
||||||
resources:
|
resources:
|
||||||
|
|||||||
@@ -1,6 +1,13 @@
|
|||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
{{/*
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
---
|
---
|
||||||
|
cleanup:
|
||||||
|
deletePodsOnSuccess: {{ .Values.debug.cleanup.deletePodsOnSuccess }}
|
||||||
|
deletePodsOnSuccessTimeout: {{ .Values.debug.cleanup.deletePodsOnSuccessTimeout }}
|
||||||
|
|
||||||
containerSecurityContext:
|
containerSecurityContext:
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
capabilities:
|
capabilities:
|
||||||
@@ -17,16 +24,11 @@ containerSecurityContext:
|
|||||||
seLinuxOptions:
|
seLinuxOptions:
|
||||||
{{ .Values.seLinuxOptions.postgresql | toYaml | nindent 4 }}
|
{{ .Values.seLinuxOptions.postgresql | toYaml | nindent 4 }}
|
||||||
|
|
||||||
job:
|
|
||||||
|
|
||||||
podSecurityContext:
|
podSecurityContext:
|
||||||
enabled: true
|
enabled: true
|
||||||
fsGroup: 1001
|
fsGroup: 1001
|
||||||
fsGroupChangePolicy: "OnRootMismatch"
|
fsGroupChangePolicy: "OnRootMismatch"
|
||||||
|
|
||||||
postgres:
|
|
||||||
user: "postgres"
|
|
||||||
|
|
||||||
replicaCount: {{ .Values.replicas.postgres }}
|
replicaCount: {{ .Values.replicas.postgres }}
|
||||||
|
|
||||||
global:
|
global:
|
||||||
@@ -34,7 +36,7 @@ global:
|
|||||||
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
|
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.postgresql.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.dockerHub .Values.global.imageRegistry .Values.images.postgresql.registry | quote }}
|
||||||
repository: {{ .Values.images.postgresql.repository | quote }}
|
repository: {{ .Values.images.postgresql.repository | quote }}
|
||||||
tag: {{ .Values.images.postgresql.tag | quote }}
|
tag: {{ .Values.images.postgresql.tag | quote }}
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
@@ -43,42 +45,54 @@ image:
|
|||||||
|
|
||||||
job:
|
job:
|
||||||
users:
|
users:
|
||||||
- username: "keycloak_user"
|
- username: {{ .Values.databases.keycloak.username | quote }}
|
||||||
password: {{ .Values.secrets.postgresql.keycloakUser | quote }}
|
password: {{ .Values.secrets.postgresql.keycloakUser | quote }}
|
||||||
- username: "openproject_user"
|
connectionLimit: {{ .Values.databases.keycloak.connectionLimit | default .Values.databases.defaults.userConnectionLimit }}
|
||||||
|
- username: {{ .Values.databases.openproject.username | quote }}
|
||||||
password: {{ .Values.secrets.postgresql.openprojectUser | quote }}
|
password: {{ .Values.secrets.postgresql.openprojectUser | quote }}
|
||||||
- username: "keycloak_extensions_user"
|
connectionLimit: {{ .Values.databases.openproject.connectionLimit | default .Values.databases.defaults.userConnectionLimit }}
|
||||||
|
- username: {{ .Values.databases.keycloakExtension.username | quote }}
|
||||||
password: {{ .Values.secrets.postgresql.keycloakExtensionUser | quote }}
|
password: {{ .Values.secrets.postgresql.keycloakExtensionUser | quote }}
|
||||||
- username: "matrix_user"
|
connectionLimit: {{ .Values.databases.keycloakExtension.connectionLimit | default .Values.databases.defaults.userConnectionLimit }}
|
||||||
|
- username: {{ .Values.databases.synapse.username | quote }}
|
||||||
password: {{ .Values.secrets.postgresql.matrixUser | quote }}
|
password: {{ .Values.secrets.postgresql.matrixUser | quote }}
|
||||||
- username: "notificationsapi_user"
|
connectionLimit: {{ .Values.databases.synapse.connectionLimit | default .Values.databases.defaults.userConnectionLimit }}
|
||||||
|
- username: {{ .Values.databases.umsNotificationsApi.username | quote }}
|
||||||
password: {{ .Values.secrets.postgresql.umsNotificationsApiUser | quote }}
|
password: {{ .Values.secrets.postgresql.umsNotificationsApiUser | quote }}
|
||||||
- username: "guardianmanagementapi_user"
|
connectionLimit: {{ .Values.databases.umsNotificationsApi.connectionLimit | default .Values.databases.defaults.userConnectionLimit }}
|
||||||
|
- username: {{ .Values.databases.umsGuardianManagementApi.username | quote }}
|
||||||
password: {{ .Values.secrets.postgresql.umsGuardianManagementApiUser | quote }}
|
password: {{ .Values.secrets.postgresql.umsGuardianManagementApiUser | quote }}
|
||||||
- username: "selfservice_user"
|
connectionLimit: {{ .Values.databases.umsGuardianManagementApi.connectionLimit | default .Values.databases.defaults.userConnectionLimit }}
|
||||||
|
- username: {{ .Values.databases.umsSelfservice.username | quote }}
|
||||||
password: {{ .Values.secrets.postgresql.umsSelfserviceUser | quote }}
|
password: {{ .Values.secrets.postgresql.umsSelfserviceUser | quote }}
|
||||||
|
connectionLimit: {{ .Values.databases.umsSelfservice.connectionLimit | default .Values.databases.defaults.userConnectionLimit }}
|
||||||
databases:
|
databases:
|
||||||
- name: "keycloak"
|
- name: {{ .Values.databases.keycloak.name | quote }}
|
||||||
user: "keycloak_user"
|
user: {{ .Values.databases.keycloak.username | quote }}
|
||||||
- name: "keycloak_extensions"
|
- name: {{ .Values.databases.keycloakExtension.name | quote }}
|
||||||
user: "keycloak_extensions_user"
|
user: {{ .Values.databases.keycloakExtension.username | quote }}
|
||||||
- name: "openproject"
|
- name: {{ .Values.databases.openproject.name | quote }}
|
||||||
user: "openproject_user"
|
user: {{ .Values.databases.openproject.username | quote }}
|
||||||
- name: "matrix"
|
- name: {{ .Values.databases.synapse.name | quote }}
|
||||||
user: "matrix_user"
|
user: {{ .Values.databases.synapse.username | quote }}
|
||||||
additionalParams: "ENCODING 'UTF8' LC_COLLATE='C' LC_CTYPE='C' template=template0"
|
additionalParams: "ENCODING 'UTF8' LC_COLLATE='C' LC_CTYPE='C' template=template0"
|
||||||
- name: "guardianmanagementapi"
|
- name: {{ .Values.databases.umsGuardianManagementApi.name | quote }}
|
||||||
user: "guardianmanagementapi_user"
|
user: {{ .Values.databases.umsGuardianManagementApi.username | quote }}
|
||||||
- name: "notificationsapi"
|
- name: {{ .Values.databases.umsNotificationsApi.name | quote }}
|
||||||
user: "notificationsapi_user"
|
user: {{ .Values.databases.umsNotificationsApi.username | quote }}
|
||||||
- name: "selfservice"
|
- name: {{ .Values.databases.umsSelfservice.name | quote }}
|
||||||
user: "selfservice_user"
|
user: {{ .Values.databases.umsSelfservice.username | quote }}
|
||||||
|
|
||||||
persistence:
|
persistence:
|
||||||
storageClass: {{ .Values.persistence.storageClassNames.RWO | quote }}
|
storageClass: {{ .Values.persistence.storageClassNames.RWO | quote }}
|
||||||
size: {{ .Values.persistence.size.postgresql | quote }}
|
size: {{ .Values.persistence.size.postgresql | quote }}
|
||||||
|
|
||||||
|
podAnnotations:
|
||||||
|
argocd.argoproj.io/hook: "PostSync"
|
||||||
|
argocd.argoproj.io/hook-delete-policy: "BeforeHookCreation"
|
||||||
|
|
||||||
postgres:
|
postgres:
|
||||||
|
user: "postgres"
|
||||||
password: {{ .Values.secrets.postgresql.postgresUser | quote }}
|
password: {{ .Values.secrets.postgresql.postgresUser | quote }}
|
||||||
|
|
||||||
resources:
|
resources:
|
||||||
|
|||||||
@@ -1,5 +1,8 @@
|
|||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
{{/*
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
---
|
---
|
||||||
architecture: "standalone"
|
architecture: "standalone"
|
||||||
|
|
||||||
@@ -12,7 +15,7 @@ global:
|
|||||||
storageClass: {{ .Values.persistence.storageClassNames.RWO | quote }}
|
storageClass: {{ .Values.persistence.storageClassNames.RWO | quote }}
|
||||||
|
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.redis.registry | quote }}
|
registry: {{ coalesce .Values.repositories.image.dockerHub .Values.global.imageRegistry .Values.images.redis.registry | quote }}
|
||||||
repository: {{ .Values.images.redis.repository | quote }}
|
repository: {{ .Values.images.redis.repository | quote }}
|
||||||
tag: {{ .Values.images.redis.tag | quote }}
|
tag: {{ .Values.images.redis.tag | quote }}
|
||||||
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
@@ -35,6 +38,7 @@ master:
|
|||||||
count: {{ .Values.replicas.redis }}
|
count: {{ .Values.replicas.redis }}
|
||||||
persistence:
|
persistence:
|
||||||
size: {{ .Values.persistence.size.redis | quote }}
|
size: {{ .Values.persistence.size.redis | quote }}
|
||||||
|
podAnnotations: {}
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.redis | toYaml | nindent 4 }}
|
{{ .Values.resources.redis | toYaml | nindent 4 }}
|
||||||
|
|
||||||
|
|||||||
@@ -10,8 +10,7 @@ repositories:
|
|||||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.xwiki.registry }}/\
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.xwiki.registry }}/{{ .Values.charts.xwiki.repository }}"
|
||||||
{{ .Values.charts.xwiki.repository }}"
|
|
||||||
|
|
||||||
releases:
|
releases:
|
||||||
- name: "xwiki"
|
- name: "xwiki"
|
||||||
@@ -20,8 +19,9 @@ releases:
|
|||||||
wait: true
|
wait: true
|
||||||
values:
|
values:
|
||||||
- "values.yaml.gotmpl"
|
- "values.yaml.gotmpl"
|
||||||
|
- {{ .Values.customization.release.xwiki | default "additionalValues: false" }}
|
||||||
installed: {{ .Values.xwiki.enabled }}
|
installed: {{ .Values.xwiki.enabled }}
|
||||||
timeout: 900
|
timeout: 1800
|
||||||
|
|
||||||
commonLabels:
|
commonLabels:
|
||||||
deploy-stage: "component-1"
|
deploy-stage: "component-1"
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
|
||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
|
||||||
---
|
|
||||||
bases:
|
|
||||||
- "../../bases/environments.yaml"
|
|
||||||
---
|
|
||||||
helmfiles:
|
|
||||||
- path: "./helmfile-child.yaml"
|
|
||||||
values:
|
|
||||||
- {{ toYaml .Values | nindent 8 }}
|
|
||||||
...
|
|
||||||
12
helmfile/apps/xwiki/helmfile.yaml.gotmpl
Normal file
12
helmfile/apps/xwiki/helmfile.yaml.gotmpl
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
---
|
||||||
|
bases:
|
||||||
|
- "../../bases/environments.yaml"
|
||||||
|
---
|
||||||
|
helmfiles:
|
||||||
|
- path: "./helmfile-child.yaml.gotmpl"
|
||||||
|
values:
|
||||||
|
- {{ toYaml .Values | nindent 8 }}
|
||||||
|
...
|
||||||
@@ -1,10 +1,11 @@
|
|||||||
{{/*
|
{{/*
|
||||||
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
SPDX-License-Identifier: Apache-2.0
|
SPDX-License-Identifier: Apache-2.0
|
||||||
*/}}
|
*/}}
|
||||||
---
|
---
|
||||||
image:
|
image:
|
||||||
name: "{{ .Values.global.imageRegistry | default .Values.images.xwiki.registry }}/{{ .Values.images.xwiki.repository }}"
|
name: "{{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.xwiki.registry }}/{{ .Values.images.xwiki.repository }}"
|
||||||
tag: {{ .Values.images.xwiki.tag | quote }}
|
tag: {{ .Values.images.xwiki.tag | quote }}
|
||||||
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
@@ -87,6 +88,8 @@ customConfigs:
|
|||||||
workplaceServices.base: "https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}"
|
workplaceServices.base: "https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}"
|
||||||
workplaceServices.portalSecret: {{ .Values.secrets.centralnavigation.apiKey | quote }}
|
workplaceServices.portalSecret: {{ .Values.secrets.centralnavigation.apiKey | quote }}
|
||||||
openoffice.serverType: "0"
|
openoffice.serverType: "0"
|
||||||
|
openoffice.autoStart: "false"
|
||||||
|
openoffice.homePath: "/tmp"
|
||||||
notifications.emails.live.graceTime: "5"
|
notifications.emails.live.graceTime: "5"
|
||||||
|
|
||||||
ingress:
|
ingress:
|
||||||
@@ -136,13 +139,13 @@ properties:
|
|||||||
"property:xwiki:XWiki.XWikiServerXwiki^XWiki.XWikiServerClass.secure": 1
|
"property:xwiki:XWiki.XWikiServerXwiki^XWiki.XWikiServerClass.secure": 1
|
||||||
"property:xwiki:XWiki.XWikiServerXwiki^XWiki.XWikiServerClass.server": "{{ .Values.global.hosts.xwiki }}.{{ .Values.global.domain }}"
|
"property:xwiki:XWiki.XWikiServerXwiki^XWiki.XWikiServerClass.server": "{{ .Values.global.hosts.xwiki }}.{{ .Values.global.domain }}"
|
||||||
"property:xwiki:XWiki.XWikiServerXwiki^XWiki.XWikiServerClass.port": 443
|
"property:xwiki:XWiki.XWikiServerXwiki^XWiki.XWikiServerClass.port": 443
|
||||||
|
## This option overwrites the LDAP group mappings including all dynamically created mappings, therefore on XWiki restart an LDAP sync is triggered to load the dynamic mapping.
|
||||||
|
"property:xwiki:XWiki.XWikiPreferences^XWiki.XWikiPreferences.ldap_group_mapping": "xwiki:XWiki.XWikiAdminGroup=cn=managed-by-attribute-KnowledgemanagementAdmin,cn=groups,dc=swp-ldap,dc=internal"
|
||||||
## SMTP settings
|
## SMTP settings
|
||||||
"property:xwiki:Mail.MailConfig^Mail.SendMailConfigClass.from": "{{ .Values.smtp.localpartNoReply }}@{{ if .Values.functional.email.systemGenerated.useComponentInSenderdomain }}{{ .Values.global.hosts.xwiki }}.{{ end }}{{ .Values.global.domain }}"
|
"property:xwiki:Mail.MailConfig^Mail.SendMailConfigClass.from": "{{ .Values.smtp.localpartNoReply }}@{{ .Values.global.domain }}"
|
||||||
"property:xwiki:Mail.MailConfig^Mail.SendMailConfigClass.host": {{ .Values.smtp.host | quote }}
|
"property:xwiki:Mail.MailConfig^Mail.SendMailConfigClass.host": {{ printf "%s.%s.svc.%s" "postfix" (.Values.postfix.namespace | default .Release.Namespace) .Values.cluster.networking.domain | quote }}
|
||||||
"property:xwiki:Mail.MailConfig^Mail.SendMailConfigClass.port": {{ .Values.smtp.port | quote }}
|
"property:xwiki:Mail.MailConfig^Mail.SendMailConfigClass.port": 25
|
||||||
"property:xwiki:Mail.MailConfig^Mail.SendMailConfigClass.username": {{ .Values.smtp.username | quote }}
|
"property:xwiki:Mail.MailConfig^Mail.SendMailConfigClass.properties": "mail.smtp.starttls.enable=false"
|
||||||
"property:xwiki:Mail.MailConfig^Mail.SendMailConfigClass.password": {{ .Values.smtp.password | quote }}
|
|
||||||
"property:xwiki:Mail.MailConfig^Mail.SendMailConfigClass.properties": "mail.smtp.starttls.enable=true"
|
|
||||||
## Link LDAP users and users authenticated through OIDC
|
## Link LDAP users and users authenticated through OIDC
|
||||||
"property:xwiki:LDAPUserImport.WebHome^LDAPUserImport.LDAPUserImportConfigClass.addOIDCObject": 1
|
"property:xwiki:LDAPUserImport.WebHome^LDAPUserImport.LDAPUserImportConfigClass.addOIDCObject": 1
|
||||||
"property:xwiki:LDAPUserImport.WebHome^LDAPUserImport.LDAPUserImportConfigClass.OIDCIssuer": "https://{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}/realms/{{ .Values.platform.realm }}"
|
"property:xwiki:LDAPUserImport.WebHome^LDAPUserImport.LDAPUserImportConfigClass.OIDCIssuer": "https://{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}/realms/{{ .Values.platform.realm }}"
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user