Compare commits

...

18 Commits

Author SHA1 Message Date
Thomas Kaltenbrunner
8168de6e24 fix(open-xchange): Add external secrets for Dovecot and Postfix 2025-06-13 15:54:09 +02:00
Thorsten Roßner
59a40864ed feat(ci): Update Helm to 3.18.1 and Helmfile to 1.1.1 2025-06-03 07:42:45 +00:00
Markus Kahl
add72669ae feat(openproject): Update from 15.5.1 to 16.0.0 including Helm chart update 2025-06-03 06:49:58 +00:00
Thorsten Roßner
fe510fa679 chore(helmfile): Post release update of global.generated.yaml.gotmpl 2025-06-02 10:10:32 +02:00
Thorsten Roßner
805cdf26ae chore(release): 1.4.1 [skip ci]
## [1.4.1](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/compare/v1.4.0...v1.4.1) (2025-06-02)

### Bug Fixes

* **nextcloud:** Update NC CE to 30.0.10 ([785be8b](785be8b662))
* **nextcloud:** Update Nextcloud incl. apps to 30.0.10 ([559fbf6](559fbf6801))
* **nubus:** Use `.Values.theme.texts.productName` for Keycloak's `loginTitle` instead of static product name string ([d1a1e5d](d1a1e5dc29))
* **open-xchange:** Re-adding `com.openexchange.oauth.provider.*` to fix central contacts feature ([561e44f](561e44fd4c))
* **open-xchange:** Set `com.openexchange.hostname` to get working links in outgoing system mails (e.g. task assignments) ([0d61687](0d616871e3))
* **postfix:** Require TLSv1.3 ([3b3d8ac](3b3d8aca54))
* **requirements.md:** Helm 3.18.x is not supported due to upstream bug ([1ea9cae](1ea9cae1ce))
2025-06-02 08:01:20 +00:00
Thorsten Roßner
559fbf6801 fix(nextcloud): Update Nextcloud incl. apps to 30.0.10 2025-06-02 07:05:58 +02:00
Thorsten Roßner
561e44fd4c fix(open-xchange): Re-adding com.openexchange.oauth.provider.* to fix central contacts feature 2025-06-02 07:05:58 +02:00
Thomas Kaltenbrunner
0d616871e3 fix(open-xchange): Set com.openexchange.hostname to get working links in outgoing system mails (e.g. task assignments) 2025-06-02 07:05:58 +02:00
Thorsten Roßner
b185fe055c docs(migrations.md): [#188] Update to point out requirement for IdP federation configuration 2025-06-02 07:05:58 +02:00
Thorsten Roßner
d1a1e5dc29 fix(nubus): Use .Values.theme.texts.productName for Keycloak's loginTitle instead of static product name string 2025-06-02 07:05:58 +02:00
Tilman Lüttje
1ea9cae1ce fix(requirements.md): Helm 3.18.x is not supported due to upstream bug 2025-06-02 07:05:52 +02:00
Thomas Kaltenbrunner
3b3d8aca54 fix(postfix): Require TLSv1.3 2025-05-30 17:02:07 +02:00
Tilman Lüttje
785be8b662 fix(nextcloud): Update NC CE to 30.0.10 2025-05-30 17:01:45 +02:00
Dominik Kaminski
6d06e1fcc2 chore(release): 1.4.0 [skip ci]
# [1.4.0](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/compare/v1.3.2...v1.4.0) (2025-05-20)

### Bug Fixes

* **docs:** Update requirements, bump helmfile to v1.0.0 ([88b29c5](88b29c57e8))
* **dovecot:** Encode object storage password and add more template values ([c40de73](c40de73ccf))
* **nubus:** [[#182](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/issues/182)] Add `KC_TRUSTSTORE_PATHS` to Keycloak when using self-signed certificates ([006aed7](006aed791e))
* **nubus:** [[#183](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/issues/183)] Do not override `nubusPortalConsumer.waitForDependency.image` when using self-signed certificates ([b45a0bf](b45a0bf832))
* **nubus:** Update ArgoCD hook annotations ([f2b1384](f2b1384670))
* **open-xchange:** Update Open-Xchange to v8.36 ([b40b863](b40b8630c1))
* **open-xchange:** Update Open-Xchange to v8.37 ([174c73c](174c73c012))
* **openproject:** Update to 15.5.1 ([e91efa8](e91efa8ecc))
* **openxchange:** Add proper dav URLs in client onboarding and disable unnecessary oauth section ([bba2af0](bba2af0f06))
* **openxchange:** Disable redundant o-x-authentication-oauth package ([1d2b17b](1d2b17b495))
* **openxchange:** Enable DAV support ([709e50f](709e50ff7c))

### Features

* **collabora:** Update enterprise image to 24.04.13.4.1 ([b590810](b5908100dd))
* **helmfile:** Define `global.additionalMailDomains` as list; if you use the setting already, check `migrations.md` for details ([4b30576](4b305768c4))
* **helmfile:** Option to select default file format for weboffice using; see `functional.weboffice.defaultFormat` in `functional.yaml.gotmpl` for details ([5f58a85](5f58a857ac))
* **nubus:** Update nubus to v1.9.1 ([3d694a8](3d694a8248))
2025-05-20 00:46:42 +00:00
Justus Holzberger
b9640d9321 chore(docs): Update links, images and tables in docs 2025-05-20 00:05:43 +02:00
Thomas Kaltenbrunner
c40de73ccf fix(dovecot): Encode object storage password and add more template values 2025-05-20 00:00:55 +02:00
Norbert Tretkowski
3d694a8248 feat(nubus): Update nubus to v1.9.1 2025-05-19 23:57:45 +02:00
renovate
174c73c012 fix(open-xchange): Update Open-Xchange to v8.37 2025-05-19 14:56:20 +02:00
26 changed files with 2556 additions and 174 deletions

View File

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

View File

@@ -1,3 +1,41 @@
## [1.4.1](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/compare/v1.4.0...v1.4.1) (2025-06-02)
### Bug Fixes
* **nextcloud:** Update NC CE to 30.0.10 ([785be8b](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/785be8b6621305e79acca62250720028b9ca7a30))
* **nextcloud:** Update Nextcloud incl. apps to 30.0.10 ([559fbf6](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/559fbf6801fc785f26f9e6287e0730f86b459a01))
* **nubus:** Use `.Values.theme.texts.productName` for Keycloak's `loginTitle` instead of static product name string ([d1a1e5d](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/d1a1e5dc29ca21fd822abd127406f6859603b9c7))
* **open-xchange:** Re-adding `com.openexchange.oauth.provider.*` to fix central contacts feature ([561e44f](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/561e44fd4cc42089954868da60edbd210b9a2608))
* **open-xchange:** Set `com.openexchange.hostname` to get working links in outgoing system mails (e.g. task assignments) ([0d61687](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/0d616871e3f5114ec429714658500c09af842fe6))
* **postfix:** Require TLSv1.3 ([3b3d8ac](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/3b3d8aca54bdaea055289c993e3f158d93864223))
* **requirements.md:** Helm 3.18.x is not supported due to upstream bug ([1ea9cae](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/1ea9cae1ce46f864dc03d94c1a72956c5f5ba9a9))
# [1.4.0](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/compare/v1.3.2...v1.4.0) (2025-05-20)
### Bug Fixes
* **docs:** Update requirements, bump helmfile to v1.0.0 ([88b29c5](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/88b29c57e8197f072b9c80019255ee0b7d1188e1))
* **dovecot:** Encode object storage password and add more template values ([c40de73](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/c40de73ccf02bf77df0c3a17c2fccf2e113c4b35))
* **nubus:** [[#182](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/issues/182)] Add `KC_TRUSTSTORE_PATHS` to Keycloak when using self-signed certificates ([006aed7](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/006aed791e5cf58850712e468a15c8abe1ee0973))
* **nubus:** [[#183](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/issues/183)] Do not override `nubusPortalConsumer.waitForDependency.image` when using self-signed certificates ([b45a0bf](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/b45a0bf832506fb60488cd01c9c883b58e1d60b6))
* **nubus:** Update ArgoCD hook annotations ([f2b1384](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/f2b13846700d8a49a066b3343b043dac89d326f5))
* **open-xchange:** Update Open-Xchange to v8.36 ([b40b863](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/b40b8630c1a5ba7452d0461d38b1175fa647226d))
* **open-xchange:** Update Open-Xchange to v8.37 ([174c73c](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/174c73c012e911342644bdcb89d22b35be9baa36))
* **openproject:** Update to 15.5.1 ([e91efa8](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/e91efa8ecc1be9b444092e1a291747bb9f0c00ea))
* **openxchange:** Add proper dav URLs in client onboarding and disable unnecessary oauth section ([bba2af0](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/bba2af0f06942bd2063cc7b79f3e39fdb07838f0))
* **openxchange:** Disable redundant o-x-authentication-oauth package ([1d2b17b](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/1d2b17b4951581e1f60d8a7f2402512dc1c1c568))
* **openxchange:** Enable DAV support ([709e50f](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/709e50ff7c020347dad953be7380d08438d3ab69))
### Features
* **collabora:** Update enterprise image to 24.04.13.4.1 ([b590810](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/b5908100ddbd7497f7f858e874bcbf7979480d1b))
* **helmfile:** Define `global.additionalMailDomains` as list; if you use the setting already, check `migrations.md` for details ([4b30576](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/4b305768c444c166e28829ee05631451ba997126))
* **helmfile:** Option to select default file format for weboffice using; see `functional.weboffice.defaultFormat` in `functional.yaml.gotmpl` for details ([5f58a85](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/5f58a857acab38fa7f56e1e14ef0a6f805c7622e))
* **nubus:** Update nubus to v1.9.1 ([3d694a8](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/commit/3d694a8248d5e983ab3e05753326088b375f2d82))
## [1.3.2](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/compare/v1.3.1...v1.3.2) (2025-05-06) ## [1.3.2](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/compare/v1.3.1...v1.3.2) (2025-05-06)

View File

@@ -37,11 +37,11 @@ openDesk currently features the following functional main components:
| Chat & collaboration | Element ft. Nordeck widgets | [1.11.89](https://github.com/element-hq/element-desktop/releases/tag/v1.11.89) | [For the most recent release](https://element.io/user-guide) | | Chat & collaboration | Element ft. Nordeck widgets | [1.11.89](https://github.com/element-hq/element-desktop/releases/tag/v1.11.89) | [For the most recent release](https://element.io/user-guide) |
| Collaborative notes | Notes (aka Docs) | [2.4.0](https://github.com/suitenumerique/docs/releases/tag/v2.4.0) | Online documentation/welcome document available in installed application | | Collaborative notes | Notes (aka Docs) | [2.4.0](https://github.com/suitenumerique/docs/releases/tag/v2.4.0) | Online documentation/welcome document available in installed application |
| Diagram editor | CryptPad ft. diagrams.net | [2024.9.0](https://github.com/cryptpad/cryptpad/releases/tag/2024.9.0) | [For the most recent release](https://docs.cryptpad.org/en/) | | Diagram editor | CryptPad ft. diagrams.net | [2024.9.0](https://github.com/cryptpad/cryptpad/releases/tag/2024.9.0) | [For the most recent release](https://docs.cryptpad.org/en/) |
| File management | Nextcloud | [30.0.6](https://nextcloud.com/de/changelog/#30-0-6) | [Nextcloud 30](https://docs.nextcloud.com/) | | File management | Nextcloud | [30.0.10](https://nextcloud.com/de/changelog/#30-0-10) | [Nextcloud 30](https://docs.nextcloud.com/) |
| Groupware | OX App Suite | [8.36](https://documentation.open-xchange.com/appsuite/releases/8.36/) | Online documentation available from within the installed application; [Additional resources](https://documentation.open-xchange.com/) | | Groupware | OX App Suite | [8.37](https://documentation.open-xchange.com/appsuite/releases/8.37/) | Online documentation available from within the installed application; [Additional resources](https://documentation.open-xchange.com/) |
| Knowledge management | XWiki | [16.10.5](https://www.xwiki.org/xwiki/bin/view/ReleaseNotes/Data/XWiki/16.10.5/) | [For the most recent release](https://www.xwiki.org/xwiki/bin/view/Documentation) | | Knowledge management | XWiki | [16.10.5](https://www.xwiki.org/xwiki/bin/view/ReleaseNotes/Data/XWiki/16.10.5/) | [For the most recent release](https://www.xwiki.org/xwiki/bin/view/Documentation) |
| Portal & IAM | Nubus | [1.8.0](https://docs.software-univention.de/nubus-kubernetes-release-notes/latest/en/changelog.html#version-1-8-0-2025-04-07) | [Univention's documentation website](https://docs.software-univention.de/n/en/nubus.html) | | Portal & IAM | Nubus | [1.9.1](https://docs.software-univention.de/nubus-kubernetes-release-notes/latest/en/changelog.html#version-1-9-1-2025-05-07) | [Univention's documentation website](https://docs.software-univention.de/n/en/nubus.html) |
| Project management | OpenProject | [15.5.1](https://www.openproject.org/docs/release-notes/15-5-1/) | [For the most recent release](https://www.openproject.org/docs/user-guide/) | | Project management | OpenProject | [16.0.0](https://www.openproject.org/docs/release-notes/16-0-0/) | [For the most recent release](https://www.openproject.org/docs/user-guide/) |
| Videoconferencing | Jitsi | [2.0.9955](https://github.com/jitsi/jitsi-meet/releases/tag/stable%2Fjitsi-meet_9955) | [For the most recent release](https://jitsi.github.io/handbook/docs/category/user-guide/) | | Videoconferencing | Jitsi | [2.0.9955](https://github.com/jitsi/jitsi-meet/releases/tag/stable%2Fjitsi-meet_9955) | [For the most recent release](https://jitsi.github.io/handbook/docs/category/user-guide/) |
| Weboffice | Collabora | [24.04.13](https://www.collaboraoffice.com/code-24-04-release-notes/) | Online documentation available from within the installed application; [Additional resources](https://sdk.collaboraonline.com/) | | Weboffice | Collabora | [24.04.13](https://www.collaboraoffice.com/code-24-04-release-notes/) | Online documentation available from within the installed application; [Additional resources](https://sdk.collaboraonline.com/) |

View File

@@ -16,9 +16,9 @@ This chapter presents APIs available in openDesk, grouped by application.
* [UDM Simple API](#udm-simple-api) * [UDM Simple API](#udm-simple-api)
* [UDM REST API](#udm-rest-api) * [UDM REST API](#udm-rest-api)
* [UCR Python API](#ucr-python-api) * [UCR Python API](#ucr-python-api)
* [LDAP](#ldap) * [Identity Store and Directory Service (LDAP)](#identity-store-and-directory-service-ldap)
* [Nubus Provisioning Service (**TBD**)](#nubus-provisioning-service-tbd) * [Nubus Provisioning Service](#nubus-provisioning-service)
* [Nubus Authorization Service (**TBD**)](#nubus-authorization-service-tbd) * [Nubus Authorization Service](#nubus-authorization-service)
* [Groupware - OX AppSuite / OX Dovecot](#groupware---ox-appsuite--ox-dovecot) * [Groupware - OX AppSuite / OX Dovecot](#groupware---ox-appsuite--ox-dovecot)
* [Usage of APIs within openDesk](#usage-of-apis-within-opendesk) * [Usage of APIs within openDesk](#usage-of-apis-within-opendesk)
* [HTTP API](#http-api) * [HTTP API](#http-api)
@@ -65,11 +65,13 @@ This chapter presents APIs available in openDesk, grouped by application.
# IAM - Nubus # IAM - Nubus
![High-level architecture of Univention part withAPIs/interfaces highlighted](./apis_images/IAM-overview.png) ![Overview of functional components in Univention Nubus for Kubernetes](./apis_images/IAM-overview_functional_components_structured.svg)
[Source](https://docs.software-univention.de/nubus-kubernetes-architecture/latest/en/overview/components.html#overview-components-fig)
## UMC Python API ## UMC Python API
![Composition of UMC component with APIs highlighted](./apis_images/IAM-umc-architecture.png) ![Composition of UMC component with APIs highlighted](./apis_images/IAM-umc-architecture.png)
[Source](https://docs.software-univention.de/developer-reference/latest/en/umc/architecture.html#umc-api)
| Name | UMC Python API | | Name | UMC Python API |
| ------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | ------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
@@ -89,7 +91,7 @@ This chapter presents APIs available in openDesk, grouped by application.
## UMC store API ## UMC store API
| Name | UMC store API (also named UMC JavaScript API or Dojo/UMC JavaScript API) | | Name | UMC store API (also named UMC JavaScript API or Dojo/UMC JavaScript API) |
| ------------------------------ |----------------------------------------------------------------------------------------------------------| | ------------------------------ | ---------------------------------------------------------------------------------------------------------- |
| Purpose | Encapsulate and ease the access to JavaScript module data | | Purpose | Encapsulate and ease the access to JavaScript module data |
| Versioning | | | Versioning | |
| Authentication | | | Authentication | |
@@ -101,7 +103,7 @@ This chapter presents APIs available in openDesk, grouped by application.
| Parallel access | Allowed | | Parallel access | Allowed |
| Message protocol | | | Message protocol | |
| Supported standards | | | Supported standards | |
| Documentation | https://docs.software-univention.de/developer-reference/5.0/en/umc/local-system-module.html#umc-store-api | | Documentation | https://docs.software-univention.de/developer-reference/latest/en/umc/local-system-module.html#umc-store-api |
## IntercomService (ICS) API ## IntercomService (ICS) API
@@ -135,28 +137,29 @@ This chapter presents APIs available in openDesk, grouped by application.
| Parallel access | Allowed | | Parallel access | Allowed |
| Message protocol | Depends on the integration use case. | | Message protocol | Depends on the integration use case. |
| Supported standards | | | Supported standards | |
| Documentation | https://docs.software-univention.de/developer-reference/5.0/en/listener/api.html | | Documentation | https://docs.software-univention.de/developer-reference/latest/en/listener/api.html |
More details on the Nubus provisioning service can be found here: https://docs.software-univention.de/nubus-kubernetes-architecture/0.5/en/components/provisioning-service.html More details on the Nubus provisioning service can be found here: https://docs.software-univention.de/nubus-kubernetes-architecture/latest/en/components/provisioning-service.html
## UDM Simple API ## UDM Simple API
![Composition of UMC component with APIs highlighted](./apis_images/IAM-udm.png) ![Architecture of UDM](./apis_images/IAM-udm-architecture.svg)
[Source](https://docs.software-univention.de/architecture/latest/en/services/udm.html#architecture-model-udm)
| Name | UDM Simple API | | Name | UDM Simple API |
| ------------------------------ |-------------------------------------------------------------------| | ------------------------------ | ------------------------------------------------------------------- |
| Purpose | Allows use of capability and objects directly in Python programs. | | Purpose | Allows use of capability and objects directly in Python programs. |
| Versioning | | | Versioning | |
| Authentication | | | Authentication | |
| In openDesk provided by | Univention Directory Manager | | In openDesk provided by | Univention Directory Manager |
| Transport protocol | | | Transport protocol | |
| Usage within component | | | Usage within component | Allows to use UDM capability and objects directly in Python programs. UDM Simple API provides Python modules and classes below `univention.udm.*` |
| Usage within openDesk | | | Usage within openDesk | |
| Usage for external integration | | | Usage for external integration | |
| Parallel access | Allowed | | Parallel access | Allowed |
| Message protocol | Depends on the integration use case. | | Message protocol | Depends on the integration use case. |
| Supported standards | | | Supported standards | |
| Documentation | | | Documentation | https://docs.software-univention.de/ucs-python-api/univention.udm.html#module-univention.udm. |
## UDM REST API ## UDM REST API
@@ -166,18 +169,19 @@ More details on the Nubus provisioning service can be found here: https://docs.s
| Versioning | | | Versioning | |
| Authentication | Basic Auth | | Authentication | Basic Auth |
| In openDesk provided by | Univention Directory Manager | | In openDesk provided by | Univention Directory Manager |
| Transport protocol | HTTP(S) | | Transport protocol | HTTP() |
| Usage within component | The Nubus bootstrapping process makes use of the API. | | Usage within component | The Nubus bootstrapping process makes use of the API. |
| Usage within openDesk | | | Usage within openDesk | |
| Usage for external integration | The [openDesk User Importer](https://gitlab.opencode.de/bmi/opendesk/components/platform-development/images/user-import) utilizes the API. | | Usage for external integration | The [openDesk User Importer](https://gitlab.opencode.de/bmi/opendesk/components/platform-development/images/user-import) utilizes the API. |
| Parallel access | Allowed | | Parallel access | Allowed |
| Message protocol | Depends on the integration use case. | | Message protocol | Depends on the integration use case. |
| Supported standards | | | Supported standards | |
| Documentation | https://docs.software-univention.de/developer-reference/5.0/en/udm/rest-api.html | | Documentation | https://docs.software-univention.de/nubus-kubernetes-customization/latest/en/api/udm-rest.html |
## UCR Python API ## UCR Python API
![Composition of UCR component with APIs/interfaces highlighted](./apis_images/IAM-ucr.png) ![Architecture overview of UCR](./apis_images/IAM-ucr-architecture.svg)
[Source](https://docs.software-univention.de/architecture/latest/en/services/ucr.html#services-ucr-architecture-model)
| Name | UCR Python API | | Name | UCR Python API |
| ------------------------------ | --------------------------------------------------------------------------------------------------- | | ------------------------------ | --------------------------------------------------------------------------------------------------- |
@@ -192,12 +196,15 @@ More details on the Nubus provisioning service can be found here: https://docs.s
| Parallel access | Allowed | | Parallel access | Allowed |
| Message protocol | | | Message protocol | |
| Supported standards | | | Supported standards | |
| Documentation | https://docs.software-univention.de/developer-reference/5.0/en/ucr/usage.html#using-ucr-from-python | | Documentation | https://docs.software-univention.de/developer-reference/latest/en/ucr/usage.html#using-ucr-from-python |
## LDAP ## Identity Store and Directory Service (LDAP)
| Name | LDAP | ![Overview of the Identity Store and Directory Service](./apis_images/IAM-functional_component_identity_store.svg)
| ------------------------------ |-------------------------------------------------------------------------------------------------------------------------| [Source](https://docs.software-univention.de/nubus-kubernetes-architecture/latest/en/components/identity-store.html#component-identity-store-figure)
| Name | Identity Store and Directory Service (LDAP) |
| ------------------------------ | ------------------------------------------------------------------------------------------------------------------------- |
| Purpose | Read access to Nubus LDAP | | Purpose | Read access to Nubus LDAP |
| Versioning | n/a | | Versioning | n/a |
| Authentication | LDAP user auth | | Authentication | LDAP user auth |
@@ -209,15 +216,25 @@ More details on the Nubus provisioning service can be found here: https://docs.s
| Parallel access | Allowed | | Parallel access | Allowed |
| Message protocol | LDAP | | Message protocol | LDAP |
| Supported standards | LDAP | | Supported standards | LDAP |
| Documentation | https://docs.software-univention.de/manual/5.0/en/domain-ldap/ldap-directory.html | | Documentation | https://docs.software-univention.de/nubus-kubernetes-architecture/latest/en/components/identity-store.html#component-identity-store-directory-service |
## Nubus Provisioning Service (**TBD**) ## Nubus Provisioning Service
To be delivered. ![Overview of the Provisioning Service and its components](./apis_images/IAM-functional_component_provisioning_service_complete.svg)
[Source](https://docs.software-univention.de/nubus-kubernetes-architecture/latest/en/components/provisioning-service.html#component-provisioning-service-complete-figure)
## Nubus Authorization Service (**TBD**) | Name | Nubus Proisioning Service |
| ------------- | --------------------------------------------------------------------------------------------------- |
| Documentation | https://docs.software-univention.de/nubus-kubernetes-architecture/latest/en/components/provisioning-service.html |
To be delivered. ## Nubus Authorization Service
![ArchiMate view of the interfaces and protocols of the Authorization Service](./apis_images/IAM-interfaces_authorization_service.svg)
[Source](https://docs.software-univention.de/nubus-kubernetes-architecture/latest/en/overview/interfaces-protocols.html#authorization-service)
| Name | Nubus Authorization Service |
| ------------- | --------------------------------------------------------------------------------------------------- |
| Documentation | https://docs.software-univention.de/nubus-kubernetes-architecture/latest/en/overview/interfaces-protocols.html#authorization-service |
# Groupware - OX AppSuite / OX Dovecot # Groupware - OX AppSuite / OX Dovecot

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 189 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 411 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 186 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 143 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 118 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 80 KiB

View File

@@ -22,7 +22,7 @@ SPDX-License-Identifier: Apache-2.0
Most organizations already have an Identity and Access Management (IAM) system with an identity provider (IdP) for single sign-on (SSO) to internal or external web applications. Most organizations already have an Identity and Access Management (IAM) system with an identity provider (IdP) for single sign-on (SSO) to internal or external web applications.
This document explains how to configure your organization's IdP and the openDesk IdP to support account federation with openDesk SSO based on your organization's login. This document helps in setting up your organization's IdP and openDesk to enable IdP federation.
# References # References
@@ -33,7 +33,7 @@ We would like to list successful IdP federation scenarios:
| [EU Login](https://webgate.ec.europa.eu/cas/userdata/myAccount.cgi) | v0.9.0, v1.2.0 | | [EU Login](https://webgate.ec.europa.eu/cas/userdata/myAccount.cgi) | v0.9.0, v1.2.0 |
| [ProConnect](https://www.proconnect.gouv.fr/) | v0.9.0 | | [ProConnect](https://www.proconnect.gouv.fr/) | v0.9.0 |
>If you have successfully federated using another External IdP, please let us know so we can update the list above. > If you have successfully federated using another External IdP, please let us know so we can update the list above.
# Prerequisites # Prerequisites
@@ -70,6 +70,23 @@ This document focuses on the OIDC federation between an external IdP and the ope
# Example configuration # Example configuration
The following section explains how to configure the IdP federation manually in an example upstream IdP and in openDesk.
With openDesk 1.4.0 IdP federation has to be enabled as part of the deployment using the `functional.authentication.ssoFederation` section, see [`functional.yaml.gotmpl`](../../helmfile/environments/default/functional.yaml.gotmpl) for reference.
You can use the description below to configure and test the federation that can be exported and used as part of the deployment afterwards, e.g. with the following commands from within the Keycloak Pod:
```shell
# Set the variables according to your deployment first, below are just example values.
export FEDERATION_IDP_ALIAS=sso-federation-idp
export NAMESPACE=example_namespace
export CLUSTER_NETWORKING_DOMAIN=svc.cluster.local
# Authenticate with Keycloak
/opt/keycloak/bin/kcadm.sh config credentials --server http://ums-keycloak.${NAMESPACE}.${CLUSTER_NETWORKING_DOMAIN}:8080 --realm master --user ${KEYCLOAK_ADMIN} --password ${KEYCLOAK_ADMIN_PASSWORD}
# Request details of IdP configuration
/opt/keycloak/bin/kcadm.sh get identity-provider/instances/${FEDERATION_IDP_ALIAS} -r opendesk
```
## Versions ## Versions
The example was tested with openDesk v0.7.0 using its integrated Keycloak v24.0.3. As external IdP, we also used an openDesk deployment of the same version, but created a separate realm for proper configuration separation. The example was tested with openDesk v0.7.0 using its integrated Keycloak v24.0.3. As external IdP, we also used an openDesk deployment of the same version, but created a separate realm for proper configuration separation.

View File

@@ -11,6 +11,7 @@ SPDX-License-Identifier: Apache-2.0
* [Manual checks/actions](#manual-checksactions) * [Manual checks/actions](#manual-checksactions)
* [v1.4.0+](#v140) * [v1.4.0+](#v140)
* [Pre-upgrade to v1.4.0+](#pre-upgrade-to-v140) * [Pre-upgrade to v1.4.0+](#pre-upgrade-to-v140)
* [Helmfile new feature: `functional.authentication.ssoFederation`](#helmfile-new-feature-functionalauthenticationssofederation)
* [Helmfile cleanup: `global.additionalMailDomains` as list](#helmfile-cleanup-globaladditionalmaildomains-as-list) * [Helmfile cleanup: `global.additionalMailDomains` as list](#helmfile-cleanup-globaladditionalmaildomains-as-list)
* [v1.2.0+](#v120) * [v1.2.0+](#v120)
* [Pre-upgrade to v1.2.0+](#pre-upgrade-to-v120) * [Pre-upgrade to v1.2.0+](#pre-upgrade-to-v120)
@@ -104,6 +105,12 @@ If you would like more details about the automated migrations, please read secti
### Pre-upgrade to v1.4.0+ ### Pre-upgrade to v1.4.0+
#### Helmfile new feature: `functional.authentication.ssoFederation`
**Target group:** Deployments that make use of IdP federation as described in [`idp-federation.md`](./enhanced-configuration/idp-federation.md).
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).
#### Helmfile cleanup: `global.additionalMailDomains` as list #### Helmfile cleanup: `global.additionalMailDomains` as list
**Target group:** Installations that have set `global.additionalMailDomains`. **Target group:** Installations that have set `global.additionalMailDomains`.

View File

@@ -29,14 +29,14 @@ openDesk is a Kubernetes-only solution and requires an existing Kubernetes (K8s)
- K8s cluster >= v1.24, [CNCF Certified Kubernetes distribution](https://www.cncf.io/certification/software-conformance/) - K8s cluster >= v1.24, [CNCF Certified Kubernetes distribution](https://www.cncf.io/certification/software-conformance/)
- Domain and DNS Service - Domain and DNS Service
- Ingress controller (Ingress NGINX) >= [4.11.5/1.11.5](https://github.com/kubernetes/ingress-nginx/releases) - Ingress controller (Ingress NGINX) >= [4.11.5/1.11.5](https://github.com/kubernetes/ingress-nginx/releases)
- [Helm](https://helm.sh/) >= v3.17.3 - [Helm](https://helm.sh/) >= v3.17.3, but not v3.18.0[^1]
- [Helmfile](https://helmfile.readthedocs.io/en/latest/) >= v1.0.0 - [Helmfile](https://helmfile.readthedocs.io/en/latest/) >= v1.0.0
- [HelmDiff](https://github.com/databus23/helm-diff) >= v3.11.0 - [HelmDiff](https://github.com/databus23/helm-diff) >= v3.11.0
- Volume provisioner supporting RWO (read-write-once)[^1] - Volume provisioner supporting RWO (read-write-once)[^2]
- Certificate handling with [cert-manager](https://cert-manager.io/) - Certificate handling with [cert-manager](https://cert-manager.io/)
**Additional openDesk Enterprise requirements** **Additional openDesk Enterprise requirements**
- [OpenKruise](https://openkruise.io/)[^2] >= v1.6 - [OpenKruise](https://openkruise.io/)[^3] >= v1.6
# Hardware # Hardware
@@ -117,7 +117,7 @@ deployments, you need to make use of your own production-grade services; see the
|----------|---------------------|---------|-----------------------| |----------|---------------------|---------|-----------------------|
| Cache | Memcached | `1.6.x` | Memcached | | Cache | Memcached | `1.6.x` | Memcached |
| | Redis | `7.x.x` | Redis | | | Redis | `7.x.x` | Redis |
| Database | Cassandra[^2] | `5.0.x` | Cassandra | | Database | Cassandra[^3] | `5.0.x` | Cassandra |
| | MariaDB | `10.x` | MariaDB | | | MariaDB | `10.x` | MariaDB |
| | PostgreSQL | `15.x` | PostgreSQL | | | PostgreSQL | `15.x` | PostgreSQL |
| Mail | Mail Transfer Agent | | Postfix | | Mail | Mail Transfer Agent | | Postfix |
@@ -137,6 +137,8 @@ Helmfile requires [HelmDiff](https://github.com/databus23/helm-diff) to compare
# Footnotes # Footnotes
[^1]: Due to [restrictions on Kubernetes `emptyDir`](https://github.com/kubernetes/kubernetes/pull/130277) you need a volume provisioner that has sticky bit support, otherwise the OpenProject seeder job will fail. [^1]: Due to a [Helm bug](https://github.com/helm/helm/issues/30890) Helm 3.18.0 is not supported.
[^2]: Required for Dovecot Pro as part of openDesk Enterprise Edition. [^2]: Due to [restrictions on Kubernetes `emptyDir`](https://github.com/kubernetes/kubernetes/pull/130277) you need a volume provisioner that has sticky bit support, otherwise the OpenProject seeder job will fail.
[^3]: Required for Dovecot Pro as part of openDesk Enterprise Edition.

View File

@@ -197,7 +197,7 @@ This list gives you an overview of templated security settings and if they compl
| **nubus**/ums/nubusUdmListener | :x: | no | n/a | yes | yes | 102 | 65534 | yes | yes | | **nubus**/ums/nubusUdmListener | :x: | no | n/a | yes | yes | 102 | 65534 | yes | yes |
| **nubus**/ums/nubusUdmRestApi | :x: | no | n/a | yes | yes | 1000 | 1000 | yes | yes | | **nubus**/ums/nubusUdmRestApi | :x: | no | n/a | yes | yes | 1000 | 1000 | yes | yes |
| **nubus**/ums/nubusUmcGateway | :x: | no | n/a | yes | yes | 1000 | 1000 | yes | yes | | **nubus**/ums/nubusUmcGateway | :x: | no | n/a | yes | yes | 1000 | 1000 | yes | yes |
| **nubus**/ums/nubusUmcServer | :x: | no | n/a | yes | no | 0 | 0 | yes | yes | | **nubus**/ums/nubusUmcServer | :x: | no | n/a | yes | yes | 999 | 999 | yes | yes |
| **open-xchange**/dovecot | :x: | no | n/a | yes | n/a | n/a | n/a | yes | no ["CHOWN","DAC_OVERRIDE","KILL","NET_BIND_SERVICE","SETGID","SETUID","SYS_CHROOT"] | | **open-xchange**/dovecot | :x: | no | n/a | yes | n/a | n/a | n/a | yes | no ["CHOWN","DAC_OVERRIDE","KILL","NET_BIND_SERVICE","SETGID","SETUID","SYS_CHROOT"] |
| **open-xchange**/open-xchange/appsuite/core-documentconverter | :x: | no | no | no | yes | 987 | 1000 | yes | yes | | **open-xchange**/open-xchange/appsuite/core-documentconverter | :x: | no | no | no | yes | 987 | 1000 | yes | yes |
| **open-xchange**/open-xchange/appsuite/core-guidedtours | :white_check_mark: | no | no | yes | yes | 1000 | 1000 | yes | yes | | **open-xchange**/open-xchange/appsuite/core-guidedtours | :white_check_mark: | no | no | yes | yes | 1000 | 1000 | yes | yes |

View File

@@ -197,6 +197,12 @@ keycloak:
name: "ums-opendesk-keycloak-credentials" name: "ums-opendesk-keycloak-credentials"
keyMapping: keyMapping:
adminPassword: "admin_password" adminPassword: "admin_password"
login:
messages:
de:
loginTitle: "Anmeldung bei {{ .Values.theme.texts.productName }}"
en:
loginTitle: "Sign in to {{ .Values.theme.texts.productName }}"
podAnnotations: podAnnotations:
intents.otterize.com/service-name: "ums-keycloak" intents.otterize.com/service-name: "ums-keycloak"
{{- with .Values.annotations.nubusKeycloak.pod }} {{- with .Values.annotations.nubusKeycloak.pod }}
@@ -256,6 +262,20 @@ keycloak:
nubusGuardian: nubusGuardian:
authorizationApi: authorizationApi:
containerSecurityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- ALL
privileged: false
readOnlyRootFilesystem: true
runAsGroup: 1000
runAsNonRoot: true
runAsUser: 1000
seccompProfile:
type: RuntimeDefault
seLinuxOptions:
{{ .Values.seLinuxOptions.umsGuardianAuthorizationApi | toYaml | nindent 8 }}
image: image:
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusGuardianAuthorizationApi.registry | quote }} registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusGuardianAuthorizationApi.registry | quote }}
repository: {{ .Values.images.nubusGuardianAuthorizationApi.repository }} repository: {{ .Values.images.nubusGuardianAuthorizationApi.repository }}
@@ -274,20 +294,6 @@ nubusGuardian:
replicaCount: {{ .Values.replicas.umsGuardianAuthorizationApi }} replicaCount: {{ .Values.replicas.umsGuardianAuthorizationApi }}
resources: resources:
{{ .Values.resources.umsGuardianAuthorizationApi | toYaml | nindent 6 }} {{ .Values.resources.umsGuardianAuthorizationApi | toYaml | nindent 6 }}
securityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- ALL
privileged: false
readOnlyRootFilesystem: true
runAsGroup: 1000
runAsNonRoot: true
runAsUser: 1000
seccompProfile:
type: RuntimeDefault
seLinuxOptions:
{{ .Values.seLinuxOptions.umsGuardianAuthorizationApi | toYaml | nindent 8 }}
global: global:
podAnnotations: podAnnotations:
{{ .Values.annotations.nubusGuardian.globalPod | toYaml | nindent 6 }} {{ .Values.annotations.nubusGuardian.globalPod | toYaml | nindent 6 }}
@@ -350,6 +356,20 @@ nubusGuardian:
# enabled: true # enabled: true
secretName: "" secretName: ""
managementApi: managementApi:
containerSecurityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- ALL
privileged: false
readOnlyRootFilesystem: true
runAsGroup: 1000
runAsNonRoot: true
runAsUser: 1000
seccompProfile:
type: RuntimeDefault
seLinuxOptions:
{{ .Values.seLinuxOptions.umsGuardianManagementApi | toYaml | nindent 8 }}
image: image:
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusGuardianManagementApi.registry | quote }} registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusGuardianManagementApi.registry | quote }}
repository: {{ .Values.images.nubusGuardianManagementApi.repository }} repository: {{ .Values.images.nubusGuardianManagementApi.repository }}
@@ -368,7 +388,8 @@ nubusGuardian:
replicaCount: {{ .Values.replicas.umsGuardianManagementApi }} replicaCount: {{ .Values.replicas.umsGuardianManagementApi }}
resources: resources:
{{ .Values.resources.umsGuardianManagementApi | toYaml | nindent 6 }} {{ .Values.resources.umsGuardianManagementApi | toYaml | nindent 6 }}
securityContext: managementUi:
containerSecurityContext:
allowPrivilegeEscalation: false allowPrivilegeEscalation: false
capabilities: capabilities:
drop: drop:
@@ -381,8 +402,7 @@ nubusGuardian:
seccompProfile: seccompProfile:
type: RuntimeDefault type: RuntimeDefault
seLinuxOptions: seLinuxOptions:
{{ .Values.seLinuxOptions.umsGuardianManagementApi | toYaml | nindent 8 }} {{ .Values.seLinuxOptions.umsGuardianManagementUi | toYaml | nindent 8 }}
managementUi:
image: image:
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusGuardianManagementUi.registry | quote }} registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusGuardianManagementUi.registry | quote }}
repository: {{ .Values.images.nubusGuardianManagementUi.repository }} repository: {{ .Values.images.nubusGuardianManagementUi.repository }}
@@ -398,7 +418,8 @@ nubusGuardian:
replicaCount: {{ .Values.replicas.umsGuardianManagementUi }} replicaCount: {{ .Values.replicas.umsGuardianManagementUi }}
resources: resources:
{{ .Values.resources.umsGuardianManagementUi | toYaml | nindent 6 }} {{ .Values.resources.umsGuardianManagementUi | toYaml | nindent 6 }}
securityContext: openPolicyAgent:
containerSecurityContext:
allowPrivilegeEscalation: false allowPrivilegeEscalation: false
capabilities: capabilities:
drop: drop:
@@ -411,8 +432,7 @@ nubusGuardian:
seccompProfile: seccompProfile:
type: RuntimeDefault type: RuntimeDefault
seLinuxOptions: seLinuxOptions:
{{ .Values.seLinuxOptions.umsGuardianManagementUi | toYaml | nindent 8 }} {{ .Values.seLinuxOptions.umsGuardianOpenPolicyAgent | toYaml | nindent 8 }}
openPolicyAgent:
image: image:
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusOpenPolicyAgent.registry | quote }} registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusOpenPolicyAgent.registry | quote }}
repository: {{ .Values.images.nubusOpenPolicyAgent.repository }} repository: {{ .Values.images.nubusOpenPolicyAgent.repository }}
@@ -428,20 +448,6 @@ nubusGuardian:
replicaCount: {{ .Values.replicas.umsGuardianOpenPolicyAgent }} replicaCount: {{ .Values.replicas.umsGuardianOpenPolicyAgent }}
resources: resources:
{{ .Values.resources.umsOpenPolicyAgent | toYaml | nindent 6 }} {{ .Values.resources.umsOpenPolicyAgent | toYaml | nindent 6 }}
securityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- ALL
privileged: false
readOnlyRootFilesystem: true
runAsGroup: 1000
runAsNonRoot: true
runAsUser: 1000
seccompProfile:
type: RuntimeDefault
seLinuxOptions:
{{ .Values.seLinuxOptions.umsGuardianOpenPolicyAgent | toYaml | nindent 8 }}
postgresql: postgresql:
connection: connection:
host: {{ .Values.databases.umsGuardianManagementApi.host | quote }} host: {{ .Values.databases.umsGuardianManagementApi.host | quote }}
@@ -449,26 +455,29 @@ nubusGuardian:
auth: auth:
username: {{ .Values.databases.umsGuardianManagementApi.username | quote }} username: {{ .Values.databases.umsGuardianManagementApi.username | quote }}
database: {{ .Values.databases.umsGuardianManagementApi.name | quote }} database: {{ .Values.databases.umsGuardianManagementApi.name | quote }}
credentialSecret: existingSecret:
name: "ums-guardian-postgresql-opendesk-credentials" name: "ums-guardian-postgresql-opendesk-credentials"
key: "guardianDatabasePassword" keyMapping:
password: "guardianDatabasePassword"
provisioning: provisioning:
enabled: false enabled: false
config: config:
nubusBaseUrl: {{ printf "https://%s.%s" .Values.global.hosts.nubus .Values.global.domain }} nubusBaseUrl: {{ printf "https://%s.%s" .Values.global.hosts.nubus .Values.global.domain }}
keycloak: keycloak:
realm: {{ .Values.platform.realm | quote }}
username: "kcadmin"
connection:
host: "{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}"
baseUrl: "http://ums-keycloak:8080"
credentialSecret: credentialSecret:
name: "ums-opendesk-keycloak-credentials" name: "ums-opendesk-keycloak-credentials"
key: "admin_password" key: "admin_password"
managementApi: realm: {{ .Values.platform.realm | quote }}
credentialSecret: username: "kcadmin"
keycloak:
auth:
existingSecret:
name: "ums-opendesk-guardian-client-secret" name: "ums-opendesk-guardian-client-secret"
key: "managementApiClientSecret" keyMapping:
password: "managementApiClientSecret"
connection:
host: "{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}"
baseUrl: "http://ums-keycloak:8080"
image: image:
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusGuardianProvisioning.registry | quote }} registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nubusGuardianProvisioning.registry | quote }}
repository: {{ .Values.images.nubusGuardianProvisioning.repository }} repository: {{ .Values.images.nubusGuardianProvisioning.repository }}
@@ -787,8 +796,15 @@ nubusPortalConsumer:
logLevel: {{ if .Values.debug.enabled }}"DEBUG"{{ else }}"INFO"{{ end }} logLevel: {{ if .Values.debug.enabled }}"DEBUG"{{ else }}"INFO"{{ end }}
objectStorage: objectStorage:
auth: auth:
accessKeyId: {{ .Values.objectstores.nubus.username | quote }}
accessKey: {{ .Values.objectstores.nubus.username | quote }} accessKey: {{ .Values.objectstores.nubus.username | quote }}
secretAccessKey: {{ .Values.objectstores.nubus.secretKey | default .Values.secrets.minio.umsUser | quote }}
secretKey: {{ .Values.objectstores.nubus.secretKey | default .Values.secrets.minio.umsUser | quote }} secretKey: {{ .Values.objectstores.nubus.secretKey | default .Values.secrets.minio.umsUser | quote }}
existingSecret:
name: "{{ .Release.Name }}-portal-consumer-minio-credentials"
keyMapping:
accessKey: "accessKey"
secretKey: "secretKey"
bucketName: {{ .Values.objectstores.nubus.bucket | quote }} bucketName: {{ .Values.objectstores.nubus.bucket | quote }}
endpoint: {{ printf "https://%s" (.Values.objectstores.nubus.endpoint | default (printf "%s.%s" .Values.global.hosts.minioApi .Values.global.domain)) | quote }} endpoint: {{ printf "https://%s" (.Values.objectstores.nubus.endpoint | default (printf "%s.%s" .Values.global.hosts.minioApi .Values.global.domain)) | quote }}
persistence: persistence:
@@ -1557,12 +1573,12 @@ nubusUmcServer:
capabilities: capabilities:
drop: drop:
- "ALL" - "ALL"
runAsUser: 0 runAsUser: 999
runAsGroup: 0 runAsGroup: 999
seccompProfile: seccompProfile:
type: "RuntimeDefault" type: "RuntimeDefault"
readOnlyRootFilesystem: true readOnlyRootFilesystem: true
runAsNonRoot: false runAsNonRoot: true
seLinuxOptions: seLinuxOptions:
{{ .Values.seLinuxOptions.umsUmcServer | toYaml | nindent 6 }} {{ .Values.seLinuxOptions.umsUmcServer | toYaml | nindent 6 }}
containerSecurityContextInit: containerSecurityContextInit:
@@ -1598,12 +1614,12 @@ nubusUmcServer:
- "MKNOD" - "MKNOD"
- "NET_BIND_SERVICE" - "NET_BIND_SERVICE"
- "SYS_CHROOT" - "SYS_CHROOT"
runAsUser: 0 runAsUser: 999
runAsGroup: 0 runAsGroup: 999
seccompProfile: seccompProfile:
type: "RuntimeDefault" type: "RuntimeDefault"
readOnlyRootFilesystem: true readOnlyRootFilesystem: true
runAsNonRoot: false runAsNonRoot: true
seLinuxOptions: seLinuxOptions:
{{ .Values.seLinuxOptions.umsUmcServer | toYaml | nindent 6 }} {{ .Values.seLinuxOptions.umsUmcServer | toYaml | nindent 6 }}
image: image:

View File

@@ -26,6 +26,9 @@ dovecot:
username: {{ .Values.databases.dovecotDictmap.username | quote }} username: {{ .Values.databases.dovecotDictmap.username | quote }}
password: password:
value: {{ .Values.secrets.cassandra.dovecotDictmapUser | quote }} value: {{ .Values.secrets.cassandra.dovecotDictmapUser | quote }}
existingSecret:
name: {{ .Values.externalSecrets.cassandra.dovecotDictmapUser.name | quote }}
key: {{ .Values.externalSecrets.cassandra.dovecotDictmapUser.key | quote }}
keyspace: {{ .Values.databases.dovecotDictmap.name | quote }} keyspace: {{ .Values.databases.dovecotDictmap.name | quote }}
sharedMailboxes: sharedMailboxes:
enabled: false enabled: false
@@ -34,15 +37,28 @@ dovecot:
username: {{ .Values.databases.dovecotACL.username | quote }} username: {{ .Values.databases.dovecotACL.username | quote }}
password: password:
value: {{ .Values.secrets.cassandra.dovecotACLUser | quote }} value: {{ .Values.secrets.cassandra.dovecotACLUser | quote }}
existingSecret:
name: {{ .Values.externalSecrets.cassandra.dovecotACLUser.name | quote }}
key: {{ .Values.externalSecrets.cassandra.dovecotACLUser.key | quote }}
keyspace: {{ .Values.databases.dovecotACL.name | quote }} keyspace: {{ .Values.databases.dovecotACL.name | quote }}
objectStorage: objectStorage:
bucket: {{ .Values.objectstores.dovecot.bucket | quote }}
encryption: encryption:
privateKey: privateKey:
value: {{ env "DOVECOT_CRYPT_PRIVATE_KEY" | quote }} value: {{ env "DOVECOT_CRYPT_PRIVATE_KEY" | quote }}
existingSecret:
name: {{ .Values.externalSecrets.dovecot.objectStorage.encryption.privateKey.name | quote }}
key: {{ .Values.externalSecrets.dovecot.objectStorage.encryption.privateKey.key | quote }}
publicKey: publicKey:
value: {{ env "DOVECOT_CRYPT_PUBLIC_KEY" | quote }} value: {{ env "DOVECOT_CRYPT_PUBLIC_KEY" | quote }}
existingSecret:
name: {{ .Values.externalSecrets.dovecot.objectStorage.encryption.publicKey.name | quote }}
key: {{ .Values.externalSecrets.dovecot.objectStorage.encryption.publicKey.key | quote }}
fqdn: {{ .Values.objectstores.dovecot.endpoint | default (printf "%s.%s" .Values.global.hosts.minioApi .Values.global.domain) | quote }} fqdn: {{ .Values.objectstores.dovecot.endpoint | default (printf "%s.%s" .Values.global.hosts.minioApi .Values.global.domain) | quote }}
username: {{ .Values.objectstores.dovecot.username | quote }} username: {{ .Values.objectstores.dovecot.username | quote }}
password: password:
value: {{ .Values.secrets.minio.dovecotUser | quote }} value: {{ .Values.secrets.minio.dovecotUser | quote }}
existingSecret:
name: {{ .Values.externalSecrets.minio.dovecotUser.name | quote }}
key: {{ .Values.externalSecrets.minio.dovecotUser.key | quote }}
... ...

View File

@@ -27,10 +27,16 @@ dovecot:
defaultMailDomain: {{ .Values.global.mailDomain | default .Values.global.domain | quote }} defaultMailDomain: {{ .Values.global.mailDomain | default .Values.global.domain | quote }}
password: password:
value: {{ .Values.secrets.dovecot.doveadm | quote }} value: {{ .Values.secrets.dovecot.doveadm | quote }}
existingSecret:
name: {{ .Values.externalSecrets.dovecot.doveadm.name | quote }}
key: {{ .Values.externalSecrets.dovecot.doveadm.key | quote }}
migration: migration:
enabled: {{ .Values.functional.migration.oxAppSuite.enabled }} enabled: {{ .Values.functional.migration.oxAppSuite.enabled }}
masterPassword: masterPassword:
value: {{ .Values.secrets.oxAppSuite.migrationsMasterPassword | quote }} value: {{ .Values.secrets.oxAppSuite.migrationsMasterPassword | quote }}
existingSecret:
name: {{ .Values.externalSecrets.oxAppSuite.migrationsMasterPassword.name | quote }}
key: {{ .Values.externalSecrets.oxAppSuite.migrationsMasterPassword.key | quote }}
ldap: ldap:
enabled: true enabled: true
host: {{ .Values.ldap.host | quote }} host: {{ .Values.ldap.host | quote }}
@@ -39,12 +45,18 @@ dovecot:
dn: "uid=ldapsearch_dovecot,cn=users,{{ .Values.ldap.baseDn }}" dn: "uid=ldapsearch_dovecot,cn=users,{{ .Values.ldap.baseDn }}"
password: password:
value: {{ .Values.secrets.nubus.ldapSearch.dovecot | quote }} value: {{ .Values.secrets.nubus.ldapSearch.dovecot | quote }}
existingSecret:
name: {{ .Values.externalSecrets.nubus.ldapSearch.dovecot.name | quote }}
key: {{ .Values.externalSecrets.nubus.ldapSearch.dovecot.key | quote }}
oidc: oidc:
enabled: true enabled: true
clientID: clientID:
value: "opendesk-dovecot" value: "opendesk-dovecot"
clientSecret: clientSecret:
value: {{ .Values.secrets.keycloak.clientSecret.dovecot | quote }} value: {{ .Values.secrets.keycloak.clientSecret.dovecot | quote }}
existingSecret:
name: {{ .Values.externalSecrets.keycloak.clientSecret.dovecot.name | quote }}
key: {{ .Values.externalSecrets.keycloak.clientSecret.dovecot.key | quote }}
introspectionHost: {{ printf "%s.%s" .Values.global.hosts.keycloak .Values.global.domain | quote }} introspectionHost: {{ printf "%s.%s" .Values.global.hosts.keycloak .Values.global.domain | quote }}
introspectionPath: "/realms/{{ .Values.platform.realm }}/protocol/openid-connect/token/introspect" introspectionPath: "/realms/{{ .Values.platform.realm }}/protocol/openid-connect/token/introspect"
usernameAttribute: "opendesk_username" usernameAttribute: "opendesk_username"
@@ -83,6 +95,10 @@ containerSecurityContext:
seLinuxOptions: seLinuxOptions:
{{ .Values.seLinuxOptions.dovecot | toYaml | nindent 4 }} {{ .Values.seLinuxOptions.dovecot | toYaml | nindent 4 }}
{{- if .Values.debug.enabled }}
debug: true
{{- end }}
{{- if .Values.certificate.selfSigned }} {{- if .Values.certificate.selfSigned }}
extraVolumes: extraVolumes:
- name: "trusted-cert-secret-volume" - name: "trusted-cert-secret-volume"

View File

@@ -291,7 +291,12 @@ appsuite:
open-xchange-documents-backend: "disabled" open-xchange-documents-backend: "disabled"
open-xchange-documents-monitoring: "disabled" open-xchange-documents-monitoring: "disabled"
open-xchange-documents-templates: "disabled" open-xchange-documents-templates: "disabled"
# Required for the central contacts integration
open-xchange-oauth-provider: "enabled"
# Needed to set com.openexchange.hostname
open-xchange-hostname-config-cascade: "enabled"
properties: properties:
com.openexchange.hostname: {{ printf "%s.%s" .Values.global.hosts.openxchange .Values.global.domain }}
com.openexchange.UIWebPath: "/appsuite/" com.openexchange.UIWebPath: "/appsuite/"
com.openexchange.showAdmin: "false" com.openexchange.showAdmin: "false"
# PDF Export # PDF Export
@@ -323,6 +328,15 @@ appsuite:
com.openexchange.oidc.userLookupNamePart: "full" com.openexchange.oidc.userLookupNamePart: "full"
com.openexchange.oidc.enablePasswordGrant: "true" com.openexchange.oidc.enablePasswordGrant: "true"
com.openexchange.oidc.passwordGrantUserNamePart: "local-part" com.openexchange.oidc.passwordGrantUserNamePart: "local-part"
# OAUTH
com.openexchange.oauth.provider.enabled: "true"
com.openexchange.oauth.provider.allowedIssuer: "https://{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}/realms/{{ .Values.platform.realm }}"
com.openexchange.oauth.provider.contextLookupClaim: "context"
com.openexchange.oauth.provider.contextLookupNamePart: "full"
com.openexchange.oauth.provider.jwt.jwksUri: "https://{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}/realms/{{ .Values.platform.realm }}/protocol/openid-connect/certs"
com.openexchange.oauth.provider.mode: "expect_jwt"
com.openexchange.oauth.provider.userLookupNamePart: "full"
com.openexchange.oauth.provider.userLookupClaim: "opendesk_username"
# MAIL # MAIL
com.openexchange.mail.authType: "xoauth2" com.openexchange.mail.authType: "xoauth2"
com.openexchange.mail.loginSource: "mail" com.openexchange.mail.loginSource: "mail"

View File

@@ -55,6 +55,10 @@ postfix:
{{- if .Values.apps.dkimpy.enabled }} {{- if .Values.apps.dkimpy.enabled }}
dkimpyHost: "opendesk-dkimpy-milter.{{ .Release.Namespace }}.svc.{{.Values.cluster.networking.domain }}:8892" dkimpyHost: "opendesk-dkimpy-milter.{{ .Release.Namespace }}.svc.{{.Values.cluster.networking.domain }}:8892"
{{- end }} {{- end }}
minTLSVersion: "TLSv1.3"
smtpdTLSMandatoryCiphers: "high"
rspamdHost: "" rspamdHost: ""
relayHost: {{ if .Values.smtp.host }}{{ printf "[%s]:%d" .Values.smtp.host .Values.smtp.port | quote }}{{ else }}""{{ end }} relayHost: {{ if .Values.smtp.host }}{{ printf "[%s]:%d" .Values.smtp.host .Values.smtp.port | quote }}{{ else }}""{{ end }}
allowRelayNets: false allowRelayNets: false

View File

@@ -65,8 +65,14 @@ postfix:
{{- end }} {{- end }}
rspamdHost: "" rspamdHost: ""
relayHost: {{ if .Values.smtp.host }}{{ printf "[%s]:%d" .Values.smtp.host .Values.smtp.port | quote }}{{ else }}""{{ end }} relayHost: {{ if .Values.smtp.host }}{{ printf "[%s]:%d" .Values.smtp.host .Values.smtp.port | quote }}{{ else }}""{{ end }}
# Warning: This setting allows unauthenticated mail relay from relayNets!
relayNets: {{ join " " .Values.cluster.networking.cidr | quote }} relayNets: {{ join " " .Values.cluster.networking.cidr | quote }}
allowRelayNets: true allowRelayNets: true
minTLSVersion: "TLSv1.3"
smtpdTLSMandatoryCiphers: "high"
smtpSASLAuthEnable: "yes" smtpSASLAuthEnable: "yes"
smtpSASLPasswordMaps: "lmdb:/etc/postfix/sasl_passwd.map" smtpSASLPasswordMaps: "lmdb:/etc/postfix/sasl_passwd.map"
smtpTLSSecurityLevel: "encrypt" smtpTLSSecurityLevel: "encrypt"
@@ -82,8 +88,14 @@ postfix:
enabled: true enabled: true
username: username:
value: "opendesk-system" value: "opendesk-system"
existingSecret:
name: {{ .Values.externalSecrets.postfix.opendeskSystemUsername.name | quote }}
key: {{ .Values.externalSecrets.postfix.opendeskSystemUsername.key | quote }}
password: password:
value: {{ .Values.secrets.postfix.opendeskSystemPassword | quote }} value: {{ .Values.secrets.postfix.opendeskSystemPassword | quote }}
existingSecret:
name: {{ .Values.externalSecrets.postfix.opendeskSystemPassword.name | quote }}
key: {{ .Values.externalSecrets.postfix.opendeskSystemPassword.key | quote }}
{{- if .Values.antivirus.milter.host }} {{- if .Values.antivirus.milter.host }}
smtpdMilters: "inet:{{ .Values.antivirus.milter.host }}:{{ .Values.antivirus.milter.port }}" smtpdMilters: "inet:{{ .Values.antivirus.milter.host }}:{{ .Values.antivirus.milter.port }}"

View File

@@ -13,7 +13,7 @@ images:
nextcloud: nextcloud:
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "zendis/opendesk-enterprise/components/supplier/nextcloud/images/opendesk-nextcloud" repository: "zendis/opendesk-enterprise/components/supplier/nextcloud/images/opendesk-nextcloud"
tag: "1.2.0@sha256:ddd2bec74a22a713967f62fcdcf18fa8d53d730c1db296d570143754c93d20a5" tag: "30.0.10@sha256:a63374dd44d3c6a8873da31fe0554b97fb29993a4cf18b9dd6a304b577f2f2b8"
openxchangeCoreMW: openxchangeCoreMW:
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "zendis/opendesk-enterprise/components/supplier/open-xchange/images-mirror/middleware-public-sector-pro" repository: "zendis/opendesk-enterprise/components/supplier/open-xchange/images-mirror/middleware-public-sector-pro"

View File

@@ -303,7 +303,7 @@ charts:
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/charts-mirror" repository: "bmi/opendesk/components/supplier/univention/charts-mirror"
name: "nubus" name: "nubus"
version: "1.8.0" version: "1.9.1"
verify: true verify: true
opendeskAlerts: opendeskAlerts:
# providerCategory: "Platform" # providerCategory: "Platform"
@@ -355,7 +355,7 @@ charts:
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/openproject/charts-mirror" repository: "bmi/opendesk/components/supplier/openproject/charts-mirror"
name: "openproject" name: "openproject"
version: "9.10.1" version: "10.0.1"
verify: true verify: true
openprojectBootstrap: openprojectBootstrap:
# providerCategory: "Platform" # providerCategory: "Platform"
@@ -387,7 +387,7 @@ charts:
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/open-xchange/charts-mirror" repository: "bmi/opendesk/components/supplier/open-xchange/charts-mirror"
name: "appsuite-public-sector" name: "appsuite-public-sector"
version: "2.18.36" version: "2.19.254"
verify: false verify: false
oxAppSuiteBootstrap: oxAppSuiteBootstrap:
# providerCategory: "Platform" # providerCategory: "Platform"

View File

@@ -0,0 +1,56 @@
# SPDX-FileCopyrightText: 2025 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
# SPDX-License-Identifier: Apache-2.0
# The variables set in this file are required to upgrade components to their "Enterprise" product variant.
---
externalSecrets:
cassandra:
dovecotACLUser:
name: ~
key: ~
dovecotDictmapUser:
name: ~
key: ~
dovecot:
doveadm:
name: ~
key: ~
objectStorage:
encryption:
privateKey:
name: ~
key: ~
publicKey:
name: ~
key: ~
keycloak:
clientSecret:
dovecot:
name: ~
key: ~
minio:
dovecotUser:
name: ~
key: ~
nubus:
ldapSearch:
dovecot:
name: ~
key: ~
oxAppSuite:
migrationsMasterPassword:
name: ~
key: ~
postfix:
opendeskSystemUsername:
name: ~
key: ~
opendeskSystemPassword:
name: ~
key: ~
...

View File

@@ -3,5 +3,5 @@
--- ---
global: global:
systemInformation: systemInformation:
releaseVersion: "v1.3.3" releaseVersion: "v1.4.2"
... ...

View File

@@ -320,7 +320,7 @@ images:
# upstreamRepository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud" # upstreamRepository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud"
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud" repository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud"
tag: "2.5.0@sha256:9457bc2116620e52dcd1f5f12f042090aa4cca2a3e4d5f64b7c84c232ca6bb63" tag: "30.0.10@sha256:a022c6279072eb45d14cab29296860a15ad0d5801f50a56928334eb99bae50d0"
nextcloudExporter: nextcloudExporter:
# providerCategory: "Platform" # providerCategory: "Platform"
# providerResponsible: "openDesk" # providerResponsible: "openDesk"
@@ -370,7 +370,7 @@ images:
# upstreamMirrorStartFrom: ["0", "41", "5"] # upstreamMirrorStartFrom: ["0", "41", "5"]
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/data-loader" repository: "bmi/opendesk/components/supplier/univention/images-mirror/data-loader"
tag: "0.89.0@sha256:3ed16810357ed01152e1e3f0d1cd66825bde53302f32d3caf700e324f7c1cffb" tag: "0.90.0@sha256:a776ea84ca5d4f984a1ecf1f97d8c90cd98894c3568401be6858a8e955c7ed92"
nubusGuardianAuthorizationApi: nubusGuardianAuthorizationApi:
# providerCategory: "Supplier" # providerCategory: "Supplier"
# providerResponsible: "Univention" # providerResponsible: "Univention"
@@ -410,17 +410,17 @@ images:
# upstreamMirrorStartFrom: ["0", "3", "0"] # upstreamMirrorStartFrom: ["0", "3", "0"]
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/guardian-init" repository: "bmi/opendesk/components/supplier/univention/images-mirror/guardian-init"
tag: "0.17.0@sha256:56acfc53c3d3e0a20ff77fe427ae794adbf03ccc66972c95188e0da9e87c4a62" tag: "0.19.1@sha256:9030841a136d9addc37b2b62d39d80b113b824e50bd9cdcd5cf2c22bad74eeb0"
nubusKeycloak: nubusKeycloak:
# providerCategory: "Supplier" # providerCategory: "Supplier"
# providerResponsible: "Univention" # providerResponsible: "Univention"
# upstreamRegistry: "https://artifacts.software-univention.de" # upstreamRegistry: "https://artifacts.software-univention.de"
# upstreamRepository: "nubus/images/keycloak" # upstreamRepository: "nubus/images/keycloak"
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+).+$' # upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
# upstreamMirrorStartFrom: ["22", "0", "3"] # upstreamMirrorStartFrom: ["0", "0", "1"]
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/keycloak" repository: "bmi/opendesk/components/supplier/univention/images-mirror/keycloak"
tag: "25.0.6-ucs6@sha256:1db8af70741bca9badeb3d5b0b145244dde1a2579fe4f966e488ce730cb07d65" tag: "0.0.1@sha256:ce2397ac38920750b81a8a6065f7ed8a551641c6562a551963a2857fe6822beb"
nubusKeycloakBootstrap: nubusKeycloakBootstrap:
# providerCategory: "Supplier" # providerCategory: "Supplier"
# providerResponsible: "Univention" # providerResponsible: "Univention"
@@ -430,7 +430,7 @@ images:
# upstreamMirrorStartFrom: ["0", "1", "0"] # upstreamMirrorStartFrom: ["0", "1", "0"]
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/keycloak-bootstrap" repository: "bmi/opendesk/components/supplier/univention/images-mirror/keycloak-bootstrap"
tag: "0.10.2@sha256:7406bfee267dff6520b8b3c0db098a79e7f9fe1b45307ea6b1edf26a2bcfc1aa" tag: "0.11.0@sha256:55ad741e01dd91bb9b0332fd602a6262d3618abdf97a86c13f1e6148b36bd242"
nubusKeycloakExtensionHandler: nubusKeycloakExtensionHandler:
# providerCategory: "Supplier" # providerCategory: "Supplier"
# providerResponsible: "Univention" # providerResponsible: "Univention"
@@ -460,7 +460,7 @@ images:
# upstreamMirrorStartFrom: ["0", "8", "2"] # upstreamMirrorStartFrom: ["0", "8", "2"]
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/ldap-notifier" repository: "bmi/opendesk/components/supplier/univention/images-mirror/ldap-notifier"
tag: "0.34.1@sha256:02d1a0d6ce7e154738f4a1c2323f901245b62c23c8e6c27ce19a57ab44cfdaa7" tag: "0.37.0@sha256:b148e15c268badc45db9a6ce12c97cce332d25b86e86fec47fc417b8fe74d0d2"
nubusLdapServer: nubusLdapServer:
# providerCategory: "Supplier" # providerCategory: "Supplier"
# providerResponsible: "Univention" # providerResponsible: "Univention"
@@ -470,7 +470,7 @@ images:
# upstreamMirrorStartFrom: ["0", "8", "2"] # upstreamMirrorStartFrom: ["0", "8", "2"]
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/ldap-server" repository: "bmi/opendesk/components/supplier/univention/images-mirror/ldap-server"
tag: "0.34.1@sha256:5bb7931393d2023dc63c1338632b01d4c50372cb83192cdb329512b93e109984" tag: "0.37.0@sha256:caf7de9e121e5500c52dc8338b80057acd3eaa1e3877b526a5ae944bb53fe876"
nubusLdapServerDhInitContainer: nubusLdapServerDhInitContainer:
# providerCategory: 'Community' # providerCategory: 'Community'
# providerResponsible: 'Univention' # providerResponsible: 'Univention'
@@ -488,7 +488,7 @@ images:
# upstreamMirrorStartFrom: ["0", "29", "1"] # upstreamMirrorStartFrom: ["0", "29", "1"]
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/ldap-server-elector" repository: "bmi/opendesk/components/supplier/univention/images-mirror/ldap-server-elector"
tag: "0.33.0@sha256:c1304a156094b276199fb263baf93e3704ceece478d7f663061b1b1f05f5931c" tag: "0.37.0@sha256:c9580e33ea48ec5d7ab2d4816926ca1b2ef72787f7615f31b124119c376c4324"
nubusNats: nubusNats:
# providerCategory: 'Community' # providerCategory: 'Community'
# providerResponsible: 'Univention' # providerResponsible: 'Univention'
@@ -522,7 +522,7 @@ images:
# upstreamMirrorStartFrom: ["0", "9", "4"] # upstreamMirrorStartFrom: ["0", "9", "4"]
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/notifications-api" repository: "bmi/opendesk/components/supplier/univention/images-mirror/notifications-api"
tag: "0.63.0@sha256:4c2e01e609fb83df6d090c389b5c63d4b1477bdb133b910cacf2f2a1ce1c39e1" tag: "0.67.0@sha256:da28ce84d97b78027eafbe0bcf8286a333efffdfc52a8abe852caed9d8cde339"
nubusOpendeskExtension: nubusOpendeskExtension:
# providerCategory: "Platform" # providerCategory: "Platform"
# providerResponsible: "openDesk" # providerResponsible: "openDesk"
@@ -568,7 +568,7 @@ images:
# upstreamMirrorStartFrom: ["0", "27", "0"] # upstreamMirrorStartFrom: ["0", "27", "0"]
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/portal-consumer" repository: "bmi/opendesk/components/supplier/univention/images-mirror/portal-consumer"
tag: "0.63.0@sha256:e331f87738e716b0a16199b6aeaec917509946ce7b7ee91e608e70091dd279cc" tag: "0.67.1@sha256:580adf9079d27f53f6efd0c519252c7855f6907e3badc033b994165856b16126"
nubusPortalExtension: nubusPortalExtension:
# providerCategory: "Supplier" # providerCategory: "Supplier"
# providerResponsible: "Univention" # providerResponsible: "Univention"
@@ -596,7 +596,7 @@ images:
# upstreamMirrorStartFrom: ["0", "9", "4"] # upstreamMirrorStartFrom: ["0", "9", "4"]
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/portal-server" repository: "bmi/opendesk/components/supplier/univention/images-mirror/portal-server"
tag: "0.63.0@sha256:04cff7bb6b565e4ff03ffd1a6b6ab6c76b98bb9ea0fb8e703551f1b586ea7c27" tag: "0.67.0@sha256:d9418c7a1db7541ced1e3034f45683c190bf63270c6ba8f3d67c1fe0ac2edb1a"
nubusProvisioningDispatcher: nubusProvisioningDispatcher:
# providerCategory: "Supplier" # providerCategory: "Supplier"
# providerResponsible: "Univention" # providerResponsible: "Univention"
@@ -606,7 +606,7 @@ images:
# upstreamMirrorStartFrom: ["0", "14", "0"] # upstreamMirrorStartFrom: ["0", "14", "0"]
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-dispatcher" repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-dispatcher"
tag: "0.49.3@sha256:1089683a7e04259b335c79c13ceca2879d5d834a13d9c93ef62315f3086c9efd" tag: "0.51.0@sha256:f0cea25f788ff565b883e50c6138874c6f0338e0f91c5f8a32595323059930ef"
nubusProvisioningEventsAndConsumerApi: nubusProvisioningEventsAndConsumerApi:
# providerCategory: "Supplier" # providerCategory: "Supplier"
# providerResponsible: "Univention" # providerResponsible: "Univention"
@@ -616,7 +616,7 @@ images:
# upstreamMirrorStartFrom: ["0", "14", "0"] # upstreamMirrorStartFrom: ["0", "14", "0"]
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-events-and-consumer-api" repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-events-and-consumer-api"
tag: "0.49.3@sha256:56a5ca05a570f5a0f68ac67abbf8726541455f03bf0bada0495187d1a0fe963a" tag: "0.51.0@sha256:66fec83fd5033cf32cd759e9c73f7ae659a4ec45a433f13417a12e007b1d4db6"
nubusProvisioningPrefill: nubusProvisioningPrefill:
# providerCategory: "Supplier" # providerCategory: "Supplier"
# providerResponsible: "Univention" # providerResponsible: "Univention"
@@ -626,7 +626,7 @@ images:
# upstreamMirrorStartFrom: ["0", "14", "0"] # upstreamMirrorStartFrom: ["0", "14", "0"]
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-prefill" repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-prefill"
tag: "0.49.3@sha256:761863e5499eb702d0a606e9a58d10055c637ed286ff18998125cb5f82a7c788" tag: "0.51.0@sha256:ff04d8cec6ecc0b33cdea164e1ba1222c90ed9fe8370057a58329b4521e56de1"
nubusProvisioningUdmListener: nubusProvisioningUdmListener:
# providerCategory: "Supplier" # providerCategory: "Supplier"
# providerResponsible: "Univention" # providerResponsible: "Univention"
@@ -636,7 +636,7 @@ images:
# upstreamMirrorStartFrom: ["0", "14", "0"] # upstreamMirrorStartFrom: ["0", "14", "0"]
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-udm-listener" repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-udm-listener"
tag: "0.49.3@sha256:9bd8dd7531e3247761a6347a1889640821121c56435a96c286d1f6385a3152e7" tag: "0.51.0@sha256:5f0bba855945da2fa97d40b0fe51a14e3495b0b6da83562def6a6fcf4c21c059"
nubusProvisioningUdmTransformer: nubusProvisioningUdmTransformer:
# providerCategory: "Supplier" # providerCategory: "Supplier"
# providerResponsible: "Univention" # providerResponsible: "Univention"
@@ -646,7 +646,7 @@ images:
# upstreamMirrorStartFrom: ["0", "14", "0"] # upstreamMirrorStartFrom: ["0", "14", "0"]
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-udm-transformer" repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-udm-transformer"
tag: "0.49.3@sha256:9ce6b3798fb6faba6ebfac1be19b51d12bc8b312decf87f482a2371cb961805e" tag: "0.51.0@sha256:ce9c312699ebe42c2e1df0d6caf150dfda1e4cc3fc1aaebe62c9ea5de8c11780"
nubusSelfServiceConsumer: nubusSelfServiceConsumer:
# providerCategory: "Supplier" # providerCategory: "Supplier"
# providerResponsible: "Univention" # providerResponsible: "Univention"
@@ -656,7 +656,7 @@ images:
# upstreamMirrorStartFrom: ["0", "3", "2"] # upstreamMirrorStartFrom: ["0", "3", "2"]
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/selfservice-invitation" repository: "bmi/opendesk/components/supplier/univention/images-mirror/selfservice-invitation"
tag: "0.14.0@sha256:999c50058a02f6006a8d1732b651a5c738c5ee91fc453dc8ae3fcdbb9d4192c0" tag: "0.15.0@sha256:a7c4c097029de8903e3c2eee2082d740b5352dcc7a7a2a3c330bd9ebd7ad5b62"
nubusUdmRestApi: nubusUdmRestApi:
# providerCategory: "Supplier" # providerCategory: "Supplier"
# providerResponsible: "Univention" # providerResponsible: "Univention"
@@ -666,7 +666,7 @@ images:
# upstreamMirrorStartFrom: ["0", "9", "3"] # upstreamMirrorStartFrom: ["0", "9", "3"]
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/udm-rest-api" repository: "bmi/opendesk/components/supplier/univention/images-mirror/udm-rest-api"
tag: "0.29.0@sha256:2b061d1cf244aeadcb790a08cac94804a32abe73dd442382355a6657b05c0ff2" tag: "0.30.0@sha256:9503666bac5f44a1d7cb6f17c6fd11a7d6976bc9059938596b6ac9f7bb581ca5"
nubusUmcGateway: nubusUmcGateway:
# providerCategory: "Supplier" # providerCategory: "Supplier"
# providerResponsible: "Univention" # providerResponsible: "Univention"
@@ -676,7 +676,7 @@ images:
# upstreamMirrorStartFrom: ["0", "7", "3"] # upstreamMirrorStartFrom: ["0", "7", "3"]
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/umc-gateway" repository: "bmi/opendesk/components/supplier/univention/images-mirror/umc-gateway"
tag: "0.38.0@sha256:5abece086fc55cc318453a23634094bdf4e0f9922debce87fbb1aa4d55b9eac1" tag: "0.43.1@sha256:e1f23a199e1e35667e2ba6a45866bcb6d37bc2b13f3b8134e511ae95973c743b"
nubusUmcServer: nubusUmcServer:
# providerCategory: "Supplier" # providerCategory: "Supplier"
# providerResponsible: "Univention" # providerResponsible: "Univention"
@@ -686,7 +686,7 @@ images:
# upstreamMirrorStartFrom: ["0", "7", "3"] # upstreamMirrorStartFrom: ["0", "7", "3"]
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/umc-server" repository: "bmi/opendesk/components/supplier/univention/images-mirror/umc-server"
tag: "0.38.0@sha256:2733c21900c8f861f53cff5f65ed20a21881180ff80472491c014e1e2a9c2a9d" tag: "0.43.1@sha256:1aef76db446164c3ffaeaf233e9ef6303ebb1609b47f918ac4ab6714abf95283"
nubusUmcServerProxy: nubusUmcServerProxy:
# providerCategory: "Supplier" # providerCategory: "Supplier"
# providerResponsible: "Univention" # providerResponsible: "Univention"
@@ -704,7 +704,7 @@ images:
# upstreamMirrorStartFrom: ["0", "9", "4"] # upstreamMirrorStartFrom: ["0", "9", "4"]
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/wait-for-dependency" repository: "bmi/opendesk/components/supplier/univention/images-mirror/wait-for-dependency"
tag: "0.28.0@sha256:816ad27b76046be360398274ba3c1f1bcec8f58c2ea5a200b2fb675aab1a5ab8" tag: "0.30.0@sha256:fa804c2a10aa42439bf3f388007d7e55c046d6da6dc8a74c27f5a989fd422c8d"
opendeskKeycloakBootstrap: opendeskKeycloakBootstrap:
# providerCategory: "Platform" # providerCategory: "Platform"
# providerResponsible: "openDesk" # providerResponsible: "openDesk"
@@ -730,7 +730,7 @@ images:
# upstreamMirrorStartFrom: ["13", "1", "1"] # upstreamMirrorStartFrom: ["13", "1", "1"]
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/openproject/images-mirror/open_desk" repository: "bmi/opendesk/components/supplier/openproject/images-mirror/open_desk"
tag: "15.5.1@sha256:9ca328a30fc1e143fc1a34942836ff44923c05c327c27779e248767f2ce9ffc7" tag: "16.0.0@sha256:7a5dc15294834e96c9a7ae48ada3aedee4b5de517dd82e953861daf861430fd7"
openprojectBootstrap: openprojectBootstrap:
# providerCategory: "Platform" # providerCategory: "Platform"
# providerResponsible: "openDesk" # providerResponsible: "openDesk"
@@ -774,7 +774,7 @@ images:
# upstreamMirrorStartFrom: ["8", "20", "51"] # upstreamMirrorStartFrom: ["8", "20", "51"]
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/middleware-public-sector" repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/middleware-public-sector"
tag: "8.36.51@sha256:db069f8e97f15081c6905f1c18fc1dde7a5b7a0caa9e61f80ea98e009339687b" tag: "8.37.62@sha256:2eb5f4a472c329cbf170b6e7fba5790756dcc3f6360d5d36dfff5eb06b09f8c3"
openxchangeCoreUI: openxchangeCoreUI:
# providerCategory: "Supplier" # providerCategory: "Supplier"
# providerResponsible: "Open-Xchange" # providerResponsible: "Open-Xchange"
@@ -784,7 +784,7 @@ images:
# upstreamMirrorStartFrom: ["8", "20", "1"] # upstreamMirrorStartFrom: ["8", "20", "1"]
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/core-ui" repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/core-ui"
tag: "8.36.2@sha256:3a718662355f64846fd99f515a325cf0bfe598eb3a2237bdce649bda0ea8f380" tag: "8.37.1@sha256:eb30e03a5976d57a62d00a613336631d46bffc84c0d67e422f062635669f6b62"
openxchangeCoreUIMiddleware: openxchangeCoreUIMiddleware:
# providerCategory: "Supplier" # providerCategory: "Supplier"
# providerResponsible: "Open-Xchange" # providerResponsible: "Open-Xchange"
@@ -794,7 +794,7 @@ images:
# upstreamMirrorStartFrom: ["2", "0", "0"] # upstreamMirrorStartFrom: ["2", "0", "0"]
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/core-ui-middleware" repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/core-ui-middleware"
tag: "2.1.1@sha256:1a3e96243353a53e06bf3d90067d7d07de449e8273fa60a043d7ac4a5e6464c3" tag: "2.1.2@sha256:36fe59a047fa466bef6fcdeed1ed8e4bbeaf7824c37c63e3bfe7262cd135cb9e"
openxchangeCoreUserGuide: openxchangeCoreUserGuide:
# providerCategory: "Supplier" # providerCategory: "Supplier"
# providerResponsible: "Open-Xchange" # providerResponsible: "Open-Xchange"
@@ -804,7 +804,7 @@ images:
# upstreamMirrorStartFrom: ["8", "20", "799279"] # upstreamMirrorStartFrom: ["8", "20", "799279"]
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/core-user-guide" repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/core-user-guide"
tag: "8.36.1317070@sha256:7de0ced2a4d3f7ddb4bef3b001ae90e3b4a79d86b61ec5e767fe2d3068021558" tag: "8.37.1354160@sha256:226b210268cd3c9b13a84a2ca1168e1ab08b62e19bccd3129adad7ffca514655"
openxchangeDocumentConverter: openxchangeDocumentConverter:
# providerCategory: "Supplier" # providerCategory: "Supplier"
# providerResponsible: "Open-Xchange" # providerResponsible: "Open-Xchange"
@@ -814,7 +814,7 @@ images:
# upstreamMirrorStartFrom: ["8", "20", "50"] # upstreamMirrorStartFrom: ["8", "20", "50"]
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/documentconverter" repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/documentconverter"
tag: "8.36.1706@sha256:6245f13f6f945121d1d224adab24090efbbe41510ee0de22ce0296c1e5059937" tag: "8.37.1751@sha256:c1bbe271d6c0ba9ecc1bbb4ba2a944099f0ba90133dd4e6d3aecd0ea51b2e5bd"
openxchangeGotenberg: openxchangeGotenberg:
# providerCategory: "Supplier" # providerCategory: "Supplier"
# providerResponsible: "Open-Xchange" # providerResponsible: "Open-Xchange"
@@ -844,7 +844,7 @@ images:
# upstreamMirrorStartFrom: ["8", "20", "50"] # upstreamMirrorStartFrom: ["8", "20", "50"]
registry: "registry.opencode.de" registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/imageconverter" repository: "bmi/opendesk/components/supplier/open-xchange/images-mirror/imageconverter"
tag: "8.36.2042@sha256:ac358a10149901f944ca9a21f66a41f267ac5e33b6cce6d6f92309a44cdc0875" tag: "8.37.2089@sha256:8109351da173fa836d5559973103c8890e6a6e2514866675387bbf4d49606917"
openxchangeNextcloudIntegrationUI: openxchangeNextcloudIntegrationUI:
# providerCategory: "Supplier" # providerCategory: "Supplier"
# providerResponsible: "Open-Xchange" # providerResponsible: "Open-Xchange"

View File

@@ -7,8 +7,8 @@ SPDX-License-Identifier: Apache-2.0
secrets: secrets:
cassandra: cassandra:
rootPassword: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "cassandra" "root_password" | sha1sum | quote }} rootPassword: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "cassandra" "root_password" | sha1sum | quote }}
dovecotDictmapUser: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "cassandra" "dovecot_dictmap_user" | sha1sum | quote }}
dovecotACLUser: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "cassandra" "dovecot_acl_user" | sha1sum | quote }} dovecotACLUser: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "cassandra" "dovecot_acl_user" | sha1sum | quote }}
dovecotDictmapUser: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "cassandra" "dovecot_dictmap_user" | sha1sum | quote }}
oxAppSuite: oxAppSuite:
adminPassword: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "ox_appsuite" "admin_password" | sha1sum | quote }} adminPassword: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "ox_appsuite" "admin_password" | sha1sum | quote }}
basicAuthPassword: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "ox_appsuite" "basic_auth_password" | sha1sum | quote }} basicAuthPassword: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "ox_appsuite" "basic_auth_password" | sha1sum | quote }}