Compare commits
36 Commits
chore/open
...
v1.1.2
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c62e66cd84 | ||
|
|
ef7e3d225d | ||
|
|
31a22f38cc | ||
|
|
a25a0e9173 | ||
|
|
ba333cd74e | ||
|
|
17a0adb67c | ||
|
|
91d0f98682 | ||
|
|
09f482981b | ||
|
|
930ae9d3e7 | ||
|
|
581c8aed1f | ||
|
|
de8b560fe7 | ||
|
|
370247b951 | ||
|
|
b32996da34 | ||
|
|
10e0b0ad6c | ||
|
|
32df1657d2 | ||
|
|
8dcac46d98 | ||
|
|
284c9fe0c7 | ||
|
|
83c311b101 | ||
|
|
aff8edbde2 | ||
|
|
9c79c44453 | ||
|
|
1e9e7d8e3a | ||
|
|
1f051e7779 | ||
|
|
824e5cbf3e | ||
|
|
955f17ef8b | ||
|
|
ab49bf9f6b | ||
|
|
777e7d2fc6 | ||
|
|
b70959d82d | ||
|
|
6e343c76a3 | ||
|
|
cd9c54b177 | ||
|
|
4662709673 | ||
|
|
8eeaa23c2f | ||
|
|
601e649913 | ||
|
|
2fcf014894 | ||
|
|
c51c92536a | ||
|
|
e23c97430f | ||
|
|
61d94a8de6 |
3
.gitignore
vendored
@@ -8,6 +8,9 @@
|
|||||||
helmfile/environments/dev/*.yaml.gotmpl
|
helmfile/environments/dev/*.yaml.gotmpl
|
||||||
helmfile/environments/test/*.yaml.gotmpl
|
helmfile/environments/test/*.yaml.gotmpl
|
||||||
helmfile/environments/prod/*.yaml.gotmpl
|
helmfile/environments/prod/*.yaml.gotmpl
|
||||||
|
helmfile/environments/dev/*/
|
||||||
|
helmfile/environments/test/*/
|
||||||
|
helmfile/environments/prod/*/
|
||||||
!helmfile/environments/dev/sample.yaml.gotmpl
|
!helmfile/environments/dev/sample.yaml.gotmpl
|
||||||
!helmfile/environments/test/sample.yaml.gotmpl
|
!helmfile/environments/test/sample.yaml.gotmpl
|
||||||
!helmfile/environments/prod/sample.yaml.gotmpl
|
!helmfile/environments/prod/sample.yaml.gotmpl
|
||||||
|
|||||||
136
.gitlab-ci.yml
@@ -9,6 +9,12 @@ include:
|
|||||||
- "ci/common/lint.yml"
|
- "ci/common/lint.yml"
|
||||||
- "ci/release-automation/semantic-release.yml"
|
- "ci/release-automation/semantic-release.yml"
|
||||||
- local: "/.gitlab/generate/generate-docs.yml"
|
- local: "/.gitlab/generate/generate-docs.yml"
|
||||||
|
- local: "/.gitlab/renovate/renovate.yml"
|
||||||
|
- local: "/.gitlab/release/release-common.yml"
|
||||||
|
- local: "/.gitlab/release/release-generate-version.yml"
|
||||||
|
- local: "/.gitlab/release/release-semantic.yml"
|
||||||
|
- local: "/.gitlab/lint/lint-common.yml"
|
||||||
|
- local: "/.gitlab/lint/lint-reuse.yml"
|
||||||
- project: "${PROJECT_PATH_CUSTOM_ENVIRONMENT_CONFIG}"
|
- project: "${PROJECT_PATH_CUSTOM_ENVIRONMENT_CONFIG}"
|
||||||
file: "gitlab/environments.yaml"
|
file: "gitlab/environments.yaml"
|
||||||
ref: "main"
|
ref: "main"
|
||||||
@@ -73,6 +79,12 @@ variables:
|
|||||||
options:
|
options:
|
||||||
- "yes"
|
- "yes"
|
||||||
- "no"
|
- "no"
|
||||||
|
OPENDESK_ENTERPRISE:
|
||||||
|
description: "Set to `true` if you want to deploy openDesk EE (but be sure you provide the required EE keys/tokens for the application)"
|
||||||
|
value: "false"
|
||||||
|
options:
|
||||||
|
- "true"
|
||||||
|
- "false"
|
||||||
DEPLOY_ALL_COMPONENTS:
|
DEPLOY_ALL_COMPONENTS:
|
||||||
description: "Enable all component deployment (overwrites 'no' setting on component level)."
|
description: "Enable all component deployment (overwrites 'no' setting on component level)."
|
||||||
value: "no"
|
value: "no"
|
||||||
@@ -286,13 +298,13 @@ env-start:
|
|||||||
after_script:
|
after_script:
|
||||||
# Set credentials for openDesk Enterprise Registry
|
# Set credentials for openDesk Enterprise Registry
|
||||||
- |
|
- |
|
||||||
if [[ -n "${OPENDESK_ENTERPRISE}" ]]; then
|
if [ "${OPENDESK_ENTERPRISE}" = "true" ]; then
|
||||||
kubectl create secret
|
kubectl create secret \
|
||||||
--namespace "${NAMESPACE}"
|
--namespace "${NAMESPACE}" \
|
||||||
docker-registry enterprise-registry
|
docker-registry enterprise-registry \
|
||||||
--docker-server "registry.opencode.de"
|
--docker-server "registry.opencode.de" \
|
||||||
--docker-username "${OD_ENTERPRISE_PRIVATE_REGISTRY_USERNAME}"
|
--docker-username "${OD_ENTERPRISE_PRIVATE_REGISTRY_USERNAME}" \
|
||||||
--docker-password "${OD_ENTERPRISE_PRIVATE_REGISTRY_PASSWORD}"
|
--docker-password "${OD_ENTERPRISE_PRIVATE_REGISTRY_PASSWORD}" \
|
||||||
--dry-run=client -o yaml | kubectl apply -f -
|
--dry-run=client -o yaml | kubectl apply -f -
|
||||||
fi
|
fi
|
||||||
stage: "env"
|
stage: "env"
|
||||||
@@ -536,7 +548,8 @@ import-default-accounts:
|
|||||||
--admin_enable_fileshare True \
|
--admin_enable_fileshare True \
|
||||||
--admin_enable_knowledgemanagement True \
|
--admin_enable_knowledgemanagement True \
|
||||||
--admin_enable_projectmanagement True \
|
--admin_enable_projectmanagement True \
|
||||||
--create_admin_accounts True
|
--create_admin_accounts True \
|
||||||
|
--verify_certificate False
|
||||||
|
|
||||||
run-tests:
|
run-tests:
|
||||||
stage: "post-execute"
|
stage: "post-execute"
|
||||||
@@ -575,6 +588,7 @@ run-tests:
|
|||||||
\"screenshot_redirect_step\": \"yes\", \
|
\"screenshot_redirect_step\": \"yes\", \
|
||||||
\"testset\": \"${TESTS_TESTSET}\", \
|
\"testset\": \"${TESTS_TESTSET}\", \
|
||||||
\"testprofile\": \"Namespace\", \
|
\"testprofile\": \"Namespace\", \
|
||||||
|
\"OPENDESK_ENTERPRISE\": \"${OPENDESK_ENTERPRISE}\", \
|
||||||
\"GRACE_PERIOD\": \"${TESTS_GRACE_PERIOD}\", \
|
\"GRACE_PERIOD\": \"${TESTS_GRACE_PERIOD}\", \
|
||||||
\"NUMBER_OF_THREADS\": \"${TESTS_NUMBER_OF_THREADS}\" \
|
\"NUMBER_OF_THREADS\": \"${TESTS_NUMBER_OF_THREADS}\" \
|
||||||
} \
|
} \
|
||||||
@@ -646,110 +660,4 @@ avscan-start:
|
|||||||
- artifact: "dynamic-scans.yml"
|
- artifact: "dynamic-scans.yml"
|
||||||
job: "avscan-prepare"
|
job: "avscan-prepare"
|
||||||
strategy: "depend"
|
strategy: "depend"
|
||||||
|
|
||||||
# Overwrite shared settings
|
|
||||||
.common-semantic-release:
|
|
||||||
image: "registry.opencode.de/bmi/opendesk/components/platform-development/images/semantic-release:1.1.0"
|
|
||||||
tags: []
|
|
||||||
|
|
||||||
conventional-commits-linter:
|
|
||||||
rules:
|
|
||||||
- if: >
|
|
||||||
$RUN_RENOVATE == "yes" ||
|
|
||||||
$JOB_CONVENTIONAL_COMMITS_LINTER_ENABLED == 'false' ||
|
|
||||||
$CI_PIPELINE_SOURCE =~ 'tags|merge_request_event'
|
|
||||||
when: "never"
|
|
||||||
- when: "always"
|
|
||||||
|
|
||||||
common-yaml-linter:
|
|
||||||
rules:
|
|
||||||
- if: "$JOB_COMMON_YAML_LINTER_ENABLED == 'false' || $CI_PIPELINE_SOURCE =~ 'tags|web|merge_request_event'"
|
|
||||||
when: "never"
|
|
||||||
- when: "always"
|
|
||||||
|
|
||||||
reuse-linter:
|
|
||||||
allow_failure: false
|
|
||||||
rules:
|
|
||||||
- if: "$JOB_REUSE_LINTER_ENABLED == 'false' || $CI_PIPELINE_SOURCE =~ 'tags|web|merge_request_event'"
|
|
||||||
when: "never"
|
|
||||||
- when: "always"
|
|
||||||
|
|
||||||
generate-release-version:
|
|
||||||
rules:
|
|
||||||
- if: >
|
|
||||||
$JOB_RELEASE_ENABLED != 'false' &&
|
|
||||||
$CI_COMMIT_BRANCH == $RELEASE_BRANCH &&
|
|
||||||
$CI_PIPELINE_SOURCE =~ "push|merge_request_event"
|
|
||||||
when: "on_success"
|
|
||||||
|
|
||||||
release:
|
|
||||||
rules:
|
|
||||||
- if: >
|
|
||||||
$JOB_AVSCAN_ENABLED != 'false' &&
|
|
||||||
$CI_COMMIT_BRANCH == $RELEASE_BRANCH &&
|
|
||||||
$CI_PIPELINE_SOURCE =~ "push|merge_request_event"
|
|
||||||
when: "on_success"
|
|
||||||
script:
|
|
||||||
- >
|
|
||||||
export RELEASE_VERSION=$(semantic-release --dry-run --branches $CI_COMMIT_REF_NAME --plugins
|
|
||||||
"@semantic-release/gitlab" | grep -oP "Published release [0-9]+\.[0-9]+\.[0-9]+ on" |
|
|
||||||
grep -oP "[0-9]+\.[0-9]+\.[0-9]+")
|
|
||||||
- |
|
|
||||||
if [ -z "${RELEASE_VERSION}" ]; then
|
|
||||||
echo "RELEASE_VERSION=$(git describe --tags --abbrev=0 | sed s@^v@@g )"
|
|
||||||
else
|
|
||||||
echo "RELEASE_VERSION=${RELEASE_VERSION}"
|
|
||||||
fi
|
|
||||||
- |
|
|
||||||
echo -e "\n[INFO] Writing data to helm value file..."
|
|
||||||
cat <<EOF >helmfile/environments/default/global.generated.yaml.gotmpl
|
|
||||||
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
|
||||||
---
|
|
||||||
global:
|
|
||||||
systemInformation:
|
|
||||||
releaseVersion: "v$(echo -E "$RELEASE_VERSION")"
|
|
||||||
...
|
|
||||||
EOF
|
|
||||||
- |
|
|
||||||
cat << 'EOF' > ${CI_PROJECT_DIR}/.releaserc
|
|
||||||
{
|
|
||||||
"branches": ["main"],
|
|
||||||
"plugins": [
|
|
||||||
"@semantic-release/gitlab",
|
|
||||||
"@semantic-release/release-notes-generator",
|
|
||||||
"@semantic-release/changelog",
|
|
||||||
["@semantic-release/git", {
|
|
||||||
"assets": [
|
|
||||||
"charts/**/Chart.yaml",
|
|
||||||
"CHANGELOG.md",
|
|
||||||
"charts/**/README.md",
|
|
||||||
"helmfile/environments/default/global.generated.yaml.gotmpl",
|
|
||||||
".kyverno/kyverno-test.yaml",
|
|
||||||
"docs"
|
|
||||||
],
|
|
||||||
"message": "chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"
|
|
||||||
}]
|
|
||||||
]
|
|
||||||
}
|
|
||||||
EOF
|
|
||||||
- "semantic-release"
|
|
||||||
needs:
|
|
||||||
- "generate-docs"
|
|
||||||
|
|
||||||
renovate:
|
|
||||||
rules:
|
|
||||||
- if: >
|
|
||||||
$RUN_RENOVATE == "yes"
|
|
||||||
when: "on_success"
|
|
||||||
# The `-full` image does not install the dependencies on the fly, that is our preferred approach
|
|
||||||
image: "${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/renovate/renovate:37.356-full"
|
|
||||||
variables:
|
|
||||||
RENOVATE_CONFIG_FILE: "${CI_PROJECT_DIR}/.renovate/config.yaml"
|
|
||||||
RENOVATE_ENDPOINT: "${CI_API_V4_URL}"
|
|
||||||
# Increase the renovatebot log level on stdout
|
|
||||||
LOG_LEVEL: "DEBUG"
|
|
||||||
script:
|
|
||||||
- "renovate ${RENOVATE_EXTRA_FLAGS}"
|
|
||||||
stage: "renovate"
|
|
||||||
...
|
...
|
||||||
|
|||||||
@@ -2,8 +2,8 @@
|
|||||||
# 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.7.1\
|
OPENDESK_CI_CLI_IMAGE: "registry.opencode.de/bmi/opendesk/tooling/opendesk-ci-cli:2.7.2\
|
||||||
@sha256:f09e36a4ad4b3a3a9ed260d6f36293002e39866a877c0a6b1efa16a88b8fd107"
|
@sha256:e33a6327b9c8f89f6e86d13804d5d81e9fdf6974a2f280874d6901067c22fd83"
|
||||||
OPENDESK_LINT_IMAGE: "registry.opencode.de/bmi/opendesk/components/platform-development/images/ci-lint:1.0.14\
|
OPENDESK_LINT_IMAGE: "registry.opencode.de/bmi/opendesk/components/platform-development/images/ci-lint:1.0.14\
|
||||||
@sha256:34d2a96e5fc25155abd48fef4d335b131c71d8cbc00ad531df0cae9918b9f2ab"
|
@sha256:34d2a96e5fc25155abd48fef4d335b131c71d8cbc00ad531df0cae9918b9f2ab"
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
# SPDX-FileCopyrightText: 2024 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
# SPDX-FileCopyrightText: 2024-2025 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
|
||||||
---
|
---
|
||||||
include:
|
include:
|
||||||
@@ -8,4 +8,18 @@ include:
|
|||||||
extends: ".common"
|
extends: ".common"
|
||||||
stage: "lint"
|
stage: "lint"
|
||||||
|
|
||||||
|
common-yaml-linter:
|
||||||
|
rules:
|
||||||
|
- if: "$JOB_COMMON_YAML_LINTER_ENABLED == 'false' || $CI_PIPELINE_SOURCE =~ 'tags|web|merge_request_event'"
|
||||||
|
when: "never"
|
||||||
|
- when: "always"
|
||||||
|
|
||||||
|
conventional-commits-linter:
|
||||||
|
rules:
|
||||||
|
- if: >
|
||||||
|
$RUN_RENOVATE == "yes" ||
|
||||||
|
$JOB_CONVENTIONAL_COMMITS_LINTER_ENABLED == 'false' ||
|
||||||
|
$CI_PIPELINE_SOURCE =~ 'tags|merge_request_event'
|
||||||
|
when: "never"
|
||||||
|
- when: "always"
|
||||||
...
|
...
|
||||||
|
|||||||
10
.gitlab/lint/lint-reuse.yml
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
# SPDX-FileCopyrightText: 2025 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
---
|
||||||
|
reuse-linter:
|
||||||
|
allow_failure: false
|
||||||
|
rules:
|
||||||
|
- if: "$JOB_REUSE_LINTER_ENABLED == 'false' || $CI_PIPELINE_SOURCE =~ 'tags|web|merge_request_event'"
|
||||||
|
when: "never"
|
||||||
|
- when: "always"
|
||||||
|
...
|
||||||
8
.gitlab/release/release-common.yml
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
# SPDX-FileCopyrightText: 2025 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
---
|
||||||
|
# Overwrite shared settings
|
||||||
|
.common-semantic-release:
|
||||||
|
image: "registry.opencode.de/bmi/opendesk/components/platform-development/images/semantic-release:1.1.0"
|
||||||
|
tags: []
|
||||||
|
...
|
||||||
11
.gitlab/release/release-generate-version.yml
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
# SPDX-FileCopyrightText: 2025 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
---
|
||||||
|
generate-release-version:
|
||||||
|
rules:
|
||||||
|
- if: >
|
||||||
|
$JOB_RELEASE_ENABLED != 'false' &&
|
||||||
|
$CI_COMMIT_BRANCH == $RELEASE_BRANCH &&
|
||||||
|
$CI_PIPELINE_SOURCE =~ "push|merge_request_event"
|
||||||
|
when: "on_success"
|
||||||
|
...
|
||||||
63
.gitlab/release/release-semantic.yml
Normal file
@@ -0,0 +1,63 @@
|
|||||||
|
# SPDX-FileCopyrightText: 2025 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
---
|
||||||
|
release:
|
||||||
|
cache:
|
||||||
|
- key: "generate-docs-${CI_COMMIT_REF_SLUG}"
|
||||||
|
paths:
|
||||||
|
- "${CI_PROJECT_DIR}/docs"
|
||||||
|
policy: "pull"
|
||||||
|
rules:
|
||||||
|
- if: >
|
||||||
|
$JOB_AVSCAN_ENABLED != 'false' &&
|
||||||
|
$CI_COMMIT_BRANCH == $RELEASE_BRANCH &&
|
||||||
|
$CI_PIPELINE_SOURCE =~ "push|merge_request_event"
|
||||||
|
when: "on_success"
|
||||||
|
script:
|
||||||
|
- >
|
||||||
|
export RELEASE_VERSION=$(semantic-release --dry-run --branches $CI_COMMIT_REF_NAME --plugins
|
||||||
|
"@semantic-release/gitlab" | grep -oP "Published release [0-9]+\.[0-9]+\.[0-9]+ on" |
|
||||||
|
grep -oP "[0-9]+\.[0-9]+\.[0-9]+")
|
||||||
|
- |
|
||||||
|
if [ -z "${RELEASE_VERSION}" ]; then
|
||||||
|
echo "RELEASE_VERSION=$(git describe --tags --abbrev=0 | sed s@^v@@g )"
|
||||||
|
else
|
||||||
|
echo "RELEASE_VERSION=${RELEASE_VERSION}"
|
||||||
|
fi
|
||||||
|
- |
|
||||||
|
echo -e "\n[INFO] Writing data to helm value file..."
|
||||||
|
cat <<EOF >helmfile/environments/default/global.generated.yaml.gotmpl
|
||||||
|
# SPDX-FileCopyrightText: 2024-2025 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
---
|
||||||
|
global:
|
||||||
|
systemInformation:
|
||||||
|
releaseVersion: "v$(echo -E "$RELEASE_VERSION")"
|
||||||
|
...
|
||||||
|
EOF
|
||||||
|
- |
|
||||||
|
cat << 'EOF' > ${CI_PROJECT_DIR}/.releaserc
|
||||||
|
{
|
||||||
|
"branches": ["main"],
|
||||||
|
"plugins": [
|
||||||
|
"@semantic-release/gitlab",
|
||||||
|
"@semantic-release/release-notes-generator",
|
||||||
|
"@semantic-release/changelog",
|
||||||
|
["@semantic-release/git", {
|
||||||
|
"assets": [
|
||||||
|
"charts/**/Chart.yaml",
|
||||||
|
"CHANGELOG.md",
|
||||||
|
"charts/**/README.md",
|
||||||
|
"helmfile/environments/default/global.generated.yaml.gotmpl",
|
||||||
|
".kyverno/kyverno-test.yaml",
|
||||||
|
"docs"
|
||||||
|
],
|
||||||
|
"message": "chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"
|
||||||
|
}]
|
||||||
|
]
|
||||||
|
}
|
||||||
|
EOF
|
||||||
|
- "semantic-release"
|
||||||
|
needs:
|
||||||
|
- "generate-docs"
|
||||||
|
...
|
||||||
19
.gitlab/renovate/renovate.yml
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
# SPDX-FileCopyrightText: 2025 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
---
|
||||||
|
renovate:
|
||||||
|
rules:
|
||||||
|
- if: >
|
||||||
|
$RUN_RENOVATE == "yes"
|
||||||
|
when: "on_success"
|
||||||
|
# The `-full` image does not install the dependencies on the fly, that is our preferred approach
|
||||||
|
image: "${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/renovate/renovate:37.356-full"
|
||||||
|
variables:
|
||||||
|
RENOVATE_CONFIG_FILE: "${CI_PROJECT_DIR}/.renovate/config.yaml"
|
||||||
|
RENOVATE_ENDPOINT: "${CI_API_V4_URL}"
|
||||||
|
# Increase the renovatebot log level on stdout
|
||||||
|
LOG_LEVEL: "DEBUG"
|
||||||
|
script:
|
||||||
|
- "renovate ${RENOVATE_EXTRA_FLAGS}"
|
||||||
|
stage: "renovate"
|
||||||
|
...
|
||||||
32
CHANGELOG.md
@@ -1,3 +1,35 @@
|
|||||||
|
## [1.1.2](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/compare/v1.1.1...v1.1.2) (2025-02-19)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* **dovecot:** Add Dovecot Pro [EE] ([6e343c7](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/6e343c76a32a5bf4b431bdad6be1f7d107caa4f5))
|
||||||
|
* **element:** Add Element EE components ([61d94a8](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/61d94a8de655d1289aaf59c42f0dbf30b0156e1f))
|
||||||
|
* **helmfile:** Add missing customizing option for Matrix widgets ([9c79c44](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/9c79c44453af7b0c68f4ee2a5e40f1f9fb298570))
|
||||||
|
* **helmfile:** Add SSL option for Keycloak Extensions Proxy's PostgreSQL connection ([91d0f98](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/91d0f9868226b08128af518be741c8614342581e))
|
||||||
|
* **helmfile:** Fine-grained service types ([de8b560](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/de8b560fe7e2294229a959398be60bec9b6a7790))
|
||||||
|
* **helmfile:** Integrate oD EE ([03ec704](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/03ec70435c365eca9f555a195b7ab92cc9eee907))
|
||||||
|
* **helmfile:** Introduce `apps` as top level in `opendesk_main.yaml.gotmpl`; Please check migrations.md for upgrades of existing installations ([2fcf014](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/2fcf014894ac3356ef8c6e57dda30c5176172e5e))
|
||||||
|
* **helmfile:** Make openDesk IAM attributes optional with enabled as default ([b32996d](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/b32996da347c7ec24fb53afe72fee8c07631bebe))
|
||||||
|
* **helmfile:** Provide toggle in `functional.yaml.gotmpl` for "new device notification" mails ([284c9fe](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/284c9fe0c7e217e3f92ec70eaad6ccf593ff2a87))
|
||||||
|
* **helmfile:** Remove reference to no longer required `elementWeb` chart ([cd9c54b](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/cd9c54b17733f9e334c558ccd86e69677264970a))
|
||||||
|
* **helmfile:** Set default for domain to `opendesk.internal` to avoid enforcing DOMAIN environment variable for deployments using YAML overrides ([930ae9d](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/930ae9d3e71bcd3f4034aa4dae5eabb3ae04d11b))
|
||||||
|
* **helmfile:** Update/streamline theming ([8eeaa23](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/8eeaa23c2f68e8e0cbda5b3763ab15ba8262c48d))
|
||||||
|
* **jitsi:** Support for phone dial-in into Jitsi conferences ([1323ef1](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/1323ef142e789820acb05cb4991d10502a35498b))
|
||||||
|
* **nextcloud:** Update `groupfolders` app to fix group selection in admin mode ([ab49bf9](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/ab49bf9f6bb945cdce3950e46382b7361c48e6e4))
|
||||||
|
* **nextcloud:** Update Nextcloud to 29.0.11 and support for Cron-Job specific resource definitions ([09f4829](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/09f482981b96774b3fe0948b7bb120be90157148))
|
||||||
|
* **nubus:** Disable unused notification feature ([955f17e](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/955f17ef8bb72459beb536cdcf6b502b16eabbff))
|
||||||
|
* **nubus:** Fix Keycloak dialogue background length on small screens ([4662709](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/466270967310fab9333b892c904efa86d21f7d17))
|
||||||
|
* **nubus:** Only configure apps that are deployed to show up in IAM admin UI and Keycloak ([1f051e7](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/1f051e777905668297c98dfa507875c08158bfda))
|
||||||
|
* **nubus:** Re-implement toggle for UDM-REST-API based on `functional.externalServices.nubus.udmRestApi.enabled` ([777e7d2](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/777e7d2fc6afa9c53a4ff1c6853c9960b9a22d5f))
|
||||||
|
* **nubus:** Remove doublet `resources` key in `udm-listener` StatefulSet ([10e0b0a](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/10e0b0ad6cbd89bd88b119f17b6cba6ec698f698))
|
||||||
|
* **nubus:** Support for custom UDM commands ([aff8edb](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/aff8edbde2150763d6a36f97b9403c8c67e51fab))
|
||||||
|
* **nubus:** Update Keycloak Extensions Proxy ([601e649](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/601e6499132c3adaaaea374033511eab09132cb2))
|
||||||
|
* **open-xchange:** Parameters to split read and write queries to MariaDB ([370247b](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/370247b95197792a65b84b2d01b9c1806f8b059a))
|
||||||
|
* **open-xchange:** Update OX App Suite to 8.33 ([581c8ae](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/581c8aed1f86bad251141ecb105e59d0054d5a1a))
|
||||||
|
* **openproject:** Update OpenProject to 15.2.1 ([83c311b](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/83c311b101a6fa551d9c25ea4e9a7ef6673137ca))
|
||||||
|
* **oxconnector:** Update to strict `securityContext` from upstream defaults ([32df165](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/32df1657d29a2d73495d52b62bb77521cb8b8e86))
|
||||||
|
|
||||||
## [1.1.1](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/compare/v1.1.0...v1.1.1) (2025-01-27)
|
## [1.1.1](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/compare/v1.1.0...v1.1.1) (2025-01-27)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -38,10 +38,10 @@ The following components have - at least partially - Enterprise specific artifac
|
|||||||
|
|
||||||
# Enabling the Enterprise deployment
|
# Enabling the Enterprise deployment
|
||||||
|
|
||||||
To enable the oD EE deployment you must set the environment variable `OPENDESK_ENTERPRISE` to any value.
|
To enable the oD EE deployment you must set the environment variable `OPENDESK_ENTERPRISE` to any value that does not evaluate to boolean *false* for [Helm flow control](https://helm.sh/docs/chart_template_guide/control_structures/#ifelse), e.g. `"true"`, `"yes"` or `"1"`:
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
OPENDESK_ENTERPRISE=any_value
|
OPENDESK_ENTERPRISE=true
|
||||||
```
|
```
|
||||||
|
|
||||||
# Configuring the oD EE deployment for self-hosted installations
|
# Configuring the oD EE deployment for self-hosted installations
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ openDesk currently features the following functional main components:
|
|||||||
| Groupware | OX App Suite | [8.30](https://documentation.open-xchange.com/appsuite/releases/8.30/) | Online documentation available from within the installed application; [Additional resources](https://documentation.open-xchange.com/) |
|
| Groupware | OX App Suite | [8.30](https://documentation.open-xchange.com/appsuite/releases/8.30/) | Online documentation available from within the installed application; [Additional resources](https://documentation.open-xchange.com/) |
|
||||||
| 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) |
|
| 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 | [1.5.1](https://docs.software-univention.de/nubus-kubernetes-release-notes/latest/en/changelog.html) | [Univention's documentation website](https://docs.software-univention.de/n/en/nubus.html) |
|
| Portal & IAM | Nubus | [1.5.1](https://docs.software-univention.de/nubus-kubernetes-release-notes/latest/en/changelog.html) | [Univention's documentation website](https://docs.software-univention.de/n/en/nubus.html) |
|
||||||
| Project management | OpenProject | [15.2.0](https://www.openproject.org/docs/release-notes/15-2-0/) | [For the most recent release](https://www.openproject.org/docs/user-guide/) |
|
| Project management | OpenProject | [15.2.1](https://www.openproject.org/docs/release-notes/15-2-1/) | [For the most recent release](https://www.openproject.org/docs/user-guide/) |
|
||||||
| Videoconferencing | Jitsi | [2.0.9823](https://github.com/jitsi/jitsi-meet/releases/tag/stable%2Fjitsi-meet_9823) | [For the most recent release](https://jitsi.github.io/handbook/docs/category/user-guide/) |
|
| Videoconferencing | Jitsi | [2.0.9823](https://github.com/jitsi/jitsi-meet/releases/tag/stable%2Fjitsi-meet_9823) | [For the most recent release](https://jitsi.github.io/handbook/docs/category/user-guide/) |
|
||||||
| Weboffice | Collabora | [24.04.9.2](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.9.2](https://www.collaboraoffice.com/code-24-04-release-notes/) | Online documentation available from within the installed application; [Additional resources](https://sdk.collaboraonline.com/) |
|
||||||
|
|
||||||
|
|||||||
@@ -7,30 +7,40 @@ SPDX-License-Identifier: Apache-2.0
|
|||||||
|
|
||||||
* [charts-local.py](#charts-localpy)
|
* [charts-local.py](#charts-localpy)
|
||||||
* [Commandline parameter](#commandline-parameter)
|
* [Commandline parameter](#commandline-parameter)
|
||||||
* [`--branch`](#--branch)
|
* [`--match <your_string>`](#--match-your_string)
|
||||||
* [`--revert`](#--revert)
|
* [`--revert`](#--revert)
|
||||||
|
* [`--branch` (deprecated)](#--branch-deprecated)
|
||||||
|
|
||||||
# charts-local.py
|
# charts-local.py
|
||||||
|
|
||||||
This script helps you on cloning the platform development Helm charts and referencing them directly in the openDesk
|
This script helps you with cloning/pulling Helm charts and referencing them directly in the openDesk
|
||||||
Helmfile deployment for comfortable local test and development. The charts will be cloned into a directory
|
Helmfile deployment for comfortable local test and development. The charts will be cloned/pulled into a directory
|
||||||
parallel created next to the `opendesk` repo containing this documentation and the `charts-local.py` script.
|
created next to the `opendesk` repo containing this documentation and the `charts-local.py` script.
|
||||||
The name of the chart directory is derived from the branch name you are working with in this `opendesk` repo.
|
|
||||||
|
|
||||||
The script will create `.bak` copies of the helmfiles that have been touched.
|
The name of the directory containing the charts is based on the (currently) selected branch of the openDesk
|
||||||
|
repo prefixed with `charts-`.
|
||||||
|
|
||||||
|
The script will create `.bak` copies of the helmfiles that have been touched that can easily be reverted to
|
||||||
|
using the `--revert` option.
|
||||||
|
|
||||||
Run the script with `-h` to get information about the script's parameter on commandline.
|
Run the script with `-h` to get information about the script's parameter on commandline.
|
||||||
|
|
||||||
## Commandline parameter
|
## Commandline parameter
|
||||||
|
|
||||||
### `--branch`
|
### `--match <your_string>`
|
||||||
|
|
||||||
|
Will only fetch repos or pull images for charts which name matches `<your_string>`.
|
||||||
|
|
||||||
|
### `--revert`
|
||||||
|
|
||||||
|
Reverts the changes in the helmfiles pointing to the local Helm charts by copying the backup files created by the
|
||||||
|
scripts itself back to their original location.
|
||||||
|
|
||||||
|
### `--branch` (deprecated)
|
||||||
|
|
||||||
Optional parameter: Defines a branch for the `opendesk` repo to work with. The script will create the branch if it
|
Optional parameter: Defines a branch for the `opendesk` repo to work with. The script will create the branch if it
|
||||||
does not exist yet. Otherwise it will switch to defined branch.
|
does not exist yet. Otherwise it will switch to defined branch.
|
||||||
|
|
||||||
If parameter is omitted the current branch of the `opendesk` repo will be used.
|
If parameter is omitted the current branch of the `opendesk` repo will be used.
|
||||||
|
|
||||||
### `--revert`
|
As this parameter was used rarely, we might remove the support in a later version.
|
||||||
|
|
||||||
Reverts the changes in the helmfiles pointing to the local Helm charts by copying the backup files created by the
|
|
||||||
scripts itself back to their original location.
|
|
||||||
|
|||||||
@@ -18,7 +18,6 @@ p.add('--branch', env_var='CHART_DEV_BRANCH', help='The branch you want to work
|
|||||||
p.add('--git_hostname', env_var='GIT_HOSTNAME', default='git@gitlab.opencode.de', help='Set the hostname for the chart git checkouts.')
|
p.add('--git_hostname', env_var='GIT_HOSTNAME', default='git@gitlab.opencode.de', help='Set the hostname for the chart git checkouts.')
|
||||||
p.add('--revert', default=False, action='store_true', help='Set this parameter if you want to revert the referencing of the local helm chart checkout paths in the helmfiles.')
|
p.add('--revert', default=False, action='store_true', help='Set this parameter if you want to revert the referencing of the local helm chart checkout paths in the helmfiles.')
|
||||||
p.add('--match', default='', help="Clone/pull only charts that contain the given string in their name.")
|
p.add('--match', default='', help="Clone/pull only charts that contain the given string in their name.")
|
||||||
p.add('--pull', default=False, action='store_true', help='Will also pull and unpack Helm charts that are not developed by product development.')
|
|
||||||
p.add('--loglevel', env_var='LOGLEVEL', default='DEBUG', help='Set the loglevel: DEBUG, INFO, WARNING, ERROR, CRITICAL-')
|
p.add('--loglevel', env_var='LOGLEVEL', default='DEBUG', help='Set the loglevel: DEBUG, INFO, WARNING, ERROR, CRITICAL-')
|
||||||
options = p.parse_args()
|
options = p.parse_args()
|
||||||
|
|
||||||
@@ -78,13 +77,10 @@ def create_path_if_not_exists(path):
|
|||||||
Path(path).mkdir(parents=True, exist_ok=True)
|
Path(path).mkdir(parents=True, exist_ok=True)
|
||||||
|
|
||||||
def clone_charts_locally(branch, charts):
|
def clone_charts_locally(branch, charts):
|
||||||
charts_clone_path = script_path+'/../../chart-repo/'+branch.replace('/', '_')
|
charts_path = script_path+'/../../charts-'+branch.replace('/', '_')
|
||||||
charts_pull_path = script_path+'/../../chart-pull/'+branch.replace('/', '_')
|
|
||||||
charts_dict = {}
|
charts_dict = {}
|
||||||
doublette_dict = {}
|
doublette_dict = {}
|
||||||
create_path_if_not_exists(charts_clone_path)
|
create_path_if_not_exists(charts_path)
|
||||||
if options.pull:
|
|
||||||
create_path_if_not_exists(charts_pull_path)
|
|
||||||
|
|
||||||
for chart in charts['charts']:
|
for chart in charts['charts']:
|
||||||
tag = charts['charts'][chart]['version']
|
tag = charts['charts'][chart]['version']
|
||||||
@@ -92,41 +88,41 @@ def clone_charts_locally(branch, charts):
|
|||||||
registry = charts['charts'][chart]['registry']
|
registry = charts['charts'][chart]['registry']
|
||||||
name = charts['charts'][chart]['name']
|
name = charts['charts'][chart]['name']
|
||||||
logging.debug(f"Working on {chart} / tag {tag} / repo {repository}")
|
logging.debug(f"Working on {chart} / tag {tag} / repo {repository}")
|
||||||
|
chart_local_path = charts_path+'/'+name
|
||||||
if not options.match in name:
|
if not options.match in name:
|
||||||
logging.info(f"Chart name {name} does not match {options.match} - skipping...")
|
logging.info(f"Chart name {name} does not match {options.match} - skipping...")
|
||||||
|
continue
|
||||||
elif registry == '':
|
elif registry == '':
|
||||||
logging.info("Empty registry definition - skipping...")
|
logging.info("Empty registry definition - skipping...")
|
||||||
|
continue
|
||||||
|
if os.path.isdir(chart_local_path):
|
||||||
|
logging.debug(f"Found pre-existing {chart_local_path} skipping clone/pull, but will still reference chart in Helmfile...")
|
||||||
|
charts_dict[chart] = chart_local_path
|
||||||
|
continue
|
||||||
elif 'opendesk/components/platform-development/charts' in repository:
|
elif 'opendesk/components/platform-development/charts' in repository:
|
||||||
logging.info("Cloning the charts repo")
|
logging.info("Cloning the charts repo")
|
||||||
git_url = options.git_hostname+':'+repository
|
git_url = options.git_hostname+':'+repository
|
||||||
chart_repo_path = charts_clone_path+'/'+charts['charts'][chart]['name']
|
|
||||||
if git_url in doublette_dict:
|
if git_url in doublette_dict:
|
||||||
logging.debug(f"{chart} located at {git_url} is already checked out to {doublette_dict[git_url]}")
|
logging.debug(f"{chart} located at {git_url} is already checked out to {doublette_dict[git_url]}")
|
||||||
charts_dict[chart] = doublette_dict[git_url]
|
charts_dict[chart] = doublette_dict[git_url]
|
||||||
else:
|
else:
|
||||||
if os.path.isdir(chart_repo_path):
|
logging.debug(f"Cloning into {chart_local_path}")
|
||||||
logging.debug(f"Already exists {chart_repo_path} leaving it unmodified")
|
Repo.clone_from(git_url, chart_local_path)
|
||||||
else:
|
chart_repo = Repo(path=chart_local_path)
|
||||||
logging.debug(f"Cloning into {chart_repo_path}")
|
|
||||||
Repo.clone_from(git_url, chart_repo_path)
|
|
||||||
chart_repo = Repo(path=chart_repo_path)
|
|
||||||
chart_repo.git.checkout('v'+charts['charts'][chart]['version'])
|
chart_repo.git.checkout('v'+charts['charts'][chart]['version'])
|
||||||
doublette_dict[git_url] = chart_repo_path
|
doublette_dict[git_url] = chart_local_path
|
||||||
charts_dict[chart] = chart_repo_path
|
charts_dict[chart] = chart_local_path
|
||||||
elif options.pull:
|
else:
|
||||||
logging.info("Pulling the chart")
|
logging.info("Pulling the chart")
|
||||||
helm_command = f"helm pull oci://{registry}/{repository}/{name} --version {tag} --untar --destination {charts_pull_path}"
|
helm_command = f"helm pull oci://{registry}/{repository}/{name} --version {tag} --untar --destination {charts_path}"
|
||||||
logging.debug(f"CLI command: {helm_command}")
|
logging.debug(f"CLI command: {helm_command}")
|
||||||
try:
|
try:
|
||||||
output = subprocess.check_output(helm_command, shell = True)
|
subprocess.check_output(helm_command, shell = True)
|
||||||
except subprocess.CalledProcessError:
|
except subprocess.CalledProcessError:
|
||||||
sys.exit(f"! CLI command '{helm_command}' failed")
|
sys.exit(f"! CLI command '{helm_command}' failed")
|
||||||
else:
|
charts_dict[chart] = chart_local_path
|
||||||
logging.debug("Not a product development chart and `--pull` option not enabled - skipping...")
|
|
||||||
|
|
||||||
return charts_dict
|
return charts_dict
|
||||||
|
|
||||||
|
|
||||||
def grep_yaml(file):
|
def grep_yaml(file):
|
||||||
with open(file, 'r') as file:
|
with open(file, 'r') as file:
|
||||||
content = ''
|
content = ''
|
||||||
@@ -156,7 +152,12 @@ def process_the_helmfiles(charts_dict, charts):
|
|||||||
for chart_ident in charts_dict:
|
for chart_ident in charts_dict:
|
||||||
if '.Values.charts.'+chart_ident+'.name' in line:
|
if '.Values.charts.'+chart_ident+'.name' in line:
|
||||||
logging.debug(f"found match with {chart_ident} in {line.strip()}")
|
logging.debug(f"found match with {chart_ident} in {line.strip()}")
|
||||||
line = chart_def_prefix+charts_dict[chart_ident]+'/charts/'+charts['charts'][chart_ident]['name']+'" # replaced by local-dev script'+"\n"
|
line = charts_dict[chart_ident]
|
||||||
|
if os.path.isdir(line+'/charts/'+chart_ident):
|
||||||
|
line += '/charts/'+charts['charts'][chart_ident]['name']
|
||||||
|
elif not os.path.isdir(line):
|
||||||
|
sys.exit(f"! Did not find directory to reference in Helmfile: '{line}'")
|
||||||
|
line = chart_def_prefix+line+'" # replaced by local-dev script'+"\n"
|
||||||
child_helmfile_updated = True
|
child_helmfile_updated = True
|
||||||
break
|
break
|
||||||
output.append(line)
|
output.append(line)
|
||||||
|
|||||||
@@ -168,7 +168,7 @@ While you will find all the details for the CLI tool in [the online documentatio
|
|||||||
|
|
||||||
`occ` is the CLI for Nextcloud; all the details can be found in the [upstream documentation](https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/occ_command.html).
|
`occ` is the CLI for Nextcloud; all the details can be found in the [upstream documentation](https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/occ_command.html).
|
||||||
|
|
||||||
You can run occ commands in the `opendesk-nextcloud-php` pod like this: `php /var/www/html/occ config:list`
|
You can run occ commands in the `opendesk-nextcloud-aio` pod like this: `php /var/www/html/occ config:list`
|
||||||
|
|
||||||
## OpenProject
|
## OpenProject
|
||||||
|
|
||||||
|
|||||||
@@ -98,6 +98,8 @@ multiple namespaces in a cluster.
|
|||||||
name: selfsigned-issuer
|
name: selfsigned-issuer
|
||||||
kind: ClusterIssuer
|
kind: ClusterIssuer
|
||||||
group: cert-manager.io
|
group: cert-manager.io
|
||||||
|
duration: 87600h # 10y
|
||||||
|
renewBefore: 87599h
|
||||||
```
|
```
|
||||||
|
|
||||||
1. Copy this cert's secret into the/each namespace you want to make use of the cert.
|
1. Copy this cert's secret into the/each namespace you want to make use of the cert.
|
||||||
|
|||||||
@@ -9,6 +9,9 @@ SPDX-License-Identifier: Apache-2.0
|
|||||||
* [Disclaimer](#disclaimer)
|
* [Disclaimer](#disclaimer)
|
||||||
* [Automated migrations - Overview and mandatory upgrade path](#automated-migrations---overview-and-mandatory-upgrade-path)
|
* [Automated migrations - Overview and mandatory upgrade path](#automated-migrations---overview-and-mandatory-upgrade-path)
|
||||||
* [Manual checks/actions](#manual-checksactions)
|
* [Manual checks/actions](#manual-checksactions)
|
||||||
|
* [From v1.1.1](#from-v111)
|
||||||
|
* [Pre-upgrade from v1.1.1](#pre-upgrade-from-v111)
|
||||||
|
* [Helmfile feature update: App settings wrapped in `apps.` element](#helmfile-feature-update-app-settings-wrapped-in-apps-element)
|
||||||
* [From v1.1.0](#from-v110)
|
* [From v1.1.0](#from-v110)
|
||||||
* [Pre-upgrade from v1.1.0](#pre-upgrade-from-v110)
|
* [Pre-upgrade from v1.1.0](#pre-upgrade-from-v110)
|
||||||
* [Helmfile feature update: Component specific `storageClassName`](#helmfile-feature-update-component-specific-storageclassname)
|
* [Helmfile feature update: Component specific `storageClassName`](#helmfile-feature-update-component-specific-storageclassname)
|
||||||
@@ -86,6 +89,37 @@ When interested in more details about the automated migrations, please read sect
|
|||||||
|
|
||||||
Be sure you check all the sections for the releases your are going to update your current deployment from.
|
Be sure you check all the sections for the releases your are going to update your current deployment from.
|
||||||
|
|
||||||
|
## From v1.1.1
|
||||||
|
|
||||||
|
### Pre-upgrade from v1.1.1
|
||||||
|
|
||||||
|
#### Helmfile feature update: App settings wrapped in `apps.` element
|
||||||
|
|
||||||
|
We require now [Helmfile v1.0.0-rc.8](https://github.com/helmfile/helmfile/releases/tag/v1.0.0-rc.8) for the deployment. This enables openDesk to lay the foundation for some significant cleanups where the information for the different apps especially on their `enabled` state is needed.
|
||||||
|
|
||||||
|
Therefore it was required to introduce the `apps` level in [`opendesk_main.yaml.gotmpl`](../helmfile/environments/default/opendesk_main.yaml.gotmpl).
|
||||||
|
|
||||||
|
If you have a deployment where you specify settings that can be found in the aforementioned file, usually to disable components or enable others, please ensure you insert the top-level attribute `apps` like shown in the following example:
|
||||||
|
|
||||||
|
So a setting of:
|
||||||
|
|
||||||
|
```
|
||||||
|
certificates:
|
||||||
|
enabled: false
|
||||||
|
notes:
|
||||||
|
enabled: true
|
||||||
|
```
|
||||||
|
|
||||||
|
needs to be changed to:
|
||||||
|
|
||||||
|
```
|
||||||
|
apps:
|
||||||
|
certificates:
|
||||||
|
enabled: false
|
||||||
|
notes:
|
||||||
|
enabled: true
|
||||||
|
```
|
||||||
|
|
||||||
## From v1.1.0
|
## From v1.1.0
|
||||||
|
|
||||||
### Pre-upgrade from v1.1.0
|
### Pre-upgrade from v1.1.0
|
||||||
|
|||||||
@@ -24,9 +24,10 @@ openDesk is a Kubernetes-only solution and requires an existing Kubernetes (K8s)
|
|||||||
|
|
||||||
- K8s cluster >= 1.24, [CNCF Certified Kubernetes distribution](https://www.cncf.io/certification/software-conformance/)
|
- K8s cluster >= 1.24, [CNCF Certified Kubernetes distribution](https://www.cncf.io/certification/software-conformance/)
|
||||||
- Domain and DNS Service
|
- Domain and DNS Service
|
||||||
- Ingress controller (Ingress NGINX)
|
- Ingress controller (Ingress NGINX) == [4.11.x/1.11.x](https://github.com/kubernetes/ingress-nginx/releases) - tested with 1.11.1 up to 1.11.4
|
||||||
|
- **Note**: We are working on support for more recent versions, as issues have been reported with 1.12.x.
|
||||||
- [Helm](https://helm.sh/) >= v3.9.0
|
- [Helm](https://helm.sh/) >= v3.9.0
|
||||||
- [Helmfile](https://helmfile.readthedocs.io/en/latest/) >= **v1.0.0-rc5**
|
- [Helmfile](https://helmfile.readthedocs.io/en/latest/) >= **v1.0.0-rc8**
|
||||||
- [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/)
|
||||||
|
|||||||
@@ -1,8 +1,7 @@
|
|||||||
<!--
|
<!--
|
||||||
SPDX-FileCopyrightText: 2024 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
SPDX-FileCopyrightText: 2025 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
SPDX-License-Identifier: Apache-2.0
|
SPDX-License-Identifier: Apache-2.0
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<h1>Kubernetes Security Context</h1>
|
<h1>Kubernetes Security Context</h1>
|
||||||
|
|
||||||
<!-- TOC -->
|
<!-- TOC -->
|
||||||
@@ -63,7 +62,7 @@ containerSecurityContext:
|
|||||||
## privileged
|
## privileged
|
||||||
|
|
||||||
|
|
||||||
Privileged Pods disable most security mechanisms and must be disallowed.
|
Privileged Pods eliminate most security mechanisms and must be disallowed.
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
containerSecurityContext:
|
containerSecurityContext:
|
||||||
@@ -93,7 +92,7 @@ containerSecurityContext:
|
|||||||
## seccompProfile
|
## seccompProfile
|
||||||
|
|
||||||
|
|
||||||
Seccomp profile must be explicitly set to one of the allowed values. An unconfined profile and the complete absence of the profile are prohibited.
|
The seccompProfile must be explicitly set to one of the allowed values. An unconfined profile and the complete absence of the profile are prohibited.
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
containerSecurityContext:
|
containerSecurityContext:
|
||||||
@@ -113,7 +112,7 @@ containerSecurityContext:
|
|||||||
## readOnlyRootFilesystem
|
## readOnlyRootFilesystem
|
||||||
|
|
||||||
|
|
||||||
Containers should have an immutable file systems, so that attackers could not modify application code or download malicious code.
|
Containers should have an immutable file systems, so that attackers can not modify application code or download malicious code.
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
containerSecurityContext:
|
containerSecurityContext:
|
||||||
@@ -133,10 +132,10 @@ containerSecurityContext:
|
|||||||
# Status quo
|
# Status quo
|
||||||
|
|
||||||
|
|
||||||
openDesk aims to achieve that all security relevant settings are explicitly templated and comply with security recommendations.
|
openDesk aims to ensure that all security relevant settings are explicitly templated and comply with security recommendations.
|
||||||
|
|
||||||
|
|
||||||
The rendered manifests are also validated against Kyverno [policies](/.kyverno/policies) in CI to ensure that the provided values inside openDesk are also properly templated by the given Helm charts.
|
The rendered manifests are also validated against Kyverno [policies](/.kyverno/policies) in CI to ensure that the provided values inside openDesk are properly templated by the Helm charts.
|
||||||
|
|
||||||
|
|
||||||
This list gives you an overview of templated security settings and if they comply with security standards:
|
This list gives you an overview of templated security settings and if they comply with security standards:
|
||||||
@@ -144,11 +143,11 @@ This list gives you an overview of templated security settings and if they compl
|
|||||||
|
|
||||||
- **yes**: Value is set to `true`
|
- **yes**: Value is set to `true`
|
||||||
- **no**: Value is set to `false`
|
- **no**: Value is set to `false`
|
||||||
- **n/a**: No explicitly templated in openDesk and default is used.
|
- **n/a**: Not explicitly templated in openDesk; default is used.
|
||||||
|
|
||||||
| process | status | allowPrivilegeEscalation | privileged | readOnlyRootFilesystem | runAsNonRoot | runAsUser | runAsGroup | seccompProfile | capabilities |
|
| process | status | allowPrivilegeEscalation | privileged | readOnlyRootFilesystem | runAsNonRoot | runAsUser | runAsGroup | seccompProfile | capabilities |
|
||||||
| ------- | ------ | ------------------------ | ---------- | ---------------------- | ------------ | --------- | ---------- | -------------- | ------------ |
|
| ------- | ------ | ------------------------ | ---------- | ---------------------- | ------------ | --------- | ---------- | -------------- | ------------ |
|
||||||
| **collabora**/collabora-online | :x: | yes | no | no | yes | 100 | 101 | yes | no ["CHOWN","DAC_OVERRIDE","FOWNER","FSETID","KILL","SETGID","SETUID","SETPCAP","NET_BIND_SERVICE","NET_RAW","SYS_CHROOT","MKNOD"] |
|
| **collabora**/collabora-online | :x: | yes | no | no | yes | 100 | 101 | yes | no ["CHOWN","FOWNER","SYS_CHROOT"] |
|
||||||
| **cryptpad**/cryptpad | :x: | no | no | no | yes | 4001 | 4001 | yes | yes |
|
| **cryptpad**/cryptpad | :x: | no | no | no | yes | 4001 | 4001 | yes | yes |
|
||||||
| **element**/matrix-neoboard-widget | :white_check_mark: | no | no | yes | yes | 101 | 101 | yes | yes |
|
| **element**/matrix-neoboard-widget | :white_check_mark: | no | no | yes | yes | 101 | 101 | yes | yes |
|
||||||
| **element**/matrix-neochoice-widget | :white_check_mark: | no | no | yes | yes | 101 | 101 | yes | yes |
|
| **element**/matrix-neochoice-widget | :white_check_mark: | no | no | yes | yes | 101 | 101 | yes | yes |
|
||||||
@@ -169,10 +168,36 @@ This list gives you an overview of templated security settings and if they compl
|
|||||||
| **jitsi**/jitsi/jitsi/prosody | :x: | no | no | no | no | 0 | 0 | yes | no |
|
| **jitsi**/jitsi/jitsi/prosody | :x: | no | no | no | no | 0 | 0 | yes | no |
|
||||||
| **jitsi**/jitsi/jitsi/web | :x: | no | no | no | no | 0 | 0 | yes | no |
|
| **jitsi**/jitsi/jitsi/web | :x: | no | no | no | no | 0 | 0 | yes | no |
|
||||||
| **jitsi**/jitsi/patchJVB | :white_check_mark: | no | no | yes | yes | 1001 | 1001 | yes | yes |
|
| **jitsi**/jitsi/patchJVB | :white_check_mark: | no | no | yes | yes | 1001 | 1001 | yes | yes |
|
||||||
| **nextcloud**/opendesk-nextcloud-management | :x: | no | no | no | yes | 65532 | 65532 | yes | yes |
|
| **nextcloud**/opendesk-nextcloud-management | :x: | no | no | no | yes | 101 | 101 | yes | yes |
|
||||||
| **nextcloud**/opendesk-nextcloud/apache2 | :white_check_mark: | no | no | yes | yes | 65532 | 65532 | yes | yes |
|
| **nextcloud**/opendesk-nextcloud/aio | :white_check_mark: | no | no | yes | yes | 101 | 101 | yes | yes |
|
||||||
| **nextcloud**/opendesk-nextcloud/exporter | :white_check_mark: | no | no | yes | yes | 65532 | 65532 | yes | yes |
|
| **nextcloud**/opendesk-nextcloud/exporter | :white_check_mark: | no | no | yes | yes | 65532 | 65532 | yes | yes |
|
||||||
| **nextcloud**/opendesk-nextcloud/php | :white_check_mark: | no | no | yes | yes | 65532 | 65532 | yes | yes |
|
| **notes**/impress/backend | :white_check_mark: | no | no | yes | yes | 1001 | 1001 | yes | yes |
|
||||||
|
| **notes**/impress/frontend | :white_check_mark: | no | no | yes | yes | 1001 | 1001 | yes | yes |
|
||||||
|
| **notes**/impress/yProvider | :white_check_mark: | no | no | yes | yes | 1001 | 1001 | yes | yes |
|
||||||
|
| **nubus**/intercom-service | :white_check_mark: | no | no | yes | yes | 1000 | 1000 | yes | yes |
|
||||||
|
| **nubus**/intercom-service/provisioning | :x: | n/a | n/a | n/a | n/a | n/a | n/a | yes | no |
|
||||||
|
| **nubus**/opendesk-keycloak-bootstrap | :white_check_mark: | no | no | yes | yes | 1000 | 1000 | yes | yes |
|
||||||
|
| **nubus**/ums/keycloak | :x: | no | n/a | no | yes | 1000 | 1000 | yes | yes |
|
||||||
|
| **nubus**/ums/nubusGuardian/authorizationApi | :white_check_mark: | no | no | yes | yes | 1000 | 1000 | yes | yes |
|
||||||
|
| **nubus**/ums/nubusGuardian/managementApi | :white_check_mark: | no | no | yes | yes | 1000 | 1000 | yes | yes |
|
||||||
|
| **nubus**/ums/nubusGuardian/managementUi | :white_check_mark: | no | no | yes | yes | 1000 | 1000 | yes | yes |
|
||||||
|
| **nubus**/ums/nubusGuardian/openPolicyAgent | :white_check_mark: | no | no | yes | yes | 1000 | 1000 | yes | yes |
|
||||||
|
| **nubus**/ums/nubusKeycloakBootstrap | :x: | no | n/a | no | yes | 1000 | 1000 | yes | yes |
|
||||||
|
| **nubus**/ums/nubusKeycloakExtensions/handler | :x: | n/a | n/a | n/a | n/a | n/a | n/a | yes | no |
|
||||||
|
| **nubus**/ums/nubusKeycloakExtensions/proxy | :x: | n/a | n/a | n/a | n/a | n/a | n/a | yes | no |
|
||||||
|
| **nubus**/ums/nubusLdapNotifier | :x: | no | n/a | yes | yes | 101 | 102 | yes | yes |
|
||||||
|
| **nubus**/ums/nubusNotificationsApi | :x: | no | n/a | yes | yes | 1000 | 1000 | yes | yes |
|
||||||
|
| **nubus**/ums/nubusPortalConsumer | :x: | n/a | n/a | n/a | n/a | n/a | n/a | yes | no |
|
||||||
|
| **nubus**/ums/nubusPortalFrontend | :x: | no | n/a | yes | yes | 1000 | 1000 | yes | yes |
|
||||||
|
| **nubus**/ums/nubusPortalServer | :x: | no | n/a | yes | yes | 1000 | 1000 | yes | yes |
|
||||||
|
| **nubus**/ums/nubusProvisioning | :x: | no | n/a | yes | yes | 1000 | 1000 | yes | yes |
|
||||||
|
| **nubus**/ums/nubusProvisioning/nats | :x: | no | n/a | yes | yes | 1000 | 1000 | yes | yes |
|
||||||
|
| **nubus**/ums/nubusSelfServiceConsumer | :x: | no | n/a | yes | yes | 1000 | 1000 | yes | yes |
|
||||||
|
| **nubus**/ums/nubusStackDataUms | :x: | no | n/a | yes | yes | 1000 | 1000 | yes | yes |
|
||||||
|
| **nubus**/ums/nubusUdmListener | :x: | no | n/a | yes | yes | 102 | 65534 | yes | yes |
|
||||||
|
| **nubus**/ums/nubusUdmRestApi | :x: | no | n/a | yes | yes | 1000 | 1000 | yes | yes |
|
||||||
|
| **nubus**/ums/nubusUmcGateway | :x: | no | n/a | yes | yes | 1000 | 1000 | yes | yes |
|
||||||
|
| **nubus**/ums/nubusUmcServer | :x: | no | n/a | yes | no | 0 | 0 | yes | yes |
|
||||||
| **open-xchange**/dovecot | :x: | no | n/a | yes | n/a | n/a | n/a | yes | no ["CHOWN","DAC_OVERRIDE","KILL","NET_BIND_SERVICE","SETGID","SETUID","SYS_CHROOT"] |
|
| **open-xchange**/dovecot | :x: | no | n/a | yes | n/a | n/a | n/a | yes | no ["CHOWN","DAC_OVERRIDE","KILL","NET_BIND_SERVICE","SETGID","SETUID","SYS_CHROOT"] |
|
||||||
| **open-xchange**/open-xchange/appsuite/core-documentconverter | :x: | no | no | no | yes | 987 | 1000 | yes | yes |
|
| **open-xchange**/open-xchange/appsuite/core-documentconverter | :x: | no | no | no | yes | 987 | 1000 | yes | yes |
|
||||||
| **open-xchange**/open-xchange/appsuite/core-guidedtours | :white_check_mark: | no | no | yes | yes | 1000 | 1000 | yes | yes |
|
| **open-xchange**/open-xchange/appsuite/core-guidedtours | :white_check_mark: | no | no | yes | yes | 1000 | 1000 | yes | yes |
|
||||||
@@ -184,34 +209,26 @@ This list gives you an overview of templated security settings and if they compl
|
|||||||
| **open-xchange**/open-xchange/appsuite/guard-ui | :white_check_mark: | no | no | yes | yes | 1000 | 1000 | yes | yes |
|
| **open-xchange**/open-xchange/appsuite/guard-ui | :white_check_mark: | no | no | yes | yes | 1000 | 1000 | yes | yes |
|
||||||
| **open-xchange**/open-xchange/nextcloud-integration-ui | :x: | no | no | no | yes | 1000 | 1000 | yes | yes |
|
| **open-xchange**/open-xchange/nextcloud-integration-ui | :x: | no | no | no | yes | 1000 | 1000 | yes | yes |
|
||||||
| **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 |
|
||||||
|
| **open-xchange**/opendesk-open-xchange-bootstrap | :x: | no | n/a | yes | yes | 1000 | 1000 | yes | yes |
|
||||||
|
| **opendesk-migrations-post**/opendesk-migrations-post | :white_check_mark: | no | no | yes | yes | 1000 | 1000 | yes | yes |
|
||||||
|
| **opendesk-migrations-pre**/opendesk-migrations-pre | :white_check_mark: | no | no | yes | yes | 1000 | 1000 | yes | yes |
|
||||||
|
| **opendesk-openproject-bootstrap**/opendesk-openproject-bootstrap | :white_check_mark: | no | no | yes | yes | 1000 | 1000 | yes | yes |
|
||||||
|
| **opendesk-services**/opendesk-static-files | :x: | no | n/a | yes | yes | 101 | 101 | 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 |
|
| **services-external**/cassandra | :white_check_mark: | no | no | yes | yes | 1001 | 1001 | yes | yes |
|
||||||
| **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-external**/clamav | :x: | no | no | yes | no | 0 | 0 | yes | no |
|
||||||
| **services**/clamav | :x: | no | no | yes | no | 0 | 0 | yes | no |
|
| **services-external**/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-external**/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 |
|
| **services-external**/clamav/freshclam | :white_check_mark: | no | no | yes | yes | 100 | 101 | yes | yes |
|
||||||
| **services**/clamav/freshclam | :white_check_mark: | no | no | yes | yes | 100 | 101 | yes | yes |
|
| **services-external**/clamav/icap | :white_check_mark: | no | no | yes | yes | 100 | 101 | yes | yes |
|
||||||
| **services**/clamav/icap | :white_check_mark: | no | no | yes | yes | 100 | 101 | yes | yes |
|
| **services-external**/clamav/milter | :white_check_mark: | no | no | yes | yes | 100 | 101 | yes | yes |
|
||||||
| **services**/clamav/milter | :white_check_mark: | no | no | yes | yes | 100 | 101 | yes | yes |
|
| **services-external**/mariadb | :white_check_mark: | no | no | yes | yes | 1001 | 1001 | yes | yes |
|
||||||
| **services**/mariadb | :white_check_mark: | no | no | yes | yes | 1001 | 1001 | yes | yes |
|
| **services-external**/memcached | :white_check_mark: | no | no | yes | yes | 1001 | 1001 | yes | yes |
|
||||||
| **services**/memcached | :white_check_mark: | no | no | yes | yes | 1001 | 1001 | yes | yes |
|
| **services-external**/minio | :white_check_mark: | no | no | yes | yes | 1001 | 1001 | yes | yes |
|
||||||
| **services**/minio | :x: | no | no | no | yes | 1000 | 0 | yes | yes |
|
| **services-external**/opendesk-dkimpy-milter | :x: | yes | no | yes | yes | 1000 | 1000 | yes | no |
|
||||||
| **services**/postfix | :x: | yes | yes | no | no | 0 | 0 | yes | no |
|
| **services-external**/postfix | :x: | yes | yes | no | no | 0 | 0 | yes | no |
|
||||||
| **services**/postgresql | :white_check_mark: | no | no | yes | yes | 1001 | 1001 | yes | yes |
|
| **services-external**/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-external**/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**/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-extensions/handler | :white_check_mark: | no | no | yes | yes | 1000 | 1000 | yes | yes |
|
|
||||||
| **univention-management-stack**/ums/keycloak-extensions/proxy | :white_check_mark: | no | no | yes | yes | 1000 | 1000 | yes | yes |
|
|
||||||
| **univention-management-stack**/ums/ldap-notifier | :x: | n/a | n/a | n/a | n/a | n/a | n/a | yes | no |
|
|
||||||
| **univention-management-stack**/ums/portal-listener | :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"] |
|
|
||||||
| **univention-management-stack**/ums/selfservice-listener | :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"] |
|
|
||||||
| **univention-management-stack**/ums/stack-data-swp | :x: | no | no | no | no | 0 | 0 | yes | yes |
|
|
||||||
| **univention-management-stack**/ums/stack-gateway | :x: | no | no | no | yes | 1001 | 0 | yes | yes |
|
|
||||||
| **univention-management-stack**/ums/umc-gateway | :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"] |
|
|
||||||
| **univention-management-stack**/ums/umc-server | :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"] |
|
|
||||||
| **xwiki**/xwiki | :x: | no | no | no | yes | 100 | 101 | yes | yes |
|
| **xwiki**/xwiki | :x: | no | no | no | yes | 100 | 101 | yes | yes |
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -10,7 +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 }}/{{ .Values.charts.collabora.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.collabora.registry }}/{{ .Values.charts.collabora.repository }}"
|
||||||
|
|
||||||
# Collabora Controller - Enterprise Only
|
# Collabora Controller - Enterprise Only
|
||||||
# Source: https://github.com/CollaboraOnline/online
|
# Source: https://github.com/CollaboraOnline/online
|
||||||
@@ -20,7 +20,7 @@ repositories:
|
|||||||
username: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.collaboraController.registry }}/{{ .Values.charts.collaboraController.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDeEnterprise .Values.global.helmRegistry | default .Values.charts.collaboraController.registry }}/{{ .Values.charts.collaboraController.repository }}"
|
||||||
|
|
||||||
releases:
|
releases:
|
||||||
- name: "collabora-online"
|
- name: "collabora-online"
|
||||||
@@ -28,24 +28,24 @@ releases:
|
|||||||
version: "{{ .Values.charts.collabora.version }}"
|
version: "{{ .Values.charts.collabora.version }}"
|
||||||
values:
|
values:
|
||||||
- "values.yaml.gotmpl"
|
- "values.yaml.gotmpl"
|
||||||
{{- if (env "OPENDESK_ENTERPRISE") }}
|
{{- if eq (env "OPENDESK_ENTERPRISE") "true" }}
|
||||||
- "values-enterprise.yaml.gotmpl"
|
- "values-enterprise.yaml.gotmpl"
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- range .Values.customization.release.collaboraOnline }}
|
{{- range .Values.customization.release.collaboraOnline }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.collabora.enabled }}
|
installed: {{ .Values.apps.collabora.enabled }}
|
||||||
- name: "collabora-controller"
|
- name: "collabora-controller"
|
||||||
chart: "collabora-controller-repo/{{ .Values.charts.collaboraController.name }}"
|
chart: "collabora-controller-repo/{{ .Values.charts.collaboraController.name }}"
|
||||||
version: "{{ .Values.charts.collaboraController.version }}"
|
version: "{{ .Values.charts.collaboraController.version }}"
|
||||||
values:
|
values:
|
||||||
{{- if (env "OPENDESK_ENTERPRISE") }}
|
{{- if eq (env "OPENDESK_ENTERPRISE") "true" }}
|
||||||
- "values-coco-enterprise.yaml.gotmpl"
|
- "values-coco-enterprise.yaml.gotmpl"
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- range .Values.customization.release.collaboraController }}
|
{{- range .Values.customization.release.collaboraController }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.collaboraController.enabled }}
|
installed: {{ .Values.apps.collaboraController.enabled }}
|
||||||
|
|
||||||
commonLabels:
|
commonLabels:
|
||||||
deployStage: "050-components"
|
deployStage: "050-components"
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ controller:
|
|||||||
# Therefore we use the default of `collabora-online` for the `resourceName`
|
# Therefore we use the default of `collabora-online` for the `resourceName`
|
||||||
resourceName: "collabora-online"
|
resourceName: "collabora-online"
|
||||||
statsInterval: 2000
|
statsInterval: 2000
|
||||||
watchNamespace: {{ (.Values.collabora.namespace | default .Release.Namespace | quote) }}
|
watchNamespace: {{ (.Values.apps.collabora.namespace | default .Release.Namespace | quote) }}
|
||||||
|
|
||||||
documentMigrator:
|
documentMigrator:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ SPDX-License-Identifier: Apache-2.0
|
|||||||
image:
|
image:
|
||||||
repository: "{{ coalesce .Values.repositories.image.registryOpencodeDeEnterprise .Values.global.imageRegistry .Values.images.collabora.registry }}/{{ .Values.images.collabora.repository }}"
|
repository: "{{ coalesce .Values.repositories.image.registryOpencodeDeEnterprise .Values.global.imageRegistry .Values.images.collabora.registry }}/{{ .Values.images.collabora.repository }}"
|
||||||
autoscaling:
|
autoscaling:
|
||||||
enabled: {{ .Values.collaboraController.enabled }}
|
enabled: {{ .Values.apps.collaboraController.enabled }}
|
||||||
minReplicas: {{ .Values.enterpriseFeatures.collabora.autoscaling.minReplicas }}
|
minReplicas: {{ .Values.enterpriseFeatures.collabora.autoscaling.minReplicas }}
|
||||||
maxReplicas: {{ .Values.enterpriseFeatures.collabora.autoscaling.maxReplicas }}
|
maxReplicas: {{ .Values.enterpriseFeatures.collabora.autoscaling.maxReplicas }}
|
||||||
targetMemoryUtilizationPercentage: {{ .Values.enterpriseFeatures.collabora.autoscaling.targetMemoryUtilizationPercentage }}
|
targetMemoryUtilizationPercentage: {{ .Values.enterpriseFeatures.collabora.autoscaling.targetMemoryUtilizationPercentage }}
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ collabora:
|
|||||||
{{- else }}
|
{{- else }}
|
||||||
--o:logging.anonymize.anonymize_user_data=true
|
--o:logging.anonymize.anonymize_user_data=true
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.collaboraController.enabled }}
|
{{- if .Values.apps.collaboraController.enabled }}
|
||||||
--o:indirection_endpoint.url=https://{{ .Values.global.hosts.collabora }}.{{ .Values.global.domain }}/controller/routeToken
|
--o:indirection_endpoint.url=https://{{ .Values.global.hosts.collabora }}.{{ .Values.global.domain }}/controller/routeToken
|
||||||
--o:monitors.monitor[0]=wss://{{ .Values.global.hosts.collabora }}.{{ .Values.global.domain }}/controller/ws
|
--o:monitors.monitor[0]=wss://{{ .Values.global.hosts.collabora }}.{{ .Values.global.domain }}/controller/ws
|
||||||
--o:monitors.monitor[0][@retryInterval]=5
|
--o:monitors.monitor[0][@retryInterval]=5
|
||||||
@@ -49,7 +49,7 @@ imagePullSecrets:
|
|||||||
|
|
||||||
ingress:
|
ingress:
|
||||||
annotations:
|
annotations:
|
||||||
{{- if .Values.collaboraController.enabled }}
|
{{- if .Values.apps.collaboraController.enabled }}
|
||||||
nginx.ingress.kubernetes.io/upstream-hash-by: "$arg_RouteToken"
|
nginx.ingress.kubernetes.io/upstream-hash-by: "$arg_RouteToken"
|
||||||
{{- else }}
|
{{- else }}
|
||||||
nginx.ingress.kubernetes.io/upstream-hash-by: "$arg_WOPISrc"
|
nginx.ingress.kubernetes.io/upstream-hash-by: "$arg_WOPISrc"
|
||||||
|
|||||||
@@ -10,7 +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 }}/{{ .Values.charts.cryptpad.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.cryptpad.registry }}/{{ .Values.charts.cryptpad.repository }}"
|
||||||
|
|
||||||
releases:
|
releases:
|
||||||
- name: "cryptpad"
|
- name: "cryptpad"
|
||||||
@@ -21,7 +21,7 @@ releases:
|
|||||||
{{- range .Values.customization.release.cryptpad }}
|
{{- range .Values.customization.release.cryptpad }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.cryptpad.enabled }}
|
installed: {{ .Values.apps.cryptpad.enabled }}
|
||||||
|
|
||||||
commonLabels:
|
commonLabels:
|
||||||
deployStage: "050-components"
|
deployStage: "050-components"
|
||||||
|
|||||||
@@ -10,35 +10,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.element.registry }}/{{ .Values.charts.element.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.element.registry }}/{{ .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 }}/{{ .Values.charts.elementWellKnown.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.elementWellKnown.registry }}/{{ .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 }}/{{ .Values.charts.synapseWeb.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.synapseWeb.registry }}/{{ .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 }}/{{ .Values.charts.synapse.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.synapse.registry }}/{{ .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 }}/{{ .Values.charts.synapseCreateAccount.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.synapseCreateAccount.registry }}/{{ .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
|
||||||
@@ -48,35 +48,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 }}/{{ .Values.charts.matrixUserVerificationService.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.matrixUserVerificationService.registry }}/{{ .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 }}/{{ .Values.charts.matrixNeoboardWidget.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.matrixNeoboardWidget.registry }}/{{ .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 }}/{{ .Values.charts.matrixNeoboardWidget.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.matrixNeoboardWidget.registry }}/{{ .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 }}/{{ .Values.charts.matrixNeodatefixWidget.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.matrixNeodatefixWidget.registry }}/{{ .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 }}/{{ .Values.charts.matrixNeodatefixBot.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.matrixNeodatefixBot.registry }}/{{ .Values.charts.matrixNeodatefixBot.repository }}"
|
||||||
|
|
||||||
# openDesk Enterprise Repositories
|
# openDesk Enterprise Repositories
|
||||||
|
|
||||||
@@ -88,28 +88,28 @@ repositories:
|
|||||||
username: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.synapseAdmin.registry }}/{{ .Values.charts.synapseAdmin.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDeEnterprise .Values.global.helmRegistry | default .Values.charts.synapseAdmin.registry }}/{{ .Values.charts.synapseAdmin.repository }}"
|
||||||
- name: "synapse-adminbot-web-repo"
|
- name: "synapse-adminbot-web-repo"
|
||||||
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
||||||
verify: {{ .Values.charts.synapseAdminbotWeb.verify }}
|
verify: {{ .Values.charts.synapseAdminbotWeb.verify }}
|
||||||
username: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.synapseAdminbotWeb.registry }}/{{ .Values.charts.synapseAdminbotWeb.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDeEnterprise .Values.global.helmRegistry | default .Values.charts.synapseAdminbotWeb.registry }}/{{ .Values.charts.synapseAdminbotWeb.repository }}"
|
||||||
- name: "synapse-groupsync-repo"
|
- name: "synapse-groupsync-repo"
|
||||||
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
||||||
verify: {{ .Values.charts.synapseGroupsync.verify }}
|
verify: {{ .Values.charts.synapseGroupsync.verify }}
|
||||||
username: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.synapseGroupsync.registry }}/{{ .Values.charts.synapseGroupsync.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDeEnterprise .Values.global.helmRegistry | default .Values.charts.synapseGroupsync.registry }}/{{ .Values.charts.synapseGroupsync.repository }}"
|
||||||
- name: "synapse-pipe-repo"
|
- name: "synapse-pipe-repo"
|
||||||
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
||||||
verify: {{ .Values.charts.synapsePipe.verify }}
|
verify: {{ .Values.charts.synapsePipe.verify }}
|
||||||
username: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_USERNAME" | quote }}
|
username: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
password: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
password: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
oci: true
|
oci: true
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.synapsePipe.registry }}/{{ .Values.charts.synapsePipe.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDeEnterprise .Values.global.helmRegistry | default .Values.charts.synapsePipe.registry }}/{{ .Values.charts.synapsePipe.repository }}"
|
||||||
|
|
||||||
releases:
|
releases:
|
||||||
- name: "opendesk-element"
|
- name: "opendesk-element"
|
||||||
@@ -120,7 +120,7 @@ releases:
|
|||||||
{{- range .Values.customization.release.opendeskElement }}
|
{{- range .Values.customization.release.opendeskElement }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.element.enabled }}
|
installed: {{ .Values.apps.element.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
- name: "opendesk-well-known"
|
- name: "opendesk-well-known"
|
||||||
@@ -131,7 +131,7 @@ releases:
|
|||||||
{{- range .Values.customization.release.opendeskWellKnown }}
|
{{- range .Values.customization.release.opendeskWellKnown }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.element.enabled }}
|
installed: {{ .Values.apps.element.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
- name: "opendesk-synapse-web"
|
- name: "opendesk-synapse-web"
|
||||||
@@ -142,7 +142,7 @@ releases:
|
|||||||
{{- range .Values.customization.release.opendeskSynapseWeb }}
|
{{- range .Values.customization.release.opendeskSynapseWeb }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.element.enabled }}
|
installed: {{ .Values.apps.element.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
- name: "opendesk-synapse"
|
- name: "opendesk-synapse"
|
||||||
@@ -153,7 +153,7 @@ releases:
|
|||||||
{{- range .Values.customization.release.opendeskSynapse }}
|
{{- range .Values.customization.release.opendeskSynapse }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.element.enabled }}
|
installed: {{ .Values.apps.element.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
- name: "opendesk-matrix-user-verification-service-bootstrap"
|
- name: "opendesk-matrix-user-verification-service-bootstrap"
|
||||||
@@ -161,7 +161,10 @@ releases:
|
|||||||
version: "{{ .Values.charts.synapseCreateAccount.version }}"
|
version: "{{ .Values.charts.synapseCreateAccount.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-matrix-user-verification-service-bootstrap.yaml.gotmpl"
|
- "values-matrix-user-verification-service-bootstrap.yaml.gotmpl"
|
||||||
installed: {{ .Values.element.enabled }}
|
{{- range .Values.customization.release.matrixUserVerificationServiceBootstrap }}
|
||||||
|
- {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
installed: {{ .Values.apps.element.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
- name: "opendesk-matrix-user-verification-service"
|
- name: "opendesk-matrix-user-verification-service"
|
||||||
@@ -169,7 +172,10 @@ releases:
|
|||||||
version: "{{ .Values.charts.matrixUserVerificationService.version }}"
|
version: "{{ .Values.charts.matrixUserVerificationService.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-matrix-user-verification-service.yaml.gotmpl"
|
- "values-matrix-user-verification-service.yaml.gotmpl"
|
||||||
installed: {{ .Values.element.enabled }}
|
{{- range .Values.customization.release.matrixUserVerificationService }}
|
||||||
|
- {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
installed: {{ .Values.apps.element.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
- name: "matrix-neoboard-widget"
|
- name: "matrix-neoboard-widget"
|
||||||
@@ -177,15 +183,21 @@ releases:
|
|||||||
version: "{{ .Values.charts.matrixNeoboardWidget.version }}"
|
version: "{{ .Values.charts.matrixNeoboardWidget.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-matrix-neoboard-widget.yaml.gotmpl"
|
- "values-matrix-neoboard-widget.yaml.gotmpl"
|
||||||
installed: {{ .Values.element.enabled }}
|
{{- range .Values.customization.release.matrixNeoboardWidget }}
|
||||||
|
- {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
installed: {{ .Values.apps.element.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
- name: "matrix-neochoice-widget"
|
- name: "matrix-neochoice-widget"
|
||||||
chart: "matrix-neochoice-widget-repo/{{ .Values.charts.matrixNeochoiseWidget.name }}"
|
chart: "matrix-neochoice-widget-repo/{{ .Values.charts.matrixNeochoiceWidget.name }}"
|
||||||
version: "{{ .Values.charts.matrixNeochoiseWidget.version }}"
|
version: "{{ .Values.charts.matrixNeochoiceWidget.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-matrix-neochoice-widget.yaml.gotmpl"
|
- "values-matrix-neochoice-widget.yaml.gotmpl"
|
||||||
installed: {{ .Values.element.enabled }}
|
{{- range .Values.customization.release.matrixNeochoiceWidget }}
|
||||||
|
- {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
installed: {{ .Values.apps.element.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
- name: "matrix-neodatefix-widget"
|
- name: "matrix-neodatefix-widget"
|
||||||
@@ -193,7 +205,10 @@ releases:
|
|||||||
version: "{{ .Values.charts.matrixNeodatefixWidget.version }}"
|
version: "{{ .Values.charts.matrixNeodatefixWidget.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-matrix-neodatefix-widget.yaml.gotmpl"
|
- "values-matrix-neodatefix-widget.yaml.gotmpl"
|
||||||
installed: {{ .Values.element.enabled }}
|
{{- range .Values.customization.release.matrixNeodatefixWidget }}
|
||||||
|
- {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
installed: {{ .Values.apps.element.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
- name: "matrix-neodatefix-bot-bootstrap"
|
- name: "matrix-neodatefix-bot-bootstrap"
|
||||||
@@ -201,7 +216,10 @@ releases:
|
|||||||
version: "{{ .Values.charts.synapseCreateAccount.version }}"
|
version: "{{ .Values.charts.synapseCreateAccount.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-matrix-neodatefix-bot-bootstrap.yaml.gotmpl"
|
- "values-matrix-neodatefix-bot-bootstrap.yaml.gotmpl"
|
||||||
installed: {{ .Values.element.enabled }}
|
{{- range .Values.customization.release.matrixNeodatefixBotBootstrap }}
|
||||||
|
- {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
installed: {{ .Values.apps.element.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
- name: "matrix-neodatefix-bot"
|
- name: "matrix-neodatefix-bot"
|
||||||
@@ -209,7 +227,10 @@ releases:
|
|||||||
version: "{{ .Values.charts.matrixNeodatefixBot.version }}"
|
version: "{{ .Values.charts.matrixNeodatefixBot.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-matrix-neodatefix-bot.yaml.gotmpl"
|
- "values-matrix-neodatefix-bot.yaml.gotmpl"
|
||||||
installed: {{ .Values.element.enabled }}
|
{{- range .Values.customization.release.matrixNeodatefixBot }}
|
||||||
|
- {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
installed: {{ .Values.apps.element.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
# openDesk Enterprise Releases
|
# openDesk Enterprise Releases
|
||||||
@@ -217,70 +238,77 @@ releases:
|
|||||||
chart: "synapse-admin-repo/{{ .Values.charts.synapseAdmin.name }}"
|
chart: "synapse-admin-repo/{{ .Values.charts.synapseAdmin.name }}"
|
||||||
version: "{{ .Values.charts.synapseAdmin.version }}"
|
version: "{{ .Values.charts.synapseAdmin.version }}"
|
||||||
values:
|
values:
|
||||||
|
- "values-synapse-admin.yaml.gotmpl"
|
||||||
{{- range .Values.customization.release.opendeskSynapseAdmin }}
|
{{- range .Values.customization.release.opendeskSynapseAdmin }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.elementAdmin.enabled }}
|
installed: {{ .Values.apps.elementAdmin.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
- name: "opendesk-synapse-adminbot-bootstrap"
|
- name: "opendesk-synapse-adminbot-bootstrap"
|
||||||
chart: "synapse-create-account-repo/{{ .Values.charts.synapseCreateAccount.name }}"
|
chart: "synapse-create-account-repo/{{ .Values.charts.synapseCreateAccount.name }}"
|
||||||
version: "{{ .Values.charts.synapseCreateAccount.version }}"
|
version: "{{ .Values.charts.synapseCreateAccount.version }}"
|
||||||
values:
|
values:
|
||||||
|
- "values-synapse-adminbot-bootstrap.yaml.gotmpl"
|
||||||
{{- range .Values.customization.release.opendeskSynapseAdminbotBootstrap }}
|
{{- range .Values.customization.release.opendeskSynapseAdminbotBootstrap }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.elementAdmin.enabled }}
|
installed: {{ .Values.apps.elementAdmin.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
- name: "opendesk-synapse-adminbot-pipe"
|
- name: "opendesk-synapse-adminbot-pipe"
|
||||||
chart: "synapse-pipe-repo/{{ .Values.charts.synapsePipe.name }}"
|
chart: "synapse-pipe-repo/{{ .Values.charts.synapsePipe.name }}"
|
||||||
version: "{{ .Values.charts.synapsePipe.version }}"
|
version: "{{ .Values.charts.synapsePipe.version }}"
|
||||||
values:
|
values:
|
||||||
|
- "values-synapse-adminbot-pipe.yaml.gotmpl"
|
||||||
{{- range .Values.customization.release.opendeskSynapseAdminbotPipe }}
|
{{- range .Values.customization.release.opendeskSynapseAdminbotPipe }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.elementAdmin.enabled }}
|
installed: {{ .Values.apps.elementAdmin.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
- name: "opendesk-synapse-adminbot-web"
|
- name: "opendesk-synapse-adminbot-web"
|
||||||
chart: "synapse-adminbot-web-repo/{{ .Values.charts.synapseAdminbotWeb.name }}"
|
chart: "synapse-adminbot-web-repo/{{ .Values.charts.synapseAdminbotWeb.name }}"
|
||||||
version: "{{ .Values.charts.synapseAdminbotWeb.version }}"
|
version: "{{ .Values.charts.synapseAdminbotWeb.version }}"
|
||||||
values:
|
values:
|
||||||
|
- "values-synapse-adminbot-web.yaml.gotmpl"
|
||||||
{{- range .Values.customization.release.opendeskSynapseAdminbotWeb }}
|
{{- range .Values.customization.release.opendeskSynapseAdminbotWeb }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.elementAdmin.enabled }}
|
installed: {{ .Values.apps.elementAdmin.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
- name: "opendesk-synapse-auditbot-bootstrap"
|
- name: "opendesk-synapse-auditbot-bootstrap"
|
||||||
chart: "synapse-create-account-repo/{{ .Values.charts.synapseCreateAccount.name }}"
|
chart: "synapse-create-account-repo/{{ .Values.charts.synapseCreateAccount.name }}"
|
||||||
version: "{{ .Values.charts.synapseCreateAccount.version }}"
|
version: "{{ .Values.charts.synapseCreateAccount.version }}"
|
||||||
values:
|
values:
|
||||||
|
- "values-synapse-auditbot-bootstrap.yaml.gotmpl"
|
||||||
{{- range .Values.customization.release.opendeskSynapseAuditbotBootstrap }}
|
{{- range .Values.customization.release.opendeskSynapseAuditbotBootstrap }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.elementAdmin.enabled }}
|
installed: {{ .Values.apps.elementAdmin.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
- name: "opendesk-synapse-auditbot-pipe"
|
- name: "opendesk-synapse-auditbot-pipe"
|
||||||
chart: "synapse-pipe-repo/{{ .Values.charts.synapsePipe.name }}"
|
chart: "synapse-pipe-repo/{{ .Values.charts.synapsePipe.name }}"
|
||||||
version: "{{ .Values.charts.synapsePipe.version }}"
|
version: "{{ .Values.charts.synapsePipe.version }}"
|
||||||
values:
|
values:
|
||||||
|
- "values-synapse-auditbot-pipe.yaml.gotmpl"
|
||||||
{{- range .Values.customization.release.opendeskSynapseAuditbotPipe }}
|
{{- range .Values.customization.release.opendeskSynapseAuditbotPipe }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.elementAdmin.enabled }}
|
installed: {{ .Values.apps.elementAdmin.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
- name: "opendesk-synapse-groupsync"
|
- name: "opendesk-synapse-groupsync"
|
||||||
chart: "synapse-groupsync-repo/{{ .Values.charts.synapseGroupsync.name }}"
|
chart: "synapse-groupsync-repo/{{ .Values.charts.synapseGroupsync.name }}"
|
||||||
version: "{{ .Values.charts.synapseGroupsync.version }}"
|
version: "{{ .Values.charts.synapseGroupsync.version }}"
|
||||||
values:
|
values:
|
||||||
|
- "values-synapse-groupsync.yaml.gotmpl"
|
||||||
{{- range .Values.customization.release.opendeskSynapseGroupsync }}
|
{{- range .Values.customization.release.opendeskSynapseGroupsync }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.elementGroupsync.enabled }}
|
installed: {{ .Values.apps.elementGroupsync.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
commonLabels:
|
commonLabels:
|
||||||
|
|||||||
87
helmfile/apps/element/values-synapse-admin.yaml.gotmpl
Normal file
@@ -0,0 +1,87 @@
|
|||||||
|
{{/*
|
||||||
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
|
---
|
||||||
|
global:
|
||||||
|
domain: {{ .Values.global.domain | quote }}
|
||||||
|
hosts:
|
||||||
|
{{ .Values.global.hosts | toYaml | nindent 4 }}
|
||||||
|
imagePullSecrets:
|
||||||
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
|
|
||||||
|
configuration:
|
||||||
|
adminBot:
|
||||||
|
backupPhrase: {{ .Values.secrets.matrixAdminBot.backupPassphrase | quote }}
|
||||||
|
#name: "adminbot"
|
||||||
|
#secretName: "matrix-adminbot-account"
|
||||||
|
#secretKey: "access_token"
|
||||||
|
auditBot:
|
||||||
|
backupPhrase: {{ .Values.secrets.matrixAuditBot.backupPassphrase | quote }}
|
||||||
|
#name: "auditbot"
|
||||||
|
database:
|
||||||
|
host: {{ .Values.databases.synapse.host | quote }}
|
||||||
|
port: {{ .Values.databases.synapse.port }}
|
||||||
|
name: {{ .Values.databases.synapse.name | quote }}
|
||||||
|
user: {{ .Values.databases.synapse.username | quote }}
|
||||||
|
password:
|
||||||
|
value: {{ .Values.databases.synapse.password | default .Values.secrets.postgresql.matrixUser | quote }}
|
||||||
|
requireAuth: {{ .Values.databases.synapse.requireAuth }}
|
||||||
|
channelBinding: {{ .Values.databases.synapse.channelBinding | quote }}
|
||||||
|
connectTimeout: {{ .Values.databases.synapse.connectTimeout }}
|
||||||
|
clientEncoding: {{ .Values.databases.synapse.clientEncoding | quote }}
|
||||||
|
keepalives: {{ .Values.databases.synapse.keepalives }}
|
||||||
|
keepalivesIdle: {{ .Values.databases.synapse.keepalivesIdle }}
|
||||||
|
keepalivesInterval: {{ .Values.databases.synapse.keepalivesInterval }}
|
||||||
|
keepalivesCount: {{ .Values.databases.synapse.keepalivesCount }}
|
||||||
|
replication: {{ .Values.databases.synapse.replication }}
|
||||||
|
gssencmode: {{ .Values.databases.synapse.gssencmode | quote }}
|
||||||
|
sslmode: {{ .Values.databases.synapse.sslmode | quote }}
|
||||||
|
sslcompression: {{ .Values.databases.synapse.sslcompression }}
|
||||||
|
sslMinProtocolVersion: {{ .Values.databases.synapse.sslMinProtocolVersion | quote }}
|
||||||
|
connectionPoolMin: {{ .Values.databases.synapse.connectionPoolMin }}
|
||||||
|
connectionPoolMax: {{ .Values.databases.synapse.connectionPoolMax }}
|
||||||
|
# Settings regarding homeserver.
|
||||||
|
homeserver:
|
||||||
|
# -- URL of synapse deployment. As default the url of synapse will be used.
|
||||||
|
#baseUrl: ""
|
||||||
|
serverName: {{ .Values.global.matrixDomain | default .Values.global.domain | quote }}
|
||||||
|
ldap:
|
||||||
|
base: {{ .Values.ldap.baseDn | quote }}
|
||||||
|
bind_dn: "uid=ldapsearch_element,cn=users,{{ .Values.ldap.baseDn }}"
|
||||||
|
bind_password: {{ .Values.secrets.nubus.ldapSearch.element | quote }}
|
||||||
|
filter: "(memberOf=cn=managed-by-attribute-LivecollaborationAdmin,cn=groups,{{ .Values.ldap.baseDn }})"
|
||||||
|
uri: {{ printf "ldap://%s:389" .Values.ldap.host | quote }}
|
||||||
|
cron:
|
||||||
|
image:
|
||||||
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDeEnterprise .Values.global.imageRegistry .Values.images.elementSyncAdmins.registry | quote }}
|
||||||
|
repository: {{ .Values.images.elementSyncAdmins.repository | quote }}
|
||||||
|
tag: {{ .Values.images.elementSyncAdmins.tag | quote }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
#fullnameOverride: "opendesk-synapse-admin"
|
||||||
|
image:
|
||||||
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDeEnterprise .Values.global.imageRegistry .Values.images.elementSynapseAdmin.registry | quote }}
|
||||||
|
repository: {{ .Values.images.elementSynapseAdmin.repository | quote }}
|
||||||
|
tag: {{ .Values.images.elementSynapseAdmin.tag | quote }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
ingress:
|
||||||
|
enabled: {{ .Values.ingress.enabled }}
|
||||||
|
tls:
|
||||||
|
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
||||||
|
{{- if .Values.certificate.selfSigned }}
|
||||||
|
extraEnvVars:
|
||||||
|
- name: "NODE_EXTRA_CA_CERTS"
|
||||||
|
value: "/etc/ssl/certs/ca-certificates.crt"
|
||||||
|
extraVolumes:
|
||||||
|
- name: "trusted-cert-secret-volume"
|
||||||
|
secret:
|
||||||
|
secretName: "opendesk-certificates-ca-tls"
|
||||||
|
items:
|
||||||
|
- key: "ca.crt"
|
||||||
|
path: "ca-certificates.crt"
|
||||||
|
extraVolumeMounts:
|
||||||
|
- name: "trusted-cert-secret-volume"
|
||||||
|
mountPath: "/etc/ssl/certs/ca-certificates.crt"
|
||||||
|
subPath: "ca-certificates.crt"
|
||||||
|
{{- end }}
|
||||||
|
...
|
||||||
@@ -0,0 +1,33 @@
|
|||||||
|
{{/*
|
||||||
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
|
---
|
||||||
|
global:
|
||||||
|
domain: {{ .Values.global.domain | quote }}
|
||||||
|
hosts:
|
||||||
|
{{ .Values.global.hosts | toYaml | nindent 4 }}
|
||||||
|
imagePullSecrets:
|
||||||
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
|
|
||||||
|
configuration:
|
||||||
|
username: "adminbot"
|
||||||
|
pod: "opendesk-synapse-0"
|
||||||
|
secretName: "matrix-adminbot-account"
|
||||||
|
password: {{ .Values.secrets.matrixAdminBot.password | quote }}
|
||||||
|
pipeConfig:
|
||||||
|
enabled: true
|
||||||
|
type: "admin"
|
||||||
|
secretName: "matrix-adminbot-config"
|
||||||
|
asToken: {{ .Values.secrets.matrixAdminBot.synapseAsToken | quote }}
|
||||||
|
hsToken: {{ .Values.secrets.matrixAdminBot.synapseAsToken | quote }}
|
||||||
|
serviceUrl: "http://opendesk-synapse-web:8008"
|
||||||
|
backupPassphrase: {{ .Values.secrets.matrixAdminBot.backupPassphrase | quote }}
|
||||||
|
homeserverName: {{ .Values.global.matrixDomain | default .Values.global.domain | quote }}
|
||||||
|
image:
|
||||||
|
registry: {{ coalesce .Values.repositories.image.dockerHub .Values.global.imageRegistry .Values.images.synapseCreateUser.registry | quote }}
|
||||||
|
url: {{ .Values.images.synapseCreateUser.repository | quote }}
|
||||||
|
tag: {{ .Values.images.synapseCreateUser.tag | quote }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
fullnameOverride: "matrix-adminbot-bootstrap"
|
||||||
|
...
|
||||||
@@ -0,0 +1,21 @@
|
|||||||
|
{{/*
|
||||||
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
|
---
|
||||||
|
global:
|
||||||
|
domain: {{ .Values.global.domain | quote }}
|
||||||
|
hosts:
|
||||||
|
{{ .Values.global.hosts | toYaml | nindent 4 }}
|
||||||
|
imagePullSecrets:
|
||||||
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
|
|
||||||
|
configuration:
|
||||||
|
secretName: "matrix-adminbot-config"
|
||||||
|
image:
|
||||||
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDeEnterprise .Values.global.imageRegistry .Values.images.elementPipe.registry | quote }}
|
||||||
|
url: {{ .Values.images.elementPipe.repository | quote }}
|
||||||
|
tag: {{ .Values.images.elementPipe.tag | quote }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
fullnameOverride: "opendesk-synapse-adminbot-pipe"
|
||||||
|
...
|
||||||
@@ -0,0 +1,25 @@
|
|||||||
|
{{/*
|
||||||
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
|
---
|
||||||
|
global:
|
||||||
|
domain: {{ .Values.global.domain | quote }}
|
||||||
|
hosts:
|
||||||
|
{{ .Values.global.hosts | toYaml | nindent 4 }}
|
||||||
|
imagePullSecrets:
|
||||||
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
|
|
||||||
|
configuration:
|
||||||
|
homeserver:
|
||||||
|
serverName: {{ .Values.global.matrixDomain | default .Values.global.domain }}
|
||||||
|
image:
|
||||||
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDeEnterprise .Values.global.imageRegistry .Values.images.elementAdminBot.registry | quote }}
|
||||||
|
repository: {{ .Values.images.elementAdminBot.repository | quote }}
|
||||||
|
tag: {{ .Values.images.elementAdminBot.tag | quote }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
ingress:
|
||||||
|
enabled: {{ .Values.ingress.enabled }}
|
||||||
|
tls:
|
||||||
|
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
||||||
|
...
|
||||||
@@ -0,0 +1,33 @@
|
|||||||
|
{{/*
|
||||||
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
|
---
|
||||||
|
global:
|
||||||
|
domain: {{ .Values.global.domain | quote }}
|
||||||
|
hosts:
|
||||||
|
{{ .Values.global.hosts | toYaml | nindent 4 }}
|
||||||
|
imagePullSecrets:
|
||||||
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
|
|
||||||
|
configuration:
|
||||||
|
username: "auditbot"
|
||||||
|
pod: "opendesk-synapse-0"
|
||||||
|
secretName: "matrix-auditbot-account"
|
||||||
|
password: {{ .Values.secrets.matrixAuditBot.password | quote }}
|
||||||
|
pipeConfig:
|
||||||
|
enabled: true
|
||||||
|
type: "admin"
|
||||||
|
secretName: "matrix-auditbot-config"
|
||||||
|
asToken: {{ .Values.secrets.matrixAuditBot.synapseAsToken | quote }}
|
||||||
|
hsToken: {{ .Values.secrets.matrixAuditBot.synapseAsToken | quote }}
|
||||||
|
serviceUrl: "http://opendesk-synapse-web:8008"
|
||||||
|
backupPassphrase: {{ .Values.secrets.matrixAuditBot.backupPassphrase | quote }}
|
||||||
|
homeserverName: {{ .Values.global.matrixDomain | default .Values.global.domain | quote }}
|
||||||
|
image:
|
||||||
|
registry: {{ coalesce .Values.repositories.image.dockerHub .Values.global.imageRegistry .Values.images.synapseCreateUser.registry | quote }}
|
||||||
|
url: {{ .Values.images.synapseCreateUser.repository | quote }}
|
||||||
|
tag: {{ .Values.images.synapseCreateUser.tag | quote }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
fullnameOverride: "matrix-auditbot-bootstrap"
|
||||||
|
...
|
||||||
@@ -0,0 +1,21 @@
|
|||||||
|
{{/*
|
||||||
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
|
---
|
||||||
|
global:
|
||||||
|
domain: {{ .Values.global.domain | quote }}
|
||||||
|
hosts:
|
||||||
|
{{ .Values.global.hosts | toYaml | nindent 4 }}
|
||||||
|
imagePullSecrets:
|
||||||
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
|
|
||||||
|
configuration:
|
||||||
|
secretName: "matrix-auditbot-config"
|
||||||
|
image:
|
||||||
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDeEnterprise .Values.global.imageRegistry .Values.images.elementPipe.registry | quote }}
|
||||||
|
url: {{ .Values.images.elementPipe.repository | quote }}
|
||||||
|
tag: {{ .Values.images.elementPipe.tag | quote }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
fullnameOverride: "opendesk-synapse-auditbot-pipe"
|
||||||
|
...
|
||||||
56
helmfile/apps/element/values-synapse-groupsync.yaml.gotmpl
Normal file
@@ -0,0 +1,56 @@
|
|||||||
|
{{/*
|
||||||
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
|
---
|
||||||
|
global:
|
||||||
|
domain: {{ .Values.global.domain | quote }}
|
||||||
|
hosts:
|
||||||
|
{{ .Values.global.hosts | toYaml | nindent 4 }}
|
||||||
|
imagePullSecrets:
|
||||||
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
|
|
||||||
|
configuration:
|
||||||
|
asToken: {{ .Values.secrets.matrixGroupsync.synapseAsToken | quote }}
|
||||||
|
dryRun: false
|
||||||
|
hsToken: {{ .Values.secrets.matrixGroupsync.synapseAsToken | quote }}
|
||||||
|
id: "gps"
|
||||||
|
homeserverName: {{ .Values.global.matrixDomain | default .Values.global.domain | quote }}
|
||||||
|
registrationSharedSecret: {{ .Values.secrets.synapse.registrationSharedSecret | quote }}
|
||||||
|
runOnce: false
|
||||||
|
username: "groupsyncbot"
|
||||||
|
ldap:
|
||||||
|
attributes:
|
||||||
|
name: "description"
|
||||||
|
uid: "uid"
|
||||||
|
base: {{ .Values.ldap.baseDn | quote }}
|
||||||
|
bind_dn: "uid=ldapsearch_element,cn=users,{{ .Values.ldap.baseDn }}"
|
||||||
|
bind_password: {{ .Values.secrets.nubus.ldapSearch.element | quote }}
|
||||||
|
check_interval_seconds: 60
|
||||||
|
type: mapped-ldap
|
||||||
|
uri: "ldap://ums-ldap-server:389"
|
||||||
|
spaces:
|
||||||
|
- groups:
|
||||||
|
- externalId: "cn=managed-by-attribute-LivecollaborationAdmin,cn=groups,{{ .Values.ldap.baseDn }}"
|
||||||
|
powerLevel: 50
|
||||||
|
- externalId: "cn=managed-by-attribute-Livecollaboration,cn=groups,{{ .Values.ldap.baseDn }}"
|
||||||
|
id: "c3122e32-4e05-4bf8-8a5d-66679076ed36"
|
||||||
|
name: "openDesk"
|
||||||
|
subspaces:
|
||||||
|
- groups:
|
||||||
|
- externalId: "cn=managed-by-attribute-LivecollaborationAdmin,cn=groups,{{ .Values.ldap.baseDn }}"
|
||||||
|
powerLevel: 50
|
||||||
|
id: "e7889d96-5baa-4e21-be6e-12c66b2e9565"
|
||||||
|
name: "openDesk Element Admins"
|
||||||
|
provisionerDefaultRooms:
|
||||||
|
- id: "c3122e32-4e05-4bf8-8a5d-66679076ed36"
|
||||||
|
properties:
|
||||||
|
name: "openDesk"
|
||||||
|
# Name of group sync service (default opendesk-synapse-groupsync)
|
||||||
|
groupSyncService: "opendesk-synapse-groupsync"
|
||||||
|
image:
|
||||||
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDeEnterprise .Values.global.imageRegistry .Values.images.elementGroupsync.registry | quote }}
|
||||||
|
url: {{ .Values.images.elementGroupsync.repository | quote }}
|
||||||
|
tag: {{ .Values.images.elementGroupsync.tag | quote }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
...
|
||||||
@@ -69,6 +69,60 @@ configuration:
|
|||||||
regex: "@.*"
|
regex: "@.*"
|
||||||
url: null
|
url: null
|
||||||
sender_localpart: ox-appsuite
|
sender_localpart: ox-appsuite
|
||||||
|
{{- if eq (env "OPENDESK_ENTERPRISE") "true" }}
|
||||||
|
{{- if .Values.apps.elementAdmin.enabled }}
|
||||||
|
- as_token: {{ .Values.secrets.matrixAdminBot.synapseAsToken | quote }}
|
||||||
|
hs_token: {{ .Values.secrets.matrixAdminBot.synapseAsToken | quote }}
|
||||||
|
id: "element-adminbot-pipe"
|
||||||
|
namespaces:
|
||||||
|
rooms:
|
||||||
|
- exclusive: false
|
||||||
|
regex: "!.*:{{ .Values.global.domain }}"
|
||||||
|
users:
|
||||||
|
- exclusive: false
|
||||||
|
regex: "@.*:.*"
|
||||||
|
- exclusive: true
|
||||||
|
regex: "@adminbot:{{ .Values.global.domain }}"
|
||||||
|
de.sorunome.msc2409.push_ephemeral: true
|
||||||
|
org.matrix.msc3202: true
|
||||||
|
url: "http://opendesk-synapse-adminbot-pipe:9995"
|
||||||
|
rate_limited: false
|
||||||
|
sender_localpart: "adminbot-sendernotinuse"
|
||||||
|
- as_token: {{ .Values.secrets.matrixAuditBot.synapseAsToken | quote }}
|
||||||
|
hs_token: {{ .Values.secrets.matrixAuditBot.synapseAsToken | quote }}
|
||||||
|
id: "element-auditbot-pipe"
|
||||||
|
namespaces:
|
||||||
|
rooms:
|
||||||
|
- exclusive: false
|
||||||
|
regex: "!.*:{{ .Values.global.domain }}"
|
||||||
|
users:
|
||||||
|
- exclusive: false
|
||||||
|
regex: "@.*:.*"
|
||||||
|
- exclusive: true
|
||||||
|
regex: "@auditbot:{{ .Values.global.domain }}"
|
||||||
|
de.sorunome.msc2409.push_ephemeral: true
|
||||||
|
org.matrix.msc3202: true
|
||||||
|
url: "http://opendesk-synapse-auditbot-pipe:9995"
|
||||||
|
rate_limited: false
|
||||||
|
sender_localpart: "auditbot-sendernotinuse"
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.apps.elementGroupsync.enabled }}
|
||||||
|
- as_token: {{ .Values.secrets.matrixGroupsync.synapseAsToken | quote }}
|
||||||
|
hs_token: {{ .Values.secrets.matrixGroupsync.synapseAsToken | quote }}
|
||||||
|
id: "gps"
|
||||||
|
namespaces:
|
||||||
|
rooms:
|
||||||
|
- exclusive: false
|
||||||
|
regex: "!.*:{{ .Values.global.domain }}"
|
||||||
|
users:
|
||||||
|
- exclusive: false
|
||||||
|
regex: '@.*:{{ .Values.global.domain }}'
|
||||||
|
url: "http://opendesk-synapse-groupsync:10010"
|
||||||
|
rate_limited: false
|
||||||
|
sender_localpart: "groupsyncbot"
|
||||||
|
{{- end }}
|
||||||
|
registrationSharedSecret: {{ .Values.secrets.synapse.registrationSharedSecret | quote }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
presence:
|
presence:
|
||||||
enabled: {{ .Values.functional.dataProtection.matrixPresence.enabled }}
|
enabled: {{ .Values.functional.dataProtection.matrixPresence.enabled }}
|
||||||
@@ -78,7 +132,7 @@ configuration:
|
|||||||
|
|
||||||
smtp:
|
smtp:
|
||||||
senderAddress: "{{ .Values.smtp.localpartNoReply }}@{{ .Values.global.domain }}"
|
senderAddress: "{{ .Values.smtp.localpartNoReply }}@{{ .Values.global.domain }}"
|
||||||
host: {{ printf "%s.%s.svc.%s" "postfix" (.Values.postfix.namespace | default .Release.Namespace) .Values.cluster.networking.domain | quote }}
|
host: {{ printf "%s.%s.svc.%s" "postfix" (.Values.apps.postfix.namespace | default .Release.Namespace) .Values.cluster.networking.domain | quote }}
|
||||||
port: 25
|
port: 25
|
||||||
tls: false
|
tls: false
|
||||||
starttls: false
|
starttls: false
|
||||||
|
|||||||
@@ -10,7 +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 }}/{{ .Values.charts.jitsi.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.jitsi.registry }}/{{ .Values.charts.jitsi.repository }}"
|
||||||
|
|
||||||
releases:
|
releases:
|
||||||
- name: "jitsi"
|
- name: "jitsi"
|
||||||
@@ -21,7 +21,7 @@ releases:
|
|||||||
{{- range .Values.customization.release.jitsi }}
|
{{- range .Values.customization.release.jitsi }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.jitsi.enabled }}
|
installed: {{ .Values.apps.jitsi.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
commonLabels:
|
commonLabels:
|
||||||
|
|||||||
@@ -219,7 +219,7 @@ jitsi:
|
|||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.jvb | toYaml | nindent 6 }}
|
{{ .Values.resources.jvb | toYaml | nindent 6 }}
|
||||||
service:
|
service:
|
||||||
type: {{ .Values.cluster.service.type | quote }}
|
type: {{ coalesce .Values.service.type.jitsiVideoBridge .Values.cluster.service.type | quote }}
|
||||||
securityContext:
|
securityContext:
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
capabilities: {}
|
capabilities: {}
|
||||||
|
|||||||
@@ -10,14 +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 }}/{{ .Values.charts.nextcloudManagement.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.nextcloudManagement.registry }}/{{ .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 }}/{{ .Values.charts.nextcloud.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.nextcloud.registry }}/{{ .Values.charts.nextcloud.repository }}"
|
||||||
|
|
||||||
releases:
|
releases:
|
||||||
- name: "opendesk-nextcloud-management"
|
- name: "opendesk-nextcloud-management"
|
||||||
@@ -25,7 +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"
|
||||||
{{- if (env "OPENDESK_ENTERPRISE") }}
|
{{- if eq (env "OPENDESK_ENTERPRISE") "true" }}
|
||||||
- "values-nextcloud-mgmt-enterprise.yaml.gotmpl"
|
- "values-nextcloud-mgmt-enterprise.yaml.gotmpl"
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- range .Values.customization.release.opendeskNextcloudManagement }}
|
{{- range .Values.customization.release.opendeskNextcloudManagement }}
|
||||||
@@ -33,14 +33,14 @@ releases:
|
|||||||
{{- end }}
|
{{- end }}
|
||||||
waitForJobs: true
|
waitForJobs: true
|
||||||
wait: true
|
wait: true
|
||||||
installed: {{ .Values.nextcloud.enabled }}
|
installed: {{ .Values.apps.nextcloud.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
- name: "opendesk-nextcloud"
|
- name: "opendesk-nextcloud"
|
||||||
chart: "nextcloud-repo/{{ .Values.charts.nextcloud.name }}"
|
chart: "nextcloud-repo/{{ .Values.charts.nextcloud.name }}"
|
||||||
version: "{{ .Values.charts.nextcloud.version }}"
|
version: "{{ .Values.charts.nextcloud.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-nextcloud.yaml.gotmpl"
|
- "values-nextcloud.yaml.gotmpl"
|
||||||
{{- if (env "OPENDESK_ENTERPRISE") }}
|
{{- if eq (env "OPENDESK_ENTERPRISE") "true" }}
|
||||||
- "values-nextcloud-enterprise.yaml.gotmpl"
|
- "values-nextcloud-enterprise.yaml.gotmpl"
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- range .Values.customization.release.opendeskNextcloud }}
|
{{- range .Values.customization.release.opendeskNextcloud }}
|
||||||
@@ -48,7 +48,7 @@ releases:
|
|||||||
{{- end }}
|
{{- end }}
|
||||||
needs:
|
needs:
|
||||||
- "opendesk-nextcloud-management"
|
- "opendesk-nextcloud-management"
|
||||||
installed: {{ .Values.nextcloud.enabled }}
|
installed: {{ .Values.apps.nextcloud.enabled }}
|
||||||
|
|
||||||
commonLabels:
|
commonLabels:
|
||||||
deployStage: "050-components"
|
deployStage: "050-components"
|
||||||
|
|||||||
@@ -31,9 +31,9 @@ configuration:
|
|||||||
host: {{ .Values.antivirus.icap.host | quote }}
|
host: {{ .Values.antivirus.icap.host | quote }}
|
||||||
port: {{ .Values.antivirus.icap.port | quote }}
|
port: {{ .Values.antivirus.icap.port | quote }}
|
||||||
{{- else }}
|
{{- else }}
|
||||||
{{- if .Values.clamavDistributed.enabled }}
|
{{- if .Values.apps.clamavDistributed.enabled }}
|
||||||
host: "clamav-icap"
|
host: "clamav-icap"
|
||||||
{{- else if .Values.clamavSimple.enabled }}
|
{{- else if .Values.apps.clamavSimple.enabled }}
|
||||||
host: "clamav-simple"
|
host: "clamav-simple"
|
||||||
{{- end }}
|
{{- end }}
|
||||||
port: 1344
|
port: 1344
|
||||||
@@ -55,13 +55,13 @@ configuration:
|
|||||||
contacts:
|
contacts:
|
||||||
enabled: false
|
enabled: false
|
||||||
cryptpad:
|
cryptpad:
|
||||||
enabled: {{ .Values.cryptpad.enabled }}
|
enabled: {{ .Values.apps.cryptpad.enabled }}
|
||||||
filesZip:
|
filesZip:
|
||||||
enabled: true
|
enabled: true
|
||||||
groupfolders:
|
groupfolders:
|
||||||
enabled: true
|
enabled: true
|
||||||
integrationOpenproject:
|
integrationOpenproject:
|
||||||
enabled: {{ .Values.openproject.enabled }}
|
enabled: {{ .Values.apps.openproject.enabled }}
|
||||||
spreed:
|
spreed:
|
||||||
enabled: true
|
enabled: true
|
||||||
circles:
|
circles:
|
||||||
@@ -147,7 +147,7 @@ configuration:
|
|||||||
value: ""
|
value: ""
|
||||||
password:
|
password:
|
||||||
value: ""
|
value: ""
|
||||||
host: {{ printf "%s.%s.svc.%s" "postfix" (.Values.postfix.namespace | default .Release.Namespace) .Values.cluster.networking.domain | quote }}
|
host: {{ printf "%s.%s.svc.%s" "postfix" (.Values.apps.postfix.namespace | default .Release.Namespace) .Values.cluster.networking.domain | quote }}
|
||||||
port: 25
|
port: 25
|
||||||
fromAddress: {{ .Values.smtp.localpartNoReply | quote }}
|
fromAddress: {{ .Values.smtp.localpartNoReply | quote }}
|
||||||
mailDomain: "{{ .Values.global.domain }}"
|
mailDomain: "{{ .Values.global.domain }}"
|
||||||
|
|||||||
@@ -102,6 +102,9 @@ aio:
|
|||||||
{{ .Values.seLinuxOptions.nextcloud | 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 }}
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.nextcloudCron | toYaml | nindent 6 }}
|
||||||
|
|
||||||
debug:
|
debug:
|
||||||
loglevel: {{ if .Values.debug.enabled }}"0"{{ else }}"2"{{ end }}
|
loglevel: {{ if .Values.debug.enabled }}"0"{{ else }}"2"{{ end }}
|
||||||
{{- if .Values.certificate.selfSigned }}
|
{{- if .Values.certificate.selfSigned }}
|
||||||
|
|||||||
@@ -10,7 +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.notes.registry }}/{{ .Values.charts.notes.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.notes.registry }}/{{ .Values.charts.notes.repository }}"
|
||||||
|
|
||||||
releases:
|
releases:
|
||||||
- name: "impress"
|
- name: "impress"
|
||||||
@@ -22,7 +22,7 @@ releases:
|
|||||||
{{- range .Values.customization.release.notes }}
|
{{- range .Values.customization.release.notes }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.notes.enabled }}
|
installed: {{ .Values.apps.notes.enabled }}
|
||||||
timeout: 1800
|
timeout: 1800
|
||||||
|
|
||||||
commonLabels:
|
commonLabels:
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ 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.charts.nubus.repository }}"
|
"{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.nubus.registry }}/{{ .Values.charts.nubus.repository }}"
|
||||||
# Intercom Service
|
# Intercom Service
|
||||||
# Source: https://gitlab.souvap-univention.de/souvap/tooling/charts/intercom-service
|
# Source: https://gitlab.souvap-univention.de/souvap/tooling/charts/intercom-service
|
||||||
- name: "intercom-service-repo"
|
- name: "intercom-service-repo"
|
||||||
@@ -19,7 +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.intercomService.registry }}/{{ .Values.charts.intercomService.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.intercomService.registry }}/{{ .Values.charts.intercomService.repository }}"
|
||||||
# openDesk Keycloak Bootstrap Chart
|
# 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"
|
||||||
@@ -27,7 +27,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.opendeskKeycloakBootstrap.registry }}/{{ .Values.charts.opendeskKeycloakBootstrap.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.opendeskKeycloakBootstrap.registry }}/{{ .Values.charts.opendeskKeycloakBootstrap.repository }}"
|
||||||
# NGINX S3 Gateway Chart
|
# NGINX S3 Gateway Chart
|
||||||
- name: "nginx-s3-gateway-repo"
|
- name: "nginx-s3-gateway-repo"
|
||||||
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
||||||
@@ -35,7 +35,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.nginxS3Gateway.registry }}/{{ .Values.charts.nginxS3Gateway.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.nginxS3Gateway.registry }}/{{ .Values.charts.nginxS3Gateway.repository }}"
|
||||||
|
|
||||||
releases:
|
releases:
|
||||||
# Univention Management Stack Umbrella Chart
|
# Univention Management Stack Umbrella Chart
|
||||||
@@ -47,7 +47,7 @@ releases:
|
|||||||
{{- range .Values.customization.release.ums }}
|
{{- range .Values.customization.release.ums }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.nubus.enabled }}
|
installed: {{ .Values.apps.nubus.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
# Intercom-Service
|
# Intercom-Service
|
||||||
- name: "intercom-service"
|
- name: "intercom-service"
|
||||||
@@ -58,7 +58,7 @@ releases:
|
|||||||
{{- range .Values.customization.release.intercomService }}
|
{{- range .Values.customization.release.intercomService }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.nubus.enabled }}
|
installed: {{ .Values.apps.nubus.enabled }}
|
||||||
|
|
||||||
# openDesk Keycloak Bootstrap Chart
|
# openDesk Keycloak Bootstrap Chart
|
||||||
- name: "opendesk-keycloak-bootstrap"
|
- name: "opendesk-keycloak-bootstrap"
|
||||||
@@ -71,7 +71,7 @@ releases:
|
|||||||
{{- end }}
|
{{- end }}
|
||||||
needs:
|
needs:
|
||||||
- "ums"
|
- "ums"
|
||||||
installed: {{ .Values.nubus.enabled }}
|
installed: {{ .Values.apps.nubus.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
# NGINX S3 Gateway (when cluster minio is not used)
|
# NGINX S3 Gateway (when cluster minio is not used)
|
||||||
@@ -83,7 +83,7 @@ releases:
|
|||||||
{{- range .Values.customization.release.nginxS3Gateway }}
|
{{- range .Values.customization.release.nginxS3Gateway }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ not .Values.minio.enabled }}
|
installed: {{ not .Values.apps.minio.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
commonLabels:
|
commonLabels:
|
||||||
|
|||||||
@@ -42,6 +42,12 @@ global:
|
|||||||
repository: {{ .Values.images.nubusOpendeskExtension.repository }}
|
repository: {{ .Values.images.nubusOpendeskExtension.repository }}
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy }}
|
||||||
tag: {{ .Values.images.nubusOpendeskExtension.tag }}
|
tag: {{ .Values.images.nubusOpendeskExtension.tag }}
|
||||||
|
- name: "opendesk-a2g-mapper"
|
||||||
|
image:
|
||||||
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusOpendeskExtensionA2gMapper.registry | quote }}
|
||||||
|
repository: {{ .Values.images.nubusOpendeskExtensionA2gMapper.repository }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy }}
|
||||||
|
tag: {{ .Values.images.nubusOpendeskExtensionA2gMapper.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
|
||||||
@@ -119,7 +125,7 @@ global:
|
|||||||
|
|
||||||
ingress:
|
ingress:
|
||||||
# temporary fix
|
# temporary fix
|
||||||
{{- if not .Values.minio.enabled }}
|
{{- if not .Values.apps.minio.enabled }}
|
||||||
enabled: false
|
enabled: false
|
||||||
{{- end }}
|
{{- end }}
|
||||||
certManager:
|
certManager:
|
||||||
@@ -377,6 +383,7 @@ nubusGuardian:
|
|||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
nubusNotificationsApi:
|
nubusNotificationsApi:
|
||||||
|
enabled: false
|
||||||
additionalAnnotations:
|
additionalAnnotations:
|
||||||
intents.otterize.com/service-name: "ums-notifications-api"
|
intents.otterize.com/service-name: "ums-notifications-api"
|
||||||
containerSecurityContext:
|
containerSecurityContext:
|
||||||
@@ -515,6 +522,7 @@ nubusKeycloakExtensions:
|
|||||||
connection:
|
connection:
|
||||||
host: {{ .Values.databases.keycloakExtension.host | quote }}
|
host: {{ .Values.databases.keycloakExtension.host | quote }}
|
||||||
port: {{ .Values.databases.keycloakExtension.port | quote }}
|
port: {{ .Values.databases.keycloakExtension.port | quote }}
|
||||||
|
ssl: {{ .Values.databases.keycloakExtension.ssl | quote }}
|
||||||
auth:
|
auth:
|
||||||
database: {{ .Values.databases.keycloakExtension.name | quote }}
|
database: {{ .Values.databases.keycloakExtension.name | quote }}
|
||||||
username: {{ .Values.databases.keycloakExtension.username | quote }}
|
username: {{ .Values.databases.keycloakExtension.username | quote }}
|
||||||
@@ -524,7 +532,7 @@ nubusKeycloakExtensions:
|
|||||||
password: "umcKeycloakExtensionsDatabasePassword"
|
password: "umcKeycloakExtensionsDatabasePassword"
|
||||||
smtp:
|
smtp:
|
||||||
connection:
|
connection:
|
||||||
host: {{ printf "%s.%s.svc.%s" "postfix" (.Values.postfix.namespace | default .Release.Namespace) .Values.cluster.networking.domain | quote }}
|
host: {{ printf "%s.%s.svc.%s" "postfix" (.Values.apps.postfix.namespace | default .Release.Namespace) .Values.cluster.networking.domain | quote }}
|
||||||
port: 25
|
port: 25
|
||||||
ssl: false
|
ssl: false
|
||||||
starttls: false
|
starttls: false
|
||||||
@@ -537,6 +545,7 @@ nubusKeycloakExtensions:
|
|||||||
password: "umcKeycloakExtensionsSmtpPassword"
|
password: "umcKeycloakExtensionsSmtpPassword"
|
||||||
handler:
|
handler:
|
||||||
appConfig:
|
appConfig:
|
||||||
|
newDeviceLoginNotificationEnable: {{ if .Values.functional.authentication.newDeviceLoginNotification.enabled }}"True"{{ else }}"False"{{ end }}
|
||||||
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 }}@{{ .Values.global.domain }}"
|
mailFrom: "{{ .Values.smtp.localpartNoReply }}@{{ .Values.global.domain }}"
|
||||||
@@ -736,6 +745,7 @@ nubusUdmRestApi:
|
|||||||
imagePullSecrets:
|
imagePullSecrets:
|
||||||
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
ingress:
|
ingress:
|
||||||
|
enabled: {{ .Values.functional.externalServices.nubus.udmRestApi.enabled }}
|
||||||
certManager:
|
certManager:
|
||||||
enabled: false
|
enabled: false
|
||||||
tls:
|
tls:
|
||||||
@@ -1095,15 +1105,18 @@ nubusStackDataUms:
|
|||||||
umcMemcachedUsername: ""
|
umcMemcachedUsername: ""
|
||||||
externalMailDomain: {{ .Values.global.mailDomain | default .Values.global.domain }}
|
externalMailDomain: {{ .Values.global.mailDomain | default .Values.global.domain }}
|
||||||
umcHtmlTitle: "Portal - {{ .Values.theme.texts.productName }}"
|
umcHtmlTitle: "Portal - {{ .Values.theme.texts.productName }}"
|
||||||
smtpHost: {{ printf "%s.%s.svc.%s" "postfix" (.Values.postfix.namespace | default .Release.Namespace) .Values.cluster.networking.domain | quote }}
|
smtpHost: {{ printf "%s.%s.svc.%s" "postfix" (.Values.apps.postfix.namespace | default .Release.Namespace) .Values.cluster.networking.domain | quote }}
|
||||||
smtpPort: 25
|
smtpPort: 25
|
||||||
smtpUser: ""
|
smtpUser: ""
|
||||||
smtpStartTls: false
|
smtpStartTls: false
|
||||||
ldapBase: {{ .Values.ldap.baseDn }}
|
ldapBase: {{ .Values.ldap.baseDn }}
|
||||||
templateContext:
|
templateContext:
|
||||||
initialPasswordDefaultAdmin: {{ .Values.secrets.nubus.defaultAccounts.adminPassword | quote }}
|
|
||||||
initialPasswordDefaultUser: {{ .Values.secrets.nubus.defaultAccounts.userPassword | quote }}
|
|
||||||
initialPasswordAdministrator: {{ .Values.secrets.nubus.systemAccounts.administratorPassword | quote }}
|
initialPasswordAdministrator: {{ .Values.secrets.nubus.systemAccounts.administratorPassword | quote }}
|
||||||
|
apps: {{ .Values.apps | toYaml | nindent 6 }}
|
||||||
|
opendeskEnterprise: {{ env "OPENDESK_ENTERPRISE" }}
|
||||||
|
opendeskAdminAttributes: true
|
||||||
|
opendeskGroupAttributes: true
|
||||||
|
opendeskUserAttributes: true
|
||||||
portalEnforceLogin: {{ .Values.functional.portal.enforceLogin }}
|
portalEnforceLogin: {{ .Values.functional.portal.enforceLogin }}
|
||||||
portalHeaderLogo: {{ toYaml .Values.theme.imagery.logoHeaderSvgB64 | quote }}
|
portalHeaderLogo: {{ toYaml .Values.theme.imagery.logoHeaderSvgB64 | quote }}
|
||||||
portalTiles: {{ toYaml .Values.theme.imagery.portalTiles | nindent 6 }}
|
portalTiles: {{ toYaml .Values.theme.imagery.portalTiles | nindent 6 }}
|
||||||
@@ -1116,9 +1129,9 @@ nubusStackDataUms:
|
|||||||
portalNotesLinkBase: {{ printf "https://%s.%s" .Values.global.hosts.notes .Values.global.domain }}
|
portalNotesLinkBase: {{ printf "https://%s.%s" .Values.global.hosts.notes .Values.global.domain }}
|
||||||
portalTitleDE: "Portal - {{ .Values.theme.texts.productName }}"
|
portalTitleDE: "Portal - {{ .Values.theme.texts.productName }}"
|
||||||
portalTitleEN: "Portal - {{ .Values.theme.texts.productName }}"
|
portalTitleEN: "Portal - {{ .Values.theme.texts.productName }}"
|
||||||
|
portalLinkLegalNotice: {{ .Values.functional.portal.linkLegalNotice }}
|
||||||
|
portalLinkPrivacyStatement: {{ .Values.functional.portal.linkPrivacyStatement }}
|
||||||
oxDefaultContext: "1"
|
oxDefaultContext: "1"
|
||||||
componentEnabled:
|
|
||||||
notes: {{ .Values.notes.enabled }}
|
|
||||||
ldapSearchUsers:
|
ldapSearchUsers:
|
||||||
{{- range $username, $password := .Values.secrets.nubus.ldapSearch }}
|
{{- range $username, $password := .Values.secrets.nubus.ldapSearch }}
|
||||||
- username: {{ printf "ldapsearch_%s" $username | quote }}
|
- username: {{ printf "ldapsearch_%s" $username | quote }}
|
||||||
@@ -1151,12 +1164,18 @@ nubusStackDataUms:
|
|||||||
portaltileGroupNotes:
|
portaltileGroupNotes:
|
||||||
- 'cn=managed-by-attribute-Notes,cn=groups,{{ .Values.ldap.baseDn }}'
|
- 'cn=managed-by-attribute-Notes,cn=groups,{{ .Values.ldap.baseDn }}'
|
||||||
systemInformation:
|
systemInformation:
|
||||||
releaseVersion: "Release: {{ .Values.global.systemInformation.releaseVersion }}{{ if (env "OPENDESK_ENTERPRISE") }}-ee{{ end }}"
|
releaseVersion: "Release: {{ .Values.global.systemInformation.releaseVersion }}{{ if eq (env "OPENDESK_ENTERPRISE") "true" }}-ee{{ end }}"
|
||||||
{{- if .Values.functional.admin.portal.deploymentTimestamp.enabled }}
|
{{- if .Values.functional.admin.portal.deploymentTimestamp.enabled }}
|
||||||
deployDate: "Deployed: {{ now | date "2006-01-02T15:04:05-0700" }}"
|
deployDate: "Deployed: {{ now | date "2006-01-02T15:04:05-0700" }}"
|
||||||
{{- else }}
|
{{- else }}
|
||||||
deployDate: false
|
deployDate: false
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
# executes a list of UDM commands as step `03-custom-initializer.yaml` of the opendesk-nubus customization
|
||||||
|
# Ref. https://gitlab.opencode.de/bmi/opendesk/components/platform-development/images/opendesk-nubus/-/tree/main/udm/udm-data-loader
|
||||||
|
udmCustomInitializer: []
|
||||||
|
# executes a list of UDM commands as step `97-custom-finalizer.yaml` of the opendesk-nubus customization
|
||||||
|
# Ref. https://gitlab.opencode.de/bmi/opendesk/components/platform-development/images/opendesk-nubus/-/tree/main/udm/udm-data-loader
|
||||||
|
udmCustomFinalizer: []
|
||||||
|
|
||||||
nubusUmcServer:
|
nubusUmcServer:
|
||||||
additionalAnnotations:
|
additionalAnnotations:
|
||||||
|
|||||||
@@ -22,31 +22,42 @@ cleanup:
|
|||||||
|
|
||||||
config:
|
config:
|
||||||
clientAccessRestrictions:
|
clientAccessRestrictions:
|
||||||
|
{{- if .Values.apps.element.enabled }}
|
||||||
matrix:
|
matrix:
|
||||||
client: "opendesk-matrix"
|
client: "opendesk-matrix"
|
||||||
scope: "opendesk-matrix-scope"
|
scope: "opendesk-matrix-scope"
|
||||||
role: "opendesk-matrix-access-control"
|
role: "opendesk-matrix-access-control"
|
||||||
group: "managed-by-attribute-Livecollaboration"
|
group: "managed-by-attribute-Livecollaboration"
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.apps.jitsi.enabled }}
|
||||||
jitsi:
|
jitsi:
|
||||||
client: "opendesk-jitsi"
|
client: "opendesk-jitsi"
|
||||||
scope: "opendesk-jitsi-scope"
|
scope: "opendesk-jitsi-scope"
|
||||||
role: "opendesk-jitsi-access-control"
|
role: "opendesk-jitsi-access-control"
|
||||||
group: "managed-by-attribute-Videoconference"
|
group: "managed-by-attribute-Videoconference"
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.apps.xwiki.enabled }}
|
||||||
xwiki:
|
xwiki:
|
||||||
client: "opendesk-xwiki"
|
client: "opendesk-xwiki"
|
||||||
scope: "opendesk-xwiki-scope"
|
scope: "opendesk-xwiki-scope"
|
||||||
role: "opendesk-xwiki-access-control"
|
role: "opendesk-xwiki-access-control"
|
||||||
group: "managed-by-attribute-Knowledgemanagement"
|
group: "managed-by-attribute-Knowledgemanagement"
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.apps.openproject.enabled }}
|
||||||
openproject:
|
openproject:
|
||||||
client: "opendesk-openproject"
|
client: "opendesk-openproject"
|
||||||
scope: "opendesk-openproject-scope"
|
scope: "opendesk-openproject-scope"
|
||||||
role: "opendesk-openproject-access-control"
|
role: "opendesk-openproject-access-control"
|
||||||
group: "managed-by-attribute-Projectmanagement"
|
group: "managed-by-attribute-Projectmanagement"
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.apps.nextcloud.enabled }}
|
||||||
nextcloud:
|
nextcloud:
|
||||||
client: "opendesk-nextcloud"
|
client: "opendesk-nextcloud"
|
||||||
scope: "opendesk-nextcloud-scope"
|
scope: "opendesk-nextcloud-scope"
|
||||||
role: "opendesk-nextcloud-access-control"
|
role: "opendesk-nextcloud-access-control"
|
||||||
group: "managed-by-attribute-Fileshare"
|
group: "managed-by-attribute-Fileshare"
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.apps.oxAppSuite.enabled }}
|
||||||
oxAppSuite:
|
oxAppSuite:
|
||||||
client: "opendesk-oxappsuite"
|
client: "opendesk-oxappsuite"
|
||||||
scope: "opendesk-oxappsuite-scope"
|
scope: "opendesk-oxappsuite-scope"
|
||||||
@@ -57,7 +68,8 @@ config:
|
|||||||
scope: "opendesk-dovecot-scope"
|
scope: "opendesk-dovecot-scope"
|
||||||
role: "opendesk-dovecot-access-control"
|
role: "opendesk-dovecot-access-control"
|
||||||
group: "managed-by-attribute-Groupware"
|
group: "managed-by-attribute-Groupware"
|
||||||
{{- if .Values.notes.enabled }}
|
{{- end }}
|
||||||
|
{{- if .Values.apps.notes.enabled }}
|
||||||
notes:
|
notes:
|
||||||
client: "opendesk-notes"
|
client: "opendesk-notes"
|
||||||
scope: "opendesk-notes-scope"
|
scope: "opendesk-notes-scope"
|
||||||
@@ -65,8 +77,6 @@ config:
|
|||||||
group: "managed-by-attribute-Notes"
|
group: "managed-by-attribute-Notes"
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
componentEnabled:
|
|
||||||
notes: {{ .Values.notes.enabled }}
|
|
||||||
custom:
|
custom:
|
||||||
clientScopes:
|
clientScopes:
|
||||||
{{ .Values.functional.authentication.oidc.clientScopes | toYaml | nindent 6 }}
|
{{ .Values.functional.authentication.oidc.clientScopes | toYaml | nindent 6 }}
|
||||||
@@ -88,13 +98,14 @@ config:
|
|||||||
twoFactorSettings:
|
twoFactorSettings:
|
||||||
additionalGroups: {{ .Values.functional.authentication.twoFactor.groups }}
|
additionalGroups: {{ .Values.functional.authentication.twoFactor.groups }}
|
||||||
precreateGroups: [ 'Domain Admins', 'Domain Users', '2fa-users', 'IAM API - Full Access',
|
precreateGroups: [ 'Domain Admins', 'Domain Users', '2fa-users', 'IAM API - Full Access',
|
||||||
'managed-by-attribute-Fileshare', 'managed-by-attribute-FileshareAdmin',
|
{{ if .Values.apps.nextcloud.enabled }}'managed-by-attribute-Fileshare', 'managed-by-attribute-FileshareAdmin',{{ end }}
|
||||||
'managed-by-attribute-Knowledgemanagement', 'managed-by-attribute-KnowledgemanagementAdmin',
|
{{ if .Values.apps.xwiki.enabled }}'managed-by-attribute-Knowledgemanagement', 'managed-by-attribute-KnowledgemanagementAdmin',{{ end }}
|
||||||
'managed-by-attribute-Livecollaboration', 'managed-by-attribute-LivecollaborationAdmin',
|
{{ if .Values.apps.element.enabled }}'managed-by-attribute-Livecollaboration', 'managed-by-attribute-LivecollaborationAdmin',{{ end }}
|
||||||
'managed-by-attribute-Projectmanagement', 'managed-by-attribute-ProjectmanagementAdmin',
|
{{ if .Values.apps.openproject.enabled }}'managed-by-attribute-Projectmanagement', 'managed-by-attribute-ProjectmanagementAdmin',{{ end }}
|
||||||
'managed-by-attribute-Videoconference',
|
{{ if .Values.apps.jitsi.enabled }}'managed-by-attribute-Videoconference',{{ end }}
|
||||||
'managed-by-attribute-Groupware',
|
{{ if .Values.apps.oxAppSuite.enabled }}'managed-by-attribute-Groupware',{{ end }}
|
||||||
'managed-by-attribute-Notes' ]
|
{{ if .Values.apps.notes.enabled }}'managed-by-attribute-Notes',{{ end }}
|
||||||
|
]
|
||||||
|
|
||||||
opendesk:
|
opendesk:
|
||||||
# We use client specific scopes as we bind them to Keycloak role membership which itself is linked
|
# We use client specific scopes as we bind them to Keycloak role membership which itself is linked
|
||||||
@@ -105,6 +116,7 @@ config:
|
|||||||
protocol: "openid-connect"
|
protocol: "openid-connect"
|
||||||
- name: "write_contacts"
|
- name: "write_contacts"
|
||||||
protocol: "openid-connect"
|
protocol: "openid-connect"
|
||||||
|
{{ if .Values.apps.openproject.enabled }}
|
||||||
- name: "opendesk-openproject-scope"
|
- name: "opendesk-openproject-scope"
|
||||||
description: "Scope for the claims required by openDesk's OpenProject instance."
|
description: "Scope for the claims required by openDesk's OpenProject instance."
|
||||||
protocol: "openid-connect"
|
protocol: "openid-connect"
|
||||||
@@ -178,6 +190,8 @@ config:
|
|||||||
access.token.claim: true
|
access.token.claim: true
|
||||||
claim.name: "family_name"
|
claim.name: "family_name"
|
||||||
jsonType.label: "String"
|
jsonType.label: "String"
|
||||||
|
{{ end }}
|
||||||
|
{{ if .Values.apps.jitsi.enabled }}
|
||||||
- name: "opendesk-jitsi-scope"
|
- name: "opendesk-jitsi-scope"
|
||||||
description: "Scope for the claims required by openDesk's Jitsi instance."
|
description: "Scope for the claims required by openDesk's Jitsi instance."
|
||||||
protocol: "openid-connect"
|
protocol: "openid-connect"
|
||||||
@@ -225,6 +239,8 @@ config:
|
|||||||
access.token.claim: true
|
access.token.claim: true
|
||||||
claim.name: "email"
|
claim.name: "email"
|
||||||
jsonType.label: "String"
|
jsonType.label: "String"
|
||||||
|
{{ end }}
|
||||||
|
{{ if .Values.apps.nextcloud.enabled }}
|
||||||
- name: "opendesk-nextcloud-scope"
|
- name: "opendesk-nextcloud-scope"
|
||||||
description: "Scope for the claims required by openDesk's Nextcloud instance."
|
description: "Scope for the claims required by openDesk's Nextcloud instance."
|
||||||
protocol: "openid-connect"
|
protocol: "openid-connect"
|
||||||
@@ -274,6 +290,8 @@ config:
|
|||||||
access.token.claim: true
|
access.token.claim: true
|
||||||
claim.name: "context"
|
claim.name: "context"
|
||||||
jsonType.label: "String"
|
jsonType.label: "String"
|
||||||
|
{{ end }}
|
||||||
|
{{ if .Values.apps.element.enabled }}
|
||||||
- name: "opendesk-matrix-scope"
|
- name: "opendesk-matrix-scope"
|
||||||
description: "Scope for the claims required by openDesk's Matrix instance."
|
description: "Scope for the claims required by openDesk's Matrix instance."
|
||||||
protocol: "openid-connect"
|
protocol: "openid-connect"
|
||||||
@@ -321,6 +339,8 @@ config:
|
|||||||
access.token.claim: true
|
access.token.claim: true
|
||||||
claim.name: "email"
|
claim.name: "email"
|
||||||
jsonType.label: "String"
|
jsonType.label: "String"
|
||||||
|
{{ end }}
|
||||||
|
{{ if .Values.apps.xwiki.enabled }}
|
||||||
- name: "opendesk-xwiki-scope"
|
- name: "opendesk-xwiki-scope"
|
||||||
description: "Scope for the claims required by openDesk's XWiki instance."
|
description: "Scope for the claims required by openDesk's XWiki instance."
|
||||||
protocol: "openid-connect"
|
protocol: "openid-connect"
|
||||||
@@ -368,6 +388,8 @@ config:
|
|||||||
access.token.claim: true
|
access.token.claim: true
|
||||||
claim.name: "email"
|
claim.name: "email"
|
||||||
jsonType.label: "String"
|
jsonType.label: "String"
|
||||||
|
{{ end }}
|
||||||
|
{{ if .Values.apps.oxAppSuite.enabled }}
|
||||||
- name: "opendesk-dovecot-scope"
|
- name: "opendesk-dovecot-scope"
|
||||||
description: "Scope for the claims required by openDesk's Dovecot instance."
|
description: "Scope for the claims required by openDesk's Dovecot instance."
|
||||||
protocol: "openid-connect"
|
protocol: "openid-connect"
|
||||||
@@ -431,7 +453,8 @@ config:
|
|||||||
access.token.claim: true
|
access.token.claim: true
|
||||||
claim.name: "opendesk_username"
|
claim.name: "opendesk_username"
|
||||||
jsonType.label: "String"
|
jsonType.label: "String"
|
||||||
{{ if .Values.notes.enabled }}
|
{{ end }}
|
||||||
|
{{ if .Values.apps.notes.enabled }}
|
||||||
- name: "opendesk-notes-scope"
|
- name: "opendesk-notes-scope"
|
||||||
description: "Scope for the claims required by openDesk's Notes instance."
|
description: "Scope for the claims required by openDesk's Notes instance."
|
||||||
protocol: "openid-connect"
|
protocol: "openid-connect"
|
||||||
@@ -522,7 +545,7 @@ config:
|
|||||||
jsonType.label: "String"
|
jsonType.label: "String"
|
||||||
defaultClientScopes:
|
defaultClientScopes:
|
||||||
- "offline_access"
|
- "offline_access"
|
||||||
{{ if .Values.notes.enabled }}
|
{{ if .Values.apps.notes.enabled }}
|
||||||
- name: "opendesk-notes"
|
- name: "opendesk-notes"
|
||||||
clientId: "opendesk-notes"
|
clientId: "opendesk-notes"
|
||||||
protocol: "openid-connect"
|
protocol: "openid-connect"
|
||||||
@@ -561,6 +584,7 @@ config:
|
|||||||
defaultClientScopes:
|
defaultClientScopes:
|
||||||
- "opendesk-notes-scope"
|
- "opendesk-notes-scope"
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
{{ if .Values.apps.oxAppSuite.enabled }}
|
||||||
- name: "opendesk-dovecot"
|
- name: "opendesk-dovecot"
|
||||||
clientId: "opendesk-dovecot"
|
clientId: "opendesk-dovecot"
|
||||||
protocol: "openid-connect"
|
protocol: "openid-connect"
|
||||||
@@ -574,6 +598,28 @@ config:
|
|||||||
backchannel.logout.session.required: false
|
backchannel.logout.session.required: false
|
||||||
defaultClientScopes:
|
defaultClientScopes:
|
||||||
- "opendesk-dovecot-scope"
|
- "opendesk-dovecot-scope"
|
||||||
|
- name: "opendesk-oxappsuite"
|
||||||
|
clientId: "opendesk-oxappsuite"
|
||||||
|
protocol: "openid-connect"
|
||||||
|
clientAuthenticatorType: "client-secret"
|
||||||
|
secret: {{ .Values.secrets.keycloak.clientSecret.as8oidc | quote }}
|
||||||
|
redirectUris:
|
||||||
|
- "https://{{ .Values.global.hosts.openxchange }}.{{ .Values.global.domain }}/*"
|
||||||
|
- "https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/*"
|
||||||
|
consentRequired: false
|
||||||
|
frontchannelLogout: false
|
||||||
|
publicClient: false
|
||||||
|
authorizationServicesEnabled: false
|
||||||
|
attributes:
|
||||||
|
backchannel.logout.session.required: true
|
||||||
|
backchannel.logout.url: "https://{{ .Values.global.hosts.openxchange }}.{{ .Values.global.domain }}/ajax/oidc/backchannel_logout"
|
||||||
|
post.logout.redirect.uris: "https://{{ .Values.global.hosts.openxchange }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/*"
|
||||||
|
defaultClientScopes:
|
||||||
|
- "opendesk-oxappsuite-scope"
|
||||||
|
- "read_contacts"
|
||||||
|
- "write_contacts"
|
||||||
|
{{ end }}
|
||||||
|
{{ if .Values.apps.jitsi.enabled }}
|
||||||
- name: "opendesk-jitsi"
|
- name: "opendesk-jitsi"
|
||||||
clientId: "opendesk-jitsi"
|
clientId: "opendesk-jitsi"
|
||||||
protocol: "openid-connect"
|
protocol: "openid-connect"
|
||||||
@@ -587,6 +633,8 @@ config:
|
|||||||
authorizationServicesEnabled: false
|
authorizationServicesEnabled: false
|
||||||
defaultClientScopes:
|
defaultClientScopes:
|
||||||
- "opendesk-jitsi-scope"
|
- "opendesk-jitsi-scope"
|
||||||
|
{{ end }}
|
||||||
|
{{ if .Values.apps.element.enabled }}
|
||||||
- name: "opendesk-matrix"
|
- name: "opendesk-matrix"
|
||||||
clientId: "opendesk-matrix"
|
clientId: "opendesk-matrix"
|
||||||
protocol: "openid-connect"
|
protocol: "openid-connect"
|
||||||
@@ -609,6 +657,8 @@ config:
|
|||||||
post.logout.redirect.uris: "https://{{ .Values.global.hosts.element }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.synapse }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/*"
|
post.logout.redirect.uris: "https://{{ .Values.global.hosts.element }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.synapse }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/*"
|
||||||
defaultClientScopes:
|
defaultClientScopes:
|
||||||
- "opendesk-matrix-scope"
|
- "opendesk-matrix-scope"
|
||||||
|
{{ end }}
|
||||||
|
{{ if .Values.apps.nextcloud.enabled }}
|
||||||
- name: "opendesk-nextcloud"
|
- name: "opendesk-nextcloud"
|
||||||
clientId: "opendesk-nextcloud"
|
clientId: "opendesk-nextcloud"
|
||||||
protocol: "openid-connect"
|
protocol: "openid-connect"
|
||||||
@@ -629,6 +679,8 @@ config:
|
|||||||
- "opendesk-nextcloud-scope"
|
- "opendesk-nextcloud-scope"
|
||||||
- "read_contacts"
|
- "read_contacts"
|
||||||
- "write_contacts"
|
- "write_contacts"
|
||||||
|
{{ end }}
|
||||||
|
{{ if .Values.apps.openproject.enabled }}
|
||||||
- name: "opendesk-openproject"
|
- name: "opendesk-openproject"
|
||||||
clientId: "opendesk-openproject"
|
clientId: "opendesk-openproject"
|
||||||
protocol: "openid-connect"
|
protocol: "openid-connect"
|
||||||
@@ -648,26 +700,8 @@ config:
|
|||||||
post.logout.redirect.uris: "https://{{ .Values.global.hosts.openproject }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/*"
|
post.logout.redirect.uris: "https://{{ .Values.global.hosts.openproject }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/*"
|
||||||
defaultClientScopes:
|
defaultClientScopes:
|
||||||
- "opendesk-openproject-scope"
|
- "opendesk-openproject-scope"
|
||||||
- name: "opendesk-oxappsuite"
|
{{ end }}
|
||||||
clientId: "opendesk-oxappsuite"
|
{{ if .Values.apps.xwiki.enabled }}
|
||||||
protocol: "openid-connect"
|
|
||||||
clientAuthenticatorType: "client-secret"
|
|
||||||
secret: {{ .Values.secrets.keycloak.clientSecret.as8oidc | quote }}
|
|
||||||
redirectUris:
|
|
||||||
- "https://{{ .Values.global.hosts.openxchange }}.{{ .Values.global.domain }}/*"
|
|
||||||
- "https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/*"
|
|
||||||
consentRequired: false
|
|
||||||
frontchannelLogout: false
|
|
||||||
publicClient: false
|
|
||||||
authorizationServicesEnabled: false
|
|
||||||
attributes:
|
|
||||||
backchannel.logout.session.required: true
|
|
||||||
backchannel.logout.url: "https://{{ .Values.global.hosts.openxchange }}.{{ .Values.global.domain }}/ajax/oidc/backchannel_logout"
|
|
||||||
post.logout.redirect.uris: "https://{{ .Values.global.hosts.openxchange }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/*"
|
|
||||||
defaultClientScopes:
|
|
||||||
- "opendesk-oxappsuite-scope"
|
|
||||||
- "read_contacts"
|
|
||||||
- "write_contacts"
|
|
||||||
- name: "opendesk-xwiki"
|
- name: "opendesk-xwiki"
|
||||||
clientId: "opendesk-xwiki"
|
clientId: "opendesk-xwiki"
|
||||||
protocol: "openid-connect"
|
protocol: "openid-connect"
|
||||||
@@ -686,6 +720,7 @@ config:
|
|||||||
post.logout.redirect.uris: "https://{{ .Values.global.hosts.xwiki }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/*"
|
post.logout.redirect.uris: "https://{{ .Values.global.hosts.xwiki }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/*"
|
||||||
defaultClientScopes:
|
defaultClientScopes:
|
||||||
- "opendesk-xwiki-scope"
|
- "opendesk-xwiki-scope"
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
containerSecurityContext:
|
containerSecurityContext:
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
# SPDX-FileCopyrightText: 2024-2025 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
---
|
---
|
||||||
repositories:
|
repositories:
|
||||||
@@ -7,19 +7,31 @@ repositories:
|
|||||||
- name: "dovecot-repo"
|
- name: "dovecot-repo"
|
||||||
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
||||||
verify: {{ .Values.charts.dovecot.verify }}
|
verify: {{ .Values.charts.dovecot.verify }}
|
||||||
|
oci: true
|
||||||
|
{{- if eq (env "OPENDESK_ENTERPRISE") "true" }}
|
||||||
|
username: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
|
password: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDeEnterprise .Values.global.helmRegistry | default .Values.charts.dovecot.registry }}/{{ .Values.charts.dovecot.repository }}"
|
||||||
|
{{- else }}
|
||||||
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
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.dovecot.registry }}/{{ .Values.charts.dovecot.repository }}"
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.dovecot.registry }}/{{ .Values.charts.dovecot.repository }}"
|
{{- end }}
|
||||||
|
|
||||||
# Open-Xchange
|
# Open-Xchange
|
||||||
- name: "open-xchange-repo"
|
- name: "open-xchange-repo"
|
||||||
keyring: "../../files/gpg-pubkeys/open-xchange-com.gpg"
|
keyring: "../../files/gpg-pubkeys/open-xchange-com.gpg"
|
||||||
verify: {{ .Values.charts.oxAppSuite.verify }}
|
verify: {{ .Values.charts.oxAppSuite.verify }}
|
||||||
|
oci: true
|
||||||
|
{{- if eq (env "OPENDESK_ENTERPRISE") "true" }}
|
||||||
|
username: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
|
password: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDeEnterprise .Values.global.helmRegistry | default .Values.charts.oxAppSuite.registry }}/{{ .Values.charts.oxAppSuite.repository }}"
|
||||||
|
{{- else }}
|
||||||
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
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.oxAppSuite.registry }}/{{ .Values.charts.oxAppSuite.repository }}"
|
||||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.oxAppSuite.registry }}/{{ .Values.charts.oxAppSuite.repository }}"
|
{{- end }}
|
||||||
|
|
||||||
# openDesk Open-Xchange Bootstrap
|
# openDesk Open-Xchange Bootstrap
|
||||||
# Source:
|
# Source:
|
||||||
@@ -30,14 +42,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.oxAppSuiteBootstrap.registry }}/{{ .Values.charts.oxAppSuiteBootstrap.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.oxAppSuiteBootstrap.registry }}/{{ .Values.charts.oxAppSuiteBootstrap.repository }}"
|
||||||
|
|
||||||
# OX Connector
|
# OX Connector
|
||||||
- name: "ox-connector-repo"
|
- name: "ox-connector-repo"
|
||||||
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.oxConnector.registry }}/{{ .Values.charts.oxConnector.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.oxConnector.registry }}/{{ .Values.charts.oxConnector.repository }}"
|
||||||
|
|
||||||
releases:
|
releases:
|
||||||
- name: "dovecot"
|
- name: "dovecot"
|
||||||
@@ -45,10 +57,13 @@ releases:
|
|||||||
version: "{{ .Values.charts.dovecot.version }}"
|
version: "{{ .Values.charts.dovecot.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-dovecot.yaml.gotmpl"
|
- "values-dovecot.yaml.gotmpl"
|
||||||
|
{{- if eq (env "OPENDESK_ENTERPRISE") "true" }}
|
||||||
|
- "values-dovecot-enterprise.yaml.gotmpl"
|
||||||
|
{{- end }}
|
||||||
{{- range .Values.customization.release.dovecot }}
|
{{- range .Values.customization.release.dovecot }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.dovecot.enabled }}
|
installed: {{ .Values.apps.dovecot.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
- name: "open-xchange"
|
- name: "open-xchange"
|
||||||
@@ -57,13 +72,13 @@ releases:
|
|||||||
values:
|
values:
|
||||||
- "values-openxchange.yaml.gotmpl"
|
- "values-openxchange.yaml.gotmpl"
|
||||||
- "values-openxchange-contact-picker.yaml.gotmpl"
|
- "values-openxchange-contact-picker.yaml.gotmpl"
|
||||||
{{- if (env "OPENDESK_ENTERPRISE") }}
|
{{- if eq (env "OPENDESK_ENTERPRISE") "true" }}
|
||||||
- "values-openxchange-enterprise.yaml.gotmpl"
|
- "values-openxchange-enterprise.yaml.gotmpl"
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- range .Values.customization.release.openxchange }}
|
{{- range .Values.customization.release.openxchange }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.oxAppSuite.enabled }}
|
installed: {{ .Values.apps.oxAppSuite.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
- name: "opendesk-open-xchange-bootstrap"
|
- name: "opendesk-open-xchange-bootstrap"
|
||||||
@@ -74,7 +89,7 @@ releases:
|
|||||||
{{- range .Values.customization.release.opendeskOpenxchangeBootstrap }}
|
{{- range .Values.customization.release.opendeskOpenxchangeBootstrap }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.oxAppSuite.enabled }}
|
installed: {{ .Values.apps.oxAppSuite.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
- name: "ox-connector"
|
- name: "ox-connector"
|
||||||
@@ -85,7 +100,7 @@ releases:
|
|||||||
{{- range .Values.customization.release.oxConnector }}
|
{{- range .Values.customization.release.oxConnector }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.oxAppSuite.enabled }}
|
installed: {{ .Values.apps.oxAppSuite.enabled }}
|
||||||
needs:
|
needs:
|
||||||
- "open-xchange"
|
- "open-xchange"
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,45 @@
|
|||||||
|
{{/*
|
||||||
|
SPDX-FileCopyrightText: 2025 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
|
---
|
||||||
|
image:
|
||||||
|
registry: {{ coalesce .Values.repositories.image.registryOpencodeDeEnterprise .Values.global.imageRegistry .Values.images.dovecot.registry | quote }}
|
||||||
|
repository: {{ .Values.images.dovecot.repository | quote }}
|
||||||
|
tag: {{ .Values.images.dovecot.tag | quote }}
|
||||||
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
|
imageInitCassandra:
|
||||||
|
registry: {{ coalesce .Values.repositories.image.dockerHub .Values.global.imageRegistry .Values.images.cassandra.registry | quote }}
|
||||||
|
repository: {{ .Values.images.cassandra.repository | quote }}
|
||||||
|
tag: {{ .Values.images.cassandra.tag | quote }}
|
||||||
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
|
imagePullSecrets:
|
||||||
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 2 }}
|
||||||
|
|
||||||
|
dovecot:
|
||||||
|
dictmap:
|
||||||
|
enabled: true
|
||||||
|
host: {{ .Values.databases.dovecotDictmap.host | quote }}
|
||||||
|
port: {{ .Values.databases.dovecotDictmap.port }}
|
||||||
|
username: {{ .Values.databases.dovecotDictmap.username | quote }}
|
||||||
|
password: {{ .Values.secrets.cassandra.dovecotDictmapUser | quote }}
|
||||||
|
keyspace: {{ .Values.databases.dovecotDictmap.name | quote }}
|
||||||
|
sharedMailboxes:
|
||||||
|
enabled: false
|
||||||
|
host: {{ .Values.databases.dovecotACL.host | quote }}
|
||||||
|
port: {{ .Values.databases.dovecotACL.port }}
|
||||||
|
username: {{ .Values.databases.dovecotACL.username | quote }}
|
||||||
|
password: {{ .Values.secrets.cassandra.dovecotACLUser | quote }}
|
||||||
|
keyspace: {{ .Values.databases.dovecotACL.name | quote }}
|
||||||
|
objectStorage:
|
||||||
|
encryption:
|
||||||
|
privateKey:
|
||||||
|
value: {{ env "DOVECOT_CRYPT_PRIVATE_KEY" | quote }}
|
||||||
|
publicKey:
|
||||||
|
value: {{ env "DOVECOT_CRYPT_PUBLIC_KEY" | quote }}
|
||||||
|
fqdn: {{ .Values.objectstores.dovecot.endpoint | default (printf "%s.%s" .Values.global.hosts.minioApi .Values.global.domain) | quote }}
|
||||||
|
username: {{ .Values.objectstores.dovecot.username | quote }}
|
||||||
|
password: {{ .Values.secrets.minio.dovecotUser | quote }}
|
||||||
|
...
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
{{/*
|
{{/*
|
||||||
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
SPDX-FileCopyrightText: 2024-2025 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
|
||||||
*/}}
|
*/}}
|
||||||
@@ -23,8 +23,8 @@ dovecot:
|
|||||||
enabled: true
|
enabled: true
|
||||||
host: {{ .Values.ldap.host | quote }}
|
host: {{ .Values.ldap.host | quote }}
|
||||||
port: 389
|
port: 389
|
||||||
base: "dc=swp-ldap,dc=internal"
|
base: "{{ .Values.ldap.baseDn }}"
|
||||||
dn: "uid=ldapsearch_dovecot,cn=users,dc=swp-ldap,dc=internal"
|
dn: "uid=ldapsearch_dovecot,cn=users,{{ .Values.ldap.baseDn }}"
|
||||||
password: {{ .Values.secrets.nubus.ldapSearch.dovecot | quote }}
|
password: {{ .Values.secrets.nubus.ldapSearch.dovecot | quote }}
|
||||||
oidc:
|
oidc:
|
||||||
enabled: true
|
enabled: true
|
||||||
@@ -34,11 +34,10 @@ dovecot:
|
|||||||
introspectionPath: "/realms/{{ .Values.platform.realm }}/protocol/openid-connect/token/introspect"
|
introspectionPath: "/realms/{{ .Values.platform.realm }}/protocol/openid-connect/token/introspect"
|
||||||
usernameAttribute: "opendesk_username"
|
usernameAttribute: "opendesk_username"
|
||||||
loginTrustedNetworks: {{ join " " .Values.cluster.networking.cidr | quote }}
|
loginTrustedNetworks: {{ join " " .Values.cluster.networking.cidr | quote }}
|
||||||
|
|
||||||
submission:
|
submission:
|
||||||
enabled: true
|
enabled: true
|
||||||
ssl: "no"
|
ssl: "no"
|
||||||
host: "{{ printf "%s.%s.svc.%s" "postfix" (.Values.postfix.namespace | default .Release.Namespace) .Values.cluster.networking.domain }}:25"
|
host: "{{ printf "%s.%s.svc.%s" "postfix" (.Values.apps.postfix.namespace | default .Release.Namespace) .Values.cluster.networking.domain }}:25"
|
||||||
|
|
||||||
certificate:
|
certificate:
|
||||||
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
secretName: {{ .Values.ingress.tls.secretName | quote }}
|
||||||
@@ -105,10 +104,10 @@ persistence:
|
|||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.dovecot | toYaml | nindent 2 }}
|
{{ .Values.resources.dovecot | toYaml | nindent 2 }}
|
||||||
|
|
||||||
{{- if or (eq .Values.cluster.service.type "NodePort") (eq .Values.cluster.service.type "LoadBalancer") }}
|
{{- if or (eq (coalesce .Values.service.type.dovecot .Values.cluster.service.type) "NodePort") (eq (coalesce .Values.service.type.dovecot .Values.cluster.service.type) "LoadBalancer") }}
|
||||||
service:
|
service:
|
||||||
external:
|
external:
|
||||||
enabled: true
|
enabled: true
|
||||||
type: {{ .Values.cluster.service.type | quote }}
|
type: {{ coalesce .Values.service.type.dovecot .Values.cluster.service.type | quote }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
...
|
...
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ appsuite:
|
|||||||
auth:
|
auth:
|
||||||
type: "adminDN"
|
type: "adminDN"
|
||||||
adminDN:
|
adminDN:
|
||||||
dn: "uid=ldapsearch_ox,cn=users,dc=swp-ldap,dc=internal"
|
dn: "uid=ldapsearch_ox,cn=users,{{ .Values.ldap.baseDn }}"
|
||||||
password: {{ .Values.secrets.nubus.ldapSearch.ox | quote }}
|
password: {{ .Values.secrets.nubus.ldapSearch.ox | quote }}
|
||||||
|
|
||||||
uiSettings:
|
uiSettings:
|
||||||
|
|||||||
@@ -13,10 +13,14 @@ global:
|
|||||||
mysql:
|
mysql:
|
||||||
host: {{ .Values.databases.oxAppSuite.host | quote }}
|
host: {{ .Values.databases.oxAppSuite.host | quote }}
|
||||||
database: {{ .Values.databases.oxAppSuite.name | quote }}
|
database: {{ .Values.databases.oxAppSuite.name | quote }}
|
||||||
|
readHost: {{ .Values.databases.oxAppSuite.readHost | quote }}
|
||||||
|
readDatabase: {{ .Values.databases.oxAppSuite.name | quote }}
|
||||||
auth:
|
auth:
|
||||||
user: {{ .Values.databases.oxAppSuite.username | quote }}
|
user: {{ .Values.databases.oxAppSuite.username | quote }}
|
||||||
password: {{ .Values.databases.oxAppSuite.password | default .Values.secrets.mariadb.rootPassword | quote }}
|
password: {{ .Values.databases.oxAppSuite.password | default .Values.secrets.mariadb.rootPassword | quote }}
|
||||||
rootPassword: {{ .Values.databases.oxAppSuite.password | default .Values.secrets.mariadb.rootPassword | quote }}
|
rootPassword: {{ .Values.databases.oxAppSuite.password | default .Values.secrets.mariadb.rootPassword | quote }}
|
||||||
|
readUser: {{ .Values.databases.oxAppSuite.readUser | default .Values.databases.oxAppSuite.username | quote }}
|
||||||
|
readPassword: {{ .Values.databases.oxAppSuite.readPassword | default .Values.databases.oxAppSuite.password | quote}}
|
||||||
|
|
||||||
nextcloud-integration-ui:
|
nextcloud-integration-ui:
|
||||||
image:
|
image:
|
||||||
@@ -276,7 +280,7 @@ appsuite:
|
|||||||
com.openexchange.conference.element.enabled: "true"
|
com.openexchange.conference.element.enabled: "true"
|
||||||
com.openexchange.conference.element.meetingHostUrl: http://matrix-neodatefix-bot
|
com.openexchange.conference.element.meetingHostUrl: http://matrix-neodatefix-bot
|
||||||
com.openexchange.conference.element.matrixLoginUrl: http://opendesk-synapse-web:8008/_matrix/client/v3/login
|
com.openexchange.conference.element.matrixLoginUrl: http://opendesk-synapse-web:8008/_matrix/client/v3/login
|
||||||
com.openexchange.conference.element.matrixUuidClaimName: opendesk_useruuid
|
com.openexchange.conference.element.matrixUuidClaimName: {{ if .Values.functional.chat.matrix.profile.useImmutableIdentifierForLocalpart }}"opendesk_useruuid"{{ else }}"opendesk_username"{{ end }}
|
||||||
# GDPR
|
# GDPR
|
||||||
com.openexchange.gdpr.dataexport.enabled: "false"
|
com.openexchange.gdpr.dataexport.enabled: "false"
|
||||||
com.openexchange.gdpr.dataexport.active: "false"
|
com.openexchange.gdpr.dataexport.active: "false"
|
||||||
@@ -330,8 +334,8 @@ appsuite:
|
|||||||
/opt/open-xchange/etc/system.properties:
|
/opt/open-xchange/etc/system.properties:
|
||||||
SERVER_NAME: "oxserver"
|
SERVER_NAME: "oxserver"
|
||||||
/opt/open-xchange/etc/ldapauth.properties:
|
/opt/open-xchange/etc/ldapauth.properties:
|
||||||
java.naming.provider.url: "ldap://{{ .Values.ldap.host }}:389/dc=swp-ldap,dc=internal"
|
java.naming.provider.url: "ldap://{{ .Values.ldap.host }}:389/{{ .Values.ldap.baseDn }}"
|
||||||
bindDN: "uid=ldapsearch_ox,cn=users,dc=swp-ldap,dc=internal"
|
bindDN: "uid=ldapsearch_ox,cn=users,{{ .Values.ldap.baseDn }}"
|
||||||
bindDNPassword: {{ .Values.secrets.nubus.ldapSearch.ox | quote }}
|
bindDNPassword: {{ .Values.secrets.nubus.ldapSearch.ox | quote }}
|
||||||
bindOnly: "false"
|
bindOnly: "false"
|
||||||
/opt/open-xchange/etc/antivirus.properties:
|
/opt/open-xchange/etc/antivirus.properties:
|
||||||
@@ -340,9 +344,9 @@ appsuite:
|
|||||||
com.openexchange.antivirus.server: {{ .Values.antivirus.icap.host | quote }}
|
com.openexchange.antivirus.server: {{ .Values.antivirus.icap.host | quote }}
|
||||||
com.openexchange.antivirus.port: {{ .Values.antivirus.icap.port | quote }}
|
com.openexchange.antivirus.port: {{ .Values.antivirus.icap.port | quote }}
|
||||||
{{- else }}
|
{{- else }}
|
||||||
{{- if .Values.clamavDistributed.enabled }}
|
{{- if .Values.apps.clamavDistributed.enabled }}
|
||||||
com.openexchange.antivirus.server: "clamav-icap"
|
com.openexchange.antivirus.server: "clamav-icap"
|
||||||
{{- else if .Values.clamavSimple.enabled }}
|
{{- else if .Values.apps.clamavSimple.enabled }}
|
||||||
com.openexchange.antivirus.server: "clamav-simple"
|
com.openexchange.antivirus.server: "clamav-simple"
|
||||||
{{- end }}
|
{{- end }}
|
||||||
com.openexchange.antivirus.port: "1344"
|
com.openexchange.antivirus.port: "1344"
|
||||||
|
|||||||
@@ -73,29 +73,21 @@ podAnnotations: {}
|
|||||||
|
|
||||||
replicaCount: {{ .Values.replicas.oxConnector }}
|
replicaCount: {{ .Values.replicas.oxConnector }}
|
||||||
|
|
||||||
|
podSecurityContext:
|
||||||
|
fsGroup: 1000
|
||||||
|
|
||||||
securityContext:
|
securityContext:
|
||||||
|
privileged: false
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
capabilities:
|
capabilities:
|
||||||
drop:
|
drop:
|
||||||
- "ALL"
|
- "ALL"
|
||||||
add:
|
readOnlyRootFilesystem: true
|
||||||
- "CHOWN"
|
runAsNonRoot: true
|
||||||
- "DAC_OVERRIDE"
|
runAsUser: 1000
|
||||||
- "FOWNER"
|
runAsGroup: 1000
|
||||||
- "FSETID"
|
|
||||||
- "KILL"
|
|
||||||
- "SETGID"
|
|
||||||
- "SETUID"
|
|
||||||
- "SETPCAP"
|
|
||||||
- "NET_BIND_SERVICE"
|
|
||||||
- "SYS_CHROOT"
|
|
||||||
privileged: false
|
|
||||||
seccompProfile:
|
seccompProfile:
|
||||||
type: "RuntimeDefault"
|
type: "RuntimeDefault"
|
||||||
runAsUser: 0
|
|
||||||
runAsGroup: 0
|
|
||||||
runAsNonRoot: false
|
|
||||||
readOnlyRootFilesystem: false
|
|
||||||
seLinuxOptions:
|
seLinuxOptions:
|
||||||
{{ .Values.seLinuxOptions.oxConnector | toYaml | nindent 4 }}
|
{{ .Values.seLinuxOptions.oxConnector | toYaml | nindent 4 }}
|
||||||
|
|
||||||
|
|||||||
@@ -4,17 +4,17 @@
|
|||||||
repositories:
|
repositories:
|
||||||
# openDesk Migrations
|
# openDesk Migrations
|
||||||
# Source:
|
# Source:
|
||||||
- name: "openproject-migrations-repo"
|
- name: "opendesk-migrations-repo"
|
||||||
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
||||||
verify: {{ .Values.charts.migrations.verify }}
|
verify: {{ .Values.charts.migrations.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.migrations.registry }}/{{ .Values.charts.migrations.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.migrations.registry }}/{{ .Values.charts.migrations.repository }}"
|
||||||
|
|
||||||
releases:
|
releases:
|
||||||
- name: "opendesk-migrations-post"
|
- name: "opendesk-migrations-post"
|
||||||
chart: "openproject-migrations-repo/{{ .Values.charts.migrations.name }}"
|
chart: "opendesk-migrations-repo/{{ .Values.charts.migrations.name }}"
|
||||||
version: "{{ .Values.charts.migrations.version }}"
|
version: "{{ .Values.charts.migrations.version }}"
|
||||||
wait: true
|
wait: true
|
||||||
waitForJobs: true
|
waitForJobs: true
|
||||||
@@ -24,7 +24,7 @@ releases:
|
|||||||
{{- range .Values.customization.release.migrationsPost }}
|
{{- range .Values.customization.release.migrationsPost }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.migrations.enabled }}
|
installed: {{ .Values.apps.migrations.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
commonLabels:
|
commonLabels:
|
||||||
|
|||||||
@@ -10,7 +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 }}/{{ .Values.charts.migrations.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.migrations.registry }}/{{ .Values.charts.migrations.repository }}"
|
||||||
|
|
||||||
releases:
|
releases:
|
||||||
- name: "opendesk-migrations-pre"
|
- name: "opendesk-migrations-pre"
|
||||||
@@ -24,7 +24,7 @@ releases:
|
|||||||
{{- range .Values.customization.release.migrationsPre }}
|
{{- range .Values.customization.release.migrationsPre }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.migrations.enabled }}
|
installed: {{ .Values.apps.migrations.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
commonLabels:
|
commonLabels:
|
||||||
|
|||||||
@@ -10,7 +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 }}/{{ .Values.charts.openprojectBootstrap.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.openprojectBootstrap.registry }}/{{ .Values.charts.openprojectBootstrap.repository }}"
|
||||||
|
|
||||||
releases:
|
releases:
|
||||||
- name: "opendesk-openproject-bootstrap"
|
- name: "opendesk-openproject-bootstrap"
|
||||||
@@ -23,7 +23,7 @@ releases:
|
|||||||
{{- range .Values.customization.release.opendeskOpenprojectBootstrap }}
|
{{- range .Values.customization.release.opendeskOpenprojectBootstrap }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.openproject.enabled }}
|
installed: {{ .Values.apps.openproject.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
commonLabels:
|
commonLabels:
|
||||||
|
|||||||
@@ -10,7 +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 }}/{{ .Values.charts.otterize.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.otterize.registry }}/{{ .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
|
||||||
@@ -20,7 +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 }}/{{ .Values.charts.home.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.home.registry }}/{{ .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
|
||||||
@@ -30,7 +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 }}/{{ .Values.charts.certificates.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.certificates.registry }}/{{ .Values.charts.certificates.repository }}"
|
||||||
|
|
||||||
# openDesk Alerts
|
# openDesk Alerts
|
||||||
# https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-alerts
|
# https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-alerts
|
||||||
@@ -40,7 +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.opendeskAlerts.registry }}/{{ .Values.charts.opendeskAlerts.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.opendeskAlerts.registry }}/{{ .Values.charts.opendeskAlerts.repository }}"
|
||||||
|
|
||||||
# openDesk Grafana Dashboards
|
# openDesk Grafana Dashboards
|
||||||
# https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-dashboards
|
# https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-dashboards
|
||||||
@@ -50,7 +50,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.opendeskDashboards.registry }}/{{ .Values.charts.opendeskDashboards.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.opendeskDashboards.registry }}/{{ .Values.charts.opendeskDashboards.repository }}"
|
||||||
|
|
||||||
# openDesk Static Files
|
# openDesk Static Files
|
||||||
# https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-static-files
|
# https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-static-files
|
||||||
@@ -60,7 +60,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.opendeskStaticFiles.registry }}/{{ .Values.charts.opendeskStaticFiles.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.opendeskStaticFiles.registry }}/{{ .Values.charts.opendeskStaticFiles.repository }}"
|
||||||
|
|
||||||
releases:
|
releases:
|
||||||
- name: "opendesk-otterize"
|
- name: "opendesk-otterize"
|
||||||
@@ -82,7 +82,7 @@ releases:
|
|||||||
{{- range .Values.customization.release.opendeskHome }}
|
{{- range .Values.customization.release.opendeskHome }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.home.enabled }}
|
installed: {{ .Values.apps.home.enabled }}
|
||||||
|
|
||||||
- name: "opendesk-certificates"
|
- name: "opendesk-certificates"
|
||||||
chart: "certificates-repo/{{ .Values.charts.certificates.name }}"
|
chart: "certificates-repo/{{ .Values.charts.certificates.name }}"
|
||||||
@@ -92,7 +92,7 @@ releases:
|
|||||||
{{- range .Values.customization.release.opendeskCertificates }}
|
{{- range .Values.customization.release.opendeskCertificates }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.certificates.enabled }}
|
installed: {{ .Values.apps.certificates.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
- name: "opendesk-alerts"
|
- name: "opendesk-alerts"
|
||||||
@@ -125,7 +125,7 @@ releases:
|
|||||||
{{- range .Values.customization.release.opendeskStaticFiles }}
|
{{- range .Values.customization.release.opendeskStaticFiles }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.staticFiles.enabled }}
|
installed: {{ .Values.apps.staticFiles.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
commonLabels:
|
commonLabels:
|
||||||
|
|||||||
@@ -7,13 +7,13 @@ SPDX-License-Identifier: Apache-2.0
|
|||||||
global:
|
global:
|
||||||
domain: {{ .Values.global.domain | quote }}
|
domain: {{ .Values.global.domain | quote }}
|
||||||
hosts:
|
hosts:
|
||||||
{{- if .Values.collabora.enabled }}
|
{{- if .Values.apps.collabora.enabled }}
|
||||||
collabora: {{ .Values.global.hosts.collabora }}
|
collabora: {{ .Values.global.hosts.collabora }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.cryptpad.enabled }}
|
{{- if .Values.apps.cryptpad.enabled }}
|
||||||
cryptpad: {{ .Values.global.hosts.cryptpad }}
|
cryptpad: {{ .Values.global.hosts.cryptpad }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.element.enabled }}
|
{{- if .Values.apps.element.enabled }}
|
||||||
element: {{ .Values.global.hosts.element }}
|
element: {{ .Values.global.hosts.element }}
|
||||||
matrixNeoBoardWidget: {{ .Values.global.hosts.matrixNeoBoardWidget }}
|
matrixNeoBoardWidget: {{ .Values.global.hosts.matrixNeoBoardWidget }}
|
||||||
matrixNeoChoiceWidget: {{ .Values.global.hosts.matrixNeoChoiceWidget }}
|
matrixNeoChoiceWidget: {{ .Values.global.hosts.matrixNeoChoiceWidget }}
|
||||||
@@ -23,30 +23,30 @@ global:
|
|||||||
synapseFederation: {{ .Values.global.hosts.synapseFederation }}
|
synapseFederation: {{ .Values.global.hosts.synapseFederation }}
|
||||||
whiteboard: {{ .Values.global.hosts.whiteboard }}
|
whiteboard: {{ .Values.global.hosts.whiteboard }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.nubus.enabled }}
|
{{- if .Values.apps.nubus.enabled }}
|
||||||
intercomService: {{ .Values.global.hosts.intercomService }}
|
intercomService: {{ .Values.global.hosts.intercomService }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.jitsi.enabled }}
|
{{- if .Values.apps.jitsi.enabled }}
|
||||||
jitsi: {{ .Values.global.hosts.jitsi }}
|
jitsi: {{ .Values.global.hosts.jitsi }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.minio.enabled }}
|
{{- if .Values.apps.minio.enabled }}
|
||||||
minioApi: {{ .Values.global.hosts.minioApi }}
|
minioApi: {{ .Values.global.hosts.minioApi }}
|
||||||
minioConsole: {{ .Values.global.hosts.minioConsole }}
|
minioConsole: {{ .Values.global.hosts.minioConsole }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.nextcloud.enabled }}
|
{{- if .Values.apps.nextcloud.enabled }}
|
||||||
nextcloud: {{ .Values.global.hosts.nextcloud }}
|
nextcloud: {{ .Values.global.hosts.nextcloud }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.openproject.enabled }}
|
{{- if .Values.apps.openproject.enabled }}
|
||||||
openproject: {{ .Values.global.hosts.openproject }}
|
openproject: {{ .Values.global.hosts.openproject }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.oxAppSuite.enabled }}
|
{{- if .Values.apps.oxAppSuite.enabled }}
|
||||||
openxchange: {{ .Values.global.hosts.openxchange }}
|
openxchange: {{ .Values.global.hosts.openxchange }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.nubus.enabled }}
|
{{- if .Values.apps.nubus.enabled }}
|
||||||
keycloak: {{ .Values.global.hosts.keycloak }}
|
keycloak: {{ .Values.global.hosts.keycloak }}
|
||||||
nubus: {{ .Values.global.hosts.nubus }}
|
nubus: {{ .Values.global.hosts.nubus }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.xwiki.enabled }}
|
{{- if .Values.apps.xwiki.enabled }}
|
||||||
xwiki: {{ .Values.global.hosts.xwiki }}
|
xwiki: {{ .Values.global.hosts.xwiki }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
|
|||||||
@@ -10,43 +10,43 @@ additionalLabels:
|
|||||||
|
|
||||||
config:
|
config:
|
||||||
collabora:
|
collabora:
|
||||||
enable: {{ .Values.collabora.enabled }}
|
enable: {{ .Values.apps.collabora.enabled }}
|
||||||
selectors:
|
selectors:
|
||||||
namespace: {{ .Values.collabora.namespace | quote }}
|
namespace: {{ .Values.apps.collabora.namespace | quote }}
|
||||||
matrix:
|
matrix:
|
||||||
enable: {{ .Values.element.enabled }}
|
enable: {{ .Values.apps.element.enabled }}
|
||||||
selectors:
|
selectors:
|
||||||
namespace: {{ .Values.element.namespace | quote }}
|
namespace: {{ .Values.apps.element.namespace | quote }}
|
||||||
diagrams:
|
diagrams:
|
||||||
enable: {{ .Values.cryptpad.enabled }}
|
enable: {{ .Values.apps.cryptpad.enabled }}
|
||||||
selectors:
|
selectors:
|
||||||
namespace: {{ .Values.cryptpad.namespace | quote }}
|
namespace: {{ .Values.apps.cryptpad.namespace | quote }}
|
||||||
nextcloud:
|
nextcloud:
|
||||||
enable: {{ .Values.nextcloud.enabled }}
|
enable: {{ .Values.apps.nextcloud.enabled }}
|
||||||
selectors:
|
selectors:
|
||||||
namespace: {{ .Values.nextcloud.namespace | quote }}
|
namespace: {{ .Values.apps.nextcloud.namespace | quote }}
|
||||||
openXChange:
|
openXChange:
|
||||||
enable: {{ .Values.oxAppSuite.enabled }}
|
enable: {{ .Values.apps.oxAppSuite.enabled }}
|
||||||
selectors:
|
selectors:
|
||||||
namespace: {{ .Values.oxAppSuite.namespace | quote }}
|
namespace: {{ .Values.apps.oxAppSuite.namespace | quote }}
|
||||||
xwiki:
|
xwiki:
|
||||||
enable: {{ .Values.xwiki.enabled }}
|
enable: {{ .Values.apps.xwiki.enabled }}
|
||||||
selectors:
|
selectors:
|
||||||
namespace: {{ .Values.xwiki.namespace | quote }}
|
namespace: {{ .Values.apps.xwiki.namespace | quote }}
|
||||||
nubus:
|
nubus:
|
||||||
enable: {{ .Values.nubus.enabled }}
|
enable: {{ .Values.apps.nubus.enabled }}
|
||||||
selectors:
|
selectors:
|
||||||
namespace: {{ .Values.nubus.namespace | quote }}
|
namespace: {{ .Values.apps.nubus.namespace | quote }}
|
||||||
openProject:
|
openProject:
|
||||||
enable: {{ .Values.openproject.enabled }}
|
enable: {{ .Values.apps.openproject.enabled }}
|
||||||
selectors:
|
selectors:
|
||||||
namespace: {{ .Values.openproject.namespace | quote }}
|
namespace: {{ .Values.apps.openproject.namespace | quote }}
|
||||||
jitsi:
|
jitsi:
|
||||||
enable: {{ .Values.jitsi.enabled }}
|
enable: {{ .Values.apps.jitsi.enabled }}
|
||||||
selectors:
|
selectors:
|
||||||
namespace: {{ .Values.jitsi.namespace | quote }}
|
namespace: {{ .Values.apps.jitsi.namespace | quote }}
|
||||||
collabora:
|
collabora:
|
||||||
enable: {{ .Values.collabora.enabled }}
|
enable: {{ .Values.apps.collabora.enabled }}
|
||||||
selectors:
|
selectors:
|
||||||
namespace: {{ .Values.collabora.namespace | quote }}
|
namespace: {{ .Values.apps.collabora.namespace | quote }}
|
||||||
|
|
||||||
|
|||||||
@@ -12,43 +12,43 @@ additionalLabels:
|
|||||||
config:
|
config:
|
||||||
apps:
|
apps:
|
||||||
collabora:
|
collabora:
|
||||||
enable: {{ .Values.collabora.enabled }}
|
enable: {{ .Values.apps.collabora.enabled }}
|
||||||
selectors:
|
selectors:
|
||||||
namespace: {{ .Values.collabora.namespace | quote }}
|
namespace: {{ .Values.apps.collabora.namespace | quote }}
|
||||||
matrixElement:
|
matrixElement:
|
||||||
enable: {{ .Values.element.enabled }}
|
enable: {{ .Values.apps.element.enabled }}
|
||||||
selectors:
|
selectors:
|
||||||
namespace: {{ .Values.element.namespace | quote }}
|
namespace: {{ .Values.apps.element.namespace | quote }}
|
||||||
diagrams:
|
diagrams:
|
||||||
enable: {{ .Values.cryptpad.enabled }}
|
enable: {{ .Values.apps.cryptpad.enabled }}
|
||||||
selectors:
|
selectors:
|
||||||
namespace: {{ .Values.cryptpad.namespace | quote }}
|
namespace: {{ .Values.apps.cryptpad.namespace | quote }}
|
||||||
nextcloud:
|
nextcloud:
|
||||||
enable: {{ .Values.nextcloud.enabled }}
|
enable: {{ .Values.apps.nextcloud.enabled }}
|
||||||
selectors:
|
selectors:
|
||||||
namespace: {{ .Values.nextcloud.namespace | quote }}
|
namespace: {{ .Values.apps.nextcloud.namespace | quote }}
|
||||||
openxchange:
|
openxchange:
|
||||||
enable: {{ .Values.oxAppSuite.enabled }}
|
enable: {{ .Values.apps.oxAppSuite.enabled }}
|
||||||
selectors:
|
selectors:
|
||||||
namespace: {{ .Values.oxAppSuite.namespace | quote }}
|
namespace: {{ .Values.apps.oxAppSuite.namespace | quote }}
|
||||||
xwiki:
|
xwiki:
|
||||||
enable: {{ .Values.xwiki.enabled }}
|
enable: {{ .Values.apps.xwiki.enabled }}
|
||||||
selectors:
|
selectors:
|
||||||
namespace: {{ .Values.xwiki.namespace | quote }}
|
namespace: {{ .Values.apps.xwiki.namespace | quote }}
|
||||||
nubus:
|
nubus:
|
||||||
enable: {{ .Values.nubus.enabled }}
|
enable: {{ .Values.apps.nubus.enabled }}
|
||||||
selectors:
|
selectors:
|
||||||
namespace: {{ .Values.nubus.namespace | quote }}
|
namespace: {{ .Values.apps.nubus.namespace | quote }}
|
||||||
openproject:
|
openproject:
|
||||||
enable: {{ .Values.openproject.enabled }}
|
enable: {{ .Values.apps.openproject.enabled }}
|
||||||
selectors:
|
selectors:
|
||||||
namespace: {{ .Values.openproject.namespace | quote }}
|
namespace: {{ .Values.apps.openproject.namespace | quote }}
|
||||||
jitsi:
|
jitsi:
|
||||||
enable: {{ .Values.jitsi.enabled }}
|
enable: {{ .Values.apps.jitsi.enabled }}
|
||||||
selectors:
|
selectors:
|
||||||
namespace: {{ .Values.jitsi.namespace | quote }}
|
namespace: {{ .Values.apps.jitsi.namespace | quote }}
|
||||||
collabora:
|
collabora:
|
||||||
enable: {{ .Values.collabora.enabled }}
|
enable: {{ .Values.apps.collabora.enabled }}
|
||||||
selectors:
|
selectors:
|
||||||
namespace: {{ .Values.collabora.namespace | quote }}
|
namespace: {{ .Values.apps.collabora.namespace | quote }}
|
||||||
...
|
...
|
||||||
|
|||||||
@@ -10,47 +10,47 @@ global:
|
|||||||
|
|
||||||
apps:
|
apps:
|
||||||
clamavDistributed:
|
clamavDistributed:
|
||||||
enabled: {{ .Values.clamavDistributed.enabled }}
|
enabled: {{ .Values.apps.clamavDistributed.enabled }}
|
||||||
clamavSimple:
|
clamavSimple:
|
||||||
enabled: {{ .Values.clamavSimple.enabled }}
|
enabled: {{ .Values.apps.clamavSimple.enabled }}
|
||||||
collabora:
|
collabora:
|
||||||
enabled: {{ .Values.collabora.enabled }}
|
enabled: {{ .Values.apps.collabora.enabled }}
|
||||||
cryptpad:
|
cryptpad:
|
||||||
enabled: {{ .Values.cryptpad.enabled }}
|
enabled: {{ .Values.apps.cryptpad.enabled }}
|
||||||
dkimpy:
|
dkimpy:
|
||||||
enabled: {{ .Values.dkimpy.enabled }}
|
enabled: {{ .Values.apps.dkimpy.enabled }}
|
||||||
dovecot:
|
dovecot:
|
||||||
enabled: {{ .Values.dovecot.enabled }}
|
enabled: {{ .Values.apps.dovecot.enabled }}
|
||||||
element:
|
element:
|
||||||
enabled: {{ .Values.element.enabled }}
|
enabled: {{ .Values.apps.element.enabled }}
|
||||||
jitsi:
|
jitsi:
|
||||||
enabled: {{ .Values.jitsi.enabled }}
|
enabled: {{ .Values.apps.jitsi.enabled }}
|
||||||
mariadb:
|
mariadb:
|
||||||
enabled: {{ .Values.mariadb.enabled }}
|
enabled: {{ .Values.apps.mariadb.enabled }}
|
||||||
memcached:
|
memcached:
|
||||||
enabled: {{ .Values.memcached.enabled }}
|
enabled: {{ .Values.apps.memcached.enabled }}
|
||||||
migrations:
|
migrations:
|
||||||
enabled: {{ .Values.migrations.enabled }}
|
enabled: {{ .Values.apps.migrations.enabled }}
|
||||||
minio:
|
minio:
|
||||||
enabled: {{ .Values.minio.enabled }}
|
enabled: {{ .Values.apps.minio.enabled }}
|
||||||
nextcloud:
|
nextcloud:
|
||||||
enabled: {{ .Values.nextcloud.enabled }}
|
enabled: {{ .Values.apps.nextcloud.enabled }}
|
||||||
notes:
|
notes:
|
||||||
enabled: {{ .Values.notes.enabled }}
|
enabled: {{ .Values.apps.notes.enabled }}
|
||||||
nubus:
|
nubus:
|
||||||
enabled: {{ .Values.nubus.enabled }}
|
enabled: {{ .Values.apps.nubus.enabled }}
|
||||||
openproject:
|
openproject:
|
||||||
enabled: {{ .Values.openproject.enabled }}
|
enabled: {{ .Values.apps.openproject.enabled }}
|
||||||
oxAppsuite:
|
oxAppsuite:
|
||||||
enabled: {{ .Values.oxAppSuite.enabled }}
|
enabled: {{ .Values.apps.oxAppSuite.enabled }}
|
||||||
postfix:
|
postfix:
|
||||||
enabled: {{ .Values.postfix.enabled }}
|
enabled: {{ .Values.apps.postfix.enabled }}
|
||||||
postgresql:
|
postgresql:
|
||||||
enabled: {{ .Values.postgresql.enabled }}
|
enabled: {{ .Values.apps.postgresql.enabled }}
|
||||||
redis:
|
redis:
|
||||||
enabled: {{ .Values.redis.enabled }}
|
enabled: {{ .Values.apps.redis.enabled }}
|
||||||
xwiki:
|
xwiki:
|
||||||
enabled: {{ .Values.xwiki.enabled }}
|
enabled: {{ .Values.apps.xwiki.enabled }}
|
||||||
|
|
||||||
ingressController:
|
ingressController:
|
||||||
{{ .Values.security.ingressController | toYaml | nindent 2 }}
|
{{ .Values.security.ingressController | toYaml | nindent 2 }}
|
||||||
|
|||||||
@@ -10,7 +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 }}/{{ .Values.charts.openproject.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.openproject.registry }}/{{ .Values.charts.openproject.repository }}"
|
||||||
|
|
||||||
releases:
|
releases:
|
||||||
- name: "openproject"
|
- name: "openproject"
|
||||||
@@ -23,7 +23,7 @@ releases:
|
|||||||
{{- range .Values.customization.release.openproject }}
|
{{- range .Values.customization.release.openproject }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.openproject.enabled }}
|
installed: {{ .Values.apps.openproject.enabled }}
|
||||||
timeout: 1800
|
timeout: 1800
|
||||||
|
|
||||||
commonLabels:
|
commonLabels:
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ dbInit:
|
|||||||
{{ .Values.resources.openprojectDbInit | toYaml | nindent 4 }}
|
{{ .Values.resources.openprojectDbInit | toYaml | nindent 4 }}
|
||||||
|
|
||||||
environment:
|
environment:
|
||||||
{{- if and (env "OPENDESK_ENTERPRISE") .Values.enterpriseKeys.openproject.token }}
|
{{- if and (eq (env "OPENDESK_ENTERPRISE") "true") .Values.enterpriseKeys.openproject.token }}
|
||||||
OPENPROJECT_ENTERPRISE__TOKEN: {{ .Values.enterpriseKeys.openproject.token | quote }}
|
OPENPROJECT_ENTERPRISE__TOKEN: {{ .Values.enterpriseKeys.openproject.token | quote }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
# For more details and more options see
|
# For more details and more options see
|
||||||
@@ -56,8 +56,8 @@ environment:
|
|||||||
OPENPROJECT_SEED_LDAP_OPENDESK_PORT: "389"
|
OPENPROJECT_SEED_LDAP_OPENDESK_PORT: "389"
|
||||||
OPENPROJECT_SEED_LDAP_OPENDESK_BINDPASSWORD: {{ .Values.secrets.nubus.ldapSearch.openproject | quote }}
|
OPENPROJECT_SEED_LDAP_OPENDESK_BINDPASSWORD: {{ .Values.secrets.nubus.ldapSearch.openproject | quote }}
|
||||||
OPENPROJECT_SEED_LDAP_OPENDESK_SECURITY: "plain_ldap"
|
OPENPROJECT_SEED_LDAP_OPENDESK_SECURITY: "plain_ldap"
|
||||||
OPENPROJECT_SEED_LDAP_OPENDESK_BINDUSER: "uid=ldapsearch_openproject,cn=users,dc=swp-ldap,dc=internal"
|
OPENPROJECT_SEED_LDAP_OPENDESK_BINDUSER: "uid=ldapsearch_openproject,cn=users,{{ .Values.ldap.baseDn }}"
|
||||||
OPENPROJECT_SEED_LDAP_OPENDESK_BASEDN: "dc=swp-ldap,dc=internal"
|
OPENPROJECT_SEED_LDAP_OPENDESK_BASEDN: "{{ .Values.ldap.baseDn }}"
|
||||||
OPENPROJECT_SEED_LDAP_OPENDESK_FILTER:
|
OPENPROJECT_SEED_LDAP_OPENDESK_FILTER:
|
||||||
"(&(objectClass=opendeskProjectmanagementUser)(opendeskProjectmanagementEnabled=TRUE))"
|
"(&(objectClass=opendeskProjectmanagementUser)(opendeskProjectmanagementEnabled=TRUE))"
|
||||||
OPENPROJECT_SEED_LDAP_OPENDESK_SYNC__USERS: "true"
|
OPENPROJECT_SEED_LDAP_OPENDESK_SYNC__USERS: "true"
|
||||||
@@ -66,7 +66,7 @@ environment:
|
|||||||
OPENPROJECT_SEED_LDAP_OPENDESK_LASTNAME__MAPPING: "sn"
|
OPENPROJECT_SEED_LDAP_OPENDESK_LASTNAME__MAPPING: "sn"
|
||||||
OPENPROJECT_SEED_LDAP_OPENDESK_MAIL__MAPPING: "mailPrimaryAddress"
|
OPENPROJECT_SEED_LDAP_OPENDESK_MAIL__MAPPING: "mailPrimaryAddress"
|
||||||
OPENPROJECT_SEED_LDAP_OPENDESK_ADMIN__MAPPING: "opendeskProjectmanagementAdmin"
|
OPENPROJECT_SEED_LDAP_OPENDESK_ADMIN__MAPPING: "opendeskProjectmanagementAdmin"
|
||||||
OPENPROJECT_SEED_LDAP_OPENDESK_GROUPFILTER_OPENDESK_BASE: "dc=swp-ldap,dc=internal"
|
OPENPROJECT_SEED_LDAP_OPENDESK_GROUPFILTER_OPENDESK_BASE: "{{ .Values.ldap.baseDn }}"
|
||||||
OPENPROJECT_SEED_LDAP_OPENDESK_GROUPFILTER_OPENDESK_FILTER:
|
OPENPROJECT_SEED_LDAP_OPENDESK_GROUPFILTER_OPENDESK_FILTER:
|
||||||
"(&(objectClass=opendeskProjectmanagementGroup)(opendeskProjectmanagementEnabled=TRUE))"
|
"(&(objectClass=opendeskProjectmanagementGroup)(opendeskProjectmanagementEnabled=TRUE))"
|
||||||
OPENPROJECT_SEED_LDAP_OPENDESK_GROUPFILTER_OPENDESK_SYNC__USERS: "true"
|
OPENPROJECT_SEED_LDAP_OPENDESK_GROUPFILTER_OPENDESK_SYNC__USERS: "true"
|
||||||
@@ -80,7 +80,7 @@ environment:
|
|||||||
OPENPROJECT_SMTP__PASSWORD: ""
|
OPENPROJECT_SMTP__PASSWORD: ""
|
||||||
OPENPROJECT_SMTP__PORT: 25
|
OPENPROJECT_SMTP__PORT: 25
|
||||||
OPENPROJECT_SMTP__SSL: "false" # (default=false)
|
OPENPROJECT_SMTP__SSL: "false" # (default=false)
|
||||||
OPENPROJECT_SMTP__ADDRESS: {{ printf "%s.%s.svc.%s" "postfix" (.Values.postfix.namespace | default .Release.Namespace) .Values.cluster.networking.domain | quote }}
|
OPENPROJECT_SMTP__ADDRESS: {{ printf "%s.%s.svc.%s" "postfix" (.Values.apps.postfix.namespace | default .Release.Namespace) .Values.cluster.networking.domain | quote }}
|
||||||
OPENPROJECT_SMTP__AUTHENTICATION: "none"
|
OPENPROJECT_SMTP__AUTHENTICATION: "none"
|
||||||
OPENPROJECT_SMTP__ENABLE__STARTTLS__AUTO: "false"
|
OPENPROJECT_SMTP__ENABLE__STARTTLS__AUTO: "false"
|
||||||
OPENPROJECT_SMTP__OPENSSL__VERIFY__MODE: "none"
|
OPENPROJECT_SMTP__OPENSSL__VERIFY__MODE: "none"
|
||||||
|
|||||||
@@ -10,7 +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.postgresql.registry }}/{{ .Values.charts.postgresql.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.postgresql.registry }}/{{ .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
|
||||||
@@ -20,7 +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.mariadb.registry }}/{{ .Values.charts.mariadb.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.mariadb.registry }}/{{ .Values.charts.mariadb.repository }}"
|
||||||
|
|
||||||
# openDesk dkimpy-milter
|
# openDesk dkimpy-milter
|
||||||
# https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-dkimpy-milter
|
# https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-dkimpy-milter
|
||||||
@@ -30,7 +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.dkimpy.registry }}/{{ .Values.charts.dkimpy.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .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
|
||||||
@@ -40,7 +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.postfix.registry }}/{{ .Values.charts.postfix.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.postfix.registry }}/{{ .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
|
||||||
@@ -50,14 +50,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 }}/{{ .Values.charts.clamav.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.clamav.registry }}/{{ .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 }}/{{ .Values.charts.clamavSimple.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.clamavSimple.registry }}/{{ .Values.charts.clamavSimple.repository }}"
|
||||||
|
|
||||||
# VMWare Bitnami
|
# VMWare Bitnami
|
||||||
# Source: https://github.com/bitnami/charts/
|
# Source: https://github.com/bitnami/charts/
|
||||||
@@ -67,21 +67,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 }}/{{ .Values.charts.memcached.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.memcached.registry }}/{{ .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 }}/{{ .Values.charts.redis.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.redis.registry }}/{{ .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 }}/{{ .Values.charts.minio.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.minio.registry }}/{{ .Values.charts.minio.repository }}"
|
||||||
|
|
||||||
# openDesk Enterprise
|
# openDesk Enterprise
|
||||||
# Cassandra
|
# Cassandra
|
||||||
@@ -92,7 +92,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.cassandra.registry }}/{{ .Values.charts.cassandra.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.cassandra.registry }}/{{ .Values.charts.cassandra.repository }}"
|
||||||
|
|
||||||
releases:
|
releases:
|
||||||
- name: "redis"
|
- name: "redis"
|
||||||
@@ -103,7 +103,7 @@ releases:
|
|||||||
{{- range .Values.customization.release.redis }}
|
{{- range .Values.customization.release.redis }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.redis.enabled }}
|
installed: {{ .Values.apps.redis.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
- name: "memcached"
|
- name: "memcached"
|
||||||
@@ -114,7 +114,7 @@ releases:
|
|||||||
{{- range .Values.customization.release.memcached }}
|
{{- range .Values.customization.release.memcached }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.memcached.enabled }}
|
installed: {{ .Values.apps.memcached.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
- name: "postgresql"
|
- name: "postgresql"
|
||||||
@@ -125,7 +125,7 @@ releases:
|
|||||||
{{- range .Values.customization.release.postgresql }}
|
{{- range .Values.customization.release.postgresql }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.postgresql.enabled }}
|
installed: {{ .Values.apps.postgresql.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
- name: "mariadb"
|
- name: "mariadb"
|
||||||
@@ -136,7 +136,7 @@ releases:
|
|||||||
{{- range .Values.customization.release.mariadb }}
|
{{- range .Values.customization.release.mariadb }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.mariadb.enabled }}
|
installed: {{ .Values.apps.mariadb.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
- name: "postfix"
|
- name: "postfix"
|
||||||
@@ -147,7 +147,7 @@ releases:
|
|||||||
{{- range .Values.customization.release.postfix }}
|
{{- range .Values.customization.release.postfix }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.postfix.enabled }}
|
installed: {{ .Values.apps.postfix.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
- name: "opendesk-dkimpy-milter"
|
- name: "opendesk-dkimpy-milter"
|
||||||
@@ -158,7 +158,7 @@ releases:
|
|||||||
{{- range .Values.customization.release.opendeskDkimpyMilter }}
|
{{- range .Values.customization.release.opendeskDkimpyMilter }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.dkimpy.enabled }}
|
installed: {{ .Values.apps.dkimpy.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
- name: "clamav"
|
- name: "clamav"
|
||||||
@@ -169,7 +169,7 @@ releases:
|
|||||||
{{- range .Values.customization.release.clamav }}
|
{{- range .Values.customization.release.clamav }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.clamavDistributed.enabled }}
|
installed: {{ .Values.apps.clamavDistributed.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
- name: "clamav-simple"
|
- name: "clamav-simple"
|
||||||
@@ -180,7 +180,7 @@ releases:
|
|||||||
{{- range .Values.customization.release.clamavSimple }}
|
{{- range .Values.customization.release.clamavSimple }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.clamavSimple.enabled }}
|
installed: {{ .Values.apps.clamavSimple.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
- name: "minio"
|
- name: "minio"
|
||||||
@@ -191,7 +191,7 @@ releases:
|
|||||||
{{- range .Values.customization.release.minio }}
|
{{- range .Values.customization.release.minio }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.minio.enabled }}
|
installed: {{ .Values.apps.minio.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
# openDesk Enterprise Releases
|
# openDesk Enterprise Releases
|
||||||
@@ -203,7 +203,7 @@ releases:
|
|||||||
{{- range .Values.customization.release.cassandra }}
|
{{- range .Values.customization.release.cassandra }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.cassandra.enabled }}
|
installed: {{ .Values.apps.cassandra.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
commonLabels:
|
commonLabels:
|
||||||
|
|||||||
@@ -35,10 +35,14 @@ image:
|
|||||||
|
|
||||||
initDB:
|
initDB:
|
||||||
initUserData.cql: >
|
initUserData.cql: >
|
||||||
CREATE KEYSPACE IF NOT EXISTS {{ .Values.databases.dovecot.name | quote }} WITH REPLICATION = { 'class' : 'SimpleStrategy', 'replication_factor' : 1 };
|
CREATE KEYSPACE IF NOT EXISTS {{ .Values.databases.dovecotDictmap.name | quote }} WITH REPLICATION = { 'class' : 'SimpleStrategy', 'replication_factor' : 1 };
|
||||||
CREATE ROLE IF NOT EXISTS {{ .Values.databases.dovecot.username | quote }};
|
CREATE ROLE IF NOT EXISTS {{ .Values.databases.dovecotDictmap.username | quote }};
|
||||||
ALTER ROLE {{ .Values.databases.dovecot.username | quote }} WITH PASSWORD = {{ regexReplaceAll "'" .Values.secrets.cassandra.dovecotUser "''" | squote }} AND LOGIN = true;
|
ALTER ROLE {{ .Values.databases.dovecotDictmap.username | quote }} WITH PASSWORD = {{ regexReplaceAll "'" .Values.secrets.cassandra.dovecotDictmapUser "''" | squote }} AND LOGIN = true;
|
||||||
GRANT ALL ON KEYSPACE {{ .Values.databases.dovecot.name | quote }} TO {{ .Values.databases.dovecot.username | quote }};
|
GRANT ALL ON KEYSPACE {{ .Values.databases.dovecotDictmap.name | quote }} TO {{ .Values.databases.dovecotDictmap.username | quote }};
|
||||||
|
CREATE KEYSPACE IF NOT EXISTS {{ .Values.databases.dovecotACL.name | quote }} WITH REPLICATION = { 'class' : 'SimpleStrategy', 'replication_factor' : 1 };
|
||||||
|
CREATE ROLE IF NOT EXISTS {{ .Values.databases.dovecotACL.username | quote }};
|
||||||
|
ALTER ROLE {{ .Values.databases.dovecotACL.username | quote }} WITH PASSWORD = {{ regexReplaceAll "'" .Values.secrets.cassandra.dovecotACLUser "''" | squote }} AND LOGIN = true;
|
||||||
|
GRANT ALL ON KEYSPACE {{ .Values.databases.dovecotACL.name | quote }} TO {{ .Values.databases.dovecotACL.username | quote }};
|
||||||
|
|
||||||
# Will print a warning if unset but is automatically calculated:
|
# Will print a warning if unset but is automatically calculated:
|
||||||
jvm:
|
jvm:
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
{{/*
|
{{/*
|
||||||
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
SPDX-FileCopyrightText: 2024-2025 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
|
||||||
*/}}
|
*/}}
|
||||||
@@ -116,6 +116,11 @@ provisioning:
|
|||||||
- name: {{ .Values.objectstores.nubus.bucket | quote }}
|
- name: {{ .Values.objectstores.nubus.bucket | quote }}
|
||||||
versioning: "Suspended"
|
versioning: "Suspended"
|
||||||
withLock: false
|
withLock: false
|
||||||
|
{{- if eq (env "OPENDESK_ENTERPRISE") "true" }}
|
||||||
|
- name: {{ .Values.objectstores.dovecot.bucket | quote }}
|
||||||
|
versioning: "Suspended"
|
||||||
|
withLock: false
|
||||||
|
{{- end }}
|
||||||
policies:
|
policies:
|
||||||
- name: "migrations-bucket-policy"
|
- name: "migrations-bucket-policy"
|
||||||
statements:
|
statements:
|
||||||
@@ -177,6 +182,20 @@ provisioning:
|
|||||||
effect: "Allow"
|
effect: "Allow"
|
||||||
actions:
|
actions:
|
||||||
- "s3:*"
|
- "s3:*"
|
||||||
|
{{- if eq (env "OPENDESK_ENTERPRISE") "true" }}
|
||||||
|
- name: "dovecot-bucket-policy"
|
||||||
|
statements:
|
||||||
|
- resources:
|
||||||
|
- "arn:aws:s3:::dovecot"
|
||||||
|
effect: "Allow"
|
||||||
|
actions:
|
||||||
|
- "s3:*"
|
||||||
|
- resources:
|
||||||
|
- "arn:aws:s3:::dovecot/*"
|
||||||
|
effect: "Allow"
|
||||||
|
actions:
|
||||||
|
- "s3:*"
|
||||||
|
{{- end }}
|
||||||
users:
|
users:
|
||||||
- username: {{ .Values.objectstores.migrations.username | quote }}
|
- username: {{ .Values.objectstores.migrations.username | quote }}
|
||||||
password: {{ .Values.secrets.minio.migrationsUser | quote }}
|
password: {{ .Values.secrets.minio.migrationsUser | quote }}
|
||||||
@@ -208,6 +227,14 @@ provisioning:
|
|||||||
policies:
|
policies:
|
||||||
- "ums-bucket-policy"
|
- "ums-bucket-policy"
|
||||||
setPolicies: true
|
setPolicies: true
|
||||||
|
{{- if eq (env "OPENDESK_ENTERPRISE") "true" }}
|
||||||
|
- username: {{ .Values.objectstores.dovecot.username | quote }}
|
||||||
|
password: {{ .Values.secrets.minio.dovecotUser | quote }}
|
||||||
|
disabled: false
|
||||||
|
policies:
|
||||||
|
- "dovecot-bucket-policy"
|
||||||
|
setPolicies: true
|
||||||
|
{{- end }}
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.minio | toYaml | nindent 4 }}
|
{{ .Values.resources.minio | toYaml | nindent 4 }}
|
||||||
|
|
||||||
|
|||||||
@@ -52,7 +52,7 @@ 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 }}
|
{{- if .Values.apps.dkimpy.enabled }}
|
||||||
dkimpyHost: "opendesk-dkimpy-milter.{{ .Release.Namespace }}.svc.{{.Values.cluster.networking.domain }}:8892"
|
dkimpyHost: "opendesk-dkimpy-milter.{{ .Release.Namespace }}.svc.{{.Values.cluster.networking.domain }}:8892"
|
||||||
{{- end }}
|
{{- end }}
|
||||||
rspamdHost: ""
|
rspamdHost: ""
|
||||||
@@ -71,9 +71,9 @@ postfix:
|
|||||||
{{- if .Values.antivirus.milter.host }}
|
{{- if .Values.antivirus.milter.host }}
|
||||||
smtpdMilters: "inet:{{ .Values.antivirus.milter.host }}:{{ .Values.antivirus.milter.port }}"
|
smtpdMilters: "inet:{{ .Values.antivirus.milter.host }}:{{ .Values.antivirus.milter.port }}"
|
||||||
{{- else }}
|
{{- else }}
|
||||||
{{- if .Values.clamavDistributed.enabled }}
|
{{- if .Values.apps.clamavDistributed.enabled }}
|
||||||
smtpdMilters: "inet:clamav-milter:7357"
|
smtpdMilters: "inet:clamav-milter:7357"
|
||||||
{{- else if .Values.clamavSimple.enabled }}
|
{{- else if .Values.apps.clamavSimple.enabled }}
|
||||||
smtpdMilters: "inet:clamav-simple:7357"
|
smtpdMilters: "inet:clamav-simple:7357"
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
@@ -87,10 +87,10 @@ replicaCount: {{ .Values.replicas.postfix }}
|
|||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.postfix | toYaml | nindent 2 }}
|
{{ .Values.resources.postfix | toYaml | nindent 2 }}
|
||||||
|
|
||||||
{{- if or (eq .Values.cluster.service.type "NodePort") (eq .Values.cluster.service.type "LoadBalancer") }}
|
{{- if or (eq (coalesce .Values.service.type.postfix .Values.cluster.service.type) "NodePort") (eq (coalesce .Values.service.type.postfix .Values.cluster.service.type) "LoadBalancer") }}
|
||||||
service:
|
service:
|
||||||
external:
|
external:
|
||||||
enabled: true
|
enabled: true
|
||||||
type: {{ .Values.cluster.service.type | quote }}
|
type: {{ coalesce .Values.service.type.postfix .Values.cluster.service.type | quote }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
...
|
...
|
||||||
|
|||||||
@@ -10,7 +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 }}/{{ .Values.charts.xwiki.repository }}"
|
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.xwiki.registry }}/{{ .Values.charts.xwiki.repository }}"
|
||||||
|
|
||||||
releases:
|
releases:
|
||||||
- name: "xwiki"
|
- name: "xwiki"
|
||||||
@@ -22,7 +22,7 @@ releases:
|
|||||||
{{- range .Values.customization.release.xwiki }}
|
{{- range .Values.customization.release.xwiki }}
|
||||||
- {{ . }}
|
- {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
installed: {{ .Values.xwiki.enabled }}
|
installed: {{ .Values.apps.xwiki.enabled }}
|
||||||
timeout: 1800
|
timeout: 1800
|
||||||
|
|
||||||
commonLabels:
|
commonLabels:
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ image:
|
|||||||
imagePullSecrets: {{ .Values.global.imagePullSecrets }}
|
imagePullSecrets: {{ .Values.global.imagePullSecrets }}
|
||||||
|
|
||||||
javaOpts:
|
javaOpts:
|
||||||
{{- if and (env "OPENDESK_ENTERPRISE") .Values.enterprise.xwiki.opendeskEnterpriseLicense .Values.enterprise.xwiki.proApplicationslicense }}
|
{{- if and (eq (env "OPENDESK_ENTERPRISE") "true") .Values.enterpriseKeys.xwiki.opendeskEnterpriseLicense .Values.enterpriseKeys.xwiki.proApplicationslicense }}
|
||||||
- "-Dlicenses={{ .Values.enterpriseKeys.xwiki.opendeskEnterpriseLicense }},{{ .Values.enterpriseKeys.xwiki.proApplicationslicense }}"
|
- "-Dlicenses={{ .Values.enterpriseKeys.xwiki.opendeskEnterpriseLicense }},{{ .Values.enterpriseKeys.xwiki.proApplicationslicense }}"
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.certificate.selfSigned }}
|
{{- if .Values.certificate.selfSigned }}
|
||||||
@@ -76,17 +76,17 @@ customConfigs:
|
|||||||
xwiki.authentication.ldap.server: {{ .Values.ldap.host | quote }}
|
xwiki.authentication.ldap.server: {{ .Values.ldap.host | quote }}
|
||||||
xwiki.authentication.ldap.port: 389
|
xwiki.authentication.ldap.port: 389
|
||||||
## Authentication to the LDAP server
|
## Authentication to the LDAP server
|
||||||
xwiki.authentication.ldap.bind_DN: "uid=ldapsearch_xwiki,cn=users,dc=swp-ldap,dc=internal"
|
xwiki.authentication.ldap.bind_DN: "uid=ldapsearch_xwiki,cn=users,{{ .Values.ldap.baseDn }}"
|
||||||
xwiki.authentication.ldap.bind_pass: {{ .Values.secrets.nubus.ldapSearch.xwiki | quote }}
|
xwiki.authentication.ldap.bind_pass: {{ .Values.secrets.nubus.ldapSearch.xwiki | quote }}
|
||||||
## Base DN used for searching for users
|
## Base DN used for searching for users
|
||||||
xwiki.authentication.ldap.base_DN: "dc=swp-ldap,dc=internal"
|
xwiki.authentication.ldap.base_DN: "{{ .Values.ldap.baseDn }}"
|
||||||
## Allow short update cycles of the LDAP group cache
|
## Allow short update cycles of the LDAP group cache
|
||||||
xwiki.authentication.ldap.groupcache_expiration: 300
|
xwiki.authentication.ldap.groupcache_expiration: 300
|
||||||
## Mapping for XWiki attributes to the respective LDAP attributes
|
## Mapping for XWiki attributes to the respective LDAP attributes
|
||||||
xwiki.authentication.ldap.fields_mapping: "last_name=sn,first_name=givenName,email=mailPrimaryAddress"
|
xwiki.authentication.ldap.fields_mapping: "last_name=sn,first_name=givenName,email=mailPrimaryAddress"
|
||||||
|
|
||||||
xwiki.properties:
|
xwiki.properties:
|
||||||
{{- if (env "OPENDESK_ENTERPRISE") }}
|
{{- if eq (env "OPENDESK_ENTERPRISE") "true" }}
|
||||||
distribution.defaultUI: "com.xwiki.projects.swp:xwiki-swp-flavor-enterprise-main"
|
distribution.defaultUI: "com.xwiki.projects.swp:xwiki-swp-flavor-enterprise-main"
|
||||||
{{- end }}
|
{{- end }}
|
||||||
wikiInitializer.initialRequest.xwiki.url: "https://{{ .Values.global.hosts.xwiki }}.{{ .Values.global.domain }}/distribution/"
|
wikiInitializer.initialRequest.xwiki.url: "https://{{ .Values.global.hosts.xwiki }}.{{ .Values.global.domain }}/distribution/"
|
||||||
@@ -161,11 +161,12 @@ properties:
|
|||||||
"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.
|
## This option overwrites the LDAP group mappings including all dynamically created mappings,
|
||||||
"property:xwiki:XWiki.XWikiPreferences^XWiki.XWikiPreferences.ldap_group_mapping": "xwiki:XWiki.XWikiAdminGroup=cn=managed-by-attribute-KnowledgemanagementAdmin,cn=groups,dc=swp-ldap,dc=internal"
|
# 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,{{ .Values.ldap.baseDn }}"
|
||||||
## SMTP settings
|
## SMTP settings
|
||||||
"property:xwiki:Mail.MailConfig^Mail.SendMailConfigClass.from": "{{ .Values.smtp.localpartNoReply }}@{{ .Values.global.domain }}"
|
"property:xwiki:Mail.MailConfig^Mail.SendMailConfigClass.from": "{{ .Values.smtp.localpartNoReply }}@{{ .Values.global.domain }}"
|
||||||
"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.host": {{ printf "%s.%s.svc.%s" "postfix" (.Values.apps.postfix.namespace | default .Release.Namespace) .Values.cluster.networking.domain | quote }}
|
||||||
"property:xwiki:Mail.MailConfig^Mail.SendMailConfigClass.port": 25
|
"property:xwiki:Mail.MailConfig^Mail.SendMailConfigClass.port": 25
|
||||||
"property:xwiki:Mail.MailConfig^Mail.SendMailConfigClass.properties": "mail.smtp.starttls.enable=false"
|
"property:xwiki:Mail.MailConfig^Mail.SendMailConfigClass.properties": "mail.smtp.starttls.enable=false"
|
||||||
## Link LDAP users and users authenticated through OIDC
|
## Link LDAP users and users authenticated through OIDC
|
||||||
@@ -202,7 +203,7 @@ properties:
|
|||||||
1
|
1
|
||||||
## Base DN under which groups should be searched for
|
## Base DN under which groups should be searched for
|
||||||
"property:xwiki:LDAPUserImport.WebHome^LDAPUserImport.LDAPUserImportConfigClass.ldapGroupImportSearchDN":
|
"property:xwiki:LDAPUserImport.WebHome^LDAPUserImport.LDAPUserImportConfigClass.ldapGroupImportSearchDN":
|
||||||
"dc=swp-ldap,dc=internal"
|
"{{ .Values.ldap.baseDn }}"
|
||||||
## LDAP filter to only synchronize some groups
|
## LDAP filter to only synchronize some groups
|
||||||
"property:xwiki:LDAPUserImport.WebHome^LDAPUserImport.LDAPUserImportConfigClass.ldapGroupImportSearchFilter":
|
"property:xwiki:LDAPUserImport.WebHome^LDAPUserImport.LDAPUserImportConfigClass.ldapGroupImportSearchFilter":
|
||||||
"(&(objectClass=opendeskKnowledgemanagementGroup)(opendeskKnowledgemanagementEnabled=TRUE))"
|
"(&(objectClass=opendeskKnowledgemanagementGroup)(opendeskKnowledgemanagementEnabled=TRUE))"
|
||||||
|
|||||||
@@ -5,27 +5,27 @@ environments:
|
|||||||
default:
|
default:
|
||||||
values:
|
values:
|
||||||
- "../../environments/default/*.yaml.gotmpl"
|
- "../../environments/default/*.yaml.gotmpl"
|
||||||
{{- if (env "OPENDESK_ENTERPRISE") }}
|
{{- if eq (env "OPENDESK_ENTERPRISE") "true" }}
|
||||||
- "../../environments/default-enterprise-overrides/*.yaml.gotmpl"
|
- "../../environments/default-enterprise-overrides/*.yaml.gotmpl"
|
||||||
{{- end }}
|
{{- end }}
|
||||||
dev:
|
dev:
|
||||||
values:
|
values:
|
||||||
- "../../environments/default/*.yaml.gotmpl"
|
- "../../environments/default/*.yaml.gotmpl"
|
||||||
{{- if (env "OPENDESK_ENTERPRISE") }}
|
{{- if eq (env "OPENDESK_ENTERPRISE") "true" }}
|
||||||
- "../../environments/default-enterprise-overrides/*.yaml.gotmpl"
|
- "../../environments/default-enterprise-overrides/*.yaml.gotmpl"
|
||||||
{{- end }}
|
{{- end }}
|
||||||
- "../../environments/dev/*.yaml.gotmpl"
|
- "../../environments/dev/*.yaml.gotmpl"
|
||||||
test:
|
test:
|
||||||
values:
|
values:
|
||||||
- "../../environments/default/*.yaml.gotmpl"
|
- "../../environments/default/*.yaml.gotmpl"
|
||||||
{{- if (env "OPENDESK_ENTERPRISE") }}
|
{{- if eq (env "OPENDESK_ENTERPRISE") "true" }}
|
||||||
- "../../environments/default-enterprise-overrides/*.yaml.gotmpl"
|
- "../../environments/default-enterprise-overrides/*.yaml.gotmpl"
|
||||||
{{- end }}
|
{{- end }}
|
||||||
- "../../environments/test/*.yaml.gotmpl"
|
- "../../environments/test/*.yaml.gotmpl"
|
||||||
prod:
|
prod:
|
||||||
values:
|
values:
|
||||||
- "../../environments/default/*.yaml.gotmpl"
|
- "../../environments/default/*.yaml.gotmpl"
|
||||||
{{- if (env "OPENDESK_ENTERPRISE") }}
|
{{- if eq (env "OPENDESK_ENTERPRISE") "true" }}
|
||||||
- "../../environments/default-enterprise-overrides/*.yaml.gotmpl"
|
- "../../environments/default-enterprise-overrides/*.yaml.gotmpl"
|
||||||
{{- end }}
|
{{- end }}
|
||||||
- "../../environments/prod/*.yaml.gotmpl"
|
- "../../environments/prod/*.yaml.gotmpl"
|
||||||
|
|||||||
@@ -1,7 +1,13 @@
|
|||||||
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
# SPDX-FileCopyrightText: 2024-2025 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
---
|
---
|
||||||
charts:
|
charts:
|
||||||
|
dovecot:
|
||||||
|
registry: "registry.opencode.de"
|
||||||
|
repository: "zendis/opendesk-enterprise/components/product-development/charts/opendesk-dovecot-pro"
|
||||||
|
name: "dovecot"
|
||||||
|
version: "1.0.0"
|
||||||
|
verify: true
|
||||||
oxAppSuite:
|
oxAppSuite:
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "zendis/opendesk-enterprise/components/supplier/open-xchange/charts-mirror"
|
repository: "zendis/opendesk-enterprise/components/supplier/open-xchange/charts-mirror"
|
||||||
|
|||||||
@@ -6,10 +6,14 @@ images:
|
|||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "zendis/opendesk-enterprise/components/supplier/collabora/images/collabora-online-for-opendesk"
|
repository: "zendis/opendesk-enterprise/components/supplier/collabora/images/collabora-online-for-opendesk"
|
||||||
tag: "24.04.9.4.2@sha256:7c38f2568855ec33c11296d65384766230ea3097a245a60b9e8b0b62cb9cc17f"
|
tag: "24.04.9.4.2@sha256:7c38f2568855ec33c11296d65384766230ea3097a245a60b9e8b0b62cb9cc17f"
|
||||||
|
dovecot:
|
||||||
|
registry: "registry.opencode.de"
|
||||||
|
repository: "zendis/opendesk-enterprise/components/supplier/open-xchange/images-mirror/dovecot-pro"
|
||||||
|
tag: "3.0.1-rev3@sha256:b87f16562dd486c0f97e8147a797af16a54f25f1ac64826f4f53bd8177ec9a33"
|
||||||
nextcloud:
|
nextcloud:
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "zendis/opendesk-enterprise/components/supplier/nextcloud/images/opendesk-nextcloud"
|
repository: "zendis/opendesk-enterprise/components/supplier/nextcloud/images/opendesk-nextcloud"
|
||||||
tag: "1.0.5@sha256:a541b29dad10deb99dbae6c3a463e994a054ac5c7ffc0a5c524c7b0f65544748"
|
tag: "1.1.2@sha256:64f08ff9c9481e67b41bdcc70aeb278b6beba061ba1c989ba96cc471ff46dd9c"
|
||||||
openxchangeCoreMW:
|
openxchangeCoreMW:
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "zendis/opendesk-enterprise/components/supplier/open-xchange/images-mirror/core-mw"
|
repository: "zendis/opendesk-enterprise/components/supplier/open-xchange/images-mirror/core-mw"
|
||||||
|
|||||||
@@ -0,0 +1,15 @@
|
|||||||
|
# SPDX-FileCopyrightText: 2025 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
---
|
||||||
|
objectstores:
|
||||||
|
dovecot:
|
||||||
|
bucket: "dovecot"
|
||||||
|
endpoint: ""
|
||||||
|
region: "eu-west-1"
|
||||||
|
secretKey: ""
|
||||||
|
username: "dovecot_user"
|
||||||
|
storageClass: "STANDARD"
|
||||||
|
useSSL: true
|
||||||
|
pathStyle: true
|
||||||
|
port: 443
|
||||||
|
...
|
||||||
@@ -111,16 +111,6 @@ charts:
|
|||||||
name: "opendesk-element"
|
name: "opendesk-element"
|
||||||
version: "6.0.2"
|
version: "6.0.2"
|
||||||
verify: true
|
verify: true
|
||||||
elementWeb:
|
|
||||||
# providerCategory: "Platform"
|
|
||||||
# providerResponsible: "openDesk"
|
|
||||||
# upstreamRegistry: "https://registry.opencode.de"
|
|
||||||
# upstreamRepository: "bmi/opendesk/components/platform-development/charts/opendesk-element/opendesk-element"
|
|
||||||
registry: "registry.opencode.de"
|
|
||||||
repository: "bmi/opendesk/components/platform-development/charts/opendesk-element"
|
|
||||||
name: "opendesk-element-web"
|
|
||||||
version: "6.0.2"
|
|
||||||
verify: true
|
|
||||||
elementWellKnown:
|
elementWellKnown:
|
||||||
# providerCategory: "Platform"
|
# providerCategory: "Platform"
|
||||||
# providerResponsible: "openDesk"
|
# providerResponsible: "openDesk"
|
||||||
@@ -183,7 +173,7 @@ charts:
|
|||||||
name: "matrix-neoboard-widget"
|
name: "matrix-neoboard-widget"
|
||||||
version: "3.5.1"
|
version: "3.5.1"
|
||||||
verify: true
|
verify: true
|
||||||
matrixNeochoiseWidget:
|
matrixNeochoiceWidget:
|
||||||
# providerCategory: "Platform"
|
# providerCategory: "Platform"
|
||||||
# providerResponsible: "openDesk"
|
# providerResponsible: "openDesk"
|
||||||
# upstreamRegistry: "https://registry.opencode.de"
|
# upstreamRegistry: "https://registry.opencode.de"
|
||||||
@@ -261,7 +251,7 @@ charts:
|
|||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/platform-development/charts/opendesk-nextcloud"
|
repository: "bmi/opendesk/components/platform-development/charts/opendesk-nextcloud"
|
||||||
name: "opendesk-nextcloud"
|
name: "opendesk-nextcloud"
|
||||||
version: "3.7.1"
|
version: "3.9.2"
|
||||||
verify: true
|
verify: true
|
||||||
nextcloudManagement:
|
nextcloudManagement:
|
||||||
# providerCategory: "Platform"
|
# providerCategory: "Platform"
|
||||||
@@ -271,7 +261,7 @@ charts:
|
|||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/platform-development/charts/opendesk-nextcloud"
|
repository: "bmi/opendesk/components/platform-development/charts/opendesk-nextcloud"
|
||||||
name: "opendesk-nextcloud-management"
|
name: "opendesk-nextcloud-management"
|
||||||
version: "3.7.1"
|
version: "3.9.2"
|
||||||
verify: true
|
verify: true
|
||||||
nginx:
|
nginx:
|
||||||
# providerCategory: "Community"
|
# providerCategory: "Community"
|
||||||
@@ -343,7 +333,7 @@ charts:
|
|||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/platform-development/charts/opendesk-keycloak-bootstrap"
|
repository: "bmi/opendesk/components/platform-development/charts/opendesk-keycloak-bootstrap"
|
||||||
name: "opendesk-keycloak-bootstrap"
|
name: "opendesk-keycloak-bootstrap"
|
||||||
version: "2.2.3"
|
version: "2.3.0"
|
||||||
verify: true
|
verify: true
|
||||||
opendeskStaticFiles:
|
opendeskStaticFiles:
|
||||||
# providerCategory: "Platform"
|
# providerCategory: "Platform"
|
||||||
@@ -365,7 +355,7 @@ charts:
|
|||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/supplier/openproject/charts-mirror"
|
repository: "bmi/opendesk/components/supplier/openproject/charts-mirror"
|
||||||
name: "openproject"
|
name: "openproject"
|
||||||
version: "9.5.0"
|
version: "9.5.1"
|
||||||
verify: true
|
verify: true
|
||||||
openprojectBootstrap:
|
openprojectBootstrap:
|
||||||
# providerCategory: "Platform"
|
# providerCategory: "Platform"
|
||||||
@@ -397,7 +387,7 @@ charts:
|
|||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/supplier/open-xchange/charts-mirror"
|
repository: "bmi/opendesk/components/supplier/open-xchange/charts-mirror"
|
||||||
name: "appsuite-public-sector"
|
name: "appsuite-public-sector"
|
||||||
version: "2.12.85"
|
version: "2.15.50"
|
||||||
verify: false
|
verify: false
|
||||||
oxAppSuiteBootstrap:
|
oxAppSuiteBootstrap:
|
||||||
# providerCategory: "Platform"
|
# providerCategory: "Platform"
|
||||||
|
|||||||
@@ -1,19 +1,26 @@
|
|||||||
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
# 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
|
||||||
---
|
---
|
||||||
# This variable allows customization of helmfile releases by loading custom values file.
|
# The following structure allows customization of Helmfile releases by loading custom value files.
|
||||||
#
|
#
|
||||||
# **Warning**: Customizations are a very powerful tool to apply individual changes to your
|
# The keys, like the example key `collaboraOnline` below can be chosen freely.
|
||||||
|
#
|
||||||
|
# **Note:** You have to reference a file and cannot just template additional yaml structure below
|
||||||
|
# the key.
|
||||||
|
#
|
||||||
|
# **Warning:** Customizations are a very powerful tool to apply individual changes to your
|
||||||
# openDesk installation. As there are no limits set for what you use it, openDesk cannot
|
# openDesk installation. As there are no limits set for what you use it, openDesk cannot
|
||||||
# support the configurations you are about to create using the customization-option. If you
|
# support the configurations you are about to create using the customization-option. If you
|
||||||
# have the demand for a specific configuration, try to get it into the openDesk standard
|
# have the demand for a specific configuration, try to get it into the openDesk standard
|
||||||
# by creating a ticket at https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/issues
|
# by creating a ticket at https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/issues
|
||||||
#
|
#
|
||||||
# Example:
|
# Example:
|
||||||
|
# ```
|
||||||
# customization:
|
# customization:
|
||||||
# release:
|
# release:
|
||||||
# collaboraOnline:
|
# collaboraOnline:
|
||||||
# myCustomConfig: "/path/to/additional/file.yaml.gotmpl"
|
# myCustomConfig: '{{ env "PWD" }}/path/to/additional/file.yaml.gotmpl'
|
||||||
|
# ```
|
||||||
customization:
|
customization:
|
||||||
release:
|
release:
|
||||||
# collabora
|
# collabora
|
||||||
@@ -25,6 +32,13 @@ customization:
|
|||||||
opendeskWellKnown: {}
|
opendeskWellKnown: {}
|
||||||
opendeskSynapseWeb: {}
|
opendeskSynapseWeb: {}
|
||||||
opendeskSynapse: {}
|
opendeskSynapse: {}
|
||||||
|
matrixUserVerificationServiceBootstrap: {}
|
||||||
|
matrixUserVerificationService: {}
|
||||||
|
matrixNeoboardWidget: {}
|
||||||
|
matrixNeochoiceWidget: {}
|
||||||
|
matrixNeodatefixWidget: {}
|
||||||
|
matrixNeodatefixBotBootstrap: {}
|
||||||
|
matrixNeodatefixBot: {}
|
||||||
# jitsi
|
# jitsi
|
||||||
jitsi: {}
|
jitsi: {}
|
||||||
# migrations-post
|
# migrations-post
|
||||||
|
|||||||
@@ -6,12 +6,20 @@
|
|||||||
databases:
|
databases:
|
||||||
defaults:
|
defaults:
|
||||||
userConnectionLimit: 100
|
userConnectionLimit: 100
|
||||||
dovecot:
|
dovecotDictmap:
|
||||||
type: "cassandra"
|
type: "cassandra"
|
||||||
name: "dovecot"
|
name: "dovecot_dictmap"
|
||||||
host: "cassandra"
|
host: "cassandra"
|
||||||
port: 9042
|
port: 9042
|
||||||
username: "dovecot_user"
|
username: "dovecot_dictmap_user"
|
||||||
|
password: ""
|
||||||
|
connectionLimit: ~
|
||||||
|
dovecotACL:
|
||||||
|
type: "cassandra"
|
||||||
|
name: "dovecot_acl"
|
||||||
|
host: "cassandra"
|
||||||
|
port: 9042
|
||||||
|
username: "dovecot_acl_user"
|
||||||
password: ""
|
password: ""
|
||||||
connectionLimit: ~
|
connectionLimit: ~
|
||||||
keycloak:
|
keycloak:
|
||||||
@@ -27,6 +35,7 @@ databases:
|
|||||||
name: "keycloak_extensions"
|
name: "keycloak_extensions"
|
||||||
host: "postgresql"
|
host: "postgresql"
|
||||||
port: 5432
|
port: 5432
|
||||||
|
ssl: "false"
|
||||||
username: "keycloak_extensions_user"
|
username: "keycloak_extensions_user"
|
||||||
password: ""
|
password: ""
|
||||||
connectionLimit: ~
|
connectionLimit: ~
|
||||||
@@ -62,6 +71,11 @@ databases:
|
|||||||
port: 3306
|
port: 3306
|
||||||
username: "root"
|
username: "root"
|
||||||
password: ""
|
password: ""
|
||||||
|
# Optional settings: Route read queries to a different host.
|
||||||
|
readHost: ~
|
||||||
|
# If provided, uses a different set of credentials for read queries. By default oxAppSuite.username and oxAppsuite.password are used.
|
||||||
|
readUser: ~
|
||||||
|
readPassword: ~
|
||||||
connectionLimit: ~
|
connectionLimit: ~
|
||||||
synapse:
|
synapse:
|
||||||
type: "postgresql"
|
type: "postgresql"
|
||||||
|
|||||||
@@ -10,6 +10,10 @@ functional:
|
|||||||
enabled: true
|
enabled: true
|
||||||
|
|
||||||
authentication:
|
authentication:
|
||||||
|
newDeviceLoginNotification:
|
||||||
|
# openDesk's Keycloak extensions can send out an email every time a user logs in with a new "device".
|
||||||
|
# It uses device/browser fingerprinting to identify such an event. The feature can be toggled below.
|
||||||
|
enabled: true
|
||||||
twoFactor:
|
twoFactor:
|
||||||
# Define a list of groups to enable 2FA for.
|
# Define a list of groups to enable 2FA for.
|
||||||
# Note: Removing a group from the list will not disable 2FA for the removed group.
|
# Note: Removing a group from the list will not disable 2FA for the removed group.
|
||||||
@@ -91,6 +95,11 @@ functional:
|
|||||||
# Configure if the a re-direct to the login dialogue is enforced, or if the portal is shown and the user as to actively
|
# Configure if the a re-direct to the login dialogue is enforced, or if the portal is shown and the user as to actively
|
||||||
# trigger the login flow, e.g. but clicking on the "Login" portal tile.
|
# trigger the login flow, e.g. but clicking on the "Login" portal tile.
|
||||||
enforceLogin: true
|
enforceLogin: true
|
||||||
|
# Link to the legal notice shown in the portal menu, set to "~" if you want to remove the link
|
||||||
|
linkLegalNotice: "https://opendesk.eu/impressum"
|
||||||
|
# Link to the privacy statement shown in the portal menu, set to "~" if you want to remove the link
|
||||||
|
linkPrivacyStatement: "https://zendis.de/datenschutzerklaerung"
|
||||||
|
|
||||||
chat:
|
chat:
|
||||||
matrix:
|
matrix:
|
||||||
profile:
|
profile:
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
# SPDX-FileCopyrightText: 2024-2025 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
---
|
---
|
||||||
global:
|
global:
|
||||||
systemInformation:
|
systemInformation:
|
||||||
releaseVersion: "v1.1.1"
|
releaseVersion: "v1.1.2"
|
||||||
...
|
...
|
||||||
|
|||||||
@@ -10,13 +10,15 @@ global:
|
|||||||
|
|
||||||
## Define host
|
## Define host
|
||||||
#
|
#
|
||||||
domain: {{ env "DOMAIN" | default "souvap.cloud" | quote }}
|
domain: {{ env "DOMAIN" | default "opendesk.internal" | quote }}
|
||||||
|
|
||||||
## Define mail host
|
## Define mail host
|
||||||
|
## If this is unset the "domain" value above should be used in all references
|
||||||
#
|
#
|
||||||
mailDomain: {{ env "MAIL_DOMAIN" | quote }}
|
mailDomain: {{ env "MAIL_DOMAIN" | quote }}
|
||||||
|
|
||||||
## Define synapse host
|
## Define synapse host
|
||||||
|
## If this is unset the "domain" value above should be used in all references
|
||||||
#
|
#
|
||||||
matrixDomain: {{ env "MATRIX_DOMAIN" | quote }}
|
matrixDomain: {{ env "MATRIX_DOMAIN" | quote }}
|
||||||
|
|
||||||
|
|||||||
@@ -294,7 +294,7 @@ images:
|
|||||||
# upstreamRepository: "bmi/opendesk/components/platform-development/images/opendesk-migrations"
|
# upstreamRepository: "bmi/opendesk/components/platform-development/images/opendesk-migrations"
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/platform-development/images/opendesk-migrations"
|
repository: "bmi/opendesk/components/platform-development/images/opendesk-migrations"
|
||||||
tag: "1.4.0@sha256:0c74011e4c1216857b73695741196908afcacc2f531fd1c894b8f574ac98f9a2"
|
tag: "1.4.1@sha256:c831f3bb27da483cbf46239d8f96df9597f710fbe3804f198ee1d89b1be71936"
|
||||||
milter:
|
milter:
|
||||||
# providerCategory: "Community"
|
# providerCategory: "Community"
|
||||||
# providerResponsible: "openDesk"
|
# providerResponsible: "openDesk"
|
||||||
@@ -318,7 +318,7 @@ images:
|
|||||||
# upstreamRepository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud"
|
# upstreamRepository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud"
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud"
|
repository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud"
|
||||||
tag: "2.4.0@sha256:03d3273b49a3a51fc2d418302070657ad4198ee014f15ff4320e2164625431a1"
|
tag: "2.4.6@sha256:ebd5777c1244199df42f23b5a9df5339d86d353b95c68e7505f142c9c247eb73"
|
||||||
nextcloudExporter:
|
nextcloudExporter:
|
||||||
# providerCategory: "Platform"
|
# providerCategory: "Platform"
|
||||||
# providerResponsible: "openDesk"
|
# providerResponsible: "openDesk"
|
||||||
@@ -448,7 +448,7 @@ images:
|
|||||||
# upstreamMirrorStartFrom: ["0", "0", "3"]
|
# upstreamMirrorStartFrom: ["0", "0", "3"]
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/keycloak-proxy"
|
repository: "bmi/opendesk/components/supplier/univention/images-mirror/keycloak-proxy"
|
||||||
tag: "0.11.0@sha256:9b2079ed4078daee00d95ac2de4d72497131e699b967943db5be1c655048edb0"
|
tag: "0.15.3@sha256:087a8f242ac40f01bdc8326b220ec5b0034b64b3a3be6cf3968563c3d48eb056"
|
||||||
nubusLdapNotifier:
|
nubusLdapNotifier:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
# providerResponsible: "Univention"
|
# providerResponsible: "Univention"
|
||||||
@@ -528,7 +528,15 @@ images:
|
|||||||
# upstreamRepository: "bmi/opendesk/components/platform-development/images/opendesk-nubus"
|
# upstreamRepository: "bmi/opendesk/components/platform-development/images/opendesk-nubus"
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/platform-development/images/opendesk-nubus"
|
repository: "bmi/opendesk/components/platform-development/images/opendesk-nubus"
|
||||||
tag: "1.9.1@sha256:4cc4d4bc39167d7dc305ab1787763fd1091fa1284ddf373e081c595d4dce39a9"
|
tag: "1.12.0@sha256:78d8e35f4dd7acd6b702a3aa4697424ae2f27898886b9b9086fd0ddc7884c391"
|
||||||
|
nubusOpendeskExtensionA2gMapper:
|
||||||
|
# providerCategory: "Platform"
|
||||||
|
# providerResponsible: "openDesk"
|
||||||
|
# upstreamRegistry: "https://registry.opencode.de"
|
||||||
|
# upstreamRepository: "bmi/opendesk/components/platform-development/images/opendesk-nubus-a2g-mapper"
|
||||||
|
registry: "registry.opencode.de"
|
||||||
|
repository: "bmi/opendesk/components/platform-development/images/opendesk-nubus-a2g-mapper"
|
||||||
|
tag: "1.0.1@sha256:527cf7d0515df441b7ac8bc29b40f8703c87246ddc9594d9e24531571dc6359d"
|
||||||
nubusOpenPolicyAgent:
|
nubusOpenPolicyAgent:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
# providerResponsible: "Univention"
|
# providerResponsible: "Univention"
|
||||||
@@ -576,7 +584,7 @@ images:
|
|||||||
# upstreamRepository: "nubus/images/portal-frontend"
|
# upstreamRepository: "nubus/images/portal-frontend"
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/platform-development/images/opendesk-nubus-portal-update"
|
repository: "bmi/opendesk/components/platform-development/images/opendesk-nubus-portal-update"
|
||||||
tag: "1.10.13@sha256:2f84f50af5d6ed31587e5ea9d043c9c30599d91350e13ea1ca31c9c9737a32cc"
|
tag: "1.10.14@sha256:fbdec057958fd7e728431cf96896b8453c2f5b390ce3d2f169a7766f49926b1b"
|
||||||
nubusPortalServer:
|
nubusPortalServer:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
# providerResponsible: "Univention"
|
# providerResponsible: "Univention"
|
||||||
@@ -596,7 +604,7 @@ images:
|
|||||||
# upstreamMirrorStartFrom: ["0", "14", "0"]
|
# upstreamMirrorStartFrom: ["0", "14", "0"]
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-dispatcher"
|
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-dispatcher"
|
||||||
tag: "0.46.0@sha256:01464a4f2e1297ff2d1a507e69829fa7d0b84543e88280113bd9b9fb88bf2bce"
|
tag: "0.48.1@sha256:0fac927b2690d6b704e4918102adcbd971effd2cf4af2fb7b86aba5902788a8e"
|
||||||
nubusProvisioningEventsAndConsumerApi:
|
nubusProvisioningEventsAndConsumerApi:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
# providerResponsible: "Univention"
|
# providerResponsible: "Univention"
|
||||||
@@ -606,7 +614,7 @@ images:
|
|||||||
# upstreamMirrorStartFrom: ["0", "14", "0"]
|
# upstreamMirrorStartFrom: ["0", "14", "0"]
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-events-and-consumer-api"
|
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-events-and-consumer-api"
|
||||||
tag: "0.46.0@sha256:c9025d0c058a36fb7926a6ad9768f9909efa4dff76022d7b7de862b000da6e6f"
|
tag: "0.48.1@sha256:042633fbf98f9600fa79103476871f4754aab5633b0d04ad4aae780e80f685f4"
|
||||||
nubusProvisioningPrefill:
|
nubusProvisioningPrefill:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
# providerResponsible: "Univention"
|
# providerResponsible: "Univention"
|
||||||
@@ -616,7 +624,7 @@ images:
|
|||||||
# upstreamMirrorStartFrom: ["0", "14", "0"]
|
# upstreamMirrorStartFrom: ["0", "14", "0"]
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-prefill"
|
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-prefill"
|
||||||
tag: "0.46.0@sha256:e7dfa77a8fe5b6d40d734b04dda9583c03ae8cf48221e6f0af0b35052514a948"
|
tag: "0.48.1@sha256:6019d3ab31a69c46c12addb7b7ede30e9b25d236169f3bb4bde678d576f207d3"
|
||||||
nubusProvisioningUdmListener:
|
nubusProvisioningUdmListener:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
# providerResponsible: "Univention"
|
# providerResponsible: "Univention"
|
||||||
@@ -626,7 +634,7 @@ images:
|
|||||||
# upstreamMirrorStartFrom: ["0", "14", "0"]
|
# upstreamMirrorStartFrom: ["0", "14", "0"]
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-udm-listener"
|
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-udm-listener"
|
||||||
tag: "0.46.0@sha256:648101e9115fa9c32583f2588a722201fed8b537167931cce3aee1111c6f50b2"
|
tag: "0.48.1@sha256:39aeb312e0148400b54184dbbe4595cd75e8dc62c0abfaaf56efc863f2486810"
|
||||||
nubusProvisioningUdmTransformer:
|
nubusProvisioningUdmTransformer:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
# providerResponsible: "Univention"
|
# providerResponsible: "Univention"
|
||||||
@@ -636,7 +644,7 @@ images:
|
|||||||
# upstreamMirrorStartFrom: ["0", "14", "0"]
|
# upstreamMirrorStartFrom: ["0", "14", "0"]
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-udm-transformer"
|
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-udm-transformer"
|
||||||
tag: "0.46.0@sha256:e1877879044e5b0967362b5ec9a491e046d674407fbf081756b5e9e0e2dcd8e5"
|
tag: "0.48.1@sha256:414a329af821e50b20c0443bc6364f91f4f6a8cc879cc881757a715f273c5a99"
|
||||||
nubusSelfServiceConsumer:
|
nubusSelfServiceConsumer:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
# providerResponsible: "Univention"
|
# providerResponsible: "Univention"
|
||||||
@@ -720,7 +728,7 @@ images:
|
|||||||
# upstreamMirrorStartFrom: ["13", "1", "1"]
|
# upstreamMirrorStartFrom: ["13", "1", "1"]
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/supplier/openproject/images-mirror/open_desk"
|
repository: "bmi/opendesk/components/supplier/openproject/images-mirror/open_desk"
|
||||||
tag: "15.2.0@sha256:5394a6cddc3f27efd20aeba4c2a0da0c0234ea914726f2d8cb6ebebeb500b9cf"
|
tag: "15.2.1@sha256:bbdde5f9818997086fcf61b7b204500fad716997bba3953819162f170425f4f0"
|
||||||
openprojectBootstrap:
|
openprojectBootstrap:
|
||||||
# providerCategory: "Platform"
|
# providerCategory: "Platform"
|
||||||
# providerResponsible: "openDesk"
|
# providerResponsible: "openDesk"
|
||||||
@@ -764,7 +772,7 @@ images:
|
|||||||
# upstreamMirrorStartFrom: ["8", "20", "51"]
|
# upstreamMirrorStartFrom: ["8", "20", "51"]
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/middleware-public-sector"
|
repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/middleware-public-sector"
|
||||||
tag: "8.30.62@sha256:9e4341c723cf6671479dfaad37635f8b28bb510decb9b7f0fd2616faacbf0d1a"
|
tag: "8.33.56@sha256:4b3064fbcd068562a66cea1ff38c859aecc48038650efbf786d4122601ced674"
|
||||||
openxchangeCoreUI:
|
openxchangeCoreUI:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
# providerResponsible: "Open-Xchange"
|
# providerResponsible: "Open-Xchange"
|
||||||
@@ -774,7 +782,7 @@ images:
|
|||||||
# upstreamMirrorStartFrom: ["8", "20", "1"]
|
# upstreamMirrorStartFrom: ["8", "20", "1"]
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/core-ui"
|
repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/core-ui"
|
||||||
tag: "8.30.1@sha256:bd15c87f0bd929be56dea260e35de0e089758eaf394c0eb4ece2991371c7ad5e"
|
tag: "8.33.2@sha256:8c98cc1f91a366a6c4f1464fb7efcef148fc614c117c34a9d5da45ee40c04bae"
|
||||||
openxchangeCoreUIMiddleware:
|
openxchangeCoreUIMiddleware:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
# providerResponsible: "Open-Xchange"
|
# providerResponsible: "Open-Xchange"
|
||||||
@@ -794,7 +802,7 @@ images:
|
|||||||
# upstreamMirrorStartFrom: ["8", "20", "799279"]
|
# upstreamMirrorStartFrom: ["8", "20", "799279"]
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/core-user-guide"
|
repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/core-user-guide"
|
||||||
tag: "8.30.1161251@sha256:a082bcf5768c2cba22f36a4299665474af92fd18307a1de719fc541717aee0b7"
|
tag: "8.33.1228926@sha256:0b6356afdce7021b78ff49020cf4defcc671c0146547043e1313fc1136a2f576"
|
||||||
openxchangeDocumentConverter:
|
openxchangeDocumentConverter:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
# providerResponsible: "Open-Xchange"
|
# providerResponsible: "Open-Xchange"
|
||||||
@@ -804,7 +812,7 @@ images:
|
|||||||
# upstreamMirrorStartFrom: ["8", "20", "50"]
|
# upstreamMirrorStartFrom: ["8", "20", "50"]
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/documentconverter"
|
repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/documentconverter"
|
||||||
tag: "8.30.60@sha256:4b3c79f94beec71f1b3e6c1be3cb4894d25e3a3133390cb077bf6fa749cecbe8"
|
tag: "8.33.49@sha256:0bbb37e36aeaad00e7c6f78d4a25621be9fdd854dc39ba9dfa0ea923c088978c"
|
||||||
openxchangeGotenberg:
|
openxchangeGotenberg:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
# providerResponsible: "Open-Xchange"
|
# providerResponsible: "Open-Xchange"
|
||||||
@@ -814,7 +822,7 @@ images:
|
|||||||
# upstreamMirrorStartFrom: ["7", "9", "2"]
|
# upstreamMirrorStartFrom: ["7", "9", "2"]
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/gotenberg"
|
repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/gotenberg"
|
||||||
tag: "8.2.0@sha256:ec5afe8eea496d3bef6c42291fde9c203c20e8a68189a2314ef876e9c0e67680"
|
tag: "8.12.0@sha256:2b36e1ea5db6d3d475348c0ed8df5edf09ab92781a9cfbb9ce7c96971cfcc5a8"
|
||||||
openxchangeGuardUI:
|
openxchangeGuardUI:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
# providerResponsible: "Open-Xchange"
|
# providerResponsible: "Open-Xchange"
|
||||||
@@ -824,7 +832,7 @@ images:
|
|||||||
# upstreamMirrorStartFrom: ["4", "2", "2"]
|
# upstreamMirrorStartFrom: ["4", "2", "2"]
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/guard-ui"
|
repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/guard-ui"
|
||||||
tag: "8.28.1@sha256:eed6a81f8393ce6ecdc8ea83507e0a734431a0eb8d30221f4cabe9fc7906e4e6"
|
tag: "8.32.0@sha256:5c9542f9112882e46c3b8cb6f0ca2bef61585abac0e640a4fafa7d7ef60a392b"
|
||||||
openxchangeImageConverter:
|
openxchangeImageConverter:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
# providerResponsible: "Open-Xchange"
|
# providerResponsible: "Open-Xchange"
|
||||||
@@ -834,7 +842,7 @@ images:
|
|||||||
# upstreamMirrorStartFrom: ["8", "20", "50"]
|
# upstreamMirrorStartFrom: ["8", "20", "50"]
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/imageconverter"
|
repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/imageconverter"
|
||||||
tag: "8.30.61@sha256:816008c99e38a7268a323c2c144f1855275c53ea678cd6fdf2ff2170bd7bcfac"
|
tag: "8.33.53@sha256:454c53e2b7f5fab14bf29495854ffe2c10f44c4d4a611e237232eeeb3903feb8"
|
||||||
openxchangeNextcloudIntegrationUI:
|
openxchangeNextcloudIntegrationUI:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
# providerResponsible: "Open-Xchange"
|
# providerResponsible: "Open-Xchange"
|
||||||
@@ -844,7 +852,7 @@ images:
|
|||||||
# upstreamMirrorStartFrom: ["1", "2", "0"]
|
# upstreamMirrorStartFrom: ["1", "2", "0"]
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/nextcloud-integration-ui"
|
repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/nextcloud-integration-ui"
|
||||||
tag: "1.2.0@sha256:3d0ef11196f7544a01539e6790e4402ad69e2a501312eb7c7bb128c6563d0a8d"
|
tag: "1.3.2@sha256:d9129b87a184cc0020a40f2720e3190c64b30ed983dc68e4b3fe52cc8a7ee1a4"
|
||||||
openxchangePublicSectorUI:
|
openxchangePublicSectorUI:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
# providerResponsible: "Open-Xchange"
|
# providerResponsible: "Open-Xchange"
|
||||||
@@ -854,7 +862,7 @@ images:
|
|||||||
# upstreamMirrorStartFrom: ["2", "2", "1"]
|
# upstreamMirrorStartFrom: ["2", "2", "1"]
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/public-sector-ui"
|
repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/public-sector-ui"
|
||||||
tag: "2.3.0@sha256:a557816ee55500ecc3b46b60f0440ea66c7f0d90e888ce3b0df8a9acdd72acbe"
|
tag: "2.3.1@sha256:8bd35ef700eb48b8f40a71d02aea179cf2eae95a1be3b3b5f1cacb3698bc488a"
|
||||||
oxConnector:
|
oxConnector:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
# providerResponsible: "Univention"
|
# providerResponsible: "Univention"
|
||||||
|
|||||||
@@ -4,8 +4,9 @@
|
|||||||
#
|
#
|
||||||
# Note: Currently only single namespace deployments are supported.
|
# Note: Currently only single namespace deployments are supported.
|
||||||
---
|
---
|
||||||
|
apps:
|
||||||
cassandra:
|
cassandra:
|
||||||
enabled: {{ if (env "OPENDESK_ENTERPRISE") }}true{{ else }}false{{ end }}
|
enabled: {{ if eq (env "OPENDESK_ENTERPRISE") "true" }}true{{ else }}false{{ end }}
|
||||||
namespace: ~
|
namespace: ~
|
||||||
certificates:
|
certificates:
|
||||||
enabled: true
|
enabled: true
|
||||||
@@ -20,7 +21,7 @@ collabora:
|
|||||||
enabled: true
|
enabled: true
|
||||||
namespace: ~
|
namespace: ~
|
||||||
collaboraController:
|
collaboraController:
|
||||||
enabled: {{ if (env "OPENDESK_ENTERPRISE") }}true{{ else }}false{{ end }}
|
enabled: {{ if eq (env "OPENDESK_ENTERPRISE") "true" }}true{{ else }}false{{ end }}
|
||||||
namespace: ~
|
namespace: ~
|
||||||
cryptpad:
|
cryptpad:
|
||||||
enabled: true
|
enabled: true
|
||||||
@@ -35,10 +36,10 @@ element:
|
|||||||
enabled: true
|
enabled: true
|
||||||
namespace: ~
|
namespace: ~
|
||||||
elementAdmin:
|
elementAdmin:
|
||||||
enabled: {{ if (env "OPENDESK_ENTERPRISE") }}true{{ else }}false{{ end }}
|
enabled: false
|
||||||
namespace: ~
|
namespace: ~
|
||||||
elementGroupsync:
|
elementGroupsync:
|
||||||
enabled: {{ if (env "OPENDESK_ENTERPRISE") }}true{{ else }}false{{ end }}
|
enabled: false
|
||||||
namespace: ~
|
namespace: ~
|
||||||
home:
|
home:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ persistence:
|
|||||||
|
|
||||||
storages:
|
storages:
|
||||||
cassandra:
|
cassandra:
|
||||||
data: "1Gi"
|
size: "1Gi"
|
||||||
commitLogsize: "256Mi"
|
commitLogsize: "256Mi"
|
||||||
storageClassName: ~
|
storageClassName: ~
|
||||||
clamav:
|
clamav:
|
||||||
|
|||||||
@@ -100,6 +100,8 @@ replicas:
|
|||||||
# -- scalable: true
|
# -- scalable: true
|
||||||
umsLdapServerSecondary: 0
|
umsLdapServerSecondary: 0
|
||||||
# -- scalable: true
|
# -- scalable: true
|
||||||
|
# -- comment: The LDAP proxy is only required in situations where there are clients outside of UDM writing into the
|
||||||
|
# LDAP like Samba. This is not a use case within openDesk so the LDAP Proxy's replica count should be kept at `0`
|
||||||
umsLdapServerProxy: 0
|
umsLdapServerProxy: 0
|
||||||
# -- scalable: tbd
|
# -- scalable: tbd
|
||||||
umsNotificationsApi: 1
|
umsNotificationsApi: 1
|
||||||
|
|||||||
@@ -262,6 +262,13 @@ resources:
|
|||||||
requests:
|
requests:
|
||||||
cpu: 0.1
|
cpu: 0.1
|
||||||
memory: "512Mi"
|
memory: "512Mi"
|
||||||
|
nextcloudCron:
|
||||||
|
limits:
|
||||||
|
cpu: 99
|
||||||
|
memory: "1Gi"
|
||||||
|
requests:
|
||||||
|
cpu: 0.1
|
||||||
|
memory: "512Mi"
|
||||||
nextcloudExporter:
|
nextcloudExporter:
|
||||||
limits:
|
limits:
|
||||||
cpu: 99
|
cpu: 99
|
||||||
|
|||||||
@@ -7,8 +7,8 @@ SPDX-License-Identifier: Apache-2.0
|
|||||||
secrets:
|
secrets:
|
||||||
cassandra:
|
cassandra:
|
||||||
rootPassword: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "cassandra" "root_password" | sha1sum | quote }}
|
rootPassword: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "cassandra" "root_password" | sha1sum | quote }}
|
||||||
dovecotUser: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "cassandra" "dovecot_user" | sha1sum | quote }}
|
dovecotDictmapUser: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "cassandra" "dovecot_dictmap_user" | sha1sum | quote }}
|
||||||
|
dovecotACLUser: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "cassandra" "dovecot_acl_user" | sha1sum | quote }}
|
||||||
oxAppSuite:
|
oxAppSuite:
|
||||||
adminPassword: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "ox_appsuite" "admin_password" | sha1sum | quote }}
|
adminPassword: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "ox_appsuite" "admin_password" | sha1sum | quote }}
|
||||||
basicAuthPassword: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "ox_appsuite" "basic_auth_password" | sha1sum | quote }}
|
basicAuthPassword: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "ox_appsuite" "basic_auth_password" | sha1sum | quote }}
|
||||||
@@ -75,6 +75,7 @@ secrets:
|
|||||||
openxchangeUser: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "mariadb" "openxchange_user" | sha1sum | quote }}
|
openxchangeUser: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "mariadb" "openxchange_user" | sha1sum | quote }}
|
||||||
nextcloudUser: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "mariadb" "nextcloud_user" | sha1sum | quote }}
|
nextcloudUser: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "mariadb" "nextcloud_user" | sha1sum | quote }}
|
||||||
minio:
|
minio:
|
||||||
|
dovecotUser: {{ (derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "minio" "dovecot_user" | sha1sum | quote) }}
|
||||||
rootPassword: {{ (derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "minio" "root_password" | sha1sum | quote) }}
|
rootPassword: {{ (derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "minio" "root_password" | sha1sum | quote) }}
|
||||||
migrationsUser: {{ (derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "minio" "migrations_user" | sha1sum | quote) }}
|
migrationsUser: {{ (derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "minio" "migrations_user" | sha1sum | quote) }}
|
||||||
nextcloudUser: {{ (derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "minio" "nextcloud_user" | sha1sum | quote) }}
|
nextcloudUser: {{ (derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "minio" "nextcloud_user" | sha1sum | quote) }}
|
||||||
|
|||||||
12
helmfile/environments/default/service.yaml.gotmpl
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
{{/*
|
||||||
|
SPDX-FileCopyrightText: 2025 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
|
---
|
||||||
|
service:
|
||||||
|
# Only override when needed, the default is set in `.Values.cluster.service.type` defined in `cluster.yaml.gotmpl`
|
||||||
|
type:
|
||||||
|
jitsiVideoBridge: ~
|
||||||
|
dovecot: ~
|
||||||
|
postfix: ~
|
||||||
|
...
|
||||||
@@ -55,8 +55,8 @@ theme:
|
|||||||
logoSvg: {{ readFile "./../../files/theme/login/logo.svg" | b64enc | quote }}
|
logoSvg: {{ readFile "./../../files/theme/login/logo.svg" | b64enc | quote }}
|
||||||
|
|
||||||
groupware:
|
groupware:
|
||||||
faviconIco: {{ readFile "./../../files/theme/groupware/favicon.ico" | b64enc | quote }}
|
faviconIco: {{ readFile "./../../files/theme/groupware_mail/favicon.ico" | b64enc | quote }}
|
||||||
faviconSvg: {{ readFile "./../../files/theme/groupware/favicon.svg" | b64enc | quote }}
|
faviconSvg: {{ readFile "./../../files/theme/groupware_mail/favicon.svg" | b64enc | quote }}
|
||||||
|
|
||||||
knowledge:
|
knowledge:
|
||||||
faviconSvg: {{ readFile "./../../files/theme/knowledge/favicon.svg" | b64enc | quote }}
|
faviconSvg: {{ readFile "./../../files/theme/knowledge/favicon.svg" | b64enc | quote }}
|
||||||
@@ -70,31 +70,32 @@ theme:
|
|||||||
waitingSpinnerSvg: {{ readFile "./../../files/theme/portal/waiting-spinner.svg" | b64enc }}
|
waitingSpinnerSvg: {{ readFile "./../../files/theme/portal/waiting-spinner.svg" | b64enc }}
|
||||||
backgroundSvg: {{ readFile "./../../files/theme/portal/background.svg" | b64enc | quote }}
|
backgroundSvg: {{ readFile "./../../files/theme/portal/background.svg" | b64enc | quote }}
|
||||||
portalTiles:
|
portalTiles:
|
||||||
adminAnnouncement: {{ readFile "./../../files/theme/portal-tiles/admin_announcement.svg" | b64enc | quote }}
|
adminAnnouncement: {{ readFile "./../../files/theme/admin_announcements/favicon.svg" | b64enc | quote }}
|
||||||
adminContext: {{ readFile "./../../files/theme/portal-tiles/admin_context.svg" | b64enc | quote }}
|
adminFunctionalmailbox: {{ readFile "./../../files/theme/admin_functionalmailbox/favicon.svg" | b64enc | quote }}
|
||||||
adminFunctionalmailbox: {{ readFile "./../../files/theme/portal-tiles/admin_functionalmailbox.svg" | b64enc | quote }}
|
adminGroup: {{ readFile "./../../files/theme/admin_groups/favicon.svg" | b64enc | quote }}
|
||||||
adminGroup: {{ readFile "./../../files/theme/portal-tiles/admin_group.svg" | b64enc | quote }}
|
adminResource: {{ readFile "./../../files/theme/admin_resource/favicon.svg" | b64enc | quote }}
|
||||||
adminResource: {{ readFile "./../../files/theme/portal-tiles/admin_resource.svg" | b64enc | quote }}
|
adminUser: {{ readFile "./../../files/theme/admin_user/favicon.svg" | b64enc | quote }}
|
||||||
adminUser: {{ readFile "./../../files/theme/portal-tiles/admin_user.svg" | b64enc | quote }}
|
anonymousLogin: {{ readFile "./../../files/theme/login/favicon.svg" | b64enc | quote }}
|
||||||
anonymousLogin: {{ readFile "./../../files/theme/portal-tiles/anonymous_login.svg" | b64enc | quote }}
|
fileshareDirectdocOdp: {{ readFile "./../../files/theme/directdocs_odp/favicon.svg" | b64enc | quote }}
|
||||||
dummyCircle: {{ readFile "./../../files/theme/portal-tiles/dummy_circle.svg" | b64enc | quote }}
|
fileshareDirectdocOds: {{ readFile "./../../files/theme/directdocs_ods/favicon.svg" | b64enc | quote }}
|
||||||
fileshareActivity: {{ readFile "./../../files/theme/portal-tiles/fileshare_activity.svg" | b64enc | quote }}
|
fileshareDirectdocOdt: {{ readFile "./../../files/theme/directdocs_odt/favicon.svg" | b64enc | quote }}
|
||||||
fileshareDirectdocOdp: {{ readFile "./../../files/theme/portal-tiles/fileshare_directdoc_odp.svg" | b64enc | quote }}
|
fileshareFiles: {{ readFile "./../../files/theme/files/favicon.svg" | b64enc | quote }}
|
||||||
fileshareDirectdocOds: {{ readFile "./../../files/theme/portal-tiles/fileshare_directdoc_ods.svg" | b64enc | quote }}
|
groupwareCalendar: {{ readFile "./../../files/theme/groupware_calendar/favicon.svg" | b64enc | quote }}
|
||||||
fileshareDirectdocOdt: {{ readFile "./../../files/theme/portal-tiles/fileshare_directdoc_odt.svg" | b64enc | quote }}
|
groupwareContacts: {{ readFile "./../../files/theme/groupware_contacts/favicon.svg" | b64enc | quote }}
|
||||||
fileshareFiles: {{ readFile "./../../files/theme/portal-tiles/fileshare_files.svg" | b64enc | quote }}
|
groupwareMail: {{ readFile "./../../files/theme/groupware_mail/favicon.svg" | b64enc | quote }}
|
||||||
groupwareCalendar: {{ readFile "./../../files/theme/portal-tiles/groupware_calendar.svg" | b64enc | quote }}
|
groupwareTasks: {{ readFile "./../../files/theme/groupware_tasks/favicon.svg" | b64enc | quote }}
|
||||||
groupwareContacts: {{ readFile "./../../files/theme/portal-tiles/groupware_contacts.svg" | b64enc | quote }}
|
managementKnowledge: {{ readFile "./../../files/theme/knowledge/favicon.svg" | b64enc | quote }}
|
||||||
groupwareMail: {{ readFile "./../../files/theme/portal-tiles/groupware_mail.svg" | b64enc | quote }}
|
managementProject: {{ readFile "./../../files/theme/projects/favicon.svg" | b64enc | quote }}
|
||||||
groupwareTasks: {{ readFile "./../../files/theme/portal-tiles/groupware_tasks.svg" | b64enc | quote }}
|
notes: {{ readFile "./../../files/theme/notes/favicon.svg" | b64enc | quote }}
|
||||||
managementKnowledge: {{ readFile "./../../files/theme/portal-tiles/management_knowledge.svg" | b64enc | quote }}
|
realtimeCollaboration: {{ readFile "./../../files/theme/chat/favicon.svg" | b64enc | quote }}
|
||||||
managementProject: {{ readFile "./../../files/theme/portal-tiles/management_project.svg" | b64enc | quote }}
|
realtimeVideoconference: {{ readFile "./../../files/theme/videoconference/favicon.svg" | b64enc | quote }}
|
||||||
notes: {{ readFile "./../../files/theme/portal-tiles/misc_notes.svg" | b64enc | quote }}
|
# empty.svg
|
||||||
realtimeCollaboration: {{ readFile "./../../files/theme/portal-tiles/realtime_collaboration.svg" | b64enc | quote }}
|
empty: {{ readFile "./../../files/theme/_dev/empty.svg" | b64enc | quote }}
|
||||||
realtimeVideoconference: {{ readFile "./../../files/theme/portal-tiles/realtime_videoconference.svg" | b64enc | quote }}
|
fileshareActivity: {{ readFile "./../../files/theme/_dev/empty.svg" | b64enc | quote }}
|
||||||
selfserviceChangepassword: {{ readFile "./../../files/theme/portal-tiles/selfservice_changepassword.svg" | b64enc | quote }}
|
adminContext: {{ readFile "./../../files/theme/_dev/empty.svg" | b64enc | quote }}
|
||||||
selfserviceEditprofile: {{ readFile "./../../files/theme/portal-tiles/selfservice_editprofile.svg" | b64enc | quote }}
|
selfserviceChangepassword: {{ readFile "./../../files/theme/_dev/empty.svg" | b64enc | quote }}
|
||||||
selfserviceProtectaccount: {{ readFile "./../../files/theme/portal-tiles/selfservice_protectaccount.svg" | b64enc | quote }}
|
selfserviceEditprofile: {{ readFile "./../../files/theme/_dev/empty.svg" | b64enc | quote }}
|
||||||
|
selfserviceProtectaccount: {{ readFile "./../../files/theme/_dev/empty.svg" | b64enc | quote }}
|
||||||
|
|
||||||
projects:
|
projects:
|
||||||
faviconSvg: {{ readFile "./../../files/theme/projects/favicon.svg" | b64enc | quote }}
|
faviconSvg: {{ readFile "./../../files/theme/projects/favicon.svg" | b64enc | quote }}
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 100 B After Width: | Height: | Size: 100 B |
|
Before Width: | Height: | Size: 732 B After Width: | Height: | Size: 732 B |
|
Before Width: | Height: | Size: 615 B After Width: | Height: | Size: 615 B |
|
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 399 B After Width: | Height: | Size: 399 B |
|
Before Width: | Height: | Size: 794 B After Width: | Height: | Size: 794 B |
|
Before Width: | Height: | Size: 49 KiB After Width: | Height: | Size: 50 KiB |
BIN
helmfile/files/theme/chat/favicon.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
5
helmfile/files/theme/chat/favicon.svg
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
<svg width="111" height="111" viewBox="0 0 111 111" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<rect x="0.5" y="0.5" width="110" height="110" rx="20" fill="white"/>
|
||||||
|
<path d="M58.6115 47.7521C62.9105 47.7521 66.4069 44.2667 66.4069 39.9568V32.1614C66.4069 27.8624 62.9215 24.3661 58.6115 24.3661H27.4412C23.1422 24.3661 19.6459 27.8514 19.6459 32.1614V63.3317L35.2255 47.7521H58.6005H58.6115Z" fill="#341291"/>
|
||||||
|
<path d="M83.5478 55.5476H52.3775C48.0785 55.5476 44.5822 59.033 44.5822 63.3429V71.1383C44.5822 75.4372 48.0675 78.9336 52.3775 78.9336H75.7525L91.3321 94.5133V63.3429C91.3321 59.044 87.8468 55.5476 83.5368 55.5476H83.5478Z" fill="#571EFA"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 665 B |
|
Before Width: | Height: | Size: 546 B After Width: | Height: | Size: 546 B |
|
Before Width: | Height: | Size: 566 B After Width: | Height: | Size: 566 B |
|
Before Width: | Height: | Size: 550 B After Width: | Height: | Size: 550 B |
|
Before Width: | Height: | Size: 49 KiB After Width: | Height: | Size: 50 KiB |
|
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.3 KiB |
5
helmfile/files/theme/files/favicon.svg
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
<svg width="111" height="111" viewBox="0 0 111 111" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<rect x="0.5" y="0.5" width="110" height="110" rx="20" fill="white"/>
|
||||||
|
<path d="M24.0718 43.8214H78.6146C82.9134 43.8214 86.4096 47.3176 86.4096 51.6164V74.9903C86.4096 79.2891 82.9134 82.7852 78.6146 82.7852H31.8667C27.568 82.7852 24.0718 79.2891 24.0718 74.9903V43.8214Z" fill="#571EFA"/>
|
||||||
|
<path d="M50.5571 36.0266H24.0718V31.354C24.0718 27.0442 27.557 23.559 31.8667 23.559H44.3343L50.5681 36.0266H50.5571Z" fill="#341291"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 534 B |
@@ -1,5 +0,0 @@
|
|||||||
<svg width="110" height="110" viewBox="0 0 110 110" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
||||||
<rect width="110" height="110" rx="20" fill="white"/>
|
|
||||||
<path d="M83.0501 33.75H26.8501L54.9501 54.75L83.0501 33.75Z" fill="#571EFA"/>
|
|
||||||
<path d="M54.95 63.65L26.65 42.35V69.15C26.65 73.05 29.85 76.25 33.75 76.25H76.25C80.15 76.25 83.35 73.05 83.35 69.15V42.35C83.35 42.35 55.05 63.65 54.95 63.65Z" fill="#571EFA" fill-opacity="0.7"/>
|
|
||||||
</svg>
|
|
||||||
|
Before Width: | Height: | Size: 438 B |
BIN
helmfile/files/theme/groupware_calendar/favicon.ico
Normal file
|
After Width: | Height: | Size: 50 KiB |
BIN
helmfile/files/theme/groupware_calendar/favicon.png
Normal file
|
After Width: | Height: | Size: 1.0 KiB |