mirror of
https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk.git
synced 2025-12-06 15:31:38 +01:00
Compare commits
36 Commits
v0.8.1
...
uv-jbornho
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4d51e59dc8 | ||
|
|
392ba9d670 | ||
|
|
0340af8b82 | ||
|
|
e1d15e4bc6 | ||
|
|
c63e725525 | ||
|
|
45715a2059 | ||
|
|
3ad81e6b92 | ||
|
|
a395759551 | ||
|
|
8aa1a7fa7d | ||
|
|
ce03400043 | ||
|
|
61d74966d0 | ||
|
|
97f7a1cafd | ||
|
|
49ad36ef4e | ||
|
|
7d0d6ea8d1 | ||
|
|
a46a632616 | ||
|
|
4b99357b21 | ||
|
|
f194f24845 | ||
|
|
be6806f62f | ||
|
|
fd3df7df67 | ||
|
|
6b609edc4a | ||
|
|
63f8394e04 | ||
|
|
74d444e2d6 | ||
|
|
8a2d951c3b | ||
|
|
46412d1a9e | ||
|
|
26a7641a5a | ||
|
|
671f57a809 | ||
|
|
fe923bb9cd | ||
|
|
b4570a9a87 | ||
|
|
1067e725b3 | ||
|
|
dfaf4be640 | ||
|
|
e54aaab072 | ||
|
|
b806d51311 | ||
|
|
db7f5d60bd | ||
|
|
972020f946 | ||
|
|
23ef1d557b | ||
|
|
382af1dfb9 |
@@ -36,9 +36,11 @@ stages:
|
|||||||
- "env-cleanup"
|
- "env-cleanup"
|
||||||
- "env"
|
- "env"
|
||||||
- "pre-services-deploy"
|
- "pre-services-deploy"
|
||||||
|
- "migrations-pre"
|
||||||
- "basic-services-deploy"
|
- "basic-services-deploy"
|
||||||
- "component-deploy-stage-1"
|
- "component-deploy-stage-1"
|
||||||
- "component-deploy-stage-2"
|
- "component-deploy-stage-2"
|
||||||
|
- "migrations-post"
|
||||||
- "lint"
|
- "lint"
|
||||||
- "tests"
|
- "tests"
|
||||||
- "env-stop"
|
- "env-stop"
|
||||||
@@ -77,6 +79,12 @@ variables:
|
|||||||
options:
|
options:
|
||||||
- "yes"
|
- "yes"
|
||||||
- "no"
|
- "no"
|
||||||
|
DEPLOY_MIGRATIONS:
|
||||||
|
description: "Deploy K8s job for migrations (pre & post)."
|
||||||
|
value: "no"
|
||||||
|
options:
|
||||||
|
- "yes"
|
||||||
|
- "no"
|
||||||
DEPLOY_SERVICES:
|
DEPLOY_SERVICES:
|
||||||
description: "Enable Service deployment."
|
description: "Enable Service deployment."
|
||||||
value: "no"
|
value: "no"
|
||||||
@@ -84,7 +92,7 @@ variables:
|
|||||||
- "yes"
|
- "yes"
|
||||||
- "no"
|
- "no"
|
||||||
DEPLOY_UMS:
|
DEPLOY_UMS:
|
||||||
description: "Enable Univention Management Stack deployment."
|
description: "Enable Nubus deployment."
|
||||||
value: "no"
|
value: "no"
|
||||||
options:
|
options:
|
||||||
- "yes"
|
- "yes"
|
||||||
@@ -208,6 +216,7 @@ env-cleanup:
|
|||||||
done
|
done
|
||||||
kubectl delete pvc --all --namespace ${NAMESPACE};
|
kubectl delete pvc --all --namespace ${NAMESPACE};
|
||||||
kubectl delete jobs --all --namespace ${NAMESPACE};
|
kubectl delete jobs --all --namespace ${NAMESPACE};
|
||||||
|
kubectl delete configmaps --all --namespace ${NAMESPACE};
|
||||||
else
|
else
|
||||||
helmfile destroy --namespace ${NAMESPACE};
|
helmfile destroy --namespace ${NAMESPACE};
|
||||||
fi
|
fi
|
||||||
@@ -250,6 +259,30 @@ policies-deploy:
|
|||||||
COMPONENT: "services"
|
COMPONENT: "services"
|
||||||
ADDITIONAL_ARGS: "-l name=opendesk-otterize"
|
ADDITIONAL_ARGS: "-l name=opendesk-otterize"
|
||||||
|
|
||||||
|
migrations-pre:
|
||||||
|
stage: "migrations-pre"
|
||||||
|
extends: ".deploy-common"
|
||||||
|
rules:
|
||||||
|
- if: >
|
||||||
|
$CI_PIPELINE_SOURCE =~ "web|schedules|trigger|api" &&
|
||||||
|
$NAMESPACE =~ /.+/ &&
|
||||||
|
($DEPLOY_ALL_COMPONENTS != "no" || $DEPLOY_MIGRATIONS != "no")
|
||||||
|
when: "on_success"
|
||||||
|
variables:
|
||||||
|
COMPONENT: "migrations-pre"
|
||||||
|
|
||||||
|
migrations-post:
|
||||||
|
stage: "migrations-post"
|
||||||
|
extends: ".deploy-common"
|
||||||
|
rules:
|
||||||
|
- if: >
|
||||||
|
$CI_PIPELINE_SOURCE =~ "web|schedules|trigger|api" &&
|
||||||
|
$NAMESPACE =~ /.+/ &&
|
||||||
|
($DEPLOY_ALL_COMPONENTS != "no" || $DEPLOY_MIGRATIONS != "no")
|
||||||
|
when: "on_success"
|
||||||
|
variables:
|
||||||
|
COMPONENT: "migrations-post"
|
||||||
|
|
||||||
services-deploy:
|
services-deploy:
|
||||||
stage: "basic-services-deploy"
|
stage: "basic-services-deploy"
|
||||||
extends: ".deploy-common"
|
extends: ".deploy-common"
|
||||||
@@ -284,7 +317,7 @@ ums-deploy:
|
|||||||
($DEPLOY_ALL_COMPONENTS != "no" || $DEPLOY_UMS != "no")
|
($DEPLOY_ALL_COMPONENTS != "no" || $DEPLOY_UMS != "no")
|
||||||
when: "on_success"
|
when: "on_success"
|
||||||
variables:
|
variables:
|
||||||
COMPONENT: "univention-management-stack"
|
COMPONENT: "nubus"
|
||||||
|
|
||||||
ox-deploy:
|
ox-deploy:
|
||||||
stage: "component-deploy-stage-1"
|
stage: "component-deploy-stage-1"
|
||||||
|
|||||||
@@ -17,12 +17,12 @@ lint-kyverno:
|
|||||||
- "intercom-service"
|
- "intercom-service"
|
||||||
- "jitsi"
|
- "jitsi"
|
||||||
- "nextcloud"
|
- "nextcloud"
|
||||||
|
- "nubus"
|
||||||
- "open-xchange"
|
- "open-xchange"
|
||||||
- "openproject"
|
- "openproject"
|
||||||
- "openproject-bootstrap"
|
- "openproject-bootstrap"
|
||||||
- "provisioning"
|
- "provisioning"
|
||||||
- "services"
|
- "services"
|
||||||
- "univention-management-stack"
|
|
||||||
- "xwiki"
|
- "xwiki"
|
||||||
script:
|
script:
|
||||||
- "cd ${CI_PROJECT_DIR}/helmfile/apps/${APP}"
|
- "cd ${CI_PROJECT_DIR}/helmfile/apps/${APP}"
|
||||||
|
|||||||
@@ -3,8 +3,8 @@ Upstream-Name: openDesk - der Souveräne Arbeitsplatz
|
|||||||
Upstream-Contact: <opendesk@zendis.de>
|
Upstream-Contact: <opendesk@zendis.de>
|
||||||
Source: https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk
|
Source: https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk
|
||||||
|
|
||||||
Files: helmfile/environments/default/theme/*
|
Files: helmfile/files/theme/*
|
||||||
Copyright: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
Copyright: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
License: Apache-2.0
|
License: Apache-2.0
|
||||||
|
|
||||||
Files: helmfile/files/gpg-pubkeys/*
|
Files: helmfile/files/gpg-pubkeys/*
|
||||||
|
|||||||
28
CHANGELOG.md
28
CHANGELOG.md
@@ -1,3 +1,31 @@
|
|||||||
|
# [0.9.0](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/compare/v0.8.1...v0.9.0) (2024-07-24)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* **collabora:** Update to 24.04.5.1.1. ([8a2d951](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/8a2d951c3b59c3f8ddb508ad8f95798774b7c4b0))
|
||||||
|
* **collabora:** Update to 24.04.5.1.2. ([74d444e](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/74d444e2d6065082be3ca90373a4d3b1836ea7a8))
|
||||||
|
* **docs:** Update workflow.md. ([fd3df7d](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/fd3df7df6740d8e54b433c039d294843582e8947))
|
||||||
|
* **docu:** Update documentation on integration uses cases ([#95](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/issues/95)). ([382af1d](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/382af1dfb966b5d10da4790212d6422a4a8c5618))
|
||||||
|
* **helmfile:** Add S3 bucket for migrations. ([972020f](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/972020f946d8238e65b1c1e2942682c797306e1a))
|
||||||
|
* **helmfile:** Streamline prefixes for customizable defaults. UPGRADES: See `./docs/migrations.md` for more details. ([26a7641](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/26a7641a5ab764196af6bbe26d97907de86f541e))
|
||||||
|
* **jitsi:** Raise memory limit for jicofo and jvb as required by upstream product. ([fe923bb](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/fe923bb9cd58873957adb018c1410d33bb4d8f3a))
|
||||||
|
* **keycloak:** Support for custom OIDC Clients and ClientScopes. ([46412d1](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/46412d1a9e4547dea8d0da3e322400ea148edf19))
|
||||||
|
* **nextcloud:** Support templating of default quota and `*_retention_obligation` settings ([#93](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/issues/93)). ([23ef1d5](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/23ef1d557bc0fdf6faac59f7a287f1ef1b302404))
|
||||||
|
* **nextcloud:** Update to 28.0.7 including latest apps for 28. ([671f57a](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/671f57a809eb4bb791698cda39f7711ac4833334))
|
||||||
|
* **nextcloud:** Update to 28.0.7 including the apps, fix admin panel warnings ([#94](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/issues/94)). Updated `cluster.networking.cidr` potentially requires manual migration, see `docs/migrations.md` for details. ([63f8394](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/63f8394e044670a89a642e933600b68ff740a102))
|
||||||
|
* **openproject:** Bump to 14.3.0 and update Helm chart to 7.0.0. ([6b609ed](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/6b609edc4a60601ca45372b4fc691f0ac7c9ed93))
|
||||||
|
* **openproject:** Support for adding token to enable OpenProject Premium. ([dfaf4be](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/dfaf4be640209f5908815cceaf29db591212ddaa))
|
||||||
|
* **xwiki:** Add email address mapping to LDAP sync; Fix hostname `null` value in notification links. ([1067e72](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/1067e725b3dabce4ddfeb60b4cbe9e5b4d0db0e5))
|
||||||
|
* **xwiki:** Remove .rtf and .odt export options as they are currently non functional. ([b806d51](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/b806d51311c6d406ea3c93842601ddf5dbd13bb3))
|
||||||
|
* **xwiki:** Update to 16.4. ([db7f5d6](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/db7f5d60bdae437cebe58ab10f928a4a348e1ee3))
|
||||||
|
* **xwiki:** Update to 16.4.1. ([e54aaab](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/e54aaab072f31713b5172e4bab9ba7e9ca9c5c26))
|
||||||
|
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
* **authentication:** Avoid that users can open a app they do not have the appropriate LDAP group set for. Implementation is based on role based client scopes. Introducing also an openDesk migration approach with a pre and post deployment stage. ([b4570a9](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/b4570a9a873efa6c896fe543ab0ba3b94fd086c0))
|
||||||
|
|
||||||
## [0.8.1](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/compare/v0.8.0...v0.8.1) (2024-07-01)
|
## [0.8.1](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/compare/v0.8.0...v0.8.1) (2024-07-01)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
10
README.md
10
README.md
@@ -33,12 +33,12 @@ openDesk currently features the following functional main components:
|
|||||||
| Chat & collaboration | Element ft. Nordeck widgets | [1.11.67](https://github.com/element-hq/element-desktop/releases/tag/v1.11.67) | [For the most recent release](https://element.io/user-guide) |
|
| Chat & collaboration | Element ft. Nordeck widgets | [1.11.67](https://github.com/element-hq/element-desktop/releases/tag/v1.11.67) | [For the most recent release](https://element.io/user-guide) |
|
||||||
| Diagram editor | CryptPad ft. diagrams.net | [5.6.0](https://github.com/cryptpad/cryptpad/releases/tag/5.6.0) | [For the most recent release](https://docs.cryptpad.org/en/) |
|
| Diagram editor | CryptPad ft. diagrams.net | [5.6.0](https://github.com/cryptpad/cryptpad/releases/tag/5.6.0) | [For the most recent release](https://docs.cryptpad.org/en/) |
|
||||||
| File management | Nextcloud | [28.0.5](https://nextcloud.com/de/changelog/#28-0-5) | [Nextcloud 28](https://docs.nextcloud.com/) |
|
| File management | Nextcloud | [28.0.5](https://nextcloud.com/de/changelog/#28-0-5) | [Nextcloud 28](https://docs.nextcloud.com/) |
|
||||||
| Groupware | OX App Suite | [8.23](https://documentation.open-xchange.com/appsuite/releases/8.23/) | Online documentation available from within the installed application; [Additional resources](https://www.open-xchange.com/resources/oxpedia) |
|
| Groupware | OX App Suite | [8.26](https://documentation.open-xchange.com/appsuite/releases/8.26/) | Online documentation available from within the installed application; [Additional resources](https://www.open-xchange.com/resources/oxpedia) |
|
||||||
| Knowledge management | XWiki | [15.10.8](https://www.xwiki.org/xwiki/bin/view/Blog/XWiki15108Released) | [For the most recent release](https://www.xwiki.org/xwiki/bin/view/Documentation) |
|
| Knowledge management | XWiki | [16.4.1](https://www.xwiki.org/xwiki/bin/view/ReleaseNotes/Data/XWiki/16.4.1/) | [For the most recent release](https://www.xwiki.org/xwiki/bin/view/Documentation) |
|
||||||
| Portal & IAM | Nubus | Product Preview[^1] | [Univention's documentation website](https://docs.software-univention.de/n/en/index.html) |
|
| Portal & IAM | Nubus | Product Preview[^1] | [Univention's documentation website](https://docs.software-univention.de/n/en/index.html) |
|
||||||
| Project management | OpenProject | [14.2.0](https://www.openproject.org/docs/release-notes/14-2-0/) | [For the most recent release](https://www.openproject.org/docs/user-guide/) |
|
| Project management | OpenProject | [14.4.0](https://www.openproject.org/docs/release-notes/14-4-0/) | [For the most recent release](https://www.openproject.org/docs/user-guide/) |
|
||||||
| Videoconferencing | Jitsi | [2.0.9457](https://github.com/jitsi/jitsi-meet/releases/tag/stable%2Fjitsi-meet_9457) | [For the most recent release](https://jitsi.github.io/handbook/docs/category/user-guide/) |
|
| Videoconferencing | Jitsi | [2.0.9646](https://github.com/jitsi/jitsi-meet/releases/tag/stable%2Fjitsi-meet_9646) | [For the most recent release](https://jitsi.github.io/handbook/docs/category/user-guide/) |
|
||||||
| Weboffice | Collabora | [24.04.4.2.1](https://www.collaboraoffice.com/code-24-04-release-notes/) | Online documentation available from within the installed application; [Additional resources](https://sdk.collaboraonline.com/) |
|
| Weboffice | Collabora | [24.04.6.1.1](https://www.collaboraoffice.com/code-24-04-release-notes/) | Online documentation available from within the installed application; [Additional resources](https://sdk.collaboraonline.com/) |
|
||||||
|
|
||||||
While not all components are perfectly shaped for the execution inside containers, one of the project's objectives is to
|
While not all components are perfectly shaped for the execution inside containers, one of the project's objectives is to
|
||||||
align the applications with best practices regarding container design and operations.
|
align the applications with best practices regarding container design and operations.
|
||||||
|
|||||||
@@ -69,7 +69,11 @@
|
|||||||
"cryptpad",
|
"cryptpad",
|
||||||
"clamav",
|
"clamav",
|
||||||
"templating",
|
"templating",
|
||||||
"localpart"
|
"localpart",
|
||||||
|
"Addressbooks",
|
||||||
|
"filestore",
|
||||||
|
"trashbin",
|
||||||
|
"bootstrap"
|
||||||
],
|
],
|
||||||
"ignoreWords": [],
|
"ignoreWords": [],
|
||||||
"import": []
|
"import": []
|
||||||
|
|||||||
@@ -10,11 +10,11 @@ This section covers the internal system requirements as well as external service
|
|||||||
<!-- TOC -->
|
<!-- TOC -->
|
||||||
* [Overview](#overview)
|
* [Overview](#overview)
|
||||||
* [Component integration](#component-integration)
|
* [Component integration](#component-integration)
|
||||||
* [Intercom Service (ICS)](#intercom-service-ics)
|
* [Intercom Service / Silent Login](#intercom-service--silent-login)
|
||||||
* [Filepicker](#filepicker)
|
* [Filepicker](#filepicker)
|
||||||
* [Central Navigation](#central-navigation)
|
* [Central Navigation](#central-navigation)
|
||||||
* [(Read \& write) Central contacts](#read--write-central-contacts)
|
* [Central Contacts](#central-contacts)
|
||||||
* [OpenProject file store](#openproject-file-store)
|
* [File Store (OpenProject -\> Nextcloud)](#file-store-openproject---nextcloud)
|
||||||
* [Identity data flows](#identity-data-flows)
|
* [Identity data flows](#identity-data-flows)
|
||||||
* [Provisioning](#provisioning)
|
* [Provisioning](#provisioning)
|
||||||
<!-- TOC -->
|
<!-- TOC -->
|
||||||
@@ -56,58 +56,91 @@ Some use cases require inter component integration.
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
OXAppSuiteFrontend-->|SilentLogin, Filepicker, CentralNavigation|IntercomService
|
OX-AppSuite_Frontend-->|Silent Login, Filepicker, Central Navigation|Intercom_Service
|
||||||
Element-->|CentralNavigation|IntercomService
|
Element-->|Silent Login, Central Navigation|Intercom_Service
|
||||||
IntercomService-->|SilentLogin, TokenExchange|IdP
|
Intercom_Service-->|Silent Login, Token Exchange|IdP
|
||||||
IntercomService-->|Filepicker|Nextcloud
|
Intercom_Service-->|Filepicker|Nextcloud
|
||||||
IntercomService-->|CentralNavigation|Portal
|
Intercom_Service-->|Central Navigation|Portal
|
||||||
OXAppSuiteBackend-->|Filepicker|Nextcloud
|
OX-AppSuite_Backend-->|Filepicker|Nextcloud
|
||||||
Nextcloud-->|CentralNavigation|Portal
|
Nextcloud-->|Central Navigation|Portal
|
||||||
OpenProject-->|CentralNavigation|Portal
|
OpenProject-->|Central Navigation|Portal
|
||||||
OpenProject-->|File store|Nextcloud
|
OpenProject-->|File Store|Nextcloud
|
||||||
XWiki-->|CentralNavigation|Portal
|
XWiki-->|Central Navigation|Portal
|
||||||
Nextcloud-->|CentralContacts|OXAppSuiteBackend
|
Nextcloud-->|Central Contacts|OX-AppSuite_Backend
|
||||||
OXAppSuiteFrontend-->|Filepicker|OXAppSuiteBackend
|
OX-AppSuite_Frontend-->|Filepicker|OX-AppSuite_Backend
|
||||||
```
|
```
|
||||||
|
|
||||||
## Intercom Service (ICS)
|
Most details can be found in the upstream documentation that is linked in the respective sections.
|
||||||
|
|
||||||
The Univention Intercom Service's role is to enable cross-application integration based on browser interaction.
|
## Intercom Service / Silent Login
|
||||||
Handling authentication when the frontend of an application is using the API from another application is often a
|
|
||||||
|
The Intercom Service's role is to enable cross-application integration based on the user's browser interaction as handling
|
||||||
|
authentication when the frontend of an application has to call the API from another application is often a
|
||||||
challenge.
|
challenge.
|
||||||
For more details on the ICS please refer to its own [doc](./components/intercom-service.md).
|
|
||||||
|
|
||||||
To establish a session with the Intercom Service, the application that wants to use the ICS must initiate a silent
|
To establish a session with the Intercom Service an application can use the silent login feature within an iframe.
|
||||||
login.
|
|
||||||
|
|
||||||
Currently only OX AppSuite is using the frontend-based integration, and therefore it is right now the only consumer of
|
Currently only OX AppSuite and Element are using the frontend based integration.
|
||||||
the ICS API.
|
|
||||||
|
**Links**
|
||||||
|
- [Intercom Service upstream documentation](https://docs.software-univention.de/intercom-service/latest/index.html).
|
||||||
|
|
||||||
## Filepicker
|
## Filepicker
|
||||||
|
|
||||||
The Nextcloud filepicker which is integrated into the OX AppSuite allows you to add attachments or links to files from
|
The Nextcloud filepicker is integrated into the OX AppSuite supporting the following use cases against the respective openDesk instance's Nextcloud:
|
||||||
and saving attachments to Nextcloud.
|
- Attaching files from Nextcloud to emails.
|
||||||
|
- Adding links of Nextcloud files to emails.
|
||||||
|
- Saving attachments from emails into Nextcloud.
|
||||||
|
- Attaching files from Nextcloud to calendar entries.
|
||||||
|
|
||||||
The filepicker is using frontend and backend based integration.
|
The filepicker is using frontend and backend based integration:
|
||||||
Frontend-based integration means that OX AppSuite in the browser is communicating with ICS.
|
- For frontend based integration the OX AppSuite frontend uses the Intercom Service.
|
||||||
While using backend-based integration, OX AppSuite middleware is communicating with Nextcloud, which is especially used
|
- Backend based integration is coming from OX AppSuite middleware. The middleware is communicating directly with Nextcloud,
|
||||||
when adding a file to an email or storing a file into Nextcloud.
|
which is used when adding a file to an email or storing a file into Nextcloud, to avoid passing these files through the user's browser.
|
||||||
|
|
||||||
|
**Links**
|
||||||
|
- [OX AppSuite Nextcloud Integration upstream documentation](https://gitlab.open-xchange.com/extensions/nextcloud-integration/-/tree/main/documentation).
|
||||||
|
|
||||||
## Central Navigation
|
## Central Navigation
|
||||||
|
|
||||||
Central navigation is based on an API endpoint in the portal that provides the contents of the portal for a user to
|
Central navigation is based on an API endpoint in the Nubus portal that returns a JSON containing the contents of the portal for
|
||||||
allow components to render the menu showing all available SWP applications for the user.
|
a given user. The response from the API endpoint is used in the openDesk applications to render the central navigation.
|
||||||
|
|
||||||
## (Read & write) Central contacts
|
The API can be called by
|
||||||
|
- frontend services through the Intercom Service's `/navigation.json` endpoint or
|
||||||
|
- backend services directly at the portal's `/univention/portal/navigation.json` endpoint.
|
||||||
|
|
||||||
Open-Xchange App Suite is used to manage contacts within openDesk. There is an API in the AppSuite that is being used by
|
The central navigation expects the API caller to present a shared secret for authentication and the username for whom the portal
|
||||||
Nextcloud to lookup contacts as well as to create contacts. This is maybe done when a file is shared with a not yet
|
contents should be returned for.
|
||||||
available personal contact.
|
|
||||||
|
|
||||||
## OpenProject file store
|
A `curl` based request returning the navigation contents looks like this:
|
||||||
|
|
||||||
By default, Nextcloud is a configured option for storing attachments in OpenProject.
|
```
|
||||||
The file store can be enabled on a per-project level in OpenProject's project admin section.
|
curl 'https://portal.<DOMAIN>/univention/portal/navigation.json?base=https%3A//portal.<DOMAIN>&language=de-DE' -u "<USERNAME>:<SHARED_SECRET>"
|
||||||
|
```
|
||||||
|
|
||||||
|
## Central Contacts
|
||||||
|
|
||||||
|
OX App Suite is managing contacts in openDesk. Therefore Nextcloud's PHP backend is using the OX AppSuite's middleware Contacts API to
|
||||||
|
- create a new contact in the user's contacts folder when a file is shared with a yet unknown email address.
|
||||||
|
- retrieve contacts from the user's contacts folder to support search-as-you-type when starting to share a file.
|
||||||
|
|
||||||
|
**Links:**
|
||||||
|
- Currently used [OX Contacts API (deprecated)](https://documentation.open-xchange.com/components/middleware/http/8/index.html#!Contacts).
|
||||||
|
- New [OX Addressbooks API](https://documentation.open-xchange.com/components/middleware/http/8/index.html#!Addressbooks) the Central Contacts integration will switch to.
|
||||||
|
|
||||||
|
## File Store (OpenProject -> Nextcloud)
|
||||||
|
|
||||||
|
While OpenProject allows you to attach files to work packages directly, it is often preferred that the files are
|
||||||
|
stored within Nextcloud or to link an existing file from your openDesk Nextcloud to a work package.
|
||||||
|
|
||||||
|
Therefore openDesk pre-configures the trust between the openDesk instance's OpenProject and Nextcloud during the `openproject-boostrap` deployment step. As prerequisite for that openDesk's Nextcloud contains the `integration_openproject` app.
|
||||||
|
|
||||||
|
The file store still needs to be enabled on a per-project level in OpenProject's project admin section.
|
||||||
|
|
||||||
|
**Links:**
|
||||||
|
- [OpenProject's documentation on Nextcloud integration](https://www.openproject.org/docs/system-admin-guide/integrations/nextcloud/)
|
||||||
|
- [OpenProject Integration Nextcloud app](https://apps.nextcloud.com/apps/integration_openproject)
|
||||||
|
|
||||||
# Identity data flows
|
# Identity data flows
|
||||||
|
|
||||||
|
|||||||
@@ -52,7 +52,7 @@ Below you will find some wrap-up notes when it comes to debugging openDesk by ad
|
|||||||
|
|
||||||
You can add a container by editing and updating an existing deployment, which is quite comfortable with tools like [Lens](https://k8slens.dev/).
|
You can add a container by editing and updating an existing deployment, which is quite comfortable with tools like [Lens](https://k8slens.dev/).
|
||||||
|
|
||||||
- Select the container you want to make use of as debugging container, in the example below it's `registry.opencode.de/bmi/opendesk/components/platform-development/images/opendesk-debugging-image:1.0.0`.
|
- Select the container you want to make use of as debugging container, in the example below it is `registry.opencode.de/bmi/opendesk/components/platform-development/images/opendesk-debugging-image:latest`.
|
||||||
- Ensure the `shareProcessNamespace` option is enabled for the Pod.
|
- Ensure the `shareProcessNamespace` option is enabled for the Pod.
|
||||||
- Reference the selected container within the `containers` array of the deployment.
|
- Reference the selected container within the `containers` array of the deployment.
|
||||||
- In case you want to access another containers filesystem, ensure the user/group settings of both containers match.
|
- In case you want to access another containers filesystem, ensure the user/group settings of both containers match.
|
||||||
@@ -121,7 +121,7 @@ Now you can add the ephemeral container with:
|
|||||||
```
|
```
|
||||||
kubectl -n ${NAMESPACE} debug -it --attach=false -c ${EPH_CONTAINER_NAME} --image={DEBUG_IMAGE} ${POD_NAME}
|
kubectl -n ${NAMESPACE} debug -it --attach=false -c ${EPH_CONTAINER_NAME} --image={DEBUG_IMAGE} ${POD_NAME}
|
||||||
```
|
```
|
||||||
and open it's interactive terminal with
|
and open its interactive terminal with
|
||||||
```
|
```
|
||||||
kubectl -n ${NAMESPACE} attach -it -c ${EPH_CONTAINER_NAME} ${POD_NAME}
|
kubectl -n ${NAMESPACE} attach -it -c ${EPH_CONTAINER_NAME} ${POD_NAME}
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -44,9 +44,9 @@ We will provide additional documents regarding user provisioning in the future,
|
|||||||
- UDM REST API:
|
- UDM REST API:
|
||||||
- Build a provisioning solution by yourself using the [UDM REST API](https://docs.software-univention.de/developer-reference/5.0/en/udm/rest-api.html).
|
- Build a provisioning solution by yourself using the [UDM REST API](https://docs.software-univention.de/developer-reference/5.0/en/udm/rest-api.html).
|
||||||
- The API gives you full control over the contents of the IAM in order to create, update or delete users and groups.
|
- The API gives you full control over the contents of the IAM in order to create, update or delete users and groups.
|
||||||
- Directory Connector:
|
- Nubus Directory Importer:
|
||||||
- It is based on a Python one-way directory synchronization for users and groups.
|
- It is based on a Python one-way directory synchronization for users and groups.
|
||||||
- We will provide more details on this approach soon one the tool is made publicly available.
|
- Please find more details in the [upstream product's documentation](https://docs.software-univention.de/nubus-kubernetes-operation/latest/en/howto-connect-external-iam.html).
|
||||||
- Ad-hoc provisioning (AHP)
|
- Ad-hoc provisioning (AHP)
|
||||||
- This feature is currently not available in the openDesk Keycloak, but there are plans by the Supplier Univention to make it available.
|
- This feature is currently not available in the openDesk Keycloak, but there are plans by the Supplier Univention to make it available.
|
||||||
- Ad-hoc provisioning creates an user account on the fly during a users first login.
|
- Ad-hoc provisioning creates an user account on the fly during a users first login.
|
||||||
@@ -146,8 +146,8 @@ The following configuration is taking place in the Keycloak realm `opendesk`.
|
|||||||
- *Client ID*: Use the client ID you took form your organization's IdP config (`opendesk-federation-client` in this example)
|
- *Client ID*: Use the client ID you took form your organization's IdP config (`opendesk-federation-client` in this example)
|
||||||
- *Client Secret*: Use the secret you took form your organization's IdP config
|
- *Client Secret*: Use the secret you took form your organization's IdP config
|
||||||
- When completed with *Add* you get to the detailed IdP configured that also needs some updates (you may need to open the *Advanced* section to access some settings)
|
- When completed with *Add* you get to the detailed IdP configured that also needs some updates (you may need to open the *Advanced* section to access some settings)
|
||||||
- *Back-channel logout*: `On`
|
- *Back-channel logout*: `On`
|
||||||
- *Disable user info*: `On`
|
- *Disable user info*: `On`
|
||||||
- *First login flow override*: `auto-federate-flow`
|
- *First login flow override*: `auto-federate-flow`
|
||||||
|
|
||||||
- In case you want to forcefully redirect all users to your organizations IdP (disabling login with local openDesk accounts):
|
- In case you want to forcefully redirect all users to your organizations IdP (disabling login with local openDesk accounts):
|
||||||
|
|||||||
@@ -37,10 +37,11 @@ If not used it is also set to `opendesk.domain.tld`.
|
|||||||
The following setting can disable federation:
|
The following setting can disable federation:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
externalServices:
|
functional:
|
||||||
matrix:
|
externalServices:
|
||||||
federation:
|
matrix:
|
||||||
enabled: false
|
federation:
|
||||||
|
enabled: false
|
||||||
```
|
```
|
||||||
|
|
||||||
## Separate Matrix domain
|
## Separate Matrix domain
|
||||||
|
|||||||
@@ -9,6 +9,10 @@ SPDX-License-Identifier: Apache-2.0
|
|||||||
* [Example configuration](#example-configuration)
|
* [Example configuration](#example-configuration)
|
||||||
* [Mail domain](#mail-domain)
|
* [Mail domain](#mail-domain)
|
||||||
* [Matrix domain](#matrix-domain)
|
* [Matrix domain](#matrix-domain)
|
||||||
|
* [DNS](#dns)
|
||||||
|
* [Webserver](#webserver)
|
||||||
|
* [Content Security Policy](#content-security-policy)
|
||||||
|
* [.well-known](#well-known)
|
||||||
|
|
||||||
# Use case
|
# Use case
|
||||||
|
|
||||||
@@ -59,7 +63,9 @@ or via environment variable
|
|||||||
export MATRIX_DOMAIN=my_organization.tld
|
export MATRIX_DOMAIN=my_organization.tld
|
||||||
```
|
```
|
||||||
|
|
||||||
This setup requires also a different DNS setup:
|
### DNS
|
||||||
|
|
||||||
|
The following changes apply to the standard DNS:
|
||||||
|
|
||||||
| Record name | Type | Value | Comment |
|
| Record name | Type | Value | Comment |
|
||||||
| -------------------------------- | ---- | -------------------------------------- | ---------------------------------------------------------------------------------- |
|
| -------------------------------- | ---- | -------------------------------------- | ---------------------------------------------------------------------------------- |
|
||||||
@@ -67,6 +73,14 @@ This setup requires also a different DNS setup:
|
|||||||
|
|
||||||
*Note:* `matrix.opendesk.domain.tld` in the "Value" column can also be the IP address where synapse TLS port is listening to.
|
*Note:* `matrix.opendesk.domain.tld` in the "Value" column can also be the IP address where synapse TLS port is listening to.
|
||||||
|
|
||||||
|
### Webserver
|
||||||
|
|
||||||
|
#### Content Security Policy
|
||||||
|
|
||||||
|
The webserver of `my_organization.tld` should add `*.opendesk.domain.tld` to its CSP header.
|
||||||
|
|
||||||
|
#### .well-known
|
||||||
|
|
||||||
If you want to use other Matrix clients,
|
If you want to use other Matrix clients,
|
||||||
e.g., Element Messenger for [iOS](https://apps.apple.com/de/app/element-messenger/id1083446067)
|
e.g., Element Messenger for [iOS](https://apps.apple.com/de/app/element-messenger/id1083446067)
|
||||||
or [Android](https://play.google.com/store/apps/details?id=im.vector.app),
|
or [Android](https://play.google.com/store/apps/details?id=im.vector.app),
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG Ze
|
|||||||
SPDX-License-Identifier: Apache-2.0
|
SPDX-License-Identifier: Apache-2.0
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<h1>Getting stated</h1>
|
<h1>Getting started</h1>
|
||||||
|
|
||||||
This documentation should enable you to create your own evaluation instance of openDesk on your Kubernetes cluster.
|
This documentation should enable you to create your own evaluation instance of openDesk on your Kubernetes cluster.
|
||||||
|
|
||||||
@@ -52,7 +52,7 @@ files.
|
|||||||
> All configuration options and their default values can be found in files at `helmfile/environments/default/`
|
> All configuration options and their default values can be found in files at `helmfile/environments/default/`
|
||||||
|
|
||||||
For the following guide, we will use `dev` as environment, where variables can be set in
|
For the following guide, we will use `dev` as environment, where variables can be set in
|
||||||
`helmfile/environments/dev/values.yaml`.
|
`helmfile/environments/dev/values.yaml.gotmpl`.
|
||||||
|
|
||||||
## DNS
|
## DNS
|
||||||
|
|
||||||
@@ -100,29 +100,29 @@ export DOMAIN=domain.tld
|
|||||||
|
|
||||||
All available apps and their default value can be found in `helmfile/environments/default/workplace.yaml`.
|
All available apps and their default value can be found in `helmfile/environments/default/workplace.yaml`.
|
||||||
|
|
||||||
| Component | Name | Default | Description |
|
| Component | Name | Default | Description |
|
||||||
| --------------------------- | ----------------------------------- | ------- | ------------------------------ |
|
| -------------------- | --------------------------- | ------- | ------------------------------ |
|
||||||
| Certificates | `certificates.enabled` | `true` | TLS certificates |
|
| Certificates | `certificates.enabled` | `true` | TLS certificates |
|
||||||
| ClamAV (Distributed) | `clamavDistributed.enabled` | `false` | Antivirus engine |
|
| ClamAV (Distributed) | `clamavDistributed.enabled` | `false` | Antivirus engine |
|
||||||
| ClamAV (Simple) | `clamavSimple.enabled` | `true` | Antivirus engine |
|
| ClamAV (Simple) | `clamavSimple.enabled` | `true` | Antivirus engine |
|
||||||
| Collabora | `collabora.enabled` | `true` | Weboffice |
|
| Collabora | `collabora.enabled` | `true` | Weboffice |
|
||||||
| CryptPad | `cryptpad.enabled` | `true` | Weboffice |
|
| CryptPad | `cryptpad.enabled` | `true` | Weboffice |
|
||||||
| Dovecot | `dovecot.enabled` | `true` | Mail backend |
|
| Dovecot | `dovecot.enabled` | `true` | Mail backend |
|
||||||
| Element | `element.enabled` | `true` | Secure communications platform |
|
| Element | `element.enabled` | `true` | Secure communications platform |
|
||||||
| Intercom Service | `intercom.enabled` | `true` | Cross service data exchange |
|
| Intercom Service | `intercom.enabled` | `true` | Cross service data exchange |
|
||||||
| Jitsi | `jitsi.enabled` | `true` | Videoconferencing |
|
| Jitsi | `jitsi.enabled` | `true` | Videoconferencing |
|
||||||
| MariaDB | `mariadb.enabled` | `true` | Database |
|
| MariaDB | `mariadb.enabled` | `true` | Database |
|
||||||
| Memcached | `memcached.enabled` | `true` | Cache Database |
|
| Memcached | `memcached.enabled` | `true` | Cache Database |
|
||||||
| MinIO | `minio.enabled` | `true` | Object Storage |
|
| MinIO | `minio.enabled` | `true` | Object Storage |
|
||||||
| Nextcloud | `nextcloud.enabled` | `true` | File share |
|
| Nextcloud | `nextcloud.enabled` | `true` | File share |
|
||||||
| OpenProject | `openproject.enabled` | `true` | Project management |
|
| Nubus | `nubus.enabled` | `true` | Identity Management & Portal |
|
||||||
| OX Appsuite | `oxAppsuite.enabled` | `true` | Groupware |
|
| OpenProject | `openproject.enabled` | `true` | Project management |
|
||||||
| Provisioning | `oxConnector.enabled` | `true` | Backend provisioning |
|
| OX Appsuite | `oxAppsuite.enabled` | `true` | Groupware |
|
||||||
| Postfix | `postfix.enabled` | `true` | MTA |
|
| Provisioning | `oxConnector.enabled` | `true` | Backend provisioning |
|
||||||
| PostgreSQL | `postgresql.enabled` | `true` | Database |
|
| Postfix | `postfix.enabled` | `true` | MTA |
|
||||||
| Redis | `redis.enabled` | `true` | Cache Database |
|
| PostgreSQL | `postgresql.enabled` | `true` | Database |
|
||||||
| Univention Management Stack | `univentionManagementStack.enabled` | `true` | Identity Management & Portal |
|
| Redis | `redis.enabled` | `true` | Cache Database |
|
||||||
| XWiki | `xwiki.enabled` | `true` | Knowledge management |
|
| XWiki | `xwiki.enabled` | `true` | Knowledge management |
|
||||||
|
|
||||||
Exemplary, Jitsi can be disabled like:
|
Exemplary, Jitsi can be disabled like:
|
||||||
|
|
||||||
@@ -195,21 +195,31 @@ If your cluster has not the default `10.0.0.0/8` CIDR configured, you need to pr
|
|||||||
```yaml
|
```yaml
|
||||||
cluster:
|
cluster:
|
||||||
networking:
|
networking:
|
||||||
cidr: "127.0.0.0/8"
|
cidr:
|
||||||
|
- "127.0.0.0/8"
|
||||||
|
```
|
||||||
|
|
||||||
|
If your load balancer / reverse proxy IPs are not already covered by the above `cidr` you need to
|
||||||
|
explicitly configure the related IPs or IP ranges:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
cluster:
|
||||||
|
networking:
|
||||||
|
incomingCIDR:
|
||||||
|
- "172.16.0.0/12"
|
||||||
```
|
```
|
||||||
|
|
||||||
### Ingress
|
### Ingress
|
||||||
|
|
||||||
By default, the `ingressClassName` is empty to choose your default ingress controller, you may want to customize it by
|
By default, the `ingressClassName` is empty to choose your default ingress controller. You may want to customize it by
|
||||||
setting:
|
setting the following attribute to the name of the currently only supported ingress controller `ingress-nginx` (see
|
||||||
|
[requirements.md](./requirements.md)) for reference) within your deployment if that is not the clusters default ingress.
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
ingress:
|
ingress:
|
||||||
ingressClassName: "cilium"
|
ingressClassName: "name-of-my-nginx-ingress"
|
||||||
```
|
```
|
||||||
|
|
||||||
**Note:** Please check the [requirements.md](./requirements.md) for the supported Ingress controllers.
|
|
||||||
|
|
||||||
### Container runtime
|
### Container runtime
|
||||||
|
|
||||||
Some apps require specific configuration for the container runtime. You can set your container runtime like `cri-o`,
|
Some apps require specific configuration for the container runtime. You can set your container runtime like `cri-o`,
|
||||||
@@ -377,8 +387,7 @@ When all apps are successfully deployed and pod status' went to `Running` or `Su
|
|||||||
https://portal.domain.tld
|
https://portal.domain.tld
|
||||||
```
|
```
|
||||||
|
|
||||||
If you change the subdomain of `univentionManagementStack`, you need to replace `portal`
|
If you change the subdomain of `nubus`, you need to replace `portal` by your specified subdomain.
|
||||||
by your specified subdomain.
|
|
||||||
|
|
||||||
**Credentials:**
|
**Credentials:**
|
||||||
|
|
||||||
|
|||||||
97
docs/migrations.md
Normal file
97
docs/migrations.md
Normal file
@@ -0,0 +1,97 @@
|
|||||||
|
<!--
|
||||||
|
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
-->
|
||||||
|
|
||||||
|
<h1>Upgrade migrations</h1>
|
||||||
|
|
||||||
|
* [Disclaimer](#disclaimer)
|
||||||
|
* [Releases upgrades](#releases-upgrades)
|
||||||
|
* [From v0.9.0](#from-v090)
|
||||||
|
* [Automated migrations](#automated-migrations)
|
||||||
|
* [Updated IAM component Nubus](#updated-iam-component-nubus)
|
||||||
|
* [Manual cleanup](#manual-cleanup)
|
||||||
|
* [From v0.8.1](#from-v081)
|
||||||
|
* [Updated `cluster.networking.cidr`](#updated-clusternetworkingcidr)
|
||||||
|
* [Updated customizable template attributes](#updated-customizable-template-attributes)
|
||||||
|
* [`migrations` S3 bucket](#migrations-s3-bucket)
|
||||||
|
* [Related components and artefacts](#related-components-and-artefacts)
|
||||||
|
* [Development](#development)
|
||||||
|
|
||||||
|
# Disclaimer
|
||||||
|
|
||||||
|
We do not offer support for upgrades before we reach openDesk 1.0.
|
||||||
|
|
||||||
|
Though we try to ease the pain when it comes to 0.x upgrades. That is what this document is for.
|
||||||
|
|
||||||
|
Limitations:
|
||||||
|
- We assume that the PV reclaim policy is set to `delete`, so expect that PVs get deleted as soon as the related PVC was deleted and will cover an explicit delete for PVs.
|
||||||
|
|
||||||
|
# Releases upgrades
|
||||||
|
|
||||||
|
## From v0.9.0
|
||||||
|
|
||||||
|
### Automated migrations
|
||||||
|
|
||||||
|
#### Updated IAM component Nubus
|
||||||
|
|
||||||
|
openDesk is integrating the latest [Nubus](https://www.univention.de/produkte/nubus/) development from Univention. The now redundant and scalable LDAP requires migration activities. These have been automated to avoid manual interaction. The `run_2` of the openDesk
|
||||||
|
upgrade migrations executes the following steps:
|
||||||
|
|
||||||
|
- Stage PRE:
|
||||||
|
- Delete service `ums-keycloak`, as it will be recreated headless.
|
||||||
|
- Scale down `statefulset/ums-ldap-server` and `statefulset/ums-ldap-notifier` in preparation or the next step:
|
||||||
|
- Create two new PVCs `shared-data-ums-ldap-server-primary-0` and `shared-data-ums-ldap-server-primary-1` for the new LDAP primary pods as copy from the existing `shared-data-ums-ldap-server-0`. The LDAP secondaries will sync from the primary nodes.
|
||||||
|
- Stage POST:
|
||||||
|
- Restart Keycloak.
|
||||||
|
|
||||||
|
##### Manual cleanup
|
||||||
|
|
||||||
|
Currently we do not execute possible cleanup steps as part of the migrations POST stage. So you might want to remove the no longer used PVCs after successful upgrade:
|
||||||
|
```
|
||||||
|
NAMESPACE=<your_namespace>
|
||||||
|
kubectl -n ${NAMESPACE} delete pvc shared-data-ums-ldap-server-0
|
||||||
|
kubectl -n ${NAMESPACE} delete pvc shared-run-ums-ldap-server-0
|
||||||
|
```
|
||||||
|
|
||||||
|
## From v0.8.1
|
||||||
|
|
||||||
|
### Updated `cluster.networking.cidr`
|
||||||
|
|
||||||
|
- Action: `cluster.networking.cidr` is now an array (was a string until 0.8.1), please update your setup accordingly if you explicitly set this value.
|
||||||
|
- Reference:[cluster.yaml](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/blob/main/helmfile/environments/default/cluster.yaml)
|
||||||
|
|
||||||
|
### Updated customizable template attributes
|
||||||
|
|
||||||
|
- Action: Please ensure you update you custom deployment values according with the updated default value structure.
|
||||||
|
- References:
|
||||||
|
- `functional.` prefix for `authentication.*`, `externalServices.*`, `admin.*` and `filestore.*`, see [functional.yaml](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/blob/main/helmfile/environments/default/functional.yaml).
|
||||||
|
- `debug.` prefix for `cleanup.*`, see [debug.yaml](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/blob/main/helmfile/environments/default/debug.yaml).
|
||||||
|
- `monitoring.` prefix for `prometheus.*` and `graphana.*`, see [monitoring.yaml](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/blob/main/helmfile/environments/default/monitoring.yaml).
|
||||||
|
- `smtp.` prefix for `localpartNoReply`, see [smtp.yaml](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/blob/main/helmfile/environments/default/smtp.yaml).
|
||||||
|
|
||||||
|
### `migrations` S3 bucket
|
||||||
|
|
||||||
|
- Action: For self managed/external S3/object storages, please ensure you add a bucket `migrations` to your S3.
|
||||||
|
- Reference: `objectstores.migrations` in [objectstores.yaml](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/blob/main/helmfile/environments/default/objectstores.yaml)
|
||||||
|
|
||||||
|
# Related components and artefacts
|
||||||
|
|
||||||
|
openDesk comes with two upgrade steps as part of the deployment, they can be found in the folder [/helmfile/apps](../helmfile/apps/) as all other components:
|
||||||
|
|
||||||
|
- `migrations-pre`: Is the very first app that gets deployed.
|
||||||
|
- `migrations-post`: Is the last app that gets deployed.
|
||||||
|
|
||||||
|
Both migrations have to be deployed exclusively at their first/last position and not in parallel with other components.
|
||||||
|
|
||||||
|
The status of the upgrade migrations is tracked in the ConfigMap `migrations-status`, more details can be found in the [README.md of the related container image](https://gitlab.opencode.de/bmi/opendesk/components/platform-development/images/opendesk-migrations/README.md).
|
||||||
|
|
||||||
|
## Development
|
||||||
|
|
||||||
|
When a new upgrade migration is required, ensure to address the following list:
|
||||||
|
|
||||||
|
- Update the generated release version file [`global.generated.yaml`](../helmfile/environments/default/global.generated.yaml) at least on the patch level to test the upgrade in your feature branch as well as trigger it in the `develop` branch after the feature branch was merged. The set value gets overwritten during the release process with the release's actual version number.
|
||||||
|
- You have to implement the migration logic as a runner script in the [`opendesk-migrations`](https://gitlab.opencode.de/bmi/opendesk/components/platform-development/images/opendesk-migrations) image. Please find more instructions in the linked repository.
|
||||||
|
- You most likely have to update the [`opendesk-migrations` Helm chart](https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-migrations) within the `rules` section of the [`role.yaml`](https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-migrations/-/blob/main/charts/opendesk-migrations/templates/role.yaml) to provide the permissions required for the execution of your migration's logic.
|
||||||
|
- You have to set the runner's ID you want to execute in the [migrations.yaml.gotmpl](../helmfile/shared/migrations.yaml.gotmpl). See also the `migrations.*` section of [the Helm chart's README.md](https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-migrations/-/blob/main/charts/opendesk-migrations/README.md).
|
||||||
|
- Update the [`charts.yaml`](../helmfile/environments/default/charts.yaml) and [`images.yaml`](../helmfile/environments/default/images.yaml) to reflect the newer releases of the `opendesk-migrations` Helm chart and container image.
|
||||||
@@ -33,11 +33,13 @@ openDesk is a Kubernetes only solution and requires an existing Kubernetes (K8s)
|
|||||||
|
|
||||||
The following minimal requirements are thought for initial evaluation deployment:
|
The following minimal requirements are thought for initial evaluation deployment:
|
||||||
|
|
||||||
| Spec | Value |
|
| Spec | Value |
|
||||||
|------|------------------------------------------------------|
|
| ---- | ----------------------------------------------------- |
|
||||||
| CPU | 8 Cores of x64 or x86 CPU (ARM is not supported yet) |
|
| CPU | 12 Cores of x64 or x86 CPU (ARM is not supported yet) |
|
||||||
| RAM | 16 GB, recommended 32 GB |
|
| RAM | 32 GB, more recommended |
|
||||||
| Disk | HDD or SSD, >10 GB |
|
| Disk | HDD or SSD, >10 GB |
|
||||||
|
|
||||||
|
Check [`scaling.md`](./scaling.md) for more details on resource requirements and scalability.
|
||||||
|
|
||||||
# Kubernetes
|
# Kubernetes
|
||||||
|
|
||||||
|
|||||||
@@ -7,55 +7,17 @@ SPDX-License-Identifier: Apache-2.0
|
|||||||
|
|
||||||
This document should cover the abilities to scale apps.
|
This document should cover the abilities to scale apps.
|
||||||
|
|
||||||
<!-- TOC -->
|
# Horizontal scalability
|
||||||
* [Replicas](#replicas)
|
|
||||||
<!-- TOC -->
|
|
||||||
|
|
||||||
# Replicas
|
We are working on generating this document automatically based on the file
|
||||||
|
[`replicas.yaml`](../helmfile/environments/default/replicas.yaml) that contains necessary annotations.
|
||||||
|
In the meantime this file can be used to check the components scaling support / capabilities.
|
||||||
|
|
||||||
The Replicas can be increased of almost any component, but is only effective for high-availability or load-balancing for
|
# Upstream information
|
||||||
apps with a check-mark in `Scaling (effective)` column.
|
|
||||||
|
|
||||||
Verified positive effects are marked with a check-mark in `Scaling (verified)` column, apps which are not yet tested are
|
While scaling services horizontally is the ideal solution, information about vertical scaling is helpful
|
||||||
marked with a gear.
|
when it comes to defining the applications resources, see [`resources.yaml`](../helmfile/environments/default/resources.yaml) for references.
|
||||||
|
|
||||||
|
Please find below links to the application's upstream resources about scaling:
|
||||||
|
|
||||||
| Component | Name | Scaling (effective) | Scaling (verified) |
|
- [OpenProject system requirements](https://www.openproject.org/docs/installation-and-operations/system-requirements/)
|
||||||
|-----------------------------|------------------------------------------|:-------------------:|:------------------:|
|
|
||||||
| ClamAV | `replicas.clamav` | :white_check_mark: | :white_check_mark: |
|
|
||||||
| | `replicas.clamd` | :white_check_mark: | :white_check_mark: |
|
|
||||||
| | `replicas.freshclam` | :x: | :x: |
|
|
||||||
| | `replicas.icap` | :white_check_mark: | :white_check_mark: |
|
|
||||||
| | `replicas.milter` | :white_check_mark: | :white_check_mark: |
|
|
||||||
| Collabora | `replicas.collabora` | :white_check_mark: | :gear: |
|
|
||||||
| CryptPad | `replicas.cryptpad` | :white_check_mark: | :gear: |
|
|
||||||
| Dovecot | `replicas.dovecot` | :x: | :gear: |
|
|
||||||
| Element | `replicas.element` | :white_check_mark: | :white_check_mark: |
|
|
||||||
| | `replicas.matrixNeoBoardWidget` | :white_check_mark: | :gear: |
|
|
||||||
| | `replicas.matrixNeoChoiceWidget` | :white_check_mark: | :gear: |
|
|
||||||
| | `replicas.matrixNeoDateFixBot` | :white_check_mark: | :gear: |
|
|
||||||
| | `replicas.matrixNeoDateFixWidget` | :white_check_mark: | :gear: |
|
|
||||||
| | `replicas.matrixUserVerificationService` | :white_check_mark: | :gear: |
|
|
||||||
| | `replicas.synapse` | :x: | :gear: |
|
|
||||||
| | `replicas.synapseWeb` | :white_check_mark: | :white_check_mark: |
|
|
||||||
| | `replicas.wellKnown` | :white_check_mark: | :white_check_mark: |
|
|
||||||
| Intercom Service | `replicas.intercomService` | :white_check_mark: | :white_check_mark: |
|
|
||||||
| Jitsi | `replicas.jibri` | :white_check_mark: | :gear: |
|
|
||||||
| | `replicas.jicofo` | :white_check_mark: | :gear: |
|
|
||||||
| | `replicas.jitsi ` | :white_check_mark: | :gear: |
|
|
||||||
| | `replicas.jitsiKeycloakAdapter` | :white_check_mark: | :gear: |
|
|
||||||
| | `replicas.jvb ` | :x: | :x: |
|
|
||||||
| Keycloak | `replicas.keycloak` | :white_check_mark: | :gear: |
|
|
||||||
| Memcached | `replicas.memcached` | :gear: | :gear: |
|
|
||||||
| Minio | `replicas.minioDistributed` | :white_check_mark: | :white_check_mark: |
|
|
||||||
| Nextcloud | `replicas.nextcloudApache2` | :white_check_mark: | :white_check_mark: |
|
|
||||||
| | `replicas.nextcloudExporter` | :white_check_mark: | :white_check_mark: |
|
|
||||||
| | `replicas.nextcloudPHP` | :white_check_mark: | :white_check_mark: |
|
|
||||||
| OpenProject | `replicas.openproject` | :white_check_mark: | :white_check_mark: |
|
|
||||||
| Postfix | `replicas.postfix` | :x: | :gear: |
|
|
||||||
| Redis | `replicas.redis` | :gear: | :gear: |
|
|
||||||
| Univention Management Stack | | :gear: | :gear: |
|
|
||||||
| | `replicas.umsPortalFrontend` | :white_check_mark: | :white_check_mark: |
|
|
||||||
| | `replicas.umsPortalServer` | :white_check_mark: | :white_check_mark: |
|
|
||||||
| | `replicas.umsUdmRestApi` | :white_check_mark: | :white_check_mark: |
|
|
||||||
| XWiki | `replicas.xwiki` | :x: | :gear: |
|
|
||||||
|
|||||||
@@ -22,8 +22,8 @@ SPDX-License-Identifier: Apache-2.0
|
|||||||
* [Branch workflows](#branch-workflows)
|
* [Branch workflows](#branch-workflows)
|
||||||
* [`main`](#main)
|
* [`main`](#main)
|
||||||
* [`develop`](#develop)
|
* [`develop`](#develop)
|
||||||
* [`docu`](#docu)
|
* [`docs`](#docs)
|
||||||
* [`mntn`](#mntn)
|
* [`fix`](#fix)
|
||||||
* [`feat`](#feat)
|
* [`feat`](#feat)
|
||||||
* [Branch names](#branch-names)
|
* [Branch names](#branch-names)
|
||||||
* [Commit messages / Conventional Commits](#commit-messages--conventional-commits)
|
* [Commit messages / Conventional Commits](#commit-messages--conventional-commits)
|
||||||
@@ -169,8 +169,8 @@ The basic facts for the flow are:
|
|||||||
- Developers can create sub-branches from their feature branch(es) as needed.
|
- Developers can create sub-branches from their feature branch(es) as needed.
|
||||||
- When a *feature* branch gets pushed a Merge Request in `Draft` state is automatically created.
|
- When a *feature* branch gets pushed a Merge Request in `Draft` state is automatically created.
|
||||||
- We know three types of *feature* branches:
|
- We know three types of *feature* branches:
|
||||||
- `docu`: Doing just documentation changes
|
- `docs`: Doing just documentation changes
|
||||||
- `mntn`: Maintenance of the openDesk software components and minor configurational changes
|
- `fix`: Maintenance of the openDesk software components and minor configurational changes
|
||||||
- `feat`: All changes that do not fall into the two categories above, especially
|
- `feat`: All changes that do not fall into the two categories above, especially
|
||||||
- supplier deliverables and
|
- supplier deliverables and
|
||||||
- configurational changes that have a significant impact on openDesk users or require migrations[^1]
|
- configurational changes that have a significant impact on openDesk users or require migrations[^1]
|
||||||
@@ -185,21 +185,21 @@ gitGraph
|
|||||||
checkout "develop"
|
checkout "develop"
|
||||||
commit id: "QA 'nightly develop'"
|
commit id: "QA 'nightly develop'"
|
||||||
commit id: " "
|
commit id: " "
|
||||||
branch "docu"
|
branch "docs"
|
||||||
checkout "docu"
|
checkout "docs"
|
||||||
commit id: "Documentation commits" type: HIGHLIGHT
|
commit id: "Documentation commits" type: HIGHLIGHT
|
||||||
checkout "develop"
|
checkout "develop"
|
||||||
merge "docu"
|
merge "docs"
|
||||||
checkout "main"
|
checkout "main"
|
||||||
merge "develop" tag: "No release"
|
merge "develop" tag: "No release"
|
||||||
checkout "develop"
|
checkout "develop"
|
||||||
commit id: " "
|
commit id: " "
|
||||||
branch "mntn"
|
branch "fix"
|
||||||
checkout "mntn"
|
checkout "fix"
|
||||||
commit id: "Maintenance commits" type: HIGHLIGHT
|
commit id: "Maintenance commits" type: HIGHLIGHT
|
||||||
commit id: "QG 'mntn'" type: REVERSE
|
commit id: "QG 'fix'" type: REVERSE
|
||||||
checkout "develop"
|
checkout "develop"
|
||||||
merge "mntn"
|
merge "fix"
|
||||||
commit id: "QA 'release merge'" type: REVERSE
|
commit id: "QA 'release merge'" type: REVERSE
|
||||||
checkout "main"
|
checkout "main"
|
||||||
merge "develop" tag: "Patch or minor release"
|
merge "develop" tag: "Patch or minor release"
|
||||||
@@ -231,7 +231,7 @@ The Standard Quality Gate addresses quality assurance steps that should be execu
|
|||||||
1. Linting
|
1. Linting
|
||||||
- Blocking
|
- Blocking
|
||||||
- Licensing: [reuse](https://github.com/fsfe/reuse-tool)
|
- Licensing: [reuse](https://github.com/fsfe/reuse-tool)
|
||||||
- openDesk specific: Especially `images.yaml` and `charts.yaml`, find more details in the [development](./development.md) docu
|
- openDesk specific: Especially `images.yaml` and `charts.yaml`, find more details in [development.md](./development.md).
|
||||||
- Non Blocking
|
- Non Blocking
|
||||||
- Security: [Kyverno policy check](../.kyverno) addressing some IT-Grundschutz requirements
|
- Security: [Kyverno policy check](../.kyverno) addressing some IT-Grundschutz requirements
|
||||||
- Formal: Yaml
|
- Formal: Yaml
|
||||||
@@ -277,8 +277,8 @@ This section will explain the workflow for each branch (type) based on the Gitfl
|
|||||||
|
|
||||||
- `QA 'nightly main'`: Execute the SQG based on the most recent release. The upgrade test environment should be a long-standing environment that only gets built from scratch with the previous technical release when something breaks the environment.
|
- `QA 'nightly main'`: Execute the SQG based on the most recent release. The upgrade test environment should be a long-standing environment that only gets built from scratch with the previous technical release when something breaks the environment.
|
||||||
- Merge points: We are using the [Semantic Release convention](https://github.com/semantic-release/semantic-release) which itself is based on the [Semantic Versioning (SemVer) notation](https://semver.org) to automatically create technical releases on the merge points.
|
- Merge points: We are using the [Semantic Release convention](https://github.com/semantic-release/semantic-release) which itself is based on the [Semantic Versioning (SemVer) notation](https://semver.org) to automatically create technical releases on the merge points.
|
||||||
- "No release": When a merge from `develop` includes only changes from `docu` branches the merge into `main` will only consist of `docs` or `chore` commits. No new release will be generated by that merge.
|
- "No release": When a merge from `develop` includes only changes from `docs` branches the merge into `main` will only consist of `docs` or `chore` commits. No new release will be generated by that merge.
|
||||||
- "Patch or minor release": When changes from `mntn` branches get merged these might contain `fix` or `feat` commits causing a new technical release to be built with an updated version on Patch or Minor level.
|
- "Patch or minor release": When changes from `fix` branches get merged these might contain `fix` or `feat` commits causing a new technical release to be built with an updated version on Patch or Minor level.
|
||||||
- "Minor or major release": When changes from `feat` branches get merged these might contain `feat` commits even with breaking changes, causing a technical release to be built with an updated version on Minor or Major level.
|
- "Minor or major release": When changes from `feat` branches get merged these might contain `feat` commits even with breaking changes, causing a technical release to be built with an updated version on Minor or Major level.
|
||||||
- "Manual Functional Release Activities": Technical releases are loosely coupled to functional releases. The additional activities for a functional release select an existing technical release as a basis to generate the artifacts required for a functional release, for example:
|
- "Manual Functional Release Activities": Technical releases are loosely coupled to functional releases. The additional activities for a functional release select an existing technical release as a basis to generate the artifacts required for a functional release, for example:
|
||||||
- Conduct additional manual explorative and regression tests.
|
- Conduct additional manual explorative and regression tests.
|
||||||
@@ -289,19 +289,19 @@ This section will explain the workflow for each branch (type) based on the Gitfl
|
|||||||
- `QA 'nightly develop'`: Follows the same approach as `QA 'nightly main'` - execute the SQG based in this case on the head revision of the `develop` branch.
|
- `QA 'nightly develop'`: Follows the same approach as `QA 'nightly main'` - execute the SQG based in this case on the head revision of the `develop` branch.
|
||||||
- `QA 'release merge'`: The Merge Request for this merge has to be created manually by members of the platform development team. It should document:
|
- `QA 'release merge'`: The Merge Request for this merge has to be created manually by members of the platform development team. It should document:
|
||||||
- That the SQG was successfully executed upon the to-be merged state - it could be done explicitly or based on a `QA 'nightly develop'`
|
- That the SQG was successfully executed upon the to-be merged state - it could be done explicitly or based on a `QA 'nightly develop'`
|
||||||
- In case of `mntn` changes that usually how no test automation: Changes have been verified by a member of the platform development team.
|
- In case of `fix` changes that usually how no test automation: Changes have been verified by a member of the platform development team.
|
||||||
- That the changes have been reviewed by at least two members of the platform development team giving their approval on the Merge Request.
|
- That the changes have been reviewed by at least two members of the platform development team giving their approval on the Merge Request.
|
||||||
- Merge points (from `docu`, `mntn`, and `feat` branches): No additional activity on these merge points as the QA is ensured before the merge in the just-named branch types.
|
- Merge points (from `docs`, `fix`, and `feat` branches): No additional activity on these merge points as the QA is ensured before the merge in the just-named branch types.
|
||||||
|
|
||||||
##### `docu`
|
##### `docs`
|
||||||
|
|
||||||
Branches of type `docu` only contain the commits themselves and have to adhere to the workflow basic fact that:
|
Branches of type `docs` only contain the commits themselves and have to adhere to the workflow basic fact that:
|
||||||
> All merges into `develop` or `main` require two approvals from the platform development team.
|
> All merges into `develop` or `main` require two approvals from the platform development team.
|
||||||
|
|
||||||
##### `mntn`
|
##### `fix`
|
||||||
|
|
||||||
Besides the actual changes being committed in an `mntn` branch there is only the:
|
Besides the actual changes being committed in an `fix` branch there is only the:
|
||||||
- `QG 'mntn'`: In addition to validating the actual change the owner of the branch has to ensure the successful execution of the SQG.
|
- `QG 'fix'`: In addition to validating the actual change the owner of the branch has to ensure the successful execution of the SQG.
|
||||||
|
|
||||||
##### `feat`
|
##### `feat`
|
||||||
|
|
||||||
@@ -318,47 +318,29 @@ This branch type requires the most activities on top of the actual development:
|
|||||||
|
|
||||||
#### Branch names
|
#### Branch names
|
||||||
|
|
||||||
Branches created from the `develop` branch have to adhere to the following notation: `<party[-developer]>/<type>/<component>/<details>`:
|
Branches created from the `develop` branch have to adhere to the following notation: `<type>/<responsible_developer>/<details>`:
|
||||||
|
|
||||||
- `<party[-developer]>`: An identifier for the developing party optionally plus the name of the developer or team working on that branch. The following two-letter shorthand notations should be used for the owner:
|
- `<type>`: From the list of branch types explained above:
|
||||||
- Suppliers
|
- `docs`
|
||||||
- `co`: Collabora
|
- `fix`
|
||||||
- `cp`: CryptPad
|
|
||||||
- `el`: Element
|
|
||||||
- `nc`: Nextcloud
|
|
||||||
- `nd`: Nordeck
|
|
||||||
- `op`: OpenProject
|
|
||||||
- `ox`: Open-Xchange
|
|
||||||
- `uv`: Univention
|
|
||||||
- `xw`: XWiki
|
|
||||||
- Other
|
|
||||||
- `pd`: (openDesk) Platform Development
|
|
||||||
- `xx`: Other, not one of the parties mentioned before
|
|
||||||
|
|
||||||
- `<type>`: Based on the branch types described in this document valid values for type are
|
|
||||||
- `docu`
|
|
||||||
- `mntn`
|
|
||||||
- `feat`
|
- `feat`
|
||||||
|
- `<responsible_developer>`: Something that makes you identifiable as owner of the branch, e.g. the first letter of your first name followed by your family name.
|
||||||
- `<component>`: Valid components are
|
- `<details>`: A very short note about what is going to happen in the branch and ideally what component is affected from the following list of components:
|
||||||
- `helmfile`
|
- `helmfile`
|
||||||
- `ci`
|
- `ci`
|
||||||
- `cross-functional`
|
|
||||||
- `docs`
|
- `docs`
|
||||||
- `collabora`
|
- `collabora`
|
||||||
- `cryptpad`
|
- `cryptpad`
|
||||||
- `element`
|
- `element`
|
||||||
- `jitsi`
|
- `jitsi`
|
||||||
- `nextcloud`
|
- `nextcloud`
|
||||||
|
- `nubus`
|
||||||
- `open-xchange`
|
- `open-xchange`
|
||||||
- `openproject`
|
- `openproject`
|
||||||
- `services`
|
- `services`
|
||||||
- `univention-management-stack`
|
|
||||||
- `xwiki`
|
- `xwiki`
|
||||||
|
|
||||||
- `<details>`: A very short note about what is going to happen in the branch
|
Example: `feat/tmueller/bump_nextcloud_to_29.0.0`.
|
||||||
|
|
||||||
Example: `pd-tom/fix/open-xchange/bump_to_8.76`.
|
|
||||||
|
|
||||||
**Note**: The above naming convention is not enforced yet, but please ensure you make use of it.
|
**Note**: The above naming convention is not enforced yet, but please ensure you make use of it.
|
||||||
|
|
||||||
@@ -367,7 +349,7 @@ Example: `pd-tom/fix/open-xchange/bump_to_8.76`.
|
|||||||
Commit messages must adhere to the [Conventional Commit standard](https://www.conventionalcommits.org/en/v1.0.0/#summary). Commits that do not adhere to the standard get rejected by either [Gitlab push rules](https://docs.gitlab.com/ee/user/project/repository/push_rules.html) or the CI.
|
Commit messages must adhere to the [Conventional Commit standard](https://www.conventionalcommits.org/en/v1.0.0/#summary). Commits that do not adhere to the standard get rejected by either [Gitlab push rules](https://docs.gitlab.com/ee/user/project/repository/push_rules.html) or the CI.
|
||||||
|
|
||||||
```text
|
```text
|
||||||
<type>(<scope>): [path/to/issue#1] <short summary>
|
<type>(<scope>): [path/to/issue#1] <short summary>.
|
||||||
│ │ │ │
|
│ │ │ │
|
||||||
│ │ | └─> Summary in present tense, sentence case, with no period at the end
|
│ │ | └─> Summary in present tense, sentence case, with no period at the end
|
||||||
│ │ |
|
│ │ |
|
||||||
@@ -378,7 +360,7 @@ Commit messages must adhere to the [Conventional Commit standard](https://www.co
|
|||||||
└─> Commit Type: chore, ci, docs, feat, fix
|
└─> Commit Type: chore, ci, docs, feat, fix
|
||||||
```
|
```
|
||||||
|
|
||||||
Example: `fix(univention-management-stack): Update standard session timeout of openDesk realm in Keycloak`
|
Example: `fix(open-xchange): Bump to 8.26 to heal issue with functional mailbox provisioning.`
|
||||||
|
|
||||||
**Beware**: The commit messages are an essential part of the [technical releases](https://gitlab.opencode.de/bmi/opendesk/deployment/sovereign-workplace/-/releases) as the release's notes are generated from the messages.
|
**Beware**: The commit messages are an essential part of the [technical releases](https://gitlab.opencode.de/bmi/opendesk/deployment/sovereign-workplace/-/releases) as the release's notes are generated from the messages.
|
||||||
|
|
||||||
|
|||||||
@@ -17,11 +17,11 @@ fullnameOverride: "collabora"
|
|||||||
|
|
||||||
grafana:
|
grafana:
|
||||||
dashboards:
|
dashboards:
|
||||||
enabled: {{ .Values.grafana.dashboards.enabled }}
|
enabled: {{ .Values.monitoring.grafana.dashboards.enabled }}
|
||||||
labels:
|
labels:
|
||||||
{{ .Values.grafana.dashboards.labels | toYaml | nindent 6 }}
|
{{ .Values.monitoring.grafana.dashboards.labels | toYaml | nindent 6 }}
|
||||||
annotations:
|
annotations:
|
||||||
{{ .Values.grafana.dashboards.annotations | toYaml | nindent 6 }}
|
{{ .Values.monitoring.grafana.dashboards.annotations | toYaml | nindent 6 }}
|
||||||
|
|
||||||
image:
|
image:
|
||||||
repository: "{{ .Values.global.imageRegistry | default .Values.images.collabora.registry }}/{{ .Values.images.collabora.repository }}"
|
repository: "{{ .Values.global.imageRegistry | default .Values.images.collabora.registry }}/{{ .Values.images.collabora.repository }}"
|
||||||
@@ -88,13 +88,13 @@ podSecurityContext:
|
|||||||
|
|
||||||
prometheus:
|
prometheus:
|
||||||
servicemonitor:
|
servicemonitor:
|
||||||
enabled: {{ .Values.prometheus.serviceMonitors.enabled }}
|
enabled: {{ .Values.monitoring.prometheus.serviceMonitors.enabled }}
|
||||||
labels:
|
labels:
|
||||||
{{ .Values.prometheus.serviceMonitors.labels | toYaml | nindent 6 }}
|
{{ .Values.monitoring.prometheus.serviceMonitors.labels | toYaml | nindent 6 }}
|
||||||
rules:
|
rules:
|
||||||
enabled: {{ .Values.prometheus.prometheusRules.enabled }}
|
enabled: {{ .Values.monitoring.prometheus.prometheusRules.enabled }}
|
||||||
additionalLabels:
|
additionalLabels:
|
||||||
{{ .Values.prometheus.prometheusRules.labels | toYaml | nindent 6 }}
|
{{ .Values.monitoring.prometheus.prometheusRules.labels | toYaml | nindent 6 }}
|
||||||
|
|
||||||
replicaCount: {{ .Values.replicas.collabora }}
|
replicaCount: {{ .Values.replicas.collabora }}
|
||||||
|
|
||||||
|
|||||||
@@ -5,15 +5,15 @@
|
|||||||
configuration:
|
configuration:
|
||||||
endToEndEncryption: true
|
endToEndEncryption: true
|
||||||
additionalConfiguration:
|
additionalConfiguration:
|
||||||
logout_redirect_url: "https://{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}/realms/{{ .Values.platform.realm }}/protocol/openid-connect/logout?client_id=matrix&post_logout_redirect_uri=https%3A%2F%2F{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}"
|
logout_redirect_url: "https://{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}/realms/{{ .Values.platform.realm }}/protocol/openid-connect/logout?client_id=matrix&post_logout_redirect_uri=https%3A%2F%2F{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}"
|
||||||
|
|
||||||
"net.nordeck.element_web.module.opendesk":
|
"net.nordeck.element_web.module.opendesk":
|
||||||
config:
|
config:
|
||||||
banner:
|
banner:
|
||||||
ics_navigation_json_url: "https://{{ .Values.global.hosts.intercomService }}.{{ .Values.global.domain }}/navigation.json"
|
ics_navigation_json_url: "https://{{ .Values.global.hosts.intercomService }}.{{ .Values.global.domain }}/navigation.json"
|
||||||
ics_silent_url: "https://{{ .Values.global.hosts.intercomService }}.{{ .Values.global.domain }}/silent"
|
ics_silent_url: "https://{{ .Values.global.hosts.intercomService }}.{{ .Values.global.domain }}/silent"
|
||||||
portal_logo_svg_url: "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}/univention/portal/icons/logos/domain.svg"
|
portal_logo_svg_url: "https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/univention/portal/icons/logos/domain.svg"
|
||||||
portal_url: "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}/"
|
portal_url: "https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/"
|
||||||
custom_css_variables:
|
custom_css_variables:
|
||||||
--cpd-color-bg-action-primary-rest: {{ .Values.theme.colors.primary | quote }}
|
--cpd-color-bg-action-primary-rest: {{ .Values.theme.colors.primary | quote }}
|
||||||
--cpd-color-text-action-accent: {{ .Values.theme.colors.primary | quote }}
|
--cpd-color-text-action-accent: {{ .Values.theme.colors.primary | quote }}
|
||||||
|
|||||||
@@ -2,8 +2,8 @@
|
|||||||
# SPDX-License-Identifier: Apache-2.0
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
---
|
---
|
||||||
cleanup:
|
cleanup:
|
||||||
deletePodsOnSuccess: {{ .Values.cleanup.deletePodsOnSuccess }}
|
deletePodsOnSuccess: {{ .Values.debug.cleanup.deletePodsOnSuccess }}
|
||||||
deletePodsOnSuccessTimeout: {{ .Values.cleanup.deletePodsOnSuccessTimeout }}
|
deletePodsOnSuccessTimeout: {{ .Values.debug.cleanup.deletePodsOnSuccessTimeout }}
|
||||||
|
|
||||||
configuration:
|
configuration:
|
||||||
username: "meetings-bot"
|
username: "meetings-bot"
|
||||||
|
|||||||
@@ -2,8 +2,8 @@
|
|||||||
# SPDX-License-Identifier: Apache-2.0
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
---
|
---
|
||||||
cleanup:
|
cleanup:
|
||||||
deletePodsOnSuccess: {{ .Values.cleanup.deletePodsOnSuccess }}
|
deletePodsOnSuccess: {{ .Values.debug.cleanup.deletePodsOnSuccess }}
|
||||||
deletePodsOnSuccessTimeout: {{ .Values.cleanup.deletePodsOnSuccessTimeout }}
|
deletePodsOnSuccessTimeout: {{ .Values.debug.cleanup.deletePodsOnSuccessTimeout }}
|
||||||
|
|
||||||
configuration:
|
configuration:
|
||||||
username: "uvs"
|
username: "uvs"
|
||||||
|
|||||||
@@ -40,9 +40,21 @@ configuration:
|
|||||||
regex: "@.*"
|
regex: "@.*"
|
||||||
url: null
|
url: null
|
||||||
sender_localpart: intercom-service
|
sender_localpart: intercom-service
|
||||||
|
- as_token: {{ .Values.secrets.oxAppsuite.synapseAsToken | quote }}
|
||||||
|
hs_token: {{ .Values.secrets.oxAppsuite.synapseAsToken | quote }}
|
||||||
|
id: ox-appsuite
|
||||||
|
namespaces:
|
||||||
|
users:
|
||||||
|
- exclusive: false
|
||||||
|
regex: "@.*"
|
||||||
|
url: null
|
||||||
|
sender_localpart: ox-appsuite
|
||||||
|
|
||||||
|
presence:
|
||||||
|
enabled: {{ .Values.functional.dataProtection.matrixPresence.enabled }}
|
||||||
|
|
||||||
smtp:
|
smtp:
|
||||||
senderAddress: "{{ .Values.localpartNoReply }}@{{ .Values.global.hosts.element }}.{{ .Values.global.domain }}"
|
senderAddress: "{{ .Values.smtp.localpartNoReply }}@{{ if .Values.functional.email.systemGenerated.useComponentInSenderdomain }}{{ .Values.global.hosts.element }}.{{ end }}{{ .Values.global.domain }}"
|
||||||
host: {{ .Values.smtp.host | quote }}
|
host: {{ .Values.smtp.host | quote }}
|
||||||
port: {{ .Values.smtp.port }}
|
port: {{ .Values.smtp.port }}
|
||||||
username: {{ .Values.smtp.username | quote }}
|
username: {{ .Values.smtp.username | quote }}
|
||||||
@@ -52,6 +64,9 @@ configuration:
|
|||||||
clientId: "opendesk-matrix"
|
clientId: "opendesk-matrix"
|
||||||
clientSecret: {{ .Values.secrets.keycloak.clientSecret.matrix | quote }}
|
clientSecret: {{ .Values.secrets.keycloak.clientSecret.matrix | quote }}
|
||||||
issuer: "https://{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}/realms/{{ .Values.platform.realm }}"
|
issuer: "https://{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}/realms/{{ .Values.platform.realm }}"
|
||||||
|
scopes:
|
||||||
|
- "openid"
|
||||||
|
- "opendesk-matrix-scope"
|
||||||
|
|
||||||
turn:
|
turn:
|
||||||
sharedSecret: {{ .Values.turn.credentials | quote }}
|
sharedSecret: {{ .Values.turn.credentials | quote }}
|
||||||
@@ -91,7 +106,7 @@ containerSecurityContext:
|
|||||||
{{ .Values.seLinuxOptions.synapse | toYaml | nindent 4 }}
|
{{ .Values.seLinuxOptions.synapse | toYaml | nindent 4 }}
|
||||||
|
|
||||||
federation:
|
federation:
|
||||||
enabled: {{ .Values.externalServices.matrix.federation.enabled }}
|
enabled: {{ .Values.functional.externalServices.matrix.federation.enabled }}
|
||||||
ingress:
|
ingress:
|
||||||
host: "{{ .Values.global.hosts.synapseFederation }}.{{ .Values.global.domain }}"
|
host: "{{ .Values.global.hosts.synapseFederation }}.{{ .Values.global.domain }}"
|
||||||
enabled: {{ .Values.ingress.enabled }}
|
enabled: {{ .Values.ingress.enabled }}
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ containerSecurityContext:
|
|||||||
{{ .Values.seLinuxOptions.jitsiKeycloakAdapter | toYaml | nindent 4 }}
|
{{ .Values.seLinuxOptions.jitsiKeycloakAdapter | toYaml | nindent 4 }}
|
||||||
|
|
||||||
cleanup:
|
cleanup:
|
||||||
deletePodsOnSuccess: {{ .Values.cleanup.deletePodsOnSuccess }}
|
deletePodsOnSuccess: {{ .Values.debug.cleanup.deletePodsOnSuccess }}
|
||||||
|
|
||||||
image:
|
image:
|
||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|||||||
31
helmfile/apps/migrations-post/helmfile-child.yaml
Normal file
31
helmfile/apps/migrations-post/helmfile-child.yaml
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
---
|
||||||
|
repositories:
|
||||||
|
# openDesk Migrations
|
||||||
|
# Source:
|
||||||
|
- name: "openproject-migrations-repo"
|
||||||
|
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
||||||
|
verify: {{ .Values.charts.migrations.verify }}
|
||||||
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
|
oci: true
|
||||||
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.migrations.registry }}/\
|
||||||
|
{{ .Values.charts.migrations.repository }}"
|
||||||
|
|
||||||
|
releases:
|
||||||
|
- name: "opendesk-migrations-post"
|
||||||
|
chart: "openproject-migrations-repo/{{ .Values.charts.migrations.name }}"
|
||||||
|
version: "{{ .Values.charts.migrations.version }}"
|
||||||
|
wait: true
|
||||||
|
waitForJobs: true
|
||||||
|
values:
|
||||||
|
- "values.yaml.gotmpl"
|
||||||
|
- "../../shared/migrations.yaml.gotmpl"
|
||||||
|
installed: {{ .Values.migrations.enabled }}
|
||||||
|
timeout: 900
|
||||||
|
|
||||||
|
commonLabels:
|
||||||
|
deploy-stage: "component-0"
|
||||||
|
component: "opendesk-migrations"
|
||||||
|
...
|
||||||
11
helmfile/apps/migrations-post/helmfile.yaml
Normal file
11
helmfile/apps/migrations-post/helmfile.yaml
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
---
|
||||||
|
bases:
|
||||||
|
- "../../bases/environments.yaml"
|
||||||
|
---
|
||||||
|
helmfiles:
|
||||||
|
- path: "./helmfile-child.yaml"
|
||||||
|
values:
|
||||||
|
- {{ toYaml .Values | nindent 8 }}
|
||||||
|
...
|
||||||
8
helmfile/apps/migrations-post/values.yaml.gotmpl
Normal file
8
helmfile/apps/migrations-post/values.yaml.gotmpl
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
{{/*
|
||||||
|
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
|
---
|
||||||
|
migrations:
|
||||||
|
stage: "POST"
|
||||||
|
...
|
||||||
31
helmfile/apps/migrations-pre/helmfile-child.yaml
Normal file
31
helmfile/apps/migrations-pre/helmfile-child.yaml
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
---
|
||||||
|
repositories:
|
||||||
|
# openDesk Migrations
|
||||||
|
# Source:
|
||||||
|
- name: "openproject-migrations-repo"
|
||||||
|
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
||||||
|
verify: {{ .Values.charts.migrations.verify }}
|
||||||
|
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||||
|
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||||
|
oci: true
|
||||||
|
url: "{{ .Values.global.helmRegistry | default .Values.charts.migrations.registry }}/\
|
||||||
|
{{ .Values.charts.migrations.repository }}"
|
||||||
|
|
||||||
|
releases:
|
||||||
|
- name: "opendesk-migrations-pre"
|
||||||
|
chart: "openproject-migrations-repo/{{ .Values.charts.migrations.name }}"
|
||||||
|
version: "{{ .Values.charts.migrations.version }}"
|
||||||
|
wait: true
|
||||||
|
waitForJobs: true
|
||||||
|
values:
|
||||||
|
- "values.yaml.gotmpl"
|
||||||
|
- "../../shared/migrations.yaml.gotmpl"
|
||||||
|
installed: {{ .Values.migrations.enabled }}
|
||||||
|
timeout: 900
|
||||||
|
|
||||||
|
commonLabels:
|
||||||
|
deploy-stage: "component-0"
|
||||||
|
component: "opendesk-migrations"
|
||||||
|
...
|
||||||
11
helmfile/apps/migrations-pre/helmfile.yaml
Normal file
11
helmfile/apps/migrations-pre/helmfile.yaml
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
---
|
||||||
|
bases:
|
||||||
|
- "../../bases/environments.yaml"
|
||||||
|
---
|
||||||
|
helmfiles:
|
||||||
|
- path: "./helmfile-child.yaml"
|
||||||
|
values:
|
||||||
|
- {{ toYaml .Values | nindent 8 }}
|
||||||
|
...
|
||||||
8
helmfile/apps/migrations-pre/values.yaml.gotmpl
Normal file
8
helmfile/apps/migrations-pre/values.yaml.gotmpl
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
{{/*
|
||||||
|
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/}}
|
||||||
|
---
|
||||||
|
migrations:
|
||||||
|
stage: "PRE"
|
||||||
|
...
|
||||||
@@ -14,7 +14,7 @@ additionalAnnotations:
|
|||||||
intents.otterize.com/service-name: "opendesk-nextcloud-php"
|
intents.otterize.com/service-name: "opendesk-nextcloud-php"
|
||||||
|
|
||||||
cleanup:
|
cleanup:
|
||||||
deletePodsOnSuccess: {{ .Values.cleanup.deletePodsOnSuccess }}
|
deletePodsOnSuccess: {{ .Values.debug.cleanup.deletePodsOnSuccess }}
|
||||||
|
|
||||||
configuration:
|
configuration:
|
||||||
administrator:
|
administrator:
|
||||||
@@ -35,6 +35,9 @@ configuration:
|
|||||||
value: {{ .Values.cache.nextcloud.password | default .Values.secrets.redis.password | quote }}
|
value: {{ .Values.cache.nextcloud.password | default .Values.secrets.redis.password | quote }}
|
||||||
host: {{ .Values.cache.nextcloud.host | quote }}
|
host: {{ .Values.cache.nextcloud.host | quote }}
|
||||||
port: {{ .Values.cache.nextcloud.port | quote }}
|
port: {{ .Values.cache.nextcloud.port | quote }}
|
||||||
|
collabora:
|
||||||
|
# internalWopiUrl: ""
|
||||||
|
wopiAllowlist: {{ join ", " ( concat .Values.cluster.networking.cidr .Values.cluster.networking.incomingCIDR ) | quote }}
|
||||||
database:
|
database:
|
||||||
host: {{ .Values.databases.nextcloud.host | quote }}
|
host: {{ .Values.databases.nextcloud.host | quote }}
|
||||||
port: {{ .Values.databases.nextcloud.port | quote }}
|
port: {{ .Values.databases.nextcloud.port | quote }}
|
||||||
@@ -45,7 +48,7 @@ configuration:
|
|||||||
value: {{ .Values.databases.nextcloud.password | default .Values.secrets.mariadb.nextcloudUser | quote }}
|
value: {{ .Values.databases.nextcloud.password | default .Values.secrets.mariadb.nextcloudUser | quote }}
|
||||||
ldap:
|
ldap:
|
||||||
host: {{ .Values.ldap.host | quote }}
|
host: {{ .Values.ldap.host | quote }}
|
||||||
password: {{ .Values.secrets.univentionManagementStack.ldapSearch.nextcloud | quote }}
|
password: {{ .Values.secrets.nubus.ldapSearch.nextcloud | quote }}
|
||||||
adminGroupName: "managed-by-attribute-FileshareAdmin"
|
adminGroupName: "managed-by-attribute-FileshareAdmin"
|
||||||
objectstore:
|
objectstore:
|
||||||
auth:
|
auth:
|
||||||
@@ -78,8 +81,13 @@ configuration:
|
|||||||
value: {{ .Values.smtp.password | quote }}
|
value: {{ .Values.smtp.password | quote }}
|
||||||
host: {{ .Values.smtp.host | quote }}
|
host: {{ .Values.smtp.host | quote }}
|
||||||
port: {{ .Values.smtp.port | quote }}
|
port: {{ .Values.smtp.port | quote }}
|
||||||
fromAddress: {{ .Values.localpartNoReply | quote }}
|
fromAddress: {{ .Values.smtp.localpartNoReply | quote }}
|
||||||
mailDomain: "{{ .Values.global.hosts.nextcloud }}.{{ .Values.global.domain }}"
|
mailDomain: "{{ if .Values.functional.email.systemGenerated.useComponentInSenderdomain }}{{ .Values.global.hosts.nextcloud }}.{{ end }}{{ .Values.global.domain }}"
|
||||||
|
quota:
|
||||||
|
default: "{{ .Values.functional.filestore.quota.default }} GB"
|
||||||
|
retentionObligation:
|
||||||
|
trashbin: {{ .Values.functional.filestore.nextcloud.retentionObligation.trashbin | quote }}
|
||||||
|
versions: {{ .Values.functional.filestore.nextcloud.retentionObligation.versions | quote }}
|
||||||
|
|
||||||
serverinfo:
|
serverinfo:
|
||||||
token: {{ .Values.secrets.nextcloud.metricsToken | quote }}
|
token: {{ .Values.secrets.nextcloud.metricsToken | quote }}
|
||||||
@@ -101,7 +109,7 @@ containerSecurityContext:
|
|||||||
{{ .Values.seLinuxOptions.nextcloudManagement | toYaml | nindent 4 }}
|
{{ .Values.seLinuxOptions.nextcloudManagement | toYaml | nindent 4 }}
|
||||||
|
|
||||||
debug:
|
debug:
|
||||||
loglevel: {{ if .Values.debug.enabled }}"0"{{ else }}"1"{{ end }}
|
loglevel: {{ if .Values.debug.enabled }}"0"{{ else }}"2"{{ end }}
|
||||||
|
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.nextcloudManagement.registry | quote }}
|
registry: {{ .Values.global.imageRegistry | default .Values.images.nextcloudManagement.registry | quote }}
|
||||||
|
|||||||
@@ -34,13 +34,13 @@ exporter:
|
|||||||
tag: {{ .Values.images.nextcloudExporter.tag | quote }}
|
tag: {{ .Values.images.nextcloudExporter.tag | quote }}
|
||||||
prometheus:
|
prometheus:
|
||||||
serviceMonitor:
|
serviceMonitor:
|
||||||
enabled: {{ .Values.prometheus.serviceMonitors.enabled }}
|
enabled: {{ .Values.monitoring.prometheus.serviceMonitors.enabled }}
|
||||||
labels:
|
labels:
|
||||||
{{ .Values.prometheus.serviceMonitors.labels | toYaml | nindent 8 }}
|
{{ .Values.monitoring.prometheus.serviceMonitors.labels | toYaml | nindent 8 }}
|
||||||
prometheusRule:
|
prometheusRule:
|
||||||
enabled: {{ .Values.prometheus.prometheusRules.enabled }}
|
enabled: {{ .Values.monitoring.prometheus.prometheusRules.enabled }}
|
||||||
additionalLabels:
|
additionalLabels:
|
||||||
{{ .Values.prometheus.prometheusRules.labels | toYaml | nindent 8 }}
|
{{ .Values.monitoring.prometheus.prometheusRules.labels | toYaml | nindent 8 }}
|
||||||
replicaCount: {{ .Values.replicas.nextcloudExporter }}
|
replicaCount: {{ .Values.replicas.nextcloudExporter }}
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.nextcloudExporter | toYaml | nindent 4 }}
|
{{ .Values.resources.nextcloudExporter | toYaml | nindent 4 }}
|
||||||
@@ -66,6 +66,7 @@ php:
|
|||||||
value: "nextcloud_user"
|
value: "nextcloud_user"
|
||||||
password:
|
password:
|
||||||
value: {{ .Values.databases.nextcloud.password | default .Values.secrets.mariadb.nextcloudUser | quote }}
|
value: {{ .Values.databases.nextcloud.password | default .Values.secrets.mariadb.nextcloudUser | quote }}
|
||||||
|
trustedProxies: {{ join " " .Values.cluster.networking.cidr | quote }}
|
||||||
containerSecurityContext:
|
containerSecurityContext:
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
capabilities:
|
capabilities:
|
||||||
@@ -84,7 +85,7 @@ php:
|
|||||||
cron:
|
cron:
|
||||||
successfulJobsHistoryLimit: {{ if .Values.debug.enabled }}"3"{{ else }}"0"{{ end }}
|
successfulJobsHistoryLimit: {{ if .Values.debug.enabled }}"3"{{ else }}"0"{{ end }}
|
||||||
debug:
|
debug:
|
||||||
loglevel: {{ if .Values.debug.enabled }}"0"{{ else }}"1"{{ end }}
|
loglevel: {{ if .Values.debug.enabled }}"0"{{ else }}"2"{{ end }}
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.nextcloudPHP.registry | quote }}
|
registry: {{ .Values.global.imageRegistry | default .Values.images.nextcloudPHP.registry | quote }}
|
||||||
repository: "{{ .Values.images.nextcloudPHP.repository }}"
|
repository: "{{ .Values.images.nextcloudPHP.repository }}"
|
||||||
@@ -92,13 +93,13 @@ php:
|
|||||||
tag: {{ .Values.images.nextcloudPHP.tag | quote }}
|
tag: {{ .Values.images.nextcloudPHP.tag | quote }}
|
||||||
prometheus:
|
prometheus:
|
||||||
serviceMonitor:
|
serviceMonitor:
|
||||||
enabled: {{ .Values.prometheus.serviceMonitors.enabled }}
|
enabled: {{ .Values.monitoring.prometheus.serviceMonitors.enabled }}
|
||||||
labels:
|
labels:
|
||||||
{{ .Values.prometheus.serviceMonitors.labels | toYaml | nindent 8 }}
|
{{ .Values.monitoring.prometheus.serviceMonitors.labels | toYaml | nindent 8 }}
|
||||||
prometheusRule:
|
prometheusRule:
|
||||||
enabled: {{ .Values.prometheus.prometheusRules.enabled }}
|
enabled: {{ .Values.monitoring.prometheus.prometheusRules.enabled }}
|
||||||
additionalLabels:
|
additionalLabels:
|
||||||
{{ .Values.prometheus.prometheusRules.labels | toYaml | nindent 8 }}
|
{{ .Values.monitoring.prometheus.prometheusRules.labels | toYaml | nindent 8 }}
|
||||||
replicaCount: {{ .Values.replicas.nextcloudPHP }}
|
replicaCount: {{ .Values.replicas.nextcloudPHP }}
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.nextcloudPHP | toYaml | nindent 4 }}
|
{{ .Values.resources.nextcloudPHP | toYaml | nindent 4 }}
|
||||||
@@ -107,6 +108,7 @@ apache2:
|
|||||||
configuration:
|
configuration:
|
||||||
php:
|
php:
|
||||||
host: "opendesk-nextcloud-php.{{ .Release.Namespace }}.svc.{{ .Values.cluster.networking.domain }}"
|
host: "opendesk-nextcloud-php.{{ .Release.Namespace }}.svc.{{ .Values.cluster.networking.domain }}"
|
||||||
|
trustedProxies: {{ join " " .Values.cluster.networking.cidr | quote }}
|
||||||
containerSecurityContext:
|
containerSecurityContext:
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
capabilities:
|
capabilities:
|
||||||
@@ -143,4 +145,5 @@ apache2:
|
|||||||
replicaCount: {{ .Values.replicas.nextcloudApache2 }}
|
replicaCount: {{ .Values.replicas.nextcloudApache2 }}
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.nextcloudApache2 | toYaml | nindent 4 }}
|
{{ .Values.resources.nextcloudApache2 | toYaml | nindent 4 }}
|
||||||
|
|
||||||
...
|
...
|
||||||
|
|||||||
@@ -3,15 +3,15 @@
|
|||||||
---
|
---
|
||||||
repositories:
|
repositories:
|
||||||
# Univention Management Stack Umbrella Chart
|
# Univention Management Stack Umbrella Chart
|
||||||
- name: "ums"
|
- name: "nubus"
|
||||||
keyring: "../../files/gpg-pubkeys/univention-de.gpg"
|
keyring: "../../files/gpg-pubkeys/univention-de.gpg"
|
||||||
verify: {{ .Values.charts.ums.verify }}
|
verify: {{ .Values.charts.nubus.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:
|
url:
|
||||||
"{{ .Values.global.helmRegistry | default .Values.charts.ums.registry }}/\
|
"{{ .Values.global.helmRegistry | default .Values.charts.nubus.registry }}/\
|
||||||
{{ .Values.charts.ums.repository }}"
|
{{ .Values.charts.nubus.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"
|
||||||
@@ -25,11 +25,13 @@ repositories:
|
|||||||
releases:
|
releases:
|
||||||
# Univention Management Stack Umbrella Chart
|
# Univention Management Stack Umbrella Chart
|
||||||
- name: "ums"
|
- name: "ums"
|
||||||
chart: "ums/{{ .Values.charts.ums.name }}"
|
chart: "nubus/{{ .Values.charts.nubus.name }}"
|
||||||
version: "{{ .Values.charts.ums.version }}"
|
version: "{{ .Values.charts.nubus.version }}"
|
||||||
values:
|
values:
|
||||||
- "values-umbrella.yaml.gotmpl"
|
- "values-nubus.yaml.gotmpl"
|
||||||
installed: {{ .Values.univentionManagementStack.enabled }}
|
- "values-opendesk-customization.yaml.gotmpl"
|
||||||
|
- "values-opendesk-images.yaml.gotmpl"
|
||||||
|
installed: {{ .Values.nubus.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
# OpenDesk Keycloak Bootstrap Chart
|
# OpenDesk Keycloak Bootstrap Chart
|
||||||
- name: "opendesk-keycloak-bootstrap"
|
- name: "opendesk-keycloak-bootstrap"
|
||||||
@@ -39,10 +41,10 @@ releases:
|
|||||||
- "values-opendesk-keycloak-bootstrap.yaml.gotmpl"
|
- "values-opendesk-keycloak-bootstrap.yaml.gotmpl"
|
||||||
needs:
|
needs:
|
||||||
- "ums"
|
- "ums"
|
||||||
installed: {{ .Values.univentionManagementStack.enabled }}
|
installed: {{ .Values.nubus.enabled }}
|
||||||
timeout: 900
|
timeout: 900
|
||||||
|
|
||||||
commonLabels:
|
commonLabels:
|
||||||
deploy-stage: "component-1"
|
deploy-stage: "component-1"
|
||||||
component: "univention-management-stack"
|
component: "nubus"
|
||||||
...
|
...
|
||||||
323
helmfile/apps/nubus/values-nubus.yaml.gotmpl
Normal file
323
helmfile/apps/nubus/values-nubus.yaml.gotmpl
Normal file
@@ -0,0 +1,323 @@
|
|||||||
|
# SPDX-FileCopyrightText: 2024 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
---
|
||||||
|
global:
|
||||||
|
nubusDeployment: true
|
||||||
|
ldap:
|
||||||
|
baseDn: {{ .Values.ldap.baseDn | quote }}
|
||||||
|
domainName: {{ .Values.global.domain | quote }}
|
||||||
|
domain: {{ .Values.global.domain | quote }}
|
||||||
|
ingressClass: {{ .Values.ingress.ingressClassName | default "nginx" | quote }}
|
||||||
|
certManagerIssuer: "letsencrypt-prod-dns"
|
||||||
|
nubusMasterPassword: {{ env "MASTER_PASSWORD" | default "sovereign-workplace" | quote }}
|
||||||
|
keycloak:
|
||||||
|
realm: {{ .Values.platform.realm | quote }}
|
||||||
|
objectStorage:
|
||||||
|
bucket: {{ .Values.objectstores.nubus.bucket | quote }}
|
||||||
|
connection:
|
||||||
|
host: "minio"
|
||||||
|
port: "9000"
|
||||||
|
protocol: "http"
|
||||||
|
credentialOverride:
|
||||||
|
ldapServer:
|
||||||
|
adminPassword: {{ .Values.secrets.nubus.ldapSecret | quote}}
|
||||||
|
defaultUsers:
|
||||||
|
defaultAdminPassword: {{ .Values.secrets.nubus.defaultAccounts.adminPassword | quote}}
|
||||||
|
defaultUserPassword: {{ .Values.secrets.nubus.defaultAccounts.userPassword | quote}}
|
||||||
|
|
||||||
|
# -- Extensions to load. Add entries to load additional extensions into Nubus.
|
||||||
|
extensions:
|
||||||
|
- name: "ox"
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusOxExtension.registry }}
|
||||||
|
repository: {{ .Values.images.nubusOxExtension.repository }}
|
||||||
|
tag: {{ .Values.images.nubusOxExtension.tag }}
|
||||||
|
imagePullPolicy: "IfNotPresent"
|
||||||
|
- name: "opendesk"
|
||||||
|
image:
|
||||||
|
registry: "registry.opencode.de"
|
||||||
|
repository: "bmi/opendesk/components/platform-development/images/opendesk-nubus"
|
||||||
|
imagePullPolicy: "IfNotPresent"
|
||||||
|
tag: "1.1.0"
|
||||||
|
|
||||||
|
# -- Allows to configure the system extensions to load. This is intended for
|
||||||
|
# internal usage, prefer to use `global.extensions` for user configured
|
||||||
|
# extensions.
|
||||||
|
systemExtensions:
|
||||||
|
- name: "portal"
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusPortalExtension.registry }}
|
||||||
|
repository: {{ .Values.images.nubusPortalExtension.repository }}
|
||||||
|
tag: {{ .Values.images.nubusPortalExtension.tag }}
|
||||||
|
imagePullPolicy: "IfNotPresent"
|
||||||
|
|
||||||
|
# Nubus bundled services
|
||||||
|
postgresql:
|
||||||
|
enabled: false
|
||||||
|
provisioning:
|
||||||
|
enabled: false
|
||||||
|
|
||||||
|
minio:
|
||||||
|
enabled: false
|
||||||
|
|
||||||
|
# Nubus services which use customer supplied services
|
||||||
|
keycloak:
|
||||||
|
keycloak:
|
||||||
|
auth:
|
||||||
|
username: "kcadmin"
|
||||||
|
credentialSecret:
|
||||||
|
name: "ums-opendesk-keycloak-credentials"
|
||||||
|
key: "admin_password"
|
||||||
|
postgresql:
|
||||||
|
connection:
|
||||||
|
host: {{ .Values.databases.keycloak.host | quote }}
|
||||||
|
port: {{ .Values.databases.keycloak.port | quote }}
|
||||||
|
auth:
|
||||||
|
username: {{ .Values.databases.keycloak.username | quote }}
|
||||||
|
database: {{ .Values.databases.keycloak.name | quote }}
|
||||||
|
credentialSecret:
|
||||||
|
name: "ums-keycloak-postgresql-opendesk-credentials"
|
||||||
|
key: "keycloakDatabasePassword"
|
||||||
|
config:
|
||||||
|
exposeAdminConsole: {{ .Values.debug.enabled }}
|
||||||
|
|
||||||
|
nubusGuardian:
|
||||||
|
provisioning:
|
||||||
|
enabled: true
|
||||||
|
config:
|
||||||
|
keycloak:
|
||||||
|
credentialSecret:
|
||||||
|
name: "ums-opendesk-keycloak-credentials"
|
||||||
|
key: "admin_password"
|
||||||
|
managementApi:
|
||||||
|
credentialSecret:
|
||||||
|
name: "ums-opendesk-guardian-client-secret"
|
||||||
|
key: "managementApiClientSecret"
|
||||||
|
|
||||||
|
postgresql:
|
||||||
|
connection:
|
||||||
|
host: {{ .Values.databases.umsGuardianManagementApi.host | quote }}
|
||||||
|
port: {{ .Values.databases.umsGuardianManagementApi.port | quote }}
|
||||||
|
auth:
|
||||||
|
username: {{ .Values.databases.umsGuardianManagementApi.username | quote }}
|
||||||
|
database: {{ .Values.databases.umsGuardianManagementApi.name | quote }}
|
||||||
|
credentialSecret:
|
||||||
|
name: "ums-guardian-postgresql-opendesk-credentials"
|
||||||
|
key: "guardianDatabasePassword"
|
||||||
|
|
||||||
|
nubusNotificationsApi:
|
||||||
|
postgresql:
|
||||||
|
connection:
|
||||||
|
host: {{ .Values.databases.umsNotificationsApi.host | quote }}
|
||||||
|
port: {{ .Values.databases.umsNotificationsApi.port | quote }}
|
||||||
|
auth:
|
||||||
|
username: {{ .Values.databases.umsNotificationsApi.username | quote }}
|
||||||
|
database: {{ .Values.databases.umsNotificationsApi.name | quote }}
|
||||||
|
existingSecret: "ums-notifications-api-postgresql-opendesk-credentials"
|
||||||
|
|
||||||
|
|
||||||
|
nubusKeycloakExtensions:
|
||||||
|
keycloak:
|
||||||
|
auth:
|
||||||
|
username: "kcadmin"
|
||||||
|
credentialSecret:
|
||||||
|
name: "ums-opendesk-keycloak-credentials"
|
||||||
|
key: "admin_password"
|
||||||
|
proxy:
|
||||||
|
ingress:
|
||||||
|
paths:
|
||||||
|
{{- if .Values.debug.enabled }}
|
||||||
|
- pathType: "Prefix"
|
||||||
|
path: "/admin/"
|
||||||
|
{{- end }}
|
||||||
|
- pathType: "Prefix"
|
||||||
|
path: "/realms/"
|
||||||
|
- pathType: "Prefix"
|
||||||
|
path: "/js/"
|
||||||
|
- pathType: "Prefix"
|
||||||
|
path: "/resources/"
|
||||||
|
- pathType: "Prefix"
|
||||||
|
path: "/fingerprintjs"
|
||||||
|
|
||||||
|
|
||||||
|
postgresql:
|
||||||
|
connection:
|
||||||
|
host: {{ .Values.databases.keycloakExtension.host | quote }}
|
||||||
|
port: {{ .Values.databases.keycloakExtension.port | quote }}
|
||||||
|
auth:
|
||||||
|
database: {{ .Values.databases.keycloakExtension.name | quote }}
|
||||||
|
username: {{ .Values.databases.keycloakExtension.username | quote }}
|
||||||
|
credentialSecret:
|
||||||
|
name: "ums-keycloak-extensions-postgresql-opendesk-credentials"
|
||||||
|
key: "umcKeycloakExtensionsDatabasePassword"
|
||||||
|
smtp:
|
||||||
|
connection:
|
||||||
|
host: {{ .Values.smtp.host | quote }}
|
||||||
|
port: {{ .Values.smtp.port | quote }}
|
||||||
|
auth:
|
||||||
|
username: {{ .Values.smtp.username | quote }}
|
||||||
|
credentialSecret:
|
||||||
|
name: "ums-keycloak-extensions-smtp-opendesk-credentials"
|
||||||
|
key: "umcKeycloakExtensionsSmtpPassword"
|
||||||
|
handler:
|
||||||
|
appConfig:
|
||||||
|
logLevel: {{ if .Values.debug.enabled }}"DEBUG"{{ else }}"WARN"{{ end }}
|
||||||
|
newDeviceLoginSubject: "New device login on your {{ .Values.theme.texts.productName }} account"
|
||||||
|
mailFrom: "{{ .Values.smtp.localpartNoReply }}@{{ if .Values.functional.email.systemGenerated.useComponentInSenderdomain }}{{ .Values.global.hosts.keycloak }}.{{ end }}{{ .Values.global.domain }}"
|
||||||
|
|
||||||
|
nubusPortalListener:
|
||||||
|
portalListener:
|
||||||
|
objectStorageEndpoint: {{ .Values.objectstores.nubus.endpoint | default (printf "https://%s.%s" .Values.global.hosts.minioApi .Values.global.domain) | quote }}
|
||||||
|
objectStorageBucket: {{ .Values.objectstores.nubus.bucket | quote }}
|
||||||
|
objectStorageCredentialSecret:
|
||||||
|
name: "ums-portal-listener-minio-opendesk-credentials"
|
||||||
|
accessKeyKey: "access-key-id"
|
||||||
|
secretKeyKey: "secret-key-id"
|
||||||
|
|
||||||
|
nubusPortalServer:
|
||||||
|
portalServer:
|
||||||
|
objectStorageEndpoint: {{ .Values.objectstores.nubus.endpoint | default (printf "https://%s.%s" .Values.global.hosts.minioApi .Values.global.domain) | quote }}
|
||||||
|
objectStorageBucket: {{ .Values.objectstores.nubus.bucket | quote }}
|
||||||
|
objectStorageCredentialSecret:
|
||||||
|
name: "ums-portal-server-minio-opendesk-credentials"
|
||||||
|
accessKeyKey: "access-key-id"
|
||||||
|
secretKeyKey: "secret-key-id"
|
||||||
|
centralNavigation:
|
||||||
|
enabled: true
|
||||||
|
authenticatorSecretName: "ums-opendesk-portal-server-central-navigation"
|
||||||
|
|
||||||
|
# NOTE: disabled until the next update.
|
||||||
|
nubusProvisioning:
|
||||||
|
enabled: false
|
||||||
|
nubusUdmListener:
|
||||||
|
enabled: false
|
||||||
|
nubusSelfServiceListener:
|
||||||
|
enabled: true
|
||||||
|
selfserviceListener:
|
||||||
|
umcAdminUser: "default.admin"
|
||||||
|
|
||||||
|
# Nubus services
|
||||||
|
nubusStackDataUms:
|
||||||
|
stackDataContext:
|
||||||
|
umcPostgresqlHostname: {{ .Values.databases.umsSelfservice.host | quote }}
|
||||||
|
umcPostgresqlUsername: {{ .Values.databases.umsSelfservice.username | quote }}
|
||||||
|
umcMemcachedHostname: {{ .Values.cache.umsSelfservice.host | quote }}
|
||||||
|
umcMemcachedUsername: ""
|
||||||
|
externalMailDomain: {{ .Values.global.mailDomain | default .Values.global.domain }}
|
||||||
|
umcHtmlTitle: "openDesk Portal"
|
||||||
|
installUmcPolicies: true
|
||||||
|
nubusUmcServer:
|
||||||
|
memcached:
|
||||||
|
auth:
|
||||||
|
username: ""
|
||||||
|
|
||||||
|
# TODO: Remove values when upstreaming fixes
|
||||||
|
nubusStackDataSwp:
|
||||||
|
stackDataContext:
|
||||||
|
ldapSearchUsers:
|
||||||
|
{{- range $username, $password := .Values.secrets.nubus.ldapSearch }}
|
||||||
|
- username: {{ printf "ldapsearch_%s" $username | quote }}
|
||||||
|
password: {{ $password | quote }}
|
||||||
|
lastname: "LDAP-Search-User"
|
||||||
|
{{- end }}
|
||||||
|
externalMailDomain: {{ .Values.global.mailDomain | default .Values.global.domain }}
|
||||||
|
smtpHost: {{ .Values.smtp.host | quote }}
|
||||||
|
smtpPort: {{ .Values.smtp.port | quote }}
|
||||||
|
smtpUser: {{ .Values.smtp.username | quote }}
|
||||||
|
ldapBase: {{ .Values.ldap.baseDn }}
|
||||||
|
# FIXME: Should be templated correctly in the future
|
||||||
|
portalRealtimeCollaborationLinkBase: {{ printf "https://%s.%s" .Values.global.hosts.element .Values.global.domain }}
|
||||||
|
portalRealtimeVideoconferenceLinkBase: {{ printf "https://%s.%s" .Values.global.hosts.jitsi .Values.global.domain }}
|
||||||
|
portalManagementProjectLinkBase: {{ printf "https://%s.%s" .Values.global.hosts.openproject .Values.global.domain }}
|
||||||
|
portalManagementKnowledgeLinkBase: {{ printf "https://%s.%s" .Values.global.hosts.xwiki .Values.global.domain }}
|
||||||
|
portalGroupwareLinkBase: {{ printf "https://%s.%s" .Values.global.hosts.openxchange .Values.global.domain }}
|
||||||
|
portalFileshareLinkBase: {{ printf "https://%s.%s" .Values.global.hosts.nextcloud .Values.global.domain }}
|
||||||
|
portalTitleDE: "openDesk Portal"
|
||||||
|
portalTitleEN: "openDesk Portal"
|
||||||
|
oxDefaultContext: "1"
|
||||||
|
|
||||||
|
nubusUmcServer:
|
||||||
|
postgresql:
|
||||||
|
bundled: false
|
||||||
|
connection:
|
||||||
|
host: {{ .Values.databases.umsSelfservice.host | quote }}
|
||||||
|
port: {{ .Values.databases.umsSelfservice.port | quote }}
|
||||||
|
auth:
|
||||||
|
username: {{ .Values.databases.umsSelfservice.username | quote }}
|
||||||
|
database: {{ .Values.databases.umsSelfservice.name | quote }}
|
||||||
|
credentialSecret:
|
||||||
|
name: "ums-umc-server-postgresql-opendesk-credentials"
|
||||||
|
key: "umcServerDatabasePassword"
|
||||||
|
memcached:
|
||||||
|
bundled: false
|
||||||
|
server: {{ .Values.cache.umsSelfservice.host | quote }}
|
||||||
|
auth:
|
||||||
|
credentialSecret:
|
||||||
|
name: "ums-umc-server-memcached-opendesk-credentials"
|
||||||
|
key: "umcServerMemcachedPassword"
|
||||||
|
smtp:
|
||||||
|
credentialSecret:
|
||||||
|
name: "ums-umc-server-smtp-credentials-custom"
|
||||||
|
|
||||||
|
nubusUmcGateway:
|
||||||
|
umcGateway:
|
||||||
|
umcHtmlTitle: "openDesk Portal"
|
||||||
|
|
||||||
|
nubusKeycloakBootstrap:
|
||||||
|
keycloak:
|
||||||
|
auth:
|
||||||
|
username: "kcadmin"
|
||||||
|
credentialSecret:
|
||||||
|
name: "ums-opendesk-keycloak-credentials"
|
||||||
|
key: "admin_password"
|
||||||
|
bootstrap:
|
||||||
|
ldapMappers:
|
||||||
|
- ldapAndUserModelAttributeName: "opendeskProjectmanagementAdmin"
|
||||||
|
- ldapAndUserModelAttributeName: "oxContextIDNum"
|
||||||
|
twoFactorAuthentication:
|
||||||
|
enabled: true
|
||||||
|
group: "2fa-users"
|
||||||
|
|
||||||
|
# Credential secrets for accessing customer supplied services
|
||||||
|
extraSecrets:
|
||||||
|
- name: "ums-opendesk-portal-server-central-navigation"
|
||||||
|
stringData:
|
||||||
|
authenticator.secret: {{ .Values.secrets.centralnavigation.apiKey | quote }}
|
||||||
|
- name: "ums-opendesk-guardian-client-secret"
|
||||||
|
stringData:
|
||||||
|
managementApiClientSecret: {{ .Values.secrets.keycloak.clientSecret.guardian | quote }}
|
||||||
|
- name: "ums-opendesk-keycloak-credentials"
|
||||||
|
stringData:
|
||||||
|
admin_password: {{ .Values.secrets.keycloak.adminPassword | quote }}
|
||||||
|
- name: "ums-keycloak-postgresql-opendesk-credentials"
|
||||||
|
stringData:
|
||||||
|
keycloakDatabasePassword: {{ .Values.databases.keycloak.password | default .Values.secrets.postgresql.keycloakUser | quote }}
|
||||||
|
- name: "ums-guardian-postgresql-opendesk-credentials"
|
||||||
|
stringData:
|
||||||
|
guardianDatabasePassword: {{ .Values.databases.umsGuardianManagementApi.password | default .Values.secrets.postgresql.umsGuardianManagementApiUser | quote }}
|
||||||
|
- name: "ums-notifications-api-postgresql-opendesk-credentials"
|
||||||
|
stringData:
|
||||||
|
password: {{ .Values.databases.umsNotificationsApi.password | default .Values.secrets.postgresql.umsNotificationsApiUser | quote }}
|
||||||
|
- name: "ums-umc-server-postgresql-opendesk-credentials"
|
||||||
|
stringData:
|
||||||
|
umcServerDatabasePassword: {{ .Values.databases.umsSelfservice.password | default .Values.secrets.postgresql.umsSelfserviceUser | quote }}
|
||||||
|
- name: "ums-umc-server-memcached-opendesk-credentials"
|
||||||
|
stringData:
|
||||||
|
umcServerMemcachedPassword: ""
|
||||||
|
- name: "ums-keycloak-extensions-postgresql-opendesk-credentials"
|
||||||
|
stringData:
|
||||||
|
umcKeycloakExtensionsDatabasePassword: {{ .Values.databases.keycloakExtension.password | default .Values.secrets.postgresql.keycloakExtensionUser | quote }}
|
||||||
|
- name: "ums-keycloak-extensions-smtp-opendesk-credentials"
|
||||||
|
stringData:
|
||||||
|
umcKeycloakExtensionsSmtpPassword: {{ .Values.smtp.password | quote }}
|
||||||
|
- name: "ums-portal-server-minio-opendesk-credentials"
|
||||||
|
stringData:
|
||||||
|
access-key-id: {{ .Values.objectstores.nubus.username | quote }}
|
||||||
|
secret-key-id: {{ .Values.objectstores.nubus.secretKey | default .Values.secrets.minio.umsUser | quote }}
|
||||||
|
- name: "ums-portal-listener-minio-opendesk-credentials"
|
||||||
|
stringData:
|
||||||
|
access-key-id: {{ .Values.objectstores.nubus.username | quote }}
|
||||||
|
secret-key-id: {{ .Values.objectstores.nubus.secretKey | default .Values.secrets.minio.umsUser | quote }}
|
||||||
|
- name: "ums-umc-server-smtp-credentials-custom"
|
||||||
|
stringData:
|
||||||
|
password: {{ .Values.smtp.password | quote }}
|
||||||
229
helmfile/apps/nubus/values-opendesk-customization.yaml.gotmpl
Normal file
229
helmfile/apps/nubus/values-opendesk-customization.yaml.gotmpl
Normal file
@@ -0,0 +1,229 @@
|
|||||||
|
# SPDX-FileCopyrightText: 2024 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
---
|
||||||
|
keycloak:
|
||||||
|
enabled: true
|
||||||
|
podAnnotations:
|
||||||
|
intents.otterize.com/service-name: "ums-keycloak"
|
||||||
|
replicaCount: {{ .Values.replicas.keycloak }}
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.umsKeycloak | toYaml | nindent 4 }}
|
||||||
|
|
||||||
|
guardian:
|
||||||
|
authorizationApi:
|
||||||
|
podAnnotations:
|
||||||
|
intents.otterize.com/service-name: "ums-guardian-authorization-api"
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.umsGuardianAuthorizationApi | toYaml | nindent 6 }}
|
||||||
|
managementApi:
|
||||||
|
podAnnotations:
|
||||||
|
intents.otterize.com/service-name: "ums-guardian-management-api"
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.umsGuardianManagementApi | toYaml | nindent 6 }}
|
||||||
|
managementUi:
|
||||||
|
podAnnotations:
|
||||||
|
intents.otterize.com/service-name: "ums-guardian-management-ui"
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.umsGuardianManagementUi | toYaml | nindent 6 }}#
|
||||||
|
openPolicyAgent:
|
||||||
|
podAnnotations:
|
||||||
|
intents.otterize.com/service-name: "ums-ums-open-policy-agent"
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.umsOpenPolicyAgent | toYaml | nindent 6 }}
|
||||||
|
provisioning:
|
||||||
|
# Using openDesk keycloak provisioning
|
||||||
|
enabled: false
|
||||||
|
|
||||||
|
nubusNotificationsApi:
|
||||||
|
additionalAnnotations:
|
||||||
|
intents.otterize.com/service-name: "ums-notifications-api"
|
||||||
|
serviceAccount:
|
||||||
|
annotations:
|
||||||
|
intended.usage: "compliance"
|
||||||
|
replicaCount: {{ .Values.replicas.umsNotificationsApi }}
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.umsNotificationsApi | toYaml | nindent 4 }}
|
||||||
|
|
||||||
|
nubusUmcServer:
|
||||||
|
additionalAnnotations:
|
||||||
|
intents.otterize.com/service-name: "ums-umc-server"
|
||||||
|
replicaCount: {{ .Values.replicas.umsUmcServer }}
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.umsUmcServer | toYaml | nindent 4 }}
|
||||||
|
selfService:
|
||||||
|
passwordresetEmailBody: |
|
||||||
|
Sehr geehrte Benutzerin, sehr geehrter Benutzer,
|
||||||
|
|
||||||
|
Ihr Benutzername für {domainname} lautet: {username}
|
||||||
|
|
||||||
|
Sie erhalten diese Nachricht, da Sie Ihr Passwort zurücksetzen möchten oder weil Ihr Benutzer neu im System angelegt wurde.
|
||||||
|
|
||||||
|
Klicken Sie bitte auf den folgenden Link, um Ihr Passwort zu setzen:
|
||||||
|
https://{fqdn}/univention/portal/#/selfservice/newpassword/?token={token}&username={username}
|
||||||
|
|
||||||
|
Der genannte Link ist nur 48 Stunden gültig, danach fordern Sie ihn bitte erneut an unter:
|
||||||
|
https://{fqdn}/univention/portal/#/selfservice/passwordforgotten
|
||||||
|
|
||||||
|
Mit freundlichen Grüßen
|
||||||
|
Ihr {domainname} Passwort-Service
|
||||||
|
|
||||||
|
nubusKeycloakExtensions:
|
||||||
|
handler:
|
||||||
|
replicaCount: {{ .Values.replicas.umsKeycloakExtensionsHandler }}
|
||||||
|
podAnnotations:
|
||||||
|
intents.otterize.com/service-name: "ums-keycloak-extensions-handler"
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.umsKeycloakExtensionHandler | toYaml | nindent 6 }}
|
||||||
|
proxy:
|
||||||
|
replicaCount: {{ .Values.replicas.umsKeycloakExtensionsProxy }}
|
||||||
|
podAnnotations:
|
||||||
|
intents.otterize.com/service-name: "ums-keycloak-extensions-proxy"
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.umsKeycloakExtensionProxy | toYaml | nindent 6 }}
|
||||||
|
|
||||||
|
nubusPortalListener:
|
||||||
|
podAnnotations:
|
||||||
|
intents.otterize.com/service-name: "ums-portal-listener"
|
||||||
|
replicaCount: {{ .Values.replicas.umsPortalListener }}
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.umsPortalListener | toYaml | nindent 4 }}
|
||||||
|
persistence:
|
||||||
|
storageClass: {{ .Values.persistence.storageClassNames.RWO | quote }}
|
||||||
|
size: {{ .Values.persistence.size.nubus.portalListener | quote }}
|
||||||
|
|
||||||
|
nubusPortalServer:
|
||||||
|
additionalAnnotations:
|
||||||
|
intents.otterize.com/service-name: "ums-portal-server"
|
||||||
|
serviceAccount:
|
||||||
|
annotations:
|
||||||
|
intended.usage: "compliance"
|
||||||
|
replicaCount: {{ .Values.replicas.umsPortalServer }}
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.umsPortalServer | toYaml | nindent 4 }}
|
||||||
|
|
||||||
|
nubusLdapNotifier:
|
||||||
|
podAnnotations:
|
||||||
|
intents.otterize.com/service-name: "ums-ldap-notifier"
|
||||||
|
replicaCount: {{ .Values.replicas.umsLdapNotifier }}
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.umsLdapNotifier | toYaml | nindent 4 }}
|
||||||
|
|
||||||
|
nubusLdapServer:
|
||||||
|
additionalAnnotations:
|
||||||
|
intents.otterize.com/service-name: "ums-ldap-server"
|
||||||
|
serviceAccount:
|
||||||
|
annotations:
|
||||||
|
intended.usage: "compliance"
|
||||||
|
initResources: {{ .Values.resources.umsLdapServer | toYaml | nindent 4 }}
|
||||||
|
resources: {{ .Values.resources.umsLdapServer | toYaml | nindent 4 }}
|
||||||
|
persistence:
|
||||||
|
storageClass: {{ .Values.persistence.storageClassNames.RWO | quote }}
|
||||||
|
size: {{ .Values.persistence.size.nubus.ldapServerData | quote }}
|
||||||
|
|
||||||
|
nubusPortalFrontend:
|
||||||
|
additionalAnnotations:
|
||||||
|
intents.otterize.com/service-name: "ums-portal-frontend"
|
||||||
|
serviceAccount:
|
||||||
|
annotations:
|
||||||
|
intended.usage: "compliance"
|
||||||
|
replicaCount: {{ .Values.replicas.umsPortalFrontend }}
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.umsPortalFrontend | toYaml | nindent 4 }}
|
||||||
|
portalFrontend:
|
||||||
|
branding:
|
||||||
|
css: {{ .Values.theme.imagery.portalCss | toJson }}
|
||||||
|
favicon: {{ .Values.theme.imagery.faviconIcoB64 | toJson }}
|
||||||
|
logo: {{ .Values.theme.imagery.logoHeaderSvgB64 | toJson }}
|
||||||
|
backgroundImage: {{ .Values.theme.imagery.logoPortalBackgroundSvgB64 | toJson }}
|
||||||
|
|
||||||
|
nubusStackDataUms:
|
||||||
|
additionalAnnotations:
|
||||||
|
intents.otterize.com/service-name: "ums-stack-data-ums"
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.umsStackDataUms | toYaml | nindent 4 }}
|
||||||
|
|
||||||
|
nubusStackDataSwp:
|
||||||
|
additionalAnnotations:
|
||||||
|
intents.otterize.com/service-name: "ums-stack-data-swp"
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.umsStackDataSwp | toYaml | nindent 4 }}
|
||||||
|
|
||||||
|
nubusSelfServiceListener:
|
||||||
|
podAnnotations:
|
||||||
|
intents.otterize.com/service-name: "ums-selfservice-listener"
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.umsSelfserviceListener | toYaml | nindent 4 }}
|
||||||
|
replicaCount: {{ .Values.replicas.umsSelfserviceListener }}
|
||||||
|
|
||||||
|
nubusUdmRestApi:
|
||||||
|
additionalAnnotations:
|
||||||
|
intents.otterize.com/service-name: "ums-udm-rest-api"
|
||||||
|
serviceAccount:
|
||||||
|
annotations:
|
||||||
|
intended.usage: "compliance"
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.umsUdmRestApi | toYaml | nindent 4 }}
|
||||||
|
initResources:
|
||||||
|
{{ .Values.resources.umsUdmRestApiInit | toYaml | nindent 4 }}
|
||||||
|
replicaCount: {{ .Values.replicas.umsUdmRestApi }}
|
||||||
|
|
||||||
|
nubusUmcGateway:
|
||||||
|
replicaCount: {{ .Values.replicas.umsUmcGateway }}
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.umsUmcGateway | toYaml | nindent 4 }}
|
||||||
|
extraVolumes:
|
||||||
|
- name: "entrypoint-swp-patches"
|
||||||
|
configMap:
|
||||||
|
name: "ums-stack-data-swp-umc-gateway-entrypoint"
|
||||||
|
defaultMode: 0555
|
||||||
|
extraVolumeMounts:
|
||||||
|
- name: "entrypoint-swp-patches"
|
||||||
|
mountPath: "/entrypoint.d/90-swp.sh"
|
||||||
|
subPath: "90-swp.sh"
|
||||||
|
|
||||||
|
nubusKeycloakBootstrap:
|
||||||
|
podAnnotations:
|
||||||
|
intents.otterize.com/service-name: "ums-keycloak-bootstrap"
|
||||||
|
serviceAccount:
|
||||||
|
annotations:
|
||||||
|
intended.usage: "compliance"
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.umsKeycloakBootstrap | toYaml | nindent 4 }}
|
||||||
|
|
||||||
|
nubusProvisioning:
|
||||||
|
serviceAccount:
|
||||||
|
annotations:
|
||||||
|
intended.usage: "compliance"
|
||||||
|
nats:
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.nubusProvisioning.nats | toYaml | nindent 6 }}
|
||||||
|
additionalAnnotations:
|
||||||
|
intents.otterize.com/service-name: "ums-provisioning-nats"
|
||||||
|
serviceAccount:
|
||||||
|
annotations:
|
||||||
|
intended.usage: "compliance"
|
||||||
|
api:
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.nubusProvisioning.api | toYaml | nindent 6 }}
|
||||||
|
additionalAnnotations:
|
||||||
|
intents.otterize.com/service-name: "ums-provisioning-api"
|
||||||
|
dispatcher:
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.nubusProvisioning.dispatcher | toYaml | nindent 6 }}
|
||||||
|
additionalAnnotations:
|
||||||
|
intents.otterize.com/service-name: "ums-provisioning-dispatcher"
|
||||||
|
prefill:
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.nubusProvisioning.prefill | toYaml | nindent 6 }}
|
||||||
|
additionalAnnotations:
|
||||||
|
intents.otterize.com/service-name: "ums-provisioning-prefill"
|
||||||
|
registerConsumers:
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.nubusProvisioning.registerConsumers | toYaml | nindent 6 }}
|
||||||
|
additionalAnnotations:
|
||||||
|
intents.otterize.com/service-name: "ums-provisioning-register-consumers"
|
||||||
|
udmTransformer:
|
||||||
|
resources:
|
||||||
|
{{ .Values.resources.nubusProvisioning.udmTransformer | toYaml | nindent 6 }}
|
||||||
|
additionalAnnotations:
|
||||||
|
intents.otterize.com/service-name: "ums-provisioning-udm-transformer"
|
||||||
241
helmfile/apps/nubus/values-opendesk-images.yaml.gotmpl
Normal file
241
helmfile/apps/nubus/values-opendesk-images.yaml.gotmpl
Normal file
@@ -0,0 +1,241 @@
|
|||||||
|
# SPDX-FileCopyrightText: 2024 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
---
|
||||||
|
keycloak:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusKeycloak.registry }}
|
||||||
|
repository: {{ .Values.images.nubusKeycloak.repository }}
|
||||||
|
tag: {{ .Values.images.nubusKeycloak.tag }}
|
||||||
|
|
||||||
|
nubusKeycloakBootstrap:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusKeycloakBootstrap.registry }}
|
||||||
|
repository: {{ .Values.images.nubusKeycloakBootstrap.repository }}
|
||||||
|
tag: {{ .Values.images.nubusKeycloakBootstrap.tag }}
|
||||||
|
|
||||||
|
nubusKeycloakExtensions:
|
||||||
|
handler:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusKeycloakExtensionHandler.registry }}
|
||||||
|
repository: {{ .Values.images.nubusKeycloakExtensionHandler.repository }}
|
||||||
|
tag: {{ .Values.images.nubusKeycloakExtensionHandler.tag }}
|
||||||
|
|
||||||
|
proxy:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusKeycloakExtensionProxy.registry }}
|
||||||
|
repository: {{ .Values.images.nubusKeycloakExtensionProxy.repository }}
|
||||||
|
tag: {{ .Values.images.nubusKeycloakExtensionProxy.tag }}
|
||||||
|
|
||||||
|
nubusLdapNotifier:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusLdapNotifier.registry }}
|
||||||
|
repository: {{ .Values.images.nubusLdapNotifier.repository }}
|
||||||
|
tag: {{ .Values.images.nubusLdapNotifier.tag }}
|
||||||
|
|
||||||
|
nubusLdapServer:
|
||||||
|
ldapServer:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusLdapServer.registry }}
|
||||||
|
repository: {{ .Values.images.nubusLdapServer.repository }}
|
||||||
|
tag: {{ .Values.images.nubusLdapServer.tag }}
|
||||||
|
dhInitcontainer:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusLdapServerDhInitContainer.registry }}
|
||||||
|
repository: {{ .Values.images.nubusLdapServerDhInitContainer.repository }}
|
||||||
|
tag: {{ .Values.images.nubusLdapServerDhInitContainer.tag }}
|
||||||
|
waitForDependency:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusWaitForDependency.registry }}
|
||||||
|
repository: {{ .Values.images.nubusWaitForDependency.repository }}
|
||||||
|
tag: {{ .Values.images.nubusWaitForDependency.tag }}
|
||||||
|
|
||||||
|
|
||||||
|
nubusPortalConsumer:
|
||||||
|
portalConsumer:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusPortalConsumer.registry }}
|
||||||
|
repository: {{ .Values.images.nubusPortalConsumer.repository }}
|
||||||
|
tag: {{ .Values.images.nubusPortalConsumer.tag }}
|
||||||
|
|
||||||
|
|
||||||
|
nubusNotificationsApi:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusNotificationsApi.registry }}
|
||||||
|
repository: {{ .Values.images.nubusNotificationsApi.repository }}
|
||||||
|
tag: {{ .Values.images.nubusNotificationsApi.tag }}
|
||||||
|
|
||||||
|
nubusPortalFrontend:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusPortalFrontend.registry }}
|
||||||
|
repository: {{ .Values.images.nubusPortalFrontend.repository }}
|
||||||
|
tag: {{ .Values.images.nubusPortalFrontend.tag }}
|
||||||
|
|
||||||
|
nubusPortalListener:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusPortalListener.registry }}
|
||||||
|
repository: {{ .Values.images.nubusPortalListener.repository }}
|
||||||
|
tag: {{ .Values.images.nubusPortalListener.tag }}
|
||||||
|
waitForDependency:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusWaitForDependency.registry }}
|
||||||
|
repository: {{ .Values.images.nubusWaitForDependency.repository }}
|
||||||
|
tag: {{ .Values.images.nubusWaitForDependency.tag }}
|
||||||
|
|
||||||
|
nubusPortalServer:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusPortalServer.registry }}
|
||||||
|
repository: {{ .Values.images.nubusPortalServer.repository }}
|
||||||
|
tag: {{ .Values.images.nubusPortalServer.tag }}
|
||||||
|
|
||||||
|
nubusProvisioning:
|
||||||
|
api:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusProvisioningEventsAndConsumerApi.registry }}
|
||||||
|
repository: {{ .Values.images.nubusProvisioningEventsAndConsumerApi.repository }}
|
||||||
|
tag: {{ .Values.images.nubusProvisioningEventsAndConsumerApi.tag }}
|
||||||
|
dispatcher:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusProvisioningDispatcher.registry }}
|
||||||
|
repository: {{ .Values.images.nubusProvisioningDispatcher.repository }}
|
||||||
|
tag: {{ .Values.images.nubusProvisioningDispatcher.tag }}
|
||||||
|
udmTransformer:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusProvisioningUdmTransformer.registry }}
|
||||||
|
repository: {{ .Values.images.nubusProvisioningUdmTransformer.repository }}
|
||||||
|
tag: {{ .Values.images.nubusProvisioningUdmTransformer.tag }}
|
||||||
|
prefill:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusProvisioningPrefill.registry }}
|
||||||
|
repository: {{ .Values.images.nubusProvisioningPrefill.repository }}
|
||||||
|
tag: {{ .Values.images.nubusProvisioningPrefill.tag }}
|
||||||
|
registerConsumers:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusWaitForDependency.registry }}
|
||||||
|
repository: {{ .Values.images.nubusWaitForDependency.repository }}
|
||||||
|
tag: {{ .Values.images.nubusWaitForDependency.tag }}
|
||||||
|
nats:
|
||||||
|
nats:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusNats.registry }}
|
||||||
|
repository: {{ .Values.images.nubusNats.repository }}
|
||||||
|
tag: {{ .Values.images.nubusNats.tag }}
|
||||||
|
reloader:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusNatsReloader.registry }}
|
||||||
|
repository: {{ .Values.images.nubusNatsReloader.repository }}
|
||||||
|
tag: {{ .Values.images.nubusNatsReloader.tag }}
|
||||||
|
natsBox:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusNatsBox.registry }}
|
||||||
|
repository: {{ .Values.images.nubusNatsBox.repository }}
|
||||||
|
tag: {{ .Values.images.nubusNatsBox.tag }}
|
||||||
|
|
||||||
|
nubusProvisioningEventsAndConsumerApi:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusProvisioningEventsAndConsumerApi.registry }}
|
||||||
|
repository: {{ .Values.images.nubusProvisioningEventsAndConsumerApi.repository }}
|
||||||
|
tag: {{ .Values.images.nubusProvisioningEventsAndConsumerApi.tag }}
|
||||||
|
|
||||||
|
nubusProvisioningPrefill:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusProvisioningPrefill.registry }}
|
||||||
|
repository: {{ .Values.images.nubusProvisioningPrefill.repository }}
|
||||||
|
tag: {{ .Values.images.nubusProvisioningPrefill.tag }}
|
||||||
|
|
||||||
|
nubusUdmListener:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusProvisioningUdmListener.registry }}
|
||||||
|
repository: {{ .Values.images.nubusProvisioningUdmListener.repository }}
|
||||||
|
tag: {{ .Values.images.nubusProvisioningUdmListener.tag }}
|
||||||
|
|
||||||
|
nubusSelfServiceListener:
|
||||||
|
selfserviceListener:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusSelfserviceListener.registry }}
|
||||||
|
repository: {{ .Values.images.nubusSelfserviceListener.repository }}
|
||||||
|
tag: {{ .Values.images.nubusSelfserviceListener.tag }}
|
||||||
|
selfserviceInvitation:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusSelfserviceInvitation.registry }}
|
||||||
|
repository: {{ .Values.images.nubusSelfserviceInvitation.repository }}
|
||||||
|
tag: {{ .Values.images.nubusSelfserviceInvitation.tag }}
|
||||||
|
waitForDependency:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusWaitForDependency.registry }}
|
||||||
|
repository: {{ .Values.images.nubusWaitForDependency.repository }}
|
||||||
|
tag: {{ .Values.images.nubusWaitForDependency.tag }}
|
||||||
|
|
||||||
|
nubusUdmRestApi:
|
||||||
|
# oxPlugin:
|
||||||
|
# image:
|
||||||
|
# registry: \{\{ .Values.images.nubusUdmRestApiOxPlugin.registry }}
|
||||||
|
# repository: \{\{ .Values.images.nubusUdmRestApiOxPlugin.repository }}
|
||||||
|
# tag: \{\{ .Values.images.nubusUdmRestApiOxPlugin.tag }}
|
||||||
|
# portalPlugin:
|
||||||
|
# image:
|
||||||
|
# registry: \{\{ .Values.images.nubusUdmRestApiPortalPlugin.registry }}
|
||||||
|
# repository: \{\{ .Values.images.nubusUdmRestApiPortalPlugin.repository }}
|
||||||
|
# tag: \{\{ .Values.images.nubusUdmRestApiPortalPlugin.tag }}
|
||||||
|
udmRestApi:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusUdmRestApi.registry }}
|
||||||
|
repository: {{ .Values.images.nubusUdmRestApi.repository }}
|
||||||
|
tag: {{ .Values.images.nubusUdmRestApi.tag }}
|
||||||
|
|
||||||
|
nubusUmcGateway:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusUmcGateway.registry }}
|
||||||
|
repository: {{ .Values.images.nubusUmcGateway.repository }}
|
||||||
|
tag: {{ .Values.images.nubusUmcGateway.tag }}
|
||||||
|
|
||||||
|
nubusUmcServer:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusUmcServer.registry }}
|
||||||
|
repository: {{ .Values.images.nubusUmcServer.repository }}
|
||||||
|
tag: {{ .Values.images.nubusUmcServer.tag }}
|
||||||
|
|
||||||
|
nubusWaitForDependency:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusWaitForDependency.registry }}
|
||||||
|
repository: {{ .Values.images.nubusWaitForDependency.repository }}
|
||||||
|
tag: {{ .Values.images.nubusWaitForDependency.tag }}
|
||||||
|
|
||||||
|
|
||||||
|
nubusGuardian:
|
||||||
|
provisioning:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusGuardianProvisioning.registry }}
|
||||||
|
repository: {{ .Values.images.nubusGuardianProvisioning.repository }}
|
||||||
|
tag: {{ .Values.images.nubusGuardianProvisioning.tag }}
|
||||||
|
authorizationApi:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusGuardianAuthorizationApi.registry }}
|
||||||
|
repository: {{ .Values.images.nubusGuardianAuthorizationApi.repository }}
|
||||||
|
tag: {{ .Values.images.nubusGuardianAuthorizationApi.tag }}
|
||||||
|
managementApi:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusGuardianManagementApi.registry }}
|
||||||
|
repository: {{ .Values.images.nubusGuardianManagementApi.repository }}
|
||||||
|
tag: {{ .Values.images.nubusGuardianManagementApi.tag }}
|
||||||
|
managementUi:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusGuardianManagementUi.registry }}
|
||||||
|
repository: {{ .Values.images.nubusGuardianManagementUi.repository }}
|
||||||
|
tag: {{ .Values.images.nubusGuardianManagementUi.tag }}
|
||||||
|
openPolicyAgent:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusOpenPolicyAgent.registry }}
|
||||||
|
repository: {{ .Values.images.nubusOpenPolicyAgent.repository }}
|
||||||
|
tag: {{ .Values.images.nubusOpenPolicyAgent.tag }}
|
||||||
|
|
||||||
|
nubusStackDataUms:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusDataLoader.registry }}
|
||||||
|
repository: {{ .Values.images.nubusDataLoader.repository }}
|
||||||
|
tag: {{ .Values.images.nubusDataLoader.tag }}
|
||||||
|
|
||||||
|
nubusStackDataSwp:
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.images.nubusDataLoader.registry }}
|
||||||
|
repository: {{ .Values.images.nubusDataLoader.repository }}
|
||||||
|
tag: {{ .Values.images.nubusDataLoader.tag }}
|
||||||
@@ -17,10 +17,18 @@ image:
|
|||||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
|
|
||||||
cleanup:
|
cleanup:
|
||||||
deletePodsOnSuccess: {{ .Values.cleanup.deletePodsOnSuccess }}
|
deletePodsOnSuccess: {{ .Values.debug.cleanup.deletePodsOnSuccess }}
|
||||||
keepPVCOnDelete: {{ .Values.cleanup.keepPVCOnDelete }}
|
keepPVCOnDelete: {{ .Values.debug.cleanup.keepPVCOnDelete }}
|
||||||
|
|
||||||
config:
|
config:
|
||||||
|
custom:
|
||||||
|
clientScopes:
|
||||||
|
{{ .Values.functional.authentication.oidc.clientScopes | toYaml | nindent 6 }}
|
||||||
|
clients:
|
||||||
|
{{ .Values.functional.authentication.oidc.clients | toYaml | nindent 6 }}
|
||||||
|
managed:
|
||||||
|
clientScopes: [ 'acr', 'web-origins', 'email', 'profile', 'microprofile-jwt', 'role_list', 'offline_access', 'roles', 'address', 'phone' ]
|
||||||
|
clients: [ 'UMC', 'guardian-management-api', 'guardian-scripts', 'guardian-ui', '${client_account}', '${client_account-console}', '${client_admin-cli}', '${client_broker}', '${client_realm-management}', '${client_security-admin-console}' ]
|
||||||
keycloak:
|
keycloak:
|
||||||
adminUser: "kcadmin"
|
adminUser: "kcadmin"
|
||||||
adminPassword: {{ .Values.secrets.keycloak.adminPassword | quote }}
|
adminPassword: {{ .Values.secrets.keycloak.adminPassword | quote }}
|
||||||
@@ -29,14 +37,19 @@ config:
|
|||||||
enabled: true
|
enabled: true
|
||||||
internalBaseUrl: "http://ums-keycloak.{{ .Release.Namespace }}.svc.{{ .Values.cluster.networking.domain }}:8080"
|
internalBaseUrl: "http://ums-keycloak.{{ .Release.Namespace }}.svc.{{ .Values.cluster.networking.domain }}:8080"
|
||||||
twoFactorSettings:
|
twoFactorSettings:
|
||||||
additionalGroups: {{ .Values.authentication.twoFactor.groups }}
|
additionalGroups: {{ .Values.functional.authentication.twoFactor.groups }}
|
||||||
custom:
|
opendesk:
|
||||||
|
# We use client specific scopes as we bind them to Keycloak role membership which itself is linked
|
||||||
|
# to LDAP group membership to ensure a user cannot access an application without the required
|
||||||
|
# group membership.
|
||||||
|
# ToDo: Ensure all applications verify the token's signature to ensure it is not tampered.
|
||||||
clientScopes:
|
clientScopes:
|
||||||
- name: "read_contacts"
|
- name: "read_contacts"
|
||||||
protocol: "openid-connect"
|
protocol: "openid-connect"
|
||||||
- name: "write_contacts"
|
- name: "write_contacts"
|
||||||
protocol: "openid-connect"
|
protocol: "openid-connect"
|
||||||
- name: "opendesk"
|
- name: "opendesk-openproject-scope"
|
||||||
|
description: "Scope for the claims required by openDesk's OpenProject instance."
|
||||||
protocol: "openid-connect"
|
protocol: "openid-connect"
|
||||||
protocolMappers:
|
protocolMappers:
|
||||||
- name: "opendesk_useruuid"
|
- name: "opendesk_useruuid"
|
||||||
@@ -61,6 +74,306 @@ config:
|
|||||||
access.token.claim: true
|
access.token.claim: true
|
||||||
claim.name: "opendesk_username"
|
claim.name: "opendesk_username"
|
||||||
jsonType.label: "String"
|
jsonType.label: "String"
|
||||||
|
- name: "opendeskProjectmanagementAdmin"
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||||
|
consentRequired: false
|
||||||
|
config:
|
||||||
|
userinfo.token.claim: true
|
||||||
|
user.attribute: "opendeskProjectmanagementAdmin"
|
||||||
|
id.token.claim: true
|
||||||
|
access.token.claim: true
|
||||||
|
claim.name: "openproject_admin"
|
||||||
|
jsonType.label: "String"
|
||||||
|
- name: "email"
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||||
|
consentRequired: false
|
||||||
|
config:
|
||||||
|
introspection.token.claim: true
|
||||||
|
userinfo.token.claim: true
|
||||||
|
user.attribute: "email"
|
||||||
|
id.token.claim: true
|
||||||
|
access.token.claim: true
|
||||||
|
claim.name: "email"
|
||||||
|
jsonType.label: "String"
|
||||||
|
- name: "given name"
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||||
|
consentRequired: false
|
||||||
|
config:
|
||||||
|
introspection.token.claim: true
|
||||||
|
userinfo.token.claim: true
|
||||||
|
user.attribute: "firstName"
|
||||||
|
id.token.claim: true
|
||||||
|
access.token.claim: true
|
||||||
|
claim.name: "given_name"
|
||||||
|
jsonType.label: "String"
|
||||||
|
- name: "family name"
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||||
|
consentRequired: false
|
||||||
|
config:
|
||||||
|
introspection.token.claim: true
|
||||||
|
userinfo.token.claim: true
|
||||||
|
user.attribute: "lastName"
|
||||||
|
id.token.claim: true
|
||||||
|
access.token.claim: true
|
||||||
|
claim.name: "family_name"
|
||||||
|
jsonType.label: "String"
|
||||||
|
- name: "opendesk-jitsi-scope"
|
||||||
|
description: "Scope for the claims required by openDesk's Jitsi instance."
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMappers:
|
||||||
|
- name: "opendesk_useruuid"
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||||
|
consentRequired: false
|
||||||
|
config:
|
||||||
|
userinfo.token.claim: true
|
||||||
|
user.attribute: "entryUUID"
|
||||||
|
id.token.claim: true
|
||||||
|
access.token.claim: true
|
||||||
|
claim.name: "opendesk_useruuid"
|
||||||
|
jsonType.label: "String"
|
||||||
|
- name: "opendesk_username"
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||||
|
consentRequired: false
|
||||||
|
config:
|
||||||
|
userinfo.token.claim: true
|
||||||
|
user.attribute: "uid"
|
||||||
|
id.token.claim: true
|
||||||
|
access.token.claim: true
|
||||||
|
claim.name: "opendesk_username"
|
||||||
|
jsonType.label: "String"
|
||||||
|
- name: "full name"
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMapper: "oidc-full-name-mapper"
|
||||||
|
consentRequired: false
|
||||||
|
config:
|
||||||
|
id.token.claim: true
|
||||||
|
introspection.token.claim: true
|
||||||
|
access.token.claim: true
|
||||||
|
userinfo.token.claim: true
|
||||||
|
- name: "email"
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||||
|
consentRequired: false
|
||||||
|
config:
|
||||||
|
introspection.token.claim: true
|
||||||
|
userinfo.token.claim: true
|
||||||
|
user.attribute: "email"
|
||||||
|
id.token.claim: true
|
||||||
|
access.token.claim: true
|
||||||
|
claim.name: "email"
|
||||||
|
jsonType.label: "String"
|
||||||
|
- name: "opendesk-nextcloud-scope"
|
||||||
|
description: "Scope for the claims required by openDesk's Nextcloud instance."
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMappers:
|
||||||
|
- name: "opendesk_useruuid"
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||||
|
consentRequired: false
|
||||||
|
config:
|
||||||
|
userinfo.token.claim: true
|
||||||
|
user.attribute: "entryUUID"
|
||||||
|
id.token.claim: true
|
||||||
|
access.token.claim: true
|
||||||
|
claim.name: "opendesk_useruuid"
|
||||||
|
jsonType.label: "String"
|
||||||
|
- name: "opendesk_username"
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||||
|
consentRequired: false
|
||||||
|
config:
|
||||||
|
userinfo.token.claim: true
|
||||||
|
user.attribute: "uid"
|
||||||
|
id.token.claim: true
|
||||||
|
access.token.claim: true
|
||||||
|
claim.name: "opendesk_username"
|
||||||
|
jsonType.label: "String"
|
||||||
|
- name: "email"
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||||
|
consentRequired: false
|
||||||
|
config:
|
||||||
|
introspection.token.claim: true
|
||||||
|
userinfo.token.claim: true
|
||||||
|
user.attribute: "email"
|
||||||
|
id.token.claim: true
|
||||||
|
access.token.claim: true
|
||||||
|
claim.name: "email"
|
||||||
|
jsonType.label: "String"
|
||||||
|
- name: "context"
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||||
|
consentRequired: false
|
||||||
|
config:
|
||||||
|
userinfo.token.claim: true
|
||||||
|
user.attribute: "oxContextIDNum"
|
||||||
|
id.token.claim: true
|
||||||
|
access.token.claim: true
|
||||||
|
claim.name: "context"
|
||||||
|
jsonType.label: "String"
|
||||||
|
- name: "opendesk-matrix-scope"
|
||||||
|
description: "Scope for the claims required by openDesk's Matrix instance."
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMappers:
|
||||||
|
- name: "opendesk_useruuid"
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||||
|
consentRequired: false
|
||||||
|
config:
|
||||||
|
userinfo.token.claim: true
|
||||||
|
user.attribute: "entryUUID"
|
||||||
|
id.token.claim: true
|
||||||
|
access.token.claim: true
|
||||||
|
claim.name: "opendesk_useruuid"
|
||||||
|
jsonType.label: "String"
|
||||||
|
- name: "opendesk_username"
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||||
|
consentRequired: false
|
||||||
|
config:
|
||||||
|
userinfo.token.claim: true
|
||||||
|
user.attribute: "uid"
|
||||||
|
id.token.claim: true
|
||||||
|
access.token.claim: true
|
||||||
|
claim.name: "opendesk_username"
|
||||||
|
jsonType.label: "String"
|
||||||
|
- name: "full name"
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMapper: "oidc-full-name-mapper"
|
||||||
|
consentRequired: false
|
||||||
|
config:
|
||||||
|
id.token.claim: true
|
||||||
|
introspection.token.claim: true
|
||||||
|
access.token.claim: true
|
||||||
|
userinfo.token.claim: true
|
||||||
|
- name: "email"
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||||
|
consentRequired: false
|
||||||
|
config:
|
||||||
|
introspection.token.claim: true
|
||||||
|
userinfo.token.claim: true
|
||||||
|
user.attribute: "email"
|
||||||
|
id.token.claim: true
|
||||||
|
access.token.claim: true
|
||||||
|
claim.name: "email"
|
||||||
|
jsonType.label: "String"
|
||||||
|
- name: "opendesk-xwiki-scope"
|
||||||
|
description: "Scope for the claims required by openDesk's XWiki instance."
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMappers:
|
||||||
|
- name: "opendesk_useruuid"
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||||
|
consentRequired: false
|
||||||
|
config:
|
||||||
|
userinfo.token.claim: true
|
||||||
|
user.attribute: "entryUUID"
|
||||||
|
id.token.claim: true
|
||||||
|
access.token.claim: true
|
||||||
|
claim.name: "opendesk_useruuid"
|
||||||
|
jsonType.label: "String"
|
||||||
|
- name: "opendesk_username"
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||||
|
consentRequired: false
|
||||||
|
config:
|
||||||
|
userinfo.token.claim: true
|
||||||
|
user.attribute: "uid"
|
||||||
|
id.token.claim: true
|
||||||
|
access.token.claim: true
|
||||||
|
claim.name: "opendesk_username"
|
||||||
|
jsonType.label: "String"
|
||||||
|
- name: "full name"
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMapper: "oidc-full-name-mapper"
|
||||||
|
consentRequired: false
|
||||||
|
config:
|
||||||
|
id.token.claim: true
|
||||||
|
introspection.token.claim: true
|
||||||
|
access.token.claim: true
|
||||||
|
userinfo.token.claim: true
|
||||||
|
- name: "email"
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||||
|
consentRequired: false
|
||||||
|
config:
|
||||||
|
introspection.token.claim: true
|
||||||
|
userinfo.token.claim: true
|
||||||
|
user.attribute: "email"
|
||||||
|
id.token.claim: true
|
||||||
|
access.token.claim: true
|
||||||
|
claim.name: "email"
|
||||||
|
jsonType.label: "String"
|
||||||
|
- name: "opendesk-dovecot-scope"
|
||||||
|
description: "Scope for the claims required by openDesk's Dovecot instance."
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMappers:
|
||||||
|
- name: "opendesk_useruuid"
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||||
|
consentRequired: false
|
||||||
|
config:
|
||||||
|
userinfo.token.claim: true
|
||||||
|
user.attribute: "entryUUID"
|
||||||
|
id.token.claim: true
|
||||||
|
access.token.claim: true
|
||||||
|
claim.name: "opendesk_useruuid"
|
||||||
|
jsonType.label: "String"
|
||||||
|
- name: "opendesk_username"
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||||
|
consentRequired: false
|
||||||
|
config:
|
||||||
|
userinfo.token.claim: true
|
||||||
|
user.attribute: "uid"
|
||||||
|
id.token.claim: true
|
||||||
|
access.token.claim: true
|
||||||
|
claim.name: "opendesk_username"
|
||||||
|
jsonType.label: "String"
|
||||||
|
- name: "opendesk-oxappsuite-scope"
|
||||||
|
description: "Scope for the claims required by openDesk's OX Appuite instance."
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMappers:
|
||||||
|
- name: "context"
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||||
|
consentRequired: false
|
||||||
|
config:
|
||||||
|
userinfo.token.claim: true
|
||||||
|
user.attribute: "oxContextIDNum"
|
||||||
|
id.token.claim: true
|
||||||
|
access.token.claim: true
|
||||||
|
claim.name: "context"
|
||||||
|
jsonType.label: "String"
|
||||||
|
- name: "opendesk_useruuid"
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||||
|
consentRequired: false
|
||||||
|
config:
|
||||||
|
userinfo.token.claim: true
|
||||||
|
user.attribute: "entryUUID"
|
||||||
|
id.token.claim: true
|
||||||
|
access.token.claim: true
|
||||||
|
claim.name: "opendesk_useruuid"
|
||||||
|
jsonType.label: "String"
|
||||||
|
- name: "opendesk_username"
|
||||||
|
protocol: "openid-connect"
|
||||||
|
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||||
|
consentRequired: false
|
||||||
|
config:
|
||||||
|
userinfo.token.claim: true
|
||||||
|
user.attribute: "uid"
|
||||||
|
id.token.claim: true
|
||||||
|
access.token.claim: true
|
||||||
|
claim.name: "opendesk_username"
|
||||||
|
jsonType.label: "String"
|
||||||
clients:
|
clients:
|
||||||
- name: "opendesk-dovecot"
|
- name: "opendesk-dovecot"
|
||||||
clientId: "opendesk-dovecot"
|
clientId: "opendesk-dovecot"
|
||||||
@@ -74,7 +387,7 @@ config:
|
|||||||
attributes:
|
attributes:
|
||||||
backchannel.logout.session.required: false
|
backchannel.logout.session.required: false
|
||||||
defaultClientScopes:
|
defaultClientScopes:
|
||||||
- "opendesk"
|
- "opendesk-dovecot-scope"
|
||||||
- name: "opendesk-intercom"
|
- name: "opendesk-intercom"
|
||||||
clientId: "opendesk-intercom"
|
clientId: "opendesk-intercom"
|
||||||
protocol: "openid-connect"
|
protocol: "openid-connect"
|
||||||
@@ -128,7 +441,6 @@ config:
|
|||||||
claim.name: "phoenixusername"
|
claim.name: "phoenixusername"
|
||||||
jsonType.label: "String"
|
jsonType.label: "String"
|
||||||
defaultClientScopes:
|
defaultClientScopes:
|
||||||
- "opendesk"
|
|
||||||
- "offline_access"
|
- "offline_access"
|
||||||
- name: "opendesk-jitsi"
|
- name: "opendesk-jitsi"
|
||||||
clientId: "opendesk-jitsi"
|
clientId: "opendesk-jitsi"
|
||||||
@@ -142,8 +454,7 @@ config:
|
|||||||
fullScopeAllowed: true
|
fullScopeAllowed: true
|
||||||
authorizationServicesEnabled: false
|
authorizationServicesEnabled: false
|
||||||
defaultClientScopes:
|
defaultClientScopes:
|
||||||
- "opendesk"
|
- "opendesk-jitsi-scope"
|
||||||
- "profile"
|
|
||||||
- name: "opendesk-matrix"
|
- name: "opendesk-matrix"
|
||||||
clientId: "opendesk-matrix"
|
clientId: "opendesk-matrix"
|
||||||
protocol: "openid-connect"
|
protocol: "openid-connect"
|
||||||
@@ -152,7 +463,7 @@ config:
|
|||||||
redirectUris:
|
redirectUris:
|
||||||
- "https://{{ .Values.global.hosts.element }}.{{ .Values.global.domain }}/*"
|
- "https://{{ .Values.global.hosts.element }}.{{ .Values.global.domain }}/*"
|
||||||
- "https://{{ .Values.global.hosts.synapse }}.{{ .Values.global.domain }}/*"
|
- "https://{{ .Values.global.hosts.synapse }}.{{ .Values.global.domain }}/*"
|
||||||
- "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}/*"
|
- "https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/*"
|
||||||
standardFlowEnabled: true
|
standardFlowEnabled: true
|
||||||
directAccessGrantsEnabled: true
|
directAccessGrantsEnabled: true
|
||||||
serviceAccountsEnabled: true
|
serviceAccountsEnabled: true
|
||||||
@@ -163,14 +474,11 @@ config:
|
|||||||
attributes:
|
attributes:
|
||||||
backchannel.logout.session.required: true
|
backchannel.logout.session.required: true
|
||||||
backchannel.logout.url: "https://{{ .Values.global.hosts.synapse }}.{{ .Values.global.domain }}/_synapse/client/oidc/backchannel_logout"
|
backchannel.logout.url: "https://{{ .Values.global.hosts.synapse }}.{{ .Values.global.domain }}/_synapse/client/oidc/backchannel_logout"
|
||||||
post.logout.redirect.uris: "https://{{ .Values.global.hosts.element }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.synapse }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .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"
|
- "opendesk-matrix-scope"
|
||||||
optionalClientScopes:
|
# The following is a temporary OIDC client for matrix, as the OIDC logout still uses "matrix" as client ID.
|
||||||
- "email"
|
# Unless that is solved and also is able to use "opendesk-matrix" we keep that dummy client that
|
||||||
- "profile"
|
|
||||||
# This is a temporary OIDC client for matrix, as the OIDC logout still uses "matrix" as client ID. Unless that
|
|
||||||
# is solved and also is able to use "opendesk-matrix" we keep that dummy client that
|
|
||||||
- name: "matrix"
|
- name: "matrix"
|
||||||
clientId: "matrix"
|
clientId: "matrix"
|
||||||
protocol: "openid-connect"
|
protocol: "openid-connect"
|
||||||
@@ -182,7 +490,9 @@ config:
|
|||||||
publicClient: false
|
publicClient: false
|
||||||
authorizationServicesEnabled: false
|
authorizationServicesEnabled: false
|
||||||
attributes:
|
attributes:
|
||||||
post.logout.redirect.uris: "https://{{ .Values.global.hosts.element }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.synapse }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .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: []
|
||||||
|
optionalClientScopes: []
|
||||||
- name: "opendesk-nextcloud"
|
- name: "opendesk-nextcloud"
|
||||||
clientId: "opendesk-nextcloud"
|
clientId: "opendesk-nextcloud"
|
||||||
protocol: "openid-connect"
|
protocol: "openid-connect"
|
||||||
@@ -190,7 +500,7 @@ config:
|
|||||||
secret: {{ .Values.secrets.keycloak.clientSecret.ncoidc | quote }}
|
secret: {{ .Values.secrets.keycloak.clientSecret.ncoidc | quote }}
|
||||||
redirectUris:
|
redirectUris:
|
||||||
- "https://{{ .Values.global.hosts.nextcloud }}.{{ .Values.global.domain }}/*"
|
- "https://{{ .Values.global.hosts.nextcloud }}.{{ .Values.global.domain }}/*"
|
||||||
- "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}/*"
|
- "https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/*"
|
||||||
consentRequired: false
|
consentRequired: false
|
||||||
frontchannelLogout: false
|
frontchannelLogout: false
|
||||||
publicClient: false
|
publicClient: false
|
||||||
@@ -198,22 +508,9 @@ config:
|
|||||||
attributes:
|
attributes:
|
||||||
backchannel.logout.session.required: true
|
backchannel.logout.session.required: true
|
||||||
backchannel.logout.url: "https://{{ .Values.global.hosts.nextcloud }}.{{ .Values.global.domain }}/index.php/apps/user_oidc/backchannel-logout/opendesk"
|
backchannel.logout.url: "https://{{ .Values.global.hosts.nextcloud }}.{{ .Values.global.domain }}/index.php/apps/user_oidc/backchannel-logout/opendesk"
|
||||||
post.logout.redirect.uris: "https://{{ .Values.global.hosts.nextcloud }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}/*"
|
post.logout.redirect.uris: "https://{{ .Values.global.hosts.nextcloud }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/*"
|
||||||
protocolMappers:
|
|
||||||
- name: "context"
|
|
||||||
protocol: "openid-connect"
|
|
||||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
|
||||||
consentRequired: false
|
|
||||||
config:
|
|
||||||
userinfo.token.claim: true
|
|
||||||
user.attribute: "oxContextIDNum"
|
|
||||||
id.token.claim: true
|
|
||||||
access.token.claim: true
|
|
||||||
claim.name: "context"
|
|
||||||
jsonType.label: "String"
|
|
||||||
defaultClientScopes:
|
defaultClientScopes:
|
||||||
- "opendesk"
|
- "opendesk-nextcloud-scope"
|
||||||
- "email"
|
|
||||||
- "read_contacts"
|
- "read_contacts"
|
||||||
- "write_contacts"
|
- "write_contacts"
|
||||||
- name: "opendesk-openproject"
|
- name: "opendesk-openproject"
|
||||||
@@ -223,7 +520,7 @@ config:
|
|||||||
secret: {{ .Values.secrets.keycloak.clientSecret.openproject | quote }}
|
secret: {{ .Values.secrets.keycloak.clientSecret.openproject | quote }}
|
||||||
redirectUris:
|
redirectUris:
|
||||||
- "https://{{ .Values.global.hosts.openproject }}.{{ .Values.global.domain }}/*"
|
- "https://{{ .Values.global.hosts.openproject }}.{{ .Values.global.domain }}/*"
|
||||||
- "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}/*"
|
- "https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/*"
|
||||||
consentRequired: false
|
consentRequired: false
|
||||||
frontchannelLogout: false
|
frontchannelLogout: false
|
||||||
publicClient: false
|
publicClient: false
|
||||||
@@ -232,23 +529,9 @@ config:
|
|||||||
attributes:
|
attributes:
|
||||||
backchannel.logout.session.required: true
|
backchannel.logout.session.required: true
|
||||||
backchannel.logout.url: "https://{{ .Values.global.hosts.openproject }}.{{ .Values.global.domain }}/auth/keycloak/backchannel-logout"
|
backchannel.logout.url: "https://{{ .Values.global.hosts.openproject }}.{{ .Values.global.domain }}/auth/keycloak/backchannel-logout"
|
||||||
post.logout.redirect.uris: "https://{{ .Values.global.hosts.openproject }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}/*"
|
post.logout.redirect.uris: "https://{{ .Values.global.hosts.openproject }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/*"
|
||||||
protocolMappers:
|
|
||||||
- name: "opendeskProjectmanagementAdmin"
|
|
||||||
protocol: "openid-connect"
|
|
||||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
|
||||||
consentRequired: false
|
|
||||||
config:
|
|
||||||
userinfo.token.claim: true
|
|
||||||
user.attribute: "opendeskProjectmanagementAdmin"
|
|
||||||
id.token.claim: true
|
|
||||||
access.token.claim: true
|
|
||||||
claim.name: "openproject_admin"
|
|
||||||
jsonType.label: "String"
|
|
||||||
defaultClientScopes:
|
defaultClientScopes:
|
||||||
- "opendesk"
|
- "opendesk-openproject-scope"
|
||||||
- "email"
|
|
||||||
- "profile"
|
|
||||||
- name: "opendesk-oxappsuite"
|
- name: "opendesk-oxappsuite"
|
||||||
clientId: "opendesk-oxappsuite"
|
clientId: "opendesk-oxappsuite"
|
||||||
protocol: "openid-connect"
|
protocol: "openid-connect"
|
||||||
@@ -256,7 +539,7 @@ config:
|
|||||||
secret: {{ .Values.secrets.keycloak.clientSecret.as8oidc | quote }}
|
secret: {{ .Values.secrets.keycloak.clientSecret.as8oidc | quote }}
|
||||||
redirectUris:
|
redirectUris:
|
||||||
- "https://{{ .Values.global.hosts.openxchange }}.{{ .Values.global.domain }}/*"
|
- "https://{{ .Values.global.hosts.openxchange }}.{{ .Values.global.domain }}/*"
|
||||||
- "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}/*"
|
- "https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/*"
|
||||||
consentRequired: false
|
consentRequired: false
|
||||||
frontchannelLogout: false
|
frontchannelLogout: false
|
||||||
publicClient: false
|
publicClient: false
|
||||||
@@ -264,21 +547,9 @@ config:
|
|||||||
attributes:
|
attributes:
|
||||||
backchannel.logout.session.required: true
|
backchannel.logout.session.required: true
|
||||||
backchannel.logout.url: "https://{{ .Values.global.hosts.openxchange }}.{{ .Values.global.domain }}/ajax/oidc/backchannel_logout"
|
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.univentionManagementStack }}.{{ .Values.global.domain }}/*"
|
post.logout.redirect.uris: "https://{{ .Values.global.hosts.openxchange }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/*"
|
||||||
protocolMappers:
|
|
||||||
- name: "context"
|
|
||||||
protocol: "openid-connect"
|
|
||||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
|
||||||
consentRequired: false
|
|
||||||
config:
|
|
||||||
userinfo.token.claim: true
|
|
||||||
user.attribute: "oxContextIDNum"
|
|
||||||
id.token.claim: true
|
|
||||||
access.token.claim: true
|
|
||||||
claim.name: "context"
|
|
||||||
jsonType.label: "String"
|
|
||||||
defaultClientScopes:
|
defaultClientScopes:
|
||||||
- "opendesk"
|
- "opendesk-oxappsuite-scope"
|
||||||
- "read_contacts"
|
- "read_contacts"
|
||||||
- "write_contacts"
|
- "write_contacts"
|
||||||
- name: "opendesk-xwiki"
|
- name: "opendesk-xwiki"
|
||||||
@@ -288,7 +559,7 @@ config:
|
|||||||
secret: {{ .Values.secrets.keycloak.clientSecret.xwiki | quote }}
|
secret: {{ .Values.secrets.keycloak.clientSecret.xwiki | quote }}
|
||||||
redirectUris:
|
redirectUris:
|
||||||
- "https://{{ .Values.global.hosts.xwiki }}.{{ .Values.global.domain }}/*"
|
- "https://{{ .Values.global.hosts.xwiki }}.{{ .Values.global.domain }}/*"
|
||||||
- "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}/*"
|
- "https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/*"
|
||||||
consentRequired: false
|
consentRequired: false
|
||||||
frontchannelLogout: false
|
frontchannelLogout: false
|
||||||
publicClient: false
|
publicClient: false
|
||||||
@@ -296,304 +567,9 @@ config:
|
|||||||
attributes:
|
attributes:
|
||||||
backchannel.logout.session.required: false
|
backchannel.logout.session.required: false
|
||||||
backchannel.logout.url: "https://{{ .Values.global.hosts.xwiki }}.{{ .Values.global.domain }}/oidc/authenticator/backchannel_logout"
|
backchannel.logout.url: "https://{{ .Values.global.hosts.xwiki }}.{{ .Values.global.domain }}/oidc/authenticator/backchannel_logout"
|
||||||
post.logout.redirect.uris: "https://{{ .Values.global.hosts.xwiki }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .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"
|
- "opendesk-xwiki-scope"
|
||||||
- "address"
|
|
||||||
- "email"
|
|
||||||
- "profile"
|
|
||||||
- name: "guardian-management-api"
|
|
||||||
clientId: "guardian-management-api"
|
|
||||||
rootUrl: "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}"
|
|
||||||
baseUrl: "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}"
|
|
||||||
protocol: "openid-connect"
|
|
||||||
publicClient: false
|
|
||||||
clientAuthenticatorType: "client-secret"
|
|
||||||
secret: {{ .Values.secrets.keycloak.clientSecret.guardian | quote }}
|
|
||||||
redirectUris:
|
|
||||||
- "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}/guardian/*"
|
|
||||||
fullScopeAllowed: true
|
|
||||||
standardFlowEnabled: true
|
|
||||||
implicitFlowEnabled: false
|
|
||||||
directAccessGrantsEnabled: false
|
|
||||||
serviceAccountsEnabled: true
|
|
||||||
protocolMappers:
|
|
||||||
- name: "Client Host"
|
|
||||||
protocol: "openid-connect"
|
|
||||||
protocolMapper: "oidc-usersessionmodel-note-mapper"
|
|
||||||
consentRequired: false
|
|
||||||
config:
|
|
||||||
user.session.note: "clientHost"
|
|
||||||
userinfo.token.claim: true
|
|
||||||
id.token.claim: true
|
|
||||||
access.token.claim: true
|
|
||||||
claim.name: "clientHost"
|
|
||||||
jsonType.label: "String"
|
|
||||||
- name: "Client ID"
|
|
||||||
protocol: "openid-connect"
|
|
||||||
protocolMapper: "oidc-usersessionmodel-note-mapper"
|
|
||||||
consentRequired: false
|
|
||||||
config:
|
|
||||||
user.session.note: "client_id"
|
|
||||||
userinfo.token.claim: true
|
|
||||||
id.token.claim: true
|
|
||||||
access.token.claim: true
|
|
||||||
claim.name: "client_id"
|
|
||||||
jsonType.label: "String"
|
|
||||||
- name: "guardian-audience"
|
|
||||||
protocol: "openid-connect"
|
|
||||||
protocolMapper: "oidc-audience-mapper"
|
|
||||||
consentRequired: false
|
|
||||||
config:
|
|
||||||
included.client.audience: "guardian"
|
|
||||||
userinfo.token.claim: false
|
|
||||||
id.token.claim: false
|
|
||||||
access.token.claim: true
|
|
||||||
- name: "audiencemap"
|
|
||||||
protocol: "openid-connect"
|
|
||||||
protocolMapper: "oidc-audience-mapper"
|
|
||||||
consentRequired: false
|
|
||||||
config:
|
|
||||||
included.client.audience: "guardian-cli"
|
|
||||||
userinfo.token.claim: true
|
|
||||||
id.token.claim: true
|
|
||||||
access.token.claim: true
|
|
||||||
- name: "dn"
|
|
||||||
protocol: "openid-connect"
|
|
||||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
|
||||||
consentRequired: false
|
|
||||||
config:
|
|
||||||
userinfo.token.claim: false
|
|
||||||
user.attribute: "LDAP_ENTRY_DN"
|
|
||||||
id.token.claim: false
|
|
||||||
access.token.claim: true
|
|
||||||
claim.name: "dn"
|
|
||||||
jsonType.label: "String"
|
|
||||||
- name: "username"
|
|
||||||
protocol: "openid-connect"
|
|
||||||
protocolMapper: "oidc-usermodel-property-mapper"
|
|
||||||
consentRequired: false
|
|
||||||
config:
|
|
||||||
userinfo.token.claim: true
|
|
||||||
user.attribute: "username"
|
|
||||||
id.token.claim: true
|
|
||||||
access.token.claim: true
|
|
||||||
claim.name: "preferred_username"
|
|
||||||
jsonType.label: "String"
|
|
||||||
- name: "uid"
|
|
||||||
protocol: "openid-connect"
|
|
||||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
|
||||||
consentRequired: false
|
|
||||||
config:
|
|
||||||
userinfo.token.claim: true
|
|
||||||
user.attribute: "uid"
|
|
||||||
id.token.claim: true
|
|
||||||
access.token.claim: true
|
|
||||||
claim.name: "uid"
|
|
||||||
jsonType.label: "String"
|
|
||||||
- name: "email"
|
|
||||||
protocol: "openid-connect"
|
|
||||||
protocolMapper: "oidc-usermodel-property-mapper"
|
|
||||||
consentRequired: false
|
|
||||||
config:
|
|
||||||
userinfo.token.claim: true
|
|
||||||
user.attribute: "email"
|
|
||||||
id.token.claim: true
|
|
||||||
access.token.claim: true
|
|
||||||
claim.name: "email"
|
|
||||||
jsonType.label: "String"
|
|
||||||
- name: "Client IP Address"
|
|
||||||
protocol: "openid-connect"
|
|
||||||
protocolMapper: "oidc-usersessionmodel-note-mapper"
|
|
||||||
consentRequired: false
|
|
||||||
config:
|
|
||||||
user.session.note: "clientAddress"
|
|
||||||
userinfo.token.claim: true
|
|
||||||
id.token.claim: true
|
|
||||||
access.token.claim: true
|
|
||||||
claim.name: "clientAddress"
|
|
||||||
jsonType.label: "String"
|
|
||||||
- name: "guardian-scripts"
|
|
||||||
clientId: "guardian-scripts"
|
|
||||||
description: ""
|
|
||||||
rootUrl: "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}"
|
|
||||||
adminUrl: "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}"
|
|
||||||
baseUrl: "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}"
|
|
||||||
surrogateAuthRequired: false
|
|
||||||
enabled: true
|
|
||||||
alwaysDisplayInConsole: false
|
|
||||||
clientAuthenticatorType: "client-secret"
|
|
||||||
redirectUris:
|
|
||||||
- "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}/univention/guardian/*"
|
|
||||||
- "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}"
|
|
||||||
- "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}/guardian/*"
|
|
||||||
webOrigins:
|
|
||||||
- "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}"
|
|
||||||
bearerOnly: false
|
|
||||||
consentRequired: false
|
|
||||||
standardFlowEnabled: true
|
|
||||||
implicitFlowEnabled: false
|
|
||||||
directAccessGrantsEnabled: true
|
|
||||||
serviceAccountsEnabled: false
|
|
||||||
publicClient: true
|
|
||||||
frontchannelLogout: false
|
|
||||||
protocol: "openid-connect"
|
|
||||||
fullScopeAllowed: true
|
|
||||||
protocolMappers:
|
|
||||||
- name: "email"
|
|
||||||
protocol: "openid-connect"
|
|
||||||
protocolMapper: "oidc-usermodel-property-mapper"
|
|
||||||
consentRequired: false
|
|
||||||
config:
|
|
||||||
userinfo.token.claim: true
|
|
||||||
user.attribute: "email"
|
|
||||||
id.token.claim: true
|
|
||||||
access.token.claim: true
|
|
||||||
claim.name: "email"
|
|
||||||
jsonType.label: "String"
|
|
||||||
- name: "guardian-audience"
|
|
||||||
protocol: "openid-connect"
|
|
||||||
protocolMapper: "oidc-audience-mapper"
|
|
||||||
consentRequired: false
|
|
||||||
config:
|
|
||||||
included.client.audience: "guardian"
|
|
||||||
id.token.claim: false
|
|
||||||
access.token.claim: true
|
|
||||||
userinfo.token.claim: false
|
|
||||||
- name: "username"
|
|
||||||
protocol: "openid-connect"
|
|
||||||
protocolMapper: "oidc-usermodel-property-mapper"
|
|
||||||
consentRequired: false
|
|
||||||
config:
|
|
||||||
userinfo.token.claim: true
|
|
||||||
user.attribute: "username"
|
|
||||||
id.token.claim: true
|
|
||||||
access.token.claim: true
|
|
||||||
claim.name: "preferred_username"
|
|
||||||
jsonType.label: "String"
|
|
||||||
- name: "uid"
|
|
||||||
protocol: "openid-connect"
|
|
||||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
|
||||||
consentRequired: false
|
|
||||||
config:
|
|
||||||
userinfo.token.claim: true
|
|
||||||
user.attribute: "uid"
|
|
||||||
id.token.claim: true
|
|
||||||
access.token.claim: true
|
|
||||||
claim.name: "uid"
|
|
||||||
jsonType.label: "String"
|
|
||||||
- name: "audiencemap"
|
|
||||||
protocol: "openid-connect"
|
|
||||||
protocolMapper: "oidc-audience-mapper"
|
|
||||||
consentRequired: false
|
|
||||||
config:
|
|
||||||
included.client.audience: "guardian-scripts"
|
|
||||||
id.token.claim: true
|
|
||||||
access.token.claim: true
|
|
||||||
userinfo.token.claim: true
|
|
||||||
- name: "dn"
|
|
||||||
protocol: "openid-connect"
|
|
||||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
|
||||||
consentRequired: false
|
|
||||||
config:
|
|
||||||
aggregate.attrs: false
|
|
||||||
multivalued: false
|
|
||||||
userinfo.token.claim: false
|
|
||||||
user.attribute: "LDAP_ENTRY_DN"
|
|
||||||
id.token.claim: false
|
|
||||||
access.token.claim: true
|
|
||||||
claim.name: "dn"
|
|
||||||
jsonType.label: "String"
|
|
||||||
defaultClientScopes:
|
|
||||||
- "opendesk"
|
|
||||||
- "web-origins"
|
|
||||||
- "acr"
|
|
||||||
- "roles"
|
|
||||||
- "profile"
|
|
||||||
- "email"
|
|
||||||
optionalClientScopes:
|
|
||||||
- "address"
|
|
||||||
- "phone"
|
|
||||||
- "offline_access"
|
|
||||||
- "microprofile-jwt"
|
|
||||||
- name: "guardian-ui"
|
|
||||||
clientId: "guardian-ui"
|
|
||||||
rootUrl: "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}"
|
|
||||||
baseUrl: "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}"
|
|
||||||
clientAuthenticatorType: "client-secret"
|
|
||||||
redirectUris:
|
|
||||||
- "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}/univention/guardian/*"
|
|
||||||
standardFlowEnabled: true
|
|
||||||
publicClient: true
|
|
||||||
implicitFlowEnabled: false
|
|
||||||
directAccessGrantsEnabled: false
|
|
||||||
serviceAccountsEnabled: false
|
|
||||||
protocol: "openid-connect"
|
|
||||||
fullScopeAllowed: true
|
|
||||||
protocolMappers:
|
|
||||||
- name: "uid"
|
|
||||||
protocol: "openid-connect"
|
|
||||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
|
||||||
consentRequired: false
|
|
||||||
config:
|
|
||||||
userinfo.token.claim: true
|
|
||||||
user.attribute: "uid"
|
|
||||||
id.token.claim: true
|
|
||||||
access.token.claim: true
|
|
||||||
claim.name: "uid"
|
|
||||||
jsonType.label: "String"
|
|
||||||
- name: "username"
|
|
||||||
protocol: "openid-connect"
|
|
||||||
protocolMapper: "oidc-usermodel-property-mapper"
|
|
||||||
consentRequired: false
|
|
||||||
config:
|
|
||||||
userinfo.token.claim: true
|
|
||||||
user.attribute: "username"
|
|
||||||
id.token.claim: true
|
|
||||||
access.token.claim: true
|
|
||||||
claim.name: "preferred_username"
|
|
||||||
jsonType.label: "String"
|
|
||||||
- name: "dn"
|
|
||||||
protocol: "openid-connect"
|
|
||||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
|
||||||
consentRequired: false
|
|
||||||
config:
|
|
||||||
userinfo.token.claim: "false"
|
|
||||||
user.attribute: "LDAP_ENTRY_DN"
|
|
||||||
id.token.claim: false
|
|
||||||
access.token.claim: true
|
|
||||||
claim.name: "dn"
|
|
||||||
jsonType.label: "String"
|
|
||||||
- name: "audiencemap"
|
|
||||||
protocol: "openid-connect"
|
|
||||||
protocolMapper: "oidc-audience-mapper"
|
|
||||||
consentRequired: false
|
|
||||||
config:
|
|
||||||
included.client.audience: "guardian"
|
|
||||||
id.token.claim: true
|
|
||||||
access.token.claim: true
|
|
||||||
userinfo.token.claim: true
|
|
||||||
- name: "email"
|
|
||||||
protocol: "openid-connect"
|
|
||||||
protocolMapper: "oidc-usermodel-property-mapper"
|
|
||||||
consentRequired: false
|
|
||||||
config:
|
|
||||||
userinfo.token.claim: true
|
|
||||||
user.attribute: "email"
|
|
||||||
id.token.claim: true
|
|
||||||
access.token.claim: true
|
|
||||||
claim.name: "email"
|
|
||||||
jsonType.label: "String"
|
|
||||||
- name: "guardian-audience"
|
|
||||||
protocol: "openid-connect"
|
|
||||||
protocolMapper: "oidc-audience-mapper"
|
|
||||||
consentRequired: false
|
|
||||||
config:
|
|
||||||
included.client.audience: "guardian"
|
|
||||||
id.token.claim: false
|
|
||||||
access.token.claim: true
|
|
||||||
userinfo.token.claim: false
|
|
||||||
|
|
||||||
|
|
||||||
containerSecurityContext:
|
containerSecurityContext:
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
@@ -23,7 +23,7 @@ dovecot:
|
|||||||
port: 389
|
port: 389
|
||||||
base: "dc=swp-ldap,dc=internal"
|
base: "dc=swp-ldap,dc=internal"
|
||||||
dn: "uid=ldapsearch_dovecot,cn=users,dc=swp-ldap,dc=internal"
|
dn: "uid=ldapsearch_dovecot,cn=users,dc=swp-ldap,dc=internal"
|
||||||
password: {{ .Values.secrets.univentionManagementStack.ldapSearch.dovecot | quote }}
|
password: {{ .Values.secrets.nubus.ldapSearch.dovecot | quote }}
|
||||||
oidc:
|
oidc:
|
||||||
enabled: true
|
enabled: true
|
||||||
clientID: "opendesk-dovecot"
|
clientID: "opendesk-dovecot"
|
||||||
@@ -31,7 +31,7 @@ dovecot:
|
|||||||
introspectionHost: {{ printf "%s.%s" .Values.global.hosts.keycloak .Values.global.domain | quote }}
|
introspectionHost: {{ printf "%s.%s" .Values.global.hosts.keycloak .Values.global.domain | quote }}
|
||||||
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: {{ .Values.cluster.networking.cidr | quote }}
|
loginTrustedNetworks: {{ join " " .Values.cluster.networking.cidr | quote }}
|
||||||
|
|
||||||
submission:
|
submission:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
|||||||
@@ -4,8 +4,8 @@ SPDX-License-Identifier: Apache-2.0
|
|||||||
*/}}
|
*/}}
|
||||||
---
|
---
|
||||||
cleanup:
|
cleanup:
|
||||||
deletePodsOnSuccess: {{ .Values.cleanup.deletePodsOnSuccess }}
|
deletePodsOnSuccess: {{ .Values.debug.cleanup.deletePodsOnSuccess }}
|
||||||
deletePodsOnSuccessTimeout: {{ .Values.cleanup.deletePodsOnSuccessTimeout }}
|
deletePodsOnSuccessTimeout: {{ .Values.debug.cleanup.deletePodsOnSuccessTimeout }}
|
||||||
|
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.openxchangeBootstrap.registry | quote }}
|
registry: {{ .Values.global.imageRegistry | default .Values.images.openxchangeBootstrap.registry | quote }}
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ appsuite:
|
|||||||
type: "adminDN"
|
type: "adminDN"
|
||||||
adminDN:
|
adminDN:
|
||||||
dn: "uid=ldapsearch_ox,cn=users,dc=swp-ldap,dc=internal"
|
dn: "uid=ldapsearch_ox,cn=users,dc=swp-ldap,dc=internal"
|
||||||
password: {{ .Values.secrets.univentionManagementStack.ldapSearch.ox | quote }}
|
password: {{ .Values.secrets.nubus.ldapSearch.ox | quote }}
|
||||||
|
|
||||||
uiSettings:
|
uiSettings:
|
||||||
# Enterprise contact picker
|
# Enterprise contact picker
|
||||||
|
|||||||
@@ -185,7 +185,7 @@ appsuite:
|
|||||||
com.openexchange.oidc.opLogoutEndpoint: "https://{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}/realms/{{ .Values.platform.realm }}/protocol/openid-connect/logout"
|
com.openexchange.oidc.opLogoutEndpoint: "https://{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}/realms/{{ .Values.platform.realm }}/protocol/openid-connect/logout"
|
||||||
com.openexchange.oidc.opTokenEndpoint: "https://{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}/realms/{{ .Values.platform.realm }}/protocol/openid-connect/token"
|
com.openexchange.oidc.opTokenEndpoint: "https://{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}/realms/{{ .Values.platform.realm }}/protocol/openid-connect/token"
|
||||||
com.openexchange.oidc.rpRedirectURIAuth: "https://{{ .Values.global.hosts.openxchange }}.{{ .Values.global.domain }}/appsuite/api/oidc/auth"
|
com.openexchange.oidc.rpRedirectURIAuth: "https://{{ .Values.global.hosts.openxchange }}.{{ .Values.global.domain }}/appsuite/api/oidc/auth"
|
||||||
com.openexchange.oidc.rpRedirectURILogout: "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}"
|
com.openexchange.oidc.rpRedirectURILogout: "https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}"
|
||||||
com.openexchange.oidc.rpRedirectURIPostSSOLogout: "https://{{ .Values.global.hosts.openxchange }}.{{ .Values.global.domain }}/appsuite/api/oidc/logout"
|
com.openexchange.oidc.rpRedirectURIPostSSOLogout: "https://{{ .Values.global.hosts.openxchange }}.{{ .Values.global.domain }}/appsuite/api/oidc/logout"
|
||||||
com.openexchange.oidc.ssoLogout: "true"
|
com.openexchange.oidc.ssoLogout: "true"
|
||||||
com.openexchange.oidc.startDefaultBackend: "true"
|
com.openexchange.oidc.startDefaultBackend: "true"
|
||||||
@@ -241,6 +241,11 @@ appsuite:
|
|||||||
com.openexchange.file.storage.nextcloud.oauth.url: "http://opendesk-nextcloud-apache2/"
|
com.openexchange.file.storage.nextcloud.oauth.url: "http://opendesk-nextcloud-apache2/"
|
||||||
com.openexchange.file.storage.nextcloud.oauth.webdav.username.strategy: "user"
|
com.openexchange.file.storage.nextcloud.oauth.webdav.username.strategy: "user"
|
||||||
com.openexchange.nextcloud.filepicker.includeAccessToken: "false"
|
com.openexchange.nextcloud.filepicker.includeAccessToken: "false"
|
||||||
|
# Element integration
|
||||||
|
com.openexchange.conference.element.enabled: "true"
|
||||||
|
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.matrixUuidClaimName: opendesk_useruuid
|
||||||
# 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"
|
||||||
@@ -259,6 +264,7 @@ appsuite:
|
|||||||
com.openexchange.cookie.hash.salt: {{ .Values.secrets.oxAppsuite.cookieHashSalt | quote }}
|
com.openexchange.cookie.hash.salt: {{ .Values.secrets.oxAppsuite.cookieHashSalt | quote }}
|
||||||
com.openexchange.sessiond.encryptionKey: {{ .Values.secrets.oxAppsuite.sessiondEncryptionKey | quote }}
|
com.openexchange.sessiond.encryptionKey: {{ .Values.secrets.oxAppsuite.sessiondEncryptionKey | quote }}
|
||||||
com.openexchange.share.cryptKey: {{ .Values.secrets.oxAppsuite.shareCryptKey | quote }}
|
com.openexchange.share.cryptKey: {{ .Values.secrets.oxAppsuite.shareCryptKey | quote }}
|
||||||
|
com.openexchange.conference.element.authToken: {{ .Values.secrets.oxAppsuite.synapseAsToken | quote }}
|
||||||
propertiesFiles:
|
propertiesFiles:
|
||||||
/opt/open-xchange/etc/AdminDaemon.properties:
|
/opt/open-xchange/etc/AdminDaemon.properties:
|
||||||
MASTER_ACCOUNT_OVERRIDE: "true"
|
MASTER_ACCOUNT_OVERRIDE: "true"
|
||||||
@@ -269,7 +275,7 @@ appsuite:
|
|||||||
/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/dc=swp-ldap,dc=internal"
|
||||||
bindDN: "uid=ldapsearch_ox,cn=users,dc=swp-ldap,dc=internal"
|
bindDN: "uid=ldapsearch_ox,cn=users,dc=swp-ldap,dc=internal"
|
||||||
bindDNPassword: {{ .Values.secrets.univentionManagementStack.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:
|
||||||
com.openexchange.antivirus.enabled: "true"
|
com.openexchange.antivirus.enabled: "true"
|
||||||
@@ -311,7 +317,7 @@ appsuite:
|
|||||||
# io.ox/mail//contactCollectOnMailAccess: "true"
|
# io.ox/mail//contactCollectOnMailAccess: "true"
|
||||||
# Dynamic theme
|
# Dynamic theme
|
||||||
io.ox/dynamic-theme//mainColor: {{ .Values.theme.colors.primary | quote }}
|
io.ox/dynamic-theme//mainColor: {{ .Values.theme.colors.primary | quote }}
|
||||||
io.ox/dynamic-theme//logoURL: "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}/univention/portal/icons/logos/domain.svg"
|
io.ox/dynamic-theme//logoURL: "https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/univention/portal/icons/logos/domain.svg"
|
||||||
io.ox/dynamic-theme//topbarBackground: {{ .Values.theme.colors.white | quote }}
|
io.ox/dynamic-theme//topbarBackground: {{ .Values.theme.colors.white | quote }}
|
||||||
io.ox/dynamic-theme//topbarColor: {{ .Values.theme.colors.black | quote }}
|
io.ox/dynamic-theme//topbarColor: {{ .Values.theme.colors.black | quote }}
|
||||||
io.ox/dynamic-theme//listSelected: {{ .Values.theme.colors.primary15 | quote }}
|
io.ox/dynamic-theme//listSelected: {{ .Values.theme.colors.primary15 | quote }}
|
||||||
@@ -326,12 +332,13 @@ appsuite:
|
|||||||
oxguardpass: |
|
oxguardpass: |
|
||||||
{{ .Values.secrets.oxAppsuite.oxguardMC }}
|
{{ .Values.secrets.oxAppsuite.oxguardMC }}
|
||||||
{{ .Values.secrets.oxAppsuite.oxguardRC }}
|
{{ .Values.secrets.oxAppsuite.oxguardRC }}
|
||||||
redis:
|
redis: &redisConfiguration
|
||||||
enabled: true
|
enabled: true
|
||||||
mode: "standalone"
|
mode: "standalone"
|
||||||
hosts:
|
hosts:
|
||||||
- "redis-master"
|
- "redis-master:6379"
|
||||||
auth:
|
auth:
|
||||||
|
enabled: true
|
||||||
password: {{ .Values.secrets.redis.password | quote }}
|
password: {{ .Values.secrets.redis.password | quote }}
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.openxchangeCoreMW.registry | quote }}
|
registry: {{ .Values.global.imageRegistry | default .Values.images.openxchangeCoreMW.registry | quote }}
|
||||||
@@ -396,15 +403,7 @@ appsuite:
|
|||||||
tag: {{ .Values.images.openxchangeCoreUIMiddleware.tag | quote }}
|
tag: {{ .Values.images.openxchangeCoreUIMiddleware.tag | quote }}
|
||||||
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
overrides: {}
|
overrides: {}
|
||||||
redis:
|
redis: *redisConfiguration
|
||||||
mode: "standalone"
|
|
||||||
hosts:
|
|
||||||
- "redis-master:6379"
|
|
||||||
auth:
|
|
||||||
enabled: true
|
|
||||||
password: {{ .Values.secrets.redis.password | quote }}
|
|
||||||
# Workaround for a bug in 8.23
|
|
||||||
ca: ""
|
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.openxchangeCoreUIMiddleware | toYaml | nindent 6 }}
|
{{ .Values.resources.openxchangeCoreUIMiddleware | toYaml | nindent 6 }}
|
||||||
updater:
|
updater:
|
||||||
@@ -441,6 +440,7 @@ appsuite:
|
|||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.openxchangeDocumentConverter.registry | quote }}
|
registry: {{ .Values.global.imageRegistry | default .Values.images.openxchangeDocumentConverter.registry | quote }}
|
||||||
repository: {{ .Values.images.openxchangeDocumentConverter.repository | quote }}
|
repository: {{ .Values.images.openxchangeDocumentConverter.repository | quote }}
|
||||||
tag: {{ .Values.images.openxchangeDocumentConverter.tag | quote }}
|
tag: {{ .Values.images.openxchangeDocumentConverter.tag | quote }}
|
||||||
|
redis: *redisConfiguration
|
||||||
resources:
|
resources:
|
||||||
{{- .Values.resources.openxchangeCoreDocumentConverter | toYaml | nindent 6 }}
|
{{- .Values.resources.openxchangeCoreDocumentConverter | toYaml | nindent 6 }}
|
||||||
securityContext:
|
securityContext:
|
||||||
@@ -519,6 +519,7 @@ appsuite:
|
|||||||
endpoint: "."
|
endpoint: "."
|
||||||
accessKey: "."
|
accessKey: "."
|
||||||
secretKey: "."
|
secretKey: "."
|
||||||
|
redis: *redisConfiguration
|
||||||
resources:
|
resources:
|
||||||
{{- .Values.resources.openxchangeCoreImageConverter | toYaml | nindent 6 }}
|
{{- .Values.resources.openxchangeCoreImageConverter | toYaml | nindent 6 }}
|
||||||
securityContext:
|
securityContext:
|
||||||
@@ -545,7 +546,8 @@ appsuite:
|
|||||||
- name: {{ . | quote }}
|
- name: {{ . | quote }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
image:
|
image:
|
||||||
repository: "{{ .Values.global.imageRegistry | default .Values.images.openxchangeGuardUI.registry }}/{{ .Values.images.openxchangeGuardUI.repository }}"
|
registry: {{ .Values.global.imageRegistry | default .Values.images.openxchangeGuardUI.registry | quote }}
|
||||||
|
repository: {{ .Values.images.openxchangeGuardUI.repository | quote }}
|
||||||
tag: {{ .Values.images.openxchangeGuardUI.tag | quote }}
|
tag: {{ .Values.images.openxchangeGuardUI.tag | quote }}
|
||||||
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||||
resources:
|
resources:
|
||||||
|
|||||||
@@ -11,8 +11,8 @@ global:
|
|||||||
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||||
|
|
||||||
cleanup:
|
cleanup:
|
||||||
deletePodsOnSuccess: {{ .Values.cleanup.deletePodsOnSuccess }}
|
deletePodsOnSuccess: {{ .Values.debug.cleanup.deletePodsOnSuccess }}
|
||||||
keepPVCOnDelete: {{ .Values.cleanup.keepPVCOnDelete }}
|
keepPVCOnDelete: {{ .Values.debug.cleanup.keepPVCOnDelete }}
|
||||||
|
|
||||||
config:
|
config:
|
||||||
openproject:
|
openproject:
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ environment:
|
|||||||
# Details: https://www.openproject-edge.com/docs/installation-and-operations/configuration/#seeding-ldap-connections
|
# Details: https://www.openproject-edge.com/docs/installation-and-operations/configuration/#seeding-ldap-connections
|
||||||
OPENPROJECT_SEED_LDAP_OPENDESK_HOST: {{ .Values.ldap.host | quote }}
|
OPENPROJECT_SEED_LDAP_OPENDESK_HOST: {{ .Values.ldap.host | quote }}
|
||||||
OPENPROJECT_SEED_LDAP_OPENDESK_PORT: "389"
|
OPENPROJECT_SEED_LDAP_OPENDESK_PORT: "389"
|
||||||
OPENPROJECT_SEED_LDAP_OPENDESK_BINDPASSWORD: {{ .Values.secrets.univentionManagementStack.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,dc=swp-ldap,dc=internal"
|
||||||
OPENPROJECT_SEED_LDAP_OPENDESK_BASEDN: "dc=swp-ldap,dc=internal"
|
OPENPROJECT_SEED_LDAP_OPENDESK_BASEDN: "dc=swp-ldap,dc=internal"
|
||||||
@@ -57,7 +57,7 @@ environment:
|
|||||||
OPENPROJECT_AUTHENTICATION_GLOBAL__BASIC__AUTH_USER: {{ .Values.secrets.openproject.apiAdminUsername | quote }}
|
OPENPROJECT_AUTHENTICATION_GLOBAL__BASIC__AUTH_USER: {{ .Values.secrets.openproject.apiAdminUsername | quote }}
|
||||||
OPENPROJECT_AUTHENTICATION_GLOBAL__BASIC__AUTH_PASSWORD: {{ .Values.secrets.openproject.apiAdminPassword | quote }}
|
OPENPROJECT_AUTHENTICATION_GLOBAL__BASIC__AUTH_PASSWORD: {{ .Values.secrets.openproject.apiAdminPassword | quote }}
|
||||||
OPENPROJECT_SOUVAP__NAVIGATION__SECRET: {{ .Values.secrets.centralnavigation.apiKey | quote }}
|
OPENPROJECT_SOUVAP__NAVIGATION__SECRET: {{ .Values.secrets.centralnavigation.apiKey | quote }}
|
||||||
OPENPROJECT_SOUVAP__NAVIGATION__URL: "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}/univention/portal/navigation.json?base=https%3A//{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}"
|
OPENPROJECT_SOUVAP__NAVIGATION__URL: "https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/univention/portal/navigation.json?base=https%3A//{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}"
|
||||||
OPENPROJECT_SMTP__DOMAIN: {{ .Values.global.mailDomain | default .Values.global.domain | quote }}
|
OPENPROJECT_SMTP__DOMAIN: {{ .Values.global.mailDomain | default .Values.global.domain | quote }}
|
||||||
OPENPROJECT_SMTP__USER__NAME: {{ .Values.smtp.username | quote }}
|
OPENPROJECT_SMTP__USER__NAME: {{ .Values.smtp.username | quote }}
|
||||||
OPENPROJECT_SMTP__PASSWORD: {{ .Values.smtp.password | quote }}
|
OPENPROJECT_SMTP__PASSWORD: {{ .Values.smtp.password | quote }}
|
||||||
@@ -67,10 +67,13 @@ environment:
|
|||||||
OPENPROJECT_SMTP__AUTHENTICATION: "plain"
|
OPENPROJECT_SMTP__AUTHENTICATION: "plain"
|
||||||
OPENPROJECT_SMTP__ENABLE__STARTTLS__AUTO: "true"
|
OPENPROJECT_SMTP__ENABLE__STARTTLS__AUTO: "true"
|
||||||
OPENPROJECT_SMTP__OPENSSL__VERIFY__MODE: "peer"
|
OPENPROJECT_SMTP__OPENSSL__VERIFY__MODE: "peer"
|
||||||
OPENPROJECT_MAIL__FROM: "{{ .Values.localpartNoReply }}@{{ .Values.global.hosts.openproject }}.{{ .Values.global.domain }}"
|
OPENPROJECT_MAIL__FROM: "{{ .Values.smtp.localpartNoReply }}@{{ if .Values.functional.email.systemGenerated.useComponentInSenderdomain }}{{ .Values.global.hosts.openproject }}.{{ end }}{{ .Values.global.domain }}"
|
||||||
OPENPROJECT_HOME__URL: {{ printf "https://%s.%s/" .Values.global.hosts.univentionManagementStack .Values.global.domain | quote }}
|
OPENPROJECT_HOME__URL: {{ printf "https://%s.%s/" .Values.global.hosts.nubus .Values.global.domain | quote }}
|
||||||
OPENPROJECT_OPENID__CONNECT_KEYCLOAK_ISSUER: "https://{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}/realms/{{ .Values.platform.realm }}"
|
OPENPROJECT_OPENID__CONNECT_KEYCLOAK_ISSUER: "https://{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}/realms/{{ .Values.platform.realm }}"
|
||||||
OPENPROJECT_OPENID__CONNECT_KEYCLOAK_POST__LOGOUT__REDIRECT__URI: "https://{{ .Values.global.hosts.openproject }}.{{ .Values.global.domain }}/"
|
OPENPROJECT_OPENID__CONNECT_KEYCLOAK_POST__LOGOUT__REDIRECT__URI: "https://{{ .Values.global.hosts.openproject }}.{{ .Values.global.domain }}/"
|
||||||
|
{{- if .Values.enterprise.openproject.token }}
|
||||||
|
OPENPROJECT_ENTERPRISE__TOKEN: {{ .Values.enterprise.openproject.token | quote }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
image:
|
image:
|
||||||
registry: {{ .Values.global.imageRegistry | default .Values.images.openproject.registry | quote }}
|
registry: {{ .Values.global.imageRegistry | default .Values.images.openproject.registry | quote }}
|
||||||
@@ -129,7 +132,7 @@ openproject:
|
|||||||
host: "{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}"
|
host: "{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}"
|
||||||
identifier: "opendesk-openproject"
|
identifier: "opendesk-openproject"
|
||||||
provider: "keycloak"
|
provider: "keycloak"
|
||||||
scope: "[openid,opendesk]"
|
scope: "[openid,opendesk-openproject-scope]"
|
||||||
secret: {{ .Values.secrets.keycloak.clientSecret.openproject | quote }}
|
secret: {{ .Values.secrets.keycloak.clientSecret.openproject | quote }}
|
||||||
tokenEndpoint: "/realms/{{ .Values.platform.realm }}/protocol/openid-connect/token"
|
tokenEndpoint: "/realms/{{ .Values.platform.realm }}/protocol/openid-connect/token"
|
||||||
userinfoEndpoint: "/realms/{{ .Values.platform.realm }}/protocol/openid-connect/userinfo"
|
userinfoEndpoint: "/realms/{{ .Values.platform.realm }}/protocol/openid-connect/userinfo"
|
||||||
|
|||||||
@@ -19,9 +19,9 @@ oxConnector:
|
|||||||
caCert: "ucctempldapstring"
|
caCert: "ucctempldapstring"
|
||||||
debugLevel: {{ if .Values.debug.enabled }}"4"{{ else }}"1"{{ end }}
|
debugLevel: {{ if .Values.debug.enabled }}"4"{{ else }}"1"{{ end }}
|
||||||
domainName: {{ .Values.global.domain | quote }}
|
domainName: {{ .Values.global.domain | quote }}
|
||||||
ldapHost: {{ .Values.ldap.host | quote }}
|
ldapHost: "{{ .Values.ldap.host }}-primary"
|
||||||
logLevel: {{ if .Values.debug.enabled }}"DEBUG"{{ else }}"WARN"{{ end }}
|
logLevel: {{ if .Values.debug.enabled }}"DEBUG"{{ else }}"WARN"{{ end }}
|
||||||
ldapPassword: {{ .Values.secrets.univentionManagementStack.ldapSecret | quote }}
|
ldapPassword: {{ .Values.secrets.nubus.ldapSecret | quote }}
|
||||||
ldapBaseDn: "dc=swp-ldap,dc=internal"
|
ldapBaseDn: "dc=swp-ldap,dc=internal"
|
||||||
ldapHostDn: "cn=admin,dc=swp-ldap,dc=internal"
|
ldapHostDn: "cn=admin,dc=swp-ldap,dc=internal"
|
||||||
tlsMode: "off"
|
tlsMode: "off"
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ issuerRef:
|
|||||||
name: {{ .Values.certificate.issuerRef.name | quote }}
|
name: {{ .Values.certificate.issuerRef.name | quote }}
|
||||||
|
|
||||||
cleanup:
|
cleanup:
|
||||||
keepRessourceOnDelete: {{ .Values.cleanup.keepRessourceOnDelete }}
|
keepRessourceOnDelete: {{ .Values.debug.cleanup.keepRessourceOnDelete }}
|
||||||
|
|
||||||
wildcard: {{ .Values.certificate.wildcard }}
|
wildcard: {{ .Values.certificate.wildcard }}
|
||||||
...
|
...
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
# SPDX-License-Identifier: Apache-2.0
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
---
|
---
|
||||||
cleanup:
|
cleanup:
|
||||||
deletePodsOnSuccess: {{ .Values.cleanup.deletePodsOnSuccess }}
|
deletePodsOnSuccess: {{ .Values.debug.cleanup.deletePodsOnSuccess }}
|
||||||
|
|
||||||
containerSecurityContext:
|
containerSecurityContext:
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
|
|||||||
@@ -67,9 +67,9 @@ mode: {{ if gt .Values.replicas.minio 1 }}"distributed"{{ else }}"standalone"{{
|
|||||||
|
|
||||||
metrics:
|
metrics:
|
||||||
serviceMonitor:
|
serviceMonitor:
|
||||||
enabled: {{ .Values.prometheus.serviceMonitors.enabled }}
|
enabled: {{ .Values.monitoring.prometheus.serviceMonitors.enabled }}
|
||||||
additionalLabels:
|
additionalLabels:
|
||||||
{{ .Values.prometheus.serviceMonitors.labels | toYaml | nindent 6 }}
|
{{ .Values.monitoring.prometheus.serviceMonitors.labels | toYaml | nindent 6 }}
|
||||||
|
|
||||||
networkPolicy:
|
networkPolicy:
|
||||||
enabled: false
|
enabled: false
|
||||||
@@ -89,16 +89,43 @@ provisioning:
|
|||||||
extraCommands:
|
extraCommands:
|
||||||
- "mc anonymous set download provisioning/ums/portal-assets"
|
- "mc anonymous set download provisioning/ums/portal-assets"
|
||||||
buckets:
|
buckets:
|
||||||
- name: {{ .Values.objectstores.openproject.bucket | quote }}
|
- name: {{ .Values.objectstores.migrations.bucket | quote }}
|
||||||
versioning: true
|
|
||||||
withLock: false
|
|
||||||
- name: {{ .Values.objectstores.univentionManagementStack.bucket | quote }}
|
|
||||||
versioning: false
|
versioning: false
|
||||||
withLock: false
|
withLock: false
|
||||||
- name: {{ .Values.objectstores.nextcloud.bucket | quote }}
|
- name: {{ .Values.objectstores.nextcloud.bucket | quote }}
|
||||||
versioning: true
|
versioning: true
|
||||||
withLock: false
|
withLock: false
|
||||||
|
- name: {{ .Values.objectstores.openproject.bucket | quote }}
|
||||||
|
versioning: true
|
||||||
|
withLock: false
|
||||||
|
- name: {{ .Values.objectstores.nubus.bucket | quote }}
|
||||||
|
versioning: false
|
||||||
|
withLock: false
|
||||||
policies:
|
policies:
|
||||||
|
- name: "migrations-bucket-policy"
|
||||||
|
statements:
|
||||||
|
- resources:
|
||||||
|
- "arn:aws:s3:::migrations"
|
||||||
|
effect: "Allow"
|
||||||
|
actions:
|
||||||
|
- "s3:*"
|
||||||
|
- resources:
|
||||||
|
- "arn:aws:s3:::migrations/*"
|
||||||
|
effect: "Allow"
|
||||||
|
actions:
|
||||||
|
- "s3:*"
|
||||||
|
- name: "nextcloud-bucket-policy"
|
||||||
|
statements:
|
||||||
|
- resources:
|
||||||
|
- "arn:aws:s3:::nextcloud"
|
||||||
|
effect: "Allow"
|
||||||
|
actions:
|
||||||
|
- "s3:*"
|
||||||
|
- resources:
|
||||||
|
- "arn:aws:s3:::nextcloud/*"
|
||||||
|
effect: "Allow"
|
||||||
|
actions:
|
||||||
|
- "s3:*"
|
||||||
- name: "openproject-bucket-policy"
|
- name: "openproject-bucket-policy"
|
||||||
statements:
|
statements:
|
||||||
- resources:
|
- resources:
|
||||||
@@ -123,30 +150,12 @@ provisioning:
|
|||||||
effect: "Allow"
|
effect: "Allow"
|
||||||
actions:
|
actions:
|
||||||
- "s3:*"
|
- "s3:*"
|
||||||
- name: "nextcloud-bucket-policy"
|
|
||||||
statements:
|
|
||||||
- resources:
|
|
||||||
- "arn:aws:s3:::nextcloud"
|
|
||||||
effect: "Allow"
|
|
||||||
actions:
|
|
||||||
- "s3:*"
|
|
||||||
- resources:
|
|
||||||
- "arn:aws:s3:::nextcloud/*"
|
|
||||||
effect: "Allow"
|
|
||||||
actions:
|
|
||||||
- "s3:*"
|
|
||||||
users:
|
users:
|
||||||
- username: {{ .Values.objectstores.openproject.username | quote }}
|
- username: {{ .Values.objectstores.migrations.username | quote }}
|
||||||
password: {{ .Values.secrets.minio.openprojectUser | quote }}
|
password: {{ .Values.secrets.minio.migrationsUser | quote }}
|
||||||
disabled: false
|
disabled: false
|
||||||
policies:
|
policies:
|
||||||
- "openproject-bucket-policy"
|
- "migrations-bucket-policy"
|
||||||
setPolicies: true
|
|
||||||
- username: {{ .Values.objectstores.univentionManagementStack.username | quote }}
|
|
||||||
password: {{ .Values.secrets.minio.umsUser | quote }}
|
|
||||||
disabled: false
|
|
||||||
policies:
|
|
||||||
- "ums-bucket-policy"
|
|
||||||
setPolicies: true
|
setPolicies: true
|
||||||
- username: {{ .Values.objectstores.nextcloud.username | quote }}
|
- username: {{ .Values.objectstores.nextcloud.username | quote }}
|
||||||
password: {{ .Values.secrets.minio.nextcloudUser | quote }}
|
password: {{ .Values.secrets.minio.nextcloudUser | quote }}
|
||||||
@@ -154,6 +163,18 @@ provisioning:
|
|||||||
policies:
|
policies:
|
||||||
- "nextcloud-bucket-policy"
|
- "nextcloud-bucket-policy"
|
||||||
setPolicies: true
|
setPolicies: true
|
||||||
|
- username: {{ .Values.objectstores.openproject.username | quote }}
|
||||||
|
password: {{ .Values.secrets.minio.openprojectUser | quote }}
|
||||||
|
disabled: false
|
||||||
|
policies:
|
||||||
|
- "openproject-bucket-policy"
|
||||||
|
setPolicies: true
|
||||||
|
- username: {{ .Values.objectstores.nubus.username | quote }}
|
||||||
|
password: {{ .Values.secrets.minio.umsUser | quote }}
|
||||||
|
disabled: false
|
||||||
|
policies:
|
||||||
|
- "ums-bucket-policy"
|
||||||
|
setPolicies: true
|
||||||
resources:
|
resources:
|
||||||
{{ .Values.resources.minio | toYaml | nindent 4 }}
|
{{ .Values.resources.minio | toYaml | nindent 4 }}
|
||||||
|
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ apps:
|
|||||||
redis:
|
redis:
|
||||||
enabled: {{ .Values.redis.enabled }}
|
enabled: {{ .Values.redis.enabled }}
|
||||||
univentionManagementStack:
|
univentionManagementStack:
|
||||||
enabled: {{ .Values.univentionManagementStack.enabled }}
|
enabled: {{ .Values.nubus.enabled }}
|
||||||
xwiki:
|
xwiki:
|
||||||
enabled: {{ .Values.xwiki.enabled }}
|
enabled: {{ .Values.xwiki.enabled }}
|
||||||
|
|
||||||
|
|||||||
@@ -51,7 +51,7 @@ postfix:
|
|||||||
- {{ 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 }}
|
||||||
rspamdHost: ""
|
rspamdHost: ""
|
||||||
relayHost: {{ if .Values.smtp.host }}{{ printf "[%s]:%d" .Values.smtp.host .Values.smtp.port | quote }}{{ else }}""{{ end }}
|
relayHost: {{ if .Values.smtp.host }}{{ printf "[%s]:%d" .Values.smtp.host .Values.smtp.port | quote }}{{ else }}""{{ end }}
|
||||||
relayNets: {{ .Values.cluster.networking.cidr | quote}}
|
relayNets: {{ join " " .Values.cluster.networking.cidr | quote }}
|
||||||
smtpSASLAuthEnable: "yes"
|
smtpSASLAuthEnable: "yes"
|
||||||
smtpSASLPasswordMaps: "lmdb:/etc/postfix/sasl_passwd.map"
|
smtpSASLPasswordMaps: "lmdb:/etc/postfix/sasl_passwd.map"
|
||||||
smtpUseTLS: "yes"
|
smtpUseTLS: "yes"
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -55,19 +55,24 @@ customConfigs:
|
|||||||
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,dc=swp-ldap,dc=internal"
|
||||||
xwiki.authentication.ldap.bind_pass: {{ .Values.secrets.univentionManagementStack.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: "dc=swp-ldap,dc=internal"
|
||||||
## 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
|
||||||
|
xwiki.authentication.ldap.fields_mapping: "last_name=sn,first_name=givenName,email=mailPrimaryAddress"
|
||||||
|
|
||||||
xwiki.properties:
|
xwiki.properties:
|
||||||
|
wikiInitializer.initialRequest.xwiki.url: "https://{{ .Values.global.hosts.xwiki }}.{{ .Values.global.domain }}/distribution/"
|
||||||
|
wikiInitializer.initialRequest.xwiki.contextPath: "/"
|
||||||
|
wikiInitializer.initialRequest.xwiki.remoteAddress: "{{ .Values.global.hosts.xwiki }}.{{ .Values.global.domain }}"
|
||||||
oidc.clientid: "opendesk-xwiki"
|
oidc.clientid: "opendesk-xwiki"
|
||||||
oidc.endpoint.token.auth_method: "client_secret_basic"
|
oidc.endpoint.token.auth_method: "client_secret_basic"
|
||||||
oidc.endpoint.userinfo.method: "GET"
|
oidc.endpoint.userinfo.method: "GET"
|
||||||
oidc.logoutMechanism: "rpInitiated"
|
oidc.logoutMechanism: "rpInitiated"
|
||||||
oidc.provider: "https://{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}/realms/opendesk"
|
oidc.provider: "https://{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}/realms/opendesk"
|
||||||
oidc.scope: "openid,profile,email,address,opendesk"
|
oidc.scope: "openid,opendesk-xwiki-scope"
|
||||||
oidc.secret: {{ .Values.secrets.keycloak.clientSecret.xwiki | quote }}
|
oidc.secret: {{ .Values.secrets.keycloak.clientSecret.xwiki | quote }}
|
||||||
oidc.skipped: false
|
oidc.skipped: false
|
||||||
oidc.user.nameFormater: "${oidc.user.opendesk_username._clean._lowerCase}"
|
oidc.user.nameFormater: "${oidc.user.opendesk_username._clean._lowerCase}"
|
||||||
@@ -78,9 +83,11 @@ customConfigs:
|
|||||||
# yamllint disable-line rule:line-length
|
# yamllint disable-line rule:line-length
|
||||||
oidc.userinfoclaims: "xwiki_user_accessibility,xwiki_user_company,xwiki_user_displayHiddenDocuments,xwiki_user_editor,xwiki_user_usertype"
|
oidc.userinfoclaims: "xwiki_user_accessibility,xwiki_user_company,xwiki_user_displayHiddenDocuments,xwiki_user_editor,xwiki_user_usertype"
|
||||||
url.trustedDomains: "{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}"
|
url.trustedDomains: "{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}"
|
||||||
workplaceServices.navigationEndpoint: "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}/univention/portal/navigation.json"
|
workplaceServices.navigationEndpoint: "https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/univention/portal/navigation.json"
|
||||||
workplaceServices.base: "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}"
|
workplaceServices.base: "https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}"
|
||||||
workplaceServices.portalSecret: {{ .Values.secrets.centralnavigation.apiKey | quote }}
|
workplaceServices.portalSecret: {{ .Values.secrets.centralnavigation.apiKey | quote }}
|
||||||
|
openoffice.serverType: "0"
|
||||||
|
notifications.emails.live.graceTime: "5"
|
||||||
|
|
||||||
ingress:
|
ingress:
|
||||||
enabled: {{ .Values.ingress.enabled }}
|
enabled: {{ .Values.ingress.enabled }}
|
||||||
@@ -122,12 +129,15 @@ postgresql:
|
|||||||
enabled: false
|
enabled: false
|
||||||
|
|
||||||
properties:
|
properties:
|
||||||
"attachment:xwiki:FlamingoThemes.Iceberg@logo.svg": "data:image/svg+xml;base64,{{ .Values.theme.imagery.logoHeaderSvg | b64enc }}"
|
"attachment:xwiki:FlamingoThemes.Iceberg@logo.svg": "data:image/svg+xml;base64,{{ .Values.theme.imagery.logoHeaderSvgB64 }}"
|
||||||
"attachment:xwiki:XWiki.DefaultSkin@icons.xwiki.favicon.svg": "data:image/svg+xml;base64,{{ .Values.theme.imagery.faviconSvg | b64enc }}"
|
"attachment:xwiki:XWiki.DefaultSkin@icons.xwiki.favicon.svg": "data:image/svg+xml;base64,{{ .Values.theme.imagery.faviconSvgB64 }}"
|
||||||
"attachment:xwiki:XWiki.DefaultSkin@icons.xwiki.favicon16.png": "data:image/png;base64,{{ .Values.theme.imagery.favicon16PngB64 }}"
|
"attachment:xwiki:XWiki.DefaultSkin@icons.xwiki.favicon16.png": "data:image/png;base64,{{ .Values.theme.imagery.favicon16PngB64 }}"
|
||||||
"attachment:xwiki:XWiki.DefaultSkin@icons.xwiki.favicon144.png": "data:image/png;base64,{{ .Values.theme.imagery.favicon144PngB64 }}"
|
"attachment:xwiki:XWiki.DefaultSkin@icons.xwiki.favicon144.png": "data:image/png;base64,{{ .Values.theme.imagery.favicon144PngB64 }}"
|
||||||
|
"property:xwiki:XWiki.XWikiServerXwiki^XWiki.XWikiServerClass.secure": 1
|
||||||
|
"property:xwiki:XWiki.XWikiServerXwiki^XWiki.XWikiServerClass.server": "{{ .Values.global.hosts.xwiki }}.{{ .Values.global.domain }}"
|
||||||
|
"property:xwiki:XWiki.XWikiServerXwiki^XWiki.XWikiServerClass.port": 443
|
||||||
## SMTP settings
|
## SMTP settings
|
||||||
"property:xwiki:Mail.MailConfig^Mail.SendMailConfigClass.from": "{{ .Values.localpartNoReply }}@{{ .Values.global.hosts.xwiki }}.{{ .Values.global.domain }}"
|
"property:xwiki:Mail.MailConfig^Mail.SendMailConfigClass.from": "{{ .Values.smtp.localpartNoReply }}@{{ if .Values.functional.email.systemGenerated.useComponentInSenderdomain }}{{ .Values.global.hosts.xwiki }}.{{ end }}{{ .Values.global.domain }}"
|
||||||
"property:xwiki:Mail.MailConfig^Mail.SendMailConfigClass.host": {{ .Values.smtp.host | quote }}
|
"property:xwiki:Mail.MailConfig^Mail.SendMailConfigClass.host": {{ .Values.smtp.host | quote }}
|
||||||
"property:xwiki:Mail.MailConfig^Mail.SendMailConfigClass.port": {{ .Values.smtp.port | quote }}
|
"property:xwiki:Mail.MailConfig^Mail.SendMailConfigClass.port": {{ .Values.smtp.port | quote }}
|
||||||
"property:xwiki:Mail.MailConfig^Mail.SendMailConfigClass.username": {{ .Values.smtp.username | quote }}
|
"property:xwiki:Mail.MailConfig^Mail.SendMailConfigClass.username": {{ .Values.smtp.username | quote }}
|
||||||
@@ -157,7 +167,7 @@ properties:
|
|||||||
"property:xwiki:XWiki.AuthService.Configuration^XWiki.AuthService.ConfigurationClass.authService": "oidc"
|
"property:xwiki:XWiki.AuthService.Configuration^XWiki.AuthService.ConfigurationClass.authService": "oidc"
|
||||||
## Fields to search in when importing users from the administration UI (not completely in scope for now)
|
## Fields to search in when importing users from the administration UI (not completely in scope for now)
|
||||||
"property:xwiki:LDAPUserImport.WebHome^LDAPUserImport.LDAPUserImportConfigClass.ldapUserAttributes":
|
"property:xwiki:LDAPUserImport.WebHome^LDAPUserImport.LDAPUserImportConfigClass.ldapUserAttributes":
|
||||||
"sn,givenname,uid"
|
"sn,givenname,uid,mailPrimaryAddress"
|
||||||
## Restrict user import in the UI to global administrators
|
## Restrict user import in the UI to global administrators
|
||||||
"property:xwiki:LDAPUserImport.WebHome^LDAPUserImport.LDAPUserImportConfigClass.usersAllowedToImport": "globalAdmin"
|
"property:xwiki:LDAPUserImport.WebHome^LDAPUserImport.LDAPUserImportConfigClass.usersAllowedToImport": "globalAdmin"
|
||||||
## Enable group and user synchronization
|
## Enable group and user synchronization
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ charts:
|
|||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/supplier/collabora/charts-mirror"
|
repository: "bmi/opendesk/components/supplier/collabora/charts-mirror"
|
||||||
name: "collabora-online"
|
name: "collabora-online"
|
||||||
version: "1.1.17"
|
version: "1.1.20"
|
||||||
verify: true
|
verify: true
|
||||||
cryptpad:
|
cryptpad:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
@@ -78,7 +78,7 @@ charts:
|
|||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/platform-development/charts/opendesk-element"
|
repository: "bmi/opendesk/components/platform-development/charts/opendesk-element"
|
||||||
name: "opendesk-element"
|
name: "opendesk-element"
|
||||||
version: "3.2.0"
|
version: "3.3.0"
|
||||||
verify: true
|
verify: true
|
||||||
elementWellKnown:
|
elementWellKnown:
|
||||||
# providerCategory: "Platform"
|
# providerCategory: "Platform"
|
||||||
@@ -88,7 +88,7 @@ charts:
|
|||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/platform-development/charts/opendesk-element"
|
repository: "bmi/opendesk/components/platform-development/charts/opendesk-element"
|
||||||
name: "opendesk-well-known"
|
name: "opendesk-well-known"
|
||||||
version: "3.2.0"
|
version: "3.3.0"
|
||||||
verify: true
|
verify: true
|
||||||
home:
|
home:
|
||||||
# providerCategory: "Platform"
|
# providerCategory: "Platform"
|
||||||
@@ -120,7 +120,7 @@ charts:
|
|||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/platform-development/charts/opendesk-jitsi"
|
repository: "bmi/opendesk/components/platform-development/charts/opendesk-jitsi"
|
||||||
name: "opendesk-jitsi"
|
name: "opendesk-jitsi"
|
||||||
version: "1.7.9"
|
version: "1.9.2"
|
||||||
verify: true
|
verify: true
|
||||||
mariadb:
|
mariadb:
|
||||||
# providerCategory: "Platform"
|
# providerCategory: "Platform"
|
||||||
@@ -180,7 +180,7 @@ charts:
|
|||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/platform-development/charts/opendesk-element"
|
repository: "bmi/opendesk/components/platform-development/charts/opendesk-element"
|
||||||
name: "opendesk-matrix-user-verification-service"
|
name: "opendesk-matrix-user-verification-service"
|
||||||
version: "3.2.0"
|
version: "3.3.0"
|
||||||
verify: true
|
verify: true
|
||||||
memcached:
|
memcached:
|
||||||
# providerCategory: "Community"
|
# providerCategory: "Community"
|
||||||
@@ -192,6 +192,16 @@ charts:
|
|||||||
name: "memcached"
|
name: "memcached"
|
||||||
version: "6.7.1"
|
version: "6.7.1"
|
||||||
verify: true
|
verify: true
|
||||||
|
migrations:
|
||||||
|
# providerCategory: "Platform"
|
||||||
|
# providerResponsible: "openDesk"
|
||||||
|
# upstreamRegistry: "https://registry.opencode.de"
|
||||||
|
# upstreamRepository: "bmi/opendesk/components/platform-development/charts/opendesk-element/opendesk-migrations"
|
||||||
|
registry: "registry.opencode.de"
|
||||||
|
repository: "bmi/opendesk/components/platform-development/charts/opendesk-migrations"
|
||||||
|
name: "opendesk-migrations"
|
||||||
|
version: "1.2.2"
|
||||||
|
verify: true
|
||||||
minio:
|
minio:
|
||||||
# providerCategory: "Community"
|
# providerCategory: "Community"
|
||||||
# providerResponsible: "openDesk"
|
# providerResponsible: "openDesk"
|
||||||
@@ -210,7 +220,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: "2.0.0"
|
version: "3.0.0"
|
||||||
verify: true
|
verify: true
|
||||||
nextcloudManagement:
|
nextcloudManagement:
|
||||||
# providerCategory: "Platform"
|
# providerCategory: "Platform"
|
||||||
@@ -220,7 +230,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: "2.0.0"
|
version: "3.0.0"
|
||||||
verify: true
|
verify: true
|
||||||
nginx:
|
nginx:
|
||||||
# providerCategory: "Community"
|
# providerCategory: "Community"
|
||||||
@@ -232,6 +242,20 @@ charts:
|
|||||||
name: "nginx"
|
name: "nginx"
|
||||||
version: "15.9.3"
|
version: "15.9.3"
|
||||||
verify: true
|
verify: true
|
||||||
|
nubus:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||||
|
# upstreamRepository: "nubus/charts/nubus"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||||
|
# upstreamMirrorStartFrom: ["0", "19", "3"]
|
||||||
|
# registry: "registry.opencode.de"
|
||||||
|
# repository: "bmi/opendesk/components/supplier/univention/charts-mirror"
|
||||||
|
registry: "artifacts.software-univention.de"
|
||||||
|
repository: "nubus-dev/charts"
|
||||||
|
name: "nubus"
|
||||||
|
version: "0.39.0-pre-jbornhold-update-portal-frontend"
|
||||||
|
verify: true
|
||||||
opendeskKeycloakBootstrap:
|
opendeskKeycloakBootstrap:
|
||||||
# providerCategory: "Platform"
|
# providerCategory: "Platform"
|
||||||
# providerResponsible: "openDesk"
|
# providerResponsible: "openDesk"
|
||||||
@@ -240,7 +264,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: "1.1.0"
|
version: "2.1.1"
|
||||||
verify: true
|
verify: true
|
||||||
openproject:
|
openproject:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
@@ -252,7 +276,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: "5.1.4"
|
version: "7.0.0"
|
||||||
verify: true
|
verify: true
|
||||||
openprojectBootstrap:
|
openprojectBootstrap:
|
||||||
# providerCategory: "Platform"
|
# providerCategory: "Platform"
|
||||||
@@ -274,7 +298,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.5.3"
|
version: "2.8.78"
|
||||||
verify: false
|
verify: false
|
||||||
openXchangeAppSuiteBootstrap:
|
openXchangeAppSuiteBootstrap:
|
||||||
# providerCategory: "Platform"
|
# providerCategory: "Platform"
|
||||||
@@ -294,7 +318,7 @@ charts:
|
|||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/platform-development/charts/opendesk-otterize"
|
repository: "bmi/opendesk/components/platform-development/charts/opendesk-otterize"
|
||||||
name: "opendesk-otterize"
|
name: "opendesk-otterize"
|
||||||
version: "2.0.1"
|
version: "2.1.0"
|
||||||
verify: true
|
verify: true
|
||||||
oxConnector:
|
oxConnector:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
@@ -316,7 +340,7 @@ charts:
|
|||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/platform-development/charts/opendesk-postfix"
|
repository: "bmi/opendesk/components/platform-development/charts/opendesk-postfix"
|
||||||
name: "postfix"
|
name: "postfix"
|
||||||
version: "2.0.5"
|
version: "2.2.0"
|
||||||
verify: true
|
verify: true
|
||||||
postgresql:
|
postgresql:
|
||||||
# providerCategory: "Platform"
|
# providerCategory: "Platform"
|
||||||
@@ -346,7 +370,7 @@ charts:
|
|||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/platform-development/charts/opendesk-element"
|
repository: "bmi/opendesk/components/platform-development/charts/opendesk-element"
|
||||||
name: "opendesk-synapse"
|
name: "opendesk-synapse"
|
||||||
version: "3.2.0"
|
version: "3.3.0"
|
||||||
verify: true
|
verify: true
|
||||||
synapseCreateAccount:
|
synapseCreateAccount:
|
||||||
# providerCategory: "Platform"
|
# providerCategory: "Platform"
|
||||||
@@ -356,7 +380,7 @@ charts:
|
|||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/platform-development/charts/opendesk-element"
|
repository: "bmi/opendesk/components/platform-development/charts/opendesk-element"
|
||||||
name: "opendesk-synapse-create-account"
|
name: "opendesk-synapse-create-account"
|
||||||
version: "3.2.0"
|
version: "3.3.0"
|
||||||
verify: true
|
verify: true
|
||||||
synapseWeb:
|
synapseWeb:
|
||||||
# providerCategory: "Platform"
|
# providerCategory: "Platform"
|
||||||
@@ -366,31 +390,7 @@ charts:
|
|||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/platform-development/charts/opendesk-element"
|
repository: "bmi/opendesk/components/platform-development/charts/opendesk-element"
|
||||||
name: "opendesk-synapse-web"
|
name: "opendesk-synapse-web"
|
||||||
version: "3.2.0"
|
version: "3.3.0"
|
||||||
verify: true
|
|
||||||
ums:
|
|
||||||
# providerCategory: "Supplier"
|
|
||||||
# providerResponsible: "Univention"
|
|
||||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
|
||||||
# upstreamRepository: "nubus/charts/ums"
|
|
||||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
|
||||||
# upstreamMirrorStartFrom: ["0", "12", "0"]
|
|
||||||
registry: "registry.opencode.de"
|
|
||||||
repository: "bmi/opendesk/components/supplier/univention/charts-mirror"
|
|
||||||
name: "ums"
|
|
||||||
version: "0.16.0"
|
|
||||||
verify: true
|
|
||||||
umsKeycloakBootstrap:
|
|
||||||
# providerCategory: "Supplier"
|
|
||||||
# providerResponsible: "Univention"
|
|
||||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
|
||||||
# upstreamRepository: "nubus/charts/keycloak-bootstrap"
|
|
||||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
|
||||||
# upstreamMirrorStartFrom: ["0", "1", "0"]
|
|
||||||
registry: "registry.opencode.de"
|
|
||||||
repository: "bmi/opendesk/components/supplier/univention/charts-mirror"
|
|
||||||
name: "keycloak-bootstrap"
|
|
||||||
version: "0.1.0"
|
|
||||||
verify: true
|
verify: true
|
||||||
xwiki:
|
xwiki:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
@@ -402,6 +402,6 @@ charts:
|
|||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/supplier/xwiki/charts-mirror"
|
repository: "bmi/opendesk/components/supplier/xwiki/charts-mirror"
|
||||||
name: "xwiki"
|
name: "xwiki"
|
||||||
version: "1.3.0"
|
version: "1.3.1"
|
||||||
verify: false
|
verify: false
|
||||||
...
|
...
|
||||||
|
|||||||
@@ -15,13 +15,17 @@ cluster:
|
|||||||
networking:
|
networking:
|
||||||
# Kubernetes internal cluster domain.
|
# Kubernetes internal cluster domain.
|
||||||
domain: "cluster.local"
|
domain: "cluster.local"
|
||||||
# Kubernetes cluster network CIDR.
|
# Kubernetes cluster network CIDRs.
|
||||||
cidr: "10.0.0.0/8"
|
cidr:
|
||||||
|
- "10.0.0.0/8"
|
||||||
|
# IP addresses or IP ranges of the reverse proxy / load balancer to restrict the requesting source
|
||||||
|
# for defined services.
|
||||||
|
incomingCIDR: []
|
||||||
# Ingress-gateway IP - only relevant for "NodePort" cluster services.
|
# Ingress-gateway IP - only relevant for "NodePort" cluster services.
|
||||||
# When ingress and egress gateway use different ips, which results that pods can't self-discover their incoming ip,
|
# When ingress and egress gateway use different ips, which results that pods can't self-discover their incoming ip,
|
||||||
# you need to provide the public (load-balanced) ingress gateways ip address.
|
# you need to provide the public (load-balanced) ingress gateways ip address.
|
||||||
ingressGatewayIP: ""
|
ingressGatewayIP: ""
|
||||||
# LoadBalancer status fiel - only relevant for "LoadBalancer" cluster services.
|
# LoadBalancer status field - only relevant for "LoadBalancer" cluster services.
|
||||||
# The IP/DNS of your load-balancer will be fetched for some components from 'status' map of services.
|
# The IP/DNS of your load-balancer will be fetched for some components from 'status' map of services.
|
||||||
# Most providers use '.status.loadBalancer.ingress[0].ip' to store public ip. You can modify the chosen field here.
|
# Most providers use '.status.loadBalancer.ingress[0].ip' to store public ip. You can modify the chosen field here.
|
||||||
loadBalancerStatusField: "ip"
|
loadBalancerStatusField: "ip"
|
||||||
|
|||||||
@@ -1,16 +1,16 @@
|
|||||||
# 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
|
||||||
---
|
---
|
||||||
cleanup:
|
|
||||||
# Keep Pods/Job logs after successful run.
|
|
||||||
deletePodsOnSuccess: true
|
|
||||||
# When deletePodsOnSuccess is enabled, the pod will be deleted after configured seconds.
|
|
||||||
deletePodsOnSuccessTimeout: 60
|
|
||||||
# Keep persistence on deletion of this release.
|
|
||||||
keepPVCOnDelete: false
|
|
||||||
# Keep additional resources, like certificates on deletion of this release.
|
|
||||||
keepRessourceOnDelete: true
|
|
||||||
debug:
|
debug:
|
||||||
|
cleanup:
|
||||||
|
# Keep Pods/Job logs after successful run.
|
||||||
|
deletePodsOnSuccess: true
|
||||||
|
# When deletePodsOnSuccess is enabled, the pod will be deleted after configured seconds.
|
||||||
|
deletePodsOnSuccessTimeout: 60
|
||||||
|
# Keep persistence on deletion of this release.
|
||||||
|
keepPVCOnDelete: false
|
||||||
|
# Keep additional resources, like certificates on deletion of this release.
|
||||||
|
keepRessourceOnDelete: true
|
||||||
# should activate debug output in all components and even allow e.g. successfully executed jobs
|
# should activate debug output in all components and even allow e.g. successfully executed jobs
|
||||||
# to stay available. This is going to be implemented on a case by case basis when we actually
|
# to stay available. This is going to be implemented on a case by case basis when we actually
|
||||||
# need debugging in a component.
|
# need debugging in a component.
|
||||||
|
|||||||
9
helmfile/environments/default/enterprise.yaml
Normal file
9
helmfile/environments/default/enterprise.yaml
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
# The variables set in this file are required to upgrade components to their "Enterprise" product variant.
|
||||||
|
---
|
||||||
|
enterprise:
|
||||||
|
openproject:
|
||||||
|
# Enterprise token must match the deployment's OpenProject host name.
|
||||||
|
token: ""
|
||||||
|
...
|
||||||
@@ -1,26 +1,60 @@
|
|||||||
# 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
|
||||||
---
|
---
|
||||||
authentication:
|
functional:
|
||||||
twoFactor:
|
admin:
|
||||||
# Define a list of groups to enable 2FA for.
|
portal:
|
||||||
# Note: Removing a group from the list will not disable 2FA for the removed group.
|
deploymentInformation:
|
||||||
groups:
|
# Disable to not provide and update openDesk release version and deployment timestamp for admins in the portal.
|
||||||
- "Domain Admins"
|
enabled: true
|
||||||
|
|
||||||
externalServices:
|
authentication:
|
||||||
nubus:
|
twoFactor:
|
||||||
udmRestApi:
|
# Define a list of groups to enable 2FA for.
|
||||||
# Enable to make the UDM REST API from the Nubus stack externally available.
|
# Note: Removing a group from the list will not disable 2FA for the removed group.
|
||||||
|
groups:
|
||||||
|
- "Domain Admins"
|
||||||
|
oidc:
|
||||||
|
# Define additional/custom OIDC clients to be created in the 'opendesk' realm of Keycloak.
|
||||||
|
clients: ~
|
||||||
|
# Define additional/custom OIDC client scopes to be created in the 'opendesk' realm of Keycloak.
|
||||||
|
clientScopes: ~
|
||||||
|
|
||||||
|
externalServices:
|
||||||
|
nubus:
|
||||||
|
udmRestApi:
|
||||||
|
# Enable to make the UDM REST API from the Nubus stack externally available.
|
||||||
|
enabled: false
|
||||||
|
matrix:
|
||||||
|
federation:
|
||||||
|
# Disable to not support Matrix federation with your installation.
|
||||||
|
enabled: true
|
||||||
|
|
||||||
|
email:
|
||||||
|
systemGenerated:
|
||||||
|
# By disabling all mails are sent from @<domain> instead of @<component>.<domain>.
|
||||||
|
useComponentInSenderdomain: true
|
||||||
|
|
||||||
|
filestore:
|
||||||
|
quota:
|
||||||
|
# Set the default quota for all users in GB
|
||||||
|
default: 1
|
||||||
|
# Nextcloud specific configuration
|
||||||
|
nextcloud:
|
||||||
|
retentionObligation:
|
||||||
|
# yamllint disable rule:line-length
|
||||||
|
# Set Nextcloud's `trashbin_retention_obligation`
|
||||||
|
# Ref.: https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/config_sample_php_parameters.html#trashbin-retention-obligation
|
||||||
|
trashbin: "auto"
|
||||||
|
# Set Nextcloud's `versions_retention_obligation`
|
||||||
|
# Ref.: https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/config_sample_php_parameters.html#versions-retention-obligation
|
||||||
|
versions: "auto"
|
||||||
|
# yamllint enable rule:line-length
|
||||||
|
|
||||||
|
dataProtection:
|
||||||
|
matrixPresence:
|
||||||
|
# Enable to allow information about the user presence status to be shared.
|
||||||
|
# Ref.: https://element-hq.github.io/synapse/latest/usage/configuration/config_documentation.html#presence
|
||||||
enabled: false
|
enabled: false
|
||||||
matrix:
|
|
||||||
federation:
|
|
||||||
# Disable to not support Matrix federation with your installation.
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
admin:
|
|
||||||
portal:
|
|
||||||
deploymentInformation:
|
|
||||||
# Disable to not provide and update openDesk release version and deployment timestamp for admins in the portal.
|
|
||||||
enabled: true
|
|
||||||
...
|
...
|
||||||
|
|||||||
@@ -3,5 +3,5 @@
|
|||||||
---
|
---
|
||||||
global:
|
global:
|
||||||
systemInformation:
|
systemInformation:
|
||||||
releaseVersion: "v0.8.1"
|
releaseVersion: "v0.9.1"
|
||||||
...
|
...
|
||||||
|
|||||||
@@ -23,4 +23,39 @@ global:
|
|||||||
#
|
#
|
||||||
helmRegistry: {{ env "PRIVATE_HELM_REGISTRY_URL" | quote }}
|
helmRegistry: {{ env "PRIVATE_HELM_REGISTRY_URL" | quote }}
|
||||||
imageRegistry: {{ env "PRIVATE_IMAGE_REGISTRY_URL" | quote }}
|
imageRegistry: {{ env "PRIVATE_IMAGE_REGISTRY_URL" | quote }}
|
||||||
|
|
||||||
|
## Define ingress/virtualservice host.
|
||||||
|
#
|
||||||
|
hosts:
|
||||||
|
collabora: "collabora"
|
||||||
|
cryptpad: "cryptpad"
|
||||||
|
element: "chat"
|
||||||
|
intercomService: "ics"
|
||||||
|
jitsi: "meet"
|
||||||
|
keycloak: "id"
|
||||||
|
matrixNeoBoardWidget: "matrix-neoboard-widget"
|
||||||
|
matrixNeoChoiceWidget: "matrix-neochoice-widget"
|
||||||
|
matrixNeoDateFixBot: "matrix-neodatefix-bot"
|
||||||
|
matrixNeoDateFixWidget: "matrix-neodatefix-widget"
|
||||||
|
minioApi: "minio"
|
||||||
|
minioConsole: "minio-console"
|
||||||
|
nextcloud: "fs"
|
||||||
|
nubus: "portal"
|
||||||
|
openproject: "project"
|
||||||
|
openxchange: "webmail"
|
||||||
|
synapse: "matrix"
|
||||||
|
synapseFederation: "matrix-federation"
|
||||||
|
whiteboard: "whiteboard"
|
||||||
|
xwiki: "wiki"
|
||||||
|
|
||||||
|
## Credentials to fetch images from private registry
|
||||||
|
## Ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
|
||||||
|
#
|
||||||
|
imagePullSecrets:
|
||||||
|
- "external-registry"
|
||||||
|
|
||||||
|
## Define the policy to pull container images.
|
||||||
|
## Ref: https://kubernetes.io/docs/concepts/containers/images/#image-pull-policy
|
||||||
|
#
|
||||||
|
imagePullPolicy: "IfNotPresent"
|
||||||
...
|
...
|
||||||
|
|||||||
@@ -1,42 +0,0 @@
|
|||||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
|
||||||
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
|
||||||
---
|
|
||||||
## The global properties are used to configure multiple charts at once.
|
|
||||||
#
|
|
||||||
global:
|
|
||||||
## Define ingress/virtualservice host.
|
|
||||||
#
|
|
||||||
hosts:
|
|
||||||
collabora: "collabora"
|
|
||||||
cryptpad: "cryptpad"
|
|
||||||
element: "chat"
|
|
||||||
intercomService: "ics"
|
|
||||||
jitsi: "meet"
|
|
||||||
keycloak: "id"
|
|
||||||
matrixNeoBoardWidget: "matrix-neoboard-widget"
|
|
||||||
matrixNeoChoiceWidget: "matrix-neochoice-widget"
|
|
||||||
matrixNeoDateFixBot: "matrix-neodatefix-bot"
|
|
||||||
matrixNeoDateFixWidget: "matrix-neodatefix-widget"
|
|
||||||
minioApi: "minio"
|
|
||||||
minioConsole: "minio-console"
|
|
||||||
nextcloud: "fs"
|
|
||||||
openproject: "project"
|
|
||||||
openxchange: "webmail"
|
|
||||||
synapse: "matrix"
|
|
||||||
synapseFederation: "matrix-federation"
|
|
||||||
univentionManagementStack: "portal"
|
|
||||||
whiteboard: "whiteboard"
|
|
||||||
xwiki: "wiki"
|
|
||||||
|
|
||||||
## Credentials to fetch images from private registry
|
|
||||||
## Ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
|
|
||||||
#
|
|
||||||
imagePullSecrets:
|
|
||||||
- "external-registry"
|
|
||||||
|
|
||||||
## Define the policy to pull container images.
|
|
||||||
## Ref: https://kubernetes.io/docs/concepts/containers/images/#image-pull-policy
|
|
||||||
#
|
|
||||||
imagePullPolicy: "IfNotPresent"
|
|
||||||
...
|
|
||||||
@@ -20,7 +20,7 @@ images:
|
|||||||
# upstreamRepository: "bmi/opendesk/components/supplier/collabora/images/collabora-online-for-opendesk"
|
# upstreamRepository: "bmi/opendesk/components/supplier/collabora/images/collabora-online-for-opendesk"
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/supplier/collabora/images/collabora-online-for-opendesk"
|
repository: "bmi/opendesk/components/supplier/collabora/images/collabora-online-for-opendesk"
|
||||||
tag: "24.04.4.2.1@sha256:268b586d48848958f9a0329f1ce6849f842d1ab2413a3c45ddf2f2dd249efc9a"
|
tag: "24.04.6.1.1@sha256:6237af013065838be27faae69b26feec63de6de8412499285f5379d74fef7387"
|
||||||
cryptpad:
|
cryptpad:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
# providerResponsible: "XWiki"
|
# providerResponsible: "XWiki"
|
||||||
@@ -83,7 +83,7 @@ images:
|
|||||||
# upstreamMirrorStartFrom: ["8922"]
|
# upstreamMirrorStartFrom: ["8922"]
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/supplier/nordeck/images-mirror/jibri"
|
repository: "bmi/opendesk/components/supplier/nordeck/images-mirror/jibri"
|
||||||
tag: "stable-9457-2@sha256:eb079f650649c6336dc93eb30cdc086c0b784f5c3fe80ea3441a1f00ebf073f3"
|
tag: "stable-9646@sha256:30173d35449d78f8958eaf4de77e76c534806db0e49bdbb930f8c81e003e5a3b"
|
||||||
jicofo:
|
jicofo:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
# providerResponsible: "Nordeck"
|
# providerResponsible: "Nordeck"
|
||||||
@@ -93,7 +93,7 @@ images:
|
|||||||
# upstreamMirrorStartFrom: ["8922"]
|
# upstreamMirrorStartFrom: ["8922"]
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/supplier/nordeck/images-mirror/jicofo"
|
repository: "bmi/opendesk/components/supplier/nordeck/images-mirror/jicofo"
|
||||||
tag: "stable-9457-2@sha256:7d3213eea740721755da81ecfd9b500c71c610d04939b26de4434619a66e15e1"
|
tag: "stable-9646@sha256:c2c72b6e4b6655d8758145f5c4d4201265626b7c3c1a03f41c7dda060ca7165d"
|
||||||
jitsi:
|
jitsi:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
# providerResponsible: "Nordeck"
|
# providerResponsible: "Nordeck"
|
||||||
@@ -103,7 +103,7 @@ images:
|
|||||||
# upstreamMirrorStartFrom: ["8922"]
|
# upstreamMirrorStartFrom: ["8922"]
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/supplier/nordeck/images-mirror/web"
|
repository: "bmi/opendesk/components/supplier/nordeck/images-mirror/web"
|
||||||
tag: "stable-9457-2@sha256:263e2e52934900547f1496eed965e2d3e01e9b8a251844bacbac49deba97f6b2"
|
tag: "stable-9646@sha256:04157797558743fa9c478b76d7332a45c6fbfbe4e34d6550f8716dd8526a1c6c"
|
||||||
jitsiKeycloakAdapter:
|
jitsiKeycloakAdapter:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
# providerResponsible: "Nordeck"
|
# providerResponsible: "Nordeck"
|
||||||
@@ -113,7 +113,7 @@ images:
|
|||||||
# upstreamMirrorStartFrom: ["2023", "12", "14"]
|
# upstreamMirrorStartFrom: ["2023", "12", "14"]
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/supplier/nordeck/images-mirror/jitsi-keycloak-adapter"
|
repository: "bmi/opendesk/components/supplier/nordeck/images-mirror/jitsi-keycloak-adapter"
|
||||||
tag: "v20240314@sha256:8abe8209a59c2d646fa3e7136f6a6ea15f3f692106bba92c0e777f8d383edc12"
|
tag: "v20240808@sha256:73db5ae9bb617d076b6a877500dbeece38fd15f8ae933ffadbd72d9aa82ad8da"
|
||||||
jitsiPatchJVB:
|
jitsiPatchJVB:
|
||||||
# providerCategory: "Community"
|
# providerCategory: "Community"
|
||||||
# providerResponsible: "Nordeck"
|
# providerResponsible: "Nordeck"
|
||||||
@@ -131,7 +131,7 @@ images:
|
|||||||
# upstreamMirrorStartFrom: ["8922"]
|
# upstreamMirrorStartFrom: ["8922"]
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/supplier/nordeck/images-mirror/jvb"
|
repository: "bmi/opendesk/components/supplier/nordeck/images-mirror/jvb"
|
||||||
tag: "stable-9457-2@sha256:2f10f28463e65a13a260d379c4cce62531d66a94bb8dcf2dbe88cdb4cd01b16c"
|
tag: "stable-9646@sha256:22dfb237cdda8142dcf2b141c28d40ec8a675dd379dda5e851dac49e43e677b7"
|
||||||
mariadb:
|
mariadb:
|
||||||
# providerCategory: "Community"
|
# providerCategory: "Community"
|
||||||
# providerResponsible: "openDesk"
|
# providerResponsible: "openDesk"
|
||||||
@@ -195,9 +195,19 @@ images:
|
|||||||
# providerResponsible: "openDesk"
|
# providerResponsible: "openDesk"
|
||||||
# upstreamRegistry: "https://registry-1.docker.io"
|
# upstreamRegistry: "https://registry-1.docker.io"
|
||||||
# upstreamRepository: "bitnami/memcached"
|
# upstreamRepository: "bitnami/memcached"
|
||||||
registry: "registry-1.docker.io"
|
# registry: "registry-1.docker.io"
|
||||||
|
# repository: "bitnami/memcached"
|
||||||
|
registry: "docker.io"
|
||||||
repository: "bitnami/memcached"
|
repository: "bitnami/memcached"
|
||||||
tag: "1.6.21-debian-11-r107@sha256:247ec29efd6030960047a623aef025021154662edf6b6d6e88c97936f164d99d"
|
tag: "1.6.29-debian-12-r4"
|
||||||
|
migrations:
|
||||||
|
# providerCategory: "Platform"
|
||||||
|
# providerResponsible: "openDesk"
|
||||||
|
# upstreamRegistry: "https://registry.opencode.de"
|
||||||
|
# upstreamRepository: "bmi/opendesk/components/platform-development/images/opendesk-migrations"
|
||||||
|
registry: "registry.opencode.de"
|
||||||
|
repository: "bmi/opendesk/components/platform-development/images/opendesk-migrations"
|
||||||
|
tag: "1.2.1@sha256:241561c51dee3ccd4d54cf732020634291f124025946e6be983f850bbf4eb1d3"
|
||||||
milter:
|
milter:
|
||||||
# providerCategory: "Community"
|
# providerCategory: "Community"
|
||||||
# providerResponsible: "openDesk"
|
# providerResponsible: "openDesk"
|
||||||
@@ -211,9 +221,11 @@ images:
|
|||||||
# providerResponsible: "openDesk"
|
# providerResponsible: "openDesk"
|
||||||
# upstreamRegistry: "https://registry-1.docker.io"
|
# upstreamRegistry: "https://registry-1.docker.io"
|
||||||
# upstreamRepository: "bitnami/minio"
|
# upstreamRepository: "bitnami/minio"
|
||||||
registry: "registry-1.docker.io"
|
# registry: "registry-1.docker.io"
|
||||||
|
# repository: "bitnami/minio"
|
||||||
|
registry: "docker.io"
|
||||||
repository: "bitnami/minio"
|
repository: "bitnami/minio"
|
||||||
tag: "2023@sha256:bced4f2f9fc48b755ebb3e1b35e76195a978d4331bf2d0c6699dab412d3c0be7"
|
tag: "2024.8.17-debian-12-r0"
|
||||||
nextcloudApache2:
|
nextcloudApache2:
|
||||||
# providerCategory: "Platform"
|
# providerCategory: "Platform"
|
||||||
# providerResponsible: "openDesk"
|
# providerResponsible: "openDesk"
|
||||||
@@ -221,7 +233,7 @@ images:
|
|||||||
# upstreamRepository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud-apache2"
|
# upstreamRepository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud-apache2"
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud-apache2"
|
repository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud-apache2"
|
||||||
tag: "1.1.21@sha256:ec63d564eb11d7ed213a5ef8719f2b3380e552f1ffb1251470b84c0c8937b7b8"
|
tag: "1.1.24@sha256:c9222da8be7af12c9076b41d1a14e019725afc075e1aaa2b727be21c1bf45f10"
|
||||||
nextcloudExporter:
|
nextcloudExporter:
|
||||||
# providerCategory: "Platform"
|
# providerCategory: "Platform"
|
||||||
# providerResponsible: "openDesk"
|
# providerResponsible: "openDesk"
|
||||||
@@ -237,7 +249,7 @@ images:
|
|||||||
# upstreamRepository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud-management"
|
# upstreamRepository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud-management"
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud-management"
|
repository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud-management"
|
||||||
tag: "1.3.12@sha256:54bb5a90ebe49b33b053e8a7df2fa8d8cb992b17f68a04d08357961c3aded0b0"
|
tag: "1.4.4@sha256:b70c159d6a1827748ca1f8fe0b9fd5b011eaed8719172105e1e9c8b8d776cf97"
|
||||||
nextcloudPHP:
|
nextcloudPHP:
|
||||||
# providerCategory: "Platform"
|
# providerCategory: "Platform"
|
||||||
# providerResponsible: "openDesk"
|
# providerResponsible: "openDesk"
|
||||||
@@ -245,7 +257,371 @@ images:
|
|||||||
# upstreamRepository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud-php"
|
# upstreamRepository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud-php"
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud-php"
|
repository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud-php"
|
||||||
tag: "1.8.11@sha256:85b3bbf027c9e6a2ccf411b8e2b3752f6a58a3a14f00fb92ecefd9e7ca0c6954"
|
tag: "1.10.3@sha256:e659ab95d0d3a33d4937354449c12fa46fe2669a866bbf432a9d729bed6d54f7"
|
||||||
|
nubusDataLoader:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||||
|
# upstreamRepository: "nubus/images/data-loader"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||||
|
# upstreamMirrorStartFrom: ["0", "41", "5"]
|
||||||
|
# registry: "registry.opencode.de"
|
||||||
|
# repository: "bmi/opendesk/components/supplier/univention/images-mirror/data-loader"
|
||||||
|
registry: "artifacts.software-univention.de"
|
||||||
|
repository: "nubus/images/data-loader"
|
||||||
|
tag: "0.61.1@sha256:4a199197bce963fa24c58b83836757932f39a8d5c21e2ece07015d5f42e2e4df"
|
||||||
|
nubusGuardianAuthorizationApi:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://docker.software-univention.de"
|
||||||
|
# upstreamRepository: "guardian-authorization-api-authorization-api"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||||
|
# upstreamMirrorStartFrom: ["1", "0", "0"]
|
||||||
|
registry: "registry.opencode.de"
|
||||||
|
repository: "bmi/opendesk/components/supplier/univention/images-mirror/guardian-authorization-api-authorization-api"
|
||||||
|
tag: "2.0.0@sha256:5f194f9385aea5a279e25a57352f7b88a6cc4fa90b3bf04c2c97b9ff2bad70a5"
|
||||||
|
nubusGuardianManagementApi:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://docker.software-univention.de"
|
||||||
|
# upstreamRepository: "guardian-management-api-management-api"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||||
|
# upstreamMirrorStartFrom: ["1", "0", "0"]
|
||||||
|
registry: "registry.opencode.de"
|
||||||
|
repository: "bmi/opendesk/components/supplier/univention/images-mirror/guardian-management-api-management-api"
|
||||||
|
tag: "2.0.0@sha256:61a1ab84efebe2a87d358e8624f8b39073a6071683e7cd77b740a97d464753a2"
|
||||||
|
nubusGuardianManagementUi:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://docker.software-univention.de"
|
||||||
|
# upstreamRepository: "guardian-management-ui-management-ui"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||||
|
# upstreamMirrorStartFrom: ["1", "0", "0"]
|
||||||
|
registry: "registry.opencode.de"
|
||||||
|
repository: "bmi/opendesk/components/supplier/univention/images-mirror/guardian-management-ui-management-ui"
|
||||||
|
tag: "2.0.0@sha256:57e2503a4772f0ff656e792a98fadef4d41c248218e6c368f76ce82a892478cf"
|
||||||
|
nubusGuardianProvisioning:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||||
|
# upstreamRepository: "nubus/images/guardian-init"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||||
|
# upstreamMirrorStartFrom: ["0", "3", "0"]
|
||||||
|
# registry: "registry.opencode.de"
|
||||||
|
# repository: "bmi/opendesk/components/supplier/univention/images-mirror/guardian-init"
|
||||||
|
registry: "artifacts.software-univention.de"
|
||||||
|
repository: "nubus/images/guardian-init"
|
||||||
|
tag: "0.10.0@sha256:480943182f20b04b3d37b340e701545e002710c6668925de3758587174c5ee56"
|
||||||
|
nubusKeycloak:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://docker.software-univention.de"
|
||||||
|
# upstreamRepository: "keycloak-keycloak"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+).+$'
|
||||||
|
# upstreamMirrorStartFrom: ["22", "0", "3"]
|
||||||
|
registry: "registry.opencode.de"
|
||||||
|
repository: "bmi/opendesk/components/supplier/univention/images-mirror/keycloak-keycloak"
|
||||||
|
tag: "24.0.3-ucs1@sha256:cc66a1730abdd5abe88ac5cf045b6558f289bf1ae8d077ee884a42d785742f8b"
|
||||||
|
nubusKeycloakBootstrap:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||||
|
# upstreamRepository: "nubus/images/keycloak-bootstrap"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||||
|
# upstreamMirrorStartFrom: ["0", "1", "0"]
|
||||||
|
# registry: "registry.opencode.de"
|
||||||
|
# repository: "bmi/opendesk/components/supplier/univention/images-mirror/keycloak-bootstrap"
|
||||||
|
registry: "artifacts.software-univention.de"
|
||||||
|
repository: "nubus/images/keycloak-bootstrap"
|
||||||
|
tag: "0.1.2"
|
||||||
|
nubusKeycloakExtensionHandler:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||||
|
# upstreamRepository: "nubus/images/keycloak-handler"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||||
|
# upstreamMirrorStartFrom: ["0", "0", "3"]
|
||||||
|
registry: "registry.opencode.de"
|
||||||
|
repository: "bmi/opendesk/components/supplier/univention/images-mirror/keycloak-handler"
|
||||||
|
tag: "0.9.4@sha256:247182a965cc56fe2a891d42a7cfe84205804a9e58dd8f0a8191726a68cb9db1"
|
||||||
|
nubusKeycloakExtensionProxy:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||||
|
# upstreamRepository: "nubus/images/keycloak-proxy"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||||
|
# upstreamMirrorStartFrom: ["0", "0", "3"]
|
||||||
|
registry: "registry.opencode.de"
|
||||||
|
repository: "bmi/opendesk/components/supplier/univention/images-mirror/keycloak-proxy"
|
||||||
|
tag: "0.9.4@sha256:a572fe076a2ef5966433fec478c92cffade816e71f2b4661bd8dbcb9e60c8c2f"
|
||||||
|
nubusLdapNotifier:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||||
|
# upstreamRepository: "nubus/images/ldap-notifier"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||||
|
# upstreamMirrorStartFrom: ["0", "8", "2"]
|
||||||
|
# registry: "registry.opencode.de"
|
||||||
|
# repository: "bmi/opendesk/components/supplier/univention/images-mirror/ldap-notifier"
|
||||||
|
registry: "artifacts.software-univention.de"
|
||||||
|
repository: "nubus/images/ldap-notifier"
|
||||||
|
tag: "0.22.1@sha256:34a7afc7789705f964846b340c0368d144cff397c718fda8902944cf22e61c15"
|
||||||
|
nubusLdapServer:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||||
|
# upstreamRepository: "nubus/images/ldap-server"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||||
|
# upstreamMirrorStartFrom: ["0", "8", "2"]
|
||||||
|
registry: "registry.opencode.de"
|
||||||
|
repository: "bmi/opendesk/components/platform-development/images/temp-nubus-ldap-2.5-upgrade"
|
||||||
|
tag: "1.1.20@sha256:90f46b8817fa05e6e3ac3b2f053911198675805fb82db8240bfa41239d7e7c61"
|
||||||
|
nubusLdapServerDhInitContainer:
|
||||||
|
# providerCategory: 'Community'
|
||||||
|
# providerResponsible: 'Univention'
|
||||||
|
# upstreamRegistry: 'registry-1.docker.io'
|
||||||
|
# upstreamRepository: 'natsio/nats-box'
|
||||||
|
registry: "registry-1.docker.io"
|
||||||
|
repository: "natsio/nats-box"
|
||||||
|
tag: "0.14.2@sha256:c9b8ebaabb2ca4c227feb4f6b856dc72d4775ac3d71f80d2c65aa82303079011"
|
||||||
|
nubusNats:
|
||||||
|
# providerCategory: 'Community'
|
||||||
|
# providerResponsible: 'Univention'
|
||||||
|
# upstreamRegistry: 'registry-1.docker.io'
|
||||||
|
# upstreamRepository: 'library/nats'
|
||||||
|
registry: "registry-1.docker.io"
|
||||||
|
repository: "library/nats"
|
||||||
|
tag: "2.10.10@sha256:fa26beda8a3187ccefa47afcfe9ea6d0e2f40a57c8f64d70bd63c792d7973938"
|
||||||
|
nubusNatsBox:
|
||||||
|
# providerCategory: 'Community'
|
||||||
|
# providerResponsible: 'Univention'
|
||||||
|
# upstreamRegistry: 'registry-1.docker.io'
|
||||||
|
# upstreamRepository: 'natsio/nats-box'
|
||||||
|
registry: "registry-1.docker.io"
|
||||||
|
repository: "natsio/nats-box"
|
||||||
|
tag: "0.14.2@sha256:c9b8ebaabb2ca4c227feb4f6b856dc72d4775ac3d71f80d2c65aa82303079011"
|
||||||
|
nubusNatsReloader:
|
||||||
|
# providerCategory: 'Community'
|
||||||
|
# providerResponsible: 'Univention'
|
||||||
|
# upstreamRegistry: 'registry-1.docker.io'
|
||||||
|
# upstreamRepository: 'natsio/nats-server-config-reloader'
|
||||||
|
registry: "registry-1.docker.io"
|
||||||
|
repository: "natsio/nats-server-config-reloader"
|
||||||
|
tag: "0.14.1@sha256:77dd4c60001ffbf442c6b25592e73b4fca06ea9406c677607192788d80453783"
|
||||||
|
nubusNotificationsApi:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||||
|
# upstreamRepository: "nubus/images/notifications-api"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||||
|
# upstreamMirrorStartFrom: ["0", "9", "4"]
|
||||||
|
registry: "registry.opencode.de"
|
||||||
|
repository: "bmi/opendesk/components/supplier/univention/images-mirror/notifications-api"
|
||||||
|
tag: "0.27.0@sha256:d99173199f20c701b29b8a3c1a46465085a873b37f413882e7d2e106e258c35a"
|
||||||
|
nubusOpenPolicyAgent:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://docker.software-univention.de"
|
||||||
|
# upstreamRepository: "guardian-authorization-api-opa"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||||
|
# upstreamMirrorStartFrom: ["1", "0", "0"]
|
||||||
|
registry: "registry.opencode.de"
|
||||||
|
repository: "bmi/opendesk/components/supplier/univention/images-mirror/guardian-authorization-api-opa"
|
||||||
|
tag: "2.0.0@sha256:56a92a08da5addb951a2b2df09974889295ddde8526e93ad40dd973de1052ad4"
|
||||||
|
nubusOxExtension:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||||
|
# upstreamRepository: "nubus/images/ox-extension"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||||
|
# upstreamMirrorStartFrom: ["0", "10", "0"]
|
||||||
|
# registry: "registry.opencode.de"
|
||||||
|
# repository: "bmi/opendesk/components/supplier/univention/images-mirror/ox-extension"
|
||||||
|
registry: "artifacts.software-univention.de"
|
||||||
|
repository: "nubus/images/ox-extension"
|
||||||
|
tag: "0.11.0"
|
||||||
|
nubusPortalConsumer:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||||
|
# upstreamRepository: "nubus/images/portal-consumer"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||||
|
# upstreamMirrorStartFrom: ["0", "27", "0"]
|
||||||
|
registry: "registry.opencode.de"
|
||||||
|
repository: "bmi/opendesk/components/supplier/univention/images-mirror/portal-consumer"
|
||||||
|
tag: "0.27.0@sha256:e86bf827d1e93b61473a0730492f48f8dbf0d056b79dd9ecde7af1612696b144"
|
||||||
|
nubusPortalExtension:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||||
|
# upstreamRepository: "nubus/images/portal-extension"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||||
|
# upstreamMirrorStartFrom: ["0", "28", "0"]
|
||||||
|
# registry: "registry.opencode.de"
|
||||||
|
# repository: "bmi/opendesk/components/supplier/univention/images-mirror/portal-extension"
|
||||||
|
registry: "artifacts.software-univention.de"
|
||||||
|
repository: "nubus/images/portal-extension"
|
||||||
|
tag: "0.28.0"
|
||||||
|
nubusPortalFrontend:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||||
|
# upstreamRepository: "nubus/images/portal-frontend"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||||
|
# upstreamMirrorStartFrom: ["0", "9", "4"]
|
||||||
|
# registry: "registry.opencode.de"
|
||||||
|
# repository: "bmi/opendesk/components/supplier/univention/images-mirror/portal-frontend"
|
||||||
|
registry: "artifacts.software-univention.de"
|
||||||
|
repository: "nubus/images/portal-frontend"
|
||||||
|
tag: "0.32.0@sha256:3d3766415be8aec356b00c05554f9420069bcf260e3bfd6bdea5b85160aa8468"
|
||||||
|
nubusPortalListener:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||||
|
# upstreamRepository: "nubus/images/portal-listener"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||||
|
# upstreamMirrorStartFrom: ["0", "9", "4"]
|
||||||
|
registry: "registry.opencode.de"
|
||||||
|
repository: "bmi/opendesk/components/supplier/univention/images-mirror/portal-listener"
|
||||||
|
tag: "0.24.2@sha256:98306b30c99e190ece6633921d9d54297634b0e4ca58ceaf0794c7050f0b8470"
|
||||||
|
nubusPortalServer:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||||
|
# upstreamRepository: "nubus/images/portal-server"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||||
|
# upstreamMirrorStartFrom: ["0", "9", "4"]
|
||||||
|
registry: "registry.opencode.de"
|
||||||
|
repository: "bmi/opendesk/components/supplier/univention/images-mirror/portal-server"
|
||||||
|
tag: "0.27.0@sha256:e1ad659feb4a1948d07e6e7d99b94b6bdbd4525d96f4cf9a010b75189f0082fc"
|
||||||
|
nubusProvisioningDispatcher:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||||
|
# upstreamRepository: "nubus/images/provisioning-dispatcher"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||||
|
# upstreamMirrorStartFrom: ["0", "14", "0"]
|
||||||
|
registry: "registry.opencode.de"
|
||||||
|
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-dispatcher"
|
||||||
|
tag: "0.28.3@sha256:79c81b0143e78c7cabb1efd63d47530eac686fba11db57c173abd8ebdd396778"
|
||||||
|
nubusProvisioningEventsAndConsumerApi:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||||
|
# upstreamRepository: "nubus/images/provisioning-events-and-consumer-api"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||||
|
# upstreamMirrorStartFrom: ["0", "14", "0"]
|
||||||
|
# registry: "registry.opencode.de"
|
||||||
|
# repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-events-and-consumer-api"
|
||||||
|
registry: "artifacts.software-univention.de"
|
||||||
|
repository: "nubus/images/provisioning-events-and-consumer-api"
|
||||||
|
tag: "0.36.0@sha256:69dd2946e7b05384304eeeca50dea645d20f7658d225e7c532381c3bdf2027ce"
|
||||||
|
nubusProvisioningPrefill:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||||
|
# upstreamRepository: "nubus/images/provisioning-prefill"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||||
|
# upstreamMirrorStartFrom: ["0", "14", "0"]
|
||||||
|
# registry: "registry.opencode.de"
|
||||||
|
# repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-prefill"
|
||||||
|
registry: "artifacts.software-univention.de"
|
||||||
|
repository: "nubus/images/provisioning-prefill"
|
||||||
|
tag: "0.36.0@sha256:147406648848c068aacc2cb467633d51c65cddbcaa622c352e5fe5349bf92ce6"
|
||||||
|
nubusProvisioningUdmListener:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||||
|
# upstreamRepository: "nubus/images/provisioning-udm-listener"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||||
|
# upstreamMirrorStartFrom: ["0", "14", "0"]
|
||||||
|
# registry: "registry.opencode.de"
|
||||||
|
# repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-udm-listener"
|
||||||
|
registry: "artifacts.software-univention.de"
|
||||||
|
repository: "nubus/images/provisioning-udm-listener"
|
||||||
|
tag: "0.36.0@sha256:8a960db9ff94b3c8a63be1588e47ccc1f62f3071abdce7ee2ef89afbe2674eed"
|
||||||
|
nubusProvisioningUdmTransformer:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||||
|
# upstreamRepository: "nubus/images/provisioning-udm-transformer"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||||
|
# upstreamMirrorStartFrom: ["0", "14", "0"]
|
||||||
|
# registry: "registry.opencode.de"
|
||||||
|
# repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-udm-transformer"
|
||||||
|
registry: "artifacts.software-univention.de"
|
||||||
|
repository: "nubus/images/provisioning-udm-transformer"
|
||||||
|
tag: "0.36.0@sha256:8080b55e705391aa2ac9b11db11dc1f984b5626271b2f175bfe26967b857b06d"
|
||||||
|
nubusSelfserviceInvitation:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||||
|
# upstreamRepository: "nubus/images/selfservice-invitation"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||||
|
# upstreamMirrorStartFrom: ["0", "3", "2"]
|
||||||
|
registry: "registry.opencode.de"
|
||||||
|
repository: "bmi/opendesk/components/supplier/univention/images-mirror/selfservice-invitation"
|
||||||
|
tag: "0.6.4@sha256:3fcc56c2e039a5a503183ec272fea334083079ceb83c8af7283f9be9b4334d71"
|
||||||
|
nubusSelfserviceListener:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||||
|
# upstreamRepository: "nubus/images/selfservice-listener"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||||
|
# upstreamMirrorStartFrom: ["0", "3", "2"]
|
||||||
|
registry: "registry.opencode.de"
|
||||||
|
repository: "bmi/opendesk/components/supplier/univention/images-mirror/selfservice-listener"
|
||||||
|
tag: "0.6.4@sha256:9605072b60d832ba165d8b7f9b1b7195693e7d5744479af321e4cf242f9ea500"
|
||||||
|
nubusStackGateway:
|
||||||
|
# providerCategory: "Community"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://registry-1.docker.io"
|
||||||
|
# upstreamRepository: "bitnami/nginx"
|
||||||
|
registry: "registry-1.docker.io"
|
||||||
|
repository: "bitnami/nginx"
|
||||||
|
tag: "1.25.4@sha256:dd352b597f4c38ae24abec411710f4249fb5c793293c7ed04737db6b41d32d24"
|
||||||
|
nubusUdmRestApi:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||||
|
# upstreamRepository: "nubus/images/udm-rest-api"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||||
|
# upstreamMirrorStartFrom: ["0", "9", "3"]
|
||||||
|
registry: "registry.opencode.de"
|
||||||
|
repository: "bmi/opendesk/components/supplier/univention/images-mirror/udm-rest-api"
|
||||||
|
tag: "0.19.0@sha256:41482c459655afa36eaf9ec21354ff8417e4da5e3a787ec2f865730952f6bb61"
|
||||||
|
nubusUmcGateway:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||||
|
# upstreamRepository: "nubus/images/umc-gateway"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||||
|
# upstreamMirrorStartFrom: ["0", "7", "3"]
|
||||||
|
# registry: "registry.opencode.de"
|
||||||
|
# repository: "bmi/opendesk/components/supplier/univention/images-mirror/umc-gateway"
|
||||||
|
registry: "artifacts.software-univention.de"
|
||||||
|
repository: "nubus/images/umc-gateway"
|
||||||
|
tag: "0.26.0@sha256:c8d025851ca45c50f61fa1da97681a583e07ab57945a0b9fecb56cefc1e11331"
|
||||||
|
nubusUmcServer:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||||
|
# upstreamRepository: "nubus/images/umc-server"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||||
|
# upstreamMirrorStartFrom: ["0", "7", "3"]
|
||||||
|
registry: "registry.opencode.de"
|
||||||
|
repository: "bmi/opendesk/components/supplier/univention/images-mirror/umc-server"
|
||||||
|
tag: "0.22.2@sha256:474497f561c3532b37b7d5e77ec36bd1fefc4fbeaab9747b481533b0da086586"
|
||||||
|
nubusWaitForDependency:
|
||||||
|
# providerCategory: "Supplier"
|
||||||
|
# providerResponsible: "Univention"
|
||||||
|
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||||
|
# upstreamRepository: "nubus/images/wait-for-dependency"
|
||||||
|
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||||
|
# upstreamMirrorStartFrom: ["0", "9", "4"]
|
||||||
|
registry: "registry.opencode.de"
|
||||||
|
repository: "bmi/opendesk/components/supplier/univention/images-mirror/wait-for-dependency"
|
||||||
|
tag: "0.25.0@sha256:71a4d66fd67db6f92212b1936862b2b0d5a678d412213d74452a9195c2fe67f7"
|
||||||
opendeskKeycloakBootstrap:
|
opendeskKeycloakBootstrap:
|
||||||
# providerCategory: "Platform"
|
# providerCategory: "Platform"
|
||||||
# providerResponsible: "openDesk"
|
# providerResponsible: "openDesk"
|
||||||
@@ -253,7 +629,7 @@ images:
|
|||||||
# upstreamRepository: "bmi/opendesk/components/platform-development/images/opendesk-keycloak-bootstrap"
|
# upstreamRepository: "bmi/opendesk/components/platform-development/images/opendesk-keycloak-bootstrap"
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/platform-development/images/opendesk-keycloak-bootstrap"
|
repository: "bmi/opendesk/components/platform-development/images/opendesk-keycloak-bootstrap"
|
||||||
tag: "1.0.5@sha256:76ccd9a74ae2c2dabb6beaa0192c15b9c06763abbd632cd0f8db68e5d8d5883c"
|
tag: "1.2.1@sha256:f5ce0be27580c6347c5e700c4fa271a811d45d8a0e4b40ffe8a4d0e3d47e670f"
|
||||||
openproject:
|
openproject:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
# providerResponsible: "OpenProject"
|
# providerResponsible: "OpenProject"
|
||||||
@@ -263,7 +639,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: "14.2.0@sha256:b4ea55b925de4fc8760ccf30268f0a2d472c4204bd4fc512720e8757489335d6"
|
tag: "14.4.0@sha256:0c1ee5467b5c7888f38eae88a712c2eec6c96995b85f09e0c27705c09f450a70"
|
||||||
openprojectBootstrap:
|
openprojectBootstrap:
|
||||||
# providerCategory: "Platform"
|
# providerCategory: "Platform"
|
||||||
# providerResponsible: "openDesk"
|
# providerResponsible: "openDesk"
|
||||||
@@ -271,7 +647,7 @@ images:
|
|||||||
# upstreamRepository: "bmi/opendesk/components/platform-development/images/opendesk-openproject-bootstrap"
|
# upstreamRepository: "bmi/opendesk/components/platform-development/images/opendesk-openproject-bootstrap"
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/platform-development/images/opendesk-openproject-bootstrap"
|
repository: "bmi/opendesk/components/platform-development/images/opendesk-openproject-bootstrap"
|
||||||
tag: "1.1.3@sha256:401afe66c418fd130088edbed5cc3b4464dc667eb609f194ea68fd30dcbd1e90"
|
tag: "1.1.4@sha256:2fd97a316114428849aaeef87fb8755274e675830088a93afcafac91bb048d1d"
|
||||||
openprojectInitDb:
|
openprojectInitDb:
|
||||||
# providerCategory: "Community"
|
# providerCategory: "Community"
|
||||||
# providerResponsible: "OpenProject"
|
# providerResponsible: "OpenProject"
|
||||||
@@ -297,7 +673,7 @@ images:
|
|||||||
# upstreamMirrorStartFrom: ["8", "6", "0"]
|
# upstreamMirrorStartFrom: ["8", "6", "0"]
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/core-guidedtours"
|
repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/core-guidedtours"
|
||||||
tag: "8.6.3@sha256:6fb8169cba4beb4bd9039f4ce7ab9b29fc02c4991b283824db949fe2b7be34e2"
|
tag: "8.6.5@sha256:cbdea676267011d5c9ef7764fcd23ef432219b61c4f3949ef11ddfc4920873dd"
|
||||||
openxchangeCoreMW:
|
openxchangeCoreMW:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
# providerResponsible: "Open-Xchange"
|
# providerResponsible: "Open-Xchange"
|
||||||
@@ -307,7 +683,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.23.47@sha256:b721bf41d7f06b328e9235a0561436cb678bc2a1a67202f0fa6e1f55956cc0cc"
|
tag: "8.26.38@sha256:ff2dcf50a9d9a801357255f7244173fe9835715fd1852a28e3a8ebb7c0634293"
|
||||||
openxchangeCoreUI:
|
openxchangeCoreUI:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
# providerResponsible: "Open-Xchange"
|
# providerResponsible: "Open-Xchange"
|
||||||
@@ -317,7 +693,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.23.2@sha256:0cc07053cbb9d7062a17ef807c6a6942a912748243a6f0c63a892d5cb2953351"
|
tag: "8.27.4@sha256:d5b99bfc12baaeb5cbfc332c260ecca5308b6b662fe8acc8cd07479c99a1d148"
|
||||||
openxchangeCoreUIMiddleware:
|
openxchangeCoreUIMiddleware:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
# providerResponsible: "Open-Xchange"
|
# providerResponsible: "Open-Xchange"
|
||||||
@@ -327,7 +703,7 @@ images:
|
|||||||
# upstreamMirrorStartFrom: ["2", "0", "0"]
|
# upstreamMirrorStartFrom: ["2", "0", "0"]
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/core-ui-middleware"
|
repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/core-ui-middleware"
|
||||||
tag: "2.0.3@sha256:56fe8afe841105f0725674e36afc6f10f22751e3c21a301a6322834383f2d786"
|
tag: "2.0.4@sha256:e1d647cca13e7c433a9d643aa1a350197511274b239ead100aa1682ffe2fa116"
|
||||||
openxchangeCoreUserGuide:
|
openxchangeCoreUserGuide:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
# providerResponsible: "Open-Xchange"
|
# providerResponsible: "Open-Xchange"
|
||||||
@@ -337,7 +713,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.23.941932@sha256:231b13cb795241513d2f54ee4bc628843ae737b5ecceab758aba3658f03de1bd"
|
tag: "8.27.1071402@sha256:764108a8dcb28467dadad1cfd98074a8e174209652de2f009d74fea51bb50d65"
|
||||||
openxchangeDocumentConverter:
|
openxchangeDocumentConverter:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
# providerResponsible: "Open-Xchange"
|
# providerResponsible: "Open-Xchange"
|
||||||
@@ -347,7 +723,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.23.43@sha256:aa9bbce833ae018573997fb07dcaf32bb7c5c4c6a7d6331f3d3156fd5b8d53b3"
|
tag: "8.27.54@sha256:79080b4b766901977532a18ef38af70234a99cf0bf53900c4df3902f24702eb7"
|
||||||
openxchangeGotenberg:
|
openxchangeGotenberg:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
# providerResponsible: "Open-Xchange"
|
# providerResponsible: "Open-Xchange"
|
||||||
@@ -367,7 +743,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.23.0@sha256:0510458017fa028582515ce18c0b12f91ac9e23f0e94e99ac34fd49b07146c01"
|
tag: "8.27.0@sha256:89b81de90a6e7078371d8ea02ab4e1056c512ba515db113daf55b160533f7a73"
|
||||||
openxchangeImageConverter:
|
openxchangeImageConverter:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
# providerResponsible: "Open-Xchange"
|
# providerResponsible: "Open-Xchange"
|
||||||
@@ -377,7 +753,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.23.43@sha256:ecc77a569f60e1b14f0d77ec93d891200b89d11eb9d7c26f59fa7696343e20e3"
|
tag: "8.27.55@sha256:f999c8205d83730a064aec13eb98762e1c7354f31f42e0add0136cf15be32dd0"
|
||||||
openxchangeNextcloudIntegrationUI:
|
openxchangeNextcloudIntegrationUI:
|
||||||
# providerCategory: "Supplier"
|
# providerCategory: "Supplier"
|
||||||
# providerResponsible: "Open-Xchange"
|
# providerResponsible: "Open-Xchange"
|
||||||
@@ -479,298 +855,6 @@ images:
|
|||||||
registry: "registry-1.docker.io"
|
registry: "registry-1.docker.io"
|
||||||
repository: "rapidfort/haproxy-official"
|
repository: "rapidfort/haproxy-official"
|
||||||
tag: "2.6.15-bullseye@sha256:47b6ca4074347788cb414fbf3db35d0c51e9e47af33be46457f95c750540887c"
|
tag: "2.6.15-bullseye@sha256:47b6ca4074347788cb414fbf3db35d0c51e9e47af33be46457f95c750540887c"
|
||||||
umsDataLoader:
|
|
||||||
# providerCategory: "Supplier"
|
|
||||||
# providerResponsible: "Univention"
|
|
||||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
|
||||||
# upstreamRepository: "nubus/images/data-loader"
|
|
||||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
|
||||||
# upstreamMirrorStartFrom: ["0", "41", "5"]
|
|
||||||
registry: "registry.opencode.de"
|
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/data-loader"
|
|
||||||
tag: "0.45.2@sha256:6e2e054903f361eea5cd54ae6dd3da94380d4a6a11f2628983e2acdbc66d605e"
|
|
||||||
umsGuardianAuthorizationApi:
|
|
||||||
# providerCategory: "Supplier"
|
|
||||||
# providerResponsible: "Univention"
|
|
||||||
# upstreamRegistry: "https://docker.software-univention.de"
|
|
||||||
# upstreamRepository: "guardian-authorization-api-authorization-api"
|
|
||||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
|
||||||
# upstreamMirrorStartFrom: ["1", "0", "0"]
|
|
||||||
registry: "registry.opencode.de"
|
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/guardian-authorization-api-authorization-api"
|
|
||||||
tag: "2.0.0@sha256:5f194f9385aea5a279e25a57352f7b88a6cc4fa90b3bf04c2c97b9ff2bad70a5"
|
|
||||||
umsGuardianManagementApi:
|
|
||||||
# providerCategory: "Supplier"
|
|
||||||
# providerResponsible: "Univention"
|
|
||||||
# upstreamRegistry: "https://docker.software-univention.de"
|
|
||||||
# upstreamRepository: "guardian-management-api-management-api"
|
|
||||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
|
||||||
# upstreamMirrorStartFrom: ["1", "0", "0"]
|
|
||||||
registry: "registry.opencode.de"
|
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/guardian-management-api-management-api"
|
|
||||||
tag: "2.0.0@sha256:61a1ab84efebe2a87d358e8624f8b39073a6071683e7cd77b740a97d464753a2"
|
|
||||||
umsGuardianManagementUi:
|
|
||||||
# providerCategory: "Supplier"
|
|
||||||
# providerResponsible: "Univention"
|
|
||||||
# upstreamRegistry: "https://docker.software-univention.de"
|
|
||||||
# upstreamRepository: "guardian-management-ui-management-ui"
|
|
||||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
|
||||||
# upstreamMirrorStartFrom: ["1", "0", "0"]
|
|
||||||
registry: "registry.opencode.de"
|
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/guardian-management-ui-management-ui"
|
|
||||||
tag: "2.0.0@sha256:57e2503a4772f0ff656e792a98fadef4d41c248218e6c368f76ce82a892478cf"
|
|
||||||
umsGuardianProvisioning:
|
|
||||||
# providerCategory: "Supplier"
|
|
||||||
# providerResponsible: "Univention"
|
|
||||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
|
||||||
# upstreamRepository: "nubus/images/guardian-init"
|
|
||||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
|
||||||
# upstreamMirrorStartFrom: ["0", "3", "0"]
|
|
||||||
registry: "registry.opencode.de"
|
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/guardian-init"
|
|
||||||
tag: "0.4.0@sha256:390e20ad73a91ae2ecc33d91d1f21872a46e6af4d4d09095d1ce18a6d4a3635e"
|
|
||||||
umsKeycloak:
|
|
||||||
# providerCategory: "Supplier"
|
|
||||||
# providerResponsible: "Univention"
|
|
||||||
# upstreamRegistry: "https://docker.software-univention.de"
|
|
||||||
# upstreamRepository: "keycloak-keycloak"
|
|
||||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+).+$'
|
|
||||||
# upstreamMirrorStartFrom: ["22", "0", "3"]
|
|
||||||
registry: "registry.opencode.de"
|
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/keycloak-keycloak"
|
|
||||||
tag: "24.0.3-ucs1@sha256:cc66a1730abdd5abe88ac5cf045b6558f289bf1ae8d077ee884a42d785742f8b"
|
|
||||||
umsKeycloakBootstrap:
|
|
||||||
# providerCategory: "Supplier"
|
|
||||||
# providerResponsible: "Univention"
|
|
||||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
|
||||||
# upstreamRepository: "nubus/images/keycloak-bootstrap"
|
|
||||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
|
||||||
# upstreamMirrorStartFrom: ["0", "1", "0"]
|
|
||||||
registry: "registry.opencode.de"
|
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/keycloak-bootstrap"
|
|
||||||
tag: "0.1.0@sha256:351097e9e7b469f2fc149fe612ec6ad515d5e6b081d7e2785bd926a1d77209d2"
|
|
||||||
umsKeycloakExtensionHandler:
|
|
||||||
# providerCategory: "Supplier"
|
|
||||||
# providerResponsible: "Univention"
|
|
||||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
|
||||||
# upstreamRepository: "nubus/images/keycloak-handler"
|
|
||||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
|
||||||
# upstreamMirrorStartFrom: ["0", "0", "3"]
|
|
||||||
registry: "registry.opencode.de"
|
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/keycloak-handler"
|
|
||||||
tag: "0.4.0@sha256:7c2728d6fce0fa6e6cc2a3c196294fcb4fcce0dd246b95ad96bd96325776a004"
|
|
||||||
umsKeycloakExtensionProxy:
|
|
||||||
# providerCategory: "Supplier"
|
|
||||||
# providerResponsible: "Univention"
|
|
||||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
|
||||||
# upstreamRepository: "nubus/images/keycloak-proxy"
|
|
||||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
|
||||||
# upstreamMirrorStartFrom: ["0", "0", "3"]
|
|
||||||
registry: "registry.opencode.de"
|
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/keycloak-proxy"
|
|
||||||
tag: "0.4.0@sha256:d7369d8b9cb177fc19b08452266bf7440b683fd0a15c01baeb5c131db20081bf"
|
|
||||||
umsLdapNotifier:
|
|
||||||
# providerCategory: "Supplier"
|
|
||||||
# providerResponsible: "Univention"
|
|
||||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
|
||||||
# upstreamRepository: "nubus/images/ldap-notifier"
|
|
||||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
|
||||||
# upstreamMirrorStartFrom: ["0", "8", "2"]
|
|
||||||
registry: "registry.opencode.de"
|
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/ldap-notifier"
|
|
||||||
tag: "0.10.3@sha256:beb4577e7fdf1e18d3769e62296f210c0651460346dc2325e6cc29f4c671fa71"
|
|
||||||
umsLdapServer:
|
|
||||||
# providerCategory: "Supplier"
|
|
||||||
# providerResponsible: "Univention"
|
|
||||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
|
||||||
# upstreamRepository: "nubus/images/ldap-server"
|
|
||||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
|
||||||
# upstreamMirrorStartFrom: ["0", "8", "2"]
|
|
||||||
registry: "registry.opencode.de"
|
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/ldap-server"
|
|
||||||
tag: "0.10.3@sha256:7742eca27bf1134cf92e6e3571bc2784e2f21a76664fdcab6ae213051db26c05"
|
|
||||||
umsNats:
|
|
||||||
# providerCategory: 'Community'
|
|
||||||
# providerResponsible: 'Univention'
|
|
||||||
# upstreamRegistry: 'registry-1.docker.io'
|
|
||||||
# upstreamRepository: 'library/nats'
|
|
||||||
registry: "registry-1.docker.io"
|
|
||||||
repository: "library/nats"
|
|
||||||
tag: "2.10.10@sha256:fa26beda8a3187ccefa47afcfe9ea6d0e2f40a57c8f64d70bd63c792d7973938"
|
|
||||||
umsNatsBox:
|
|
||||||
# providerCategory: 'Community'
|
|
||||||
# providerResponsible: 'Univention'
|
|
||||||
# upstreamRegistry: 'registry-1.docker.io'
|
|
||||||
# upstreamRepository: 'natsio/nats-box'
|
|
||||||
registry: "registry-1.docker.io"
|
|
||||||
repository: "natsio/nats-box"
|
|
||||||
tag: "0.14.2@sha256:c9b8ebaabb2ca4c227feb4f6b856dc72d4775ac3d71f80d2c65aa82303079011"
|
|
||||||
umsNatsReloader:
|
|
||||||
# providerCategory: 'Community'
|
|
||||||
# providerResponsible: 'Univention'
|
|
||||||
# upstreamRegistry: 'registry-1.docker.io'
|
|
||||||
# upstreamRepository: 'natsio/nats-server-config-reloader'
|
|
||||||
registry: "registry-1.docker.io"
|
|
||||||
repository: "natsio/nats-server-config-reloader"
|
|
||||||
tag: "0.14.1@sha256:77dd4c60001ffbf442c6b25592e73b4fca06ea9406c677607192788d80453783"
|
|
||||||
umsNotificationsApi:
|
|
||||||
# providerCategory: "Supplier"
|
|
||||||
# providerResponsible: "Univention"
|
|
||||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
|
||||||
# upstreamRepository: "nubus/images/notifications-api"
|
|
||||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
|
||||||
# upstreamMirrorStartFrom: ["0", "9", "4"]
|
|
||||||
registry: "registry.opencode.de"
|
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/notifications-api"
|
|
||||||
tag: "0.20.3@sha256:1e32854d6d4413725870fde26a904da83282b3debea82b386c5753223ecc6a59"
|
|
||||||
umsOpenPolicyAgent:
|
|
||||||
# providerCategory: "Supplier"
|
|
||||||
# providerResponsible: "Univention"
|
|
||||||
# upstreamRegistry: "https://docker.software-univention.de"
|
|
||||||
# upstreamRepository: "guardian-authorization-api-opa"
|
|
||||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
|
||||||
# upstreamMirrorStartFrom: ["1", "0", "0"]
|
|
||||||
registry: "registry.opencode.de"
|
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/guardian-authorization-api-opa"
|
|
||||||
tag: "2.0.0@sha256:56a92a08da5addb951a2b2df09974889295ddde8526e93ad40dd973de1052ad4"
|
|
||||||
umsPortalFrontend:
|
|
||||||
# providerCategory: "Supplier"
|
|
||||||
# providerResponsible: "Univention"
|
|
||||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
|
||||||
# upstreamRepository: "nubus/images/portal-frontend"
|
|
||||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
|
||||||
# upstreamMirrorStartFrom: ["0", "9", "4"]
|
|
||||||
registry: "registry.opencode.de"
|
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/portal-frontend"
|
|
||||||
tag: "0.20.3@sha256:4fe6646711efcc07eb4b6e59a57f1d5080cca5f4ec2c960d073e92ecae8be42f"
|
|
||||||
umsPortalListener:
|
|
||||||
# providerCategory: "Supplier"
|
|
||||||
# providerResponsible: "Univention"
|
|
||||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
|
||||||
# upstreamRepository: "nubus/images/portal-listener"
|
|
||||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
|
||||||
# upstreamMirrorStartFrom: ["0", "9", "4"]
|
|
||||||
registry: "registry.opencode.de"
|
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/portal-listener"
|
|
||||||
tag: "0.20.7@sha256:8f158b88e0ceb7a5c79d2ad390f6ce851ce0c5ccb675d08d6b6c37f0b21f6177"
|
|
||||||
umsPortalServer:
|
|
||||||
# providerCategory: "Supplier"
|
|
||||||
# providerResponsible: "Univention"
|
|
||||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
|
||||||
# upstreamRepository: "nubus/images/portal-server"
|
|
||||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
|
||||||
# upstreamMirrorStartFrom: ["0", "9", "4"]
|
|
||||||
registry: "registry.opencode.de"
|
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/portal-server"
|
|
||||||
tag: "0.20.3@sha256:0ec3db74ce9b7c8706d1534b6dcb464eb016a5de94c3b5bfc49215ccb606715c"
|
|
||||||
umsProvisioningDispatcher:
|
|
||||||
# providerCategory: "Supplier"
|
|
||||||
# providerResponsible: "Univention"
|
|
||||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
|
||||||
# upstreamRepository: "nubus/images/provisioning-dispatcher"
|
|
||||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
|
||||||
# upstreamMirrorStartFrom: ["0", "14", "0"]
|
|
||||||
registry: "registry.opencode.de"
|
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-dispatcher"
|
|
||||||
tag: "0.21.3@sha256:29c5f216ab0f8d12c1e77969de6e82046c0d47e1111838fb0a2dcd9950c0175d"
|
|
||||||
umsProvisioningEventsAndConsumerApi:
|
|
||||||
# providerCategory: "Supplier"
|
|
||||||
# providerResponsible: "Univention"
|
|
||||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
|
||||||
# upstreamRepository: "nubus/images/provisioning-events-and-consumer-api"
|
|
||||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
|
||||||
# upstreamMirrorStartFrom: ["0", "14", "0"]
|
|
||||||
registry: "registry.opencode.de"
|
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-events-and-consumer-api"
|
|
||||||
tag: "0.21.3@sha256:4cb498a64dd40c0963ca1ca382213ad5b8a4de5eb57650946d78ac44b359f43f"
|
|
||||||
umsProvisioningPrefill:
|
|
||||||
# providerCategory: "Supplier"
|
|
||||||
# providerResponsible: "Univention"
|
|
||||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
|
||||||
# upstreamRepository: "nubus/images/provisioning-prefill"
|
|
||||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
|
||||||
# upstreamMirrorStartFrom: ["0", "14", "0"]
|
|
||||||
registry: "registry.opencode.de"
|
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-prefill"
|
|
||||||
tag: "0.21.3@sha256:944ff8558d12c59f3490cba68680281c3fa5468fd6fd011fd002befcb9956973"
|
|
||||||
umsProvisioningUdmListener:
|
|
||||||
# providerCategory: "Supplier"
|
|
||||||
# providerResponsible: "Univention"
|
|
||||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
|
||||||
# upstreamRepository: "nubus/images/provisioning-udm-listener"
|
|
||||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
|
||||||
# upstreamMirrorStartFrom: ["0", "14", "0"]
|
|
||||||
registry: "registry.opencode.de"
|
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-udm-listener"
|
|
||||||
tag: "0.21.3@sha256:e1cd42558e44bb72ed5c7798cef711db94df7d10d6895c993ca6412df1d25f02"
|
|
||||||
umsSelfserviceInvitation:
|
|
||||||
# providerCategory: "Supplier"
|
|
||||||
# providerResponsible: "Univention"
|
|
||||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
|
||||||
# upstreamRepository: "nubus/images/selfservice-invitation"
|
|
||||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
|
||||||
# upstreamMirrorStartFrom: ["0", "3", "2"]
|
|
||||||
registry: "registry.opencode.de"
|
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/selfservice-invitation"
|
|
||||||
tag: "0.4.0@sha256:bd252758576e1733076c78756f04225ebed73d9c48de22440975ef11dd087caf"
|
|
||||||
umsSelfserviceListener:
|
|
||||||
# providerCategory: "Supplier"
|
|
||||||
# providerResponsible: "Univention"
|
|
||||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
|
||||||
# upstreamRepository: "nubus/images/selfservice-listener"
|
|
||||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
|
||||||
# upstreamMirrorStartFrom: ["0", "3", "2"]
|
|
||||||
registry: "registry.opencode.de"
|
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/selfservice-listener"
|
|
||||||
tag: "0.4.0@sha256:0bc0235fd64a19a183f112da73109b54712c2d70fe7fa77c6405beefb7167588"
|
|
||||||
umsStackGateway:
|
|
||||||
# providerCategory: "Community"
|
|
||||||
# providerResponsible: "Univention"
|
|
||||||
# upstreamRegistry: "https://registry-1.docker.io"
|
|
||||||
# upstreamRepository: "bitnami/nginx"
|
|
||||||
registry: "registry-1.docker.io"
|
|
||||||
repository: "bitnami/nginx"
|
|
||||||
tag: "1.25.4@sha256:dd352b597f4c38ae24abec411710f4249fb5c793293c7ed04737db6b41d32d24"
|
|
||||||
umsUdmRestApi:
|
|
||||||
# providerCategory: "Supplier"
|
|
||||||
# providerResponsible: "Univention"
|
|
||||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
|
||||||
# upstreamRepository: "nubus/images/udm-rest-api"
|
|
||||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
|
||||||
# upstreamMirrorStartFrom: ["0", "9", "3"]
|
|
||||||
registry: "registry.opencode.de"
|
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/udm-rest-api"
|
|
||||||
tag: "0.9.3@sha256:7cf2fec05a4ff8b7085a35a215edbce1eb9456c1ae140af46257e66d5a6cd6f7"
|
|
||||||
umsUmcGateway:
|
|
||||||
# providerCategory: "Supplier"
|
|
||||||
# providerResponsible: "Univention"
|
|
||||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
|
||||||
# upstreamRepository: "nubus/images/umc-gateway"
|
|
||||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
|
||||||
# upstreamMirrorStartFrom: ["0", "7", "3"]
|
|
||||||
registry: "registry.opencode.de"
|
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/umc-gateway"
|
|
||||||
tag: "0.11.6@sha256:5d7c1a9b74409d2d7c42e08ca87b41cda506e43cad49efbc85a4ed6b8e9c6bc8"
|
|
||||||
umsUmcServer:
|
|
||||||
# providerCategory: "Supplier"
|
|
||||||
# providerResponsible: "Univention"
|
|
||||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
|
||||||
# upstreamRepository: "nubus/images/umc-server"
|
|
||||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
|
||||||
# upstreamMirrorStartFrom: ["0", "7", "3"]
|
|
||||||
registry: "registry.opencode.de"
|
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/umc-server"
|
|
||||||
tag: "0.11.8@sha256:38a87524703a1e11fbb3cd3cc9d90d5b719e92329a0e3ea05c50451105d64ac6"
|
|
||||||
umsWaitForDependency:
|
|
||||||
# providerCategory: "Supplier"
|
|
||||||
# providerResponsible: "Univention"
|
|
||||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
|
||||||
# upstreamRepository: "nubus/images/wait-for-dependency"
|
|
||||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
|
||||||
# upstreamMirrorStartFrom: ["0", "9", "4"]
|
|
||||||
registry: "registry.opencode.de"
|
|
||||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/wait-for-dependency"
|
|
||||||
tag: "0.20.3@sha256:d1ccba5fe7448c2bda71c8a93f265a42a000e8dc79fd884e7e6ecdf29ad80efc"
|
|
||||||
wellKnown:
|
wellKnown:
|
||||||
# providerCategory: "Community"
|
# providerCategory: "Community"
|
||||||
# providerResponsible: "Element"
|
# providerResponsible: "Element"
|
||||||
@@ -788,5 +872,5 @@ images:
|
|||||||
# upstreamMirrorStartFrom: ["0", "12"]
|
# upstreamMirrorStartFrom: ["0", "12"]
|
||||||
registry: "registry.opencode.de"
|
registry: "registry.opencode.de"
|
||||||
repository: "bmi/opendesk/components/supplier/xwiki/images-mirror/xwiki"
|
repository: "bmi/opendesk/components/supplier/xwiki/images-mirror/xwiki"
|
||||||
tag: "0.17-mariadb-jetty-alpine@sha256:9eb67520774c3022aa4485ce348be477f358263b716e647cacd057da3aca9739"
|
tag: "0.19-mariadb-jetty-alpine@sha256:8590ee815bceb7764df681b9239b4606adc5b3750e4eff2d928b62dcd046a623"
|
||||||
...
|
...
|
||||||
|
|||||||
@@ -1,25 +1,25 @@
|
|||||||
# 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
|
||||||
---
|
---
|
||||||
prometheus:
|
monitoring:
|
||||||
serviceMonitors:
|
prometheus:
|
||||||
enabled: false
|
serviceMonitors:
|
||||||
labels:
|
enabled: false
|
||||||
release: "kube-prometheus-stack"
|
labels:
|
||||||
podMonitors:
|
release: "kube-prometheus-stack"
|
||||||
enabled: false
|
podMonitors:
|
||||||
labels:
|
enabled: false
|
||||||
release: "kube-prometheus-stack"
|
labels:
|
||||||
prometheusRules:
|
release: "kube-prometheus-stack"
|
||||||
enabled: false
|
prometheusRules:
|
||||||
labels:
|
enabled: false
|
||||||
release: "kube-prometheus-stack"
|
labels:
|
||||||
|
release: "kube-prometheus-stack"
|
||||||
|
|
||||||
|
grafana:
|
||||||
grafana:
|
dashboards:
|
||||||
dashboards:
|
enabled: false
|
||||||
enabled: false
|
labels:
|
||||||
labels:
|
grafana_dashboard: "1"
|
||||||
grafana_dashboard: "1"
|
annotations:
|
||||||
annotations:
|
|
||||||
...
|
...
|
||||||
|
|||||||
@@ -1,9 +1,18 @@
|
|||||||
{{/*
|
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||||
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
SPDX-License-Identifier: Apache-2.0
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
*/}}
|
|
||||||
---
|
---
|
||||||
objectstores:
|
objectstores:
|
||||||
|
migrations:
|
||||||
|
bucket: "migrations"
|
||||||
|
endpoint: ""
|
||||||
|
region: "eu-west-1"
|
||||||
|
secretKey: ""
|
||||||
|
username: "migration_user"
|
||||||
|
storageClass: "STANDARD"
|
||||||
|
useSSL: true
|
||||||
|
pathStyle: true
|
||||||
|
port: 443
|
||||||
nextcloud:
|
nextcloud:
|
||||||
bucket: "nextcloud"
|
bucket: "nextcloud"
|
||||||
endpoint: ""
|
endpoint: ""
|
||||||
@@ -24,7 +33,7 @@ objectstores:
|
|||||||
username: "openproject_user"
|
username: "openproject_user"
|
||||||
pathStyle: true
|
pathStyle: true
|
||||||
useIamProfile: false
|
useIamProfile: false
|
||||||
univentionManagementStack:
|
nubus:
|
||||||
bucket: "ums"
|
bucket: "ums"
|
||||||
endpoint: ""
|
endpoint: ""
|
||||||
region: "eu-west-1"
|
region: "eu-west-1"
|
||||||
@@ -1,49 +1,76 @@
|
|||||||
# 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-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
|
||||||
|
#
|
||||||
|
# Note: Currently only single namespace deployments are supported.
|
||||||
---
|
---
|
||||||
certificates:
|
certificates:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
namespace: ~
|
||||||
clamavDistributed:
|
clamavDistributed:
|
||||||
enabled: false
|
enabled: false
|
||||||
|
namespace: ~
|
||||||
clamavSimple:
|
clamavSimple:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
namespace: ~
|
||||||
collabora:
|
collabora:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
namespace: ~
|
||||||
cryptpad:
|
cryptpad:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
namespace: ~
|
||||||
dovecot:
|
dovecot:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
namespace: ~
|
||||||
element:
|
element:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
namespace: ~
|
||||||
home:
|
home:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
namespace: ~
|
||||||
intercom:
|
intercom:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
namespace: ~
|
||||||
jitsi:
|
jitsi:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
namespace: ~
|
||||||
mariadb:
|
mariadb:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
namespace: ~
|
||||||
memcached:
|
memcached:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
namespace: ~
|
||||||
|
migrations:
|
||||||
|
enabled: true
|
||||||
|
namespace: ~
|
||||||
minio:
|
minio:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
namespace: ~
|
||||||
nextcloud:
|
nextcloud:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
namespace: ~
|
||||||
|
nubus:
|
||||||
|
enabled: true
|
||||||
|
namespace: ~
|
||||||
openproject:
|
openproject:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
namespace: ~
|
||||||
oxAppsuite:
|
oxAppsuite:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
namespace: ~
|
||||||
oxConnector:
|
oxConnector:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
namespace: ~
|
||||||
postfix:
|
postfix:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
namespace: ~
|
||||||
postgresql:
|
postgresql:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
namespace: ~
|
||||||
redis:
|
redis:
|
||||||
enabled: true
|
enabled: true
|
||||||
univentionManagementStack:
|
namespace: ~
|
||||||
enabled: true
|
|
||||||
xwiki:
|
xwiki:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
namespace: ~
|
||||||
...
|
...
|
||||||
@@ -16,7 +16,7 @@ persistence:
|
|||||||
prosody: "1Gi"
|
prosody: "1Gi"
|
||||||
redis: "1Gi"
|
redis: "1Gi"
|
||||||
synapse: "1Gi"
|
synapse: "1Gi"
|
||||||
univentionManagementStack:
|
nubus:
|
||||||
ldapServerData: "1Gi"
|
ldapServerData: "1Gi"
|
||||||
ldapServerShared: "1Gi"
|
ldapServerShared: "1Gi"
|
||||||
portalListener: "1Gi"
|
portalListener: "1Gi"
|
||||||
|
|||||||
@@ -1,62 +1,138 @@
|
|||||||
# 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
|
||||||
---
|
---
|
||||||
# Before increasing the replicas of components, please consult the scaling documentation at "docs/scaling.md" to ensure
|
# This file contains annotations to (later) generate parts of "docs/scaling.md".
|
||||||
# that scaling of the respective component is possible and has the desired effect.
|
# When adding new components in here, do not forget to add them as well to
|
||||||
|
# `../test/values.yaml.gotmpl` to ensure their linting coverage.
|
||||||
replicas:
|
replicas:
|
||||||
# clamav-simple
|
# -- component: Antivirus (ClamAV)
|
||||||
|
# -- scalable: true
|
||||||
|
# -- comment: clamav-simple - supports `ReadWriteOnce` PVCs.
|
||||||
clamav: 1
|
clamav: 1
|
||||||
# clamav-distributed
|
# -- scalable: true
|
||||||
|
# -- comment: clamav-distributed - requires `ReadWriteMany` PVCs.
|
||||||
clamd: 1
|
clamd: 1
|
||||||
collabora: 1
|
# -- scalable: true
|
||||||
cryptpad: 1
|
# -- comment: clamav-distributed - You do not want to scale this service, as it just updates the signature files centrally an should be a singleton.
|
||||||
dovecot: 1
|
|
||||||
element: 1
|
|
||||||
# clamav-distributed
|
|
||||||
freshclam: 1
|
freshclam: 1
|
||||||
# clamav-distributed
|
# -- scalable: true
|
||||||
|
# -- comment: clamav-distributed - requires `ReadWriteMany` PVCs.
|
||||||
icap: 1
|
icap: 1
|
||||||
intercomService: 1
|
# -- scalable: true
|
||||||
jibri: 1
|
# -- comment: clamav-distributed - requires `ReadWriteMany` PVCs.
|
||||||
jicofo: 1
|
|
||||||
jitsi: 1
|
|
||||||
jitsiKeycloakAdapter: 1
|
|
||||||
jvb: 1
|
|
||||||
keycloak: 1
|
|
||||||
mariadb: 1
|
|
||||||
matrixNeoBoardWidget: 1
|
|
||||||
matrixNeoChoiceWidget: 1
|
|
||||||
matrixNeoDateFixBot: 1
|
|
||||||
matrixNeoDateFixWidget: 1
|
|
||||||
matrixUserVerificationService: 1
|
|
||||||
memcached: 1
|
|
||||||
# clamav-distributed
|
|
||||||
milter: 1
|
milter: 1
|
||||||
minio: 1
|
|
||||||
nextcloudApache2: 1
|
# -- component: Weboffice (Collabora)
|
||||||
nextcloudExporter: 1
|
# -- scalable: true
|
||||||
nextcloudPHP: 1
|
collabora: 1
|
||||||
openprojectWeb: 1
|
|
||||||
openprojectWorker: 1
|
# -- component: Pad (CryptPad)
|
||||||
oxConnector: 1
|
# -- scalable: false
|
||||||
|
cryptpad: 1
|
||||||
|
|
||||||
|
# -- component: Groupware (OX AppSuite, OX Dovecot etc.)
|
||||||
|
# -- scalable: false
|
||||||
|
# -- comment: Scalable in openDesk Enterprise only
|
||||||
|
dovecot: 1
|
||||||
|
# -- scalable: false
|
||||||
postfix: 1
|
postfix: 1
|
||||||
postgres: 1
|
|
||||||
redis: 1
|
# -- component: Chat (Element, Synapse)
|
||||||
|
# -- scalable: true
|
||||||
|
element: 1
|
||||||
|
# -- scalable: tbd
|
||||||
|
matrixNeoBoardWidget: 1
|
||||||
|
# -- scalable: tbd
|
||||||
|
matrixNeoChoiceWidget: 1
|
||||||
|
# -- scalable: tbd
|
||||||
|
matrixNeoDateFixBot: 1
|
||||||
|
# -- scalable: tbd
|
||||||
|
matrixNeoDateFixWidget: 1
|
||||||
|
# -- scalable: tbd
|
||||||
|
matrixUserVerificationService: 1
|
||||||
|
# -- scalable: tbd
|
||||||
synapse: 1
|
synapse: 1
|
||||||
|
# -- scalable: true
|
||||||
synapseWeb: 1
|
synapseWeb: 1
|
||||||
umsKeycloakExtensionsHandler: 1
|
# -- scalable: true
|
||||||
umsKeycloakExtensionsProxy: 1
|
|
||||||
umsLdapNotifier: 1
|
|
||||||
umsLdapServer: 1
|
|
||||||
umsNotificationsApi: 1
|
|
||||||
umsPortalFrontend: 1
|
|
||||||
umsPortalListener: 1
|
|
||||||
umsPortalServer: 1
|
|
||||||
umsSelfserviceListener: 1
|
|
||||||
umsStackGateway: 1
|
|
||||||
umsUdmRestApi: 1
|
|
||||||
umsUmcGateway: 1
|
|
||||||
umsUmcServer: 1
|
|
||||||
wellKnown: 1
|
wellKnown: 1
|
||||||
|
|
||||||
|
# -- component: IAM (Nubus)
|
||||||
|
# -- scalable: true
|
||||||
|
intercomService: 1
|
||||||
|
# -- scalable: true
|
||||||
|
keycloak: 1
|
||||||
|
# -- scalable: false
|
||||||
|
# -- comment: Will be removed soon.
|
||||||
|
oxConnector: 1
|
||||||
|
# -- scalable: false
|
||||||
|
# -- comment: Should not be scaled, is an async process.
|
||||||
|
umsKeycloakExtensionsHandler: 1
|
||||||
|
# -- scalable: true
|
||||||
|
umsKeycloakExtensionsProxy: 1
|
||||||
|
# -- scalable: tbd
|
||||||
|
umsLdapNotifier: 1
|
||||||
|
# -- scalable: tbd
|
||||||
|
umsLdapServer: 1
|
||||||
|
# -- scalable: tbd
|
||||||
|
umsNotificationsApi: 1
|
||||||
|
# -- scalable: true
|
||||||
|
umsPortalFrontend: 1
|
||||||
|
# -- scalable: tbd
|
||||||
|
umsPortalListener: 1
|
||||||
|
# -- scalable: true
|
||||||
|
umsPortalServer: 1
|
||||||
|
# -- scalable: tbd
|
||||||
|
umsSelfserviceListener: 1
|
||||||
|
# -- scalable: tbd
|
||||||
|
umsStackGateway: 1
|
||||||
|
# -- scalable: true
|
||||||
|
umsUdmRestApi: 1
|
||||||
|
# -- scalable: tbd
|
||||||
|
umsUmcGateway: 1
|
||||||
|
# -- scalable: tbd
|
||||||
|
umsUmcServer: 1
|
||||||
|
|
||||||
|
# -- component: Video conference (Jitsi)
|
||||||
|
# -- scalable: tbd
|
||||||
|
jibri: 1
|
||||||
|
# -- scalable: tbd
|
||||||
|
jicofo: 1
|
||||||
|
# -- scalable: tbd
|
||||||
|
jitsi: 1
|
||||||
|
# -- scalable: tbd
|
||||||
|
jitsiKeycloakAdapter: 1
|
||||||
|
# -- scalable: tbd
|
||||||
|
jvb: 1
|
||||||
|
|
||||||
|
# -- component: Persistence Layer
|
||||||
|
# -- scalable: false
|
||||||
|
mariadb: 1
|
||||||
|
# -- scalable: false
|
||||||
|
memcached: 1
|
||||||
|
# -- scalable: true
|
||||||
|
minio: 1
|
||||||
|
# -- scalable: false
|
||||||
|
postgres: 1
|
||||||
|
# -- scalable: tbd
|
||||||
|
redis: 1
|
||||||
|
|
||||||
|
# -- component: Filestore (Nextcloud)
|
||||||
|
# -- scalable: true
|
||||||
|
nextcloudApache2: 1
|
||||||
|
# -- scalable: true
|
||||||
|
nextcloudExporter: 1
|
||||||
|
# -- scalable: true
|
||||||
|
nextcloudPHP: 1
|
||||||
|
|
||||||
|
# -- component: Project management (OpenProject)
|
||||||
|
# -- scalable: true
|
||||||
|
openprojectWeb: 1
|
||||||
|
# -- scalable: tdb
|
||||||
|
# -- comment: Async process that usually has no need for scaling
|
||||||
|
openprojectWorker: 1
|
||||||
|
|
||||||
|
# -- component: Knowledge management (XWiki)
|
||||||
|
# -- scalable: false
|
||||||
xwiki: 1
|
xwiki: 1
|
||||||
...
|
...
|
||||||
|
|||||||
@@ -69,10 +69,11 @@ resources:
|
|||||||
requests:
|
requests:
|
||||||
cpu: 0.1
|
cpu: 0.1
|
||||||
memory: "384Mi"
|
memory: "384Mi"
|
||||||
|
# The jifico and jvb containers require 3GB memory for the Java process, so we limit it to 3.5Gi overall consumption.
|
||||||
jicofo:
|
jicofo:
|
||||||
limits:
|
limits:
|
||||||
cpu: 99
|
cpu: 99
|
||||||
memory: "512Mi"
|
memory: "3584Mi"
|
||||||
requests:
|
requests:
|
||||||
cpu: 0.1
|
cpu: 0.1
|
||||||
memory: "256Mi"
|
memory: "256Mi"
|
||||||
@@ -90,10 +91,11 @@ resources:
|
|||||||
requests:
|
requests:
|
||||||
cpu: "10m"
|
cpu: "10m"
|
||||||
memory: "48Mi"
|
memory: "48Mi"
|
||||||
|
# The jifico and jvb containers require 3GB memory for the Java process, so we limit it to 3.5Gi overall consumption.
|
||||||
jvb:
|
jvb:
|
||||||
limits:
|
limits:
|
||||||
cpu: 99
|
cpu: 99
|
||||||
memory: "768Mi"
|
memory: "3584Mi"
|
||||||
requests:
|
requests:
|
||||||
cpu: 0.1
|
cpu: 0.1
|
||||||
memory: "384Mi"
|
memory: "384Mi"
|
||||||
@@ -216,6 +218,49 @@ resources:
|
|||||||
requests:
|
requests:
|
||||||
cpu: 0.1
|
cpu: 0.1
|
||||||
memory: "512Mi"
|
memory: "512Mi"
|
||||||
|
nubusProvisioning:
|
||||||
|
nats:
|
||||||
|
limits:
|
||||||
|
cpu: 288
|
||||||
|
memory: "1Gi"
|
||||||
|
requests:
|
||||||
|
cpu: 0.1
|
||||||
|
memory: "128Mi"
|
||||||
|
dispatcher:
|
||||||
|
limits:
|
||||||
|
cpu: 1
|
||||||
|
memory: "1Gi"
|
||||||
|
requests:
|
||||||
|
cpu: 0.1
|
||||||
|
memory: "64Mi"
|
||||||
|
registerConsumers:
|
||||||
|
limits:
|
||||||
|
cpu: 1
|
||||||
|
memory: "1Gi"
|
||||||
|
requests:
|
||||||
|
cpu: 0.1
|
||||||
|
memory: "64Mi"
|
||||||
|
udmTransformer:
|
||||||
|
limits:
|
||||||
|
cpu: 1
|
||||||
|
memory: "1Gi"
|
||||||
|
requests:
|
||||||
|
cpu: 0.1
|
||||||
|
memory: "64Mi"
|
||||||
|
prefill:
|
||||||
|
limits:
|
||||||
|
cpu: 1
|
||||||
|
memory: "1Gi"
|
||||||
|
requests:
|
||||||
|
cpu: 0.1
|
||||||
|
memory: "64Mi"
|
||||||
|
api:
|
||||||
|
limits:
|
||||||
|
cpu: 1
|
||||||
|
memory: "1Gi"
|
||||||
|
requests:
|
||||||
|
cpu: 0.1
|
||||||
|
memory: "100Mi"
|
||||||
openproject:
|
openproject:
|
||||||
limits:
|
limits:
|
||||||
cpu: 99
|
cpu: 99
|
||||||
|
|||||||
@@ -18,7 +18,8 @@ secrets:
|
|||||||
cookieHashSalt: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "ox_appsuite" "cookie_hash_salt" | sha1sum | quote }}
|
cookieHashSalt: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "ox_appsuite" "cookie_hash_salt" | sha1sum | quote }}
|
||||||
shareCryptKey: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "ox_appsuite" "share_crypt_key" | sha1sum | quote }}
|
shareCryptKey: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "ox_appsuite" "share_crypt_key" | sha1sum | quote }}
|
||||||
sessiondEncryptionKey: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "ox_appsuite" "sessiond_encryption_key" | sha1sum | quote }}
|
sessiondEncryptionKey: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "ox_appsuite" "sessiond_encryption_key" | sha1sum | quote }}
|
||||||
univentionManagementStack:
|
synapseAsToken: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "ox_appsuite" "as_token" | sha1sum | quote }}
|
||||||
|
nubus:
|
||||||
ldapSecret: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "cn=admin" "ldap" | sha1sum | quote }}
|
ldapSecret: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "cn=admin" "ldap" | sha1sum | quote }}
|
||||||
ldapSearch:
|
ldapSearch:
|
||||||
keycloak: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "nubus" "ldapsearch_keycloak" | sha1sum | quote }}
|
keycloak: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "nubus" "ldapsearch_keycloak" | sha1sum | quote }}
|
||||||
@@ -68,10 +69,10 @@ secrets:
|
|||||||
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:
|
||||||
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) }}
|
||||||
openprojectUser: {{ (derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "minio" "openproject_user" | sha1sum | quote) }}
|
migrationsUser: {{ (derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "minio" "migrations_user" | sha1sum | quote) }}
|
||||||
openxchangeUser: {{ (derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "minio" "openxchange_user" | sha1sum | quote) }}
|
|
||||||
umsUser: {{ (derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "minio" "ums_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) }}
|
||||||
|
openprojectUser: {{ (derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "minio" "openproject_user" | sha1sum | quote) }}
|
||||||
|
umsUser: {{ (derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "minio" "ums_user" | sha1sum | quote) }}
|
||||||
keycloak:
|
keycloak:
|
||||||
adminPassword: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "keycloak" "adminPassword" | sha1sum | quote }}
|
adminPassword: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "keycloak" "adminPassword" | sha1sum | quote }}
|
||||||
clientSecret:
|
clientSecret:
|
||||||
|
|||||||
@@ -30,6 +30,7 @@ seLinuxOptions:
|
|||||||
matrixNeoDateFixWidget: ~
|
matrixNeoDateFixWidget: ~
|
||||||
matrixUserVerificationService: ~
|
matrixUserVerificationService: ~
|
||||||
memcached: ~
|
memcached: ~
|
||||||
|
migrations: ~
|
||||||
milter: ~
|
milter: ~
|
||||||
minio: ~
|
minio: ~
|
||||||
nextcloudApache2: ~
|
nextcloudApache2: ~
|
||||||
|
|||||||
@@ -8,6 +8,5 @@ smtp:
|
|||||||
port: 587
|
port: 587
|
||||||
username: ""
|
username: ""
|
||||||
password: {{ env "SMTP_PASSWORD" | quote }}
|
password: {{ env "SMTP_PASSWORD" | quote }}
|
||||||
|
localpartNoReply: "no-reply"
|
||||||
localpartNoReply: "no-reply"
|
|
||||||
...
|
...
|
||||||
|
|||||||
53
helmfile/environments/default/theme.gotmpl
Normal file
53
helmfile/environments/default/theme.gotmpl
Normal file
@@ -0,0 +1,53 @@
|
|||||||
|
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
---
|
||||||
|
## The theme properties will be used to set the installations color an images.
|
||||||
|
## This is currently not supported by most of the components, but we still
|
||||||
|
## want to collect and provide the related information based on the attributes
|
||||||
|
## defined in this file.
|
||||||
|
#
|
||||||
|
theme:
|
||||||
|
## Define texts
|
||||||
|
#
|
||||||
|
texts:
|
||||||
|
productName: "openDesk"
|
||||||
|
|
||||||
|
## Define colors
|
||||||
|
#
|
||||||
|
colors:
|
||||||
|
# Element, OX AppSuite, Xwiki
|
||||||
|
primary: "#5e27dd"
|
||||||
|
# OX AppSuite
|
||||||
|
primary15: "#e7dffa"
|
||||||
|
# OX AppSuite
|
||||||
|
black: "#000000"
|
||||||
|
# OX AppSuite, Xwiki
|
||||||
|
white: "#ffffff"
|
||||||
|
# OX AppSuite, Xwiki
|
||||||
|
secondaryGreyLight: "#f5f5f5"
|
||||||
|
|
||||||
|
# Not in use yet
|
||||||
|
primary65: "#9673e9"
|
||||||
|
primary35: "#c7b3f3"
|
||||||
|
secondaryBlue: "#52c1ff"
|
||||||
|
secondaryBlueHighcontrast: "#0c3ff3"
|
||||||
|
secondaryRed: "#ff529e"
|
||||||
|
secondaryYellow: "#ffc700"
|
||||||
|
secondaryGreen: "#00ffcd"
|
||||||
|
secondaryGrey: "#adb3bc"
|
||||||
|
|
||||||
|
## Define imagery
|
||||||
|
#
|
||||||
|
imagery:
|
||||||
|
# Xwiki
|
||||||
|
faviconSvgB64: {{ readFile "./../../files/theme/favicon.svg" | b64enc | quote }}
|
||||||
|
faviconIcoB64: {{ readFile "./../../files/theme/favicon.ico" | b64enc | quote }}
|
||||||
|
favicon16PngB64: {{ readFile "./../../files/theme/favicon16.png" | b64enc | quote }}
|
||||||
|
favicon144PngB64: {{ readFile "./../../files/theme/favicon144.png" | b64enc | quote }}
|
||||||
|
logoHeaderSvgB64: {{ readFile "./../../files/theme/logoHeader.svg" | b64enc | quote }}
|
||||||
|
|
||||||
|
# Portal
|
||||||
|
logoPortalBackgroundSvgB64: {{ readFile "./../../files/theme/logoPortalBackground.svg" | b64enc | quote }}
|
||||||
|
portalCss: {{ readFile "./../../files/theme/portal.css" | b64enc }}
|
||||||
|
|
||||||
|
...
|
||||||
File diff suppressed because one or more lines are too long
@@ -18,16 +18,16 @@ persistence:
|
|||||||
mariadb: "42Gi"
|
mariadb: "42Gi"
|
||||||
matrixNeoDateFixBot: "42Gi"
|
matrixNeoDateFixBot: "42Gi"
|
||||||
minio: "42Gi"
|
minio: "42Gi"
|
||||||
|
nubus:
|
||||||
|
ldapServerData: "42Gi"
|
||||||
|
ldapServerShared: "42Gi"
|
||||||
|
portalListener: "42Gi"
|
||||||
|
selfserviceListener: "42Gi"
|
||||||
postfix: "42Gi"
|
postfix: "42Gi"
|
||||||
postgresql: "42Gi"
|
postgresql: "42Gi"
|
||||||
prosody: "42Gi"
|
prosody: "42Gi"
|
||||||
redis: "42Gi"
|
redis: "42Gi"
|
||||||
synapse: "42Gi"
|
synapse: "42Gi"
|
||||||
univentionManagementStack:
|
|
||||||
ldapServerData: "42Gi"
|
|
||||||
ldapServerShared: "42Gi"
|
|
||||||
portalListener: "42Gi"
|
|
||||||
selfserviceListener: "42Gi"
|
|
||||||
xwiki: "42Gi"
|
xwiki: "42Gi"
|
||||||
ingress:
|
ingress:
|
||||||
ingressClassName: "kyverno"
|
ingressClassName: "kyverno"
|
||||||
@@ -35,17 +35,13 @@ ingress:
|
|||||||
enabled: true
|
enabled: true
|
||||||
secretName: "kyverno-tls"
|
secretName: "kyverno-tls"
|
||||||
replicas:
|
replicas:
|
||||||
# clamav-simple
|
|
||||||
clamav: 42
|
clamav: 42
|
||||||
# clamav-distributed
|
|
||||||
clamd: 42
|
clamd: 42
|
||||||
collabora: 42
|
collabora: 42
|
||||||
cryptpad: 42
|
cryptpad: 42
|
||||||
dovecot: 42
|
dovecot: 42
|
||||||
element: 42
|
element: 42
|
||||||
# clamav-distributed
|
|
||||||
freshclam: 42
|
freshclam: 42
|
||||||
# clamav-distributed
|
|
||||||
icap: 42
|
icap: 42
|
||||||
intercomService: 42
|
intercomService: 42
|
||||||
jibri: 42
|
jibri: 42
|
||||||
@@ -61,7 +57,6 @@ replicas:
|
|||||||
matrixNeoDateFixWidget: 42
|
matrixNeoDateFixWidget: 42
|
||||||
matrixUserVerificationService: 42
|
matrixUserVerificationService: 42
|
||||||
memcached: 42
|
memcached: 42
|
||||||
# clamav-distributed
|
|
||||||
milter: 42
|
milter: 42
|
||||||
minio: 42
|
minio: 42
|
||||||
nextcloudApache2: 42
|
nextcloudApache2: 42
|
||||||
|
|||||||
BIN
helmfile/files/theme/favicon.ico
Normal file
BIN
helmfile/files/theme/favicon.ico
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.1 KiB |
1
helmfile/files/theme/favicon.svg
Normal file
1
helmfile/files/theme/favicon.svg
Normal file
@@ -0,0 +1 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?><svg id="b" width="40" height="40" viewBox="0 0 40 40" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><defs id="defs59" /><circle id="c" cx="20" cy="20" r="20" fill="#5e27dd" /><path d="m 34.23,19.98 c 0,2.12 -0.41,3.76 -1.2,4.92 -0.81,1.15 -1.84,1.92 -3.07,2.33 -1.25,0.41 -2.68,0.6 -4.29,0.6 H 19.9 v -9.45 h 3.58 v 6.31 h 2.19 c 1.15,0 2.06,-0.09 2.72,-0.25 0.65,-0.18 1.2,-0.6 1.62,-1.29 0.42,-0.67 0.64,-1.73 0.64,-3.18 0,-1.45 -0.21,-2.49 -0.65,-3.16 -0.42,-0.69 -0.97,-1.11 -1.62,-1.29 -0.67,-0.18 -1.57,-0.26 -2.7,-0.26 h -2.15 v -3.11 h 2.15 c 1.61,0 3.04,0.19 4.29,0.6 1.24,0.39 2.26,1.16 3.07,2.33 0.79,1.15 1.2,2.79 1.2,4.89 z" fill="#ffffff" id="path52" /><path d="m 16.38,19.31 c -0.44,-0.88 -1.09,-1.59 -1.96,-2.1 -0.86,-0.53 -1.85,-0.79 -3,-0.79 -1.15,0 -2.14,0.26 -3,0.79 -0.87,0.51 -1.52,1.22 -1.98,2.1 -0.44,0.86 -0.67,1.8 -0.67,2.82 0,1.02 0.23,1.94 0.67,2.82 0.46,0.86 1.11,1.57 1.98,2.1 0.86,0.51 1.85,0.78 3,0.78 1.15,0 2.14,-0.26 3,-0.78 0.86,-0.53 1.52,-1.24 1.96,-2.1 0.46,-0.88 0.69,-1.82 0.69,-2.82 0,-1 -0.23,-1.96 -0.69,-2.82 z m -1.02,5.14 c -0.34,0.71 -0.85,1.29 -1.52,1.73 -0.69,0.44 -1.48,0.67 -2.42,0.67 C 10.48,26.85 9.67,26.62 9,26.18 8.33,25.74 7.82,25.16 7.48,24.45 7.14,23.73 6.97,22.97 6.97,22.14 6.97,21.31 7.15,20.53 7.48,19.83 7.82,19.11 8.33,18.54 9,18.1 c 0.67,-0.44 1.48,-0.65 2.42,-0.65 0.94,0 1.73,0.21 2.42,0.65 0.67,0.44 1.18,1.01 1.52,1.73 0.34,0.71 0.51,1.48 0.51,2.31 0,0.83 -0.18,1.59 -0.51,2.31 z" fill="#ffffff" id="path54" /></svg>
|
||||||
|
After Width: | Height: | Size: 1.5 KiB |
BIN
helmfile/files/theme/favicon144.png
Normal file
BIN
helmfile/files/theme/favicon144.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 5.9 KiB |
BIN
helmfile/files/theme/favicon16.png
Normal file
BIN
helmfile/files/theme/favicon16.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 694 B |
1
helmfile/files/theme/logoHeader.svg
Normal file
1
helmfile/files/theme/logoHeader.svg
Normal file
File diff suppressed because one or more lines are too long
|
After Width: | Height: | Size: 6.7 KiB |
1
helmfile/files/theme/logoPortalBackground.svg
Normal file
1
helmfile/files/theme/logoPortalBackground.svg
Normal file
File diff suppressed because one or more lines are too long
|
After Width: | Height: | Size: 20 KiB |
429
helmfile/files/theme/portal.css
Normal file
429
helmfile/files/theme/portal.css
Normal file
File diff suppressed because one or more lines are too long
56
helmfile/shared/migrations.yaml.gotmpl
Normal file
56
helmfile/shared/migrations.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 }}
|
||||||
|
|
||||||
|
cleanup:
|
||||||
|
deletePodsOnSuccess: {{ .Values.debug.cleanup.deletePodsOnSuccess }}
|
||||||
|
keepPVCOnDelete: {{ .Values.debug.cleanup.keepPVCOnDelete }}
|
||||||
|
|
||||||
|
migrations:
|
||||||
|
runId: 2
|
||||||
|
namespace: {{ .Values.migrations.namespace | default .Release.Namespace | quote }}
|
||||||
|
loglevel: {{ if .Values.debug.enabled }}"DEBUG"{{ else }}"INFO"{{ end }}
|
||||||
|
failOnUnexpectedState: true
|
||||||
|
environmentDetails:
|
||||||
|
{{ .Values | toYaml | nindent 4 }}
|
||||||
|
cleanup: false
|
||||||
|
|
||||||
|
containerSecurityContext:
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
capabilities:
|
||||||
|
drop:
|
||||||
|
- "ALL"
|
||||||
|
enabled: true
|
||||||
|
privileged: false
|
||||||
|
runAsUser: 1000
|
||||||
|
runAsGroup: 1000
|
||||||
|
seccompProfile:
|
||||||
|
type: "RuntimeDefault"
|
||||||
|
readOnlyRootFilesystem: true
|
||||||
|
runAsNonRoot: true
|
||||||
|
seLinuxOptions:
|
||||||
|
{{ .Values.seLinuxOptions.migrations | toYaml | nindent 4 }}
|
||||||
|
|
||||||
|
image:
|
||||||
|
registry: {{ .Values.global.imageRegistry | default .Values.images.migrations.registry | quote }}
|
||||||
|
repository: {{ .Values.images.migrations.repository | quote }}
|
||||||
|
tag: {{ .Values.images.migrations.tag | quote }}
|
||||||
|
imagePullPolicy: {{ .Values.global.imagePullPolicy |quote }}
|
||||||
|
|
||||||
|
job:
|
||||||
|
enabled: true
|
||||||
|
|
||||||
|
podSecurityContext:
|
||||||
|
enabled: true
|
||||||
|
fsGroup: 1000
|
||||||
|
fsGroupChangePolicy: "OnRootMismatch"
|
||||||
|
|
||||||
|
...
|
||||||
@@ -6,12 +6,14 @@
|
|||||||
#
|
#
|
||||||
helmfiles:
|
helmfiles:
|
||||||
# Path to the helmfile state file being processed BEFORE releases in this state file
|
# Path to the helmfile state file being processed BEFORE releases in this state file
|
||||||
- path: "helmfile/apps/services/helmfile-child.yaml"
|
- path: "helmfile/apps/migrations-pre/helmfile-child.yaml"
|
||||||
values: &values
|
values: &values
|
||||||
- "helmfile/environments/default/*.yaml"
|
- "helmfile/environments/default/*.yaml"
|
||||||
- "helmfile/environments/default/*.gotmpl"
|
- "helmfile/environments/default/*.gotmpl"
|
||||||
- {{ toYaml .Values | nindent 8 }}
|
- {{ toYaml .Values | nindent 8 }}
|
||||||
- path: "helmfile/apps/univention-management-stack/helmfile-child.yaml"
|
- path: "helmfile/apps/services/helmfile-child.yaml"
|
||||||
|
values: *values
|
||||||
|
- path: "helmfile/apps/nubus/helmfile-child.yaml"
|
||||||
values: *values
|
values: *values
|
||||||
- path: "helmfile/apps/intercom-service/helmfile-child.yaml"
|
- path: "helmfile/apps/intercom-service/helmfile-child.yaml"
|
||||||
values: *values
|
values: *values
|
||||||
@@ -35,5 +37,7 @@ helmfiles:
|
|||||||
values: *values
|
values: *values
|
||||||
- path: "helmfile/apps/openproject-bootstrap/helmfile-child.yaml"
|
- path: "helmfile/apps/openproject-bootstrap/helmfile-child.yaml"
|
||||||
values: *values
|
values: *values
|
||||||
|
- path: "helmfile/apps/migrations-post/helmfile-child.yaml"
|
||||||
|
values: *values
|
||||||
missingFileHandler: "Error"
|
missingFileHandler: "Error"
|
||||||
...
|
...
|
||||||
|
|||||||
Reference in New Issue
Block a user