mirror of
https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk.git
synced 2025-12-06 07:21:36 +01:00
Compare commits
51 Commits
101-add-co
...
feat/use-n
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4f819f59ac | ||
|
|
0d900c1288 | ||
|
|
bccb58ba81 | ||
|
|
4cd2df033f | ||
|
|
07e55ccab6 | ||
|
|
d3a2c0207f | ||
|
|
ea9e5bb05a | ||
|
|
475faed41c | ||
|
|
159c1a2861 | ||
|
|
cc804f2746 | ||
|
|
a85afa5ff2 | ||
|
|
c081f81591 | ||
|
|
630ac96a0e | ||
|
|
69be8c9270 | ||
|
|
f3c66413c8 | ||
|
|
a075532cc6 | ||
|
|
c318841e30 | ||
|
|
0b52874a45 | ||
|
|
fe2fc9fb99 | ||
|
|
3ace55cf74 | ||
|
|
1dd754b91c | ||
|
|
767f35d30b | ||
|
|
df0b51deca | ||
|
|
631c9f3b23 | ||
|
|
dadef82425 | ||
|
|
da30cb44d3 | ||
|
|
cf0c94d358 | ||
|
|
a28e62aea4 | ||
|
|
61a2a608a8 | ||
|
|
d588e63e0b | ||
|
|
9ead605b1b | ||
|
|
5cb0555d69 | ||
|
|
822f997250 | ||
|
|
40e1db297e | ||
|
|
0de1e11a3a | ||
|
|
643af7eccb | ||
|
|
74d444e2d6 | ||
|
|
8a2d951c3b | ||
|
|
46412d1a9e | ||
|
|
26a7641a5a | ||
|
|
671f57a809 | ||
|
|
fe923bb9cd | ||
|
|
b4570a9a87 | ||
|
|
1067e725b3 | ||
|
|
dfaf4be640 | ||
|
|
e54aaab072 | ||
|
|
b806d51311 | ||
|
|
db7f5d60bd | ||
|
|
972020f946 | ||
|
|
23ef1d557b | ||
|
|
382af1dfb9 |
@@ -36,9 +36,11 @@ stages:
|
||||
- "env-cleanup"
|
||||
- "env"
|
||||
- "pre-services-deploy"
|
||||
- "migrations-pre"
|
||||
- "basic-services-deploy"
|
||||
- "component-deploy-stage-1"
|
||||
- "component-deploy-stage-2"
|
||||
- "migrations-post"
|
||||
- "lint"
|
||||
- "tests"
|
||||
- "env-stop"
|
||||
@@ -77,6 +79,12 @@ variables:
|
||||
options:
|
||||
- "yes"
|
||||
- "no"
|
||||
DEPLOY_MIGRATIONS:
|
||||
description: "Deploy K8s job for migrations (pre & post)."
|
||||
value: "no"
|
||||
options:
|
||||
- "yes"
|
||||
- "no"
|
||||
DEPLOY_SERVICES:
|
||||
description: "Enable Service deployment."
|
||||
value: "no"
|
||||
@@ -208,6 +216,7 @@ env-cleanup:
|
||||
done
|
||||
kubectl delete pvc --all --namespace ${NAMESPACE};
|
||||
kubectl delete jobs --all --namespace ${NAMESPACE};
|
||||
kubectl delete configmaps --all --namespace ${NAMESPACE};
|
||||
else
|
||||
helmfile destroy --namespace ${NAMESPACE};
|
||||
fi
|
||||
@@ -250,6 +259,30 @@ policies-deploy:
|
||||
COMPONENT: "services"
|
||||
ADDITIONAL_ARGS: "-l name=opendesk-otterize"
|
||||
|
||||
migrations-pre:
|
||||
stage: "migrations-pre"
|
||||
extends: ".deploy-common"
|
||||
rules:
|
||||
- if: >
|
||||
$CI_PIPELINE_SOURCE =~ "web|schedules|trigger|api" &&
|
||||
$NAMESPACE =~ /.+/ &&
|
||||
($DEPLOY_ALL_COMPONENTS != "no" || $DEPLOY_MIGRATIONS != "no")
|
||||
when: "on_success"
|
||||
variables:
|
||||
COMPONENT: "migrations-pre"
|
||||
|
||||
migrations-post:
|
||||
stage: "migrations-post"
|
||||
extends: ".deploy-common"
|
||||
rules:
|
||||
- if: >
|
||||
$CI_PIPELINE_SOURCE =~ "web|schedules|trigger|api" &&
|
||||
$NAMESPACE =~ /.+/ &&
|
||||
($DEPLOY_ALL_COMPONENTS != "no" || $DEPLOY_MIGRATIONS != "no")
|
||||
when: "on_success"
|
||||
variables:
|
||||
COMPONENT: "migrations-post"
|
||||
|
||||
services-deploy:
|
||||
stage: "basic-services-deploy"
|
||||
extends: ".deploy-common"
|
||||
@@ -284,7 +317,7 @@ ums-deploy:
|
||||
($DEPLOY_ALL_COMPONENTS != "no" || $DEPLOY_UMS != "no")
|
||||
when: "on_success"
|
||||
variables:
|
||||
COMPONENT: "univention-management-stack"
|
||||
COMPONENT: "nubus"
|
||||
|
||||
ox-deploy:
|
||||
stage: "component-deploy-stage-1"
|
||||
|
||||
@@ -34,11 +34,11 @@ openDesk currently features the following functional main components:
|
||||
| Diagram editor | CryptPad ft. diagrams.net | [5.6.0](https://github.com/cryptpad/cryptpad/releases/tag/5.6.0) | [For the most recent release](https://docs.cryptpad.org/en/) |
|
||||
| File management | Nextcloud | [28.0.5](https://nextcloud.com/de/changelog/#28-0-5) | [Nextcloud 28](https://docs.nextcloud.com/) |
|
||||
| Groupware | OX App Suite | [8.23](https://documentation.open-xchange.com/appsuite/releases/8.23/) | Online documentation available from within the installed application; [Additional resources](https://www.open-xchange.com/resources/oxpedia) |
|
||||
| Knowledge management | XWiki | [15.10.8](https://www.xwiki.org/xwiki/bin/view/Blog/XWiki15108Released) | [For the most recent release](https://www.xwiki.org/xwiki/bin/view/Documentation) |
|
||||
| Knowledge management | XWiki | [16.4.1](https://www.xwiki.org/xwiki/bin/view/ReleaseNotes/Data/XWiki/16.4.1/) | [For the most recent release](https://www.xwiki.org/xwiki/bin/view/Documentation) |
|
||||
| Portal & IAM | Nubus | Product Preview[^1] | [Univention's documentation website](https://docs.software-univention.de/n/en/index.html) |
|
||||
| Project management | OpenProject | [14.2.0](https://www.openproject.org/docs/release-notes/14-2-0/) | [For the most recent release](https://www.openproject.org/docs/user-guide/) |
|
||||
| Videoconferencing | Jitsi | [2.0.9457](https://github.com/jitsi/jitsi-meet/releases/tag/stable%2Fjitsi-meet_9457) | [For the most recent release](https://jitsi.github.io/handbook/docs/category/user-guide/) |
|
||||
| Weboffice | Collabora | [24.04.4.2.1](https://www.collaboraoffice.com/code-24-04-release-notes/) | Online documentation available from within the installed application; [Additional resources](https://sdk.collaboraonline.com/) |
|
||||
| Weboffice | Collabora | [24.04.5.2.1](https://www.collaboraoffice.com/code-24-04-release-notes/) | Online documentation available from within the installed application; [Additional resources](https://sdk.collaboraonline.com/) |
|
||||
|
||||
While not all components are perfectly shaped for the execution inside containers, one of the project's objectives is to
|
||||
align the applications with best practices regarding container design and operations.
|
||||
|
||||
@@ -69,7 +69,11 @@
|
||||
"cryptpad",
|
||||
"clamav",
|
||||
"templating",
|
||||
"localpart"
|
||||
"localpart",
|
||||
"Addressbooks",
|
||||
"filestore",
|
||||
"trashbin",
|
||||
"bootstrap"
|
||||
],
|
||||
"ignoreWords": [],
|
||||
"import": []
|
||||
|
||||
@@ -10,11 +10,11 @@ This section covers the internal system requirements as well as external service
|
||||
<!-- TOC -->
|
||||
* [Overview](#overview)
|
||||
* [Component integration](#component-integration)
|
||||
* [Intercom Service (ICS)](#intercom-service-ics)
|
||||
* [Intercom Service / Silent Login](#intercom-service--silent-login)
|
||||
* [Filepicker](#filepicker)
|
||||
* [Central Navigation](#central-navigation)
|
||||
* [(Read \& write) Central contacts](#read--write-central-contacts)
|
||||
* [OpenProject file store](#openproject-file-store)
|
||||
* [Central Contacts](#central-contacts)
|
||||
* [File Store (OpenProject -\> Nextcloud)](#file-store-openproject---nextcloud)
|
||||
* [Identity data flows](#identity-data-flows)
|
||||
* [Provisioning](#provisioning)
|
||||
<!-- TOC -->
|
||||
@@ -56,58 +56,91 @@ Some use cases require inter component integration.
|
||||
|
||||
```mermaid
|
||||
flowchart TD
|
||||
OXAppSuiteFrontend-->|SilentLogin, Filepicker, CentralNavigation|IntercomService
|
||||
Element-->|CentralNavigation|IntercomService
|
||||
IntercomService-->|SilentLogin, TokenExchange|IdP
|
||||
IntercomService-->|Filepicker|Nextcloud
|
||||
IntercomService-->|CentralNavigation|Portal
|
||||
OXAppSuiteBackend-->|Filepicker|Nextcloud
|
||||
Nextcloud-->|CentralNavigation|Portal
|
||||
OpenProject-->|CentralNavigation|Portal
|
||||
OpenProject-->|File store|Nextcloud
|
||||
XWiki-->|CentralNavigation|Portal
|
||||
Nextcloud-->|CentralContacts|OXAppSuiteBackend
|
||||
OXAppSuiteFrontend-->|Filepicker|OXAppSuiteBackend
|
||||
OX-AppSuite_Frontend-->|Silent Login, Filepicker, Central Navigation|Intercom_Service
|
||||
Element-->|Silent Login, Central Navigation|Intercom_Service
|
||||
Intercom_Service-->|Silent Login, Token Exchange|IdP
|
||||
Intercom_Service-->|Filepicker|Nextcloud
|
||||
Intercom_Service-->|Central Navigation|Portal
|
||||
OX-AppSuite_Backend-->|Filepicker|Nextcloud
|
||||
Nextcloud-->|Central Navigation|Portal
|
||||
OpenProject-->|Central Navigation|Portal
|
||||
OpenProject-->|File Store|Nextcloud
|
||||
XWiki-->|Central Navigation|Portal
|
||||
Nextcloud-->|Central Contacts|OX-AppSuite_Backend
|
||||
OX-AppSuite_Frontend-->|Filepicker|OX-AppSuite_Backend
|
||||
```
|
||||
|
||||
## Intercom Service (ICS)
|
||||
Most details can be found in the upstream documentation that is linked in the respective sections.
|
||||
|
||||
The Univention Intercom Service's role is to enable cross-application integration based on browser interaction.
|
||||
Handling authentication when the frontend of an application is using the API from another application is often a
|
||||
## Intercom Service / Silent Login
|
||||
|
||||
The Intercom Service's role is to enable cross-application integration based on the user's browser interaction as handling
|
||||
authentication when the frontend of an application has to call the API from another application is often a
|
||||
challenge.
|
||||
For more details on the ICS please refer to its own [doc](./components/intercom-service.md).
|
||||
|
||||
To establish a session with the Intercom Service, the application that wants to use the ICS must initiate a silent
|
||||
login.
|
||||
To establish a session with the Intercom Service an application can use the silent login feature within an iframe.
|
||||
|
||||
Currently only OX AppSuite is using the frontend-based integration, and therefore it is right now the only consumer of
|
||||
the ICS API.
|
||||
Currently only OX AppSuite and Element are using the frontend based integration.
|
||||
|
||||
**Links**
|
||||
- [Intercom Service upstream documentation](https://docs.software-univention.de/intercom-service/latest/index.html).
|
||||
|
||||
## Filepicker
|
||||
|
||||
The Nextcloud filepicker which is integrated into the OX AppSuite allows you to add attachments or links to files from
|
||||
and saving attachments to Nextcloud.
|
||||
The Nextcloud filepicker is integrated into the OX AppSuite supporting the following use cases against the respective openDesk instance's Nextcloud:
|
||||
- Attaching files from Nextcloud to emails.
|
||||
- Adding links of Nextcloud files to emails.
|
||||
- Saving attachments from emails into Nextcloud.
|
||||
- Attaching files from Nextcloud to calendar entries.
|
||||
|
||||
The filepicker is using frontend and backend based integration.
|
||||
Frontend-based integration means that OX AppSuite in the browser is communicating with ICS.
|
||||
While using backend-based integration, OX AppSuite middleware is communicating with Nextcloud, which is especially used
|
||||
when adding a file to an email or storing a file into Nextcloud.
|
||||
The filepicker is using frontend and backend based integration:
|
||||
- For frontend based integration the OX AppSuite frontend uses the Intercom Service.
|
||||
- Backend based integration is coming from OX AppSuite middleware. The middleware is communicating directly with Nextcloud,
|
||||
which is used when adding a file to an email or storing a file into Nextcloud, to avoid passing these files through the user's browser.
|
||||
|
||||
**Links**
|
||||
- [OX AppSuite Nextcloud Integration upstream documentation](https://gitlab.open-xchange.com/extensions/nextcloud-integration/-/tree/main/documentation).
|
||||
|
||||
## Central Navigation
|
||||
|
||||
Central navigation is based on an API endpoint in the portal that provides the contents of the portal for a user to
|
||||
allow components to render the menu showing all available SWP applications for the user.
|
||||
Central navigation is based on an API endpoint in the Nubus portal that returns a JSON containing the contents of the portal for
|
||||
a given user. The response from the API endpoint is used in the openDesk applications to render the central navigation.
|
||||
|
||||
## (Read & write) Central contacts
|
||||
The API can be called by
|
||||
- frontend services through the Intercom Service's `/navigation.json` endpoint or
|
||||
- backend services directly at the portal's `/univention/portal/navigation.json` endpoint.
|
||||
|
||||
Open-Xchange App Suite is used to manage contacts within openDesk. There is an API in the AppSuite that is being used by
|
||||
Nextcloud to lookup contacts as well as to create contacts. This is maybe done when a file is shared with a not yet
|
||||
available personal contact.
|
||||
The central navigation expects the API caller to present a shared secret for authentication and the username for whom the portal
|
||||
contents should be returned for.
|
||||
|
||||
## OpenProject file store
|
||||
A `curl` based request returning the navigation contents looks like this:
|
||||
|
||||
By default, Nextcloud is a configured option for storing attachments in OpenProject.
|
||||
The file store can be enabled on a per-project level in OpenProject's project admin section.
|
||||
```
|
||||
curl 'https://portal.<DOMAIN>/univention/portal/navigation.json?base=https%3A//portal.<DOMAIN>&language=de-DE' -u "<USERNAME>:<SHARED_SECRET>"
|
||||
```
|
||||
|
||||
## Central Contacts
|
||||
|
||||
OX App Suite is managing contacts in openDesk. Therefore Nextcloud's PHP backend is using the OX AppSuite's middleware Contacts API to
|
||||
- create a new contact in the user's contacts folder when a file is shared with a yet unknown email address.
|
||||
- retrieve contacts from the user's contacts folder to support search-as-you-type when starting to share a file.
|
||||
|
||||
**Links:**
|
||||
- Currently used [OX Contacts API (deprecated)](https://documentation.open-xchange.com/components/middleware/http/8/index.html#!Contacts).
|
||||
- New [OX Addressbooks API](https://documentation.open-xchange.com/components/middleware/http/8/index.html#!Addressbooks) the Central Contacts integration will switch to.
|
||||
|
||||
## File Store (OpenProject -> Nextcloud)
|
||||
|
||||
While OpenProject allows you to attach files to work packages directly, it is often preferred that the files are
|
||||
stored within Nextcloud or to link an existing file from your openDesk Nextcloud to a work package.
|
||||
|
||||
Therefore openDesk pre-configures the trust between the openDesk instance's OpenProject and Nextcloud during the `openproject-boostrap` deployment step. As prerequisite for that openDesk's Nextcloud contains the `integration_openproject` app.
|
||||
|
||||
The file store still needs to be enabled on a per-project level in OpenProject's project admin section.
|
||||
|
||||
**Links:**
|
||||
- [OpenProject's documentation on Nextcloud integration](https://www.openproject.org/docs/system-admin-guide/integrations/nextcloud/)
|
||||
- [OpenProject Integration Nextcloud app](https://apps.nextcloud.com/apps/integration_openproject)
|
||||
|
||||
# Identity data flows
|
||||
|
||||
|
||||
@@ -52,7 +52,7 @@ Below you will find some wrap-up notes when it comes to debugging openDesk by ad
|
||||
|
||||
You can add a container by editing and updating an existing deployment, which is quite comfortable with tools like [Lens](https://k8slens.dev/).
|
||||
|
||||
- Select the container you want to make use of as debugging container, in the example below it's `registry.opencode.de/bmi/opendesk/components/platform-development/images/opendesk-debugging-image:1.0.0`.
|
||||
- Select the container you want to make use of as debugging container, in the example below it's `registry.opencode.de/bmi/opendesk/components/platform-development/images/opendesk-debugging-image:latest`.
|
||||
- Ensure the `shareProcessNamespace` option is enabled for the Pod.
|
||||
- Reference the selected container within the `containers` array of the deployment.
|
||||
- In case you want to access another containers filesystem, ensure the user/group settings of both containers match.
|
||||
|
||||
@@ -37,10 +37,11 @@ If not used it is also set to `opendesk.domain.tld`.
|
||||
The following setting can disable federation:
|
||||
|
||||
```yaml
|
||||
externalServices:
|
||||
matrix:
|
||||
federation:
|
||||
enabled: false
|
||||
functional:
|
||||
externalServices:
|
||||
matrix:
|
||||
federation:
|
||||
enabled: false
|
||||
```
|
||||
|
||||
## Separate Matrix domain
|
||||
|
||||
88
docs/migrations.md
Normal file
88
docs/migrations.md
Normal file
@@ -0,0 +1,88 @@
|
||||
<!--
|
||||
SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
<h1>Migrations</h1>
|
||||
|
||||
* [Disclaimer](#disclaimer)
|
||||
* [From v0.8.1](#from-v081)
|
||||
* [Nubus LDAP PVCs](#nubus-ldap-pvcs)
|
||||
* [Updated customizable template attributes](#updated-customizable-template-attributes)
|
||||
* [`migrations` S3 bucket](#migrations-s3-bucket)
|
||||
|
||||
# Disclaimer
|
||||
|
||||
We do not offer support for upgrades before we reach openDesk 1.0.
|
||||
|
||||
Though we try to ease the pain when it comes to 0.x upgrades. That is what this document is for.
|
||||
|
||||
# From v0.8.1
|
||||
|
||||
## Nubus LDAP PVCs
|
||||
|
||||
openDesk is integrating the latest [Nubus](https://www.univention.de/produkte/nubus/) development from Univention. The new redundant and scalable LDAP requires some manual action to upgrade from 0.8.1:
|
||||
|
||||
- Action: Before the upgrade you have to prepare the PVCs for the LDAP primary Pods. First scale down the 0.8.1 LDAP Pod and pre-create and pre-populate the new PVCs with the data from the current LDAP PVC. You can do all this by running the following snippet on your commandline, after setting `NAMESPACE` to the appropriate value. The LDAP secondaries get sync'd from the primary to fill their own PVCs data.
|
||||
```
|
||||
export NAMESPACE=YOUR_NAMESPACE
|
||||
kubectl -n $NAMESPACE scale --replicas=0 statefulset/ums-ldap-notifier
|
||||
kubectl -n $NAMESPACE scale --replicas=0 statefulset/ums-ldap-server
|
||||
kubectl -n $NAMESPACE apply -f - <<EOF
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
# Target PVC name
|
||||
name: shared-data-ums-ldap-server-primary-0
|
||||
spec:
|
||||
dataSource:
|
||||
# Source PVC name
|
||||
name: shared-data-ums-ldap-server-0
|
||||
kind: PersistentVolumeClaim
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
# Target PVC size (deployments default to 1Gi)
|
||||
storage: 1Gi
|
||||
...
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
# Target PVC name
|
||||
name: shared-data-ums-ldap-server-primary-1
|
||||
spec:
|
||||
dataSource:
|
||||
# Source PVC name
|
||||
name: shared-data-ums-ldap-server-0
|
||||
kind: PersistentVolumeClaim
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
# Target PVC size (deployments default to 1Gi)
|
||||
storage: 1Gi
|
||||
...
|
||||
EOF
|
||||
```
|
||||
|
||||
- Once you have verified that your upgrade was successful, you can delete the previous LDAP's PVC:
|
||||
```
|
||||
kubectl -n $NAMESPACE delete pvc shared-data-ums-ldap-server-0
|
||||
```
|
||||
|
||||
## Updated customizable template attributes
|
||||
|
||||
- Action: Please ensure you update you custom deployment values according with the updated default value structure.
|
||||
- References:
|
||||
- `functional.` prefix for `authentication.*`, `externalServices.*`, `admin.*` and `filestore.*`, see [functional.yaml](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/blob/main/helmfile/environments/default/functional.yaml).
|
||||
- `debug.` prefix for `cleanup.*`, see [debug.yaml](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/blob/main/helmfile/environments/default/debug.yaml).
|
||||
- `monitoring.` prefix for `prometheus.*` and `graphana.*`, see [monitoring.yaml](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/blob/main/helmfile/environments/default/monitoring.yaml).
|
||||
- `smtp.` prefix for `localpartNoReply`, see [smtp.yaml](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/blob/main/helmfile/environments/default/smtp.yaml).
|
||||
|
||||
## `migrations` S3 bucket
|
||||
|
||||
- Action: For self managed/external S3/object storages, please ensure you add a bucket `migrations` to your S3.
|
||||
- Reference: `objectstores.migrations` in [objectstores.yaml](https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk/-/blob/main/helmfile/environments/default/objectstores.yaml)
|
||||
@@ -17,11 +17,11 @@ fullnameOverride: "collabora"
|
||||
|
||||
grafana:
|
||||
dashboards:
|
||||
enabled: {{ .Values.grafana.dashboards.enabled }}
|
||||
enabled: {{ .Values.monitoring.grafana.dashboards.enabled }}
|
||||
labels:
|
||||
{{ .Values.grafana.dashboards.labels | toYaml | nindent 6 }}
|
||||
{{ .Values.monitoring.grafana.dashboards.labels | toYaml | nindent 6 }}
|
||||
annotations:
|
||||
{{ .Values.grafana.dashboards.annotations | toYaml | nindent 6 }}
|
||||
{{ .Values.monitoring.grafana.dashboards.annotations | toYaml | nindent 6 }}
|
||||
|
||||
image:
|
||||
repository: "{{ .Values.global.imageRegistry | default .Values.images.collabora.registry }}/{{ .Values.images.collabora.repository }}"
|
||||
@@ -88,13 +88,13 @@ podSecurityContext:
|
||||
|
||||
prometheus:
|
||||
servicemonitor:
|
||||
enabled: {{ .Values.prometheus.serviceMonitors.enabled }}
|
||||
enabled: {{ .Values.monitoring.prometheus.serviceMonitors.enabled }}
|
||||
labels:
|
||||
{{ .Values.prometheus.serviceMonitors.labels | toYaml | nindent 6 }}
|
||||
{{ .Values.monitoring.prometheus.serviceMonitors.labels | toYaml | nindent 6 }}
|
||||
rules:
|
||||
enabled: {{ .Values.prometheus.prometheusRules.enabled }}
|
||||
enabled: {{ .Values.monitoring.prometheus.prometheusRules.enabled }}
|
||||
additionalLabels:
|
||||
{{ .Values.prometheus.prometheusRules.labels | toYaml | nindent 6 }}
|
||||
{{ .Values.monitoring.prometheus.prometheusRules.labels | toYaml | nindent 6 }}
|
||||
|
||||
replicaCount: {{ .Values.replicas.collabora }}
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
---
|
||||
cleanup:
|
||||
deletePodsOnSuccess: {{ .Values.cleanup.deletePodsOnSuccess }}
|
||||
deletePodsOnSuccessTimeout: {{ .Values.cleanup.deletePodsOnSuccessTimeout }}
|
||||
deletePodsOnSuccess: {{ .Values.debug.cleanup.deletePodsOnSuccess }}
|
||||
deletePodsOnSuccessTimeout: {{ .Values.debug.cleanup.deletePodsOnSuccessTimeout }}
|
||||
|
||||
configuration:
|
||||
username: "meetings-bot"
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
---
|
||||
cleanup:
|
||||
deletePodsOnSuccess: {{ .Values.cleanup.deletePodsOnSuccess }}
|
||||
deletePodsOnSuccessTimeout: {{ .Values.cleanup.deletePodsOnSuccessTimeout }}
|
||||
deletePodsOnSuccess: {{ .Values.debug.cleanup.deletePodsOnSuccess }}
|
||||
deletePodsOnSuccessTimeout: {{ .Values.debug.cleanup.deletePodsOnSuccessTimeout }}
|
||||
|
||||
configuration:
|
||||
username: "uvs"
|
||||
|
||||
@@ -42,7 +42,7 @@ configuration:
|
||||
sender_localpart: intercom-service
|
||||
|
||||
smtp:
|
||||
senderAddress: "{{ .Values.localpartNoReply }}@{{ .Values.global.hosts.element }}.{{ .Values.global.domain }}"
|
||||
senderAddress: "{{ .Values.smtp.localpartNoReply }}@{{ .Values.global.hosts.element }}.{{ .Values.global.domain }}"
|
||||
host: {{ .Values.smtp.host | quote }}
|
||||
port: {{ .Values.smtp.port }}
|
||||
username: {{ .Values.smtp.username | quote }}
|
||||
@@ -52,6 +52,9 @@ configuration:
|
||||
clientId: "opendesk-matrix"
|
||||
clientSecret: {{ .Values.secrets.keycloak.clientSecret.matrix | quote }}
|
||||
issuer: "https://{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}/realms/{{ .Values.platform.realm }}"
|
||||
scopes:
|
||||
- "openid"
|
||||
- "opendesk-matrix-scope"
|
||||
|
||||
turn:
|
||||
sharedSecret: {{ .Values.turn.credentials | quote }}
|
||||
@@ -91,7 +94,7 @@ containerSecurityContext:
|
||||
{{ .Values.seLinuxOptions.synapse | toYaml | nindent 4 }}
|
||||
|
||||
federation:
|
||||
enabled: {{ .Values.externalServices.matrix.federation.enabled }}
|
||||
enabled: {{ .Values.functional.externalServices.matrix.federation.enabled }}
|
||||
ingress:
|
||||
host: "{{ .Values.global.hosts.synapseFederation }}.{{ .Values.global.domain }}"
|
||||
enabled: {{ .Values.ingress.enabled }}
|
||||
|
||||
@@ -27,7 +27,7 @@ containerSecurityContext:
|
||||
{{ .Values.seLinuxOptions.jitsiKeycloakAdapter | toYaml | nindent 4 }}
|
||||
|
||||
cleanup:
|
||||
deletePodsOnSuccess: {{ .Values.cleanup.deletePodsOnSuccess }}
|
||||
deletePodsOnSuccess: {{ .Values.debug.cleanup.deletePodsOnSuccess }}
|
||||
|
||||
image:
|
||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||
|
||||
31
helmfile/apps/migrations-post/helmfile-child.yaml
Normal file
31
helmfile/apps/migrations-post/helmfile-child.yaml
Normal file
@@ -0,0 +1,31 @@
|
||||
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
---
|
||||
repositories:
|
||||
# openDesk Migrations
|
||||
# Source:
|
||||
- name: "openproject-migrations-repo"
|
||||
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
||||
verify: {{ .Values.charts.migrations.verify }}
|
||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||
oci: true
|
||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.migrations.registry }}/\
|
||||
{{ .Values.charts.migrations.repository }}"
|
||||
|
||||
releases:
|
||||
- name: "opendesk-migrations-post"
|
||||
chart: "openproject-migrations-repo/{{ .Values.charts.migrations.name }}"
|
||||
version: "{{ .Values.charts.migrations.version }}"
|
||||
wait: true
|
||||
waitForJobs: true
|
||||
values:
|
||||
- "values.yaml.gotmpl"
|
||||
- "../../shared/migrations.yaml.gotmpl"
|
||||
installed: {{ .Values.migrations.enabled }}
|
||||
timeout: 900
|
||||
|
||||
commonLabels:
|
||||
deploy-stage: "component-0"
|
||||
component: "opendesk-migrations"
|
||||
...
|
||||
11
helmfile/apps/migrations-post/helmfile.yaml
Normal file
11
helmfile/apps/migrations-post/helmfile.yaml
Normal file
@@ -0,0 +1,11 @@
|
||||
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
---
|
||||
bases:
|
||||
- "../../bases/environments.yaml"
|
||||
---
|
||||
helmfiles:
|
||||
- path: "./helmfile-child.yaml"
|
||||
values:
|
||||
- {{ toYaml .Values | nindent 8 }}
|
||||
...
|
||||
8
helmfile/apps/migrations-post/values.yaml.gotmpl
Normal file
8
helmfile/apps/migrations-post/values.yaml.gotmpl
Normal file
@@ -0,0 +1,8 @@
|
||||
{{/*
|
||||
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
*/}}
|
||||
---
|
||||
migrations:
|
||||
stage: "POST"
|
||||
...
|
||||
31
helmfile/apps/migrations-pre/helmfile-child.yaml
Normal file
31
helmfile/apps/migrations-pre/helmfile-child.yaml
Normal file
@@ -0,0 +1,31 @@
|
||||
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
---
|
||||
repositories:
|
||||
# openDesk Migrations
|
||||
# Source:
|
||||
- name: "openproject-migrations-repo"
|
||||
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
||||
verify: {{ .Values.charts.migrations.verify }}
|
||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||
oci: true
|
||||
url: "{{ .Values.global.helmRegistry | default .Values.charts.migrations.registry }}/\
|
||||
{{ .Values.charts.migrations.repository }}"
|
||||
|
||||
releases:
|
||||
- name: "opendesk-migrations-pre"
|
||||
chart: "openproject-migrations-repo/{{ .Values.charts.migrations.name }}"
|
||||
version: "{{ .Values.charts.migrations.version }}"
|
||||
wait: true
|
||||
waitForJobs: true
|
||||
values:
|
||||
- "values.yaml.gotmpl"
|
||||
- "../../shared/migrations.yaml.gotmpl"
|
||||
installed: {{ .Values.migrations.enabled }}
|
||||
timeout: 900
|
||||
|
||||
commonLabels:
|
||||
deploy-stage: "component-0"
|
||||
component: "opendesk-migrations"
|
||||
...
|
||||
11
helmfile/apps/migrations-pre/helmfile.yaml
Normal file
11
helmfile/apps/migrations-pre/helmfile.yaml
Normal file
@@ -0,0 +1,11 @@
|
||||
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
---
|
||||
bases:
|
||||
- "../../bases/environments.yaml"
|
||||
---
|
||||
helmfiles:
|
||||
- path: "./helmfile-child.yaml"
|
||||
values:
|
||||
- {{ toYaml .Values | nindent 8 }}
|
||||
...
|
||||
8
helmfile/apps/migrations-pre/values.yaml.gotmpl
Normal file
8
helmfile/apps/migrations-pre/values.yaml.gotmpl
Normal file
@@ -0,0 +1,8 @@
|
||||
{{/*
|
||||
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
*/}}
|
||||
---
|
||||
migrations:
|
||||
stage: "PRE"
|
||||
...
|
||||
@@ -14,7 +14,7 @@ additionalAnnotations:
|
||||
intents.otterize.com/service-name: "opendesk-nextcloud-php"
|
||||
|
||||
cleanup:
|
||||
deletePodsOnSuccess: {{ .Values.cleanup.deletePodsOnSuccess }}
|
||||
deletePodsOnSuccess: {{ .Values.debug.cleanup.deletePodsOnSuccess }}
|
||||
|
||||
configuration:
|
||||
administrator:
|
||||
@@ -78,8 +78,13 @@ configuration:
|
||||
value: {{ .Values.smtp.password | quote }}
|
||||
host: {{ .Values.smtp.host | quote }}
|
||||
port: {{ .Values.smtp.port | quote }}
|
||||
fromAddress: {{ .Values.localpartNoReply | quote }}
|
||||
fromAddress: {{ .Values.smtp.localpartNoReply | quote }}
|
||||
mailDomain: "{{ .Values.global.hosts.nextcloud }}.{{ .Values.global.domain }}"
|
||||
quota:
|
||||
default: "{{ .Values.functional.filestore.quota.default }} GB"
|
||||
retentionObligation:
|
||||
trashbin: {{ .Values.functional.filestore.nextcloud.retentionObligation.trashbin | quote }}
|
||||
versions: {{ .Values.functional.filestore.nextcloud.retentionObligation.versions | quote }}
|
||||
|
||||
serverinfo:
|
||||
token: {{ .Values.secrets.nextcloud.metricsToken | quote }}
|
||||
@@ -101,7 +106,7 @@ containerSecurityContext:
|
||||
{{ .Values.seLinuxOptions.nextcloudManagement | toYaml | nindent 4 }}
|
||||
|
||||
debug:
|
||||
loglevel: {{ if .Values.debug.enabled }}"0"{{ else }}"1"{{ end }}
|
||||
loglevel: {{ if .Values.debug.enabled }}"0"{{ else }}"2"{{ end }}
|
||||
|
||||
image:
|
||||
registry: {{ .Values.global.imageRegistry | default .Values.images.nextcloudManagement.registry | quote }}
|
||||
|
||||
@@ -34,13 +34,13 @@ exporter:
|
||||
tag: {{ .Values.images.nextcloudExporter.tag | quote }}
|
||||
prometheus:
|
||||
serviceMonitor:
|
||||
enabled: {{ .Values.prometheus.serviceMonitors.enabled }}
|
||||
enabled: {{ .Values.monitoring.prometheus.serviceMonitors.enabled }}
|
||||
labels:
|
||||
{{ .Values.prometheus.serviceMonitors.labels | toYaml | nindent 8 }}
|
||||
{{ .Values.monitoring.prometheus.serviceMonitors.labels | toYaml | nindent 8 }}
|
||||
prometheusRule:
|
||||
enabled: {{ .Values.prometheus.prometheusRules.enabled }}
|
||||
enabled: {{ .Values.monitoring.prometheus.prometheusRules.enabled }}
|
||||
additionalLabels:
|
||||
{{ .Values.prometheus.prometheusRules.labels | toYaml | nindent 8 }}
|
||||
{{ .Values.monitoring.prometheus.prometheusRules.labels | toYaml | nindent 8 }}
|
||||
replicaCount: {{ .Values.replicas.nextcloudExporter }}
|
||||
resources:
|
||||
{{ .Values.resources.nextcloudExporter | toYaml | nindent 4 }}
|
||||
@@ -84,7 +84,7 @@ php:
|
||||
cron:
|
||||
successfulJobsHistoryLimit: {{ if .Values.debug.enabled }}"3"{{ else }}"0"{{ end }}
|
||||
debug:
|
||||
loglevel: {{ if .Values.debug.enabled }}"0"{{ else }}"1"{{ end }}
|
||||
loglevel: {{ if .Values.debug.enabled }}"0"{{ else }}"2"{{ end }}
|
||||
image:
|
||||
registry: {{ .Values.global.imageRegistry | default .Values.images.nextcloudPHP.registry | quote }}
|
||||
repository: "{{ .Values.images.nextcloudPHP.repository }}"
|
||||
@@ -92,13 +92,13 @@ php:
|
||||
tag: {{ .Values.images.nextcloudPHP.tag | quote }}
|
||||
prometheus:
|
||||
serviceMonitor:
|
||||
enabled: {{ .Values.prometheus.serviceMonitors.enabled }}
|
||||
enabled: {{ .Values.monitoring.prometheus.serviceMonitors.enabled }}
|
||||
labels:
|
||||
{{ .Values.prometheus.serviceMonitors.labels | toYaml | nindent 8 }}
|
||||
{{ .Values.monitoring.prometheus.serviceMonitors.labels | toYaml | nindent 8 }}
|
||||
prometheusRule:
|
||||
enabled: {{ .Values.prometheus.prometheusRules.enabled }}
|
||||
enabled: {{ .Values.monitoring.prometheus.prometheusRules.enabled }}
|
||||
additionalLabels:
|
||||
{{ .Values.prometheus.prometheusRules.labels | toYaml | nindent 8 }}
|
||||
{{ .Values.monitoring.prometheus.prometheusRules.labels | toYaml | nindent 8 }}
|
||||
replicaCount: {{ .Values.replicas.nextcloudPHP }}
|
||||
resources:
|
||||
{{ .Values.resources.nextcloudPHP | toYaml | nindent 4 }}
|
||||
|
||||
@@ -3,15 +3,15 @@
|
||||
---
|
||||
repositories:
|
||||
# Univention Management Stack Umbrella Chart
|
||||
- name: "ums"
|
||||
- name: "nubus"
|
||||
keyring: "../../files/gpg-pubkeys/univention-de.gpg"
|
||||
verify: {{ .Values.charts.ums.verify }}
|
||||
verify: {{ .Values.charts.nubus.verify }}
|
||||
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
|
||||
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
|
||||
oci: true
|
||||
url:
|
||||
"{{ .Values.global.helmRegistry | default .Values.charts.ums.registry }}/\
|
||||
{{ .Values.charts.ums.repository }}"
|
||||
"{{ .Values.global.helmRegistry | default .Values.charts.nubus.registry }}/\
|
||||
{{ .Values.charts.nubus.repository }}"
|
||||
# OpenDesk Keycloak Bootstrap Chart
|
||||
- name: "opendesk-keycloak-bootstrap-repo"
|
||||
keyring: "../../files/gpg-pubkeys/opencode.gpg"
|
||||
@@ -25,10 +25,12 @@ repositories:
|
||||
releases:
|
||||
# Univention Management Stack Umbrella Chart
|
||||
- name: "ums"
|
||||
chart: "ums/{{ .Values.charts.ums.name }}"
|
||||
version: "{{ .Values.charts.ums.version }}"
|
||||
chart: "nubus/{{ .Values.charts.nubus.name }}"
|
||||
version: "{{ .Values.charts.nubus.version }}"
|
||||
values:
|
||||
- "values-umbrella.yaml.gotmpl"
|
||||
- "values-nubus.yaml.gotmpl"
|
||||
- "values-opendesk-customization.yaml.gotmpl"
|
||||
- "values-opendesk-images.yaml.gotmpl"
|
||||
installed: {{ .Values.univentionManagementStack.enabled }}
|
||||
timeout: 900
|
||||
# OpenDesk Keycloak Bootstrap Chart
|
||||
291
helmfile/apps/nubus/values-nubus.yaml.gotmpl
Normal file
291
helmfile/apps/nubus/values-nubus.yaml.gotmpl
Normal file
@@ -0,0 +1,291 @@
|
||||
# SPDX-FileCopyrightText: 2024 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
---
|
||||
global:
|
||||
nubusDeployment: true
|
||||
ldap:
|
||||
baseDn: {{ .Values.ldap.baseDn | quote }}
|
||||
domainName: {{ .Values.global.domain | quote }}
|
||||
domain: {{ .Values.global.domain | quote }}
|
||||
ingressClass: {{ .Values.ingress.ingressClassName | default "nginx" | quote }}
|
||||
certManagerIssuer: "letsencrypt-prod-dns"
|
||||
nubusMasterPassword: {{ env "MASTER_PASSWORD" | default "sovereign-workplace" | quote }}
|
||||
keycloak:
|
||||
realm: {{ .Values.platform.realm | quote }}
|
||||
objectStorage:
|
||||
bucket: {{ .Values.objectstores.univentionManagementStack.bucket | quote }}
|
||||
connection:
|
||||
host: "minio"
|
||||
port: "9000"
|
||||
protocol: "http"
|
||||
credentialOverride:
|
||||
ldapServer:
|
||||
adminPassword: {{ .Values.secrets.univentionManagementStack.ldapSecret | quote}}
|
||||
defaultUsers:
|
||||
defaultAdminPassword: {{ .Values.secrets.univentionManagementStack.defaultAccounts.adminPassword | quote}}
|
||||
defaultUserPassword: {{ .Values.secrets.univentionManagementStack.defaultAccounts.userPassword | quote}}
|
||||
|
||||
|
||||
|
||||
# Nubus bundled services
|
||||
postgresql:
|
||||
enabled: false
|
||||
provisioning:
|
||||
enabled: false
|
||||
|
||||
minio:
|
||||
enabled: false
|
||||
|
||||
# Nubus services which use customer supplied services
|
||||
keycloak:
|
||||
keycloak:
|
||||
auth:
|
||||
username: "kcadmin"
|
||||
credentialSecret:
|
||||
name: "ums-opendesk-keycloak-credentials"
|
||||
key: "admin_password"
|
||||
postgresql:
|
||||
connection:
|
||||
host: {{ .Values.databases.keycloak.host | quote }}
|
||||
port: {{ .Values.databases.keycloak.port }}
|
||||
auth:
|
||||
username: {{ .Values.databases.keycloak.username | quote }}
|
||||
database: {{ .Values.databases.keycloak.name | quote }}
|
||||
credentialSecret:
|
||||
name: "ums-keycloak-postgresql-opendesk-credentials"
|
||||
key: "keycloakDatabasePassword"
|
||||
config:
|
||||
exposeAdminConsole: {{ .Values.debug.enabled }}
|
||||
|
||||
nubusGuardian:
|
||||
provisioning:
|
||||
enabled: true
|
||||
config:
|
||||
keycloak:
|
||||
credentialSecret:
|
||||
name: "ums-opendesk-keycloak-credentials"
|
||||
key: "admin_password"
|
||||
managementApi:
|
||||
credentialSecret:
|
||||
name: "ums-opendesk-guardian-client-secret"
|
||||
key: "managementApiClientSecret"
|
||||
|
||||
postgresql:
|
||||
connection:
|
||||
host: {{ .Values.databases.umsGuardianManagementApi.host | quote }}
|
||||
port: {{ .Values.databases.umsGuardianManagementApi.port | quote }}
|
||||
auth:
|
||||
username: {{ .Values.databases.umsGuardianManagementApi.username | quote }}
|
||||
database: {{ .Values.databases.umsGuardianManagementApi.name | quote }}
|
||||
credentialSecret:
|
||||
name: "ums-guardian-postgresql-opendesk-credentials"
|
||||
key: "guardianDatabasePassword"
|
||||
|
||||
nubusNotificationsApi:
|
||||
postgresql:
|
||||
connection:
|
||||
host: {{ .Values.databases.umsNotificationsApi.host | quote }}
|
||||
port: {{ .Values.databases.umsNotificationsApi.port | quote }}
|
||||
auth:
|
||||
username: {{ .Values.databases.umsNotificationsApi.username | quote }}
|
||||
database: {{ .Values.databases.umsNotificationsApi.name | quote }}
|
||||
existingSecret: "ums-notifications-api-postgresql-opendesk-credentials"
|
||||
|
||||
|
||||
nubusKeycloakExtensions:
|
||||
keycloak:
|
||||
auth:
|
||||
username: "kcadmin"
|
||||
credentialSecret:
|
||||
name: "ums-opendesk-keycloak-credentials"
|
||||
key: "admin_password"
|
||||
proxy:
|
||||
ingress:
|
||||
paths:
|
||||
{{- if .Values.debug.enabled }}
|
||||
- pathType: "Prefix"
|
||||
path: "/admin/"
|
||||
{{- end }}
|
||||
- pathType: "Prefix"
|
||||
path: "/realms/"
|
||||
- pathType: "Prefix"
|
||||
path: "/js/"
|
||||
- pathType: "Prefix"
|
||||
path: "/resources/"
|
||||
- pathType: "Prefix"
|
||||
path: "/fingerprintjs"
|
||||
|
||||
|
||||
postgresql:
|
||||
connection:
|
||||
host: {{ .Values.databases.keycloakExtension.host | quote }}
|
||||
port: {{ .Values.databases.keycloakExtension.port | quote }}
|
||||
auth:
|
||||
database: {{ .Values.databases.keycloakExtension.name | quote }}
|
||||
username: {{ .Values.databases.keycloakExtension.username | quote }}
|
||||
credentialSecret:
|
||||
name: "ums-keycloak-extensions-postgresql-opendesk-credentials"
|
||||
key: "umcKeycloakExtensionsDatabasePassword"
|
||||
smtp:
|
||||
connection:
|
||||
host: {{ .Values.smtp.host | quote }}
|
||||
port: {{ .Values.smtp.port | quote }}
|
||||
auth:
|
||||
username: {{ .Values.smtp.username | quote }}
|
||||
credentialSecret:
|
||||
name: "ums-keycloak-extensions-smtp-opendesk-credentials"
|
||||
key: "umcKeycloakExtensionsSmtpPassword"
|
||||
|
||||
nubusPortalListener:
|
||||
portalListener:
|
||||
objectStorageEndpoint: {{ .Values.objectstores.univentionManagementStack.endpoint | default (printf "https://%s.%s" .Values.global.hosts.minioApi .Values.global.domain) | quote }}
|
||||
objectStorageBucket: {{ .Values.objectstores.univentionManagementStack.bucket | quote }}
|
||||
objectStorageCredentialSecret:
|
||||
name: "ums-portal-listener-minio-opendesk-credentials"
|
||||
accessKeyKey: "access-key-id"
|
||||
secretKeyKey: "secret-key-id"
|
||||
|
||||
nubusPortalServer:
|
||||
portalServer:
|
||||
objectStorageEndpoint: {{ .Values.objectstores.univentionManagementStack.endpoint | default (printf "https://%s.%s" .Values.global.hosts.minioApi .Values.global.domain) | quote }}
|
||||
objectStorageBucket: {{ .Values.objectstores.univentionManagementStack.bucket | quote }}
|
||||
objectStorageCredentialSecret:
|
||||
name: "ums-portal-server-minio-opendesk-credentials"
|
||||
accessKeyKey: "access-key-id"
|
||||
secretKeyKey: "secret-key-id"
|
||||
centralNavigation:
|
||||
enabled: true
|
||||
authenticatorSecretName: "ums-opendesk-portal-server-central-navigation"
|
||||
|
||||
# NOTE: disabled until the next update.
|
||||
nubusProvisioning:
|
||||
enabled: false
|
||||
nubusUdmListener:
|
||||
enabled: false
|
||||
# FIXME: roll back to previous version
|
||||
nubusSelfServiceListener:
|
||||
enabled: false
|
||||
|
||||
# Nubus services
|
||||
nubusStackDataUms:
|
||||
stackDataContext:
|
||||
umcPostgresqlHostname: {{ .Values.databases.umsSelfservice.host | quote }}
|
||||
umcPostgresqlUsername: {{ .Values.databases.umsSelfservice.username | quote }}
|
||||
umcMemcachedHostname: {{ .Values.cache.umsSelfservice.host | quote }}
|
||||
umcMemcachedUsername: ""
|
||||
externalMailDomain: {{ .Values.global.mailDomain | default .Values.global.domain }}
|
||||
umcHtmlTitle: "openDesk Portal"
|
||||
nubusUmcServer:
|
||||
memcached:
|
||||
auth:
|
||||
username: ""
|
||||
|
||||
# TODO: Remove values when upstreaming fixes
|
||||
nubusStackDataSwp:
|
||||
stackDataContext:
|
||||
ldapSearchUsers:
|
||||
{{- range $username, $password := .Values.secrets.univentionManagementStack.ldapSearch }}
|
||||
- username: {{ printf "ldapsearch_%s" $username | quote }}
|
||||
password: {{ $password | quote }}
|
||||
lastname: "LDAP-Search-User"
|
||||
{{- end }}
|
||||
externalMailDomain: {{ .Values.global.mailDomain | default .Values.global.domain }}
|
||||
smtpHost: {{ .Values.smtp.host | quote }}
|
||||
smtpPort: {{ .Values.smtp.port | quote }}
|
||||
smtpUser: {{ .Values.smtp.username | quote }}
|
||||
ldapBase: {{ .Values.ldap.baseDn }}
|
||||
# FIXME: Should be templated correctly in the future
|
||||
portalRealtimeCollaborationLinkBase: {{ printf "https://%s.%s" .Values.global.hosts.element .Values.global.domain }}
|
||||
portalRealtimeVideoconferenceLinkBase: {{ printf "https://%s.%s" .Values.global.hosts.jitsi .Values.global.domain }}
|
||||
portalManagementProjectLinkBase: {{ printf "https://%s.%s" .Values.global.hosts.openproject .Values.global.domain }}
|
||||
portalManagementKnowledgeLinkBase: {{ printf "https://%s.%s" .Values.global.hosts.xwiki .Values.global.domain }}
|
||||
portalGroupwareLinkBase: {{ printf "https://%s.%s" .Values.global.hosts.openxchange .Values.global.domain }}
|
||||
portalFileshareLinkBase: {{ printf "https://%s.%s" .Values.global.hosts.nextcloud .Values.global.domain }}
|
||||
portalTitleDE: "openDesk Portal"
|
||||
portalTitleEN: "openDesk Portal"
|
||||
|
||||
nubusUmcServer:
|
||||
postgresql:
|
||||
bundled: false
|
||||
connection:
|
||||
host: {{ .Values.databases.umsSelfservice.host | quote }}
|
||||
port: {{ .Values.databases.umsSelfservice.port | quote }}
|
||||
auth:
|
||||
username: {{ .Values.databases.umsSelfservice.username | quote }}
|
||||
database: {{ .Values.databases.umsSelfservice.name | quote }}
|
||||
credentialSecret:
|
||||
name: "ums-umc-server-postgresql-opendesk-credentials"
|
||||
key: "umcServerDatabasePassword"
|
||||
memcached:
|
||||
bundled: false
|
||||
server: {{ .Values.cache.umsSelfservice.host | quote }}
|
||||
auth:
|
||||
credentialSecret:
|
||||
name: "ums-umc-server-memcached-opendesk-credentials"
|
||||
key: "umcServerMemcachedPassword"
|
||||
smtp:
|
||||
credentialSecret:
|
||||
name: "ums-umc-server-smtp-credentials-custom"
|
||||
|
||||
nubusUmcGateway:
|
||||
umcGateway:
|
||||
umcHtmlTitle: "openDesk Portal"
|
||||
|
||||
nubusKeycloakBootstrap:
|
||||
keycloak:
|
||||
auth:
|
||||
username: "kcadmin"
|
||||
credentialSecret:
|
||||
name: "ums-opendesk-keycloak-credentials"
|
||||
key: "admin_password"
|
||||
bootstrap:
|
||||
ldapMappers:
|
||||
- ldapAndUserModelAttributeName: "opendeskProjectmanagementAdmin"
|
||||
- ldapAndUserModelAttributeName: "oxContextIDNum"
|
||||
twoFactorAuthentication:
|
||||
enabled: true
|
||||
group: "2fa-users"
|
||||
|
||||
# Credential secrets for accessing customer supplied services
|
||||
extraSecrets:
|
||||
- name: "ums-opendesk-portal-server-central-navigation"
|
||||
stringData:
|
||||
authenticator.secret: {{ .Values.secrets.centralnavigation.apiKey | quote }}
|
||||
- name: "ums-opendesk-guardian-client-secret"
|
||||
stringData:
|
||||
managementApiClientSecret: {{ .Values.secrets.keycloak.clientSecret.guardian | quote }}
|
||||
- name: "ums-opendesk-keycloak-credentials"
|
||||
stringData:
|
||||
admin_password: {{ .Values.secrets.keycloak.adminPassword | quote }}
|
||||
- name: "ums-keycloak-postgresql-opendesk-credentials"
|
||||
stringData:
|
||||
keycloakDatabasePassword: {{ .Values.databases.keycloak.password | default .Values.secrets.postgresql.keycloakUser | quote }}
|
||||
- name: "ums-guardian-postgresql-opendesk-credentials"
|
||||
stringData:
|
||||
guardianDatabasePassword: {{ .Values.databases.umsGuardianManagementApi.password | default .Values.secrets.postgresql.umsGuardianManagementApiUser | quote }}
|
||||
- name: "ums-notifications-api-postgresql-opendesk-credentials"
|
||||
stringData:
|
||||
password: {{ .Values.databases.umsNotificationsApi.password | default .Values.secrets.postgresql.umsNotificationsApiUser | quote }}
|
||||
- name: "ums-umc-server-postgresql-opendesk-credentials"
|
||||
stringData:
|
||||
umcServerDatabasePassword: {{ .Values.databases.umsSelfservice.password | default .Values.secrets.postgresql.umsSelfserviceUser | quote }}
|
||||
- name: "ums-umc-server-memcached-opendesk-credentials"
|
||||
stringData:
|
||||
umcServerMemcachedPassword: ""
|
||||
- name: "ums-keycloak-extensions-postgresql-opendesk-credentials"
|
||||
stringData:
|
||||
umcKeycloakExtensionsDatabasePassword: {{ .Values.databases.keycloakExtension.password | default .Values.secrets.postgresql.keycloakExtensionUser | quote }}
|
||||
- name: "ums-keycloak-extensions-smtp-opendesk-credentials"
|
||||
stringData:
|
||||
umcKeycloakExtensionsSmtpPassword: {{ .Values.smtp.password | quote }}
|
||||
- name: "ums-portal-server-minio-opendesk-credentials"
|
||||
stringData:
|
||||
access-key-id: {{ .Values.objectstores.univentionManagementStack.username | quote }}
|
||||
secret-key-id: {{ .Values.objectstores.univentionManagementStack.secretKey | default .Values.secrets.minio.umsUser | quote }}
|
||||
- name: "ums-portal-listener-minio-opendesk-credentials"
|
||||
stringData:
|
||||
access-key-id: {{ .Values.objectstores.univentionManagementStack.username | quote }}
|
||||
secret-key-id: {{ .Values.objectstores.univentionManagementStack.secretKey | default .Values.secrets.minio.umsUser | quote }}
|
||||
- name: "ums-umc-server-smtp-credentials-custom"
|
||||
stringData:
|
||||
password: {{ .Values.smtp.password | quote }}
|
||||
286
helmfile/apps/nubus/values-opendesk-customization.yaml.gotmpl
Normal file
286
helmfile/apps/nubus/values-opendesk-customization.yaml.gotmpl
Normal file
@@ -0,0 +1,286 @@
|
||||
# SPDX-FileCopyrightText: 2024 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
---
|
||||
keycloak:
|
||||
enabled: true
|
||||
podAnnotations:
|
||||
intents.otterize.com/service-name: "ums-keycloak"
|
||||
replicaCount: {{ .Values.replicas.keycloak }}
|
||||
resources:
|
||||
{{ .Values.resources.umsKeycloak | toYaml | nindent 4 }}
|
||||
|
||||
guardian:
|
||||
authorizationApi:
|
||||
podAnnotations:
|
||||
intents.otterize.com/service-name: "ums-guardian-authorization-api"
|
||||
resources:
|
||||
{{ .Values.resources.umsGuardianAuthorizationApi | toYaml | nindent 6 }}
|
||||
managementApi:
|
||||
podAnnotations:
|
||||
intents.otterize.com/service-name: "ums-guardian-management-api"
|
||||
resources:
|
||||
{{ .Values.resources.umsGuardianManagementApi | toYaml | nindent 6 }}
|
||||
managementUi:
|
||||
podAnnotations:
|
||||
intents.otterize.com/service-name: "ums-guardian-management-ui"
|
||||
resources:
|
||||
{{ .Values.resources.umsGuardianManagementUi | toYaml | nindent 6 }}#
|
||||
openPolicyAgent:
|
||||
podAnnotations:
|
||||
intents.otterize.com/service-name: "ums-ums-open-policy-agent"
|
||||
resources:
|
||||
{{ .Values.resources.umsOpenPolicyAgent | toYaml | nindent 6 }}
|
||||
provisioning:
|
||||
# Using openDesk keycloak provisioning
|
||||
enabled: false
|
||||
|
||||
nubusNotificationsApi:
|
||||
additionalAnnotations:
|
||||
intents.otterize.com/service-name: "ums-notifications-api"
|
||||
serviceAccount:
|
||||
annotations:
|
||||
intended.usage: "compliance"
|
||||
replicaCount: {{ .Values.replicas.umsNotificationsApi }}
|
||||
resources:
|
||||
{{ .Values.resources.umsNotificationsApi | toYaml | nindent 4 }}
|
||||
|
||||
nubusUmcServer:
|
||||
additionalAnnotations:
|
||||
intents.otterize.com/service-name: "ums-umc-server"
|
||||
replicaCount: {{ .Values.replicas.umsUmcServer }}
|
||||
resources:
|
||||
{{ .Values.resources.umsUmcServer | toYaml | nindent 4 }}
|
||||
selfService:
|
||||
passwordresetEmailBody: |
|
||||
Sehr geehrte Benutzerin, sehr geehrter Benutzer,
|
||||
|
||||
Ihr Benutzername für {domainname} lautet: {username}
|
||||
|
||||
Sie erhalten diese Nachricht, da Sie Ihr Passwort zurücksetzen möchten oder weil Ihr Benutzer neu im System angelegt wurde.
|
||||
|
||||
Klicken Sie bitte auf den folgenden Link, um Ihr Passwort zu setzen:
|
||||
https://{fqdn}/univention/portal/#/selfservice/newpassword/?token={token}&username={username}
|
||||
|
||||
Der genannte Link ist nur 48 Stunden gültig, danach fordern Sie ihn bitte erneut an unter:
|
||||
https://{fqdn}/univention/portal/#/selfservice/passwordforgotten
|
||||
|
||||
Mit freundlichen Grüßen
|
||||
Ihr {domainname} Passwort-Service
|
||||
|
||||
nubusKeycloakExtensions:
|
||||
handler:
|
||||
replicaCount: {{ .Values.replicas.umsKeycloakExtensionsHandler }}
|
||||
podAnnotations:
|
||||
intents.otterize.com/service-name: "ums-keycloak-extensions-handler"
|
||||
resources:
|
||||
{{ .Values.resources.umsKeycloakExtensionHandler | toYaml | nindent 6 }}
|
||||
proxy:
|
||||
replicaCount: {{ .Values.replicas.umsKeycloakExtensionsProxy }}
|
||||
podAnnotations:
|
||||
intents.otterize.com/service-name: "ums-keycloak-extensions-proxy"
|
||||
resources:
|
||||
{{ .Values.resources.umsKeycloakExtensionProxy | toYaml | nindent 6 }}
|
||||
|
||||
nubusPortalListener:
|
||||
podAnnotations:
|
||||
intents.otterize.com/service-name: "ums-portal-listener"
|
||||
replicaCount: {{ .Values.replicas.umsPortalListener }}
|
||||
resources:
|
||||
{{ .Values.resources.umsPortalListener | toYaml | nindent 4 }}
|
||||
persistence:
|
||||
storageClass: {{ .Values.persistence.storageClassNames.RWO | quote }}
|
||||
size: {{ .Values.persistence.size.univentionManagementStack.portalListener | quote }}
|
||||
|
||||
nubusPortalServer:
|
||||
additionalAnnotations:
|
||||
intents.otterize.com/service-name: "ums-portal-server"
|
||||
serviceAccount:
|
||||
annotations:
|
||||
intended.usage: "compliance"
|
||||
replicaCount: {{ .Values.replicas.umsPortalServer }}
|
||||
resources:
|
||||
{{ .Values.resources.umsPortalServer | toYaml | nindent 4 }}
|
||||
|
||||
nubusLdapNotifier:
|
||||
podAnnotations:
|
||||
intents.otterize.com/service-name: "ums-ldap-notifier"
|
||||
replicaCount: {{ .Values.replicas.umsLdapNotifier }}
|
||||
resources:
|
||||
{{ .Values.resources.umsLdapNotifier | toYaml | nindent 4 }}
|
||||
|
||||
nubusLdapServer:
|
||||
additionalAnnotations:
|
||||
intents.otterize.com/service-name: "ums-ldap-server"
|
||||
serviceAccount:
|
||||
annotations:
|
||||
intended.usage: "compliance"
|
||||
initResources: {{ .Values.resources.umsLdapServer | toYaml | nindent 4 }}
|
||||
resources: {{ .Values.resources.umsLdapServer | toYaml | nindent 4 }}
|
||||
persistence:
|
||||
storageClass: {{ .Values.persistence.storageClassNames.RWO | quote }}
|
||||
size: {{ .Values.persistence.size.univentionManagementStack.ldapServerData | quote }}
|
||||
extraVolumes:
|
||||
- name: "opendesk-schemas"
|
||||
configMap:
|
||||
name: "{{ .Release.Name }}-stack-data-swp-schemas"
|
||||
extraVolumeMounts:
|
||||
- name: "opendesk-schemas"
|
||||
mountPath: "/var/lib/univention-ldap-local/local-schema/opendeskFileshare.schema"
|
||||
subPath: "opendeskFileshare.schema"
|
||||
- name: "opendesk-schemas"
|
||||
mountPath: "/var/lib/univention-ldap-local/local-schema/opendeskKnowledgemanagement.schema"
|
||||
subPath: "opendeskKnowledgemanagement.schema"
|
||||
- name: "opendesk-schemas"
|
||||
mountPath: "/var/lib/univention-ldap-local/local-schema/opendeskLearnmanagement.schema"
|
||||
subPath: "opendeskLearnmanagement.schema"
|
||||
- name: "opendesk-schemas"
|
||||
mountPath: "/var/lib/univention-ldap-local/local-schema/opendeskLivecollaboration.schema"
|
||||
subPath: "opendeskLivecollaboration.schema"
|
||||
- name: "opendesk-schemas"
|
||||
mountPath: "/var/lib/univention-ldap-local/local-schema/opendeskProjectmanagement.schema"
|
||||
subPath: "opendeskProjectmanagement.schema"
|
||||
|
||||
nubusPortalFrontend:
|
||||
additionalAnnotations:
|
||||
intents.otterize.com/service-name: "ums-portal-frontend"
|
||||
serviceAccount:
|
||||
annotations:
|
||||
intended.usage: "compliance"
|
||||
replicaCount: {{ .Values.replicas.umsPortalFrontend }}
|
||||
resources:
|
||||
{{ .Values.resources.umsPortalFrontend | toYaml | nindent 4 }}
|
||||
extraVolumes:
|
||||
- name: "opendesk-branding"
|
||||
configMap:
|
||||
name: "ums-stack-data-swp-branding"
|
||||
extraVolumeMounts:
|
||||
- name: "opendesk-branding"
|
||||
mountPath: "/var/www/html/favicon.ico"
|
||||
subPath: "favicon.ico"
|
||||
- name: "opendesk-branding"
|
||||
mountPath: "/var/www/html/css/custom.css"
|
||||
subPath: "custom.css"
|
||||
- name: "opendesk-branding"
|
||||
mountPath: "/var/www/html/icons/logo.svg"
|
||||
subPath: "logo.svg"
|
||||
- name: "opendesk-branding"
|
||||
mountPath: "/var/www/html/icons/logo_small_border.svg"
|
||||
subPath: "logo_small_border.svg"
|
||||
- name: "opendesk-branding"
|
||||
mountPath: "/var/www/html/custom/portal_background_image.png"
|
||||
subPath: "portal_background_image.png"
|
||||
- name: "opendesk-branding"
|
||||
mountPath: "/var/www/html/custom/portal_background_image.svg"
|
||||
subPath: "portal_background_image.svg"
|
||||
|
||||
nubusStackDataUms:
|
||||
additionalAnnotations:
|
||||
intents.otterize.com/service-name: "ums-stack-data-ums"
|
||||
resources:
|
||||
{{ .Values.resources.umsStackDataUms | toYaml | nindent 4 }}
|
||||
|
||||
nubusStackDataSwp:
|
||||
additionalAnnotations:
|
||||
intents.otterize.com/service-name: "ums-stack-data-swp"
|
||||
resources:
|
||||
{{ .Values.resources.umsStackDataSwp | toYaml | nindent 4 }}
|
||||
|
||||
nubusSelfServiceListener:
|
||||
podAnnotations:
|
||||
intents.otterize.com/service-name: "ums-selfservice-listener"
|
||||
resources:
|
||||
{{ .Values.resources.umsSelfserviceListener | toYaml | nindent 4 }}
|
||||
replicaCount: {{ .Values.replicas.umsSelfserviceListener }}
|
||||
|
||||
nubusUdmRestApi:
|
||||
additionalAnnotations:
|
||||
intents.otterize.com/service-name: "ums-udm-rest-api"
|
||||
serviceAccount:
|
||||
annotations:
|
||||
intended.usage: "compliance"
|
||||
resources:
|
||||
{{ .Values.resources.umsUdmRestApi | toYaml | nindent 4 }}
|
||||
initResources:
|
||||
{{ .Values.resources.umsUdmRestApiInit | toYaml | nindent 4 }}
|
||||
replicaCount: {{ .Values.replicas.umsUdmRestApi }}
|
||||
extraVolumes:
|
||||
- name: "attribute-to-group-mapper-hook"
|
||||
configMap:
|
||||
name: "ums-stack-data-swp-attribute-to-group-mapper-hook"
|
||||
extraVolumeMounts:
|
||||
- name: "attribute-to-group-mapper-hook"
|
||||
mountPath: "/usr/lib/python3/dist-packages/univention/admin/hooks.d/AttributeToGroupMapper.py"
|
||||
subPath: "AttributeToGroupMapper.py"
|
||||
- name: "attribute-to-group-mapper-hook"
|
||||
mountPath: "/usr/share/attribute-to-group-mapper/flag_to_group_mapping.json"
|
||||
subPath: "flag_to_group_mapping.json"
|
||||
|
||||
nubusUmcGateway:
|
||||
replicaCount: {{ .Values.replicas.umsUmcGateway }}
|
||||
resources:
|
||||
{{ .Values.resources.umsUmcGateway | toYaml | nindent 4 }}
|
||||
extraVolumes:
|
||||
- name: "entrypoint-swp-patches"
|
||||
configMap:
|
||||
name: "ums-stack-data-swp-umc-gateway-entrypoint"
|
||||
defaultMode: 0555
|
||||
- name: "announcements-customization"
|
||||
configMap:
|
||||
name: "ums-stack-data-swp-umc-server-announcements"
|
||||
defaultMode: 0444
|
||||
extraVolumeMounts:
|
||||
- name: "entrypoint-swp-patches"
|
||||
mountPath: "/entrypoint.d/90-swp.sh"
|
||||
subPath: "90-swp.sh"
|
||||
- name: "announcements-customization"
|
||||
mountPath:
|
||||
"/usr/share/univention-management-console-frontend/js/dijit/themes\
|
||||
/umc/icons/16x16/udm-portals-announcement.png"
|
||||
subPath: "udm-portals-announcement.png"
|
||||
|
||||
nubusKeycloakBootstrap:
|
||||
podAnnotations:
|
||||
intents.otterize.com/service-name: "ums-keycloak-bootstrap"
|
||||
serviceAccount:
|
||||
annotations:
|
||||
intended.usage: "compliance"
|
||||
resources:
|
||||
{{ .Values.resources.umsKeycloakBootstrap | toYaml | nindent 4 }}
|
||||
|
||||
nubusProvisioning:
|
||||
serviceAccount:
|
||||
annotations:
|
||||
intended.usage: "compliance"
|
||||
nats:
|
||||
resources:
|
||||
{{ .Values.resources.nubusProvisioning.nats | toYaml | nindent 6 }}
|
||||
additionalAnnotations:
|
||||
intents.otterize.com/service-name: "ums-provisioning-nats"
|
||||
serviceAccount:
|
||||
annotations:
|
||||
intended.usage: "compliance"
|
||||
api:
|
||||
resources:
|
||||
{{ .Values.resources.nubusProvisioning.api | toYaml | nindent 6 }}
|
||||
additionalAnnotations:
|
||||
intents.otterize.com/service-name: "ums-provisioning-api"
|
||||
dispatcher:
|
||||
resources:
|
||||
{{ .Values.resources.nubusProvisioning.dispatcher | toYaml | nindent 6 }}
|
||||
additionalAnnotations:
|
||||
intents.otterize.com/service-name: "ums-provisioning-dispatcher"
|
||||
prefill:
|
||||
resources:
|
||||
{{ .Values.resources.nubusProvisioning.prefill | toYaml | nindent 6 }}
|
||||
additionalAnnotations:
|
||||
intents.otterize.com/service-name: "ums-provisioning-prefill"
|
||||
registerConsumers:
|
||||
resources:
|
||||
{{ .Values.resources.nubusProvisioning.registerConsumers | toYaml | nindent 6 }}
|
||||
additionalAnnotations:
|
||||
intents.otterize.com/service-name: "ums-provisioning-register-consumers"
|
||||
udmTransformer:
|
||||
resources:
|
||||
{{ .Values.resources.nubusProvisioning.udmTransformer | toYaml | nindent 6 }}
|
||||
additionalAnnotations:
|
||||
intents.otterize.com/service-name: "ums-provisioning-udm-transformer"
|
||||
230
helmfile/apps/nubus/values-opendesk-images.yaml.gotmpl
Normal file
230
helmfile/apps/nubus/values-opendesk-images.yaml.gotmpl
Normal file
@@ -0,0 +1,230 @@
|
||||
# SPDX-FileCopyrightText: 2024 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
---
|
||||
keycloak:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusKeycloak.registry }}
|
||||
repository: {{ .Values.images.nubusKeycloak.repository }}
|
||||
tag: {{ .Values.images.nubusKeycloak.tag }}
|
||||
|
||||
nubusKeycloakBootstrap:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusKeycloakBootstrap.registry }}
|
||||
repository: {{ .Values.images.nubusKeycloakBootstrap.repository }}
|
||||
tag: {{ .Values.images.nubusKeycloakBootstrap.tag }}
|
||||
|
||||
nubusKeycloakExtensions:
|
||||
handler:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusKeycloakExtensionHandler.registry }}
|
||||
repository: {{ .Values.images.nubusKeycloakExtensionHandler.repository }}
|
||||
tag: {{ .Values.images.nubusKeycloakExtensionHandler.tag }}
|
||||
|
||||
proxy:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusKeycloakExtensionProxy.registry }}
|
||||
repository: {{ .Values.images.nubusKeycloakExtensionProxy.repository }}
|
||||
tag: {{ .Values.images.nubusKeycloakExtensionProxy.tag }}
|
||||
|
||||
nubusLdapNotifier:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusLdapNotifier.registry }}
|
||||
repository: {{ .Values.images.nubusLdapNotifier.repository }}
|
||||
tag: {{ .Values.images.nubusLdapNotifier.tag }}
|
||||
|
||||
nubusLdapServer:
|
||||
ldapServer:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusLdapServer.registry }}
|
||||
repository: {{ .Values.images.nubusLdapServer.repository }}
|
||||
tag: {{ .Values.images.nubusLdapServer.tag }}
|
||||
dhInitcontainer:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusLdapServerDhInitContainer.registry }}
|
||||
repository: {{ .Values.images.nubusLdapServerDhInitContainer.repository }}
|
||||
tag: {{ .Values.images.nubusLdapServerDhInitContainer.tag }}
|
||||
waitForDependency:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusWaitForDependency.registry }}
|
||||
repository: {{ .Values.images.nubusWaitForDependency.repository }}
|
||||
tag: {{ .Values.images.nubusWaitForDependency.tag }}
|
||||
|
||||
|
||||
nubusPortalConsumer:
|
||||
portalConsumer:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusPortalConsumer.registry }}
|
||||
repository: {{ .Values.images.nubusPortalConsumer.repository }}
|
||||
tag: {{ .Values.images.nubusPortalConsumer.tag }}
|
||||
|
||||
|
||||
nubusNotificationsApi:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusNotificationsApi.registry }}
|
||||
repository: {{ .Values.images.nubusNotificationsApi.repository }}
|
||||
tag: {{ .Values.images.nubusNotificationsApi.tag }}
|
||||
|
||||
nubusPortalFrontend:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusPortalFrontend.registry }}
|
||||
repository: {{ .Values.images.nubusPortalFrontend.repository }}
|
||||
tag: {{ .Values.images.nubusPortalFrontend.tag }}
|
||||
|
||||
nubusPortalListener:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusPortalListener.registry }}
|
||||
repository: {{ .Values.images.nubusPortalListener.repository }}
|
||||
tag: {{ .Values.images.nubusPortalListener.tag }}
|
||||
waitForDependency:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusWaitForDependency.registry }}
|
||||
repository: {{ .Values.images.nubusWaitForDependency.repository }}
|
||||
tag: {{ .Values.images.nubusWaitForDependency.tag }}
|
||||
|
||||
nubusPortalServer:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusPortalServer.registry }}
|
||||
repository: {{ .Values.images.nubusPortalServer.repository }}
|
||||
tag: {{ .Values.images.nubusPortalServer.tag }}
|
||||
|
||||
nubusProvisioning:
|
||||
api:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusProvisioningEventsAndConsumerApi.registry }}
|
||||
repository: {{ .Values.images.nubusProvisioningEventsAndConsumerApi.repository }}
|
||||
tag: {{ .Values.images.nubusProvisioningEventsAndConsumerApi.tag }}
|
||||
dispatcher:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusProvisioningDispatcher.registry }}
|
||||
repository: {{ .Values.images.nubusProvisioningDispatcher.repository }}
|
||||
tag: {{ .Values.images.nubusProvisioningDispatcher.tag }}
|
||||
udmTransformer:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusProvisioningUdmTransformer.registry }}
|
||||
repository: {{ .Values.images.nubusProvisioningUdmTransformer.repository }}
|
||||
tag: {{ .Values.images.nubusProvisioningUdmTransformer.tag }}
|
||||
prefill:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusProvisioningPrefill.registry }}
|
||||
repository: {{ .Values.images.nubusProvisioningPrefill.repository }}
|
||||
tag: {{ .Values.images.nubusProvisioningPrefill.tag }}
|
||||
registerConsumers:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusWaitForDependency.registry }}
|
||||
repository: {{ .Values.images.nubusWaitForDependency.repository }}
|
||||
tag: {{ .Values.images.nubusWaitForDependency.tag }}
|
||||
nats:
|
||||
nats:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusNats.registry }}
|
||||
repository: {{ .Values.images.nubusNats.repository }}
|
||||
tag: {{ .Values.images.nubusNats.tag }}
|
||||
reloader:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusNatsReloader.registry }}
|
||||
repository: {{ .Values.images.nubusNatsReloader.repository }}
|
||||
tag: {{ .Values.images.nubusNatsReloader.tag }}
|
||||
natsBox:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusNatsBox.registry }}
|
||||
repository: {{ .Values.images.nubusNatsBox.repository }}
|
||||
tag: {{ .Values.images.nubusNatsBox.tag }}
|
||||
|
||||
nubusProvisioningEventsAndConsumerApi:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusProvisioningEventsAndConsumerApi.registry }}
|
||||
repository: {{ .Values.images.nubusProvisioningEventsAndConsumerApi.repository }}
|
||||
tag: {{ .Values.images.nubusProvisioningEventsAndConsumerApi.tag }}
|
||||
|
||||
nubusProvisioningPrefill:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusProvisioningPrefill.registry }}
|
||||
repository: {{ .Values.images.nubusProvisioningPrefill.repository }}
|
||||
tag: {{ .Values.images.nubusProvisioningPrefill.tag }}
|
||||
|
||||
nubusUdmListener:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusProvisioningUdmListener.registry }}
|
||||
repository: {{ .Values.images.nubusProvisioningUdmListener.repository }}
|
||||
tag: {{ .Values.images.nubusProvisioningUdmListener.tag }}
|
||||
|
||||
nubusSelfServiceListener:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusSelfserviceInvitation.registry }}
|
||||
repository: {{ .Values.images.nubusSelfserviceInvitation.repository }}
|
||||
tag: {{ .Values.images.nubusSelfserviceInvitation.tag }}
|
||||
|
||||
nubusUdmRestApi:
|
||||
# oxPlugin:
|
||||
# image:
|
||||
# registry: \{\{ .Values.images.nubusUdmRestApiOxPlugin.registry }}
|
||||
# repository: \{\{ .Values.images.nubusUdmRestApiOxPlugin.repository }}
|
||||
# tag: \{\{ .Values.images.nubusUdmRestApiOxPlugin.tag }}
|
||||
# portalPlugin:
|
||||
# image:
|
||||
# registry: \{\{ .Values.images.nubusUdmRestApiPortalPlugin.registry }}
|
||||
# repository: \{\{ .Values.images.nubusUdmRestApiPortalPlugin.repository }}
|
||||
# tag: \{\{ .Values.images.nubusUdmRestApiPortalPlugin.tag }}
|
||||
udmRestApi:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusUdmRestApi.registry }}
|
||||
repository: {{ .Values.images.nubusUdmRestApi.repository }}
|
||||
tag: {{ .Values.images.nubusUdmRestApi.tag }}
|
||||
|
||||
nubusUmcGateway:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusUmcGateway.registry }}
|
||||
repository: {{ .Values.images.nubusUmcGateway.repository }}
|
||||
tag: {{ .Values.images.nubusUmcGateway.tag }}
|
||||
|
||||
nubusUmcServer:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusUmcServer.registry }}
|
||||
repository: {{ .Values.images.nubusUmcServer.repository }}
|
||||
tag: {{ .Values.images.nubusUmcServer.tag }}
|
||||
|
||||
nubusWaitForDependency:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusWaitForDependency.registry }}
|
||||
repository: {{ .Values.images.nubusWaitForDependency.repository }}
|
||||
tag: {{ .Values.images.nubusWaitForDependency.tag }}
|
||||
|
||||
|
||||
nubusGuardian:
|
||||
provisioning:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusGuardianProvisioning.registry }}
|
||||
repository: {{ .Values.images.nubusGuardianProvisioning.repository }}
|
||||
tag: {{ .Values.images.nubusGuardianProvisioning.tag }}
|
||||
authorizationApi:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusGuardianAuthorizationApi.registry }}
|
||||
repository: {{ .Values.images.nubusGuardianAuthorizationApi.repository }}
|
||||
tag: {{ .Values.images.nubusGuardianAuthorizationApi.tag }}
|
||||
managementApi:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusGuardianManagementApi.registry }}
|
||||
repository: {{ .Values.images.nubusGuardianManagementApi.repository }}
|
||||
tag: {{ .Values.images.nubusGuardianManagementApi.tag }}
|
||||
managementUi:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusGuardianManagementUi.registry }}
|
||||
repository: {{ .Values.images.nubusGuardianManagementUi.repository }}
|
||||
tag: {{ .Values.images.nubusGuardianManagementUi.tag }}
|
||||
openPolicyAgent:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusOpenPolicyAgent.registry }}
|
||||
repository: {{ .Values.images.nubusOpenPolicyAgent.repository }}
|
||||
tag: {{ .Values.images.nubusOpenPolicyAgent.tag }}
|
||||
|
||||
nubusStackDataUms:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusDataLoader.registry }}
|
||||
repository: {{ .Values.images.nubusDataLoader.repository }}
|
||||
tag: {{ .Values.images.nubusDataLoader.tag }}
|
||||
|
||||
nubusStackDataSwp:
|
||||
image:
|
||||
registry: {{ .Values.images.nubusDataLoader.registry }}
|
||||
repository: {{ .Values.images.nubusDataLoader.repository }}
|
||||
tag: {{ .Values.images.nubusDataLoader.tag }}
|
||||
@@ -17,10 +17,15 @@ image:
|
||||
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
|
||||
|
||||
cleanup:
|
||||
deletePodsOnSuccess: {{ .Values.cleanup.deletePodsOnSuccess }}
|
||||
keepPVCOnDelete: {{ .Values.cleanup.keepPVCOnDelete }}
|
||||
deletePodsOnSuccess: {{ .Values.debug.cleanup.deletePodsOnSuccess }}
|
||||
keepPVCOnDelete: {{ .Values.debug.cleanup.keepPVCOnDelete }}
|
||||
|
||||
config:
|
||||
custom:
|
||||
clientScopes:
|
||||
{{ .Values.functional.authentication.oidc.clientScopes | toYaml | nindent 6 }}
|
||||
clients:
|
||||
{{ .Values.functional.authentication.oidc.clients | toYaml | nindent 6 }}
|
||||
keycloak:
|
||||
adminUser: "kcadmin"
|
||||
adminPassword: {{ .Values.secrets.keycloak.adminPassword | quote }}
|
||||
@@ -29,14 +34,20 @@ config:
|
||||
enabled: true
|
||||
internalBaseUrl: "http://ums-keycloak.{{ .Release.Namespace }}.svc.{{ .Values.cluster.networking.domain }}:8080"
|
||||
twoFactorSettings:
|
||||
additionalGroups: {{ .Values.authentication.twoFactor.groups }}
|
||||
custom:
|
||||
additionalGroups: {{ .Values.functional.authentication.twoFactor.groups }}
|
||||
opendesk:
|
||||
# We use client specific scopes as we bind them to Keycloak role membership which itself is linked
|
||||
# to LDAP group membership to ensure a user cannot access an application without the required
|
||||
# group membership.
|
||||
# ToDo:
|
||||
# - Jitsi does currently not care if it gets scopes/claims as long as the user is authenticated.
|
||||
clientScopes:
|
||||
- name: "read_contacts"
|
||||
protocol: "openid-connect"
|
||||
- name: "write_contacts"
|
||||
protocol: "openid-connect"
|
||||
- name: "opendesk"
|
||||
- name: "opendesk-openproject-scope"
|
||||
description: "Scope for the claims required by openDesk's OpenProject instance."
|
||||
protocol: "openid-connect"
|
||||
protocolMappers:
|
||||
- name: "opendesk_useruuid"
|
||||
@@ -61,6 +72,306 @@ config:
|
||||
access.token.claim: true
|
||||
claim.name: "opendesk_username"
|
||||
jsonType.label: "String"
|
||||
- name: "opendeskProjectmanagementAdmin"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "opendeskProjectmanagementAdmin"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "openproject_admin"
|
||||
jsonType.label: "String"
|
||||
- name: "email"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
introspection.token.claim: true
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "email"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "email"
|
||||
jsonType.label: "String"
|
||||
- name: "given name"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
introspection.token.claim: true
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "firstName"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "given_name"
|
||||
jsonType.label: "String"
|
||||
- name: "family name"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
introspection.token.claim: true
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "lastName"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "family_name"
|
||||
jsonType.label: "String"
|
||||
- name: "opendesk-jitsi-scope"
|
||||
description: "Scope for the claims required by openDesk's Jitsi instance."
|
||||
protocol: "openid-connect"
|
||||
protocolMappers:
|
||||
- name: "opendesk_useruuid"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "entryUUID"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "opendesk_useruuid"
|
||||
jsonType.label: "String"
|
||||
- name: "opendesk_username"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "uid"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "opendesk_username"
|
||||
jsonType.label: "String"
|
||||
- name: "full name"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-full-name-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
id.token.claim: true
|
||||
introspection.token.claim: true
|
||||
access.token.claim: true
|
||||
userinfo.token.claim: true
|
||||
- name: "email"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
introspection.token.claim: true
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "email"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "email"
|
||||
jsonType.label: "String"
|
||||
- name: "opendesk-nextcloud-scope"
|
||||
description: "Scope for the claims required by openDesk's Nextcloud instance."
|
||||
protocol: "openid-connect"
|
||||
protocolMappers:
|
||||
- name: "opendesk_useruuid"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "entryUUID"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "opendesk_useruuid"
|
||||
jsonType.label: "String"
|
||||
- name: "opendesk_username"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "uid"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "opendesk_username"
|
||||
jsonType.label: "String"
|
||||
- name: "email"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
introspection.token.claim: true
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "email"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "email"
|
||||
jsonType.label: "String"
|
||||
- name: "context"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "oxContextIDNum"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "context"
|
||||
jsonType.label: "String"
|
||||
- name: "opendesk-matrix-scope"
|
||||
description: "Scope for the claims required by openDesk's Matrix instance."
|
||||
protocol: "openid-connect"
|
||||
protocolMappers:
|
||||
- name: "opendesk_useruuid"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "entryUUID"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "opendesk_useruuid"
|
||||
jsonType.label: "String"
|
||||
- name: "opendesk_username"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "uid"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "opendesk_username"
|
||||
jsonType.label: "String"
|
||||
- name: "full name"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-full-name-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
id.token.claim: true
|
||||
introspection.token.claim: true
|
||||
access.token.claim: true
|
||||
userinfo.token.claim: true
|
||||
- name: "email"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
introspection.token.claim: true
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "email"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "email"
|
||||
jsonType.label: "String"
|
||||
- name: "opendesk-xwiki-scope"
|
||||
description: "Scope for the claims required by openDesk's XWiki instance."
|
||||
protocol: "openid-connect"
|
||||
protocolMappers:
|
||||
- name: "opendesk_useruuid"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "entryUUID"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "opendesk_useruuid"
|
||||
jsonType.label: "String"
|
||||
- name: "opendesk_username"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "uid"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "opendesk_username"
|
||||
jsonType.label: "String"
|
||||
- name: "full name"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-full-name-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
id.token.claim: true
|
||||
introspection.token.claim: true
|
||||
access.token.claim: true
|
||||
userinfo.token.claim: true
|
||||
- name: "email"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
introspection.token.claim: true
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "email"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "email"
|
||||
jsonType.label: "String"
|
||||
- name: "opendesk-dovecot-scope"
|
||||
description: "Scope for the claims required by openDesk's Dovecot instance."
|
||||
protocol: "openid-connect"
|
||||
protocolMappers:
|
||||
- name: "opendesk_useruuid"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "entryUUID"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "opendesk_useruuid"
|
||||
jsonType.label: "String"
|
||||
- name: "opendesk_username"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "uid"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "opendesk_username"
|
||||
jsonType.label: "String"
|
||||
- name: "opendesk-oxappsuite-scope"
|
||||
description: "Scope for the claims required by openDesk's OX Appuite instance."
|
||||
protocol: "openid-connect"
|
||||
protocolMappers:
|
||||
- name: "context"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "oxContextIDNum"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "context"
|
||||
jsonType.label: "String"
|
||||
- name: "opendesk_useruuid"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "entryUUID"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "opendesk_useruuid"
|
||||
jsonType.label: "String"
|
||||
- name: "opendesk_username"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "uid"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "opendesk_username"
|
||||
jsonType.label: "String"
|
||||
clients:
|
||||
- name: "opendesk-dovecot"
|
||||
clientId: "opendesk-dovecot"
|
||||
@@ -74,7 +385,7 @@ config:
|
||||
attributes:
|
||||
backchannel.logout.session.required: false
|
||||
defaultClientScopes:
|
||||
- "opendesk"
|
||||
- "opendesk-dovecot-scope"
|
||||
- name: "opendesk-intercom"
|
||||
clientId: "opendesk-intercom"
|
||||
protocol: "openid-connect"
|
||||
@@ -128,7 +439,6 @@ config:
|
||||
claim.name: "phoenixusername"
|
||||
jsonType.label: "String"
|
||||
defaultClientScopes:
|
||||
- "opendesk"
|
||||
- "offline_access"
|
||||
- name: "opendesk-jitsi"
|
||||
clientId: "opendesk-jitsi"
|
||||
@@ -142,8 +452,7 @@ config:
|
||||
fullScopeAllowed: true
|
||||
authorizationServicesEnabled: false
|
||||
defaultClientScopes:
|
||||
- "opendesk"
|
||||
- "profile"
|
||||
- "opendesk-jitsi-scope"
|
||||
- name: "opendesk-matrix"
|
||||
clientId: "opendesk-matrix"
|
||||
protocol: "openid-connect"
|
||||
@@ -165,12 +474,9 @@ config:
|
||||
backchannel.logout.url: "https://{{ .Values.global.hosts.synapse }}.{{ .Values.global.domain }}/_synapse/client/oidc/backchannel_logout"
|
||||
post.logout.redirect.uris: "https://{{ .Values.global.hosts.element }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.synapse }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}/*"
|
||||
defaultClientScopes:
|
||||
- "opendesk"
|
||||
optionalClientScopes:
|
||||
- "email"
|
||||
- "profile"
|
||||
# This is a temporary OIDC client for matrix, as the OIDC logout still uses "matrix" as client ID. Unless that
|
||||
# is solved and also is able to use "opendesk-matrix" we keep that dummy client that
|
||||
- "opendesk-matrix-scope"
|
||||
# The following is a temporary OIDC client for matrix, as the OIDC logout still uses "matrix" as client ID.
|
||||
# Unless that is solved and also is able to use "opendesk-matrix" we keep that dummy client that
|
||||
- name: "matrix"
|
||||
clientId: "matrix"
|
||||
protocol: "openid-connect"
|
||||
@@ -183,6 +489,8 @@ config:
|
||||
authorizationServicesEnabled: false
|
||||
attributes:
|
||||
post.logout.redirect.uris: "https://{{ .Values.global.hosts.element }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.synapse }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}/*"
|
||||
defaultClientScopes: []
|
||||
optionalClientScopes: []
|
||||
- name: "opendesk-nextcloud"
|
||||
clientId: "opendesk-nextcloud"
|
||||
protocol: "openid-connect"
|
||||
@@ -199,21 +507,8 @@ config:
|
||||
backchannel.logout.session.required: true
|
||||
backchannel.logout.url: "https://{{ .Values.global.hosts.nextcloud }}.{{ .Values.global.domain }}/index.php/apps/user_oidc/backchannel-logout/opendesk"
|
||||
post.logout.redirect.uris: "https://{{ .Values.global.hosts.nextcloud }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}/*"
|
||||
protocolMappers:
|
||||
- name: "context"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "oxContextIDNum"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "context"
|
||||
jsonType.label: "String"
|
||||
defaultClientScopes:
|
||||
- "opendesk"
|
||||
- "email"
|
||||
- "opendesk-nextcloud-scope"
|
||||
- "read_contacts"
|
||||
- "write_contacts"
|
||||
- name: "opendesk-openproject"
|
||||
@@ -233,22 +528,8 @@ config:
|
||||
backchannel.logout.session.required: true
|
||||
backchannel.logout.url: "https://{{ .Values.global.hosts.openproject }}.{{ .Values.global.domain }}/auth/keycloak/backchannel-logout"
|
||||
post.logout.redirect.uris: "https://{{ .Values.global.hosts.openproject }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}/*"
|
||||
protocolMappers:
|
||||
- name: "opendeskProjectmanagementAdmin"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "opendeskProjectmanagementAdmin"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "openproject_admin"
|
||||
jsonType.label: "String"
|
||||
defaultClientScopes:
|
||||
- "opendesk"
|
||||
- "email"
|
||||
- "profile"
|
||||
- "opendesk-openproject-scope"
|
||||
- name: "opendesk-oxappsuite"
|
||||
clientId: "opendesk-oxappsuite"
|
||||
protocol: "openid-connect"
|
||||
@@ -265,20 +546,8 @@ config:
|
||||
backchannel.logout.session.required: true
|
||||
backchannel.logout.url: "https://{{ .Values.global.hosts.openxchange }}.{{ .Values.global.domain }}/ajax/oidc/backchannel_logout"
|
||||
post.logout.redirect.uris: "https://{{ .Values.global.hosts.openxchange }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}/*"
|
||||
protocolMappers:
|
||||
- name: "context"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "oxContextIDNum"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "context"
|
||||
jsonType.label: "String"
|
||||
defaultClientScopes:
|
||||
- "opendesk"
|
||||
- "opendesk-oxappsuite-scope"
|
||||
- "read_contacts"
|
||||
- "write_contacts"
|
||||
- name: "opendesk-xwiki"
|
||||
@@ -298,302 +567,7 @@ config:
|
||||
backchannel.logout.url: "https://{{ .Values.global.hosts.xwiki }}.{{ .Values.global.domain }}/oidc/authenticator/backchannel_logout"
|
||||
post.logout.redirect.uris: "https://{{ .Values.global.hosts.xwiki }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}/*"
|
||||
defaultClientScopes:
|
||||
- "opendesk"
|
||||
- "address"
|
||||
- "email"
|
||||
- "profile"
|
||||
- name: "guardian-management-api"
|
||||
clientId: "guardian-management-api"
|
||||
rootUrl: "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}"
|
||||
baseUrl: "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}"
|
||||
protocol: "openid-connect"
|
||||
publicClient: false
|
||||
clientAuthenticatorType: "client-secret"
|
||||
secret: {{ .Values.secrets.keycloak.clientSecret.guardian | quote }}
|
||||
redirectUris:
|
||||
- "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}/guardian/*"
|
||||
fullScopeAllowed: true
|
||||
standardFlowEnabled: true
|
||||
implicitFlowEnabled: false
|
||||
directAccessGrantsEnabled: false
|
||||
serviceAccountsEnabled: true
|
||||
protocolMappers:
|
||||
- name: "Client Host"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usersessionmodel-note-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
user.session.note: "clientHost"
|
||||
userinfo.token.claim: true
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "clientHost"
|
||||
jsonType.label: "String"
|
||||
- name: "Client ID"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usersessionmodel-note-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
user.session.note: "client_id"
|
||||
userinfo.token.claim: true
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "client_id"
|
||||
jsonType.label: "String"
|
||||
- name: "guardian-audience"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-audience-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
included.client.audience: "guardian"
|
||||
userinfo.token.claim: false
|
||||
id.token.claim: false
|
||||
access.token.claim: true
|
||||
- name: "audiencemap"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-audience-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
included.client.audience: "guardian-cli"
|
||||
userinfo.token.claim: true
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
- name: "dn"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
userinfo.token.claim: false
|
||||
user.attribute: "LDAP_ENTRY_DN"
|
||||
id.token.claim: false
|
||||
access.token.claim: true
|
||||
claim.name: "dn"
|
||||
jsonType.label: "String"
|
||||
- name: "username"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-property-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "username"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "preferred_username"
|
||||
jsonType.label: "String"
|
||||
- name: "uid"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "uid"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "uid"
|
||||
jsonType.label: "String"
|
||||
- name: "email"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-property-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "email"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "email"
|
||||
jsonType.label: "String"
|
||||
- name: "Client IP Address"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usersessionmodel-note-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
user.session.note: "clientAddress"
|
||||
userinfo.token.claim: true
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "clientAddress"
|
||||
jsonType.label: "String"
|
||||
- name: "guardian-scripts"
|
||||
clientId: "guardian-scripts"
|
||||
description: ""
|
||||
rootUrl: "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}"
|
||||
adminUrl: "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}"
|
||||
baseUrl: "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}"
|
||||
surrogateAuthRequired: false
|
||||
enabled: true
|
||||
alwaysDisplayInConsole: false
|
||||
clientAuthenticatorType: "client-secret"
|
||||
redirectUris:
|
||||
- "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}/univention/guardian/*"
|
||||
- "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}"
|
||||
- "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}/guardian/*"
|
||||
webOrigins:
|
||||
- "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}"
|
||||
bearerOnly: false
|
||||
consentRequired: false
|
||||
standardFlowEnabled: true
|
||||
implicitFlowEnabled: false
|
||||
directAccessGrantsEnabled: true
|
||||
serviceAccountsEnabled: false
|
||||
publicClient: true
|
||||
frontchannelLogout: false
|
||||
protocol: "openid-connect"
|
||||
fullScopeAllowed: true
|
||||
protocolMappers:
|
||||
- name: "email"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-property-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "email"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "email"
|
||||
jsonType.label: "String"
|
||||
- name: "guardian-audience"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-audience-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
included.client.audience: "guardian"
|
||||
id.token.claim: false
|
||||
access.token.claim: true
|
||||
userinfo.token.claim: false
|
||||
- name: "username"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-property-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "username"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "preferred_username"
|
||||
jsonType.label: "String"
|
||||
- name: "uid"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "uid"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "uid"
|
||||
jsonType.label: "String"
|
||||
- name: "audiencemap"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-audience-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
included.client.audience: "guardian-scripts"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
userinfo.token.claim: true
|
||||
- name: "dn"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
aggregate.attrs: false
|
||||
multivalued: false
|
||||
userinfo.token.claim: false
|
||||
user.attribute: "LDAP_ENTRY_DN"
|
||||
id.token.claim: false
|
||||
access.token.claim: true
|
||||
claim.name: "dn"
|
||||
jsonType.label: "String"
|
||||
defaultClientScopes:
|
||||
- "opendesk"
|
||||
- "web-origins"
|
||||
- "acr"
|
||||
- "roles"
|
||||
- "profile"
|
||||
- "email"
|
||||
optionalClientScopes:
|
||||
- "address"
|
||||
- "phone"
|
||||
- "offline_access"
|
||||
- "microprofile-jwt"
|
||||
- name: "guardian-ui"
|
||||
clientId: "guardian-ui"
|
||||
rootUrl: "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}"
|
||||
baseUrl: "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}"
|
||||
clientAuthenticatorType: "client-secret"
|
||||
redirectUris:
|
||||
- "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}/univention/guardian/*"
|
||||
standardFlowEnabled: true
|
||||
publicClient: true
|
||||
implicitFlowEnabled: false
|
||||
directAccessGrantsEnabled: false
|
||||
serviceAccountsEnabled: false
|
||||
protocol: "openid-connect"
|
||||
fullScopeAllowed: true
|
||||
protocolMappers:
|
||||
- name: "uid"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "uid"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "uid"
|
||||
jsonType.label: "String"
|
||||
- name: "username"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-property-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "username"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "preferred_username"
|
||||
jsonType.label: "String"
|
||||
- name: "dn"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-attribute-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
userinfo.token.claim: "false"
|
||||
user.attribute: "LDAP_ENTRY_DN"
|
||||
id.token.claim: false
|
||||
access.token.claim: true
|
||||
claim.name: "dn"
|
||||
jsonType.label: "String"
|
||||
- name: "audiencemap"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-audience-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
included.client.audience: "guardian"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
userinfo.token.claim: true
|
||||
- name: "email"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-usermodel-property-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
userinfo.token.claim: true
|
||||
user.attribute: "email"
|
||||
id.token.claim: true
|
||||
access.token.claim: true
|
||||
claim.name: "email"
|
||||
jsonType.label: "String"
|
||||
- name: "guardian-audience"
|
||||
protocol: "openid-connect"
|
||||
protocolMapper: "oidc-audience-mapper"
|
||||
consentRequired: false
|
||||
config:
|
||||
included.client.audience: "guardian"
|
||||
id.token.claim: false
|
||||
access.token.claim: true
|
||||
userinfo.token.claim: false
|
||||
|
||||
- "opendesk-xwiki-scope"
|
||||
|
||||
containerSecurityContext:
|
||||
allowPrivilegeEscalation: false
|
||||
@@ -4,8 +4,8 @@ SPDX-License-Identifier: Apache-2.0
|
||||
*/}}
|
||||
---
|
||||
cleanup:
|
||||
deletePodsOnSuccess: {{ .Values.cleanup.deletePodsOnSuccess }}
|
||||
deletePodsOnSuccessTimeout: {{ .Values.cleanup.deletePodsOnSuccessTimeout }}
|
||||
deletePodsOnSuccess: {{ .Values.debug.cleanup.deletePodsOnSuccess }}
|
||||
deletePodsOnSuccessTimeout: {{ .Values.debug.cleanup.deletePodsOnSuccessTimeout }}
|
||||
|
||||
image:
|
||||
registry: {{ .Values.global.imageRegistry | default .Values.images.openxchangeBootstrap.registry | quote }}
|
||||
|
||||
@@ -11,8 +11,8 @@ global:
|
||||
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||
|
||||
cleanup:
|
||||
deletePodsOnSuccess: {{ .Values.cleanup.deletePodsOnSuccess }}
|
||||
keepPVCOnDelete: {{ .Values.cleanup.keepPVCOnDelete }}
|
||||
deletePodsOnSuccess: {{ .Values.debug.cleanup.deletePodsOnSuccess }}
|
||||
keepPVCOnDelete: {{ .Values.debug.cleanup.keepPVCOnDelete }}
|
||||
|
||||
config:
|
||||
openproject:
|
||||
|
||||
@@ -67,10 +67,13 @@ environment:
|
||||
OPENPROJECT_SMTP__AUTHENTICATION: "plain"
|
||||
OPENPROJECT_SMTP__ENABLE__STARTTLS__AUTO: "true"
|
||||
OPENPROJECT_SMTP__OPENSSL__VERIFY__MODE: "peer"
|
||||
OPENPROJECT_MAIL__FROM: "{{ .Values.localpartNoReply }}@{{ .Values.global.hosts.openproject }}.{{ .Values.global.domain }}"
|
||||
OPENPROJECT_MAIL__FROM: "{{ .Values.smtp.localpartNoReply }}@{{ .Values.global.hosts.openproject }}.{{ .Values.global.domain }}"
|
||||
OPENPROJECT_HOME__URL: {{ printf "https://%s.%s/" .Values.global.hosts.univentionManagementStack .Values.global.domain | quote }}
|
||||
OPENPROJECT_OPENID__CONNECT_KEYCLOAK_ISSUER: "https://{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}/realms/{{ .Values.platform.realm }}"
|
||||
OPENPROJECT_OPENID__CONNECT_KEYCLOAK_POST__LOGOUT__REDIRECT__URI: "https://{{ .Values.global.hosts.openproject }}.{{ .Values.global.domain }}/"
|
||||
{{- if .Values.enterprise.openproject.token }}
|
||||
OPENPROJECT_ENTERPRISE__TOKEN: {{ .Values.enterprise.openproject.token | quote }}
|
||||
{{- end }}
|
||||
|
||||
image:
|
||||
registry: {{ .Values.global.imageRegistry | default .Values.images.openproject.registry | quote }}
|
||||
@@ -129,7 +132,7 @@ openproject:
|
||||
host: "{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}"
|
||||
identifier: "opendesk-openproject"
|
||||
provider: "keycloak"
|
||||
scope: "[openid,opendesk]"
|
||||
scope: "[openid,opendesk-openproject-scope]"
|
||||
secret: {{ .Values.secrets.keycloak.clientSecret.openproject | quote }}
|
||||
tokenEndpoint: "/realms/{{ .Values.platform.realm }}/protocol/openid-connect/token"
|
||||
userinfoEndpoint: "/realms/{{ .Values.platform.realm }}/protocol/openid-connect/userinfo"
|
||||
|
||||
@@ -12,7 +12,7 @@ issuerRef:
|
||||
name: {{ .Values.certificate.issuerRef.name | quote }}
|
||||
|
||||
cleanup:
|
||||
keepRessourceOnDelete: {{ .Values.cleanup.keepRessourceOnDelete }}
|
||||
keepRessourceOnDelete: {{ .Values.debug.cleanup.keepRessourceOnDelete }}
|
||||
|
||||
wildcard: {{ .Values.certificate.wildcard }}
|
||||
...
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
---
|
||||
cleanup:
|
||||
deletePodsOnSuccess: {{ .Values.cleanup.deletePodsOnSuccess }}
|
||||
deletePodsOnSuccess: {{ .Values.debug.cleanup.deletePodsOnSuccess }}
|
||||
|
||||
containerSecurityContext:
|
||||
allowPrivilegeEscalation: false
|
||||
|
||||
@@ -67,9 +67,9 @@ mode: {{ if gt .Values.replicas.minio 1 }}"distributed"{{ else }}"standalone"{{
|
||||
|
||||
metrics:
|
||||
serviceMonitor:
|
||||
enabled: {{ .Values.prometheus.serviceMonitors.enabled }}
|
||||
enabled: {{ .Values.monitoring.prometheus.serviceMonitors.enabled }}
|
||||
additionalLabels:
|
||||
{{ .Values.prometheus.serviceMonitors.labels | toYaml | nindent 6 }}
|
||||
{{ .Values.monitoring.prometheus.serviceMonitors.labels | toYaml | nindent 6 }}
|
||||
|
||||
networkPolicy:
|
||||
enabled: false
|
||||
@@ -89,16 +89,43 @@ provisioning:
|
||||
extraCommands:
|
||||
- "mc anonymous set download provisioning/ums/portal-assets"
|
||||
buckets:
|
||||
- name: {{ .Values.objectstores.migrations.bucket | quote }}
|
||||
versioning: false
|
||||
withLock: false
|
||||
- name: {{ .Values.objectstores.nextcloud.bucket | quote }}
|
||||
versioning: true
|
||||
withLock: false
|
||||
- name: {{ .Values.objectstores.openproject.bucket | quote }}
|
||||
versioning: true
|
||||
withLock: false
|
||||
- name: {{ .Values.objectstores.univentionManagementStack.bucket | quote }}
|
||||
versioning: false
|
||||
withLock: false
|
||||
- name: {{ .Values.objectstores.nextcloud.bucket | quote }}
|
||||
versioning: true
|
||||
withLock: false
|
||||
policies:
|
||||
- name: "migrations-bucket-policy"
|
||||
statements:
|
||||
- resources:
|
||||
- "arn:aws:s3:::migrations"
|
||||
effect: "Allow"
|
||||
actions:
|
||||
- "s3:*"
|
||||
- resources:
|
||||
- "arn:aws:s3:::migrations/*"
|
||||
effect: "Allow"
|
||||
actions:
|
||||
- "s3:*"
|
||||
- name: "nextcloud-bucket-policy"
|
||||
statements:
|
||||
- resources:
|
||||
- "arn:aws:s3:::nextcloud"
|
||||
effect: "Allow"
|
||||
actions:
|
||||
- "s3:*"
|
||||
- resources:
|
||||
- "arn:aws:s3:::nextcloud/*"
|
||||
effect: "Allow"
|
||||
actions:
|
||||
- "s3:*"
|
||||
- name: "openproject-bucket-policy"
|
||||
statements:
|
||||
- resources:
|
||||
@@ -123,19 +150,19 @@ provisioning:
|
||||
effect: "Allow"
|
||||
actions:
|
||||
- "s3:*"
|
||||
- name: "nextcloud-bucket-policy"
|
||||
statements:
|
||||
- resources:
|
||||
- "arn:aws:s3:::nextcloud"
|
||||
effect: "Allow"
|
||||
actions:
|
||||
- "s3:*"
|
||||
- resources:
|
||||
- "arn:aws:s3:::nextcloud/*"
|
||||
effect: "Allow"
|
||||
actions:
|
||||
- "s3:*"
|
||||
users:
|
||||
- username: {{ .Values.objectstores.migrations.username | quote }}
|
||||
password: {{ .Values.secrets.minio.migrationsUser | quote }}
|
||||
disabled: false
|
||||
policies:
|
||||
- "migrations-bucket-policy"
|
||||
setPolicies: true
|
||||
- username: {{ .Values.objectstores.nextcloud.username | quote }}
|
||||
password: {{ .Values.secrets.minio.nextcloudUser | quote }}
|
||||
disabled: false
|
||||
policies:
|
||||
- "nextcloud-bucket-policy"
|
||||
setPolicies: true
|
||||
- username: {{ .Values.objectstores.openproject.username | quote }}
|
||||
password: {{ .Values.secrets.minio.openprojectUser | quote }}
|
||||
disabled: false
|
||||
@@ -148,12 +175,6 @@ provisioning:
|
||||
policies:
|
||||
- "ums-bucket-policy"
|
||||
setPolicies: true
|
||||
- username: {{ .Values.objectstores.nextcloud.username | quote }}
|
||||
password: {{ .Values.secrets.minio.nextcloudUser | quote }}
|
||||
disabled: false
|
||||
policies:
|
||||
- "nextcloud-bucket-policy"
|
||||
setPolicies: true
|
||||
resources:
|
||||
{{ .Values.resources.minio | toYaml | nindent 4 }}
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -60,14 +60,19 @@ customConfigs:
|
||||
xwiki.authentication.ldap.base_DN: "dc=swp-ldap,dc=internal"
|
||||
## Allow short update cycles of the LDAP group cache
|
||||
xwiki.authentication.ldap.groupcache_expiration: 300
|
||||
## Mapping for XWiki attributes to the respective LDAP attributes
|
||||
xwiki.authentication.ldap.fields_mapping: "last_name=sn,first_name=givenName,email=mailPrimaryAddress"
|
||||
|
||||
xwiki.properties:
|
||||
wikiInitializer.initialRequest.xwiki.url: "https://{{ .Values.global.hosts.xwiki }}.{{ .Values.global.domain }}/distribution/"
|
||||
wikiInitializer.initialRequest.xwiki.contextPath: "/"
|
||||
wikiInitializer.initialRequest.xwiki.remoteAddress: "{{ .Values.global.hosts.xwiki }}.{{ .Values.global.domain }}"
|
||||
oidc.clientid: "opendesk-xwiki"
|
||||
oidc.endpoint.token.auth_method: "client_secret_basic"
|
||||
oidc.endpoint.userinfo.method: "GET"
|
||||
oidc.logoutMechanism: "rpInitiated"
|
||||
oidc.provider: "https://{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}/realms/opendesk"
|
||||
oidc.scope: "openid,profile,email,address,opendesk"
|
||||
oidc.scope: "openid,opendesk-xwiki-scope"
|
||||
oidc.secret: {{ .Values.secrets.keycloak.clientSecret.xwiki | quote }}
|
||||
oidc.skipped: false
|
||||
oidc.user.nameFormater: "${oidc.user.opendesk_username._clean._lowerCase}"
|
||||
@@ -81,6 +86,8 @@ customConfigs:
|
||||
workplaceServices.navigationEndpoint: "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}/univention/portal/navigation.json"
|
||||
workplaceServices.base: "https://{{ .Values.global.hosts.univentionManagementStack }}.{{ .Values.global.domain }}"
|
||||
workplaceServices.portalSecret: {{ .Values.secrets.centralnavigation.apiKey | quote }}
|
||||
openoffice.serverType: "0"
|
||||
notifications.emails.live.graceTime: "5"
|
||||
|
||||
ingress:
|
||||
enabled: {{ .Values.ingress.enabled }}
|
||||
@@ -126,8 +133,11 @@ properties:
|
||||
"attachment:xwiki:XWiki.DefaultSkin@icons.xwiki.favicon.svg": "data:image/svg+xml;base64,{{ .Values.theme.imagery.faviconSvg | b64enc }}"
|
||||
"attachment:xwiki:XWiki.DefaultSkin@icons.xwiki.favicon16.png": "data:image/png;base64,{{ .Values.theme.imagery.favicon16PngB64 }}"
|
||||
"attachment:xwiki:XWiki.DefaultSkin@icons.xwiki.favicon144.png": "data:image/png;base64,{{ .Values.theme.imagery.favicon144PngB64 }}"
|
||||
"property:xwiki:XWiki.XWikiServerXwiki^XWiki.XWikiServerClass.secure": 1
|
||||
"property:xwiki:XWiki.XWikiServerXwiki^XWiki.XWikiServerClass.server": "{{ .Values.global.hosts.xwiki }}.{{ .Values.global.domain }}"
|
||||
"property:xwiki:XWiki.XWikiServerXwiki^XWiki.XWikiServerClass.port": 443
|
||||
## SMTP settings
|
||||
"property:xwiki:Mail.MailConfig^Mail.SendMailConfigClass.from": "{{ .Values.localpartNoReply }}@{{ .Values.global.hosts.xwiki }}.{{ .Values.global.domain }}"
|
||||
"property:xwiki:Mail.MailConfig^Mail.SendMailConfigClass.from": "{{ .Values.smtp.localpartNoReply }}@{{ .Values.global.hosts.xwiki }}.{{ .Values.global.domain }}"
|
||||
"property:xwiki:Mail.MailConfig^Mail.SendMailConfigClass.host": {{ .Values.smtp.host | quote }}
|
||||
"property:xwiki:Mail.MailConfig^Mail.SendMailConfigClass.port": {{ .Values.smtp.port | quote }}
|
||||
"property:xwiki:Mail.MailConfig^Mail.SendMailConfigClass.username": {{ .Values.smtp.username | quote }}
|
||||
@@ -157,7 +167,7 @@ properties:
|
||||
"property:xwiki:XWiki.AuthService.Configuration^XWiki.AuthService.ConfigurationClass.authService": "oidc"
|
||||
## Fields to search in when importing users from the administration UI (not completely in scope for now)
|
||||
"property:xwiki:LDAPUserImport.WebHome^LDAPUserImport.LDAPUserImportConfigClass.ldapUserAttributes":
|
||||
"sn,givenname,uid"
|
||||
"sn,givenname,uid,mailPrimaryAddress"
|
||||
## Restrict user import in the UI to global administrators
|
||||
"property:xwiki:LDAPUserImport.WebHome^LDAPUserImport.LDAPUserImportConfigClass.usersAllowedToImport": "globalAdmin"
|
||||
## Enable group and user synchronization
|
||||
|
||||
@@ -46,7 +46,7 @@ charts:
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/collabora/charts-mirror"
|
||||
name: "collabora-online"
|
||||
version: "1.1.17"
|
||||
version: "1.1.20"
|
||||
verify: true
|
||||
cryptpad:
|
||||
# providerCategory: "Supplier"
|
||||
@@ -192,6 +192,16 @@ charts:
|
||||
name: "memcached"
|
||||
version: "6.7.1"
|
||||
verify: true
|
||||
migrations:
|
||||
# providerCategory: "Platform"
|
||||
# providerResponsible: "openDesk"
|
||||
# upstreamRegistry: "https://registry.opencode.de"
|
||||
# upstreamRepository: "bmi/opendesk/components/platform-development/charts/opendesk-element/opendesk-migrations"
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/platform-development/charts/opendesk-migrations"
|
||||
name: "opendesk-migrations"
|
||||
version: "1.0.1"
|
||||
verify: true
|
||||
minio:
|
||||
# providerCategory: "Community"
|
||||
# providerResponsible: "openDesk"
|
||||
@@ -210,7 +220,7 @@ charts:
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/platform-development/charts/opendesk-nextcloud"
|
||||
name: "opendesk-nextcloud"
|
||||
version: "2.0.0"
|
||||
version: "2.1.0"
|
||||
verify: true
|
||||
nextcloudManagement:
|
||||
# providerCategory: "Platform"
|
||||
@@ -220,7 +230,7 @@ charts:
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/platform-development/charts/opendesk-nextcloud"
|
||||
name: "opendesk-nextcloud-management"
|
||||
version: "2.0.0"
|
||||
version: "2.1.0"
|
||||
verify: true
|
||||
nginx:
|
||||
# providerCategory: "Community"
|
||||
@@ -232,6 +242,18 @@ charts:
|
||||
name: "nginx"
|
||||
version: "15.9.3"
|
||||
verify: true
|
||||
nubus:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/charts/nubus"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "19", "3"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/charts-mirror"
|
||||
name: "nubus"
|
||||
version: "0.25.2"
|
||||
verify: true
|
||||
opendeskKeycloakBootstrap:
|
||||
# providerCategory: "Platform"
|
||||
# providerResponsible: "openDesk"
|
||||
@@ -240,7 +262,7 @@ charts:
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/platform-development/charts/opendesk-keycloak-bootstrap"
|
||||
name: "opendesk-keycloak-bootstrap"
|
||||
version: "1.1.0"
|
||||
version: "2.1.0"
|
||||
verify: true
|
||||
openproject:
|
||||
# providerCategory: "Supplier"
|
||||
@@ -252,7 +274,7 @@ charts:
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/openproject/charts-mirror"
|
||||
name: "openproject"
|
||||
version: "5.1.4"
|
||||
version: "5.3.0"
|
||||
verify: true
|
||||
openprojectBootstrap:
|
||||
# providerCategory: "Platform"
|
||||
@@ -294,7 +316,7 @@ charts:
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/platform-development/charts/opendesk-otterize"
|
||||
name: "opendesk-otterize"
|
||||
version: "2.0.1"
|
||||
version: "2.1.0"
|
||||
verify: true
|
||||
oxConnector:
|
||||
# providerCategory: "Supplier"
|
||||
@@ -368,30 +390,6 @@ charts:
|
||||
name: "opendesk-synapse-web"
|
||||
version: "3.2.0"
|
||||
verify: true
|
||||
ums:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/charts/ums"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "12", "0"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/charts-mirror"
|
||||
name: "ums"
|
||||
version: "0.16.0"
|
||||
verify: true
|
||||
umsKeycloakBootstrap:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/charts/keycloak-bootstrap"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "1", "0"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/charts-mirror"
|
||||
name: "keycloak-bootstrap"
|
||||
version: "0.1.0"
|
||||
verify: true
|
||||
xwiki:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "XWiki"
|
||||
@@ -402,6 +400,6 @@ charts:
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/xwiki/charts-mirror"
|
||||
name: "xwiki"
|
||||
version: "1.3.0"
|
||||
version: "1.3.1"
|
||||
verify: false
|
||||
...
|
||||
|
||||
@@ -1,16 +1,16 @@
|
||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
---
|
||||
cleanup:
|
||||
# Keep Pods/Job logs after successful run.
|
||||
deletePodsOnSuccess: true
|
||||
# When deletePodsOnSuccess is enabled, the pod will be deleted after configured seconds.
|
||||
deletePodsOnSuccessTimeout: 60
|
||||
# Keep persistence on deletion of this release.
|
||||
keepPVCOnDelete: false
|
||||
# Keep additional resources, like certificates on deletion of this release.
|
||||
keepRessourceOnDelete: true
|
||||
debug:
|
||||
cleanup:
|
||||
# Keep Pods/Job logs after successful run.
|
||||
deletePodsOnSuccess: true
|
||||
# When deletePodsOnSuccess is enabled, the pod will be deleted after configured seconds.
|
||||
deletePodsOnSuccessTimeout: 60
|
||||
# Keep persistence on deletion of this release.
|
||||
keepPVCOnDelete: false
|
||||
# Keep additional resources, like certificates on deletion of this release.
|
||||
keepRessourceOnDelete: true
|
||||
# should activate debug output in all components and even allow e.g. successfully executed jobs
|
||||
# to stay available. This is going to be implemented on a case by case basis when we actually
|
||||
# need debugging in a component.
|
||||
|
||||
9
helmfile/environments/default/enterprise.yaml
Normal file
9
helmfile/environments/default/enterprise.yaml
Normal file
@@ -0,0 +1,9 @@
|
||||
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
# The variables set in this file are required to upgrade components to their "Enterprise" product variant.
|
||||
---
|
||||
enterprise:
|
||||
openproject:
|
||||
# Enterprise token must match the deployment's OpenProject host name.
|
||||
token: ""
|
||||
...
|
||||
@@ -1,26 +1,49 @@
|
||||
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
---
|
||||
authentication:
|
||||
twoFactor:
|
||||
# Define a list of groups to enable 2FA for.
|
||||
# Note: Removing a group from the list will not disable 2FA for the removed group.
|
||||
groups:
|
||||
- "Domain Admins"
|
||||
functional:
|
||||
admin:
|
||||
portal:
|
||||
deploymentInformation:
|
||||
# Disable to not provide and update openDesk release version and deployment timestamp for admins in the portal.
|
||||
enabled: true
|
||||
|
||||
externalServices:
|
||||
nubus:
|
||||
udmRestApi:
|
||||
# Enable to make the UDM REST API from the Nubus stack externally available.
|
||||
enabled: false
|
||||
matrix:
|
||||
federation:
|
||||
# Disable to not support Matrix federation with your installation.
|
||||
enabled: true
|
||||
authentication:
|
||||
twoFactor:
|
||||
# Define a list of groups to enable 2FA for.
|
||||
# Note: Removing a group from the list will not disable 2FA for the removed group.
|
||||
groups:
|
||||
- "Domain Admins"
|
||||
oidc:
|
||||
# Define additional/custom OIDC clients to be created in the 'opendesk' realm of Keycloak.
|
||||
clients: ~
|
||||
# Define additional/custom OIDC client scopes to be created in the 'opendesk' realm of Keycloak.
|
||||
clientScopes: ~
|
||||
|
||||
externalServices:
|
||||
nubus:
|
||||
udmRestApi:
|
||||
# Enable to make the UDM REST API from the Nubus stack externally available.
|
||||
enabled: false
|
||||
matrix:
|
||||
federation:
|
||||
# Disable to not support Matrix federation with your installation.
|
||||
enabled: true
|
||||
|
||||
filestore:
|
||||
quota:
|
||||
# Set the default quota for all users in GB
|
||||
default: 1
|
||||
# Nextcloud specific configuration
|
||||
nextcloud:
|
||||
retentionObligation:
|
||||
# yamllint disable rule:line-length
|
||||
# Set Nextcloud's `trashbin_retention_obligation`
|
||||
# Ref.: https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/config_sample_php_parameters.html#trashbin-retention-obligation
|
||||
trashbin: "auto"
|
||||
# Set Nextcloud's `versions_retention_obligation`
|
||||
# Ref.: https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/config_sample_php_parameters.html#versions-retention-obligation
|
||||
versions: "auto"
|
||||
# yamllint enable rule:line-length
|
||||
|
||||
admin:
|
||||
portal:
|
||||
deploymentInformation:
|
||||
# Disable to not provide and update openDesk release version and deployment timestamp for admins in the portal.
|
||||
enabled: true
|
||||
...
|
||||
|
||||
@@ -23,4 +23,39 @@ global:
|
||||
#
|
||||
helmRegistry: {{ env "PRIVATE_HELM_REGISTRY_URL" | quote }}
|
||||
imageRegistry: {{ env "PRIVATE_IMAGE_REGISTRY_URL" | quote }}
|
||||
|
||||
## Define ingress/virtualservice host.
|
||||
#
|
||||
hosts:
|
||||
collabora: "collabora"
|
||||
cryptpad: "cryptpad"
|
||||
element: "chat"
|
||||
intercomService: "ics"
|
||||
jitsi: "meet"
|
||||
keycloak: "id"
|
||||
matrixNeoBoardWidget: "matrix-neoboard-widget"
|
||||
matrixNeoChoiceWidget: "matrix-neochoice-widget"
|
||||
matrixNeoDateFixBot: "matrix-neodatefix-bot"
|
||||
matrixNeoDateFixWidget: "matrix-neodatefix-widget"
|
||||
minioApi: "minio"
|
||||
minioConsole: "minio-console"
|
||||
nextcloud: "fs"
|
||||
openproject: "project"
|
||||
openxchange: "webmail"
|
||||
synapse: "matrix"
|
||||
synapseFederation: "matrix-federation"
|
||||
univentionManagementStack: "portal"
|
||||
whiteboard: "whiteboard"
|
||||
xwiki: "wiki"
|
||||
|
||||
## Credentials to fetch images from private registry
|
||||
## Ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
|
||||
#
|
||||
imagePullSecrets:
|
||||
- "external-registry"
|
||||
|
||||
## Define the policy to pull container images.
|
||||
## Ref: https://kubernetes.io/docs/concepts/containers/images/#image-pull-policy
|
||||
#
|
||||
imagePullPolicy: "IfNotPresent"
|
||||
...
|
||||
|
||||
@@ -1,42 +0,0 @@
|
||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
---
|
||||
## The global properties are used to configure multiple charts at once.
|
||||
#
|
||||
global:
|
||||
## Define ingress/virtualservice host.
|
||||
#
|
||||
hosts:
|
||||
collabora: "collabora"
|
||||
cryptpad: "cryptpad"
|
||||
element: "chat"
|
||||
intercomService: "ics"
|
||||
jitsi: "meet"
|
||||
keycloak: "id"
|
||||
matrixNeoBoardWidget: "matrix-neoboard-widget"
|
||||
matrixNeoChoiceWidget: "matrix-neochoice-widget"
|
||||
matrixNeoDateFixBot: "matrix-neodatefix-bot"
|
||||
matrixNeoDateFixWidget: "matrix-neodatefix-widget"
|
||||
minioApi: "minio"
|
||||
minioConsole: "minio-console"
|
||||
nextcloud: "fs"
|
||||
openproject: "project"
|
||||
openxchange: "webmail"
|
||||
synapse: "matrix"
|
||||
synapseFederation: "matrix-federation"
|
||||
univentionManagementStack: "portal"
|
||||
whiteboard: "whiteboard"
|
||||
xwiki: "wiki"
|
||||
|
||||
## Credentials to fetch images from private registry
|
||||
## Ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
|
||||
#
|
||||
imagePullSecrets:
|
||||
- "external-registry"
|
||||
|
||||
## Define the policy to pull container images.
|
||||
## Ref: https://kubernetes.io/docs/concepts/containers/images/#image-pull-policy
|
||||
#
|
||||
imagePullPolicy: "IfNotPresent"
|
||||
...
|
||||
@@ -20,7 +20,7 @@ images:
|
||||
# upstreamRepository: "bmi/opendesk/components/supplier/collabora/images/collabora-online-for-opendesk"
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/collabora/images/collabora-online-for-opendesk"
|
||||
tag: "24.04.4.2.1@sha256:268b586d48848958f9a0329f1ce6849f842d1ab2413a3c45ddf2f2dd249efc9a"
|
||||
tag: "24.04.5.2.1@sha256:583f3764661fdce99c5a97019b732db1bed9f9b333d70640ac99a6953c493666"
|
||||
cryptpad:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "XWiki"
|
||||
@@ -198,6 +198,14 @@ images:
|
||||
registry: "registry-1.docker.io"
|
||||
repository: "bitnami/memcached"
|
||||
tag: "1.6.21-debian-11-r107@sha256:247ec29efd6030960047a623aef025021154662edf6b6d6e88c97936f164d99d"
|
||||
migrations:
|
||||
# providerCategory: "Platform"
|
||||
# providerResponsible: "openDesk"
|
||||
# upstreamRegistry: "https://registry.opencode.de"
|
||||
# upstreamRepository: "bmi/opendesk/components/platform-development/images/opendesk-migrations"
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/platform-development/images/opendesk-migrations"
|
||||
tag: "1.0.2@sha256:fbe21b4e2a276d2c5d052c1bb52158debfcc146188e654661001d4ff45b1b453"
|
||||
milter:
|
||||
# providerCategory: "Community"
|
||||
# providerResponsible: "openDesk"
|
||||
@@ -221,7 +229,7 @@ images:
|
||||
# upstreamRepository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud-apache2"
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud-apache2"
|
||||
tag: "1.1.21@sha256:ec63d564eb11d7ed213a5ef8719f2b3380e552f1ffb1251470b84c0c8937b7b8"
|
||||
tag: "1.1.22@sha256:8bfa92fcfdcb2fee1b3560a623ffb319fcfcc7e5fbcc20d631df747427e88f84"
|
||||
nextcloudExporter:
|
||||
# providerCategory: "Platform"
|
||||
# providerResponsible: "openDesk"
|
||||
@@ -237,7 +245,7 @@ images:
|
||||
# upstreamRepository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud-management"
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud-management"
|
||||
tag: "1.3.12@sha256:54bb5a90ebe49b33b053e8a7df2fa8d8cb992b17f68a04d08357961c3aded0b0"
|
||||
tag: "1.4.2@sha256:a4c12a624c76b44c8305a768ced33e2b9af9497ff9cfa639045df846d89fbda4"
|
||||
nextcloudPHP:
|
||||
# providerCategory: "Platform"
|
||||
# providerResponsible: "openDesk"
|
||||
@@ -245,7 +253,327 @@ images:
|
||||
# upstreamRepository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud-php"
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud-php"
|
||||
tag: "1.8.11@sha256:85b3bbf027c9e6a2ccf411b8e2b3752f6a58a3a14f00fb92ecefd9e7ca0c6954"
|
||||
tag: "1.10.1@sha256:8eb5ac95eaea69e0928e48aa5a121cbf10f359be4679040da8464810e9d799ff"
|
||||
nubusDataLoader:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/data-loader"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "41", "5"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/data-loader"
|
||||
tag: "0.57.0@sha256:7aa6bce55bb03caca55e51c6972e933d4e8dee0a0c4ec2473bba4a104da42c11"
|
||||
nubusGuardianAuthorizationApi:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://docker.software-univention.de"
|
||||
# upstreamRepository: "guardian-authorization-api-authorization-api"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["1", "0", "0"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/guardian-authorization-api-authorization-api"
|
||||
tag: "2.0.0@sha256:5f194f9385aea5a279e25a57352f7b88a6cc4fa90b3bf04c2c97b9ff2bad70a5"
|
||||
nubusGuardianManagementApi:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://docker.software-univention.de"
|
||||
# upstreamRepository: "guardian-management-api-management-api"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["1", "0", "0"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/guardian-management-api-management-api"
|
||||
tag: "2.0.0@sha256:61a1ab84efebe2a87d358e8624f8b39073a6071683e7cd77b740a97d464753a2"
|
||||
nubusGuardianManagementUi:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://docker.software-univention.de"
|
||||
# upstreamRepository: "guardian-management-ui-management-ui"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["1", "0", "0"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/guardian-management-ui-management-ui"
|
||||
tag: "2.0.0@sha256:57e2503a4772f0ff656e792a98fadef4d41c248218e6c368f76ce82a892478cf"
|
||||
nubusGuardianProvisioning:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/guardian-init"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "3", "0"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/guardian-init"
|
||||
tag: "0.9.1@sha256:6006fb1c2779b906e7725df524f2587b2a610cc442793bf8f16b2b4b8c0494fb"
|
||||
nubusKeycloak:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://docker.software-univention.de"
|
||||
# upstreamRepository: "keycloak-keycloak"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+).+$'
|
||||
# upstreamMirrorStartFrom: ["22", "0", "3"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/keycloak-keycloak"
|
||||
tag: "24.0.3-ucs1@sha256:cc66a1730abdd5abe88ac5cf045b6558f289bf1ae8d077ee884a42d785742f8b"
|
||||
nubusKeycloakBootstrap:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/keycloak-bootstrap"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "1", "0"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/keycloak-bootstrap"
|
||||
tag: "0.1.0@sha256:351097e9e7b469f2fc149fe612ec6ad515d5e6b081d7e2785bd926a1d77209d2"
|
||||
nubusKeycloakExtensionHandler:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/keycloak-handler"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "0", "3"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/keycloak-handler"
|
||||
tag: "0.6.1@sha256:d68850e93c2499b373d88a24ff358daa0c6983e5ff4c92be692898ca15b356c7"
|
||||
nubusKeycloakExtensionProxy:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/keycloak-proxy"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "0", "3"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/keycloak-proxy"
|
||||
tag: "0.6.1@sha256:265fc4bb36c37430bc6a694a2f8c87ea4b80709b6ca770d5bc8c6013d9954cc5"
|
||||
nubusLdapNotifier:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/ldap-notifier"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "8", "2"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/ldap-notifier"
|
||||
tag: "0.15.2@sha256:1f2a9d2136c8e87a4c4a59a94a2235d00e969c98bd7bfe75707a299918f271b5"
|
||||
nubusLdapServer:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/ldap-server"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "8", "2"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/ldap-server"
|
||||
tag: "0.17.1@sha256:5b7b629b9655c7bb2857013f3399cefe5bdd3963d568bbf77d6d488c005e3b3b"
|
||||
nubusLdapServerDhInitContainer:
|
||||
# providerCategory: 'Community'
|
||||
# providerResponsible: 'Univention'
|
||||
# upstreamRegistry: 'registry-1.docker.io'
|
||||
# upstreamRepository: 'natsio/nats-box'
|
||||
registry: "registry-1.docker.io"
|
||||
repository: "natsio/nats-box"
|
||||
tag: "0.14.2@sha256:c9b8ebaabb2ca4c227feb4f6b856dc72d4775ac3d71f80d2c65aa82303079011"
|
||||
nubusNats:
|
||||
# providerCategory: 'Community'
|
||||
# providerResponsible: 'Univention'
|
||||
# upstreamRegistry: 'registry-1.docker.io'
|
||||
# upstreamRepository: 'library/nats'
|
||||
registry: "registry-1.docker.io"
|
||||
repository: "library/nats"
|
||||
tag: "2.10.10@sha256:fa26beda8a3187ccefa47afcfe9ea6d0e2f40a57c8f64d70bd63c792d7973938"
|
||||
nubusNatsBox:
|
||||
# providerCategory: 'Community'
|
||||
# providerResponsible: 'Univention'
|
||||
# upstreamRegistry: 'registry-1.docker.io'
|
||||
# upstreamRepository: 'natsio/nats-box'
|
||||
registry: "registry-1.docker.io"
|
||||
repository: "natsio/nats-box"
|
||||
tag: "0.14.2@sha256:c9b8ebaabb2ca4c227feb4f6b856dc72d4775ac3d71f80d2c65aa82303079011"
|
||||
nubusNatsReloader:
|
||||
# providerCategory: 'Community'
|
||||
# providerResponsible: 'Univention'
|
||||
# upstreamRegistry: 'registry-1.docker.io'
|
||||
# upstreamRepository: 'natsio/nats-server-config-reloader'
|
||||
registry: "registry-1.docker.io"
|
||||
repository: "natsio/nats-server-config-reloader"
|
||||
tag: "0.14.1@sha256:77dd4c60001ffbf442c6b25592e73b4fca06ea9406c677607192788d80453783"
|
||||
nubusNotificationsApi:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/notifications-api"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "9", "4"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/notifications-api"
|
||||
tag: "0.27.0@sha256:d99173199f20c701b29b8a3c1a46465085a873b37f413882e7d2e106e258c35a"
|
||||
nubusOpenPolicyAgent:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://docker.software-univention.de"
|
||||
# upstreamRepository: "guardian-authorization-api-opa"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["1", "0", "0"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/guardian-authorization-api-opa"
|
||||
tag: "2.0.0@sha256:56a92a08da5addb951a2b2df09974889295ddde8526e93ad40dd973de1052ad4"
|
||||
nubusPortalConsumer:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/portal-consumer"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "27", "0"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/portal-consumer"
|
||||
tag: "0.27.0@sha256:e86bf827d1e93b61473a0730492f48f8dbf0d056b79dd9ecde7af1612696b144"
|
||||
nubusPortalFrontend:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/portal-frontend"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "9", "4"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/portal-frontend"
|
||||
tag: "0.27.0@sha256:9d469e9463b216dfcde2bdf3cac4a3602291cab97e01de690e97e7deb2469ecf"
|
||||
nubusPortalListener:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/portal-listener"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "9", "4"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/portal-listener"
|
||||
tag: "0.24.2@sha256:98306b30c99e190ece6633921d9d54297634b0e4ca58ceaf0794c7050f0b8470"
|
||||
nubusPortalServer:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/portal-server"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "9", "4"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/portal-server"
|
||||
tag: "0.27.0@sha256:e1ad659feb4a1948d07e6e7d99b94b6bdbd4525d96f4cf9a010b75189f0082fc"
|
||||
nubusProvisioningDispatcher:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/provisioning-dispatcher"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "14", "0"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-dispatcher"
|
||||
tag: "0.28.3@sha256:79c81b0143e78c7cabb1efd63d47530eac686fba11db57c173abd8ebdd396778"
|
||||
nubusProvisioningEventsAndConsumerApi:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/provisioning-events-and-consumer-api"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "14", "0"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-events-and-consumer-api"
|
||||
tag: "0.28.3@sha256:5b0a2c52d715fde613ecfedb3a3f5e47b9eb73cdcf4c373a9cc58248a919f2bf"
|
||||
nubusProvisioningPrefill:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/provisioning-prefill"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "14", "0"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-prefill"
|
||||
tag: "0.28.3@sha256:a98bce46144a6ff943b0432b66277393b7b476b8969b221b9069c708d3380f5d"
|
||||
nubusProvisioningUdmListener:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/provisioning-udm-listener"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "14", "0"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-udm-listener"
|
||||
tag: "0.28.3@sha256:b9c452e55e6716f93309bef0af7d401e218cd1e6ea9ad3d2819fb10dd631aecd"
|
||||
nubusProvisioningUdmTransformer:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/provisioning-udm-transformer"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "14", "0"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-udm-transformer"
|
||||
tag: "0.29.0@sha256:68e27eb9560d2729e9065da3573f28073c5e53fedabac4d19562c4b8c6c1d1f3"
|
||||
nubusSelfserviceInvitation:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/selfservice-invitation"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "3", "2"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/selfservice-invitation"
|
||||
tag: "0.6.2@sha256:28b111488e13deb565475c69bc6493b4bafbc96f50109cc77e23f8055b9f4e34"
|
||||
nubusSelfserviceListener:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/selfservice-listener"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "3", "2"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/selfservice-listener"
|
||||
tag: "0.4.0@sha256:0bc0235fd64a19a183f112da73109b54712c2d70fe7fa77c6405beefb7167588"
|
||||
nubusStackGateway:
|
||||
# providerCategory: "Community"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://registry-1.docker.io"
|
||||
# upstreamRepository: "bitnami/nginx"
|
||||
registry: "registry-1.docker.io"
|
||||
repository: "bitnami/nginx"
|
||||
tag: "1.25.4@sha256:dd352b597f4c38ae24abec411710f4249fb5c793293c7ed04737db6b41d32d24"
|
||||
nubusUdmRestApi:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/udm-rest-api"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "9", "3"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/udm-rest-api"
|
||||
tag: "0.19.0@sha256:41482c459655afa36eaf9ec21354ff8417e4da5e3a787ec2f865730952f6bb61"
|
||||
nubusUmcGateway:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/umc-gateway"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "7", "3"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/umc-gateway"
|
||||
tag: "0.22.2@sha256:fe4d2c148946da6f5e92201f398ebd0d5a72795c50648993bd220ea1e228658d"
|
||||
nubusUmcServer:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/umc-server"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "7", "3"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/umc-server"
|
||||
tag: "0.22.2@sha256:474497f561c3532b37b7d5e77ec36bd1fefc4fbeaab9747b481533b0da086586"
|
||||
nubusWaitForDependency:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/wait-for-dependency"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "9", "4"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/wait-for-dependency"
|
||||
tag: "0.25.0@sha256:71a4d66fd67db6f92212b1936862b2b0d5a678d412213d74452a9195c2fe67f7"
|
||||
opendeskKeycloakBootstrap:
|
||||
# providerCategory: "Platform"
|
||||
# providerResponsible: "openDesk"
|
||||
@@ -253,7 +581,7 @@ images:
|
||||
# upstreamRepository: "bmi/opendesk/components/platform-development/images/opendesk-keycloak-bootstrap"
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/platform-development/images/opendesk-keycloak-bootstrap"
|
||||
tag: "1.0.5@sha256:76ccd9a74ae2c2dabb6beaa0192c15b9c06763abbd632cd0f8db68e5d8d5883c"
|
||||
tag: "1.2.0@sha256:3b364c60bedb9ae001c39cbf84e4b4b326b9559078f21bfc993cf0e601196e6f"
|
||||
openproject:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "OpenProject"
|
||||
@@ -479,298 +807,6 @@ images:
|
||||
registry: "registry-1.docker.io"
|
||||
repository: "rapidfort/haproxy-official"
|
||||
tag: "2.6.15-bullseye@sha256:47b6ca4074347788cb414fbf3db35d0c51e9e47af33be46457f95c750540887c"
|
||||
umsDataLoader:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/data-loader"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "41", "5"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/data-loader"
|
||||
tag: "0.45.2@sha256:6e2e054903f361eea5cd54ae6dd3da94380d4a6a11f2628983e2acdbc66d605e"
|
||||
umsGuardianAuthorizationApi:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://docker.software-univention.de"
|
||||
# upstreamRepository: "guardian-authorization-api-authorization-api"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["1", "0", "0"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/guardian-authorization-api-authorization-api"
|
||||
tag: "2.0.0@sha256:5f194f9385aea5a279e25a57352f7b88a6cc4fa90b3bf04c2c97b9ff2bad70a5"
|
||||
umsGuardianManagementApi:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://docker.software-univention.de"
|
||||
# upstreamRepository: "guardian-management-api-management-api"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["1", "0", "0"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/guardian-management-api-management-api"
|
||||
tag: "2.0.0@sha256:61a1ab84efebe2a87d358e8624f8b39073a6071683e7cd77b740a97d464753a2"
|
||||
umsGuardianManagementUi:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://docker.software-univention.de"
|
||||
# upstreamRepository: "guardian-management-ui-management-ui"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["1", "0", "0"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/guardian-management-ui-management-ui"
|
||||
tag: "2.0.0@sha256:57e2503a4772f0ff656e792a98fadef4d41c248218e6c368f76ce82a892478cf"
|
||||
umsGuardianProvisioning:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/guardian-init"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "3", "0"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/guardian-init"
|
||||
tag: "0.4.0@sha256:390e20ad73a91ae2ecc33d91d1f21872a46e6af4d4d09095d1ce18a6d4a3635e"
|
||||
umsKeycloak:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://docker.software-univention.de"
|
||||
# upstreamRepository: "keycloak-keycloak"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+).+$'
|
||||
# upstreamMirrorStartFrom: ["22", "0", "3"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/keycloak-keycloak"
|
||||
tag: "24.0.3-ucs1@sha256:cc66a1730abdd5abe88ac5cf045b6558f289bf1ae8d077ee884a42d785742f8b"
|
||||
umsKeycloakBootstrap:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/keycloak-bootstrap"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "1", "0"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/keycloak-bootstrap"
|
||||
tag: "0.1.0@sha256:351097e9e7b469f2fc149fe612ec6ad515d5e6b081d7e2785bd926a1d77209d2"
|
||||
umsKeycloakExtensionHandler:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/keycloak-handler"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "0", "3"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/keycloak-handler"
|
||||
tag: "0.4.0@sha256:7c2728d6fce0fa6e6cc2a3c196294fcb4fcce0dd246b95ad96bd96325776a004"
|
||||
umsKeycloakExtensionProxy:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/keycloak-proxy"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "0", "3"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/keycloak-proxy"
|
||||
tag: "0.4.0@sha256:d7369d8b9cb177fc19b08452266bf7440b683fd0a15c01baeb5c131db20081bf"
|
||||
umsLdapNotifier:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/ldap-notifier"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "8", "2"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/ldap-notifier"
|
||||
tag: "0.10.3@sha256:beb4577e7fdf1e18d3769e62296f210c0651460346dc2325e6cc29f4c671fa71"
|
||||
umsLdapServer:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/ldap-server"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "8", "2"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/ldap-server"
|
||||
tag: "0.10.3@sha256:7742eca27bf1134cf92e6e3571bc2784e2f21a76664fdcab6ae213051db26c05"
|
||||
umsNats:
|
||||
# providerCategory: 'Community'
|
||||
# providerResponsible: 'Univention'
|
||||
# upstreamRegistry: 'registry-1.docker.io'
|
||||
# upstreamRepository: 'library/nats'
|
||||
registry: "registry-1.docker.io"
|
||||
repository: "library/nats"
|
||||
tag: "2.10.10@sha256:fa26beda8a3187ccefa47afcfe9ea6d0e2f40a57c8f64d70bd63c792d7973938"
|
||||
umsNatsBox:
|
||||
# providerCategory: 'Community'
|
||||
# providerResponsible: 'Univention'
|
||||
# upstreamRegistry: 'registry-1.docker.io'
|
||||
# upstreamRepository: 'natsio/nats-box'
|
||||
registry: "registry-1.docker.io"
|
||||
repository: "natsio/nats-box"
|
||||
tag: "0.14.2@sha256:c9b8ebaabb2ca4c227feb4f6b856dc72d4775ac3d71f80d2c65aa82303079011"
|
||||
umsNatsReloader:
|
||||
# providerCategory: 'Community'
|
||||
# providerResponsible: 'Univention'
|
||||
# upstreamRegistry: 'registry-1.docker.io'
|
||||
# upstreamRepository: 'natsio/nats-server-config-reloader'
|
||||
registry: "registry-1.docker.io"
|
||||
repository: "natsio/nats-server-config-reloader"
|
||||
tag: "0.14.1@sha256:77dd4c60001ffbf442c6b25592e73b4fca06ea9406c677607192788d80453783"
|
||||
umsNotificationsApi:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/notifications-api"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "9", "4"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/notifications-api"
|
||||
tag: "0.20.3@sha256:1e32854d6d4413725870fde26a904da83282b3debea82b386c5753223ecc6a59"
|
||||
umsOpenPolicyAgent:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://docker.software-univention.de"
|
||||
# upstreamRepository: "guardian-authorization-api-opa"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["1", "0", "0"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/guardian-authorization-api-opa"
|
||||
tag: "2.0.0@sha256:56a92a08da5addb951a2b2df09974889295ddde8526e93ad40dd973de1052ad4"
|
||||
umsPortalFrontend:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/portal-frontend"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "9", "4"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/portal-frontend"
|
||||
tag: "0.20.3@sha256:4fe6646711efcc07eb4b6e59a57f1d5080cca5f4ec2c960d073e92ecae8be42f"
|
||||
umsPortalListener:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/portal-listener"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "9", "4"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/portal-listener"
|
||||
tag: "0.20.7@sha256:8f158b88e0ceb7a5c79d2ad390f6ce851ce0c5ccb675d08d6b6c37f0b21f6177"
|
||||
umsPortalServer:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/portal-server"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "9", "4"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/portal-server"
|
||||
tag: "0.20.3@sha256:0ec3db74ce9b7c8706d1534b6dcb464eb016a5de94c3b5bfc49215ccb606715c"
|
||||
umsProvisioningDispatcher:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/provisioning-dispatcher"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "14", "0"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-dispatcher"
|
||||
tag: "0.21.3@sha256:29c5f216ab0f8d12c1e77969de6e82046c0d47e1111838fb0a2dcd9950c0175d"
|
||||
umsProvisioningEventsAndConsumerApi:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/provisioning-events-and-consumer-api"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "14", "0"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-events-and-consumer-api"
|
||||
tag: "0.21.3@sha256:4cb498a64dd40c0963ca1ca382213ad5b8a4de5eb57650946d78ac44b359f43f"
|
||||
umsProvisioningPrefill:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/provisioning-prefill"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "14", "0"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-prefill"
|
||||
tag: "0.21.3@sha256:944ff8558d12c59f3490cba68680281c3fa5468fd6fd011fd002befcb9956973"
|
||||
umsProvisioningUdmListener:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/provisioning-udm-listener"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "14", "0"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/provisioning-udm-listener"
|
||||
tag: "0.21.3@sha256:e1cd42558e44bb72ed5c7798cef711db94df7d10d6895c993ca6412df1d25f02"
|
||||
umsSelfserviceInvitation:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/selfservice-invitation"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "3", "2"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/selfservice-invitation"
|
||||
tag: "0.4.0@sha256:bd252758576e1733076c78756f04225ebed73d9c48de22440975ef11dd087caf"
|
||||
umsSelfserviceListener:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/selfservice-listener"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "3", "2"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/selfservice-listener"
|
||||
tag: "0.4.0@sha256:0bc0235fd64a19a183f112da73109b54712c2d70fe7fa77c6405beefb7167588"
|
||||
umsStackGateway:
|
||||
# providerCategory: "Community"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://registry-1.docker.io"
|
||||
# upstreamRepository: "bitnami/nginx"
|
||||
registry: "registry-1.docker.io"
|
||||
repository: "bitnami/nginx"
|
||||
tag: "1.25.4@sha256:dd352b597f4c38ae24abec411710f4249fb5c793293c7ed04737db6b41d32d24"
|
||||
umsUdmRestApi:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/udm-rest-api"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "9", "3"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/udm-rest-api"
|
||||
tag: "0.9.3@sha256:7cf2fec05a4ff8b7085a35a215edbce1eb9456c1ae140af46257e66d5a6cd6f7"
|
||||
umsUmcGateway:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/umc-gateway"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "7", "3"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/umc-gateway"
|
||||
tag: "0.11.6@sha256:5d7c1a9b74409d2d7c42e08ca87b41cda506e43cad49efbc85a4ed6b8e9c6bc8"
|
||||
umsUmcServer:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/umc-server"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "7", "3"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/umc-server"
|
||||
tag: "0.11.8@sha256:38a87524703a1e11fbb3cd3cc9d90d5b719e92329a0e3ea05c50451105d64ac6"
|
||||
umsWaitForDependency:
|
||||
# providerCategory: "Supplier"
|
||||
# providerResponsible: "Univention"
|
||||
# upstreamRegistry: "https://artifacts.software-univention.de"
|
||||
# upstreamRepository: "nubus/images/wait-for-dependency"
|
||||
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
|
||||
# upstreamMirrorStartFrom: ["0", "9", "4"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/univention/images-mirror/wait-for-dependency"
|
||||
tag: "0.20.3@sha256:d1ccba5fe7448c2bda71c8a93f265a42a000e8dc79fd884e7e6ecdf29ad80efc"
|
||||
wellKnown:
|
||||
# providerCategory: "Community"
|
||||
# providerResponsible: "Element"
|
||||
@@ -788,5 +824,5 @@ images:
|
||||
# upstreamMirrorStartFrom: ["0", "12"]
|
||||
registry: "registry.opencode.de"
|
||||
repository: "bmi/opendesk/components/supplier/xwiki/images-mirror/xwiki"
|
||||
tag: "0.17-mariadb-jetty-alpine@sha256:9eb67520774c3022aa4485ce348be477f358263b716e647cacd057da3aca9739"
|
||||
tag: "0.19-mariadb-jetty-alpine@sha256:8590ee815bceb7764df681b9239b4606adc5b3750e4eff2d928b62dcd046a623"
|
||||
...
|
||||
|
||||
@@ -1,25 +1,25 @@
|
||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
---
|
||||
prometheus:
|
||||
serviceMonitors:
|
||||
enabled: false
|
||||
labels:
|
||||
release: "kube-prometheus-stack"
|
||||
podMonitors:
|
||||
enabled: false
|
||||
labels:
|
||||
release: "kube-prometheus-stack"
|
||||
prometheusRules:
|
||||
enabled: false
|
||||
labels:
|
||||
release: "kube-prometheus-stack"
|
||||
monitoring:
|
||||
prometheus:
|
||||
serviceMonitors:
|
||||
enabled: false
|
||||
labels:
|
||||
release: "kube-prometheus-stack"
|
||||
podMonitors:
|
||||
enabled: false
|
||||
labels:
|
||||
release: "kube-prometheus-stack"
|
||||
prometheusRules:
|
||||
enabled: false
|
||||
labels:
|
||||
release: "kube-prometheus-stack"
|
||||
|
||||
|
||||
grafana:
|
||||
dashboards:
|
||||
enabled: false
|
||||
labels:
|
||||
grafana_dashboard: "1"
|
||||
annotations:
|
||||
grafana:
|
||||
dashboards:
|
||||
enabled: false
|
||||
labels:
|
||||
grafana_dashboard: "1"
|
||||
annotations:
|
||||
...
|
||||
|
||||
@@ -1,9 +1,18 @@
|
||||
{{/*
|
||||
SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
*/}}
|
||||
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
---
|
||||
objectstores:
|
||||
migrations:
|
||||
bucket: "migrations"
|
||||
endpoint: ""
|
||||
region: "eu-west-1"
|
||||
secretKey: ""
|
||||
username: "migration_user"
|
||||
storageClass: "STANDARD"
|
||||
useSSL: true
|
||||
pathStyle: true
|
||||
port: 443
|
||||
nextcloud:
|
||||
bucket: "nextcloud"
|
||||
endpoint: ""
|
||||
76
helmfile/environments/default/opendesk_main.gotmpl
Normal file
76
helmfile/environments/default/opendesk_main.gotmpl
Normal file
@@ -0,0 +1,76 @@
|
||||
# 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
|
||||
#
|
||||
# Note: Currently only single namespace deployments are supported.
|
||||
---
|
||||
certificates:
|
||||
enabled: true
|
||||
namespace: {{ env "NAMESPACE" | quote }}
|
||||
clamavDistributed:
|
||||
enabled: false
|
||||
namespace: {{ env "NAMESPACE" | quote }}
|
||||
clamavSimple:
|
||||
enabled: true
|
||||
namespace: {{ env "NAMESPACE" | quote }}
|
||||
collabora:
|
||||
enabled: true
|
||||
namespace: {{ env "NAMESPACE" | quote }}
|
||||
cryptpad:
|
||||
enabled: true
|
||||
namespace: {{ env "NAMESPACE" | quote }}
|
||||
dovecot:
|
||||
enabled: true
|
||||
namespace: {{ env "NAMESPACE" | quote }}
|
||||
element:
|
||||
enabled: true
|
||||
namespace: {{ env "NAMESPACE" | quote }}
|
||||
home:
|
||||
enabled: true
|
||||
namespace: {{ env "NAMESPACE" | quote }}
|
||||
intercom:
|
||||
enabled: true
|
||||
namespace: {{ env "NAMESPACE" | quote }}
|
||||
jitsi:
|
||||
enabled: true
|
||||
namespace: {{ env "NAMESPACE" | quote }}
|
||||
mariadb:
|
||||
enabled: true
|
||||
namespace: {{ env "NAMESPACE" | quote }}
|
||||
memcached:
|
||||
enabled: true
|
||||
namespace: {{ env "NAMESPACE" | quote }}
|
||||
migrations:
|
||||
enabled: true
|
||||
namespace: {{ env "NAMESPACE" | quote }}
|
||||
minio:
|
||||
enabled: true
|
||||
namespace: {{ env "NAMESPACE" | quote }}
|
||||
nextcloud:
|
||||
enabled: true
|
||||
namespace: {{ env "NAMESPACE" | quote }}
|
||||
openproject:
|
||||
enabled: true
|
||||
namespace: {{ env "NAMESPACE" | quote }}
|
||||
oxAppsuite:
|
||||
enabled: true
|
||||
namespace: {{ env "NAMESPACE" | quote }}
|
||||
oxConnector:
|
||||
enabled: true
|
||||
namespace: {{ env "NAMESPACE" | quote }}
|
||||
postfix:
|
||||
enabled: true
|
||||
namespace: {{ env "NAMESPACE" | quote }}
|
||||
postgresql:
|
||||
enabled: true
|
||||
namespace: {{ env "NAMESPACE" | quote }}
|
||||
redis:
|
||||
enabled: true
|
||||
namespace: {{ env "NAMESPACE" | quote }}
|
||||
univentionManagementStack:
|
||||
enabled: true
|
||||
namespace: {{ env "NAMESPACE" | quote }}
|
||||
xwiki:
|
||||
enabled: true
|
||||
namespace: {{ env "NAMESPACE" | quote }}
|
||||
...
|
||||
@@ -69,10 +69,11 @@ resources:
|
||||
requests:
|
||||
cpu: 0.1
|
||||
memory: "384Mi"
|
||||
# The jifico and jvb containers require 3GB memory for the Java process, so we limit it to 3.5Gi overall consumption.
|
||||
jicofo:
|
||||
limits:
|
||||
cpu: 99
|
||||
memory: "512Mi"
|
||||
memory: "3584Mi"
|
||||
requests:
|
||||
cpu: 0.1
|
||||
memory: "256Mi"
|
||||
@@ -90,10 +91,11 @@ resources:
|
||||
requests:
|
||||
cpu: "10m"
|
||||
memory: "48Mi"
|
||||
# The jifico and jvb containers require 3GB memory for the Java process, so we limit it to 3.5Gi overall consumption.
|
||||
jvb:
|
||||
limits:
|
||||
cpu: 99
|
||||
memory: "768Mi"
|
||||
memory: "3584Mi"
|
||||
requests:
|
||||
cpu: 0.1
|
||||
memory: "384Mi"
|
||||
@@ -216,6 +218,49 @@ resources:
|
||||
requests:
|
||||
cpu: 0.1
|
||||
memory: "512Mi"
|
||||
nubusProvisioning:
|
||||
nats:
|
||||
limits:
|
||||
cpu: 288
|
||||
memory: "1Gi"
|
||||
requests:
|
||||
cpu: 0.1
|
||||
memory: "128Mi"
|
||||
dispatcher:
|
||||
limits:
|
||||
cpu: 1
|
||||
memory: "1Gi"
|
||||
requests:
|
||||
cpu: 0.1
|
||||
memory: "64Mi"
|
||||
registerConsumers:
|
||||
limits:
|
||||
cpu: 1
|
||||
memory: "1Gi"
|
||||
requests:
|
||||
cpu: 0.1
|
||||
memory: "64Mi"
|
||||
udmTransformer:
|
||||
limits:
|
||||
cpu: 1
|
||||
memory: "1Gi"
|
||||
requests:
|
||||
cpu: 0.1
|
||||
memory: "64Mi"
|
||||
prefill:
|
||||
limits:
|
||||
cpu: 1
|
||||
memory: "1Gi"
|
||||
requests:
|
||||
cpu: 0.1
|
||||
memory: "64Mi"
|
||||
api:
|
||||
limits:
|
||||
cpu: 1
|
||||
memory: "1Gi"
|
||||
requests:
|
||||
cpu: 0.1
|
||||
memory: "100Mi"
|
||||
openproject:
|
||||
limits:
|
||||
cpu: 99
|
||||
|
||||
@@ -68,10 +68,10 @@ secrets:
|
||||
nextcloudUser: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "mariadb" "nextcloud_user" | sha1sum | quote }}
|
||||
minio:
|
||||
rootPassword: {{ (derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "minio" "root_password" | sha1sum | quote) }}
|
||||
openprojectUser: {{ (derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "minio" "openproject_user" | sha1sum | quote) }}
|
||||
openxchangeUser: {{ (derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "minio" "openxchange_user" | sha1sum | quote) }}
|
||||
umsUser: {{ (derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "minio" "ums_user" | sha1sum | quote) }}
|
||||
migrationsUser: {{ (derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "minio" "migrations_user" | sha1sum | quote) }}
|
||||
nextcloudUser: {{ (derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "minio" "nextcloud_user" | sha1sum | quote) }}
|
||||
openprojectUser: {{ (derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "minio" "openproject_user" | sha1sum | quote) }}
|
||||
umsUser: {{ (derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "minio" "ums_user" | sha1sum | quote) }}
|
||||
keycloak:
|
||||
adminPassword: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "keycloak" "adminPassword" | sha1sum | quote }}
|
||||
clientSecret:
|
||||
|
||||
@@ -30,6 +30,7 @@ seLinuxOptions:
|
||||
matrixNeoDateFixWidget: ~
|
||||
matrixUserVerificationService: ~
|
||||
memcached: ~
|
||||
migrations: ~
|
||||
milter: ~
|
||||
minio: ~
|
||||
nextcloudApache2: ~
|
||||
|
||||
@@ -8,6 +8,5 @@ smtp:
|
||||
port: 587
|
||||
username: ""
|
||||
password: {{ env "SMTP_PASSWORD" | quote }}
|
||||
|
||||
localpartNoReply: "no-reply"
|
||||
localpartNoReply: "no-reply"
|
||||
...
|
||||
|
||||
@@ -1,49 +0,0 @@
|
||||
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||
# SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS"
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
---
|
||||
certificates:
|
||||
enabled: true
|
||||
clamavDistributed:
|
||||
enabled: false
|
||||
clamavSimple:
|
||||
enabled: true
|
||||
collabora:
|
||||
enabled: true
|
||||
cryptpad:
|
||||
enabled: true
|
||||
dovecot:
|
||||
enabled: true
|
||||
element:
|
||||
enabled: true
|
||||
home:
|
||||
enabled: true
|
||||
intercom:
|
||||
enabled: true
|
||||
jitsi:
|
||||
enabled: true
|
||||
mariadb:
|
||||
enabled: true
|
||||
memcached:
|
||||
enabled: true
|
||||
minio:
|
||||
enabled: true
|
||||
nextcloud:
|
||||
enabled: true
|
||||
openproject:
|
||||
enabled: true
|
||||
oxAppsuite:
|
||||
enabled: true
|
||||
oxConnector:
|
||||
enabled: true
|
||||
postfix:
|
||||
enabled: true
|
||||
postgresql:
|
||||
enabled: true
|
||||
redis:
|
||||
enabled: true
|
||||
univentionManagementStack:
|
||||
enabled: true
|
||||
xwiki:
|
||||
enabled: true
|
||||
...
|
||||
59
helmfile/shared/migrations.yaml.gotmpl
Normal file
59
helmfile/shared/migrations.yaml.gotmpl
Normal file
@@ -0,0 +1,59 @@
|
||||
{{/*
|
||||
# SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
*/}}
|
||||
---
|
||||
global:
|
||||
domain: {{ .Values.global.domain | quote }}
|
||||
hosts:
|
||||
{{ .Values.global.hosts | toYaml | nindent 4 }}
|
||||
imagePullSecrets:
|
||||
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
|
||||
|
||||
cleanup:
|
||||
deletePodsOnSuccess: {{ .Values.debug.cleanup.deletePodsOnSuccess }}
|
||||
keepPVCOnDelete: {{ .Values.debug.cleanup.keepPVCOnDelete }}
|
||||
|
||||
migrations:
|
||||
runId: 1
|
||||
currentOdRelease: {{ .Values.global.systemInformation.releaseVersion | quote }}
|
||||
namespace: {{ .Values.migrations.namespace | quote }}
|
||||
loglevel: {{ if .Values.debug.enabled }}"DEBUG"{{ else }}"INFO"{{ end }}
|
||||
failOnUnexpectedState: true
|
||||
credentials:
|
||||
keycloakAdminUsername: "kcadmin"
|
||||
keycloakAdminPassword: {{ .Values.secrets.keycloak.adminPassword | quote }}
|
||||
urls:
|
||||
keycloakBase: "http://ums-keycloak.{{ .Values.univentionManagementStack.namespace }}.svc.{{ .Values.cluster.networking.domain }}:8080"
|
||||
|
||||
containerSecurityContext:
|
||||
allowPrivilegeEscalation: false
|
||||
capabilities:
|
||||
drop:
|
||||
- "ALL"
|
||||
enabled: true
|
||||
privileged: false
|
||||
runAsUser: 1000
|
||||
runAsGroup: 1000
|
||||
seccompProfile:
|
||||
type: "RuntimeDefault"
|
||||
readOnlyRootFilesystem: true
|
||||
runAsNonRoot: true
|
||||
seLinuxOptions:
|
||||
{{ .Values.seLinuxOptions.migrations | toYaml | nindent 4 }}
|
||||
|
||||
image:
|
||||
registry: {{ .Values.global.imageRegistry | default .Values.images.migrations.registry | quote }}
|
||||
repository: {{ .Values.images.migrations.repository | quote }}
|
||||
tag: {{ .Values.images.migrations.tag | quote }}
|
||||
imagePullPolicy: {{ .Values.global.imagePullPolicy |quote }}
|
||||
|
||||
job:
|
||||
enabled: true
|
||||
|
||||
podSecurityContext:
|
||||
enabled: true
|
||||
fsGroup: 1000
|
||||
fsGroupChangePolicy: "OnRootMismatch"
|
||||
|
||||
...
|
||||
@@ -6,12 +6,12 @@
|
||||
#
|
||||
helmfiles:
|
||||
# Path to the helmfile state file being processed BEFORE releases in this state file
|
||||
- path: "helmfile/apps/services/helmfile-child.yaml"
|
||||
- path: "helmfile/apps/migrations-pre/helmfile-child.yaml"
|
||||
values: &values
|
||||
- "helmfile/environments/default/*.yaml"
|
||||
- "helmfile/environments/default/*.gotmpl"
|
||||
- {{ toYaml .Values | nindent 8 }}
|
||||
- path: "helmfile/apps/univention-management-stack/helmfile-child.yaml"
|
||||
- path: "helmfile/apps/nubus/helmfile-child.yaml"
|
||||
values: *values
|
||||
- path: "helmfile/apps/intercom-service/helmfile-child.yaml"
|
||||
values: *values
|
||||
@@ -35,5 +35,7 @@ helmfiles:
|
||||
values: *values
|
||||
- path: "helmfile/apps/openproject-bootstrap/helmfile-child.yaml"
|
||||
values: *values
|
||||
- path: "helmfile/apps/migrations-post/helmfile-child.yaml"
|
||||
values: *values
|
||||
missingFileHandler: "Error"
|
||||
...
|
||||
|
||||
Reference in New Issue
Block a user