Compare commits

..

34 Commits

Author SHA1 Message Date
Thomas Kaltenbrunner
ba4e47f89a fix(element): Integrate new Element CE chart 2025-11-25 21:15:47 +01:00
Thorsten Roßner
54277dabae chore(release): 1.10.0 [skip ci]
# [1.10.0](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/compare/v1.9.0...v1.10.0) (2025-11-24)

### Bug Fixes

* **collabora:** Update Controller to 1.1.6 incl. Helm chart update to 1.1.10 ([d25c95f](d25c95f06b))
* **collabora:** Update from 25.04.5 to 25.04.6 ([8de0f5d](8de0f5de72))
* **external-services:** Create `nubus_authsession` database ([ec72602](ec72602cdd))
* **helmfile:** Enable verification for XWiki Helm chart ([5104793](51047936de))
* **helmfile:** Streamline annotations ([7aa717c](7aa717c050))
* **nubus:** Remove legacy `UMC` Keycloak client that was used for SAML connection with the Nubus portal ([152221f](152221fa79))
* **open-xchange:** Only enable `smtpSASLAuthEnable` when `relayHost` is set ([70bbbf3](70bbbf311f))
* **open-xchange:** Optimize Dovecot Pro full-text search caches; review `migrations.md` for required upgrade steps ([f3f707c](f3f707c9ee))
* **open-xchange:** Template SASL security options ([684c6d4](684c6d4f29))
* **open-xchange:** Update Dovecot configuration based on supplier's best practise review ([850761e](850761e047))
* **opendesk-static-files:** [[#260](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/issues/260)] Fix doublette creation of configmap `data` keys when the same file is referenced multiple times for a component ([b5a76be](b5a76bea57))
* **openproject:** Update from 16.1.0 to 16.1.1 ([62fae99](62fae9976a))
* **xwiki:** Update XWiki from 17.4.4 to 17.4.7 ([02a3b77](02a3b77114))

### Features

* **jitsi:** Update from 2.0.10431 to 2.0.10590 ([f5aad1f](f5aad1fa47))
* **nubus:** Update from v1.14.0 to v1.15.2 ([12379d6](12379d67e0))
* **open-xchange:** Support for LDAP group based mailing lists ([cc94f0c](cc94f0c66d))
* **openproject:** Update OpenProject from 16.5.1 to 16.6.0 ([19438c0](19438c0281))
2025-11-24 15:32:49 +00:00
Thorsten Roßner
b32cb70678 chore(publiccode.yml): Update for v1.10.0 2025-11-24 16:16:57 +01:00
Thorsten Roßner
b7b9968245 chore(helmfile): Set JVB replica to 1 again 2025-11-24 11:03:30 +01:00
Thorsten Roßner
b830edf8da chore(helmfile): Remove doublette spaces in templating expression 2025-11-24 10:54:36 +01:00
emrah
f5aad1fa47 feat(jitsi): Update from 2.0.10431 to 2.0.10590 2025-11-21 13:36:44 +00:00
Thorsten Roßner
f2fe6f3026 docs(migrations.md): Streamlining content 2025-11-21 14:16:32 +01:00
Thorsten Roßner
1857dd961e docs(persistance.yaml.gotmpl): Streamline comment for dovecot PVC usage 2025-11-21 14:16:32 +01:00
Thorsten Roßner
0ab9979693 docs(gettings-started.md): Update section "Access deployment" 2025-11-21 14:16:32 +01:00
Thorsten Roßner
e0a6850a2d docs(global.yaml.gotmpl): Fix misleading comment for additionalMailDomains 2025-11-21 14:16:32 +01:00
Thorsten Roßner
7032205acf docs(security.md): Update non-verifiable charts table 2025-11-21 14:16:32 +01:00
Thorsten Roßner
51047936de fix(helmfile): Enable verification for XWiki Helm chart 2025-11-21 14:16:32 +01:00
Thorsten Roßner
a83ecd5c01 docs(gitops.md): [#206] Add warning about secrets in pre-rendered yaml files 2025-11-21 14:16:31 +01:00
Thorsten Roßner
080073119b docs(README-EE.md): Add link to COOL Controller release notes 2025-11-21 14:16:31 +01:00
Thorsten Roßner
ec72602cdd fix(external-services): Create nubus_authsession database 2025-11-21 14:16:31 +01:00
Thorsten Roßner
9387168e89 docs(data-storage.md): Streamline with current application state 2025-11-21 14:16:31 +01:00
Thorsten Roßner
b5a76bea57 fix(opendesk-static-files): [#260] Fix doublette creation of configmap data keys when the same file is referenced multiple times for a component 2025-11-21 14:16:31 +01:00
Thorsten Roßner
bdcfb977e0 docs(migrations.md): Add v1.10.0 section to overview table 2025-11-21 14:16:28 +01:00
Thorsten Roßner
cb367775a6 docs(gettings-started.md): [#184] Add a comment about the maximum length of the openDesk domain 2025-11-21 14:14:02 +01:00
Philip Gaber
e37361790b docs(migrations.md): Update for Postfix SASL security options in v1.9.0 and new Postfix secret 2025-11-21 06:46:31 +00:00
Thorsten Roßner
70bbbf311f fix(open-xchange): Only enable smtpSASLAuthEnable when relayHost is set 2025-11-21 06:46:31 +00:00
Thomas Kaltenbrunner
cc94f0c66d feat(open-xchange): Support for LDAP group based mailing lists 2025-11-21 06:46:31 +00:00
Philip Gaber
684c6d4f29 fix(open-xchange): Template SASL security options 2025-11-21 06:46:31 +00:00
renovate
62fae9976a fix(openproject): Update from 16.1.0 to 16.1.1 2025-11-20 08:02:29 +01:00
Thorsten Roßner
7b592a24b0 docs(migrations.md): Fix section sequence and some text streamlining 2025-11-19 17:22:51 +01:00
Thomas Kaltenbrunner
f3f707c9ee fix(open-xchange): Optimize Dovecot Pro full-text search caches; review migrations.md for required upgrade steps 2025-11-19 17:20:20 +01:00
Thomas Kaltenbrunner
850761e047 fix(open-xchange): Update Dovecot configuration based on supplier's best practise review 2025-11-19 17:20:02 +01:00
Norbert Tretkowski
12379d67e0 feat(nubus): Update from v1.14.0 to v1.15.2 2025-11-19 16:05:03 +01:00
Thorsten Roßner
d25c95f06b fix(collabora): Update Controller to 1.1.6 incl. Helm chart update to 1.1.10 2025-11-17 11:51:11 +01:00
Thorsten Roßner
8de0f5de72 fix(collabora): Update from 25.04.5 to 25.04.6 2025-11-17 06:27:21 +00:00
Thorsten Roßner
152221fa79 fix(nubus): Remove legacy UMC Keycloak client that was used for SAML connection with the Nubus portal 2025-11-14 07:51:31 +00:00
Sven-Erik Schmidt
7aa717c050 fix(helmfile): Streamline annotations 2025-11-12 11:28:49 +01:00
Oliver Günther
19438c0281 feat(openproject): Update OpenProject from 16.5.1 to 16.6.0 2025-11-11 10:53:50 +00:00
Clément Aubin
02a3b77114 fix(xwiki): Update XWiki from 17.4.4 to 17.4.7 2025-11-10 15:46:13 +00:00
87 changed files with 2023 additions and 773 deletions

View File

@@ -4,7 +4,7 @@
---
include:
- project: "${PROJECT_PATH_GITLAB_CONFIG_TOOLING}"
ref: "v2.4.10"
ref: "v2.4.17"
file:
- "ci/common/lint.yml"
- "ci/release-automation/semantic-release.yml"

View File

@@ -1,3 +1,30 @@
# [1.10.0](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/compare/v1.9.0...v1.10.0) (2025-11-24)
### Bug Fixes
* **collabora:** Update Controller to 1.1.6 incl. Helm chart update to 1.1.10 ([d25c95f](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/d25c95f06bc199d09aa6ea4dc09c10e95153de38))
* **collabora:** Update from 25.04.5 to 25.04.6 ([8de0f5d](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/8de0f5de7277ad726588d7de2d06cb3e9376c993))
* **external-services:** Create `nubus_authsession` database ([ec72602](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/ec72602cdd3207f73ff806a26bfe7b9fd32b8634))
* **helmfile:** Enable verification for XWiki Helm chart ([5104793](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/51047936de102c610adc00f4dff12d2eb8e945b0))
* **helmfile:** Streamline annotations ([7aa717c](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/7aa717c0509a731c060c58a1b5877e1d9899406f))
* **nubus:** Remove legacy `UMC` Keycloak client that was used for SAML connection with the Nubus portal ([152221f](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/152221fa7976bfa942d5e9e9b8f78cc8e65765c0))
* **open-xchange:** Only enable `smtpSASLAuthEnable` when `relayHost` is set ([70bbbf3](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/70bbbf311fcba57c31f535be7d0d453f4a945cee))
* **open-xchange:** Optimize Dovecot Pro full-text search caches; review `migrations.md` for required upgrade steps ([f3f707c](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/f3f707c9eee8edf3ad61834d87b5c059f31b0e26))
* **open-xchange:** Template SASL security options ([684c6d4](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/684c6d4f29dd447872ebe582eef43c04034896f7))
* **open-xchange:** Update Dovecot configuration based on supplier's best practise review ([850761e](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/850761e0475b2f281fb23f6972d5c74fbdaa3a61))
* **opendesk-static-files:** [[#260](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/issues/260)] Fix doublette creation of configmap `data` keys when the same file is referenced multiple times for a component ([b5a76be](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/b5a76bea57ef7b136c54d1bc95c40f0a0c3f9716))
* **openproject:** Update from 16.1.0 to 16.1.1 ([62fae99](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/62fae9976a731c00700d56ce8fab198bb2531d20))
* **xwiki:** Update XWiki from 17.4.4 to 17.4.7 ([02a3b77](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/02a3b7711490394690df70ca92bab58b253e34f5))
### Features
* **jitsi:** Update from 2.0.10431 to 2.0.10590 ([f5aad1f](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/f5aad1fa47559f0d3941c233c7d40029a9e83281))
* **nubus:** Update from v1.14.0 to v1.15.2 ([12379d6](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/12379d67e07936496fe31276b2052406e0137db6))
* **open-xchange:** Support for LDAP group based mailing lists ([cc94f0c](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/cc94f0c66df098d0a20f7f0d4a6af5e791557981))
* **openproject:** Update OpenProject from 16.5.1 to 16.6.0 ([19438c0](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/19438c02817875bd408c5d6cf423d7bfb61f907f))
# [1.9.0](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/compare/v1.8.0...v1.9.0) (2025-11-07)

View File

@@ -86,7 +86,7 @@ When a repository path starts with `/zendis`, the artifact is only available in
### Collabora
- Collabora Online (COOL) container image: Is build from the same public source code as Collabora Development Edition (CODE), only the build configurations might differ. COOL includes a brand package that is not public and its license is not open source.
- COOL Controller container image and Helm chart: Source code and chart are using Mozilla Public License Version 2.0, but the source code is not public. It is provided to customers upon request.
- [COOL Controller](https://www.collaboraonline.com/cool-controller-release-notes/) container image and Helm chart: Source code and chart are using Mozilla Public License Version 2.0, but the source code is not public. It is provided to customers upon request.
openDesk updates Collabora once a COOL image based on the version pattern `<major>.<minor>.<patch>.3+.<build>` was made available. This happens usually at the same time the CODE image with `<major>.<minor>.<patch>.2+.<build>` is made available.

View File

@@ -40,10 +40,10 @@ openDesk currently features the following functional main components:
| File management | Nextcloud | AGPL-3.0-or-later | [31.0.7](https://nextcloud.com/de/changelog/#31-0-7) | [Nextcloud 31](https://docs.nextcloud.com/) |
| Groupware | OX App Suite | GPL-2.0-only (backend), AGPL-3.0-or-later (frontend) | [8.41](https://documentation.open-xchange.com/appsuite/releases/8.41/) | Online documentation available from within the installed application; [Additional resources](https://documentation.open-xchange.com/) |
| Knowledge management | XWiki | LGPL-2.1-or-later | [17.4.4](https://www.xwiki.org/xwiki/bin/view/ReleaseNotes/Data/XWiki/17.4.4/) | [For the most recent release](https://www.xwiki.org/xwiki/bin/view/Documentation) |
| Portal & IAM | Nubus | AGPL-3.0-or-later | [1.14.0](https://docs.software-univention.de/nubus-kubernetes-release-notes/1.x/en/1.14.html) | [Univention's documentation website](https://docs.software-univention.de/n/en/nubus.html) |
| Project management | OpenProject | GPL-3.0-only | [16.5.1](https://www.openproject.org/docs/release-notes/16-5-1/) | [For the most recent release](https://www.openproject.org/docs/user-guide/) |
| Videoconferencing | Jitsi | Apache-2.0 | [2.0.10431](https://github.com/jitsi/jitsi-meet/releases/tag/stable%2Fjitsi-meet_10431) | [For the most recent release](https://jitsi.github.io/handbook/docs/category/user-guide/) |
| Weboffice | Collabora | MPL-2.0 | [25.04.5](https://www.collaboraoffice.com/code-25-04-release-notes/) | Online documentation available from within the installed application; [Additional resources](https://sdk.collaboraonline.com/) |
| Portal & IAM | Nubus | AGPL-3.0-or-later | [1.15.2](https://docs.software-univention.de/nubus-kubernetes-release-notes/1.x/en/1.15.html) | [Univention's documentation website](https://docs.software-univention.de/n/en/nubus.html) |
| Project management | OpenProject | GPL-3.0-only | [16.6.1](https://www.openproject.org/docs/release-notes/16-6-1/) | [For the most recent release](https://www.openproject.org/docs/user-guide/) |
| Videoconferencing | Jitsi | Apache-2.0 | [2.0.10590](https://github.com/jitsi/jitsi-meet/releases/tag/stable%2Fjitsi-meet_10590) | [For the most recent release](https://jitsi.github.io/handbook/docs/category/user-guide/) |
| Weboffice | Collabora | MPL-2.0 | [25.04.6](https://www.collaboraoffice.com/code-25-04-release-notes/) | Online documentation available from within the installed application; [Additional resources](https://sdk.collaboraonline.com/) |
While not all components are perfectly designed for the execution inside containers, one of the project's objectives is to
align the applications with best practices regarding container design and operations.

View File

@@ -129,7 +129,7 @@ An overview of
- components that consume the LDAP service.
- The components access the LDAP using a component-specific LDAP search account.
- components using Univention Keycloak as an identity provider (IdP).
- The components should use OAuth2 / OIDC flows if not otherwise denoted.
- All components use OAuth2 / OIDC flows.
- All components have a client configured in Keycloak.
Some components trust others to handle authentication for them.
@@ -148,7 +148,7 @@ flowchart TD
D-->K
O-->K
X-->K
P-->|SAML|K
P-->K
E[Element]-->K
J[Jitsi]-->K
I[IntercomService]-->K
@@ -184,11 +184,6 @@ sequenceDiagram
Note over Browser: User is authenticated
```
> [!note]
> Nubus' Portal and UMC still use [SAML 2.0](https://www.oasis-open.org/standard/saml/) to authenticate
> users. However, Nubus will switch to OIDC in an upcoming release, eliminating the use of SAML in openDesk
> altogether.
## Keycloak
[Keycloak](https://www.keycloak.org/) is an open-source identity and access management solution for web based applications and services. It provides features such as single sign-on, multi-factor authentication, user federation, and centralized user management.

View File

@@ -31,8 +31,6 @@ sankey-beta
ClamAV,PersistentVolume,1
Dovecot,PersistentVolume,1
Element/Synapse,PostgreSQL,1
Element/Synapse,PersistentVolume,1
@@ -54,9 +52,15 @@ OpenProject,S3,1
OpenProject,PersistentVolume,1
OpenProject,Memcached,1
Open-Xchange,MariaDB,1
Open-Xchange,PersistentVolume,1
Open-Xchange,Redis,1
OX App Suite,MariaDB,1
OX App Suite,Redis,1
OX App Suite,S3,1
OX Connector,PersistentVolume,1
OX Dovecot,Cassandra,1
OX Dovecot,PersistentVolume,1
OX Dovecot,S3,1
Postfix,PersistentVolume,1
@@ -70,6 +74,7 @@ XWiki,PersistentVolume,1
| -------------------- | ------------ | -------- | --------------------------------------------------------------------------------- | ---------------------------------------------- | --------------------------------------------------------------------------------------------------------- |
| **ClamAV** | PVC | No | ClamAV Database | `clamav-database-clamav-simple-0` | `/var/lib/clamav` |
| **Dovecot** | PVC | Yes | openDesk CE only: User mail directories | `dovecot` | `/srv/mail` |
| | PVC | Yes | openDesk EE only: Metacache directory | `var-lib-dovecot-dovecot-0` | `/var/lib/dovecot` |
| | S3 | Yes | openDesk EE only: User mail | `dovecot` | `dovecot` |
| | Cassandra | Yes | openDesk EE only: Metadata and ACLs | `dovecot_dictmap`, `dovecot_acl` | |
| **Element/Synapse** | PostgreSQL | Yes | Application's main database | `matrix` | |
@@ -84,8 +89,8 @@ XWiki,PersistentVolume,1
| | | Yes | Login actions and device-fingerprints | `keycloak_extensions` | |
| | | Optional | Store of the temporary password reset token | `selfservice` | |
| | | Optional | OIDC session storage | `umsAuthSession` | |
| | | No | Notification features are not used in openDesk 1.1 | `notificationsapi` | |
| | | No | Guardian features are currently not used in openDesk 1.1 | `guardianmanagementapi` | |
| | | No | At the moment the notification feature not enabled in openDesk | `notificationsapi` | |
| | | No | At the moment the Guardian features are currently not enabled in openDesk | `guardianmanagementapi` | |
| | S3 | No | Static files for Portal | `ums` | |
| | PVC | Yes | openLDAP database (primary R/W Pods), when restore select the one from the leader | `shared-data-ums-ldap-server-primary-0` | `/var/lib/univention-ldap` |
| | | Yes | openLDAP process data | `shared-run-ums-ldap-server-primary-0` | `/var/run/slapd` |
@@ -100,13 +105,17 @@ XWiki,PersistentVolume,1
| | Memcached | No | Cache | | |
| | PVC | No | PVC backed `emptyDir` as K8s cannot set the sticky bit on standard emptyDirs | `openproject-<web/worker>-*-tmp` | `/tmp` |
| | | No | PVC backed `emptyDir` as K8s cannot set the sticky bit on standard emptyDirs | `openproject-<web/worker>-app-*-tmp` | `/app/tmp` |
| **Open-Xchange** | MariaDB | Yes | Application's control database to coordiate dynamically created ones | `configdb` | |
| **OX App Suite** | MariaDB | Yes | Application's control database to coordiate dynamically created ones | `configdb` | |
| | | Yes | Dynamically creates databases of schema `PRIMARYDB_n`containing multiple contexts | `PRIMARYDB_*` | |
| | | Yes | OX Guard related settings | `oxguard*` | |
| | S3 | Yes | Attachments of meetings, contacts and tasks | `openxchange` | |
| | Redis | Optional | Cache, session related data, distributed maps | | |
| | PVC | Optional | OX Connector: Caching of OX object data | for backup | `/var/lib/univention-appcenter/apps/ox-connector` |
| **OX Connector** | PVC | Optional | OX Connector: Caching of OX object data | for backup | `/var/lib/univention-appcenter/apps/ox-connector` |
| | | Yes | OX Connector: OX SOAP API credentials | `ox-connector-ox-contexts-ox-connector-0` | `/etc/ox-secrets` |
| **OX Dovecot** | PVC | Yes | openDesk CE only: User mail directories | `dovecot` | `/srv/mail` |
| | PVC | Yes | openDesk EE only: Various meta data and caches | `var-lib-dovecot` | `/var/lib/dovecot` |
| | S3 | Yes | Dovecot Pro/openDesk EE only: User mail | `dovecot` | `dovecot` |
| | Cassandra | Yes | Dovecot Pro/openDesk EE only: Metadata and ACLs | `dovecot_dictmap`, `dovecot_acl` | |
| **Postfix** | PVC | Yes | Mail spool | `postfix` | `/var/spool/postfix` |
| **XWiki** | PostgreSQL | Yes | Application's main database | `xwiki` | |
| | PVC | Yes | Attachments | `xwiki-data-xwiki-0` | `/usr/local/xwiki/data` |

View File

@@ -31,6 +31,11 @@ There are two options to deploy openDesk via Argo CD described in the following
## Option 1: Use YAML manifests
> [!warning]
> Pre-rendering the YAML files will also embed all referenced secrets into the resulting outputs.
> You must ensure that these files are accessible solely to individuals who are expressly authorized
> to view the corresponding secrets, as well as the infrastructure and data protected by them.
This option requires a preprocessing step before using Argo CD. This step requires you to compile the Helmfile based
deployment into Kubernetes YAML manifest, to do so you need to execute the helmfile binary:

View File

@@ -32,8 +32,10 @@ This documentation lets you create an openDesk evaluation instance on your Kuber
* [Install](#install)
* [Install single app](#install-single-app)
* [Install single release/chart](#install-single-releasechart)
* [Access deployment](#access-deployment)
* [Using from external repository](#using-from-external-repository)
* [Access deployment](#access-deployment)
* [Login](#login)
* [Credentials](#credentials)
* [Uninstall](#uninstall)
<!-- TOC -->
@@ -77,6 +79,8 @@ For your convenience, we recommend creating a `*.domain.tld` A-Record for your c
## Domain
As example base domain for your deployment we use `domain.tld` in this document.
A list of all subdomains can be found in `helmfile/environments/default/global.yaml.gotmpl`.
All subdomains can be customized. For example, _Nextcloud_ can be changed to `files.domain.tld` in `dev` environment:
@@ -100,6 +104,11 @@ or alternatively via environment variable:
export DOMAIN=domain.tld
```
> [!warning]
> Due to a limitation caused by a [bug in the SSSD subcomponent](https://github.com/SSSD/sssd/issues/7246), there
> is an upper bound on the total domain length used by openDesk. To avoid issues, we recommend keeping the openDesk
> base domain length below 94 characters.
### Apps
Depending on your ideal openDesk deployment, you may wish to disable or enable certain apps.
@@ -441,17 +450,37 @@ Instead of iterating through all services, you can also deploy a single release
helmfile apply -e dev -n <NAMESPACE> -l name=mariadb
```
## Using from external repository
Referring to `./helmfile_generic.yaml.gotmpl` from an external
directory or repository is possible. The `helmfile.yaml.gotmpl` that refers to
`./helmfile_generic.yaml.gotmpl` may define custom environments. These custom
environments may overwrite specific configuration values. These
configuration values are:
* `global.domain`
* `global.helmRegistry`
* `global.master_password`
# Access deployment
## Login
When all apps are successfully deployed, and their Pod status is `Running` or `Succeeded`, you can navigate to
```text
https://domain.tld
```
which will redirect you to the actual URL of the openDesk portal:
```text
https://portal.domain.tld
```
If you change the subdomain of `nubus`, you must replace the subdomain of `portal` with the same subdomain.
By default the portal will send you to openDesk's login screen.
**Credentials:**
## Credentials
openDesk deploys with the standard user account `Administrator`, the password for which can be retrieved as follows:
@@ -483,18 +512,6 @@ docker run --rm registry.opencode.de/bmi/opendesk/components/platform-developmen
--create_admin_accounts True
```
## Using from external repository
Referring to `./helmfile_generic.yaml.gotmpl` from an external
directory or repository is possible. The `helmfile.yaml.gotmpl` that refers to
`./helmfile_generic.yaml.gotmpl` may define custom environments. These custom
environments may overwrite specific configuration values. These
configuration values are:
* `global.domain`
* `global.helmRegistry`
* `global.master_password`
# Uninstall
You can uninstall the deployment by executing the following:

View File

@@ -8,14 +8,23 @@ SPDX-License-Identifier: Apache-2.0
<!-- TOC -->
* [Disclaimer](#disclaimer)
* [Deprecation warnings](#deprecation-warnings)
* [Automated migrations - Overview and mandatory upgrade path](#automated-migrations---overview-and-mandatory-upgrade-path)
* [Overview and mandatory upgrade path](#overview-and-mandatory-upgrade-path)
* [Manual checks/actions](#manual-checksactions)
* [Versions &GreaterEqual; v1.9.0](#versions--v190)
* [Pre-upgrade to versions &GreaterEqual; v1.9.0](#pre-upgrade-to-versions--v190)
* [Versions v1.10.0](#versions--v1100)
* [Pre-upgrade to versions v1.10.0](#pre-upgrade-to-versions--v1100)
* [Helmfile new secret: `secrets.nubus.ldapSearch.postfix`](#helmfile-new-secret-secretsnubusldapsearchpostfix)
* [Helmfile new secret: `secrets.doveocot.sharedMailboxesMasterPassword`](#helmfile-new-secret-secretsdoveocotsharedmailboxesmasterpassword)
* [New Helmfile default: Nubus provisioning debug container no longer deployed](#new-helmfile-default-nubus-provisioning-debug-container-no-longer-deployed)
* [New Helmfile default: Postfix SMTP SASL security options](#new-helmfile-default-postfix-smtp-sasl-security-options)
* [Post-upgrade to versions ≥ v1.10.0](#post-upgrade-to-versions--v1100)
* [New application default: Dovecot full-text search index configuration](#new-application-default-dovecot-full-text-search-index-configuration)
* [Versions ≥ v1.9.0](#versions--v190)
* [Pre-upgrade to versions ≥ v1.9.0](#pre-upgrade-to-versions--v190)
* [New application default: Postfix SMTP SASL security option](#new-application-default-postfix-smtp-sasl-security-option)
* [Helmfile fix: Cassandra passwords read from `databases.*`](#helmfile-fix-cassandra-passwords-read-from-databases)
* [Helmfile new feature: `functional.groupware.externalClients.*`](#helmfile-new-feature-functionalgroupwareexternalclients)
* [Versions &GreaterEqual; v1.8.0](#versions--v180)
* [Pre-upgrade to versions &GreaterEqual; v1.8.0](#pre-upgrade-to-versions--v180)
* [Versions v1.8.0](#versions--v180)
* [Pre-upgrade to versions v1.8.0](#pre-upgrade-to-versions--v180)
* [New application default: Default group for two-factor authentication is now "2FA Users"](#new-application-default-default-group-for-two-factor-authentication-is-now-2fa-users)
* [New database and secrets: Portal now uses OIDC](#new-database-and-secrets-portal-now-uses-oidc)
* [New application default: XWiki blocks self-registration of user accounts](#new-application-default-xwiki-blocks-self-registration-of-user-accounts)
@@ -24,39 +33,39 @@ SPDX-License-Identifier: Apache-2.0
* [Helmfile new default: New groupware settings changing current behaviour](#helmfile-new-default-new-groupware-settings-changing-current-behaviour)
* [New application default: Nextcloud apps "Spreed" and "Comments" no longer enabled by default](#new-application-default-nextcloud-apps-spreed-and-comments-no-longer-enabled-by-default)
* [New application default: Gravatar is switched off for Jitsi and OpenProject](#new-application-default-gravatar-is-switched-off-for-jitsi-and-openproject)
* [Versions &GreaterEqual; v1.7.0](#versions--v170)
* [Pre-upgrade to versions &GreaterEqual; v1.7.0](#pre-upgrade-to-versions--v170)
* [Versions v1.7.0](#versions--v170)
* [Pre-upgrade to versions v1.7.0](#pre-upgrade-to-versions--v170)
* [Helmfile fix: Ensure enterprise overrides apply when deploying from project root](#helmfile-fix-ensure-enterprise-overrides-apply-when-deploying-from-project-root)
* [Replace Helm chart: New Notes Helm chart with support for self-signed deployments](#replace-helm-chart-new-notes-helm-chart-with-support-for-self-signed-deployments)
* [Post-upgrade to versions &GreaterEqual; v1.7.0](#post-upgrade-to-versions--v170)
* [Post-upgrade to versions v1.7.0](#post-upgrade-to-versions--v170)
* [Upstream fix: Provisioning of functional mailboxes](#upstream-fix-provisioning-of-functional-mailboxes)
* [Versions &GreaterEqual; v1.6.0](#versions--v160)
* [Pre-upgrade to versions &GreaterEqual; v1.6.0](#pre-upgrade-to-versions--v160)
* [Versions v1.6.0](#versions--v160)
* [Pre-upgrade to versions v1.6.0](#pre-upgrade-to-versions--v160)
* [Upstream constraint: Nubus' external secrets](#upstream-constraint-nubus-external-secrets)
* [Helmfile new secret: `secrets.minio.openxchangeUser`](#helmfile-new-secret-secretsminioopenxchangeuser)
* [Helmfile new object storage: `objectstores.openxchange.*`](#helmfile-new-object-storage-objectstoresopenxchange)
* [OX App Suite fix-up: Using S3 as storage for non mail attachments (pre-upgrade)](#ox-app-suite-fix-up-using-s3-as-storage-for-non-mail-attachments-pre-upgrade)
* [Post-upgrade to versions &GreaterEqual; v1.6.0](#post-upgrade-to-versions--v160)
* [Post-upgrade to versions v1.6.0](#post-upgrade-to-versions--v160)
* [OX App Suite fix-up: Using S3 as storage for non mail attachments (post-upgrade)](#ox-app-suite-fix-up-using-s3-as-storage-for-non-mail-attachments-post-upgrade)
* [Versions &GreaterEqual; v1.4.0](#versions--v140)
* [Pre-upgrade to versions &GreaterEqual; v1.4.0](#pre-upgrade-to-versions--v140)
* [Versions v1.4.0](#versions--v140)
* [Pre-upgrade to versions v1.4.0](#pre-upgrade-to-versions--v140)
* [Helmfile cleanup: `global.additionalMailDomains` as list](#helmfile-cleanup-globaladditionalmaildomains-as-list)
* [Versions &GreaterEqual; v1.3.0](#versions--v130)
* [Pre-upgrade to versions &GreaterEqual; v1.3.0](#pre-upgrade-to-versions--v130)
* [Versions v1.3.0](#versions--v130)
* [Pre-upgrade to versions v1.3.0](#pre-upgrade-to-versions--v130)
* [Helmfile new feature: `functional.authentication.ssoFederation`](#helmfile-new-feature-functionalauthenticationssofederation)
* [Versions &GreaterEqual; v1.2.0](#versions--v120)
* [Pre-upgrade to versions &GreaterEqual; v1.2.0](#pre-upgrade-to-versions--v120)
* [Versions v1.2.0](#versions--v120)
* [Pre-upgrade to versions v1.2.0](#pre-upgrade-to-versions--v120)
* [Helmfile cleanup: Do not configure OX provisioning when no OX installed](#helmfile-cleanup-do-not-configure-ox-provisioning-when-no-ox-installed)
* [Helmfile new default: PostgreSQL for XWiki and Nextcloud](#helmfile-new-default-postgresql-for-xwiki-and-nextcloud)
* [Versions &GreaterEqual; v1.1.2](#versions--v112)
* [Pre-upgrade to versions &GreaterEqual; v1.1.2](#pre-upgrade-to-versions--v112)
* [Versions v1.1.2](#versions--v112)
* [Pre-upgrade to versions v1.1.2](#pre-upgrade-to-versions--v112)
* [Helmfile feature update: App settings wrapped in `apps.` element](#helmfile-feature-update-app-settings-wrapped-in-apps-element)
* [Versions &GreaterEqual; v1.1.1](#versions--v111)
* [Pre-upgrade to versions &GreaterEqual; v1.1.1](#pre-upgrade-to-versions--v111)
* [Versions v1.1.1](#versions--v111)
* [Pre-upgrade to versions v1.1.1](#pre-upgrade-to-versions--v111)
* [Helmfile feature update: Component specific `storageClassName`](#helmfile-feature-update-component-specific-storageclassname)
* [Helmfile new secret: `secrets.nubus.masterpassword`](#helmfile-new-secret-secretsnubusmasterpassword)
* [Versions &GreaterEqual; v1.1.0](#versions--v110)
* [Pre-upgrade to versions &GreaterEqual; v1.1.0](#pre-upgrade-to-versions--v110)
* [Versions v1.1.0](#versions--v110)
* [Pre-upgrade to versions v1.1.0](#pre-upgrade-to-versions--v110)
* [Helmfile cleanup: Restructured `/helmfile/files/theme` folder](#helmfile-cleanup-restructured-helmfilefilestheme-folder)
* [Helmfile cleanup: Consistent use of `*.yaml.gotmpl`](#helmfile-cleanup-consistent-use-of-yamlgotmpl)
* [Helmfile cleanup: Prefixing certain app directories with `opendesk-`](#helmfile-cleanup-prefixing-certain-app-directories-with-opendesk-)
@@ -66,10 +75,10 @@ SPDX-License-Identifier: Apache-2.0
* [openDesk defaults (new): Enforce login](#opendesk-defaults-new-enforce-login)
* [openDesk defaults (changed): Jitsi room history enabled](#opendesk-defaults-changed-jitsi-room-history-enabled)
* [External requirements: Redis 7.4](#external-requirements-redis-74)
* [Post-upgrade to versions &GreaterEqual; v1.1.0](#post-upgrade-to-versions--v110)
* [Post-upgrade to versions v1.1.0](#post-upgrade-to-versions--v110)
* [XWiki fix-ups](#xwiki-fix-ups)
* [Versions &GreaterEqual; v1.0.0](#versions--v100)
* [Pre-upgrade to versions &GreaterEqual; v1.0.0](#pre-upgrade-to-versions--v100)
* [Versions v1.0.0](#versions--v100)
* [Pre-upgrade to versions v1.0.0](#pre-upgrade-to-versions--v100)
* [Configuration Cleanup: Removal of unnecessary OX-Profiles in Nubus](#configuration-cleanup-removal-of-unnecessary-ox-profiles-in-nubus)
* [Configuration Cleanup: Updated `global.imagePullSecrets`](#configuration-cleanup-updated-globalimagepullsecrets)
* [Changed openDesk defaults: Matrix presence status disabled](#changed-opendesk-defaults-matrix-presence-status-disabled)
@@ -77,17 +86,17 @@ SPDX-License-Identifier: Apache-2.0
* [Changed openDesk defaults: File-share configurability](#changed-opendesk-defaults-file-share-configurability)
* [Changed openDesk defaults: Updated default subdomains in `global.hosts`](#changed-opendesk-defaults-updated-default-subdomains-in-globalhosts)
* [Changed openDesk defaults: Dedicated group for access to the UDM REST API](#changed-opendesk-defaults-dedicated-group-for-access-to-the-udm-rest-api)
* [Post-upgrade to versions &GreaterEqual; v1.0.0](#post-upgrade-to-versions--v100)
* [Post-upgrade to versions v1.0.0](#post-upgrade-to-versions--v100)
* [Configuration Improvement: Separate user permission for using Video Conference component](#configuration-improvement-separate-user-permission-for-using-video-conference-component)
* [Optional Cleanup](#optional-cleanup)
* [Automated migrations - Details](#automated-migrations---details)
* [Versions &GreaterEqual; v1.6.0 (automated)](#versions--v160-automated)
* [Versions &GreaterEqual; v1.6.0 migrations-post](#versions--v160-migrations-post)
* [Versions &GreaterEqual; v1.2.0 (automated)](#versions--v120-automated)
* [Versions &GreaterEqual; v1.2.0 migrations-pre](#versions--v120-migrations-pre)
* [Versions &GreaterEqual; v1.2.0 migrations-post](#versions--v120-migrations-post)
* [Versions &GreaterEqual; v1.1.0 (automated)](#versions--v110-automated)
* [Versions &GreaterEqual; v1.0.0 (automated)](#versions--v100-automated)
* [Versions v1.6.0 (automated)](#versions--v160-automated)
* [Versions v1.6.0 migrations-post](#versions--v160-migrations-post)
* [Versions v1.2.0 (automated)](#versions--v120-automated)
* [Versions v1.2.0 migrations-pre](#versions--v120-migrations-pre)
* [Versions v1.2.0 migrations-post](#versions--v120-migrations-post)
* [Versions v1.1.0 (automated)](#versions--v110-automated)
* [Versions v1.0.0 (automated)](#versions--v100-automated)
* [Related components and artifacts](#related-components-and-artifacts)
* [Development](#development)
<!-- TOC -->
@@ -140,22 +149,23 @@ matching that constraint, though our links always point to the newest patch rele
> 1. You are at v1.3.2 → pre steps for v1.4.0 to v1.5.0
> 1. Upgrade to v1.5.0 → post steps for v1.4.0 to v1.5.0
> 1. You are at v1.5.0 → pre steps for v1.6.0 to 1.7.1
> 1. Upgrade to v1.7.1 → post steps for v1.6.0 to v1.7.1
> 1. Upgrade to v1.7.1 → post steps for v1.6.0 to v1.7.1
<!-- IMPORTANT: Make sure to mark mandatory releases if an automatic migration requires a previous update to be installed -->
| Version | Mandatory | Pre-Upgrade | Post-Upgrade | Minimum Required Previous Version |
|-----------------------------------------------------------------------------------------|-----------|-----------------------------------------------------------------------------------------------------------------------------|-----------------------------------------|----------------------------------------------|
| [v1.9.0](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/releases/v1.9.0) | -- | [Pre](#pre-upgrade-to-versions--v190) | -- | ⬇ Install &GreaterEqual; v1.5.0 first |
| [v1.8.0](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/releases/v1.8.0) | -- | [Pre](#pre-upgrade-to-versions--v180) | -- | ⬇ Install &GreaterEqual; v1.5.0 first |
| [v1.7.x](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/releases/v1.7.1) | -- | [Pre](#pre-upgrade-to-versions--v170) | [Post](#post-upgrade-to-versions--v170) | ⬇ Install &GreaterEqual; v1.5.0 first |
| [v1.6.0](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/releases/v1.6.0) | -- | [Pre](#pre-upgrade-to-versions--v160) | [Post](#post-upgrade-to-versions--v160) | [ Install v1.5.0 first](#versions--v160-automated) |
| [v1.5.0](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/releases/v1.5.0) | **yes** | -- | -- | Install &GreaterEqual; v1.1.x first |
| [v1.4.x](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/releases/v1.4.1) | -- | [Pre](#pre-upgrade-to-versions--v140) | -- | ⬇ Install &GreaterEqual; v1.1.x first |
| [v1.3.x](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/releases/v1.3.2) | -- | [Pre](#pre-upgrade-to-versions--v130) | -- | ⬇ Install &GreaterEqual; v1.1.x first |
| [v1.2.x](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/releases/v1.2.1) | -- | [Pre](#pre-upgrade-to-versions--v120) | -- | [ Install v1.1.x first](#versions--v120-automated) |
| [v1.1.x](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/releases/v1.1.2) | **yes** | [Pre .0](#pre-upgrade-to-versions--v110) → [Pre .1](#pre-upgrade-to-versions--v111) → [Pre .2](#pre-upgrade-to-versions--v112) | [Post](#post-upgrade-to-versions--v110) | [⚠ Install v1.0.0 first](#versions--v110-automated) |
| [v1.0.0](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/releases/v1.0.0) | **yes** | [Pre](#pre-upgrade-to-versions--v100) | [Post](#post-upgrade-to-versions--v100) | [⚠ Install v0.9.0 first](#versions--v100-automated) |
| [v0.9.0](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/releases/v0.9.0) | **yes** | -- | -- | -- |
| Version | Mandatory | Pre-Upgrade | Post-Upgrade | Minimum Required Previous Version |
| ---------------------------------------------------------------------------------------- | --------- | ------------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------- | ---------------------------------------------------- |
| [v1.10.0](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/releases/v1.9.0) | -- | [Pre](#pre-upgrade-to-versions--v1100) | [Post](#post-upgrade-to-versions--v1100) | ⬇ Install ≥ v1.5.0 first |
| [v1.9.0](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/releases/v1.9.0) | -- | [Pre](#pre-upgrade-to-versions--v190) | -- | ⬇ Install ≥ v1.5.0 first |
| [v1.8.0](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/releases/v1.8.0) | -- | [Pre](#pre-upgrade-to-versions--v180) | -- | ⬇ Install ≥ v1.5.0 first |
| [v1.7.x](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/releases/v1.7.1) | -- | [Pre](#pre-upgrade-to-versions--v170) | [Post](#post-upgrade-to-versions--v170) | Install v1.5.0 first |
| [v1.6.0](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/releases/v1.6.0) | -- | [Pre](#pre-upgrade-to-versions--v160) | [Post](#post-upgrade-to-versions--v160) | [ Install v1.5.0 first](#versions--v160-automated) |
| [v1.5.0](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/releases/v1.5.0) | **yes** | -- | -- | ⬇ Install ≥ v1.1.x first |
| [v1.4.x](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/releases/v1.4.1) | -- | [Pre](#pre-upgrade-to-versions--v140) | -- | ⬇ Install ≥ v1.1.x first |
| [v1.3.x](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/releases/v1.3.2) | -- | [Pre](#pre-upgrade-to-versions--v130) | -- | Install v1.1.x first |
| [v1.2.x](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/releases/v1.2.1) | -- | [Pre](#pre-upgrade-to-versions--v120) | -- | [⚠ Install v1.1.x first](#versions--v120-automated) |
| [v1.1.x](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/releases/v1.1.2) | **yes** | [Pre .0](#pre-upgrade-to-versions--v110) → [Pre .1](#pre-upgrade-to-versions--v111) → [Pre .2](#pre-upgrade-to-versions--v112) | [Post](#post-upgrade-to-versions--v110) | [⚠ Install v1.0.0 first](#versions--v110-automated) |
| [v1.0.0](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/releases/v1.0.0) | **yes** | [Pre](#pre-upgrade-to-versions--v100) | [Post](#post-upgrade-to-versions--v100) | [⚠ Install v0.9.0 first](#versions--v100-automated) |
| [v0.9.0](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/releases/v0.9.0) | **yes** | -- | -- | -- |
> [!warning]
> Be sure to check out the table in the release version you are going to install, and not the currently installed version.
@@ -165,15 +175,124 @@ If you would like more details about the automated migrations, please read secti
# Manual checks/actions
> [!note]
> We **only** use the mathematical symbol &GreaterEqual; to denote for which versions manual steps must be
> applied. For example, "Versions &GreaterEqual; v1.7.0" refers to all openDesk versions (major, minor and
> We **only** use the mathematical symbol to denote for which versions manual steps must be
> applied. For example, "Versions v1.7.0" refers to all openDesk versions (major, minor and
> patch) starting from 1.7.0, e.g. 1.7.0, 1.7.1, 1.8.0, etc. Furthermore, if a version is not explicitly
> listed no extra manual steps are required when upgrading to that version, e.g. in the case of an update from
> version 1.7.0 to version 1.7.1.
## Versions &GreaterEqual; v1.9.0
## Versions v1.10.0
### Pre-upgrade to versions &GreaterEqual; v1.9.0
### Pre-upgrade to versions v1.10.0
#### Helmfile new secret: `secrets.nubus.ldapSearch.postfix`
**Target group:** All existing deployments that use self-defined secrets.
The updated Postfix configuration supporting LDAP group based mailing list requires a new secret that is
declared in [`secrets.yaml.gotmpl`](../helmfile/environments/default/secrets.yaml.gotmpl) by the key
`secrets.nubus.ldapSearch.postfix`.
If you define your own secrets, please ensure that you provide a value for this secret, otherwise it will
be derived from the `MASTER_PASSWORD`.
#### Helmfile new secret: `secrets.doveocot.sharedMailboxesMasterPassword`
**Target group:** All existing deployments that have OX App Suite enabled and that use self-defined secrets.
The revised Dovecot configuration requires a new secret that is declared in
[`secrets.yaml.gotmpl`](../helmfile/environments/default/secrets.yaml.gotmpl) by the key
`secrets.doveocot.sharedMailboxesMasterPassword`.
If you define your own secrets, please ensure that you provide a value for this secret, otherwise it will
be derived from the `MASTER_PASSWORD`.
#### New Helmfile default: Nubus provisioning debug container no longer deployed
**Target group:** All deployments that make use of the debugging container for Nubus' provisioning stack called "nats-box",
The [nats-box](https://github.com/nats-io/nats-box), a handy tool when it comes to debugging the Nubus provisioning stack, is no longer enabled in openDesk by default.
To re-enable the nats-box for your deployment you have to set:
```yaml
technical:
nubus:
provisioning:
nats:
natsBox:
enabled: true
```
> [!note]
> The nats-box also gets enabled when setting `debug.enabled: true`, but that should only be used in non-production scenarios and enabled debug
> accross the whole deployment.
#### New Helmfile default: Postfix SMTP SASL security options
**Target group:** All openDesk deployments using an external SMTP relay that does not support
[Postfix's default `smtpSASLSecurityOptions`](https://www.postfix.org/postconf.5.html#smtp_sasl_security_options).
Starting from openDesk v1.9.0, the SMTP SASL security options set within openDesk are aligned with the
recommended defaults. This might break currently working connections with external SMTP relays.
> [!warning]
> Please check your mail relays supported SASL security options and adjust your deployment accordingly to
> prevent the disruption of mail delivery.
To fall back to the behavior of openDesk < v1.9.0 (no security options at all) set the following in
`smtp.yaml.gotmpl`
``` yaml
smtp:
security:
smtpdSASLSecurityOptions: ~
smtpSASLSecurityOptions: ~
```
To set specific options consult the official Postfix documentation for
[smtpd](https://www.postfix.org/postconf.5.html#smtpd_sasl_security_options) or
[smtp](https://www.postfix.org/postconf.5.html#smtp_sasl_security_options) and set the string options via the
yaml array notation:
``` yaml
smtp:
security:
smtpdSASLSecurityOptions:
- "noanonymous"
smtpSASLSecurityOptions:
- "noanonymous"
- "noplaintext"
```
### Post-upgrade to versions ≥ v1.10.0
#### New application default: Dovecot full-text search index configuration
**Target group:** All openDesk Enterprise deployments using the groupware module.
Due to a configurational change the full-text search indexes of Dovecot Pro need to be rebuilt.
Run the following command inside the Dovecot container:
```shell
set -x; for d in /var/lib/dovecot/*/*; do uuid=$(basename "$d"); [[ $uuid =~ ^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$ ]] || continue; doveadm fts rescan -u "$uuid"; doveadm index -u "$uuid" -q '*'; done
```
## Versions ≥ v1.9.0
### Pre-upgrade to versions ≥ v1.9.0
#### New application default: Postfix SMTP SASL security option
**Target group:** All openDesk deployments using an external SMTP relay that does not support
[Postfix's default `smtpSASLSecurityOptions`](https://www.postfix.org/postconf.5.html#smtp_sasl_security_options).
Starting from openDesk v1.9.0, the SMTP SASL security options set within openDesk are aligned with the
recommended defaults. This might break currently working connections with external SMTP relays. To prevent
this you have to configure the supported options for your mail relay one of the following ways:
- Recommended: Directly upgrade to v1.10.0 and set SMTP SASL options through `smtp.security.*`.
- Configure a customization for `smtpSASLSecurityOptions`.
#### Helmfile fix: Cassandra passwords read from `databases.*`
@@ -211,9 +330,9 @@ Additionally, it is now possible to explicitly define the hostnames shown in the
If these values are not explicitly set, openDesk will use `.Values.global.domain` as in previous releases.
## Versions &GreaterEqual; v1.8.0
## Versions v1.8.0
### Pre-upgrade to versions &GreaterEqual; v1.8.0
### Pre-upgrade to versions v1.8.0
#### New application default: Default group for two-factor authentication is now "2FA Users"
@@ -237,7 +356,7 @@ The portal has been migrated to use OIDC for single sign-on by default. This int
- `secrets.postgresql.umsAuthSessionUser`: For internal databases, set the secret for the database user here. If you are using an external database, you already provide these credentials in the New database step above.
> [!note]
> The SAML Client for the Nubus portal is still preserved in Keycloak and will be removed in one of the next openDesk releases.
> The SAML Client for the Nubus portal is still preserved in Keycloak and is going to be removed with openDesk 1.10.0.
#### New application default: XWiki blocks self-registration of user accounts
@@ -368,9 +487,9 @@ Gravatar support is no longer enabled by default in Jitsi and OpenProject. In ca
OPENPROJECT_PLUGIN__OPENPROJECT__AVATARS: '{enable_gravatars: true, enable_local_avatars: true}'
```
## Versions &GreaterEqual; v1.7.0
## Versions v1.7.0
### Pre-upgrade to versions &GreaterEqual; v1.7.0
### Pre-upgrade to versions v1.7.0
#### Helmfile fix: Ensure enterprise overrides apply when deploying from project root
@@ -401,7 +520,7 @@ annotation:
notesYProvider: {}
```
### Post-upgrade to versions &GreaterEqual; v1.7.0
### Post-upgrade to versions v1.7.0
#### Upstream fix: Provisioning of functional mailboxes
@@ -428,9 +547,9 @@ kill ${PROVISIONING_PORT_FORWARD_PID}
rm ${TEMPORARY_CONSUMER_JSON}
```
## Versions &GreaterEqual; v1.6.0
## Versions v1.6.0
### Pre-upgrade to versions &GreaterEqual; v1.6.0
### Pre-upgrade to versions v1.6.0
#### Upstream constraint: Nubus' external secrets
@@ -449,7 +568,7 @@ Please ensure you read the [Nubus 1.10.0 "Migration steps" section](https://docs
For OX App Suite to access the object storage a new secret has been introduced.
It is declared in [`secrets.yaml.gotmpl`](../helmfile/environments/default/secrets.yaml.gotmpl) by the key: `secrets.minio.openxchangeUser`. If you define your own secrets, please ensure that you provide a value for this secret as well, otherwise the aforementioned secret will be derived from the `MASTER_PASSWORD`.
It is declared in [`secrets.yaml.gotmpl`](../helmfile/environments/default/secrets.yaml.gotmpl) by the key: `secrets.minio.openxchangeUser`. If you define your own secrets, please ensure that you provide a value for this secret as well, otherwise it will be derived from the `MASTER_PASSWORD`.
#### Helmfile new object storage: `objectstores.openxchange.*`
@@ -485,7 +604,7 @@ kubectl cp -n ${NAMESPACE} open-xchange-core-mw-default-0:/opt/open-xchange/ox-f
2. Run the upgrade.
3. Continue with the [related post-upgrade steps](#ox-app-suite-fix-up-using-s3-as-storage-for-non-mail-attachments-post-upgrade)
### Post-upgrade to versions &GreaterEqual; v1.6.0
### Post-upgrade to versions v1.6.0
#### OX App Suite fix-up: Using S3 as storage for non mail attachments (post-upgrade)
@@ -526,9 +645,9 @@ ID Type of Job Status Further Information
/opt/open-xchange/sbin/unregisterfilestore -A $MASTER_ADMIN_USER -P $MASTER_ADMIN_PW -i <your_old_filestore_id_from_step_3>
```
## Versions &GreaterEqual; v1.4.0
## Versions v1.4.0
### Pre-upgrade to versions &GreaterEqual; v1.4.0
### Pre-upgrade to versions v1.4.0
#### Helmfile cleanup: `global.additionalMailDomains` as list
@@ -552,9 +671,9 @@ global:
- "sub2.maildomain.de"
```
## Versions &GreaterEqual; v1.3.0
## Versions v1.3.0
### Pre-upgrade to versions &GreaterEqual; v1.3.0
### Pre-upgrade to versions v1.3.0
#### Helmfile new feature: `functional.authentication.ssoFederation`
@@ -562,9 +681,9 @@ global:
Please ensure to configure your IdP federation config details as part of `functional.authentication.ssoFederation`. You can find more details in the "Example configuration" section of [`idp-federation.md`](./enhanced-configuration/idp-federation.md).
## Versions &GreaterEqual; v1.2.0
## Versions v1.2.0
### Pre-upgrade to versions &GreaterEqual; v1.2.0
### Pre-upgrade to versions v1.2.0
#### Helmfile cleanup: Do not configure OX provisioning when no OX installed
@@ -625,9 +744,9 @@ In case you are planning to migrate an existing instance from MariaDB to Postgre
- https://www.xwiki.org/xwiki/bin/view/Documentation/AdminGuide/Backup#HUsingtheXWikiExportfeature
- https://www.xwiki.org/xwiki/bin/view/Documentation/AdminGuide/ImportExport
## Versions &GreaterEqual; v1.1.2
## Versions v1.1.2
### Pre-upgrade to versions &GreaterEqual; v1.1.2
### Pre-upgrade to versions v1.1.2
#### Helmfile feature update: App settings wrapped in `apps.` element
@@ -656,9 +775,9 @@ apps:
enabled: true
```
## Versions &GreaterEqual; v1.1.1
## Versions v1.1.1
### Pre-upgrade to versions &GreaterEqual; v1.1.1
### Pre-upgrade to versions v1.1.1
#### Helmfile feature update: Component specific `storageClassName`
@@ -711,9 +830,9 @@ persistence:
A not yet templated secret was discovered in the Nubus deployment. It is now declared in [`secrets.yaml.gotmpl`](../helmfile/environments/default/secrets.yaml.gotmpl) and can be defined using: `secrets.nubus.masterpassword`. If you define your own secrets, please be sure this new secret is set to the same value as the `MASTER_PASSWORD` environment variable used in your deployment.
## Versions &GreaterEqual; v1.1.0
## Versions v1.1.0
### Pre-upgrade to versions &GreaterEqual; v1.1.0
### Pre-upgrade to versions v1.1.0
#### Helmfile cleanup: Restructured `/helmfile/files/theme` folder
@@ -876,7 +995,7 @@ The update from openDesk v1.0.0 contains Redis 7.4.1, like the other openDesk bu
Please ensure the Redis you are using is updated to at least version 7.4 to support the requirement of OX App Suite.
### Post-upgrade to versions &GreaterEqual; v1.1.0
### Post-upgrade to versions v1.1.0
#### XWiki fix-ups
@@ -902,9 +1021,9 @@ Unfortunately XWiki does not upgrade itself as expected. The bug has been report
You should have now a fully functional XWiki instance with single sign-on and full-text search.
## Versions &GreaterEqual; v1.0.0
## Versions v1.0.0
### Pre-upgrade to versions &GreaterEqual; v1.0.0
### Pre-upgrade to versions v1.0.0
#### Configuration Cleanup: Removal of unnecessary OX-Profiles in Nubus
@@ -1086,7 +1205,7 @@ The IAM admin account `Administrator` is the only member of this group by defaul
If you need other accounts to use the API, please assign them to the aforementioned group.
### Post-upgrade to versions &GreaterEqual; v1.0.0
### Post-upgrade to versions v1.0.0
#### Configuration Improvement: Separate user permission for using Video Conference component
@@ -1118,33 +1237,33 @@ kubectl -n ${NAMESPACE} delete pvc ox-connector-ox-contexts-ox-connector-0
# Automated migrations - Details
## Versions &GreaterEqual; v1.6.0 (automated)
## Versions v1.6.0 (automated)
> [!note]
> Details can be found in [run_5.py](https://gitlab.opencode.de/bmi/opendesk/components/platform-development/images/opendesk-migrations/-/blob/main/odmigs-python/odmigs_runs/run_5.py).
### Versions &GreaterEqual; v1.6.0 migrations-post
### Versions v1.6.0 migrations-post
- Automatically restarts the StatefulSets `ums-provisioning-nats` and `ox-connector` due to a workaround applied on the NATS secrets, see the "Notes" segment of the ["Password seed" heading in getting-started.md](./docs/getting-started.md#password-seed)
> [!note]
> This change aims to prevent authentication failures with NATS in some Pods, which can lead to errors such as: `wait-for-nats Unavailable, waiting 2 seconds. Error: nats: 'Authorization Violation'`.
## Versions &GreaterEqual; v1.2.0 (automated)
## Versions v1.2.0 (automated)
> [!note]
> Details can be found in [run_4.py](https://gitlab.opencode.de/bmi/opendesk/components/platform-development/images/opendesk-migrations/-/blob/main/odmigs-python/odmigs_runs/run_4.py).
### Versions &GreaterEqual; v1.2.0 migrations-pre
### Versions v1.2.0 migrations-pre
- Automatically deletes PVC `group-membership-cache-ums-portal-consumer-0`: With the upgrade the Nubus Portal Consumer no longer requires to be executed with root privileges. The PVC contains files that require root permission to access them, therefore the PVC gets deleted (and re-created) during the upgrade.
- Automatically deletes StatefulSet `ums-portal-consumer`: A bug was fixed in the templating of the Portal Consumer's PVC causing the values in `persistence.storages.nubusPortalConsumer.*` to be ignored. As these values are immutable, we had to delete the whole StatefulSet.
### Versions &GreaterEqual; v1.2.0 migrations-post
### Versions v1.2.0 migrations-post
- Automatically restarts the Deployment `ums-provisioning-udm-transformer` and StatefulSet `ums-provisioning-udm-listener` and deletes the Nubus Provisioning consumer `durable_name:incoming` on stream `stream:incoming`: Due to a bug in Nubus 1.7.0 the `incoming` stream was blocked after the upgrade, the aforementioned measures unblock the stream.
## Versions &GreaterEqual; v1.1.0 (automated)
## Versions v1.1.0 (automated)
With openDesk v1.1.0 the IAM stack supports HA LDAP primary as well as scalable LDAP secondary pods.
@@ -1155,7 +1274,7 @@ creating the config map with the mentioned label.
> [!note]
> Details can be found in [run_3.py](https://gitlab.opencode.de/bmi/opendesk/components/platform-development/images/opendesk-migrations/-/blob/main/odmigs-python/odmigs_runs/run_3.py).
## Versions &GreaterEqual; v1.0.0 (automated)
## Versions v1.0.0 (automated)
The `migrations-pre` and `migrations-post` jobs in the openDesk deployment address the automated migration tasks.

View File

@@ -21,9 +21,10 @@ For more details on Chart validation, please visit: https://helm.sh/docs/topics/
All charts except the ones mentioned below are verifiable:
| Repository | Verifiable |
|-------------------|:----------:|
| open-xchange-repo | no |
| Repository | Verifiable |
| ------------------------- | :--------: |
| collabora-controller-repo | no |
| open-xchange-repo | no |
# Kubernetes security enforcements

View File

@@ -47,7 +47,10 @@ ingress:
- "{{ .Values.global.hosts.collabora }}.{{ .Values.global.domain }}"
podAnnotations:
{{ .Values.annotations.coco.pod | toYaml | nindent 2 }}
intents.otterize.com/service-name: "collabora-controller"
{{- with .Values.annotations.coco.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
securityContext:
allowPrivilegeEscalation: false

View File

@@ -35,7 +35,7 @@ collabora:
{{- end }}
{{- if .Values.apps.collaboraController.enabled }}
--o:indirection_endpoint.url=https://{{ .Values.global.hosts.collabora }}.{{ .Values.global.domain }}/controller/routeToken
--o:monitors.monitor[0]=ws://collabora-controller-cool-controller:9000/controller/ws
--o:monitors.monitor[0]=ws://collabora-controller-cool-controller.{{ .Release.Namespace }}.svc.{{ .Values.cluster.networking.domain }}:9000/controller/ws
--o:monitors.monitor[0][@retryInterval]=5
{{- end }}
username: "collabora-internal-admin"
@@ -110,7 +110,10 @@ ingress:
- "{{ .Values.global.hosts.collabora }}.{{ .Values.global.domain }}"
podAnnotations:
{{ .Values.annotations.collabora.pod | toYaml | nindent 2 }}
intents.otterize.com/service-name: "collabora"
{{- with .Values.annotations.collabora.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
podSecurityContext:
fsGroup: 1001

View File

@@ -55,7 +55,10 @@ persistence:
enabled: false
podAnnotations:
{{ .Values.annotations.cryptpad.pod | toYaml | nindent 2 }}
intents.otterize.com/service-name: "cryptpad"
{{- with .Values.annotations.cryptpad.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
podSecurityContext:
fsGroup: 4001

View File

@@ -0,0 +1,317 @@
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
# SPDX-License-Identifier: Apache-2.0
---
repositories:
# openDesk Element
# Source: https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-element
- name: "element-repo"
keyring: "../../files/gpg-pubkeys/opencode.gpg"
verify: {{ .Values.charts.element.verify }}
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
oci: true
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.element.registry }}/{{ .Values.charts.element.repository }}"
- name: "element-well-known-repo"
keyring: "../../files/gpg-pubkeys/opencode.gpg"
verify: {{ .Values.charts.elementWellKnown.verify }}
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
oci: true
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.elementWellKnown.registry }}/{{ .Values.charts.elementWellKnown.repository }}"
- name: "synapse-web-repo"
keyring: "../../files/gpg-pubkeys/opencode.gpg"
verify: {{ .Values.charts.synapseWeb.verify }}
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
oci: true
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.synapseWeb.registry }}/{{ .Values.charts.synapseWeb.repository }}"
- name: "synapse-repo"
keyring: "../../files/gpg-pubkeys/opencode.gpg"
verify: {{ .Values.charts.synapse.verify }}
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
oci: true
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.synapse.registry }}/{{ .Values.charts.synapse.repository }}"
- name: "synapse-create-account-repo"
keyring: "../../files/gpg-pubkeys/opencode.gpg"
verify: {{ .Values.charts.synapseCreateAccount.verify }}
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
oci: true
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.synapseCreateAccount.registry }}/{{ .Values.charts.synapseCreateAccount.repository }}"
# openDesk Matrix Widgets
# Source: https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-matrix-widgets
- name: "matrix-user-verification-service-repo"
keyring: "../../files/gpg-pubkeys/opencode.gpg"
verify: {{ .Values.charts.matrixUserVerificationService.verify }}
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
oci: true
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.matrixUserVerificationService.registry }}/{{ .Values.charts.matrixUserVerificationService.repository }}"
- name: "matrix-neoboard-widget-repo"
keyring: "../../files/gpg-pubkeys/opencode.gpg"
verify: {{ .Values.charts.matrixNeoboardWidget.verify }}
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
oci: true
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.matrixNeoboardWidget.registry }}/{{ .Values.charts.matrixNeoboardWidget.repository }}"
- name: "matrix-neochoice-widget-repo"
keyring: "../../files/gpg-pubkeys/opencode.gpg"
verify: {{ .Values.charts.matrixNeoboardWidget.verify }}
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
oci: true
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.matrixNeoboardWidget.registry }}/{{ .Values.charts.matrixNeoboardWidget.repository }}"
- name: "matrix-neodatefix-widget-repo"
keyring: "../../files/gpg-pubkeys/opencode.gpg"
verify: {{ .Values.charts.matrixNeodatefixWidget.verify }}
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
oci: true
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.matrixNeodatefixWidget.registry }}/{{ .Values.charts.matrixNeodatefixWidget.repository }}"
- name: "matrix-neodatefix-bot-repo"
keyring: "../../files/gpg-pubkeys/opencode.gpg"
verify: {{ .Values.charts.matrixNeodatefixBot.verify }}
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
oci: true
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.matrixNeodatefixBot.registry }}/{{ .Values.charts.matrixNeodatefixBot.repository }}"
# openDesk Enterprise Repositories
# openDesk Element
# Source: https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-element
- name: "synapse-admin-repo"
keyring: "../../files/gpg-pubkeys/opencode.gpg"
verify: {{ .Values.charts.synapseAdmin.verify }}
username: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_USERNAME" | quote }}
password: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_PASSWORD" | quote }}
oci: true
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDeEnterprise .Values.global.helmRegistry | default .Values.charts.synapseAdmin.registry }}/{{ .Values.charts.synapseAdmin.repository }}"
- name: "synapse-adminbot-web-repo"
keyring: "../../files/gpg-pubkeys/opencode.gpg"
verify: {{ .Values.charts.synapseAdminbotWeb.verify }}
username: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_USERNAME" | quote }}
password: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_PASSWORD" | quote }}
oci: true
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDeEnterprise .Values.global.helmRegistry | default .Values.charts.synapseAdminbotWeb.registry }}/{{ .Values.charts.synapseAdminbotWeb.repository }}"
- name: "synapse-groupsync-repo"
keyring: "../../files/gpg-pubkeys/opencode.gpg"
verify: {{ .Values.charts.synapseGroupsync.verify }}
username: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_USERNAME" | quote }}
password: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_PASSWORD" | quote }}
oci: true
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDeEnterprise .Values.global.helmRegistry | default .Values.charts.synapseGroupsync.registry }}/{{ .Values.charts.synapseGroupsync.repository }}"
- name: "synapse-pipe-repo"
keyring: "../../files/gpg-pubkeys/opencode.gpg"
verify: {{ .Values.charts.synapsePipe.verify }}
username: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_USERNAME" | quote }}
password: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_PASSWORD" | quote }}
oci: true
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDeEnterprise .Values.global.helmRegistry | default .Values.charts.synapsePipe.registry }}/{{ .Values.charts.synapsePipe.repository }}"
releases:
- name: "opendesk-element"
chart: "element-repo/{{ .Values.charts.element.name }}"
version: "{{ .Values.charts.element.version }}"
values:
- "values-element.yaml.gotmpl"
{{- range .Values.customization.release.opendeskElement }}
- {{ . }}
{{- end }}
installed: {{ .Values.apps.element.enabled }}
timeout: 900
- name: "opendesk-well-known"
chart: "element-well-known-repo/{{ .Values.charts.elementWellKnown.name }}"
version: "{{ .Values.charts.elementWellKnown.version }}"
values:
- "values-well-known.yaml.gotmpl"
{{- range .Values.customization.release.opendeskWellKnown }}
- {{ . }}
{{- end }}
installed: {{ .Values.apps.element.enabled }}
timeout: 900
- name: "opendesk-synapse-web"
chart: "synapse-web-repo/{{ .Values.charts.synapseWeb.name }}"
version: "{{ .Values.charts.synapseWeb.version }}"
values:
- "values-synapse-web.yaml.gotmpl"
{{- range .Values.customization.release.opendeskSynapseWeb }}
- {{ . }}
{{- end }}
installed: {{ .Values.apps.element.enabled }}
timeout: 900
- name: "opendesk-synapse"
chart: "synapse-repo/{{ .Values.charts.synapse.name }}"
version: "{{ .Values.charts.synapse.version }}"
values:
- "values-synapse.yaml.gotmpl"
{{- range .Values.customization.release.opendeskSynapse }}
- {{ . }}
{{- end }}
installed: {{ .Values.apps.element.enabled }}
timeout: 900
- name: "opendesk-matrix-user-verification-service-bootstrap"
chart: "synapse-create-account-repo/{{ .Values.charts.synapseCreateAccount.name }}"
version: "{{ .Values.charts.synapseCreateAccount.version }}"
values:
- "values-matrix-user-verification-service-bootstrap.yaml.gotmpl"
{{- range .Values.customization.release.matrixUserVerificationServiceBootstrap }}
- {{ . }}
{{- end }}
installed: {{ .Values.apps.element.enabled }}
timeout: 900
- name: "opendesk-matrix-user-verification-service"
chart: "matrix-user-verification-service-repo/{{ .Values.charts.matrixUserVerificationService.name }}"
version: "{{ .Values.charts.matrixUserVerificationService.version }}"
values:
- "values-matrix-user-verification-service.yaml.gotmpl"
{{- range .Values.customization.release.matrixUserVerificationService }}
- {{ . }}
{{- end }}
installed: {{ .Values.apps.element.enabled }}
timeout: 900
- name: "matrix-neoboard-widget"
chart: "matrix-neoboard-widget-repo/{{ .Values.charts.matrixNeoboardWidget.name }}"
version: "{{ .Values.charts.matrixNeoboardWidget.version }}"
values:
- "values-matrix-neoboard-widget.yaml.gotmpl"
{{- range .Values.customization.release.matrixNeoboardWidget }}
- {{ . }}
{{- end }}
installed: {{ .Values.apps.element.enabled }}
timeout: 900
- name: "matrix-neochoice-widget"
chart: "matrix-neochoice-widget-repo/{{ .Values.charts.matrixNeochoiceWidget.name }}"
version: "{{ .Values.charts.matrixNeochoiceWidget.version }}"
values:
- "values-matrix-neochoice-widget.yaml.gotmpl"
{{- range .Values.customization.release.matrixNeochoiceWidget }}
- {{ . }}
{{- end }}
installed: {{ .Values.apps.element.enabled }}
timeout: 900
- name: "matrix-neodatefix-widget"
chart: "matrix-neodatefix-widget-repo/{{ .Values.charts.matrixNeodatefixWidget.name }}"
version: "{{ .Values.charts.matrixNeodatefixWidget.version }}"
values:
- "values-matrix-neodatefix-widget.yaml.gotmpl"
{{- range .Values.customization.release.matrixNeodatefixWidget }}
- {{ . }}
{{- end }}
installed: {{ .Values.apps.element.enabled }}
timeout: 900
- name: "matrix-neodatefix-bot-bootstrap"
chart: "synapse-create-account-repo/{{ .Values.charts.synapseCreateAccount.name }}"
version: "{{ .Values.charts.synapseCreateAccount.version }}"
values:
- "values-matrix-neodatefix-bot-bootstrap.yaml.gotmpl"
{{- range .Values.customization.release.matrixNeodatefixBotBootstrap }}
- {{ . }}
{{- end }}
installed: {{ .Values.apps.element.enabled }}
timeout: 900
- name: "matrix-neodatefix-bot"
chart: "matrix-neodatefix-bot-repo/{{ .Values.charts.matrixNeodatefixBot.name }}"
version: "{{ .Values.charts.matrixNeodatefixBot.version }}"
values:
- "values-matrix-neodatefix-bot.yaml.gotmpl"
{{- range .Values.customization.release.matrixNeodatefixBot }}
- {{ . }}
{{- end }}
installed: {{ .Values.apps.element.enabled }}
timeout: 900
# openDesk Enterprise Releases
- name: "opendesk-synapse-admin"
chart: "synapse-admin-repo/{{ .Values.charts.synapseAdmin.name }}"
version: "{{ .Values.charts.synapseAdmin.version }}"
values:
- "values-synapse-admin.yaml.gotmpl"
{{- range .Values.customization.release.opendeskSynapseAdmin }}
- {{ . }}
{{- end }}
installed: {{ .Values.apps.elementAdmin.enabled }}
timeout: 900
- name: "opendesk-synapse-adminbot-bootstrap"
chart: "synapse-create-account-repo/{{ .Values.charts.synapseCreateAccount.name }}"
version: "{{ .Values.charts.synapseCreateAccount.version }}"
values:
- "values-synapse-adminbot-bootstrap.yaml.gotmpl"
{{- range .Values.customization.release.opendeskSynapseAdminbotBootstrap }}
- {{ . }}
{{- end }}
installed: {{ .Values.apps.elementAdmin.enabled }}
timeout: 900
- name: "opendesk-synapse-adminbot-pipe"
chart: "synapse-pipe-repo/{{ .Values.charts.synapsePipe.name }}"
version: "{{ .Values.charts.synapsePipe.version }}"
values:
- "values-synapse-adminbot-pipe.yaml.gotmpl"
{{- range .Values.customization.release.opendeskSynapseAdminbotPipe }}
- {{ . }}
{{- end }}
installed: {{ .Values.apps.elementAdmin.enabled }}
timeout: 900
- name: "opendesk-synapse-adminbot-web"
chart: "synapse-adminbot-web-repo/{{ .Values.charts.synapseAdminbotWeb.name }}"
version: "{{ .Values.charts.synapseAdminbotWeb.version }}"
values:
- "values-synapse-adminbot-web.yaml.gotmpl"
{{- range .Values.customization.release.opendeskSynapseAdminbotWeb }}
- {{ . }}
{{- end }}
installed: {{ .Values.apps.elementAdmin.enabled }}
timeout: 900
- name: "opendesk-synapse-auditbot-bootstrap"
chart: "synapse-create-account-repo/{{ .Values.charts.synapseCreateAccount.name }}"
version: "{{ .Values.charts.synapseCreateAccount.version }}"
values:
- "values-synapse-auditbot-bootstrap.yaml.gotmpl"
{{- range .Values.customization.release.opendeskSynapseAuditbotBootstrap }}
- {{ . }}
{{- end }}
installed: {{ .Values.apps.elementAdmin.enabled }}
timeout: 900
- name: "opendesk-synapse-auditbot-pipe"
chart: "synapse-pipe-repo/{{ .Values.charts.synapsePipe.name }}"
version: "{{ .Values.charts.synapsePipe.version }}"
values:
- "values-synapse-auditbot-pipe.yaml.gotmpl"
{{- range .Values.customization.release.opendeskSynapseAuditbotPipe }}
- {{ . }}
{{- end }}
installed: {{ .Values.apps.elementAdmin.enabled }}
timeout: 900
- name: "opendesk-synapse-groupsync"
chart: "synapse-groupsync-repo/{{ .Values.charts.synapseGroupsync.name }}"
version: "{{ .Values.charts.synapseGroupsync.version }}"
values:
- "values-synapse-groupsync.yaml.gotmpl"
{{- range .Values.customization.release.opendeskSynapseGroupsync }}
- {{ . }}
{{- end }}
installed: {{ .Values.apps.elementGroupsync.enabled }}
timeout: 900
commonLabels:
deployStage: "050-components"
component: "element"
...

View File

@@ -0,0 +1,12 @@
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
# SPDX-License-Identifier: Apache-2.0
---
bases:
- "../../bases/environments.yaml.gotmpl"
---
helmfiles:
- path: "./helmfile-child.yaml.gotmpl"
values:
- {{ toYaml .Values | nindent 8 }}
...

View File

@@ -0,0 +1,172 @@
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
# SPDX-License-Identifier: Apache-2.0
---
commonAnnotations:
{{ .Values.annotations.element.common | toYaml | nindent 2 }}
configuration:
endToEndEncryption: true
additionalConfiguration:
logout_redirect_url: "https://{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}/realms/{{ .Values.platform.realm }}/protocol/openid-connect/logout?client_id=opendesk-matrix&post_logout_redirect_uri=https%3A%2F%2F{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}"
"net.nordeck.element_web.module.opendesk":
config:
banner:
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"
portal_logo_svg_url: "https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/univention/portal/icons/logos/domain.svg"
portal_url: "https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/"
custom_css_variables:
--cpd-color-bg-action-primary-rest: {{ .Values.theme.colors.primary | quote }}
--cpd-color-text-action-accent: {{ .Values.theme.colors.primary | quote }}
"net.nordeck.element_web.module.widget_lifecycle":
widget_permissions:
"https://{{ .Values.global.hosts.element }}.{{ .Values.global.domain }}/jitsi.html":
identity_approved: true
"https://{{ .Values.global.hosts.matrixNeoBoardWidget }}.{{ .Values.global.domain }}/*":
preload_approved: true
capabilities_approved:
- org.matrix.msc2762.send.event:net.nordeck.whiteboard.document.create
- org.matrix.msc2762.receive.event:net.nordeck.whiteboard.document.create
- org.matrix.msc2762.send.event:net.nordeck.whiteboard.document.chunk
- org.matrix.msc2762.receive.event:net.nordeck.whiteboard.document.chunk
- org.matrix.msc2762.send.event:net.nordeck.whiteboard.document.snapshot
- org.matrix.msc2762.receive.event:net.nordeck.whiteboard.document.snapshot
- org.matrix.msc2762.receive.state_event:m.room.create
- org.matrix.msc2762.send.state_event:m.room.power_levels#
- org.matrix.msc2762.receive.state_event:m.room.power_levels#
- org.matrix.msc2762.receive.state_event:m.room.member
- org.matrix.msc2762.receive.state_event:m.room.name
- org.matrix.msc2762.send.state_event:net.nordeck.whiteboard
- org.matrix.msc2762.receive.state_event:net.nordeck.whiteboard
- org.matrix.msc2762.send.state_event:net.nordeck.whiteboard.sessions#*
- org.matrix.msc2762.receive.state_event:net.nordeck.whiteboard.sessions
- org.matrix.msc3819.send.to_device:net.nordeck.whiteboard.connection_signaling
- org.matrix.msc3819.receive.to_device:net.nordeck.whiteboard.connection_signaling
- town.robin.msc3846.turn_servers
- org.matrix.msc4039.upload_file
- org.matrix.msc4039.download_file
"https://{{ .Values.global.hosts.matrixNeoChoiceWidget }}.{{ .Values.global.domain }}/*":
preload_approved: true
capabilities_approved:
- org.matrix.msc2762.send.event:net.nordeck.poll.vote
- org.matrix.msc2762.receive.event:net.nordeck.poll.vote
- org.matrix.msc2762.send.state_event:net.nordeck.poll
- org.matrix.msc2762.receive.state_event:net.nordeck.poll
- org.matrix.msc2762.send.state_event:net.nordeck.poll.settings
- org.matrix.msc2762.receive.state_event:net.nordeck.poll.settings
- org.matrix.msc2762.receive.state_event:m.room.create
- org.matrix.msc2762.receive.state_event:m.room.power_levels
- org.matrix.msc2762.receive.state_event:m.room.name
- org.matrix.msc2762.receive.state_event:m.room.member
- org.matrix.msc2762.send.state_event:net.nordeck.poll.group
- org.matrix.msc2762.receive.state_event:net.nordeck.poll.group
- org.matrix.msc2762.send.event:net.nordeck.poll.start
- org.matrix.msc2762.receive.event:net.nordeck.poll.start
"https://{{ .Values.global.hosts.matrixNeoDateFixWidget }}.{{ .Values.global.domain }}/*":
preload_approved: true
identity_approved: true
capabilities_approved:
- org.matrix.msc2931.navigate
- org.matrix.msc2762.timeline:*
- org.matrix.msc2762.receive.state_event:m.room.power_levels
- org.matrix.msc2762.receive.event:m.reaction
- org.matrix.msc2762.receive.state_event:m.room.create
- org.matrix.msc2762.receive.state_event:m.room.tombstone
- org.matrix.msc2762.receive.state_event:m.room.member
- org.matrix.msc2762.send.state_event:m.room.member
- org.matrix.msc2762.receive.state_event:m.room.name
- org.matrix.msc2762.receive.state_event:m.room.topic
- org.matrix.msc2762.receive.state_event:m.space.parent
- org.matrix.msc2762.receive.state_event:m.space.child
- org.matrix.msc2762.receive.state_event:net.nordeck.meetings.metadata
- org.matrix.msc2762.receive.state_event:im.vector.modular.widgets
- org.matrix.msc2762.send.event:net.nordeck.meetings.meeting.create
- org.matrix.msc2762.receive.event:net.nordeck.meetings.meeting.create
- org.matrix.msc2762.send.event:net.nordeck.meetings.breakoutsessions.create
- org.matrix.msc2762.receive.event:net.nordeck.meetings.breakoutsessions.create
- org.matrix.msc2762.send.event:net.nordeck.meetings.meeting.close
- org.matrix.msc2762.receive.event:net.nordeck.meetings.meeting.close
- org.matrix.msc2762.send.event:net.nordeck.meetings.meeting.widgets.handle
- org.matrix.msc2762.receive.event:net.nordeck.meetings.meeting.widgets.handle
- org.matrix.msc2762.send.event:net.nordeck.meetings.meeting.participants.handle
- org.matrix.msc2762.receive.event:net.nordeck.meetings.meeting.participants.handle
- org.matrix.msc2762.send.event:net.nordeck.meetings.meeting.update
- org.matrix.msc2762.receive.event:net.nordeck.meetings.meeting.update
- org.matrix.msc2762.send.event:net.nordeck.meetings.meeting.change.message_permissions
- org.matrix.msc2762.receive.event:net.nordeck.meetings.meeting.change.message_permissions
- org.matrix.msc2762.send.event:net.nordeck.meetings.sub_meetings.send_message
- org.matrix.msc2762.receive.event:net.nordeck.meetings.sub_meetings.send_message
- org.matrix.msc3973.user_directory_search
welcomeUserId: "@meetings-bot:{{ .Values.global.matrixDomain | default .Values.global.domain }}"
containerSecurityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- "ALL"
enabled: true
privileged: false
readOnlyRootFilesystem: true
runAsGroup: 101
runAsNonRoot: true
runAsUser: 101
seccompProfile:
type: "RuntimeDefault"
seLinuxOptions:
{{ .Values.seLinuxOptions.element | toYaml | nindent 4 }}
global:
domain: {{ .Values.global.domain | quote }}
hosts:
{{ .Values.global.hosts | toYaml | nindent 4 }}
imagePullSecrets:
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
image:
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.element.registry | quote }}
repository: {{ .Values.images.element.repository | quote }}
tag: {{ .Values.images.element.tag | quote }}
ingress:
host: "{{ .Values.global.hosts.element }}.{{ .Values.global.domain }}"
enabled: {{ .Values.ingress.enabled }}
ingressClassName: {{ .Values.ingress.ingressClassName | quote }}
tls:
enabled: {{ .Values.ingress.tls.enabled }}
secretName: {{ .Values.ingress.tls.secretName | quote }}
annotations:
{{ .Values.annotations.element.ingress | toYaml | nindent 4 }}
podAnnotations:
intents.otterize.com/service-name: "opendesk-element"
{{- with .Values.annotations.element.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
podSecurityContext:
enabled: true
fsGroup: 101
replicaCount: {{ .Values.replicas.element }}
resources:
{{ .Values.resources.element | toYaml | nindent 2 }}
service:
annotations:
{{ .Values.annotations.element.service | toYaml | nindent 4 }}
serviceAccount:
annotations:
{{ .Values.annotations.element.serviceAccount | toYaml | nindent 4 }}
theme:
title: "Chat - {{ .Values.theme.texts.productName }}"
{{ .Values.theme | toYaml | nindent 2 }}
...

View File

@@ -0,0 +1,75 @@
# SPDX-FileCopyrightText: 2024 Center for Digital Sovereignty of Public Administration (ZenDiS) GmbH
# SPDX-FileCopyrightText: 2023 Federal Ministry of the Interior and Community, PG ZenDiS "Project group for the development of ZenDiS"
# SPDX-License-Identifier: Apache-2.0
---
additionalAnnotations:
{{ .Values.annotations.elementMatrixNeoboardWidget.additional | toYaml | nindent 2 }}
containerSecurityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- "ALL"
enabled: true
privileged: false
readOnlyRootFilesystem: true
runAsGroup: 101
runAsNonRoot: true
runAsUser: 101
seccompProfile:
type: "RuntimeDefault"
seLinuxOptions:
{{ .Values.seLinuxOptions.matrixNeoBoardWidget | toYaml | nindent 4 }}
global:
domain: {{ .Values.global.domain | quote }}
hosts:
{{ .Values.global.hosts | toYaml | nindent 4 }}
imagePullSecrets:
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
image:
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.matrixNeoBoardWidget.registry | quote }}
repository: {{ .Values.images.matrixNeoBoardWidget.repository | quote }}
tag: {{ .Values.images.matrixNeoBoardWidget.tag | quote }}
ingress:
enabled: {{ .Values.ingress.enabled }}
ingressClassName: {{ .Values.ingress.ingressClassName | quote }}
tls:
enabled: {{ .Values.ingress.tls.enabled }}
secretName: {{ .Values.ingress.tls.secretName | quote }}
annotations:
{{ .Values.annotations.elementMatrixNeoboardWidget.ingress | toYaml | nindent 4 }}
podAnnotations:
intents.otterize.com/service-name: "matrix-neoboard-widget"
{{- with .Values.annotations.elementMatrixNeoboardWidget.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
podSecurityContext:
enabled: true
fsGroup: 101
replicaCount: {{ .Values.replicas.matrixNeoBoardWidget }}
resources:
{{ .Values.resources.matrixNeoBoardWidget | toYaml | nindent 2 }}
service:
annotations:
{{ .Values.annotations.elementMatrixNeoboardWidget.service | toYaml | nindent 4 }}
serviceAccount:
annotations:
{{ .Values.annotations.elementMatrixNeoboardWidget.serviceAccount | toYaml | nindent 4 }}
theme:
{{ .Values.theme | toYaml | nindent 2 }}
nginx:
ipv4Only: {{ if eq .Values.cluster.networking.ipFamilies "IPv4" }}true{{ else }}false{{ end }}
...

View File

@@ -0,0 +1,75 @@
# SPDX-FileCopyrightText: 2024 Center for Digital Sovereignty of Public Administration (ZenDiS) GmbH
# SPDX-FileCopyrightText: 2023 Federal Ministry of the Interior and Community, PG ZenDiS "Project group for the development of ZenDiS"
# SPDX-License-Identifier: Apache-2.0
---
additionalAnnotations:
{{ .Values.annotations.elementMatrixNeochoiceWidget.additional | toYaml | nindent 2 }}
containerSecurityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- "ALL"
enabled: true
privileged: false
readOnlyRootFilesystem: true
runAsGroup: 101
runAsNonRoot: true
runAsUser: 101
seccompProfile:
type: "RuntimeDefault"
seLinuxOptions:
{{ .Values.seLinuxOptions.matrixNeoChoiceWidget | toYaml | nindent 4 }}
global:
domain: {{ .Values.global.domain | quote }}
hosts:
{{ .Values.global.hosts | toYaml | nindent 4 }}
imagePullSecrets:
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
image:
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.matrixNeoChoiceWidget.registry | quote }}
repository: {{ .Values.images.matrixNeoChoiceWidget.repository | quote }}
tag: {{ .Values.images.matrixNeoChoiceWidget.tag | quote }}
ingress:
enabled: {{ .Values.ingress.enabled }}
ingressClassName: {{ .Values.ingress.ingressClassName | quote }}
tls:
enabled: {{ .Values.ingress.tls.enabled }}
secretName: {{ .Values.ingress.tls.secretName | quote }}
annotations:
{{ .Values.annotations.elementMatrixNeochoiceWidget.ingress | toYaml | nindent 4 }}
podAnnotations:
intents.otterize.com/service-name: "matrix-neochoice-widget"
{{- with .Values.annotations.elementMatrixNeochoiceWidget.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
podSecurityContext:
enabled: true
fsGroup: 101
replicaCount: {{ .Values.replicas.matrixNeoChoiceWidget }}
service:
annotations:
{{ .Values.annotations.elementMatrixNeochoiceWidget.service | toYaml | nindent 4 }}
serviceAccount:
annotations:
{{ .Values.annotations.elementMatrixNeochoiceWidget.serviceAccount | toYaml | nindent 4 }}
theme:
{{ .Values.theme | toYaml | nindent 2 }}
resources:
{{ .Values.resources.matrixNeoChoiceWidget | toYaml | nindent 2 }}
nginx:
ipv4Only: {{ if eq .Values.cluster.networking.ipFamilies "IPv4" }}true{{ else }}false{{ end }}
...

View File

@@ -0,0 +1,51 @@
# SPDX-FileCopyrightText: 2024 Center for Digital Sovereignty of Public Administration (ZenDiS) GmbH
# SPDX-FileCopyrightText: 2023 Federal Ministry of the Interior and Community, PG ZenDiS "Project group for the development of ZenDiS"
# SPDX-License-Identifier: Apache-2.0
---
cleanup:
deletePodsOnSuccess: {{ .Values.debug.cleanup.deletePodsOnSuccess }}
deletePodsOnSuccessTimeout: {{ .Values.debug.cleanup.deletePodsOnSuccessTimeout }}
configuration:
username: "meetings-bot"
pod: "opendesk-synapse-0"
secretName: "matrix-neodatefix-bot-account"
password: {{ .Values.secrets.matrixNeoDateFixBot.password | quote }}
global:
imagePullSecrets:
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
image:
registry: {{ coalesce .Values.repositories.image.dockerHub .Values.global.imageRegistry .Values.images.synapseCreateUser.registry | quote }}
url: {{ .Values.images.synapseCreateUser.repository | quote }}
tag: {{ .Values.images.synapseCreateUser.tag | quote }}
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
fullnameOverride: "matrix-neodatefix-bot-bootstrap"
podAnnotations:
intents.otterize.com/service-name: "values-matrix-neodatefix-bot-bootstrap"
{{- with .Values.annotations.elementMatrixNeodatefixBotBootstrap.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
securityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- "ALL"
privileged: false
readOnlyRootFilesystem: true
runAsGroup: 101
runAsNonRoot: true
runAsUser: 101
seccompProfile:
type: "RuntimeDefault"
seLinuxOptions:
{{ .Values.seLinuxOptions.synapseCreateUser | toYaml | nindent 4 }}
serviceAccount:
annotations:
{{ .Values.annotations.elementMatrixNeodatefixBotBootstrap.serviceAccount | toYaml | nindent 4 }}
...

View File

@@ -0,0 +1,118 @@
# SPDX-FileCopyrightText: 2024 Center for Digital Sovereignty of Public Administration (ZenDiS) GmbH
# SPDX-FileCopyrightText: 2023 Federal Ministry of the Interior and Community, PG ZenDiS "Project group for the development of ZenDiS"
# SPDX-License-Identifier: Apache-2.0
---
additionalAnnotations:
{{ .Values.annotations.elementMatrixNeodatefixBot.additional | toYaml | nindent 2 }}
global:
domain: {{ .Values.global.domain | quote }}
hosts:
{{ .Values.global.hosts | toYaml | nindent 4 }}
imagePullSecrets:
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
configuration:
bot:
username: "meetings-bot"
display name: "Terminplaner Bot"
openxchangeBaseUrl: "https://{{ .Values.global.hosts.openxchange }}.{{ .Values.global.domain }}"
strings:
breakoutSessionWidgetName: "Breakoutsessions"
calendarRoomName: "Terminplaner"
calendarWidgetName: "Terminplaner"
cockpitWidgetName: "Meeting Steuerung"
jitsiWidgetName: "Videokonferenz"
matrixNeoBoardWidgetName: "Whiteboard"
matrixNeoChoiceWidgetName: "Abstimmungen"
containerSecurityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- "ALL"
enabled: true
privileged: false
readOnlyRootFilesystem: true
runAsGroup: 101
runAsNonRoot: true
runAsUser: 101
seccompProfile:
type: "RuntimeDefault"
seLinuxOptions:
{{ .Values.seLinuxOptions.matrixNeoDateFixBot | toYaml | nindent 4 }}
extraEnvVars:
- name: "ACCESS_TOKEN"
valueFrom:
secretKeyRef:
name: "matrix-neodatefix-bot-account"
key: "access_token"
{{- if .Values.certificate.selfSigned }}
- name: "NODE_EXTRA_CA_CERTS"
value: "/etc/ssl/certs/ca-certificates.crt"
extraVolumes:
- name: "trusted-cert-secret-volume"
secret:
secretName: "opendesk-certificates-ca-tls"
items:
- key: "ca.crt"
path: "ca-certificates.crt"
extraVolumeMounts:
- name: "trusted-cert-secret-volume"
mountPath: "/etc/ssl/certs/ca-certificates.crt"
subPath: "ca-certificates.crt"
{{- end }}
image:
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.matrixNeoDateFixBot.registry | quote }}
repository: {{ .Values.images.matrixNeoDateFixBot.repository | quote }}
tag: {{ .Values.images.matrixNeoDateFixBot.tag | quote }}
ingress:
enabled: {{ .Values.ingress.enabled }}
ingressClassName: {{ .Values.ingress.ingressClassName | quote }}
tls:
enabled: {{ .Values.ingress.tls.enabled }}
secretName: {{ .Values.ingress.tls.secretName | quote }}
annotations:
{{ .Values.annotations.elementMatrixNeodatefixBot.ingress | toYaml | nindent 4 }}
liveness sample:
enabled: true
persistence:
size: {{ .Values.persistence.storages.matrixNeoDateFixBot.size | quote }}
storageClass: {{ coalesce .Values.persistence.storages.matrixNeoDateFixBot.storageClassName .Values.persistence.storageClassNames.RWO | quote }}
annotations:
{{ .Values.annotations.elementMatrixNeodatefixBot.persistence | toYaml | nindent 4 }}
podAnnotations:
intents.otterize.com/service-name: "matrix-neodatefix-bot"
{{- with .Values.annotations.elementMatrixNeodatefixBot.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
podSecurityContext:
enabled: true
fsGroup: 101
readinessProbe:
enabled: true
replicaCount: {{ .Values.replicas.matrixNeoDateFixBot }}
resources:
{{ .Values.resources.matrixNeoDateFixBot | toYaml | nindent 2 }}
service:
annotations:
{{ .Values.annotations.elementMatrixNeodatefixBot.service | toYaml | nindent 4 }}
serviceAccount:
annotations:
{{ .Values.annotations.elementMatrixNeodatefixBot.serviceAccount | toYaml | nindent 4 }}
...

View File

@@ -0,0 +1,80 @@
# SPDX-FileCopyrightText: 2024 Center for Digital Sovereignty of Public Administration (ZenDiS) GmbH
# SPDX-FileCopyrightText: 2023 Federal Ministry of the Interior and Community, PG ZenDiS "Project group for the development of ZenDiS"
# SPDX-License-Identifier: Apache-2.0
---
additionalAnnotations:
{{ .Values.annotations.elementMatrixNeodatefixWidget.additional | toYaml | nindent 2 }}
configuration:
bot:
username: "meetings-bot"
homeserver: {{ .Values.global.matrixDomain | default .Values.global.domain }}
containerSecurityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- "ALL"
enabled: true
privileged: false
readOnlyRootFilesystem: true
runAsGroup: 101
runAsNonRoot: true
runAsUser: 101
seccompProfile:
type: "RuntimeDefault"
seLinuxOptions:
{{ .Values.seLinuxOptions.matrixNeoDateFixWidget | toYaml | nindent 4 }}
global:
domain: {{ .Values.global.domain | quote }}
hosts:
{{ .Values.global.hosts | toYaml | nindent 4 }}
imagePullSecrets:
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
image:
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.matrixNeoDateFixWidget.registry | quote }}
repository: {{ .Values.images.matrixNeoDateFixWidget.repository | quote }}
tag: {{ .Values.images.matrixNeoDateFixWidget.tag | quote }}
ingress:
enabled: {{ .Values.ingress.enabled }}
ingressClassName: {{ .Values.ingress.ingressClassName | quote }}
tls:
enabled: {{ .Values.ingress.tls.enabled }}
secretName: {{ .Values.ingress.tls.secretName | quote }}
annotations:
{{ .Values.annotations.elementMatrixNeodatefixWidget.ingress | toYaml | nindent 4 }}
podAnnotations:
intents.otterize.com/service-name: "matrix-neodatefix-widget"
{{- with .Values.annotations.elementMatrixNeodatefixWidget.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
podSecurityContext:
enabled: true
fsGroup: 101
replicaCount: {{ .Values.replicas.matrixNeoDateFixWidget }}
resources:
{{ .Values.resources.matrixNeoDateFixWidget | toYaml | nindent 2 }}
theme:
{{ .Values.theme | toYaml | nindent 2 }}
service:
annotations:
{{ .Values.annotations.elementMatrixNeodatefixWidget.service | toYaml | nindent 4 }}
serviceAccount:
annotations:
{{ .Values.annotations.elementMatrixNeodatefixWidget.serviceAccount | toYaml | nindent 4 }}
nginx:
ipv4Only: {{ if eq .Values.cluster.networking.ipFamilies "IPv4" }}true{{ else }}false{{ end }}
...

View File

@@ -0,0 +1,53 @@
# SPDX-FileCopyrightText: 2024 Center for Digital Sovereignty of Public Administration (ZenDiS) GmbH
# SPDX-FileCopyrightText: 2023 Federal Ministry of the Interior and Community, PG ZenDiS "Project group for the development of ZenDiS"
# SPDX-License-Identifier: Apache-2.0
---
cleanup:
deletePodsOnSuccess: {{ .Values.debug.cleanup.deletePodsOnSuccess }}
deletePodsOnSuccessTimeout: {{ .Values.debug.cleanup.deletePodsOnSuccessTimeout }}
configuration:
username: "uvs"
pod: "opendesk-synapse-0"
secretName: "opendesk-matrix-user-verification-service-account"
password: {{ .Values.secrets.matrixUserVerificationService.password | quote }}
global:
imagePullSecrets:
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
image:
registry: {{ coalesce .Values.repositories.image.dockerHub .Values.global.imageRegistry .Values.images.synapseCreateUser.registry | quote }}
url: {{ .Values.images.synapseCreateUser.repository | quote }}
tag: {{ .Values.images.synapseCreateUser.tag | quote }}
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
fullnameOverride: "opendesk-matrix-user-verification-service-bootstrap"
podAnnotations:
intents.otterize.com/service-name: "opendesk-matrix-user-verification-service-bootstrap"
{{- with .Values.annotations.elementMatrixUserVerificationServiceBootstrap.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
securityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- "ALL"
privileged: false
readOnlyRootFilesystem: true
runAsGroup: 101
runAsNonRoot: true
runAsUser: 101
seccompProfile:
type: "RuntimeDefault"
seLinuxOptions:
{{ .Values.seLinuxOptions.synapseCreateUser | toYaml | nindent 4 }}
serviceAccount:
annotations:
{{ .Values.annotations.elementMatrixUserVerificationServiceBootstrap.serviceAccount | toYaml | nindent 4 }}
...

View File

@@ -0,0 +1,69 @@
# SPDX-FileCopyrightText: 2024 Center for Digital Sovereignty of Public Administration (ZenDiS) GmbH
# SPDX-FileCopyrightText: 2023 Federal Ministry of the Interior and Community, PG ZenDiS "Project group for the development of ZenDiS"
# SPDX-License-Identifier: Apache-2.0
---
additionalAnnotations:
{{ .Values.annotations.elementMatrixUserVerificationService.additional | toYaml | nindent 2 }}
containerSecurityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- "ALL"
enabled: true
privileged: false
readOnlyRootFilesystem: false
runAsGroup: 1000
runAsNonRoot: true
runAsUser: 1000
seccompProfile:
type: "RuntimeDefault"
seLinuxOptions:
{{ .Values.seLinuxOptions.matrixUserVerificationService | toYaml | nindent 4 }}
extraEnvVars:
- name: "UVS_ACCESS_TOKEN"
valueFrom:
secretKeyRef:
name: "opendesk-matrix-user-verification-service-account"
key: "access_token"
- name: "UVS_DISABLE_IP_BLACKLIST"
value: "true"
global:
domain: {{ .Values.global.domain | quote }}
hosts:
{{ .Values.global.hosts | toYaml | nindent 4 }}
imagePullSecrets:
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
image:
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.matrixUserVerificationService.registry | quote }}
repository: {{ .Values.images.matrixUserVerificationService.repository | quote }}
tag: {{ .Values.images.matrixUserVerificationService.tag | quote }}
podAnnotations:
intents.otterize.com/service-name: "opendesk-matrix-user-verification-service"
{{- with .Values.annotations.elementMatrixUserVerificationService.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
podSecurityContext:
enabled: true
fsGroup: 101
replicaCount: {{ .Values.replicas.matrixUserVerificationService }}
resources:
{{ .Values.resources.matrixUserVerificationService | toYaml | nindent 2 }}
service:
annotations:
{{ .Values.annotations.elementMatrixUserVerificationService.service | toYaml | nindent 4 }}
serviceAccount:
annotations:
{{ .Values.annotations.elementMatrixUserVerificationService.serviceAccount | toYaml | nindent 4 }}
...

View File

@@ -56,7 +56,12 @@ cron:
repository: {{ .Values.images.elementSyncAdmins.repository | quote }}
tag: {{ .Values.images.elementSyncAdmins.tag | quote }}
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
podAnnotations:
intents.otterize.com/service-name: "opendesk-synapse-admin-cron"
#fullnameOverride: "opendesk-synapse-admin"
podAnnotations:
intents.otterize.com/service-name: "opendesk-synapse-admin"
image:
registry: {{ coalesce .Values.repositories.image.registryOpencodeDeEnterprise .Values.global.imageRegistry .Values.images.elementSynapseAdmin.registry | quote }}
repository: {{ .Values.images.elementSynapseAdmin.repository | quote }}

View File

@@ -16,4 +16,6 @@ image:
tag: {{ .Values.images.elementPipe.tag | quote }}
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
fullnameOverride: "opendesk-synapse-adminbot-pipe"
podAnnotations:
intents.otterize.com/service-name: "opendesk-synapse-adminbot-pipe"
...

View File

@@ -20,4 +20,6 @@ ingress:
enabled: {{ .Values.ingress.enabled }}
tls:
secretName: {{ .Values.ingress.tls.secretName | quote }}
podAnnotations:
intents.otterize.com/service-name: "opendesk-synapse-adminbot-web"
...

View File

@@ -16,4 +16,6 @@ image:
tag: {{ .Values.images.elementPipe.tag | quote }}
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
fullnameOverride: "opendesk-synapse-auditbot-pipe"
podAnnotations:
intents.otterize.com/service-name: "opendesk-synapse-auditbot-pipe"
...

View File

@@ -51,4 +51,6 @@ image:
url: {{ .Values.images.elementGroupsync.repository | quote }}
tag: {{ .Values.images.elementGroupsync.tag | quote }}
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
podAnnotations:
intents.otterize.com/service-name: "opendesk-synapse-groupsync"
...

View File

@@ -56,7 +56,10 @@ ingress:
secretName: {{ .Values.ingress.tls.secretName | quote }}
podAnnotations:
{{ .Values.annotations.elementSynapseWeb.pod | toYaml | nindent 2 }}
intents.otterize.com/service-name: "opendesk-synapse-web"
{{- with .Values.annotations.elementSynapseWeb.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
podSecurityContext:
enabled: true

View File

@@ -250,7 +250,10 @@ persistence:
{{ .Values.annotations.elementSynapse.persistence | toYaml | nindent 4 }}
podAnnotations:
{{ .Values.annotations.elementSynapse.pod | toYaml | nindent 2 }}
intents.otterize.com/service-name: "opendesk-synapse"
{{- with .Values.annotations.elementSynapse.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
podSecurityContext:
enabled: true

View File

@@ -49,7 +49,10 @@ ingress:
{{ .Values.annotations.elementWellKnown.ingress | toYaml | nindent 4 }}
podAnnotations:
{{ .Values.annotations.elementWellKnown.pod | toYaml | nindent 2 }}
intents.otterize.com/service-name: "opendesk-well-known"
{{- with .Values.annotations.elementWellKnown.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
podSecurityContext:
enabled: true

View File

@@ -1,9 +1,9 @@
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
# SPDX-FileCopyrightText: 2025 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
# SPDX-License-Identifier: Apache-2.0
---
repositories:
# openDesk Element
# Source: https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-element
# Source: https://github.com/element-hq/ess-helm
- name: "element-repo"
keyring: "../../files/gpg-pubkeys/opencode.gpg"
verify: {{ .Values.charts.element.verify }}
@@ -11,27 +11,6 @@ repositories:
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
oci: true
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.element.registry }}/{{ .Values.charts.element.repository }}"
- name: "element-well-known-repo"
keyring: "../../files/gpg-pubkeys/opencode.gpg"
verify: {{ .Values.charts.elementWellKnown.verify }}
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
oci: true
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.elementWellKnown.registry }}/{{ .Values.charts.elementWellKnown.repository }}"
- name: "synapse-web-repo"
keyring: "../../files/gpg-pubkeys/opencode.gpg"
verify: {{ .Values.charts.synapseWeb.verify }}
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
oci: true
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.synapseWeb.registry }}/{{ .Values.charts.synapseWeb.repository }}"
- name: "synapse-repo"
keyring: "../../files/gpg-pubkeys/opencode.gpg"
verify: {{ .Values.charts.synapse.verify }}
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
oci: true
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.synapse.registry }}/{{ .Values.charts.synapse.repository }}"
- name: "synapse-create-account-repo"
keyring: "../../files/gpg-pubkeys/opencode.gpg"
verify: {{ .Values.charts.synapseCreateAccount.verify }}
@@ -78,39 +57,6 @@ repositories:
oci: true
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDe .Values.global.helmRegistry | default .Values.charts.matrixNeodatefixBot.registry }}/{{ .Values.charts.matrixNeodatefixBot.repository }}"
# openDesk Enterprise Repositories
# openDesk Element
# Source: https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-element
- name: "synapse-admin-repo"
keyring: "../../files/gpg-pubkeys/opencode.gpg"
verify: {{ .Values.charts.synapseAdmin.verify }}
username: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_USERNAME" | quote }}
password: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_PASSWORD" | quote }}
oci: true
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDeEnterprise .Values.global.helmRegistry | default .Values.charts.synapseAdmin.registry }}/{{ .Values.charts.synapseAdmin.repository }}"
- name: "synapse-adminbot-web-repo"
keyring: "../../files/gpg-pubkeys/opencode.gpg"
verify: {{ .Values.charts.synapseAdminbotWeb.verify }}
username: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_USERNAME" | quote }}
password: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_PASSWORD" | quote }}
oci: true
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDeEnterprise .Values.global.helmRegistry | default .Values.charts.synapseAdminbotWeb.registry }}/{{ .Values.charts.synapseAdminbotWeb.repository }}"
- name: "synapse-groupsync-repo"
keyring: "../../files/gpg-pubkeys/opencode.gpg"
verify: {{ .Values.charts.synapseGroupsync.verify }}
username: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_USERNAME" | quote }}
password: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_PASSWORD" | quote }}
oci: true
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDeEnterprise .Values.global.helmRegistry | default .Values.charts.synapseGroupsync.registry }}/{{ .Values.charts.synapseGroupsync.repository }}"
- name: "synapse-pipe-repo"
keyring: "../../files/gpg-pubkeys/opencode.gpg"
verify: {{ .Values.charts.synapsePipe.verify }}
username: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_USERNAME" | quote }}
password: {{ env "OD_ENTERPRISE_PRIVATE_REGISTRY_PASSWORD" | quote }}
oci: true
url: "{{ coalesce .Values.repositories.helm.registryOpencodeDeEnterprise .Values.global.helmRegistry | default .Values.charts.synapsePipe.registry }}/{{ .Values.charts.synapsePipe.repository }}"
releases:
- name: "opendesk-element"
chart: "element-repo/{{ .Values.charts.element.name }}"
@@ -123,39 +69,6 @@ releases:
installed: {{ .Values.apps.element.enabled }}
timeout: 900
- name: "opendesk-well-known"
chart: "element-well-known-repo/{{ .Values.charts.elementWellKnown.name }}"
version: "{{ .Values.charts.elementWellKnown.version }}"
values:
- "values-well-known.yaml.gotmpl"
{{- range .Values.customization.release.opendeskWellKnown }}
- {{ . }}
{{- end }}
installed: {{ .Values.apps.element.enabled }}
timeout: 900
- name: "opendesk-synapse-web"
chart: "synapse-web-repo/{{ .Values.charts.synapseWeb.name }}"
version: "{{ .Values.charts.synapseWeb.version }}"
values:
- "values-synapse-web.yaml.gotmpl"
{{- range .Values.customization.release.opendeskSynapseWeb }}
- {{ . }}
{{- end }}
installed: {{ .Values.apps.element.enabled }}
timeout: 900
- name: "opendesk-synapse"
chart: "synapse-repo/{{ .Values.charts.synapse.name }}"
version: "{{ .Values.charts.synapse.version }}"
values:
- "values-synapse.yaml.gotmpl"
{{- range .Values.customization.release.opendeskSynapse }}
- {{ . }}
{{- end }}
installed: {{ .Values.apps.element.enabled }}
timeout: 900
- name: "opendesk-matrix-user-verification-service-bootstrap"
chart: "synapse-create-account-repo/{{ .Values.charts.synapseCreateAccount.name }}"
version: "{{ .Values.charts.synapseCreateAccount.version }}"
@@ -233,84 +146,6 @@ releases:
installed: {{ .Values.apps.element.enabled }}
timeout: 900
# openDesk Enterprise Releases
- name: "opendesk-synapse-admin"
chart: "synapse-admin-repo/{{ .Values.charts.synapseAdmin.name }}"
version: "{{ .Values.charts.synapseAdmin.version }}"
values:
- "values-synapse-admin.yaml.gotmpl"
{{- range .Values.customization.release.opendeskSynapseAdmin }}
- {{ . }}
{{- end }}
installed: {{ .Values.apps.elementAdmin.enabled }}
timeout: 900
- name: "opendesk-synapse-adminbot-bootstrap"
chart: "synapse-create-account-repo/{{ .Values.charts.synapseCreateAccount.name }}"
version: "{{ .Values.charts.synapseCreateAccount.version }}"
values:
- "values-synapse-adminbot-bootstrap.yaml.gotmpl"
{{- range .Values.customization.release.opendeskSynapseAdminbotBootstrap }}
- {{ . }}
{{- end }}
installed: {{ .Values.apps.elementAdmin.enabled }}
timeout: 900
- name: "opendesk-synapse-adminbot-pipe"
chart: "synapse-pipe-repo/{{ .Values.charts.synapsePipe.name }}"
version: "{{ .Values.charts.synapsePipe.version }}"
values:
- "values-synapse-adminbot-pipe.yaml.gotmpl"
{{- range .Values.customization.release.opendeskSynapseAdminbotPipe }}
- {{ . }}
{{- end }}
installed: {{ .Values.apps.elementAdmin.enabled }}
timeout: 900
- name: "opendesk-synapse-adminbot-web"
chart: "synapse-adminbot-web-repo/{{ .Values.charts.synapseAdminbotWeb.name }}"
version: "{{ .Values.charts.synapseAdminbotWeb.version }}"
values:
- "values-synapse-adminbot-web.yaml.gotmpl"
{{- range .Values.customization.release.opendeskSynapseAdminbotWeb }}
- {{ . }}
{{- end }}
installed: {{ .Values.apps.elementAdmin.enabled }}
timeout: 900
- name: "opendesk-synapse-auditbot-bootstrap"
chart: "synapse-create-account-repo/{{ .Values.charts.synapseCreateAccount.name }}"
version: "{{ .Values.charts.synapseCreateAccount.version }}"
values:
- "values-synapse-auditbot-bootstrap.yaml.gotmpl"
{{- range .Values.customization.release.opendeskSynapseAuditbotBootstrap }}
- {{ . }}
{{- end }}
installed: {{ .Values.apps.elementAdmin.enabled }}
timeout: 900
- name: "opendesk-synapse-auditbot-pipe"
chart: "synapse-pipe-repo/{{ .Values.charts.synapsePipe.name }}"
version: "{{ .Values.charts.synapsePipe.version }}"
values:
- "values-synapse-auditbot-pipe.yaml.gotmpl"
{{- range .Values.customization.release.opendeskSynapseAuditbotPipe }}
- {{ . }}
{{- end }}
installed: {{ .Values.apps.elementAdmin.enabled }}
timeout: 900
- name: "opendesk-synapse-groupsync"
chart: "synapse-groupsync-repo/{{ .Values.charts.synapseGroupsync.name }}"
version: "{{ .Values.charts.synapseGroupsync.version }}"
values:
- "values-synapse-groupsync.yaml.gotmpl"
{{- range .Values.customization.release.opendeskSynapseGroupsync }}
- {{ . }}
{{- end }}
installed: {{ .Values.apps.elementGroupsync.enabled }}
timeout: 900
commonLabels:
deployStage: "050-components"
component: "element"

View File

@@ -1,5 +1,4 @@
# 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: 2025 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
# SPDX-License-Identifier: Apache-2.0
---
bases:

View File

@@ -1,169 +1,82 @@
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
# SPDX-License-Identifier: Apache-2.0
---
commonAnnotations:
{{ .Values.annotations.element.common | toYaml | nindent 2 }}
configuration:
endToEndEncryption: true
additionalConfiguration:
logout_redirect_url: "https://{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}/realms/{{ .Values.platform.realm }}/protocol/openid-connect/logout?client_id=opendesk-matrix&post_logout_redirect_uri=https%3A%2F%2F{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}"
# FROM synapse-minimal-values.yaml
"net.nordeck.element_web.module.opendesk":
config:
banner:
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"
portal_logo_svg_url: "https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/univention/portal/icons/logos/domain.svg"
portal_url: "https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/"
custom_css_variables:
--cpd-color-bg-action-primary-rest: {{ .Values.theme.colors.primary | quote }}
--cpd-color-text-action-accent: {{ .Values.theme.colors.primary | quote }}
"net.nordeck.element_web.module.widget_lifecycle":
widget_permissions:
"https://{{ .Values.global.hosts.element }}.{{ .Values.global.domain }}/jitsi.html":
identity_approved: true
"https://{{ .Values.global.hosts.matrixNeoBoardWidget }}.{{ .Values.global.domain }}/*":
preload_approved: true
capabilities_approved:
- org.matrix.msc2762.send.event:net.nordeck.whiteboard.document.create
- org.matrix.msc2762.receive.event:net.nordeck.whiteboard.document.create
- org.matrix.msc2762.send.event:net.nordeck.whiteboard.document.chunk
- org.matrix.msc2762.receive.event:net.nordeck.whiteboard.document.chunk
- org.matrix.msc2762.send.event:net.nordeck.whiteboard.document.snapshot
- org.matrix.msc2762.receive.event:net.nordeck.whiteboard.document.snapshot
- org.matrix.msc2762.receive.state_event:m.room.create
- org.matrix.msc2762.send.state_event:m.room.power_levels#
- org.matrix.msc2762.receive.state_event:m.room.power_levels#
- org.matrix.msc2762.receive.state_event:m.room.member
- org.matrix.msc2762.receive.state_event:m.room.name
- org.matrix.msc2762.send.state_event:net.nordeck.whiteboard
- org.matrix.msc2762.receive.state_event:net.nordeck.whiteboard
- org.matrix.msc2762.send.state_event:net.nordeck.whiteboard.sessions#*
- org.matrix.msc2762.receive.state_event:net.nordeck.whiteboard.sessions
- org.matrix.msc3819.send.to_device:net.nordeck.whiteboard.connection_signaling
- org.matrix.msc3819.receive.to_device:net.nordeck.whiteboard.connection_signaling
- town.robin.msc3846.turn_servers
- org.matrix.msc4039.upload_file
- org.matrix.msc4039.download_file
"https://{{ .Values.global.hosts.matrixNeoChoiceWidget }}.{{ .Values.global.domain }}/*":
preload_approved: true
capabilities_approved:
- org.matrix.msc2762.send.event:net.nordeck.poll.vote
- org.matrix.msc2762.receive.event:net.nordeck.poll.vote
- org.matrix.msc2762.send.state_event:net.nordeck.poll
- org.matrix.msc2762.receive.state_event:net.nordeck.poll
- org.matrix.msc2762.send.state_event:net.nordeck.poll.settings
- org.matrix.msc2762.receive.state_event:net.nordeck.poll.settings
- org.matrix.msc2762.receive.state_event:m.room.create
- org.matrix.msc2762.receive.state_event:m.room.power_levels
- org.matrix.msc2762.receive.state_event:m.room.name
- org.matrix.msc2762.receive.state_event:m.room.member
- org.matrix.msc2762.send.state_event:net.nordeck.poll.group
- org.matrix.msc2762.receive.state_event:net.nordeck.poll.group
- org.matrix.msc2762.send.event:net.nordeck.poll.start
- org.matrix.msc2762.receive.event:net.nordeck.poll.start
"https://{{ .Values.global.hosts.matrixNeoDateFixWidget }}.{{ .Values.global.domain }}/*":
preload_approved: true
identity_approved: true
capabilities_approved:
- org.matrix.msc2931.navigate
- org.matrix.msc2762.timeline:*
- org.matrix.msc2762.receive.state_event:m.room.power_levels
- org.matrix.msc2762.receive.event:m.reaction
- org.matrix.msc2762.receive.state_event:m.room.create
- org.matrix.msc2762.receive.state_event:m.room.tombstone
- org.matrix.msc2762.receive.state_event:m.room.member
- org.matrix.msc2762.send.state_event:m.room.member
- org.matrix.msc2762.receive.state_event:m.room.name
- org.matrix.msc2762.receive.state_event:m.room.topic
- org.matrix.msc2762.receive.state_event:m.space.parent
- org.matrix.msc2762.receive.state_event:m.space.child
- org.matrix.msc2762.receive.state_event:net.nordeck.meetings.metadata
- org.matrix.msc2762.receive.state_event:im.vector.modular.widgets
- org.matrix.msc2762.send.event:net.nordeck.meetings.meeting.create
- org.matrix.msc2762.receive.event:net.nordeck.meetings.meeting.create
- org.matrix.msc2762.send.event:net.nordeck.meetings.breakoutsessions.create
- org.matrix.msc2762.receive.event:net.nordeck.meetings.breakoutsessions.create
- org.matrix.msc2762.send.event:net.nordeck.meetings.meeting.close
- org.matrix.msc2762.receive.event:net.nordeck.meetings.meeting.close
- org.matrix.msc2762.send.event:net.nordeck.meetings.meeting.widgets.handle
- org.matrix.msc2762.receive.event:net.nordeck.meetings.meeting.widgets.handle
- org.matrix.msc2762.send.event:net.nordeck.meetings.meeting.participants.handle
- org.matrix.msc2762.receive.event:net.nordeck.meetings.meeting.participants.handle
- org.matrix.msc2762.send.event:net.nordeck.meetings.meeting.update
- org.matrix.msc2762.receive.event:net.nordeck.meetings.meeting.update
- org.matrix.msc2762.send.event:net.nordeck.meetings.meeting.change.message_permissions
- org.matrix.msc2762.receive.event:net.nordeck.meetings.meeting.change.message_permissions
- org.matrix.msc2762.send.event:net.nordeck.meetings.sub_meetings.send_message
- org.matrix.msc2762.receive.event:net.nordeck.meetings.sub_meetings.send_message
- org.matrix.msc3973.user_directory_search
welcomeUserId: "@meetings-bot:{{ .Values.global.matrixDomain | default .Values.global.domain }}"
containerSecurityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- "ALL"
deploymentMarkers:
enabled: false
elementAdmin:
enabled: false
elementWeb:
enabled: true
privileged: false
readOnlyRootFilesystem: true
runAsGroup: 101
runAsNonRoot: true
runAsUser: 101
seccompProfile:
type: "RuntimeDefault"
seLinuxOptions:
{{ .Values.seLinuxOptions.element | toYaml | nindent 4 }}
global:
domain: {{ .Values.global.domain | quote }}
hosts:
{{ .Values.global.hosts | toYaml | nindent 4 }}
imagePullSecrets:
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
image:
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.element.registry | quote }}
repository: {{ .Values.images.element.repository | quote }}
tag: {{ .Values.images.element.tag | quote }}
ingress:
host: "{{ .Values.global.hosts.element }}.{{ .Values.global.domain }}"
enabled: {{ .Values.ingress.enabled }}
ingressClassName: {{ .Values.ingress.ingressClassName | quote }}
tls:
enabled: {{ .Values.ingress.tls.enabled }}
secretName: {{ .Values.ingress.tls.secretName | quote }}
annotations:
{{ .Values.annotations.element.ingress | toYaml | nindent 4 }}
podAnnotations:
{{ .Values.annotations.element.pod | toYaml | nindent 2 }}
podSecurityContext:
enabled: true
fsGroup: 101
replicaCount: {{ .Values.replicas.element }}
resources:
{{ .Values.resources.element | toYaml | nindent 2 }}
service:
annotations:
{{ .Values.annotations.element.service | toYaml | nindent 4 }}
serviceAccount:
annotations:
{{ .Values.annotations.element.serviceAccount | toYaml | nindent 4 }}
theme:
title: "Chat - {{ .Values.theme.texts.productName }}"
{{ .Values.theme | toYaml | nindent 2 }}
...
image:
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
registry: {{ coalesce .Values.global.imageRegistry .Values.images.elementWeb.registry | quote }}
repository: {{ .Values.images.elementWeb.repository | quote }}
tag: {{ .Values.images.elementWeb.tag | quote }}
ingress:
className: {{ .Values.ingress.ingressClassName | quote }}
host: "{{ .Values.global.hosts.element }}.{{ .Values.global.domain }}"
tlsSecret: {{ .Values.ingress.tls.secretName | quote }}
#initSecrets:
# # needed for syn2mas
# enabled: false
matrixAuthenticationService:
#
enabled: false
# ingress:
# #host: .Values.global.hosts.synapseMAS .{{ .Values.global.domain }}
# host: mas.{{ .Values.global.domain }}
# postgres:
# database: {{ .Values.databases.synapseMAS.name | quote }}
# host: {{ .Values.databases.synapseMAS.host | quote }}
# password:
# password: {{ .Values.databases.synapseMAS.password | default .Values.secrets.postgresql.matrixMASUser | quote }}
# user: {{ .Values.databases.synapseMAS.username | quote }}
matrixRTC:
enabled: false
serverName: {{ .Values.global.matrixDomain | default .Values.global.domain }}
synapse:
additional:
0-customConfig:
config: |
sso:
client_whitelist:
- https://{{ .Values.global.hosts.element }}.{{ .Values.global.domain }}
oidc_providers:
- idp_id: oidc
idp_name: OIDC
issuer: "https://{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}/realms/{{ .Values.platform.realm }}"
client_id: opendesk-matrix
client_secret: {{ .Values.secrets.keycloak.clientSecret.matrix | quote }}
scopes:
- openid
- opendesk-matrix-scope
allow_existing_users: true
user_mapping_provider:
config:
subject_template: "{{`{{ user.opendesk_useruuid }}`}}"
display_name_template: "{{`{{ user.name }}`}}"
localpart_template: "{{`{{`}} user.{{ if .Values.functional.chat.matrix.profile.useImmutableIdentifierForLocalpart }}opendesk_useruuid{{ else }}opendesk_username{{ end }} {{`}}`}}"
email_template: "{{`{{ user.email }}`}}"
backchannel_logout_enabled: true
backchannel_logout_ignore_sub: true
ingress:
className: {{ .Values.ingress.ingressClassName | quote }}
host: "{{ .Values.global.hosts.synapse }}.{{ .Values.global.domain }}"
tlsSecret: {{ if .Values.global.matrixDomain }}"opendesk-certificates-synapse-tls"{{ else }}"opendesk-certificates-tls"{{ end }}
macaroon:
value: {{ .Values.secrets.synapse.registrationSharedSecret | quote }}
postgres:
database: {{ .Values.databases.synapse.name | quote }}
host: {{ .Values.databases.synapse.host | quote }}
password:
value: {{ .Values.databases.synapse.password | default .Values.secrets.postgresql.matrixUser | quote }}
user: {{ .Values.databases.synapse.username | quote }}
registrationSharedSecret:
value: {{ .Values.secrets.synapse.registrationSharedSecret | quote }}
signingKey:
value: "ed25519 0 bNQOzBUDszff7Ax81z6w0uZ1IPWoxYaazT7emaZEfpw"
workers:
sso-login:
enabled: true
wellKnownDelegation:
enabled: false

View File

@@ -44,7 +44,10 @@ ingress:
{{ .Values.annotations.elementMatrixNeoboardWidget.ingress | toYaml | nindent 4 }}
podAnnotations:
{{ .Values.annotations.elementMatrixNeoboardWidget.pod | toYaml | nindent 2 }}
intents.otterize.com/service-name: "matrix-neoboard-widget"
{{- with .Values.annotations.elementMatrixNeoboardWidget.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
podSecurityContext:
enabled: true

View File

@@ -44,7 +44,10 @@ ingress:
{{ .Values.annotations.elementMatrixNeochoiceWidget.ingress | toYaml | nindent 4 }}
podAnnotations:
{{ .Values.annotations.elementMatrixNeochoiceWidget.pod | toYaml | nindent 2 }}
intents.otterize.com/service-name: "matrix-neochoice-widget"
{{- with .Values.annotations.elementMatrixNeochoiceWidget.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
podSecurityContext:
enabled: true

View File

@@ -25,7 +25,10 @@ image:
fullnameOverride: "matrix-neodatefix-bot-bootstrap"
podAnnotations:
{{ .Values.annotations.elementMatrixNeodatefixBotBootstrap.pod | toYaml | nindent 2 }}
intents.otterize.com/service-name: "values-matrix-neodatefix-bot-bootstrap"
{{- with .Values.annotations.elementMatrixNeodatefixBotBootstrap.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
securityContext:
allowPrivilegeEscalation: false
@@ -42,7 +45,7 @@ securityContext:
seLinuxOptions:
{{ .Values.seLinuxOptions.synapseCreateUser | toYaml | nindent 4 }}
podAnnotations:
{{ .Values.annotations.elementMatrixNeodatefixBotBootstrap.serviceAccount | toYaml | nindent 2 }}
serviceAccount:
annotations:
{{ .Values.annotations.elementMatrixNeodatefixBotBootstrap.serviceAccount | toYaml | nindent 4 }}
...

View File

@@ -90,7 +90,10 @@ persistence:
{{ .Values.annotations.elementMatrixNeodatefixBot.persistence | toYaml | nindent 4 }}
podAnnotations:
{{ .Values.annotations.elementMatrixNeodatefixBot.pod | toYaml | nindent 2 }}
intents.otterize.com/service-name: "matrix-neodatefix-bot"
{{- with .Values.annotations.elementMatrixNeodatefixBot.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
podSecurityContext:
enabled: true

View File

@@ -49,7 +49,10 @@ ingress:
{{ .Values.annotations.elementMatrixNeodatefixWidget.ingress | toYaml | nindent 4 }}
podAnnotations:
{{ .Values.annotations.elementMatrixNeodatefixWidget.pod | toYaml | nindent 2 }}
intents.otterize.com/service-name: "matrix-neodatefix-widget"
{{- with .Values.annotations.elementMatrixNeodatefixWidget.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
podSecurityContext:
enabled: true

View File

@@ -25,7 +25,10 @@ image:
fullnameOverride: "opendesk-matrix-user-verification-service-bootstrap"
podAnnotations:
{{ .Values.annotations.elementMatrixUserVerificationServiceBootstrap.pod | toYaml | nindent 2 }}
intents.otterize.com/service-name: "opendesk-matrix-user-verification-service-bootstrap"
{{- with .Values.annotations.elementMatrixUserVerificationServiceBootstrap.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
securityContext:
allowPrivilegeEscalation: false

View File

@@ -44,7 +44,10 @@ image:
tag: {{ .Values.images.matrixUserVerificationService.tag | quote }}
podAnnotations:
{{ .Values.annotations.elementMatrixUserVerificationService.pod | toYaml | nindent 2 }}
intents.otterize.com/service-name: "opendesk-matrix-user-verification-service"
{{- with .Values.annotations.elementMatrixUserVerificationService.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
podSecurityContext:
enabled: true

View File

@@ -111,10 +111,11 @@ jitsi:
type: "RuntimeDefault"
seLinuxOptions:
{{ .Values.seLinuxOptions.jitsi | toYaml | nindent 8 }}
{{- if .Values.annotations.jitsiWeb.pod }}
podAnnotations:
{{ .Values.annotations.jitsiWeb.pod | toYaml | nindent 6 }}
{{- end }}
intents.otterize.com/service-name: "jitsi-web"
{{- with .Values.annotations.jitsiWeb.pod }}
{{ . | toYaml | nindent 6 }}
{{- end }}
prosody:
image:
repository: "{{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.prosody.registry }}/{{ .Values.images.prosody.repository }}"
@@ -164,10 +165,11 @@ jitsi:
type: "RuntimeDefault"
seLinuxOptions:
{{ .Values.seLinuxOptions.prosody | toYaml | nindent 8 }}
{{- if .Values.annotations.jitsiProsody.pod }}
podAnnotations:
{{ .Values.annotations.jitsiProsody.pod | toYaml | nindent 6 }}
{{- end }}
intents.otterize.com/service-name: "jitsi-prosody"
{{- with .Values.annotations.jitsiProsody.pod }}
{{ . | toYaml | nindent 6 }}
{{- end }}
jicofo:
replicaCount: {{ .Values.replicas.jicofo }}
image:
@@ -191,10 +193,11 @@ jitsi:
type: "RuntimeDefault"
seLinuxOptions:
{{ .Values.seLinuxOptions.jicofo | toYaml | nindent 8 }}
{{- if .Values.annotations.jitsiJicofo.pod }}
podAnnotations:
{{ .Values.annotations.jitsiJicofo.pod | toYaml | nindent 6 }}
{{- end }}
intents.otterize.com/service-name: "jitsi-jicofo"
{{- with .Values.annotations.jitsiJicofo.pod }}
{{ . | toYaml | nindent 6 }}
{{- end }}
jigasi:
replicaCount: {{ .Values.replicas.jigasi }}
enabled: {{ .Values.sip.jigasi.enabled }}
@@ -224,10 +227,11 @@ jitsi:
type: "RuntimeDefault"
seLinuxOptions:
{{ .Values.seLinuxOptions.jigasi | toYaml | nindent 8 }}
{{- if .Values.annotations.jitsiJigasi.pod }}
podAnnotations:
{{ .Values.annotations.jitsiJigasi.pod | toYaml | nindent 6 }}
{{- end }}
intents.otterize.com/service-name: "jitsi-jigasi"
{{- with .Values.annotations.jitsiJigasi.pod }}
{{ . | toYaml | nindent 6 }}
{{- end }}
jvb:
replicaCount: {{ .Values.replicas.jvb }}
# The `useNodeIP` option provided by the upstream charts does not support all relevant scenarios, but since
@@ -260,10 +264,11 @@ jitsi:
type: "RuntimeDefault"
seLinuxOptions:
{{ .Values.seLinuxOptions.jvb | toYaml | nindent 8 }}
{{- if .Values.annotations.jitsiJvb.pod }}
podAnnotations:
{{ .Values.annotations.jitsiJvb.pod | toYaml | nindent 6 }}
{{- end }}
intents.otterize.com/service-name: "jitsi-jvb"
{{- with .Values.annotations.jitsiJvb.pod }}
{{ . | toYaml | nindent 6 }}
{{- end }}
metrics:
prometheusAnnotations:
{{ .Values.annotations.jitsiJvb.metricsPrometheus | toYaml | nindent 8 }}
@@ -288,10 +293,11 @@ jitsi:
# Chart does not allow to template more
capabilities:
add: ["SYS_ADMIN"]
{{- if .Values.annotations.jitsiJibri.pod }}
podAnnotations:
{{ .Values.annotations.jitsiJibri.pod | toYaml | nindent 6 }}
{{- end }}
intents.otterize.com/service-name: "jitsi-jibri"
{{- with .Values.annotations.jitsiJibri.pod }}
{{ . | toYaml | nindent 6 }}
{{- end }}
imagePullSecrets:
{{- range .Values.global.imagePullSecrets }}
- name: {{ . | quote }}

View File

@@ -10,7 +10,7 @@ global:
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
additionalAnnotations:
intents.otterize.com/service-name: "opendesk-nextcloud-php"
intents.otterize.com/service-name: "opendesk-nextcloud-management"
{{- with .Values.annotations.nextcloudNextcloudMgmt.additional }}
{{ . | toYaml | nindent 2}}
{{- end }}

View File

@@ -10,7 +10,6 @@ global:
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
additionalAnnotations:
intents.otterize.com/service-name: "opendesk-nextcloud-notifypush"
{{- with .Values.annotations.nextcloudNotifyPush.additional }}
{{ . | toYaml | nindent 4 }}
{{- end }}
@@ -114,7 +113,10 @@ metrics:
{{ .Values.annotations.nextcloudNotifyPush.serviceMetrics | toYaml | nindent 6 }}
podAnnotations:
{{ .Values.annotations.nextcloudNotifyPush.pod | toYaml | nindent 4 }}
intents.otterize.com/service-name: "opendesk-nextcloud-notifypush"
{{- with .Values.annotations.nextcloudNotifyPush.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
podSecurityContext:
fsGroup: 101
# prometheus:

View File

@@ -39,7 +39,10 @@ exporter:
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
tag: {{ .Values.images.nextcloudExporter.tag | quote }}
podAnnotations:
{{ .Values.annotations.nextcloudExporter.pod | toYaml | nindent 4 }}
intents.otterize.com/service-name: "opendesk-nextcloud-exporter"
{{- with .Values.annotations.nextcloudExporter.pod }}
{{ . | toYaml | nindent 4 }}
{{- end }}
prometheus:
serviceMonitor:
enabled: {{ .Values.monitoring.prometheus.serviceMonitors.enabled }}
@@ -76,7 +79,7 @@ aio:
topologyKey: "kubernetes.io/hostname"
additionalAnnotations:
intents.otterize.com/service-name: "opendesk-nextcloud-aio"
intents.otterize.com/service-name: "opendesk-nextcloud-aio-cron"
{{- with .Values.annotations.nextcloudAio.additional }}
{{ . | toYaml | nindent 4 }}
{{- end }}
@@ -177,7 +180,10 @@ aio:
tls:
secretName: {{ .Values.ingress.tls.secretName | quote }}
podAnnotations:
{{ .Values.annotations.nextcloudAio.pod | toYaml | nindent 4 }}
intents.otterize.com/service-name: "opendesk-nextcloud-aio"
{{- with .Values.annotations.nextcloudAio.pod }}
{{ . | toYaml | nindent 4 }}
{{- end }}
podSecurityContext:
fsGroup: 101
prometheus:

View File

@@ -117,11 +117,20 @@ backend:
seLinuxOptions:
{{ .Values.seLinuxOptions.notesBackend | toYaml | nindent 6 }}
podAnnotations:
{{ .Values.annotations.notesBackend.pod | toYaml | nindent 4 }}
intents.otterize.com/service-name: "impress-backend"
{{- with .Values.annotations.notesBackend.pod }}
{{ . | toYaml | nindent 4 }}
{{- end }}
podAnnotationsCreateUser:
{{ .Values.annotations.notesBackend.createUserJob | toYaml | nindent 4 }}
intents.otterize.com/service-name: "impress-create-user"
{{- with .Values.annotations.notesBackend.createUserJob }}
{{ . | toYaml | nindent 4 }}
{{- end }}
podAnnotationsMigrate:
{{ .Values.annotations.notesBackend.migrateJob | toYaml | nindent 4 }}
intents.otterize.com/service-name: "impress-migrate"
{{- with .Values.annotations.notesBackend.migrateJob }}
{{ . | toYaml | nindent 4 }}
{{- end }}
podSecurityContext:
enabled: true
fsGroup: 1000
@@ -189,7 +198,10 @@ frontend:
seLinuxOptions:
{{ .Values.seLinuxOptions.notesFrontend | toYaml | nindent 6 }}
podAnnotations:
{{ .Values.annotations.notesFrontend.pod | toYaml | nindent 4 }}
intents.otterize.com/service-name: "impress-frontend"
{{- with .Values.annotations.notesFrontend.pod }}
{{ . | toYaml | nindent 4 }}
{{- end }}
podSecurityContext:
enabled: true
fsGroup: 1000
@@ -257,7 +269,10 @@ y-provider:
{{ .Values.annotations.notesYProvider.ingressCollaborationWS | toYaml | nindent 6 }}
ingressClassName: {{ .Values.ingress.ingressClassName }}
podAnnotations:
{{ .Values.annotations.notesYProvider.pod | toYaml | nindent 4 }}
intents.otterize.com/service-name: "impress-y-provider"
{{- with .Values.annotations.notesYProvider.pod }}
{{ . | toYaml | nindent 4 }}
{{- end }}
podSecurityContext:
enabled: true
fsGroup: 1001

View File

@@ -109,7 +109,10 @@ ingress:
{{ .Values.annotations.nubusIntercomService.ingress | toYaml | nindent 4 }}
podAnnotations:
{{ .Values.annotations.nubusIntercomService.pod | toYaml | nindent 2 }}
intents.otterize.com/service-name: "intercom-service"
{{- with .Values.annotations.nubusIntercomService.pod }}
{{ . | toYaml | nindent 2}}
{{- end }}
podSecurityContext:
enabled: true

View File

@@ -42,7 +42,10 @@ configuration:
value: {{ .Values.objectstores.nubus.secretKey | default .Values.secrets.minio.umsUser | quote }}
podAnnotations:
{{ .Values.annotations.nubusNginxS3Gateway.pod | toYaml | nindent 2 }}
intents.otterize.com/service-name: "nubus-nginx-s3-gateway"
{{- with .Values.annotations.nubusNginxS3Gateway.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
resources:
{{ .Values.resources.nginxS3Gateway | toYaml | nindent 2 }}

View File

@@ -183,20 +183,12 @@ keycloak:
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusKeycloak.registry | quote }}
repository: {{ .Values.images.nubusKeycloak.repository }}
tag: {{ .Values.images.nubusKeycloak.tag }}
# NOTE: The subchart "keycloak" does not yet support
# "global.imagePullPolicy". The local configuration can be removed once it
# does have this feature.
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
ingress:
enabled: false
keycloak:
auth:
username: "kcadmin"
# TODO: Pending secrets refactoring to be able to provide the value directly
existingSecret:
name: "ums-opendesk-keycloak-credentials"
keyMapping:
adminPassword: "admin_password"
password: {{ .Values.secrets.keycloak.adminPassword | quote }}
login:
messages:
de:
@@ -274,7 +266,6 @@ nubusTwofaHelpdesk:
nubusNotificationsApi:
enabled: false
additionalAnnotations:
intents.otterize.com/service-name: "ums-notifications-api"
{{- with .Values.annotations.nubusNotificationsApi.additional }}
{{ . | toYaml | nindent 4 }}
{{- end }}
@@ -312,7 +303,10 @@ nubusNotificationsApi:
annotations:
{{ .Values.annotations.nubusNotificationsApi.persistence | toYaml | nindent 6 }}
podAnnotations:
{{ .Values.annotations.nubusNotificationsApi.pod | toYaml | nindent 4 }}
intents.otterize.com/service-name: "ums-notifications-api"
{{- with .Values.annotations.nubusNotificationsApi.pod }}
{{ . | toYaml | nindent 4 }}
{{- end }}
postgresql:
connection:
host: {{ .Values.databases.umsNotificationsApi.host | quote }}
@@ -339,7 +333,6 @@ nubusNotificationsApi:
nubusPortalFrontend:
additionalAnnotations:
intents.otterize.com/service-name: "ums-portal-frontend"
{{- with .Values.annotations.nubusPortalFrontend.additional }}
{{ . | toYaml | nindent 4 }}
{{- end }}
@@ -415,7 +408,10 @@ nubusPortalFrontend:
annotations:
{{ .Values.annotations.nubusPortalFrontend.persistence | toYaml | nindent 6 }}
podAnnotations:
{{ .Values.annotations.nubusPortalFrontend.pod | toYaml | nindent 4 }}
intents.otterize.com/service-name: "ums-portal-frontend"
{{- with .Values.annotations.nubusPortalFrontend.pod }}
{{ . | toYaml | nindent 4 }}
{{- end }}
portalFrontend:
branding:
css: {{ .Values.theme.styles.portal.main | toJson }}
@@ -444,12 +440,6 @@ nubusKeycloakExtensions:
keycloak:
auth:
username: "kcadmin"
# TODO: Pending secrets refactoring in component chart. This will refer to
# the secret generated by the keycloak subchart.
existingSecret:
name: "ums-opendesk-keycloak-credentials"
keyMapping:
adminPassword: "admin_password"
proxy:
additionalAnnotations:
{{ .Values.annotations.nubusKeycloakExtensions.proxyAdditional | toYaml | nindent 6 }}
@@ -457,13 +447,6 @@ nubusKeycloakExtensions:
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusKeycloakExtensionProxy.registry | quote }}
repository: {{ .Values.images.nubusKeycloakExtensionProxy.repository }}
tag: {{ .Values.images.nubusKeycloakExtensionProxy.tag }}
# NOTE: The subchart "keycloak-extensions" does not yet support
# "global.imagePullPolicy".
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
# NOTE: Remove once the keycloak-extensions subchart respects
# "global.imagePullSecrets".
imagePullSecrets:
{{ .Values.global.imagePullSecrets | toYaml | nindent 6 }}
ingress:
annotations:
nginx.org/proxy-buffer-size: "8k"
@@ -559,13 +542,6 @@ nubusKeycloakExtensions:
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusKeycloakExtensionHandler.registry | quote }}
repository: {{ .Values.images.nubusKeycloakExtensionHandler.repository }}
tag: {{ .Values.images.nubusKeycloakExtensionHandler.tag }}
# NOTE: The subchart "keycloak-extensions" does not yet support
# "global.imagePullPolicy".
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
# NOTE: Remove once the keycloak-extensions subchart respects
# "global.imagePullSecrets".
imagePullSecrets:
{{ .Values.global.imagePullSecrets | toYaml | nindent 6 }}
podAnnotations:
intents.otterize.com/service-name: "ums-keycloak-extensions-handler"
{{- with .Values.annotations.nubusKeycloakExtensions.handlerPod }}
@@ -618,7 +594,7 @@ nubusPortalConsumer:
replicaCount: {{ .Values.replicas.umsPortalConsumer }}
resources:
{{ .Values.resources.umsPortalConsumer | toYaml | nindent 4 }}
resourcesWaitForDependency:
initResources:
{{ .Values.resources.umsPortalConsumerDependencies | toYaml | nindent 4 }}
containerSecurityContext:
seccompProfile:
@@ -666,7 +642,6 @@ nubusPortalConsumer:
nubusPortalServer:
additionalAnnotations:
intents.otterize.com/service-name: "ums-portal-server"
{{- with .Values.annotations.nubusPortalServer.additional }}
{{ . | toYaml | nindent 4 }}
{{- end }}
@@ -711,7 +686,10 @@ nubusPortalServer:
annotations:
{{ .Values.annotations.nubusPortalServer.persistence | toYaml | nindent 6 }}
podAnnotations:
{{ .Values.annotations.nubusPortalServer.pod | toYaml | nindent 4 }}
intents.otterize.com/service-name: "ums-portal-server"
{{- with .Values.annotations.nubusPortalServer.pod }}
{{ . | toYaml | nindent 4 }}
{{- end }}
portalServer:
centralNavigation:
enabled: true
@@ -839,7 +817,10 @@ nubusUdmRestApi:
annotations:
{{ .Values.annotations.nubusUdmRestApi.persistence | toYaml | nindent 6 }}
podAnnotations:
{{ .Values.annotations.nubusUdmRestApi.pod | toYaml | nindent 4 }}
intents.otterize.com/service-name: "ums-udm-rest-api"
{{- with .Values.annotations.nubusUdmRestApi.pod }}
{{ . | toYaml | nindent 4 }}
{{- end}}
replicaCount: {{ .Values.replicas.umsUdmRestApi }}
resources:
{{ .Values.resources.umsUdmRestApi | toYaml | nindent 4 }}
@@ -898,7 +879,7 @@ nubusLdapServer:
additionalAnnotations:
{{ .Values.annotations.nubusLdapServer.additional | toYaml | nindent 4 }}
additionalAnnotations:
intents.otterize.com/service-name: "ums-ldap-server"
{{ .Values.annotations.nubusLdapServer.additional | toYaml | nindent 4 }}
dhInitcontainer:
image:
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusLdapServerDhInitContainer.registry | quote }}
@@ -921,7 +902,10 @@ nubusLdapServer:
size: {{ .Values.persistence.storages.nubusLdapServerData.size | quote }}
storageClass: {{ coalesce .Values.persistence.storages.nubusLdapServerData.storageClassName .Values.persistence.storageClassNames.RWO | quote }}
podAnnotations:
{{ .Values.annotations.nubusLdapServer.pod | toYaml | nindent 4 }}
intents.otterize.com/service-name: "ums-ldap-server"
{{- with .Values.annotations.nubusLdapServer.pod }}
{{ . | toYaml | nindent 4 }}
{{- end }}
replicaCountPrimary: {{ .Values.replicas.umsLdapServerPrimary }}
replicaCountSecondary: {{ .Values.replicas.umsLdapServerSecondary }}
replicaCountProxy: {{ .Values.replicas.umsLdapServerProxy }}
@@ -947,7 +931,6 @@ nubusProvisioning:
{{ .Values.annotations.nubusProvisioning.additional | toYaml | nindent 4 }}
api:
additionalAnnotations:
intents.otterize.com/service-name: "ums-provisioning-api"
{{- with .Values.annotations.nubusProvisioning.apiAdditional }}
{{ . | toYaml | nindent 6 }}
{{- end }}
@@ -966,7 +949,10 @@ nubusProvisioning:
auth:
password: {{ .Values.secrets.nubus.provisioning.api.natsPassword | quote}}
podAnnotations:
{{ .Values.annotations.nubusProvisioning.apiPod | toYaml | nindent 6 }}
intents.otterize.com/service-name: "ums-provisioning-api"
{{- with .Values.annotations.nubusProvisioning.apiPod }}
{{ . | toYaml | nindent 6 }}
{{- end }}
resources:
{{ .Values.resources.umsProvisioningApi | toYaml | nindent 6 }}
containerSecurityContext:
@@ -985,7 +971,6 @@ nubusProvisioning:
{{ .Values.seLinuxOptions.umsProvisioning | toYaml | nindent 6 }}
dispatcher:
additionalAnnotations:
intents.otterize.com/service-name: "ums-provisioning-dispatcher"
{{- with .Values.annotations.nubusProvisioning.dispatcherAdditional }}
{{ . | toYaml | nindent 6 }}
{{- end }}
@@ -997,20 +982,24 @@ nubusProvisioning:
auth:
password: {{ .Values.secrets.nubus.provisioning.dispatcherNatsPassword | quote}}
podAnnotations:
{{ .Values.annotations.nubusProvisioning.dispatcherPod | toYaml | nindent 6 }}
intents.otterize.com/service-name: "ums-provisioning-dispatcher"
{{- with .Values.annotations.nubusProvisioning.dispatcherPod }}
{{ . | toYaml | nindent 6 }}
{{- end }}
resources:
{{ .Values.resources.umsProvisioningDispatcher | toYaml | nindent 6 }}
nats:
additionalAnnotations:
intents.otterize.com/service-name: "ums-provisioning-nats"
{{- with .Values.annotations.nubusProvisioning.natsAdditional }}
{{ . | toYaml | nindent 6 }}
{{- end }}
auth:
adminPassword: {{ .Values.secrets.nats.natsAdminPassword | quote }}
config:
cluster:
replicas: {{ .Values.replicas.umsProvisioningNats }}
createUsers:
adminUser:
auth:
password: {{ .Values.secrets.nats.natsAdminPassword | quote }}
containerSecurityContext:
allowPrivilegeEscalation: false
capabilities:
@@ -1030,19 +1019,12 @@ nubusProvisioning:
registry: {{ coalesce .Values.repositories.image.dockerHub .Values.global.imageRegistry .Values.images.nubusNats.registry | quote }}
repository: {{ .Values.images.nubusNats.repository }}
tag: {{ .Values.images.nubusNats.tag }}
# NOTE: The subchart does not yet fully support
# "global.imagePullPolicy". This can be removed once the subchart has
# been adjusted.
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
natsBox:
enabled: {{ or .Values.technical.nubus.provisioning.nats.natsBox.enabled .Values.debug.enabled }}
image:
registry: {{ coalesce .Values.repositories.image.dockerHub .Values.global.imageRegistry .Values.images.nubusNatsBox.registry | quote }}
repository: {{ .Values.images.nubusNatsBox.repository }}
tag: {{ .Values.images.nubusNatsBox.tag }}
# NOTE: The subchart does not yet fully support
# "global.imagePullPolicy". This can be removed once the subchart has
# been adjusted.
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
persistence:
size: {{ .Values.persistence.storages.nubusProvisioningNats.size }}
# storageClassName: -- coalesce .Values.persistence.storages.nubusProvisioningNats.storageClassName .Values.persistence.storageClassNames.RWO | quote --
@@ -1060,10 +1042,12 @@ nubusProvisioning:
serviceAccount:
create: true
podAnnotations:
{{ .Values.annotations.nubusProvisioning.pod | toYaml | nindent 4 }}
intents.otterize.com/service-name: "ums-provisioning-nats"
{{- with .Values.annotations.nubusProvisioning.pod }}
{{ . | toYaml | nindent 4 }}
{{- end }}
prefill:
additionalAnnotations:
intents.otterize.com/service-name: "ums-provisioning-prefill"
{{- with .Values.annotations.nubusProvisioning.prefillAdditional }}
{{ . | toYaml | nindent 6 }}
{{- end }}
@@ -1075,12 +1059,14 @@ nubusProvisioning:
auth:
password: {{ .Values.secrets.nubus.provisioning.prefillNatsPassword | quote}}
podAnnotations:
{{ .Values.annotations.nubusProvisioning.prefillPod | toYaml | nindent 6 }}
intents.otterize.com/service-name: "ums-provisioning-prefill"
{{- with .Values.annotations.nubusProvisioning.prefillPod }}
{{ . | toYaml | nindent 6 }}
{{- end }}
resources:
{{ .Values.resources.umsProvisioningPrefill | toYaml | nindent 6 }}
udmTransformer:
additionalAnnotations:
intents.otterize.com/service-name: "ums-provisioning-udm-transformer"
{{- with .Values.annotations.nubusProvisioning.udmTransformerAdditional }}
{{ . | toYaml | nindent 6 }}
{{- end }}
@@ -1092,7 +1078,10 @@ nubusProvisioning:
auth:
password: {{ .Values.secrets.nubus.provisioning.udmTransformerNatsPassword | quote}}
podAnnotations:
{{ .Values.annotations.nubusProvisioning.udmTransformerPod | toYaml | nindent 6 }}
intents.otterize.com/service-name: "ums-provisioning-udm-transformer"
{{- with .Values.annotations.nubusProvisioning.udmTransformerPod }}
{{ . | toYaml | nindent 6 }}
{{- end }}
resources:
{{ .Values.resources.umsProvisioningUdmTransformer | toYaml | nindent 6 }}
replicaCount:
@@ -1163,7 +1152,10 @@ nubusUdmListener:
size: {{ .Values.persistence.storages.nubusUdmListener.size | quote }}
# storageClass: -- coalesce .Values.persistence.storages.nubusUdmListener.storageClassName .Values.persistence.storageClassNames.RWO | quote --
podAnnotations:
{{ .Values.annotations.nubusUdmListener.pod | toYaml | nindent 4 }}
intents.otterize.com/service-name: "ums-provisioning-udm-listener"
{{- with .Values.annotations.nubusUdmListener.pod }}
{{ . | toYaml | nindent 4 }}
{{- end }}
replicaCount: {{ .Values.replicas.umsUdmListener }}
resources:
{{ .Values.resources.umsUdmListener | toYaml | nindent 4 }}
@@ -1194,6 +1186,8 @@ nubusSelfServiceConsumer:
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusSelfServiceConsumer.registry | quote }}
repository: {{ .Values.images.nubusSelfServiceConsumer.repository }}
tag: {{ .Values.images.nubusSelfServiceConsumer.tag }}
initResources:
{{ .Values.resources.umsSelfserviceConsumer | toYaml | nindent 4 }}
podAnnotations:
intents.otterize.com/service-name: "ums-selfservice-listener"
{{- with .Values.annotations.nubusSelfserviceConsumer.pod }}
@@ -1204,8 +1198,6 @@ nubusSelfServiceConsumer:
password: {{ .Values.secrets.nubus.selfserviceConsumer.provisioningApiPassword | quote}}
resources:
{{ .Values.resources.umsSelfserviceConsumer | toYaml | nindent 4 }}
resourcesWaitForDependency:
{{ .Values.resources.umsSelfserviceConsumer | toYaml | nindent 4 }}
replicaCount: {{ .Values.replicas.umsSelfserviceConsumer }}
serviceAccount:
annotations:
@@ -1219,9 +1211,9 @@ nubusSelfServiceConsumer:
# Nubus services
nubusStackDataUms:
additionalAnnotations:
intents.otterize.com/service-name: "ums-stack-data-ums"
argocd.argoproj.io/hook: "Sync"
argocd.argoproj.io/hook-delete-policy: "BeforeHookCreation"
intents.otterize.com/service-name: "ums-stack-data-ums"
{{- with .Values.annotations.nubusStackDataUms.additional }}
{{ . | toYaml | nindent 4 }}
{{- end }}
@@ -1266,11 +1258,15 @@ nubusStackDataUms:
host: {{ .Values.cache.umsSelfservice.host | quote }}
postgresql:
auth:
database: {{ .Values.databases.umsSelfservice.name | quote }}
username: {{ .Values.databases.umsSelfservice.username | quote }}
connection:
host: {{ .Values.databases.umsSelfservice.host | quote }}
podAnnotations:
{{ .Values.annotations.nubusStackDataUms.pod | toYaml | nindent 4 }}
intents.otterize.com/service-name: "ums-stack-data-ums"
{{- with .Values.annotations.nubusStackDataUms.pod }}
{{ . | toYaml | nindent 4 }}
{{- end }}
resources:
{{ .Values.resources.umsStackDataUms | toYaml | nindent 4 }}
stackDataContext:
@@ -1457,9 +1453,14 @@ nubusUmcServer:
bundled: false
server: {{ .Values.cache.umsSelfservice.host | quote }}
auth:
password: ""
# The memcached connection is not authenticated in openDesk but the umc-server pod needs a secret it can mount.
password: "stub-value"
existingSecret: null
podAnnotations:
{{ .Values.annotations.nubusUmcServer.pod | toYaml | nindent 4 }}
intents.otterize.com/service-name: "ums-umc-server"
{{- with .Values.annotations.nubusUmcServer.pod }}
{{ . | toYaml | nindent 4 }}
{{- end }}
# Ref.: https://docs.software-univention.de/nubus-kubernetes-operation/1.x/en/reference.html#envvar-nubusUmcServer.podManagementPolicy
podManagementPolicy: "{{ if gt .Values.replicas.umsUmcServer 4 }}Parallel{{ else }}OrderedReady{{ end }}"
postgresql:
@@ -1555,7 +1556,10 @@ nubusUmcGateway:
initResources:
{{ .Values.resources.umsUmcGateway | toYaml | nindent 4 }}
podAnnotations:
{{ .Values.annotations.nubusUmcGateway.pod | toYaml | nindent 4 }}
intents.otterize.com/service-name: "ums-umc-gateway"
{{- with .Values.annotations.nubusUmcGateway.pod }}
{{ . | toYaml | nindent 4 }}
{{- end }}
replicaCount: {{ .Values.replicas.umsUmcGateway }}
serviceAccount:
annotations:
@@ -1597,15 +1601,9 @@ nubusKeycloakBootstrap:
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusKeycloakBootstrap.registry | quote }}
repository: {{ .Values.images.nubusKeycloakBootstrap.repository }}
tag: {{ .Values.images.nubusKeycloakBootstrap.tag }}
# NOTE: The subchart does not yet fully support
# "global.imagePullPolicy". This can be removed once the subchart has
# been adjusted.
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
keycloak:
auth:
username: "kcadmin"
existingSecret:
name: "ums-opendesk-keycloak-credentials"
ldap:
auth:
bindDn: {{ printf "uid=ldapsearch_keycloak,cn=users,%s" .Values.ldap.baseDn }}
@@ -1640,9 +1638,6 @@ extraSecrets:
- 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 }}

View File

@@ -84,7 +84,7 @@ config:
managed:
clientScopes: [ 'acr', 'web-origins', 'email', 'profile', 'microprofile-jwt', 'role_list',
'offline_access', 'roles', 'address', 'phone' ]
clients: [ 'guardian-management-api', 'guardian-scripts', 'guardian-ui', 'UMC', 'UMC OIDC', '${client_account}',
clients: [ 'guardian-management-api', 'guardian-scripts', 'guardian-ui', 'UMC OIDC', '${client_account}',
'${client_account-console}', '${client_admin-cli}', '${client_broker}', '${client_realm-management}',
'${client_security-admin-console}' ]
keycloak:

View File

@@ -33,13 +33,18 @@ dovecot:
password:
value: {{ .Values.databases.dovecotACL.password | default .Values.secrets.cassandra.dovecotACLUser | quote }}
keyspace: {{ .Values.databases.dovecotACL.name | quote }}
masterPassword:
value: {{ .Values.secrets.dovecot.sharedMailboxesMasterPassword | quote }}
objectStorage:
bucket: {{ .Values.objectstores.dovecot.bucket | quote }}
cacheTmpfs: {{ if .Values.technical.dovecot.objectStorage.cacheTmpfs }}true{{ else }}false{{ end }}
encryption:
privateKey:
value: {{ requiredEnv "DOVECOT_CRYPT_PRIVATE_KEY" | quote }}
publicKey:
value: {{ requiredEnv "DOVECOT_CRYPT_PUBLIC_KEY" | quote }}
fsCacheSize: {{ .Values.technical.dovecot.objectStorage.fsCacheSize | quote }}
ftsCacheSize: {{ .Values.technical.dovecot.objectStorage.ftsCacheSize | quote }}
fqdn: {{ .Values.objectstores.dovecot.endpoint | default (printf "%s.%s" .Values.global.hosts.minioApi .Values.global.domain) | quote }}
username: {{ .Values.objectstores.dovecot.username | quote }}
password:

View File

@@ -126,7 +126,10 @@ persistence:
{{ .Values.annotations.openxchangeDovecot.persistence | toYaml | nindent 4 }}
podAnnotations:
{{ .Values.annotations.openxchangeDovecot.pod | toYaml | nindent 2 }}
intents.otterize.com/service-name: "open-xchange-dovecot"
{{- with .Values.annotations.openxchangeDovecot.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
resources:
{{ .Values.resources.dovecot | toYaml | nindent 2 }}

View File

@@ -3,6 +3,7 @@
# SPDX-License-Identifier: Apache-2.0
---
additionalAnnotations:
intents.otterize.com/service-name: "open-xchange-bootstrap"
argocd.argoproj.io/hook: "Sync"
argocd.argoproj.io/hook-delete-policy: "HookSucceeded"
{{- with .Values.annotations.openxchangeBootstrap.additional }}

View File

@@ -5,6 +5,7 @@
appsuite:
core-mw:
podAnnotations:
intents.otterize.com/service-name: "open-xchange-core-mw"
logging.open-xchange.com/format: "appsuite-json"
{{- with .Values.annotations.openxchangeEnterpriseContactPicker.appsuiteCoreMwPod }}
{{ . | toYaml | nindent 6 }}

View File

@@ -31,7 +31,10 @@ nextcloud-integration-ui:
- name: {{ . | quote }}
{{- end }}
podAnnotations:
{{ .Values.annotations.openxchangeNextcloudIntegrationUi.pod | toYaml | nindent 4 }}
intents.otterize.com/service-name: "open-xchange-nextcloud-integration-ui"
{{- with .Values.annotations.openxchangeNextcloudIntegrationUi.pod }}
{{ . | toYaml | nindent 4 }}
{{- end }}
replicaCount: {{ .Values.replicas.openxchangeNextcloudIntegrationUI }}
resources:
{{ .Values.resources.openxchangeNextcloudIntegrationUI | toYaml | nindent 4 }}
@@ -66,7 +69,10 @@ public-sector-ui:
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
replicaCount: {{ .Values.replicas.openxchangePublicSectorUI }}
podAnnotations:
{{ .Values.annotations.openxchangePublicSectorUi.pod | toYaml | nindent 4 }}
intents.otterize.com/service-name: "open-xchange-public-sector-ui"
{{- with .Values.annotations.openxchangePublicSectorUi.pod }}
{{ . | toYaml | nindent 4 }}
{{- end }}
resources:
{{ .Values.resources.openxchangePublicSectorUI | toYaml | nindent 4 }}
securityContext:
@@ -311,7 +317,10 @@ appsuite:
jolokiaPassword: {{ .Values.secrets.oxAppSuite.jolokiaPassword | quote }}
hostname: "{{ .Values.global.hosts.openxchange }}.{{ .Values.global.domain }}"
podAnnotations:
{{ .Values.annotations.openxchangeAppsuiteCoreMw.pod | toYaml | nindent 6 }}
intents.otterize.com/service-name: "open-xchange-core-mw"
{{- with .Values.annotations.openxchangeAppsuiteCoreMw.pod }}
{{ . | toYaml | nindent 6 }}
{{- end }}
serviceAccount:
annotations:
{{ .Values.annotations.openxchangeAppsuiteCoreMw.serviceAccount | toYaml | nindent 8 }}
@@ -338,7 +347,10 @@ appsuite:
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
replicaCount: {{ .Values.replicas.openxchangeGotenberg }}
podAnnotations:
{{ .Values.annotations.openxchangeAppsuiteCoreMw.gotenbergPod | toYaml | nindent 8 }}
intents.otterize.com/service-name: "open-xchange-gotenberg"
{{- with .Values.annotations.openxchangeAppsuiteCoreMw.gotenbergPod }}
{{ . | toYaml | nindent 8 }}
{{- end }}
resources:
{{ .Values.resources.openxchangeGotenberg | toYaml | nindent 8 }}
securityContext:
@@ -351,7 +363,6 @@ appsuite:
runAsNonRoot: true
runAsUser: 1001
runAsGroup: 1001
privileged: false
seccompProfile:
type: "RuntimeDefault"
seLinuxOptions:
@@ -769,7 +780,10 @@ appsuite:
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
replicaCount: {{ .Values.replicas.openxchangeCoreUI }}
podAnnotations:
{{ .Values.annotations.openxchangeAppsuiteCoreUi.pod | toYaml | nindent 6 }}
intents.otterize.com/service-name: "open-xchange-core-ui"
{{- with .Values.annotations.openxchangeAppsuiteCoreUi.pod }}
{{ . | toYaml | nindent 6 }}
{{- end }}
resources:
{{ .Values.resources.openxchangeCoreUI | toYaml | nindent 6 }}
securityContext:
@@ -806,7 +820,10 @@ appsuite:
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
overrides: {}
podAnnotations:
{{ .Values.annotations.openxchangeAppsuiteCoreUiMiddleware.pod | toYaml | nindent 6 }}
intents.otterize.com/service-name: "open-xchange-core-ui-middleware"
{{- with .Values.annotations.openxchangeAppsuiteCoreUiMiddleware.pod }}
{{ . | toYaml | nindent 6 }}
{{- end }}
redis: *redisConfiguration
replicaCount: {{ .Values.replicas.openxchangeCoreUIMiddleware }}
resources:
@@ -855,7 +872,10 @@ appsuite:
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
{{- if .Values.annotations.openxchangeAppsuiteCoreDocumentconverter.pod }}
podAnnotations:
{{ .Values.annotations.openxchangeAppsuiteCoreDocumentconverter.pod | toYaml | nindent 6 }}
intents.otterize.com/service-name: "open-xchange-core-documentconverter"
{{- with .Values.annotations.openxchangeAppsuiteCoreDocumentconverter.pod }}
{{ . | toYaml | nindent 6 }}
{{- end }}
{{- end }}
redis: *redisConfiguration
replicaCount: {{ .Values.replicas.openxchangeCoreDocumentConverter }}
@@ -907,7 +927,10 @@ appsuite:
tag: {{ .Values.images.openxchangeCoreGuidedtours.tag | quote }}
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
podAnnotations:
{{ .Values.annotations.openxchangeAppsuiteCoreGuidedtours.pod | toYaml | nindent 6 }}
intents.otterize.com/service-name: "open-xchange-guidedtours"
{{- with .Values.annotations.openxchangeAppsuiteCoreGuidedtours.pod }}
{{ . | toYaml | nindent 6 }}
{{- end }}
replicaCount: {{ .Values.replicas.openxchangeCoreGuidedtours }}
resources:
{{- .Values.resources.openxchangeCoreGuidedtours | toYaml | nindent 6 }}
@@ -951,7 +974,10 @@ appsuite:
secretKey: "."
{{- if .Values.annotations.openxchangeAppsuiteCoreImageconverter.pod }}
podAnnotations:
{{ .Values.annotations.openxchangeAppsuiteCoreImageconverter.pod | toYaml | nindent 6 }}
intents.otterize.com/service-name: "open-xchange-core-imageconverter"
{{- with .Values.annotations.openxchangeAppsuiteCoreImageconverter.pod }}
{{ . | toYaml | nindent 6 }}
{{- end }}
{{- end }}
redis: *redisConfiguration
replicaCount: {{ .Values.replicas.openxchangeCoreImageConverter }}
@@ -987,7 +1013,8 @@ appsuite:
repository: {{ .Values.images.openxchangeGuardUI.repository | quote }}
tag: {{ .Values.images.openxchangeGuardUI.tag | quote }}
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
podAnnotations: {}
podAnnotations:
intents.otterize.com/service-name: "open-xchange-guard-ui"
replicaCount: {{ .Values.replicas.openxchangeGuardUI }}
resources:
{{- .Values.resources.openxchangeGuardUI | toYaml | nindent 6 }}
@@ -1023,7 +1050,10 @@ appsuite:
- name: {{ . | quote }}
{{- end }}
podAnnotations:
{{ .Values.annotations.openxchangeAppsuiteCoreUserGuide.pod | toYaml | nindent 6 }}
intents.otterize.com/service-name: "open-xchange-core-user-guide"
{{- with .Values.annotations.openxchangeAppsuiteCoreUserGuide.pod }}
{{ . | toYaml | nindent 6 }}
{{- end }}
replicaCount: {{ .Values.replicas.openxchangeCoreUserGuide }}
resources:
{{- .Values.resources.openxchangeCoreUserGuide | toYaml | nindent 6 }}

View File

@@ -68,7 +68,10 @@ persistence:
#storageClass: {{ coalesce .Values.persistence.storages.oxConnector.storageClassName .Values.persistence.storageClassNames.RWO | quote }}
podAnnotations:
{{ .Values.annotations.nubusOxConnector.pod | toYaml | nindent 2 }}
intents.otterize.com/service-name: "open-xchange-connector"
{{- with .Values.annotations.nubusOxConnector.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
replicaCount: {{ .Values.replicas.oxConnector }}

View File

@@ -64,11 +64,14 @@ postfix:
password:
value: {{ .Values.smtp.password }}
smtpSASLAuthEnable: "yes"
{{- else }}
smtpSASLAuthEnable: "no"
{{- end }}
allowRelayNets: false
smtpTLSSecurityLevel: "encrypt"
smtpdSASLAuthEnable: "yes"
smtpdSASLSecurityOptions: "noanonymous"
smtpdSASLSecurityOptions: {{ .Values.smtp.security.smtpdSASLSecurityOptions | join ", " | quote }}
smtpSASLSecurityOptions: {{ .Values.smtp.security.smtpSASLSecurityOptions | join ", " | quote }}
smtpdSASLType: "dovecot"
smtpdTLSSecurityLevel: "encrypt"
smtpdTLSCertFile: "/etc/tls/tls.crt"
@@ -78,6 +81,25 @@ postfix:
staticAuthDB:
enabled: false
ldapTransportMaps: []
ldapVirtualAliasMaps:
- host: "ums-ldap-server"
scheme: "ldap"
port: 389
baseDn: "{{ .Values.ldap.baseDn }}"
bindDn: "uid=ldapsearch_postfix,cn=users,{{ .Values.ldap.baseDn }}"
password:
value: {{ .Values.secrets.nubus.ldapSearch.postfix | quote }}
# ldap filter to find groups with mail address
queryFilter: "(&(|(objectClass=univentionMailList)(objectClass=posixGroup))(|(mailPrimaryAddress=%s)(mailAlternativeAddress=%s)))"
# -- use this attribute if the query already returns email addresses of members and no recursive lookup needs to be done
resultAttribute: ""
# -- do a recursive search on the specified attribute if found, should be a DN
specialResultAttribute: "uniqueMember"
# -- return the following attribute from all found leaves when a recursive search is done
leafResultAttribute: "mailPrimaryAddress"
{{- if .Values.antivirus.milter.host }}
smtpdMilters: "inet:{{ .Values.antivirus.milter.host }}:{{ .Values.antivirus.milter.port }}"
{{- else }}
@@ -91,7 +113,10 @@ postfix:
virtualTransport: "lmtps:dovecot:24"
podAnnotations:
{{ .Values.annotations.openxchangePostfix.pod | toYaml | nindent 2 }}
intents.otterize.com/service-name: "open-xchange-postfix"
{{- with .Values.annotations.openxchangePostfix.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
replicaCount: {{ .Values.replicas.postfix }}

View File

@@ -5,7 +5,10 @@ additionalAnnotations:
{{ .Values.annotations.opendeskMigrationsPost.additional | toYaml | nindent 2 }}
podAnnotations:
{{ .Values.annotations.opendeskMigrationsPost.pod | toYaml | nindent 2 }}
intents.otterize.com/service-name: "opendesk-migrations-post"
{{- with .Values.annotations.opendeskMigrationsPost.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
serviceAccount:
annotations:

View File

@@ -74,7 +74,10 @@ job:
enabled: true
podAnnotations:
{{ .Values.annotations.openprojectBootstrap.pod | toYaml | nindent 2 }}
intents.otterize.com/service-name: "opendesk-openproject-bootstrap"
{{- with .Values.annotations.openprojectBootstrap.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
podSecurityContext:
enabled: true

View File

@@ -116,7 +116,10 @@ image:
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
podAnnotations:
{{ .Values.annotations.opendeskServicesStaticFiles.pod | toYaml | nindent 2 }}
intents.otterize.com/service-name: "opendesk-static-files"
{{- with .Values.annotations.opendeskServicesStaticFiles.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
podSecurityContext:
enabled: true

View File

@@ -10,12 +10,18 @@ additionalAnnotations:
{{ .Values.annotations.opendeskServicesOtterize.additional | toYaml | nindent 2 }}
apps:
cassandra:
enabled: {{ .Values.apps.cassandra.enabled }}
certificates:
enabled: {{ .Values.apps.certificates.enabled }}
clamavDistributed:
enabled: {{ .Values.apps.clamavDistributed.enabled }}
clamavSimple:
enabled: {{ .Values.apps.clamavSimple.enabled }}
collabora:
enabled: {{ .Values.apps.collabora.enabled }}
collaboraController:
enabled: {{ .Values.apps.collaboraController.enabled }}
cryptpad:
enabled: {{ .Values.apps.cryptpad.enabled }}
dkimpy:
@@ -24,6 +30,12 @@ apps:
enabled: {{ .Values.apps.dovecot.enabled }}
element:
enabled: {{ .Values.apps.element.enabled }}
elementAdmin:
enabled: {{ .Values.apps.elementAdmin.enabled }}
elementGroupsync:
enabled: {{ .Values.apps.elementGroupsync.enabled }}
home:
enabled: {{ .Values.apps.home.enabled }}
jitsi:
enabled: {{ .Values.apps.jitsi.enabled }}
mariadb:
@@ -42,7 +54,7 @@ apps:
enabled: {{ .Values.apps.nubus.enabled }}
openproject:
enabled: {{ .Values.apps.openproject.enabled }}
oxAppsuite:
oxAppSuite:
enabled: {{ .Values.apps.oxAppSuite.enabled }}
postfix:
enabled: {{ .Values.apps.postfix.enabled }}
@@ -50,6 +62,8 @@ apps:
enabled: {{ .Values.apps.postgresql.enabled }}
redis:
enabled: {{ .Values.apps.redis.enabled }}
staticFiles:
enabled: {{ .Values.apps.staticFiles.enabled }}
xwiki:
enabled: {{ .Values.apps.xwiki.enabled }}

View File

@@ -131,7 +131,10 @@ persistence:
enabled: false
podAnnotations:
{{ .Values.annotations.openproject.pod | toYaml | nindent 2 }}
intents.otterize.com/service-name: "openproject"
{{- with .Values.annotations.openproject.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
postgresql:
bundled: false

View File

@@ -73,8 +73,10 @@ persistence:
storageClass: {{ coalesce .Values.persistence.storages.cassandra.storageClassName .Values.persistence.storageClassNames.RWO | quote }}
podAnnotations:
{{ .Values.annotations.cassandra.pod | toYaml | nindent 2 }}
intents.otterize.com/service-name: "cassandra"
{{- with .Values.annotations.cassandra.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
podSecurityContext:
enabled: true
fsGroup: 1001

View File

@@ -26,7 +26,10 @@ clamd:
tag: {{ .Values.images.clamd.tag | quote }}
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
podAnnotations:
{{ .Values.annotations.servicesExternalClamavDistributed.clamdPod | toYaml | nindent 4 }}
intents.otterize.com/service-name: "clamav-distributed"
{{- with .Values.annotations.servicesExternalClamavDistributed.clamdPod }}
{{ . | toYaml | nindent 4 }}
{{- end }}
podSecurityContext:
enabled: true
fsGroup: 101
@@ -81,7 +84,10 @@ freshclam:
tag: {{ .Values.images.freshclam.tag | quote }}
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
podAnnotations:
{{ .Values.annotations.servicesExternalClamavDistributed.freshclamPod | toYaml | nindent 4 }}
intents.otterize.com/service-name: "clamav-freshclam"
{{- with .Values.annotations.servicesExternalClamavDistributed.freshclamPod }}
{{ . | toYaml | nindent 4 }}
{{- end }}
podSecurityContext:
enabled: true
fsGroup: 101
@@ -129,7 +135,10 @@ icap:
tag: {{ .Values.images.icap.tag | quote }}
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
podAnnotations:
{{ .Values.annotations.servicesExternalClamavDistributed.icapPod | toYaml | nindent 4 }}
intents.otterize.com/service-name: "clamav-icap"
{{- with .Values.annotations.servicesExternalClamavDistributed.icapPod }}
{{ . | toYaml | nindent 4 }}
{{- end }}
podSecurityContext:
enabled: true
fsGroup: 101
@@ -169,7 +178,10 @@ milter:
tag: {{ .Values.images.milter.tag | quote }}
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
podAnnotations:
{{ .Values.annotations.servicesExternalClamavDistributed.milterPod | toYaml | nindent 4 }}
intents.otterize.com/service-name: "clamav-milter"
{{- with .Values.annotations.servicesExternalClamavDistributed.milterPod }}
{{ . | toYaml | nindent 4 }}
{{- end }}
podSecurityContext:
enabled: true
fsGroup: 101

View File

@@ -44,7 +44,10 @@ persistence:
{{ .Values.annotations.servicesExternalClamavSimple.persistence | toYaml | nindent 4 }}
podAnnotations:
{{ .Values.annotations.servicesExternalClamavSimple.pod | toYaml | nindent 2 }}
intents.otterize.com/service-name: "clamav-simple"
{{- with .Values.annotations.servicesExternalClamavSimple.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
podSecurityContext:
enabled: true

View File

@@ -30,7 +30,10 @@ image:
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
podAnnotations:
{{ .Values.annotations.servicesExternalDkimpy.service | toYaml | nindent 2 }}
intents.otterize.com/service-name: "dkimpy-milter"
{{- with .Values.annotations.servicesExternalDkimpy.service }}
{{ . | toYaml | nindent 2 }}
{{- end }}
podSecurityContext:
enabled: true

View File

@@ -78,6 +78,7 @@ persistence:
{{ .Values.annotations.servicesExternalMariadb.persistence | toYaml | nindent 4 }}
podAnnotations:
intents.otterize.com/service-name: "mariadb"
argocd.argoproj.io/hook: "PostSync"
argocd.argoproj.io/hook-delete-policy: "BeforeHookCreation"
{{- with .Values.annotations.servicesExternalMariadb.pod }}

View File

@@ -34,8 +34,10 @@ image:
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
podAnnotations:
{{ .Values.annotations.servicesExternalMemcached.pod | toYaml | nindent 2 }}
intents.otterize.com/service-name: "memcached"
{{- with .Values.annotations.servicesExternalMemcached.pod }}
{{ . | toYaml | nindent 2 }}
{{- end}}
replicaCount: {{ .Values.replicas.memcached }}
resources:

View File

@@ -134,7 +134,10 @@ provisioning:
withLock: false
{{- end }}
podAnnotations:
{{ .Values.annotations.servicesExternalMinio.provisioningPod | toYaml | nindent 4 }}
intents.otterize.com/service-name: "minio-provisioning"
{{- with .Values.annotations.servicesExternalMinio.provisioningPod }}
{{ . | toYaml | nindent 4}}
{{- end }}
policies:
- name: "migrations-bucket-policy"
statements:
@@ -271,7 +274,10 @@ provisioning:
{{ .Values.resources.minio | toYaml | nindent 4 }}
podAnnotations:
{{ .Values.annotations.servicesExternalMinio.pod | toYaml | nindent 2 }}
intents.otterize.com/service-name: "minio"
{{- with .Values.annotations.servicesExternalMinio.pod }}
{{ . | toYaml | nindent 2 }}
{{- end }}
readinessProbe:
enabled: true

View File

@@ -41,7 +41,10 @@ persistence:
{{ .Values.annotations.servicesExternalPostfix.persistence | toYaml | nindent 4 }}
podAnnotations:
{{ .Values.annotations.servicesExternalPostfix.pod | toYaml | nindent 2 }}
intents.otterize.com/service-name: "postfix"
{{- with .Values.annotations.servicesExternalPostfix.pod }}
{{ . | toYaml | nindent 2}}
{{- end}}
podSecurityContext:
enabled: true
@@ -69,6 +72,8 @@ postfix:
password:
value: {{ .Values.smtp.password }}
smtpSASLAuthEnable: "yes"
{{- else }}
smtpSASLAuthEnable: "no"
{{- end }}
# Warning: This setting allows unauthenticated mail relay from relayNets!
allowRelayNets: true
@@ -77,7 +82,8 @@ postfix:
smtpdTLSMandatoryCiphers: "medium"
smtpTLSSecurityLevel: "encrypt"
smtpdSASLAuthEnable: "yes"
smtpdSASLSecurityOptions: "noanonymous"
smtpdSASLSecurityOptions: {{ .Values.smtp.security.smtpdSASLSecurityOptions | join ", " | quote }}
smtpSASLSecurityOptions: {{ .Values.smtp.security.smtpSASLSecurityOptions | join ", " | quote }}
smtpdSASLType: "cyrus"
smtpdTLSSecurityLevel: "may"
smtpdTLSCertFile: "/etc/tls/tls.crt"
@@ -91,6 +97,25 @@ postfix:
password:
value: {{ .Values.secrets.postfix.opendeskSystemPassword | quote }}
ldapTransportMaps: []
ldapVirtualAliasMaps:
- host: "ums-ldap-server"
scheme: "ldap"
port: 389
baseDn: "{{ .Values.ldap.baseDn }}"
bindDn: "uid=ldapsearch_postfix,cn=users,{{ .Values.ldap.baseDn }}"
password:
value: {{ .Values.secrets.nubus.ldapSearch.postfix | quote }}
# ldap filter to find groups with mail address
queryFilter: "(&(|(objectClass=univentionMailList)(objectClass=posixGroup))(|(mailPrimaryAddress=%s)(mailAlternativeAddress=%s)))"
# -- use this attribute if the query already returns email addresses of members and no recursive lookup needs to be done
resultAttribute: ""
# -- do a recursive search on the specified attribute if found, should be a DN
specialResultAttribute: "uniqueMember"
# -- return the following attribute from all found leaves when a recursive search is done
leafResultAttribute: "mailPrimaryAddress"
{{- if .Values.antivirus.milter.host }}
smtpdMilters: "inet:{{ .Values.antivirus.milter.host }}:{{ .Values.antivirus.milter.port }}"
{{- else }}
@@ -106,8 +131,6 @@ postfix:
virtualTransport: "lmtps:dovecot:24"
{{- end }}
podAnnotations: {}
replicaCount: {{ .Values.replicas.postfix }}
resources:

View File

@@ -61,12 +61,18 @@ job:
- username: {{ .Values.databases.synapse.username | quote }}
password: {{ .Values.secrets.postgresql.matrixUser | quote }}
connectionLimit: {{ .Values.databases.synapse.connectionLimit | default .Values.databases.defaults.userConnectionLimit }}
- username: {{ .Values.databases.synapseMAS.username | quote }}
password: {{ .Values.secrets.postgresql.matrixMASUser | quote }}
connectionLimit: {{ .Values.databases.synapse.connectionLimit | default .Values.databases.defaults.userConnectionLimit }}
- username: {{ .Values.databases.umsNotificationsApi.username | quote }}
password: {{ .Values.secrets.postgresql.umsNotificationsApiUser | quote }}
connectionLimit: {{ .Values.databases.umsNotificationsApi.connectionLimit | default .Values.databases.defaults.userConnectionLimit }}
- username: {{ .Values.databases.umsGuardianManagementApi.username | quote }}
password: {{ .Values.secrets.postgresql.umsGuardianManagementApiUser | quote }}
connectionLimit: {{ .Values.databases.umsGuardianManagementApi.connectionLimit | default .Values.databases.defaults.userConnectionLimit }}
- username: {{ .Values.databases.umsAuthSession.username | quote }}
password: {{ .Values.secrets.postgresql.umsAuthSessionUser | quote }}
connectionLimit: {{ .Values.databases.umsAuthSession.connectionLimit | default .Values.databases.defaults.userConnectionLimit }}
- username: {{ .Values.databases.umsSelfservice.username | quote }}
password: {{ .Values.secrets.postgresql.umsSelfserviceUser | quote }}
connectionLimit: {{ .Values.databases.umsSelfservice.connectionLimit | default .Values.databases.defaults.userConnectionLimit }}
@@ -92,10 +98,15 @@ job:
- name: {{ .Values.databases.synapse.name | quote }}
user: {{ .Values.databases.synapse.username | quote }}
additionalParams: "ENCODING 'UTF8' LC_COLLATE='C' LC_CTYPE='C' template=template0"
- name: {{ .Values.databases.synapseMAS.name | quote }}
user: {{ .Values.databases.synapseMAS.username | quote }}
additionalParams: "ENCODING 'UTF8' LC_COLLATE='C' LC_CTYPE='C' template=template0"
- name: {{ .Values.databases.umsGuardianManagementApi.name | quote }}
user: {{ .Values.databases.umsGuardianManagementApi.username | quote }}
- name: {{ .Values.databases.umsNotificationsApi.name | quote }}
user: {{ .Values.databases.umsNotificationsApi.username | quote }}
- name: {{ .Values.databases.umsAuthSession.name | quote }}
user: {{ .Values.databases.umsAuthSession.username | quote }}
- name: {{ .Values.databases.umsSelfservice.name | quote }}
user: {{ .Values.databases.umsSelfservice.username | quote }}
{{ if or (eq .Values.databases.nextcloud.type "postgresql") (eq .Values.databases.nextcloud.type "psql") }}
@@ -115,6 +126,7 @@ persistence:
{{ .Values.annotations.servicesExternalPostgresql.persistence | toYaml | nindent 4 }}
podAnnotations:
intents.otterize.com/service-name: "postgresql"
argocd.argoproj.io/hook: "PostSync"
argocd.argoproj.io/hook-delete-policy: "BeforeHookCreation"
{{- with .Values.annotations.servicesExternalPostgresql.pod}}

View File

@@ -44,7 +44,10 @@ master:
annotations:
{{ .Values.annotations.servicesExternalRedis.masterPersistence | toYaml | nindent 6 }}
podAnnotations:
{{ .Values.annotations.servicesExternalRedis.masterPod | toYaml | nindent 4 }}
intents.otterize.com/service-name: "redis"
{{- with .Values.annotations.servicesExternalRedis.masterPod }}
{{ . | toYaml | nindent 4 }}
{{- end }}
resources:
{{ .Values.resources.redis | toYaml | nindent 4 }}
service:

View File

@@ -6,7 +6,7 @@ charts:
registry: "registry.opencode.de"
repository: "zendis/opendesk-enterprise/components/product-development/charts/opendesk-dovecot-pro"
name: "dovecot"
version: "3.2.0-authcache"
version: "3.2.1"
verify: true
oxAppSuite:
registry: "registry.opencode.de"

View File

@@ -5,7 +5,7 @@ images:
collabora:
registry: "registry.opencode.de"
repository: "zendis/opendesk-enterprise/components/supplier/collabora/images/collabora-online-for-opendesk"
tag: "25.04.5.3.1@sha256:d22407cd3bd83dd832f986a697d81c1a4642f55129c76a5a20e637274ce7bf62"
tag: "25.04.6.3.1@sha256:9ea79433e71db3b9056f47a0c8324a3a4f23f78b2412222991abf63969a714f1"
dovecot:
registry: "registry.opencode.de"
repository: "zendis/opendesk-enterprise/components/supplier/open-xchange/images-mirror/dovecot-pro"

View File

@@ -376,7 +376,12 @@ annotations:
clamdPod: ~
clamdService: ~
clamdServiceAccount: ~
icapCommon: ~
icapPod: ~
icapService: ~
icapServiceAccount: ~
freshclamCommon: ~
freshclamPod: ~
freshclamService: ~
freshclamServiceAccount: ~
milterCommon: ~

View File

@@ -65,7 +65,7 @@ charts:
registry: "registry.opencode.de"
repository: "zendis/opendesk-enterprise/components/supplier/collabora/charts-mirror"
name: "cool-controller"
version: "1.1.6"
version: "1.1.10"
verify: false
cryptpad:
# providerCategory: "Supplier"
@@ -97,28 +97,20 @@ charts:
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/charts/opendesk-dovecot"
name: "dovecot"
version: "3.2.0"
version: "3.2.1"
verify: true
element:
# providerCategory: "Platform"
# providerResponsible: "openDesk"
# upstreamRegistry: "https://registry.opencode.de"
# upstreamRepository: "bmi/opendesk/components/platform-development/charts/opendesk-element/opendesk-element"
# providerCategory: "Supplier"
# providerResponsible: "Element"
# upstreamRegistry: "https://ghcr.io/element-hq/ess-helm"
# upstreamRepository: "matrix-stack"
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
# upstreamMirrorStartFrom: ["25", "11", "0"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/charts/opendesk-element"
name: "opendesk-element"
version: "6.1.7"
verify: true
elementWellKnown:
# providerCategory: "Platform"
# providerResponsible: "openDesk"
# upstreamRegistry: "https://registry.opencode.de"
# upstreamRepository: "bmi/opendesk/components/platform-development/charts/opendesk-element/opendesk-well-known"
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/charts/opendesk-element"
name: "opendesk-well-known"
version: "6.1.7"
verify: true
repository: "bmi/opendesk/components/supplier/element/charts-mirror"
name: "matrix-stack"
version: "25.11.0"
verify: false
home:
# providerCategory: "Platform"
# providerResponsible: "openDesk"
@@ -149,7 +141,7 @@ charts:
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/charts/opendesk-jitsi"
name: "opendesk-jitsi"
version: "3.3.2"
version: "3.4.0"
verify: true
mariadb:
# providerCategory: "Platform"
@@ -321,7 +313,7 @@ charts:
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/charts-mirror"
name: "nubus"
version: "1.14.0"
version: "1.15.2"
verify: true
opendeskAlerts:
# providerCategory: "Platform"
@@ -361,7 +353,7 @@ charts:
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/charts/opendesk-static-files"
name: "opendesk-static-files"
version: "4.1.0"
version: "4.1.1"
verify: true
openproject:
# providerCategory: "Supplier"
@@ -437,7 +429,7 @@ charts:
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/charts/opendesk-postfix"
name: "postfix"
version: "5.0.1"
version: "5.0.2"
verify: true
postgresql:
# providerCategory: "Platform"
@@ -459,34 +451,6 @@ charts:
name: "redis"
version: "18.6.1"
verify: true
synapse:
# providerCategory: "Supplier"
# providerResponsible: "Element"
# upstreamRegistry: "https://registry.opencode.de"
# upstreamRepository: "bmi/opendesk/components/platform-development/charts/opendesk-element/opendesk-synapse"
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/charts/opendesk-element"
name: "opendesk-synapse"
version: "6.1.7"
verify: true
synapseAdmin:
# Enterprise Component
# providerCategory: "Supplier"
# providerResponsible: "Element"
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/charts/opendesk-element"
name: "opendesk-synapse-admin"
version: "5.0.1"
verify: true
synapseAdminbotWeb:
# Enterprise Component
# providerCategory: "Supplier"
# providerResponsible: "Element"
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/charts/opendesk-element"
name: "opendesk-synapse-adminbot-web"
version: "5.0.1"
verify: true
synapseCreateAccount:
# providerCategory: "Platform"
# providerResponsible: "openDesk"
@@ -497,34 +461,6 @@ charts:
name: "opendesk-synapse-create-account"
version: "6.1.7"
verify: true
synapseGroupsync:
# Enterprise Component
# providerCategory: "Supplier"
# providerResponsible: "Element"
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/charts/opendesk-element"
name: "opendesk-synapse-groupsync"
version: "5.0.1"
verify: true
synapsePipe:
# Enterprise Component
# providerCategory: "Supplier"
# providerResponsible: "Element"
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/charts/opendesk-element"
name: "opendesk-synapse-pipe"
version: "5.0.1"
verify: true
synapseWeb:
# providerCategory: "Platform"
# providerResponsible: "openDesk"
# upstreamRegistry: "https://registry.opencode.de"
# upstreamRepository: "bmi/opendesk/components/platform-development/charts/opendesk-element/opendesk-synapse-web"
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/charts/opendesk-element"
name: "opendesk-synapse-web"
version: "6.1.7"
verify: true
xwiki:
# providerCategory: "Supplier"
# providerResponsible: "XWiki"
@@ -536,5 +472,5 @@ charts:
repository: "bmi/opendesk/components/supplier/xwiki/charts-mirror"
name: "xwiki"
version: "1.4.4"
verify: false
verify: true
...

View File

@@ -99,6 +99,29 @@ databases:
connectionPoolMin: "3"
connectionPoolMax: "5"
connectionLimit: ~
synapseMAS:
type: "postgresql"
name: "matrixMAS"
host: "postgresql"
port: 5432
username: "matrix_mas_user"
password: ""
requireAuth: []
channelBinding: "prefer"
connectTimeout: 10
clientEncoding: "auto"
keepalives: 1
keepalivesIdle: 10
keepalivesInterval: 10
keepalivesCount: 3
replication: false
gssencmode: "prefer"
sslmode: "prefer"
sslcompression: 0
sslMinProtocolVersion: "TLSv1.2"
connectionPoolMin: "3"
connectionPoolMax: "5"
connectionLimit: ~
umsAuthSession:
type: "postgresql"
name: "nubus_authsession"

View File

@@ -3,5 +3,5 @@
---
global:
systemInformation:
releaseVersion: "v1.9.0"
releaseVersion: "v1.10.0"
...

View File

@@ -15,7 +15,7 @@ global:
#
mailDomain: {{ env "MAIL_DOMAIN" | quote }}
## Define additional mail domains, comma separated, e.g. domain1.de,domain2.de
## Optional list of additional mail domains
#
additionalMailDomains: []

View File

@@ -50,14 +50,14 @@ images:
# upstreamRepository: "bmi/opendesk/components/supplier/collabora/images/collabora-online-for-opendesk"
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/collabora/images/collabora-online-for-opendesk"
tag: "25.04.5.3.1@sha256:0e1ccf43308121c657936510de27244057c3826777a491495a0f7e55a196bc59"
tag: "25.04.6.3.1@sha256:ade67ba25db8909308a0f498364c62172b482dfc1b4f80e33c1b01f7c164d8ac"
collaboraController:
# Enterprise Component
# providerCategory: "Supplier"
# providerResponsible: "Collabora"
registry: "registry.opencode.de"
repository: "zendis/opendesk-enterprise/components/supplier/collabora/images-mirror/cool-controller"
tag: "1.1.3@sha256:552b63fd748ec873bd286c4d9ea0cf675f349f35a9ca2a69d2962336e4bc5f83"
tag: "1.1.6@sha256:7935f21bf75cdddbbbd01754d8d0458014a68ab64b08121c8fca7a2715e0d85b"
cryptpad:
# providerCategory: "Supplier"
# providerResponsible: "XWiki"
@@ -92,12 +92,16 @@ images:
registry: "registry-1.docker.io"
repository: "alpine/k8s"
tag: "1.34.0@sha256:b5f6edfeac5279f3e182d938d1ffecb62f7c980756ac4b6b66d7f0d566782f77"
element:
elementAdmin:
# providerCategory: "Supplier"
# providerResponsible: "Element"
# upstreamRegistry: "https://oci.element.io"
# upstreamRepository: "element-admin"
# upstreamMirrorTagFilterRegEx: '(\d+)\.(\d+)\.(\d+)$'
# upstreamMirrorStartFrom: ["0", "1", "8"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/element/images/opendesk-element-web"
tag: "v1.12.0@sha256:a2ff739dc3eee008a5046c4d3a8721f4dd2a27dd6c80a12cb9baf64525c9b617"
repository: "bmi/opendesk/components/supplier/element/images-mirror/element-admin"
tag: "0.1.8@sha256:ac3878337c7061b799948afb85d5c18074191ab752974b3c8ece185ea934c0d1"
elementAdminBot:
# Enterprise Component
# providerCategory: "Supplier"
@@ -119,13 +123,6 @@ images:
registry: "registry.opencode.de"
repository: "zendis/opendesk-enterprise/components/supplier/element/images-mirror/pipe"
tag: "6.3.1@sha256:7f487af25f220d31aa987665f9d1393b42e925c6b1a7e0458daaa91e8e7bf0c4"
elementSynapseAdmin:
# Enterprise Component
# providerCategory: "Supplier"
# providerResponsible: "Element"
registry: "registry.opencode.de"
repository: "zendis/opendesk-enterprise/components/supplier/element/images-mirror/synapse_admin"
tag: "v16.105.5-24.10@sha256:563979fc69162adf93f1286cf79dcbe58adf878a0e4e9332044e5ab6a7170350"
elementSyncAdmins:
# Enterprise Component
# providerCategory: "Supplier"
@@ -133,6 +130,16 @@ images:
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/images/opendesk-element-syncadmins"
tag: "1.0.5@sha256:ae0e18eadea762e11f8edacc52285742a5c4ed6e2e92bfa32ec5638e377e7b7b"
elementWeb:
# providerCategory: "Supplier"
# providerResponsible: "Element"
# upstreamRegistry: "https://ghcr.io"
# upstreamRepository: "element-hq/element-web"
# upstreamMirrorTagFilterRegEx: 'v(\d+)\.(\d+)\.(\d+)$'
# upstreamMirrorStartFrom: ["1", "12", "2"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/element/images-mirror/element-web"
tag: "1.12.3@sha256:c32818c43fd361d8440e46a86b51a7e3092a094502e2f097ec9b8fd93ccb3a85"
freshclam:
# providerCategory: "Community"
# providerResponsible: "openDesk"
@@ -168,7 +175,7 @@ images:
# upstreamMirrorStartFrom: ["8922"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/nordeck/images-mirror/jibri"
tag: "stable-10431@sha256:21ae6f3e9139ca1beea630756060b66f1a6221005f45e35df35d4bf9f69a4cc3"
tag: "stable-10590@sha256:c6e10bc418084c2e1664e76bdddb525db34ba5f140af5a9fe9dd5c4f7637a492"
jicofo:
# providerCategory: "Supplier"
# providerResponsible: "Nordeck"
@@ -178,7 +185,7 @@ images:
# upstreamMirrorStartFrom: ["8922"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/nordeck/images-mirror/jicofo"
tag: "stable-10431@sha256:6857b0cad627cde79f6e21c1c40843b14d70dd43e627537c60449d448ce14769"
tag: "stable-10590@sha256:a30e9e09fdc39d88bc8cc8a4e83a32bb6bf58914abfb44290439afaf4c72e4a8"
jigasi:
# providerCategory: "Supplier"
# providerResponsible: "Nordeck"
@@ -188,7 +195,7 @@ images:
# upstreamMirrorStartFrom: ["9955"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/nordeck/images-mirror/jigasi"
tag: "stable-10431@sha256:9bcb35444296ab007b24a8ccecd6c1eacc0f01fccf4223e7f8ac340464f4a52e"
tag: "stable-10590@sha256:0596e603eb1b4909e8df97be00649848f2b1b85b7cbb7d5e3065ba482a231d49"
jitsi:
# providerCategory: "Supplier"
# providerResponsible: "Nordeck"
@@ -198,7 +205,7 @@ images:
# upstreamMirrorStartFrom: ["8922"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/nordeck/images-mirror/web"
tag: "stable-10431@sha256:47f57fb67d95a2d3b5fa6edf93916b4922e1599278c0f9dd16cc30f432c75511"
tag: "stable-10590@sha256:ae90a61975f7f7d498051ce9e0d7310117ee3f869dcc8c947a005214b253582d"
jitsiKeycloakAdapter:
# providerCategory: "Supplier"
# providerResponsible: "Nordeck"
@@ -208,7 +215,7 @@ images:
# upstreamMirrorStartFrom: ["2023", "12", "14"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/nordeck/images-mirror/jitsi-keycloak-adapter"
tag: "v20250911@sha256:716fb9ba2e866d74cbbd6241a8c75335e48ba25ec2d35f4678e83dd3156bc87c"
tag: "v20251119@sha256:2df703ff789be841f984142120e5a31dfd60cfe112a8d8d548ecc92e1401f005"
jitsiPatchJVB:
# providerCategory: "Community"
# providerResponsible: "openDesk"
@@ -228,7 +235,7 @@ images:
# upstreamMirrorStartFrom: ["8922"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/nordeck/images-mirror/jvb"
tag: "stable-10431@sha256:64f8a368f593a30d5388d9643b1b0af7b4a09f03f6e585e50cdbff398b5f8918"
tag: "stable-10590@sha256:651021ddd4fe1ca29848d96d5813a1ea71b3dbf3587b14a13968ec0e62de2f0c"
mariadb:
# providerCategory: "Community"
# providerResponsible: "openDesk"
@@ -237,6 +244,44 @@ images:
registry: "registry-1.docker.io"
repository: "library/mariadb"
tag: "10.6.21@sha256:8a16204dc96c08ed0ee2c52c0f9324aa5d2dd0e43ad23a471d447a39f75765b5"
matrixAuthenticationService:
# providerCategory: "Supplier"
# providerResponsible: "Element"
# upstreamRegistry: "https://ghcr.io"
# upstreamRepository: "element-hq/matrix-authentication-service"
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
# upstreamMirrorStartFrom: ["1", "5", "0"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/element/images-mirror/matrix-authentication-service"
tag: "1.5.0@sha256:6c4ecc128668ae3cbf9cb319ee45ad45c0f01a96adca4841d10e662dd4a7fdc1"
matrixHaproxy:
# providerCategory: "Community"
# providerResponsible: "openDesk"
# upstreamRegistry: "https://registry-1.docker.io"
# upstreamRepository: "library/haproxy"
registry: "registry-1.docker.io"
repository: "library/haproxy"
tag: "3.2-alpine@sha256:f36a98e862b839cff180f0cbaf96ce71c1f2b61e6914f94e8e861c9fad755be5"
matrixLkJwtService:
# providerCategory: "Supplier"
# providerResponsible: "Element"
# upstreamRegistry: "https://ghcr.io"
# upstreamRepository: "element-hq/lk-jwt-service"
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
# upstreamMirrorStartFrom: ["0", "3", "0"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/element/images-mirror/lk-jwt-service"
tag: "0.3.0@sha256:52357326970d3f3e3cf6e9c33766e49cf2665e2cd57842e29a5c298514bd2e58"
matrixSyn2Mas:
# providerCategory: "Supplier"
# providerResponsible: "Element"
# upstreamRegistry: "https://ghcr.io"
# upstreamRepository: "element-hq/matrix-authentication-service"
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)-debug$'
# upstreamMirrorStartFrom: ["1", "5", "0"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/element/images-mirror/matrix-authentication-service"
tag: "1.5.0-debug@sha256:8809ab9c22c5cfed682fbf5de79190cf15e2ee8607d3f83d69859c01744aba97"
matrixNeoBoardWidget:
# providerCategory: "Supplier"
# providerResponsible: "Nordeck"
@@ -277,6 +322,16 @@ images:
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/nordeck/images-mirror/matrix-meetings-widget"
tag: "1.7.2@sha256:f876267ed81148ece68cc95bdad7be9c3cce89ce944dbf1b97161e16f72c0cda"
matrixTools:
# providerCategory: "Supplier"
# providerResponsible: "Element"
# upstreamRegistry: "https://ghcr.io"
# upstreamRepository: "element-hq/ess-helm/matrix-tools"
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
# upstreamMirrorStartFrom: ["0", "5", "6"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/element/images-mirror/matrix-tools"
tag: "0.5.6@sha256:ba7f3de19a082d11416d5ab9c8aa280af6ab04f139995ea59462a107def12379"
matrixUserVerificationService:
# providerCategory: "Supplier"
# providerResponsible: "Element"
@@ -380,7 +435,7 @@ images:
# upstreamMirrorStartFrom: ["0", "34", "2"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/blocklist-cleanup"
tag: "0.40.0@sha256:1b4d388196b144327bc55376225675b1df8d23fdaffc85bb9e350c3c94fa0eb5"
tag: "0.41.4@sha256:6313e41aaebb6904ca461896ac9633eb05b33bf30b87d83d81852935e8cf0302"
nubusDataLoader:
# providerCategory: "Supplier"
# providerResponsible: "Univention"
@@ -390,7 +445,7 @@ images:
# upstreamMirrorStartFrom: ["0", "41", "5"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/data-loader"
tag: "0.99.0@sha256:52ef05c1e682e6c706f70632206be1b427a1a346a32ae3bff1566386f75e68af"
tag: "0.99.20@sha256:37af6f2a8ed7b5156e01f126c83797c70485353673d92b60d904af97bd309b0c"
nubusGuardianAuthorizationApi:
# providerCategory: "Supplier"
# providerResponsible: "Univention"
@@ -400,7 +455,7 @@ images:
# 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"
tag: "3.0.0@sha256:d2849b25ddd0322e1bef6c1e7b16f59fb63f35b0924f99f200bc22de834d9a2d"
nubusGuardianManagementApi:
# providerCategory: "Supplier"
# providerResponsible: "Univention"
@@ -410,7 +465,7 @@ images:
# 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"
tag: "3.0.0@sha256:f3c9af13d50632a7e2232f675408b5559fb9ca314b7babf367cf4db80b62ebea"
nubusGuardianManagementUi:
# providerCategory: "Supplier"
# providerResponsible: "Univention"
@@ -420,7 +475,7 @@ images:
# 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"
tag: "3.0.0@sha256:b90d496a323353c71e29938a6b1980655fb3aefe53bab455da865e3202b7f0f8"
nubusGuardianProvisioning:
# providerCategory: "Supplier"
# providerResponsible: "Univention"
@@ -440,7 +495,7 @@ images:
# upstreamMirrorStartFrom: ["0", "0", "1"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/keycloak"
tag: "0.2.5@sha256:499006904d262bdd334b54583c359c7e34b521697d5fda32ea977d856bfa93d2"
tag: "0.4.1@sha256:482f3108ce775bb028cefa763a21d7af71b3d55e2e1800724ab9cabcd60ba2c6"
nubusKeycloakBootstrap:
# providerCategory: "Supplier"
# providerResponsible: "Univention"
@@ -450,7 +505,7 @@ images:
# upstreamMirrorStartFrom: ["0", "1", "0"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/keycloak-bootstrap"
tag: "0.17.5@sha256:08e2aa0bc0eb7b4bb80498e71ae21ee3de74eb985b46e7c3dd1502e96312d080"
tag: "0.19.10@sha256:29dbac967a71c11f2f2920a1a4c109b473fe5edf542a2f5b9dc843a4c0c29fe6"
nubusKeycloakExtensionHandler:
# providerCategory: "Supplier"
# providerResponsible: "Univention"
@@ -460,7 +515,7 @@ images:
# upstreamMirrorStartFrom: ["0", "0", "3"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/keycloak-handler"
tag: "0.20.0@sha256:227c7cba4eee15c626abbc77ca06b8b61a9dece04c986a9fa2e97b13d0458fe0"
tag: "0.23.2@sha256:2a67c9ace51a610397776c17f3542231c9fbce411cfa56d9346b47f66478e416"
nubusKeycloakExtensionProxy:
# providerCategory: "Supplier"
# providerResponsible: "Univention"
@@ -470,7 +525,7 @@ images:
# upstreamMirrorStartFrom: ["0", "0", "3"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/keycloak-proxy"
tag: "0.20.0@sha256:bd075d33c16926ab4c123ac3a8673209664647f35324dfdebd95c6662ee05b2c"
tag: "0.23.2@sha256:03a05abd9b759ddf2fa537d61e09a54f1a772121f391e136000eeed44a254189"
nubusLdapNotifier:
# providerCategory: "Supplier"
# providerResponsible: "Univention"
@@ -480,7 +535,7 @@ images:
# upstreamMirrorStartFrom: ["0", "8", "2"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/ldap-notifier"
tag: "0.47.0@sha256:1d00e0bb1575defce42c84eb5139b5b4f7d0942111b339044c2bdf58ed0b025e"
tag: "0.47.5@sha256:cc8edd9dfa3cf552396bc1ada9a8a18e2db33b53ab1705bfc392c4a423cfeb96"
nubusLdapServer:
# providerCategory: "Supplier"
# providerResponsible: "Univention"
@@ -490,7 +545,7 @@ images:
# upstreamMirrorStartFrom: ["0", "8", "2"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/ldap-server"
tag: "0.47.0@sha256:3be012680b2da2db4ac468ae948d8514622a245b4e3e00385bbf778e836720b1"
tag: "0.47.5@sha256:1a81ef8431aa6a7b021032ce57e5907e27c69dc6603b455793911a7d581889e8"
nubusLdapServerDhInitContainer:
# providerCategory: 'Community'
# providerResponsible: 'Univention'
@@ -498,7 +553,7 @@ images:
# upstreamRepository: 'natsio/nats-box'
registry: "registry-1.docker.io"
repository: "natsio/nats-box"
tag: "0.16.0-nonroot@sha256:f486ca86dfc9b72a2310ea720994a94ce55e447ad01daccd2fb33d61f322dc51"
tag: "0.18.1-nonroot@sha256:ec2f58b953916b4804d6636bf6a625bab7894d1b71319bc7865b3e70ab5e3f6f"
nubusLdapServerLeaderElector:
# providerCategory: "Supplier"
# providerResponsible: "Univention"
@@ -508,7 +563,7 @@ images:
# upstreamMirrorStartFrom: ["0", "29", "1"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/ldap-server-elector"
tag: "0.47.0@sha256:9b6754e7213f1fa13a12cb593bfe718643f6945ad111bbe1d5f71d7ce5729225"
tag: "0.47.5@sha256:abf2e9af9c8d22dde23144cb6344b5e9b0e39d778d28e70d97b0f1b82dd28a5d"
nubusLdapUpdateUniventionObjectIdentifier:
# providerCategory: "Supplier"
# providerResponsible: "Univention"
@@ -518,7 +573,7 @@ images:
# upstreamMirrorStartFrom: ["0", "34", "2"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/ldap-update-univention-object-identifier"
tag: "0.40.0@sha256:1ad952c039140ef1985712201f7bae7cbe9eba66086e0d3f475759e1c181b843"
tag: "0.41.4@sha256:c27e4d4cf5a15607c249c8d917e57f698d4d5388967c1ff6151185957eacb779"
nubusNats:
# providerCategory: 'Community'
# providerResponsible: 'Univention'
@@ -526,7 +581,7 @@ images:
# upstreamRepository: 'library/nats'
registry: "registry-1.docker.io"
repository: "library/nats"
tag: "2.10.26@sha256:736d575e60135ce1d50fc206675d48d0e57dcaa0704f696f0cb4b5f6dadd49d7"
tag: "2.11.9@sha256:4e97bea2e69ffe4449cdc9b4c7fa707984aa9a4c090bf2faf5441cb6c97c99a4"
nubusNatsBox:
# providerCategory: 'Community'
# providerResponsible: 'Univention'
@@ -534,7 +589,7 @@ images:
# upstreamRepository: 'natsio/nats-box'
registry: "registry-1.docker.io"
repository: "natsio/nats-box"
tag: "0.16.0-nonroot@sha256:f486ca86dfc9b72a2310ea720994a94ce55e447ad01daccd2fb33d61f322dc51"
tag: "0.18.1-nonroot@sha256:ec2f58b953916b4804d6636bf6a625bab7894d1b71319bc7865b3e70ab5e3f6f"
nubusNatsReloader:
# providerCategory: 'Community'
# providerResponsible: 'Univention'
@@ -542,7 +597,7 @@ images:
# upstreamRepository: 'natsio/nats-server-config-reloader'
registry: "registry-1.docker.io"
repository: "natsio/nats-server-config-reloader"
tag: "0.17.1@sha256:f364bb8330d3430666ca09f17c6a43bfaefde32f0f3e79d4a41c588c29936e99"
tag: "0.18.3@sha256:41271dc1b9e1027867ee0e63aa2866c89ca8272a4f88991f6ebec34eb12dee3b"
nubusNotificationsApi:
# providerCategory: "Supplier"
# providerResponsible: "Univention"
@@ -552,7 +607,7 @@ images:
# upstreamMirrorStartFrom: ["0", "9", "4"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/notifications-api"
tag: "0.80.2@sha256:94b18841018cb7353a95a9c4ef2d5460f82a9ceb0bba97275b8064806e3e8a1c"
tag: "0.86.0@sha256:522c4d0a42d2c0b37219f5af4fba7fceb60d070719970ef2754a00ca916f67be"
nubusOpendeskExtension:
# providerCategory: "Platform"
# providerResponsible: "openDesk"
@@ -578,7 +633,7 @@ images:
# 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"
tag: "3.0.0@sha256:85539fb7854fac6ba1b874d639188ee0a33743dc16dad0113c54763f2984fc9d"
nubusOxExtension:
# providerCategory: "Supplier"
# providerResponsible: "Univention"
@@ -598,7 +653,7 @@ images:
# upstreamMirrorStartFrom: ["0", "27", "0"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/portal-consumer"
tag: "0.80.2@sha256:c719ada025e0ad629516017ed26803c15cee50572f45896b41a6b066b1fe593e"
tag: "0.86.0@sha256:80ed7c8300365a3dc4c504d4f0f4f8f1c3f9cfc883508a8ea794d63629a9b086"
nubusPortalExtension:
# providerCategory: "Supplier"
# providerResponsible: "Univention"
@@ -608,7 +663,7 @@ images:
# upstreamMirrorStartFrom: ["0", "28", "0"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/portal-extension"
tag: "0.80.2@sha256:cde5547ef1c2d5da55fb41bdae7248ba8514ab4f200822709ca9a99f483a1cc8"
tag: "0.86.0@sha256:1799413fe8cbc6d9cb97656be95a99786a382a3558a7720b7fe62a38c84bdd22"
nubusPortalFrontend:
# providerCategory: "Supplier"
# providerResponsible: "Univention"
@@ -618,7 +673,7 @@ images:
# upstreamMirrorStartFrom: ["0", "67", "0"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/portal-frontend"
tag: "0.80.2@sha256:8b40acc66459058dc0cade33793aba2737cdc20ef75968ca2b21d9aa569c9ecc"
tag: "0.86.0@sha256:d4e34b42662dbd433dd5d647c6fcfa8f2a0d71fe65c0c6efeebe80d4f13b226d"
nubusPortalServer:
# providerCategory: "Supplier"
# providerResponsible: "Univention"
@@ -628,7 +683,7 @@ images:
# upstreamMirrorStartFrom: ["0", "9", "4"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/portal-server"
tag: "0.80.2@sha256:9a8f6950e7bf1086075d1c36ea0ad914a61e1198883e8d4926d688c88b8e67cc"
tag: "0.86.0@sha256:33a3a7d44fa084d74449dc8f7d5f5d2551b02abee16fe4ec6d4972e134c56906"
nubusProvisioningDispatcher:
# providerCategory: "Supplier"
# providerResponsible: "Univention"
@@ -638,7 +693,7 @@ images:
# upstreamMirrorStartFrom: ["0", "14", "0"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-dispatcher"
tag: "0.60.10@sha256:6307e9e1ddad0e6f3285ca11b758902f8c377a5d3de6a59b3437accb8475848f"
tag: "0.63.0@sha256:3773333a12b786db6cea5fc0ecd5e74ba3f276ca084cd1ae8b6665bda86b72c1"
nubusProvisioningEventsAndConsumerApi:
# providerCategory: "Supplier"
# providerResponsible: "Univention"
@@ -648,7 +703,7 @@ images:
# upstreamMirrorStartFrom: ["0", "14", "0"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-events-and-consumer-api"
tag: "0.60.10@sha256:9d5f4e4a2668605349fa6cd6973c7a6acbc2ef95a37e72834c6525ac9e464740"
tag: "0.63.0@sha256:c1687ff385d5bd30e0590472f02de85a3f182b75dc4edd5cf9d063e1db488b4d"
nubusProvisioningPrefill:
# providerCategory: "Supplier"
# providerResponsible: "Univention"
@@ -658,7 +713,7 @@ images:
# upstreamMirrorStartFrom: ["0", "14", "0"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-prefill"
tag: "0.60.10@sha256:8ea46658e66fb5be81968dcf00397b741f61d4fd84c8210b9761412e67109cd0"
tag: "0.63.0@sha256:b93400fecc19bba79ae0f0498b07d18bf9ffb0fc03b9ed25a18f3b6d3be9cc9d"
nubusProvisioningUdmListener:
# providerCategory: "Supplier"
# providerResponsible: "Univention"
@@ -668,7 +723,7 @@ images:
# upstreamMirrorStartFrom: ["0", "14", "0"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-udm-listener"
tag: "0.60.10@sha256:fb0d96fa7b382b7d8eec9e262711e1291a0991ade185b39ee604400d4bd5fa9b"
tag: "0.63.0@sha256:6dcb696920137973b24f90bb8f6045c2dffd8bc201b0cc62aed43e1a01e5aa0e"
nubusProvisioningUdmTransformer:
# providerCategory: "Supplier"
# providerResponsible: "Univention"
@@ -678,7 +733,7 @@ images:
# upstreamMirrorStartFrom: ["0", "14", "0"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-udm-transformer"
tag: "0.60.10@sha256:62b98f3e2c19de298878f5679577bfcbddacec742015d6f20b998a549318e810"
tag: "0.63.0@sha256:da5486cf5d6a30e7d95270db8a6735c82813805e7bce882ff51a2f47faad086f"
nubusSelfServiceConsumer:
# providerCategory: "Supplier"
# providerResponsible: "Univention"
@@ -688,7 +743,7 @@ images:
# upstreamMirrorStartFrom: ["0", "3", "2"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/selfservice-invitation"
tag: "0.19.4@sha256:ca9865114fd35fcc1dbe1a5660a3b69d04a8f568cf15286069342e45f0c7ea91"
tag: "0.19.31@sha256:b6d1a145e8a3f43b54be1d7d737da1527347e93c9894943c17469cd153f77ccf"
nubusUdmRestApi:
# providerCategory: "Supplier"
# providerResponsible: "Univention"
@@ -698,7 +753,7 @@ images:
# upstreamMirrorStartFrom: ["0", "9", "3"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/udm-rest-api"
tag: "0.40.0@sha256:7d39c0defda20fc58da19389216d9a80f479a731dca682d834dd8bd00b80e20f"
tag: "0.41.4@sha256:d3476100f4174d991faa43ce20630175a1fc33011258887dd52bafad1e779189"
nubusUmcGateway:
# providerCategory: "Supplier"
# providerResponsible: "Univention"
@@ -708,7 +763,7 @@ images:
# upstreamMirrorStartFrom: ["0", "7", "3"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/umc-gateway"
tag: "0.51.2@sha256:c76860852133b9bbc91eb6d81a6592a5f451be9234376933ddb4d827e0f08515"
tag: "0.53.5@sha256:7044228155c8fcb939684855d5b405dd1b066d91c8a5df75676518d88e140ab3"
nubusUmcServer:
# providerCategory: "Supplier"
# providerResponsible: "Univention"
@@ -718,7 +773,7 @@ images:
# upstreamMirrorStartFrom: ["0", "7", "3"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/umc-server"
tag: "0.51.3@sha256:00f8cc2e7ee98d3988b1db924ca67783e9a645204ae2c388c7afadc50f22bb12"
tag: "0.53.5@sha256:1ec839c07492b2f1d6897643b71c284aa2d507cd05f1a0f1696dfdff1885eb20"
nubusUmcServerProxy:
# providerCategory: "Supplier"
# providerResponsible: "Univention"
@@ -762,7 +817,7 @@ images:
# upstreamMirrorStartFrom: ["13", "1", "1"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/openproject/images-mirror/open_desk"
tag: "16.5.1@sha256:0e29ae9fcee825b76d62e10e374c10ad40da20ba9c0e584839645bb68e6167bf"
tag: "16.6.1@sha256:e3eb4ecdff5a94d2d2aaa0eacc9e747306d6ba6a06f308d2d16cc209516dd4e0"
openprojectBootstrap:
# providerCategory: "Platform"
# providerResponsible: "openDesk"
@@ -914,7 +969,7 @@ images:
# upstreamRepository: "bmi/opendesk/components/platform-development/images/postfix"
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/images/postfix"
tag: "3.0.3@sha256:12bcebf57ddb53258c48eaa60e9c25b441f4319ee1b94b363c652ad0a992a875"
tag: "3.0.4@sha256:5b17c801283215b13e8305b0be1497d70c232e8ea8414f965cd1010333ae95ab"
postfixBootstrap:
# providerCategory: "Community"
# providerResponsible: "openDesk"
@@ -940,7 +995,7 @@ images:
# upstreamMirrorStartFrom: ["8922"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/nordeck/images-mirror/prosody"
tag: "stable-10431@sha256:792618fff60c6e0eb4facb221e3477b2249cabeaf0479753ac7a6b98c075fd20"
tag: "stable-10590@sha256:86d43e743268fa89035663a5e29be7689b131b9c1fb435c01c94d2eeebbb058a"
redis:
# providerCategory: "Community"
# providerResponsible: "openDesk"
@@ -954,13 +1009,13 @@ images:
synapse:
# providerCategory: "Supplier"
# providerResponsible: "Element"
# upstreamRegistry: "https://registry-1.docker.io"
# upstreamRepository: "matrixdotorg/synapse"
# upstreamRegistry: "https://ghcr.io"
# upstreamRepository: "element-hq/synapse"
# upstreamMirrorTagFilterRegEx: '^v(\d+)\.(\d+)\.(\d+)$'
# upstreamMirrorStartFrom: ["1", "91", "2"]
# upstreamMirrorStartFrom: ["1", "141", "0"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/element/images-mirror/synapse"
tag: "v1.141.0@sha256:4914f40c9fbfb29e4157bd1f7db87169894505c2c66dfdb4fcad5a34cd42f924"
tag: "v1.141.0@sha256:562adbfc3df12d1024c7277b9807086ed79d8d5fabe24187a31d787af050a6a4"
synapseCreateUser:
# providerCategory: "Community"
# providerResponsible: "Nordeck"
@@ -1000,19 +1055,19 @@ images:
# providerResponsible: "XWiki"
# upstreamRegistry: "https://git.xwikisas.com:5050"
# upstreamRepository: "xwikisas/swp/xwiki"
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)-?\d?-mariadb.+$'
# upstreamMirrorStartFrom: ["17", "4", "4"]
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)-?[0-9A-Z]*-mariadb.+$'
# upstreamMirrorStartFrom: ["17", "4", "7"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/xwiki/images-mirror/xwiki"
tag: "17.4.4-1-mariadb-jetty-alpine@sha256:0182dbb610a4c80b253e63e73ccc2487a07579baf259df4c874d860754127b4c"
tag: "17.4.7-mariadb-jetty-alpine@sha256:28ce6382b7ec3d403136f1b8ab11d5738c3c0e7830db3f030c5af8a38d5e93a5"
xwikiPostgres:
# providerCategory: "Supplier"
# providerResponsible: "XWiki"
# upstreamRegistry: "https://git.xwikisas.com:5050"
# upstreamRepository: "xwikisas/swp/xwiki"
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)-?\d?-postgres.+$'
# upstreamMirrorStartFrom: ["17", "4", "4"]
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)-?[0-9A-Z]*-postgres.+$'
# upstreamMirrorStartFrom: ["17", "4", "7"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/xwiki/images-mirror/xwiki"
tag: "17.4.4-1-postgres-jetty-alpine@sha256:2da4c175a418b1b8a09e8b25006bfc6f6f22fd449bc2e77dac31c0b56c444b94"
tag: "17.4.7-postgres-jetty-alpine@sha256:d534ace977a3a988e83945c73f15d4fd5c082d7b9b5b8ae1134569be5e023c96"
...

View File

@@ -16,6 +16,8 @@ persistence:
size: "1Gi"
storageClassName: ~
dovecot:
# openDesk CE: Mail storage
# openDesk EE (with Dovecot Pro): Storage for metacache
size: "1Gi"
storageClassName: ~
mariadb:
@@ -34,6 +36,7 @@ persistence:
size: "1Gi"
storageClassName: ~
nubusProvisioningNats:
# For production and load test environments "10Gi" is recommended.
size: "1Gi"
storageClassName: ~
# This option was introduced with openDesk 1.6. For now we want to use the Helm charts default empty string

View File

@@ -32,6 +32,7 @@ secrets:
dovecot: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "nubus" "ldapsearch_dovecot" | sha1sum | quote }}
element: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "nubus" "ldapsearch_element" | sha1sum | quote }}
ox: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "nubus" "ldapsearch_ox" | sha1sum | quote }}
postfix: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "nubus" "ldapsearch_postfix" | sha1sum | quote }}
openproject: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "nubus" "ldapsearch_openproject" | sha1sum | quote }}
xwiki: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "nubus" "ldapsearch_xwiki" | sha1sum | quote }}
systemAccounts:
@@ -61,6 +62,7 @@ secrets:
keycloakUser: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "postgres" "keycloak_user" | sha1sum | quote }}
keycloakExtensionUser: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "postgres" "keycloak_extensions_user" | sha1sum | quote }}
matrixUser: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "postgres" "matrix_user" | sha1sum | quote }}
matrixMASUser: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "postgres" "matrix_mas_user" | sha1sum | quote }}
nextcloudUser: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "postgres" "nextcloud_user" | sha1sum | quote }}
notesUser: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "postgres" "notes_user" | sha1sum | quote }}
openprojectUser: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "postgres" "openproject_user" | sha1sum | quote }}
@@ -122,6 +124,7 @@ secrets:
password: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "redis" "password" | sha1sum | quote }}
dovecot:
doveadm: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "dovecot" "doveadm" | sha1sum | quote }}
sharedMailboxesMasterPassword: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "dovecot" "sharedMailboxesMasterPassword" | sha1sum | quote }}
xwiki:
superadminpassword: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "xwiki" "superadminpassword" | sha1sum | quote }}
intercom:

View File

@@ -20,4 +20,15 @@ smtp:
key: ""
selector: "rsa"
useED25519: false
security:
# Postfix defaults
# Ref.: https://www.postfix.org/postconf.5.html#smtpd_sasl_security_options
smtpdSASLSecurityOptions:
- "noanonymous"
# Postfix defaults
# Ref.: https://www.postfix.org/postconf.5.html#smtp_sasl_security_options
smtpSASLSecurityOptions:
- "noanonymous"
- "noplaintext"
...

View File

@@ -2,10 +2,39 @@
# SPDX-License-Identifier: Apache-2.0
---
technical:
# Collabora related technical settings
collabora:
# Defines the value for the start parameter `-o:num_prespawn_children`
numPrespawnChildren: 4
# Dovecot EE related settings
dovecot:
objectStorage:
# Size of objectstore fs cache
fsCacheSize: "2G"
# Size of fts cache
ftsCacheSize: "2G"
# Wether fs and fts cache should reside in RAM (tmpfs) or not
# If this value is true, the cache sizes of the fs cache + fts cache
# must be considered additionally to Dovecot's memory footprint.
cacheTmpfs: false
# Nubus related settings
nubus:
# Nubus provisioning framework that is being used to actively provision data internally within
# Nubus e.g. for the portal or self service as well as externally, e.g. to OX App Suite.
provisioning:
# NATS including NATS JetStream is the queueing used by Nubus' provisioning.
# Ref.: https://nats.io/about/
nats:
# The NATS Box is a container for debugging NATS messages using a CLI tool.
# Ref.: https://github.com/nats-io/nats-box
natsBox:
# Enable the NATS Box container for the deployment. Will also be enabled in case of
# `.Values.debug.enabled: true`
enabled: false
# Groupware related technical settings
oxAppSuite:
provisioning:

View File

@@ -22,8 +22,8 @@ name: "openDesk"
platforms:
- "web"
developmentStatus: "stable"
softwareVersion: "1.9.0"
releaseDate: "2025-11-07"
softwareVersion: "1.10.0"
releaseDate: "2025-11-24"
softwareType: "standalone/web"
url: "https://gitlab.opencode.de/bmi/opendesk/"
logo: ".opencode/openDesk-logo-rgb-color.svg"