Compare commits

...

17 Commits

Author SHA1 Message Date
Thorsten Roßner
d641359c29 fix(helmfile): Remove some YAML linter warnings. 2024-10-07 13:56:13 +00:00
Thorsten Roßner
fdb37c3943 fix(nubus): Update "openDesk Standard" OX profile. 2024-10-07 13:56:13 +00:00
Thorsten Roßner
c9ae0391b0 fix(nextcloud): Bump image to incorporate latest PHP fixes. 2024-10-07 13:56:13 +00:00
Milton Moura
71f21dc433 fix(element): Update NeoDateFix translations. 2024-10-07 14:08:44 +02:00
Thorsten Roßner
356d8dfbfd feat(open-xchange): Support for email migration feature toggle enabling masterpassword authentication in Dovecot and AppSuite. Requires openDesk Enterprise. 2024-10-07 08:54:59 +02:00
Dominik Kaminski
e512486e74 fix(helmfile): Remove NET_RAW capabilities 2024-10-04 16:13:59 +00:00
Thorsten Roßner
d693ff94f4 fix(xwiki): Update to 16.4.4. 2024-10-04 12:38:14 +00:00
Milton Moura
11b0d441e0 fix(element): Update NeoBoard to 1.20.0 and synapse-guest-module to 2.0.0. 2024-10-04 11:40:17 +00:00
Dominik Kaminski
6b2ca6a136 chore(open-xchange): Fix linter warnings and add templates 2024-10-04 07:38:48 +00:00
Dominik Kaminski
fb8f7cd28a fix(open-xchange): Update OpenXchange Appsuite Bootstrap to v2.1.0 2024-10-04 07:38:48 +00:00
Thorsten Roßner
6325b69a91 fix(open-xchange): Update Migrations for OX-Connector. 2024-10-04 06:33:57 +00:00
Dominik Kaminski
add2ab1a41 fix(collabora): Add ipFamilies cluster.networking option 2024-10-03 18:59:10 +02:00
Thorsten Roßner
b1946d0c1d fix(open-xchange): Update cluster internal Nextcloud URL. 2024-10-03 10:03:39 +02:00
Thorsten Roßner
3baf37c509 fix(nextcloud): Remove /index.php. 2024-10-03 10:03:39 +02:00
Dominik Kaminski
81f5969653 feat(nextcloud): Use nextcloud image with bundled nginx 2024-10-03 10:03:31 +02:00
Thorsten Roßner
a7ea701cc6 fix(collabora): Reduce Collabora's securityContext capabilities. 2024-10-02 14:17:42 +00:00
Thorsten Roßner
b9db81f69d fix(nubus): Update customization for improved UX. 2024-10-02 10:39:57 +02:00
60 changed files with 1042 additions and 148 deletions

View File

@@ -429,11 +429,11 @@ env-stop:
.ums-default-password: &ums-default-password
- |
DEFAULT_USER_PASSWORD=$( \
kubectl -n ${NAMESPACE} get secret ums-nubus-credentials -o jsonpath='{.data.user_password}' | base64 -d \
)
DEFAULT_ADMIN_PASSWORD=$(
kubectl -n ${NAMESPACE} get secret ums-nubus-credentials -o jsonpath='{.data.admin_password}' | base64 -d \
DEFAULT_ADMINISTRATOR_PASSWORD=$(
kubectl \
-n ${NAMESPACE} \
get secret ums-nubus-credentials \
-o jsonpath='{.data.administrator_password}' | base64 -d \
)
run-tests:
@@ -464,10 +464,8 @@ run-tests:
\"namespace\": \"${NAMESPACE}\", \
\"url\": \"https://portal.${DOMAIN}/\", \
\"language\": \"${LANGUAGE}\", \
\"user_name\": \"${DEFAULT_USER_NAME}\", \
\"user_password\": \"${DEFAULT_USER_PASSWORD}\", \
\"admin_name\": \"${DEFAULT_ADMIN_NAME}\", \
\"admin_password\": \"${DEFAULT_ADMIN_PASSWORD}\", \
\"udm_api_username\": \"Administrator\", \
\"udm_api_password\": \"${DEFAULT_ADMINISTRATOR_PASSWORD}\", \
\"screenshot_test\": \"yes\", \
\"screenshot_before_step\": \"yes\", \
\"screenshot_after_step\": \"yes\", \

View File

@@ -29,12 +29,12 @@ openDesk is a Kubernetes based, open-source and cloud-native digital workplace s
openDesk currently features the following functional main components:
| Function | Functional Component | Component<br/>Version | Upstream Documentation |
| -------------------- | --------------------------- | ------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| -------------------- | --------------------------- |---------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------|
| Chat & collaboration | Element ft. Nordeck widgets | [1.11.67](https://github.com/element-hq/element-desktop/releases/tag/v1.11.67) | [For the most recent release](https://element.io/user-guide) |
| Diagram editor | CryptPad ft. diagrams.net | [5.6.0](https://github.com/cryptpad/cryptpad/releases/tag/5.6.0) | [For the most recent release](https://docs.cryptpad.org/en/) |
| File management | Nextcloud | [28.0.5](https://nextcloud.com/de/changelog/#28-0-5) | [Nextcloud 28](https://docs.nextcloud.com/) |
| File management | Nextcloud | [29.0.7](https://nextcloud.com/de/changelog/#29-0-7) | [Nextcloud 29](https://docs.nextcloud.com/) |
| Groupware | OX App Suite | [8.26](https://documentation.open-xchange.com/appsuite/releases/8.26/) | Online documentation available from within the installed application; [Additional resources](https://www.open-xchange.com/resources/oxpedia) |
| Knowledge management | XWiki | [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) |
| Knowledge management | XWiki | [16.4.4](https://www.xwiki.org/xwiki/bin/view/ReleaseNotes/Data/XWiki/16.4.4/) | [For the most recent release](https://www.xwiki.org/xwiki/bin/view/Documentation) |
| Portal & IAM | Nubus | Product Preview[^1] | [Univention's documentation website](https://docs.software-univention.de/n/en/index.html) |
| Project management | OpenProject | [14.5.1](https://www.openproject.org/docs/release-notes/14-5-1/) | [For the most recent release](https://www.openproject.org/docs/user-guide/) |
| Videoconferencing | Jitsi | [2.0.9646](https://github.com/jitsi/jitsi-meet/releases/tag/stable%2Fjitsi-meet_9646) | [For the most recent release](https://jitsi.github.io/handbook/docs/category/user-guide/) |

View File

@@ -3,11 +3,6 @@
version = 1
[[annotations]]
path = "helmfile/files/theme/*"
SPDX-FileCopyrightText = "2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH"
SPDX-License-Identifier = "Apache-2.0"
[[annotations]]
path = "cspell.json"
SPDX-FileCopyrightText = "2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH"
@@ -17,3 +12,13 @@ SPDX-License-Identifier = "Apache-2.0"
path = "helmfile/files/gpg-pubkeys/*"
SPDX-FileCopyrightText = "2023 Bundesministerium des Innern und für Heimat, PG ZenDiS \"Projektgruppe für Aufbau ZenDiS\""
SPDX-License-Identifier = "CC0-1.0"
[[annotations]]
path = "helmfile/files/theme/*"
SPDX-FileCopyrightText = "2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH"
SPDX-License-Identifier = "Apache-2.0"
[[annotations]]
path = "helmfile/files/portal-tiles/*"
SPDX-FileCopyrightText = "2024 Google LLC"
SPDX-License-Identifier = "Apache-2.0"

View File

@@ -36,6 +36,9 @@ component's log level to debug and it get some features like:
- An ingress for `http://minio-console.<your_domain>` is configured.
and set the log level for components to "Debug".
**Note**: When enabling debug and running upgrades you must manually delete all jobs before the upgrade. As with debug
we keep the jobs and some job fields are immutable it could otherwise lead into an upgrade failure.
**Note:** All containers should write their log output to STDOUT, if you find (valuable) logs inside a container, please let us know!
# Adding containers to a pod for debugging purposes
@@ -153,7 +156,7 @@ OpenProject is a Ruby on Rails application. Therefore you can make use of the Ra
and run debug code like this:
```
uri = URI('https://nextcloud.url/index.php/apps/integration_openproject/check-config')
uri = URI('https://nextcloud.url/apps/integration_openproject/check-config')
Net::HTTP.start(uri.host, uri.port,
:use_ssl => uri.scheme == 'https') do |http|
request = Net::HTTP::Get.new uri

View File

@@ -9,10 +9,12 @@ SPDX-License-Identifier: Apache-2.0
* [Releases upgrades](#releases-upgrades)
* [From v0.9.0](#from-v090)
* [Changed openDesk defaults](#changed-opendesk-defaults)
* [Removal of unnecessary OX-Profiles in Nubus](#removal-of-unnecessary-ox-profiles-in-nubus)
* [MatrixID localpart update](#matrixid-localpart-update)
* [File-share configurability](#file-share-configurability)
* [Updated default subdomains in `global.hosts`](#updated-default-subdomains-in-globalhosts)
* [Updated `global.imagePullSecrets`](#updated-globalimagepullsecrets)
* [Dedicated group for access of the UDM REST API](#dedicated-group-for-access-of-the-udm-rest-api)
* [Automated migrations](#automated-migrations)
* [Local Postfix as Relay](#local-postfix-as-relay)
* [Updated IAM component Nubus](#updated-iam-component-nubus)
@@ -40,6 +42,36 @@ Though we try to ease the pain when it comes to 0.x upgrades. That is what this
### Changed openDesk defaults
#### Removal of unnecessary OX-Profiles in Nubus
**Warning: If you do not address this section with your current deployment the upgrade will fail.**
The update will remove unnecessary OX-Profiles in Nubus, but can't as long as these profiles are in use.
So please ensure that only the following two supported profiles are assigned to your users:
- `opendesk_standard`: "opendesk Standard"
- `none`: "Login disabled"
You can review and update other accounts as follows:
- Login as IAM admin.
- Open the user module.
- Open the extended search by clicking the funnel (Trichter) icon next to the search input field.
- Open the "Property" (Eigenschaft) list and select "OX Access" (OX-Berechtigung).
- In the input field right next to the list enter an asterisk (*).
- Start the search by clicking once more on the funnel icon.
- Sort the result list for the "OX Access" column
- Edit every user that has a value different to `opendesk_standard` or `none`:
- Open the user.
- Go to section "OX App Suite".
- Change the value in the dropdown "OX Access" to either:
- "openDesk Standard" if the user should be able to use the Groupware module or
- "Login disabled" if the user should not user the Groupware module.
- Update the user account with the green "SAVE" button on top of the page.
Please check the "OX Access" setting of the user `Administrator` explicitly as that user is likely not to
show up in the search described above.
#### MatrixID localpart update
Until 0.9.0 openDesk used the LDAP entryUUID of a user to generate the user's MatrixID. Due to restrictions of the
@@ -163,6 +195,25 @@ global:
- "external-registry"
```
#### Dedicated group for access of the UDM REST API
Prerequisite: You allow the use of the [IAM's API](https://docs.software-univention.de/developer-reference/5.0/en/udm/rest-api.html)
with the following settings:
```
functional:
externalServices:
nubus:
udmRestApi:
enabled: true
```
With 0.9.0 all members of the group "Domain Admins" were able to successfully authenticate with the API.
This has been changed and there is now a dedicated group required for using the API: `IAM API - Full Access`
If you need specific accounts to make use of the API, please go ahead and assign them to the aforementioned group.
### Automated migrations
#### Local Postfix as Relay

View File

@@ -8,7 +8,13 @@ autoscaling:
enabled: false
collabora:
extra_params: "--o:ssl.enable=false --o:ssl.termination=true --o:fetch_update_check=0 --o:remote_font_config.url=https://{{ .Values.global.hosts.nextcloud }}.{{ .Values.global.domain }}/index.php/apps/richdocuments/settings/fonts.json"
extra_params: >
--o:ssl.enable=false
--o:ssl.termination=true
--o:fetch_update_check=0
--o:remote_font_config.url=https://{{ .Values.global.hosts.nextcloud }}.{{ .Values.global.domain }}/apps/richdocuments/settings/fonts.json
--o:net.proto={{ if eq .Values.cluster.networking.ipFamilies "DualStack" }}all{{ else }}{{ .Values.cluster.networking.ipFamilies }}{{ end }}
username: "collabora-internal-admin"
password: {{ .Values.secrets.collabora.adminPassword | quote }}
aliasgroups:
@@ -118,17 +124,9 @@ securityContext:
- "ALL"
add:
- "CHOWN"
- "DAC_OVERRIDE"
- "FOWNER"
- "FSETID"
- "KILL"
- "SETGID"
- "SETUID"
- "SETPCAP"
- "NET_BIND_SERVICE"
- "NET_RAW"
- "SYS_CHROOT"
- "MKNOD"
seLinuxOptions:
{{ .Values.seLinuxOptions.collabora | toYaml | nindent 4 }}
serviceAccount:

View File

@@ -33,6 +33,52 @@ repositories:
oci: true
url: "{{ .Values.global.helmRegistry | default .Values.charts.synapse.registry }}/{{ .Values.charts.synapse.repository }}"
- name: "synapse-create-account-repo"
keyring: "../../files/gpg-pubkeys/opencode.gpg"
verify: {{ .Values.charts.synapseCreateAccount.verify }}
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
oci: true
url: "{{ .Values.global.helmRegistry | default .Values.charts.synapseCreateAccount.registry }}/{{ .Values.charts.synapseCreateAccount.repository }}"
# openDesk Matrix Widgets
# Source: https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-matrix-widgets
- name: "matrix-user-verification-service-repo"
keyring: "../../files/gpg-pubkeys/opencode.gpg"
verify: {{ .Values.charts.matrixUserVerificationService.verify }}
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
oci: true
url: "{{ .Values.global.helmRegistry | default .Values.charts.matrixUserVerificationService.registry }}/{{ .Values.charts.matrixUserVerificationService.repository }}"
- name: "matrix-neoboard-widget-repo"
keyring: "../../files/gpg-pubkeys/opencode.gpg"
verify: {{ .Values.charts.matrixNeoboardWidget.verify }}
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
oci: true
url: "{{ .Values.global.helmRegistry | default .Values.charts.matrixNeoboardWidget.registry }}/{{ .Values.charts.matrixNeoboardWidget.repository }}"
- name: "matrix-neochoice-widget-repo"
keyring: "../../files/gpg-pubkeys/opencode.gpg"
verify: {{ .Values.charts.matrixNeoboardWidget.verify }}
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
oci: true
url: "{{ .Values.global.helmRegistry | default .Values.charts.matrixNeoboardWidget.registry }}/{{ .Values.charts.matrixNeoboardWidget.repository }}"
- name: "matrix-neodatefix-widget-repo"
keyring: "../../files/gpg-pubkeys/opencode.gpg"
verify: {{ .Values.charts.matrixNeodatefixWidget.verify }}
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
oci: true
url: "{{ .Values.global.helmRegistry | default .Values.charts.matrixNeodatefixWidget.registry }}/{{ .Values.charts.matrixNeodatefixWidget.repository }}"
- name: "matrix-neodatefix-bot-repo"
keyring: "../../files/gpg-pubkeys/opencode.gpg"
verify: {{ .Values.charts.matrixNeodatefixBot.verify }}
username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }}
password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }}
oci: true
url: "{{ .Values.global.helmRegistry | default .Values.charts.matrixNeodatefixBot.registry }}/{{ .Values.charts.matrixNeodatefixBot.repository }}"
releases:
- name: "opendesk-element"
chart: "element-repo/{{ .Values.charts.element.name }}"
@@ -70,6 +116,62 @@ releases:
installed: {{ .Values.element.enabled }}
timeout: 900
- name: "opendesk-matrix-user-verification-service-bootstrap"
chart: "synapse-create-account-repo/{{ .Values.charts.synapseCreateAccount.name }}"
version: "{{ .Values.charts.synapseCreateAccount.version }}"
values:
- "values-matrix-user-verification-service-bootstrap.yaml.gotmpl"
installed: {{ .Values.element.enabled }}
timeout: 900
- name: "opendesk-matrix-user-verification-service"
chart: "matrix-user-verification-service-repo/{{ .Values.charts.matrixUserVerificationService.name }}"
version: "{{ .Values.charts.matrixUserVerificationService.version }}"
values:
- "values-matrix-user-verification-service.yaml.gotmpl"
installed: {{ .Values.element.enabled }}
timeout: 900
- name: "matrix-neoboard-widget"
chart: "matrix-neoboard-widget-repo/{{ .Values.charts.matrixNeoboardWidget.name }}"
version: "{{ .Values.charts.matrixNeoboardWidget.version }}"
values:
- "values-matrix-neoboard-widget.yaml.gotmpl"
installed: {{ .Values.element.enabled }}
timeout: 900
- name: "matrix-neochoice-widget"
chart: "matrix-neochoice-widget-repo/{{ .Values.charts.matrixNeochoiseWidget.name }}"
version: "{{ .Values.charts.matrixNeochoiseWidget.version }}"
values:
- "values-matrix-neochoice-widget.yaml.gotmpl"
installed: {{ .Values.element.enabled }}
timeout: 900
- name: "matrix-neodatefix-widget"
chart: "matrix-neodatefix-widget-repo/{{ .Values.charts.matrixNeodatefixWidget.name }}"
version: "{{ .Values.charts.matrixNeodatefixWidget.version }}"
values:
- "values-matrix-neodatefix-widget.yaml.gotmpl"
installed: {{ .Values.element.enabled }}
timeout: 900
- name: "matrix-neodatefix-bot-bootstrap"
chart: "synapse-create-account-repo/{{ .Values.charts.synapseCreateAccount.name }}"
version: "{{ .Values.charts.synapseCreateAccount.version }}"
values:
- "values-matrix-neodatefix-bot-bootstrap.yaml.gotmpl"
installed: {{ .Values.element.enabled }}
timeout: 900
- name: "matrix-neodatefix-bot"
chart: "matrix-neodatefix-bot-repo/{{ .Values.charts.matrixNeodatefixBot.name }}"
version: "{{ .Values.charts.matrixNeodatefixBot.version }}"
values:
- "values-matrix-neodatefix-bot.yaml.gotmpl"
installed: {{ .Values.element.enabled }}
timeout: 900
commonLabels:
deploy-stage: "component-1"
component: "element"

View File

@@ -20,6 +20,86 @@ configuration:
--cpd-color-bg-action-primary-rest: {{ .Values.theme.colors.primary | quote }}
--cpd-color-text-action-accent: {{ .Values.theme.colors.primary | quote }}
"net.nordeck.element_web.module.widget_lifecycle":
widget_permissions:
"https://{{ .Values.global.hosts.element }}.{{ .Values.global.domain }}/jitsi.html":
identity_approved: true
"https://{{ .Values.global.hosts.matrixNeoBoardWidget }}.{{ .Values.global.domain }}/*":
preload_approved: true
capabilities_approved:
- org.matrix.msc2762.send.event:net.nordeck.whiteboard.document.create
- org.matrix.msc2762.receive.event:net.nordeck.whiteboard.document.create
- org.matrix.msc2762.send.event:net.nordeck.whiteboard.document.chunk
- org.matrix.msc2762.receive.event:net.nordeck.whiteboard.document.chunk
- org.matrix.msc2762.send.event:net.nordeck.whiteboard.document.snapshot
- org.matrix.msc2762.receive.event:net.nordeck.whiteboard.document.snapshot
- org.matrix.msc2762.send.state_event:m.room.power_levels#
- org.matrix.msc2762.receive.state_event:m.room.power_levels#
- org.matrix.msc2762.receive.state_event:m.room.member
- org.matrix.msc2762.receive.state_event:m.room.name
- org.matrix.msc2762.send.state_event:net.nordeck.whiteboard
- org.matrix.msc2762.receive.state_event:net.nordeck.whiteboard
- org.matrix.msc2762.send.state_event:net.nordeck.whiteboard.sessions#*
- org.matrix.msc2762.receive.state_event:net.nordeck.whiteboard.sessions
- org.matrix.msc3819.send.to_device:net.nordeck.whiteboard.connection_signaling
- org.matrix.msc3819.receive.to_device:net.nordeck.whiteboard.connection_signaling
- town.robin.msc3846.turn_servers
- org.matrix.msc4039.upload_file
- org.matrix.msc4039.download_file
"https://{{ .Values.global.hosts.matrixNeoChoiceWidget }}.{{ .Values.global.domain }}/*":
preload_approved: true
capabilities_approved:
- org.matrix.msc2762.send.event:net.nordeck.poll.vote
- org.matrix.msc2762.receive.event:net.nordeck.poll.vote
- org.matrix.msc2762.send.state_event:net.nordeck.poll
- org.matrix.msc2762.receive.state_event:net.nordeck.poll
- org.matrix.msc2762.send.state_event:net.nordeck.poll.settings
- org.matrix.msc2762.receive.state_event:net.nordeck.poll.settings
- org.matrix.msc2762.receive.state_event:m.room.power_levels
- org.matrix.msc2762.receive.state_event:m.room.name
- org.matrix.msc2762.receive.state_event:m.room.member
- org.matrix.msc2762.send.state_event:net.nordeck.poll.group
- org.matrix.msc2762.receive.state_event:net.nordeck.poll.group
- org.matrix.msc2762.send.event:net.nordeck.poll.start
- org.matrix.msc2762.receive.event:net.nordeck.poll.start
"https://{{ .Values.global.hosts.matrixNeoDateFixWidget }}.{{ .Values.global.domain }}/*":
preload_approved: true
identity_approved: true
capabilities_approved:
- org.matrix.msc2931.navigate
- org.matrix.msc2762.timeline:*
- org.matrix.msc2762.receive.state_event:m.room.power_levels
- org.matrix.msc2762.receive.event:m.reaction
- org.matrix.msc2762.receive.state_event:m.room.create
- org.matrix.msc2762.receive.state_event:m.room.tombstone
- org.matrix.msc2762.receive.state_event:m.room.member
- org.matrix.msc2762.send.state_event:m.room.member
- org.matrix.msc2762.receive.state_event:m.room.name
- org.matrix.msc2762.receive.state_event:m.room.topic
- org.matrix.msc2762.receive.state_event:m.space.parent
- org.matrix.msc2762.receive.state_event:m.space.child
- org.matrix.msc2762.receive.state_event:net.nordeck.meetings.metadata
- org.matrix.msc2762.receive.state_event:im.vector.modular.widgets
- org.matrix.msc2762.send.event:net.nordeck.meetings.meeting.create
- org.matrix.msc2762.receive.event:net.nordeck.meetings.meeting.create
- org.matrix.msc2762.send.event:net.nordeck.meetings.breakoutsessions.create
- org.matrix.msc2762.receive.event:net.nordeck.meetings.breakoutsessions.create
- org.matrix.msc2762.send.event:net.nordeck.meetings.meeting.close
- org.matrix.msc2762.receive.event:net.nordeck.meetings.meeting.close
- org.matrix.msc2762.send.event:net.nordeck.meetings.meeting.widgets.handle
- org.matrix.msc2762.receive.event:net.nordeck.meetings.meeting.widgets.handle
- org.matrix.msc2762.send.event:net.nordeck.meetings.meeting.participants.handle
- org.matrix.msc2762.receive.event:net.nordeck.meetings.meeting.participants.handle
- org.matrix.msc2762.send.event:net.nordeck.meetings.meeting.update
- org.matrix.msc2762.receive.event:net.nordeck.meetings.meeting.update
- org.matrix.msc2762.send.event:net.nordeck.meetings.meeting.change.message_permissions
- org.matrix.msc2762.receive.event:net.nordeck.meetings.meeting.change.message_permissions
- org.matrix.msc2762.send.event:net.nordeck.meetings.sub_meetings.send_message
- org.matrix.msc2762.receive.event:net.nordeck.meetings.sub_meetings.send_message
- org.matrix.msc3973.user_directory_search
welcomeUserId: "@meetings-bot:{{ .Values.global.domain }}"
containerSecurityContext:
allowPrivilegeEscalation: false
capabilities:

View File

@@ -0,0 +1,57 @@
{{/*
SPDX-FileCopyrightText: 2024 Center for Digital Sovereignty of Public Administration (ZenDiS) GmbH
SPDX-FileCopyrightText: 2023 Federal Ministry of the Interior and Community, PG ZenDiS "Project group for the development of ZenDiS"
SPDX-License-Identifier: Apache-2.0
*/}}
---
containerSecurityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- "ALL"
enabled: true
privileged: false
readOnlyRootFilesystem: true
runAsGroup: 101
runAsNonRoot: true
runAsUser: 101
seccompProfile:
type: "RuntimeDefault"
seLinuxOptions:
{{ .Values.seLinuxOptions.matrixNeoBoardWidget | toYaml | nindent 4 }}
global:
domain: {{ .Values.global.domain | quote }}
hosts:
{{ .Values.global.hosts | toYaml | nindent 4 }}
imagePullSecrets:
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
image:
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.matrixNeoBoardWidget.registry | quote }}
repository: {{ .Values.images.matrixNeoBoardWidget.repository | quote }}
tag: {{ .Values.images.matrixNeoBoardWidget.tag | quote }}
ingress:
enabled: {{ .Values.ingress.enabled }}
ingressClassName: {{ .Values.ingress.ingressClassName | quote }}
tls:
enabled: {{ .Values.ingress.tls.enabled }}
secretName: {{ .Values.ingress.tls.secretName | quote }}
podAnnotations: {}
podSecurityContext:
enabled: true
fsGroup: 101
replicaCount: {{ .Values.replicas.matrixNeoBoardWidget }}
resources:
{{ .Values.resources.matrixNeoBoardWidget | toYaml | nindent 2 }}
theme:
{{ .Values.theme | toYaml | nindent 2 }}
...

View File

@@ -0,0 +1,57 @@
{{/*
SPDX-FileCopyrightText: 2024 Center for Digital Sovereignty of Public Administration (ZenDiS) GmbH
SPDX-FileCopyrightText: 2023 Federal Ministry of the Interior and Community, PG ZenDiS "Project group for the development of ZenDiS"
SPDX-License-Identifier: Apache-2.0
*/}}
---
containerSecurityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- "ALL"
enabled: true
privileged: false
readOnlyRootFilesystem: true
runAsGroup: 101
runAsNonRoot: true
runAsUser: 101
seccompProfile:
type: "RuntimeDefault"
seLinuxOptions:
{{ .Values.seLinuxOptions.matrixNeoChoiceWidget | toYaml | nindent 4 }}
global:
domain: {{ .Values.global.domain | quote }}
hosts:
{{ .Values.global.hosts | toYaml | nindent 4 }}
imagePullSecrets:
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
image:
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.matrixNeoChoiceWidget.registry | quote }}
repository: {{ .Values.images.matrixNeoChoiceWidget.repository | quote }}
tag: {{ .Values.images.matrixNeoChoiceWidget.tag | quote }}
ingress:
enabled: {{ .Values.ingress.enabled }}
ingressClassName: {{ .Values.ingress.ingressClassName | quote }}
tls:
enabled: {{ .Values.ingress.tls.enabled }}
secretName: {{ .Values.ingress.tls.secretName | quote }}
podAnnotations: {}
podSecurityContext:
enabled: true
fsGroup: 101
replicaCount: {{ .Values.replicas.matrixNeoChoiceWidget }}
theme:
{{ .Values.theme | toYaml | nindent 2 }}
resources:
{{ .Values.resources.matrixNeoChoiceWidget | toYaml | nindent 2 }}
...

View File

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

View File

@@ -0,0 +1,85 @@
{{/*
SPDX-FileCopyrightText: 2024 Center for Digital Sovereignty of Public Administration (ZenDiS) GmbH
SPDX-FileCopyrightText: 2023 Federal Ministry of the Interior and Community, PG ZenDiS "Project group for the development of ZenDiS"
SPDX-License-Identifier: Apache-2.0
*/}}
---
global:
domain: {{ .Values.global.domain | quote }}
hosts:
{{ .Values.global.hosts | toYaml | nindent 4 }}
imagePullSecrets:
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
configuration:
bot:
username: "meetings-bot"
display name: "Terminplaner Bot"
openxchangeBaseUrl: "https://{{ .Values.global.hosts.openxchange }}.{{ .Values.global.domain }}"
strings:
breakoutSessionWidgetName: "Breakoutsessions"
calendarRoomName: "Terminplaner"
calendarWidgetName: "Terminplaner"
cockpitWidgetName: "Meeting Steuerung"
jitsiWidgetName: "Videokonferenz"
matrixNeoBoardWidgetName: "Whiteboard"
matrixNeoChoiceWidgetName: "Abstimmungen"
containerSecurityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- "ALL"
enabled: true
privileged: false
readOnlyRootFilesystem: true
runAsGroup: 101
runAsNonRoot: true
runAsUser: 101
seccompProfile:
type: "RuntimeDefault"
seLinuxOptions:
{{ .Values.seLinuxOptions.matrixNeoDateFixBot | toYaml | nindent 4 }}
extraEnvVars:
- name: "ACCESS_TOKEN"
valueFrom:
secretKeyRef:
name: "matrix-neodatefix-bot-account"
key: "access_token"
image:
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.matrixNeoDateFixBot.registry | quote }}
repository: {{ .Values.images.matrixNeoDateFixBot.repository | quote }}
tag: {{ .Values.images.matrixNeoDateFixBot.tag | quote }}
ingress:
enabled: {{ .Values.ingress.enabled }}
ingressClassName: {{ .Values.ingress.ingressClassName | quote }}
tls:
enabled: {{ .Values.ingress.tls.enabled }}
secretName: {{ .Values.ingress.tls.secretName | quote }}
liveness sample:
enabled: true
persistence:
size: {{ .Values.persistence.size.matrixNeoDateFixBot | quote }}
storageClass: {{ .Values.persistence.storageClassNames.RWO | quote }}
podAnnotations: {}
podSecurityContext:
enabled: true
fsGroup: 101
readinessProbe:
enabled: true
replicaCount: {{ .Values.replicas.matrixNeoDateFixBot }}
resources:
{{ .Values.resources.matrixNeoDateFixBot | toYaml | nindent 2 }}
...

View File

@@ -0,0 +1,62 @@
{{/*
SPDX-FileCopyrightText: 2024 Center for Digital Sovereignty of Public Administration (ZenDiS) GmbH
SPDX-FileCopyrightText: 2023 Federal Ministry of the Interior and Community, PG ZenDiS "Project group for the development of ZenDiS"
SPDX-License-Identifier: Apache-2.0
*/}}
---
configuration:
bot:
username: "meetings-bot"
homeserver: {{ .Values.global.matrixDomain | default .Values.global.domain }}
containerSecurityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- "ALL"
enabled: true
privileged: false
readOnlyRootFilesystem: true
runAsGroup: 101
runAsNonRoot: true
runAsUser: 101
seccompProfile:
type: "RuntimeDefault"
seLinuxOptions:
{{ .Values.seLinuxOptions.matrixNeoDateFixWidget | toYaml | nindent 4 }}
global:
domain: {{ .Values.global.domain | quote }}
hosts:
{{ .Values.global.hosts | toYaml | nindent 4 }}
imagePullSecrets:
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
image:
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.matrixNeoDateFixWidget.registry | quote }}
repository: {{ .Values.images.matrixNeoDateFixWidget.repository | quote }}
tag: {{ .Values.images.matrixNeoDateFixWidget.tag | quote }}
ingress:
enabled: {{ .Values.ingress.enabled }}
ingressClassName: {{ .Values.ingress.ingressClassName | quote }}
tls:
enabled: {{ .Values.ingress.tls.enabled }}
secretName: {{ .Values.ingress.tls.secretName | quote }}
podAnnotations: {}
podSecurityContext:
enabled: true
fsGroup: 101
replicaCount: {{ .Values.replicas.matrixNeoDateFixWidget }}
resources:
{{ .Values.resources.matrixNeoDateFixWidget | toYaml | nindent 2 }}
theme:
{{ .Values.theme | toYaml | nindent 2 }}
...

View File

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

View File

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

View File

@@ -12,6 +12,7 @@ configuration:
room_prejoin_state:
additional_event_types:
- "m.space.parent"
- "net.nordeck.meetings.metadata"
- "m.room.power_levels"
# To allow intercom service logins for the users and also allow proper testautomation we want to raise the
# ratelimit in a reasonable manner.
@@ -32,6 +33,25 @@ configuration:
homeserver:
serverName: {{ .Values.global.matrixDomain | default .Values.global.domain }}
appServiceConfigs:
- as_token: {{ .Values.secrets.intercom.synapseAsToken | quote }}
hs_token: {{ .Values.secrets.intercom.synapseAsToken | quote }}
id: intercom-service
namespaces:
users:
- exclusive: false
regex: "@.*"
url: null
sender_localpart: intercom-service
- as_token: {{ .Values.secrets.oxAppsuite.synapseAsToken | quote }}
hs_token: {{ .Values.secrets.oxAppsuite.synapseAsToken | quote }}
id: ox-appsuite
namespaces:
users:
- exclusive: false
regex: "@.*"
url: null
sender_localpart: ox-appsuite
presence:
enabled: {{ .Values.functional.dataProtection.matrixPresence.enabled }}
@@ -70,6 +90,14 @@ configuration:
transport: {{ .Values.turn.transport | quote }}
{{- end }}
guestModule:
enabled: true
image:
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.synapseGuestModule.registry | quote }}
repository: {{ .Values.images.synapseGuestModule.repository | quote }}
tag: {{ .Values.images.synapseGuestModule.tag | quote }}
containerSecurityContext:
allowPrivilegeEscalation: false
capabilities:

View File

@@ -114,28 +114,30 @@ containerSecurityContext:
- "ALL"
enabled: true
privileged: false
runAsUser: 65532
runAsGroup: 65532
runAsUser: 101
runAsGroup: 101
seccompProfile:
type: "RuntimeDefault"
readOnlyRootFilesystem: false
runAsNonRoot: true
seLinuxOptions:
{{ .Values.seLinuxOptions.nextcloudManagement | toYaml | nindent 4 }}
podSecurityContext:
fsGroup: 101
debug:
loglevel: {{ if .Values.debug.enabled }}"0"{{ else }}"2"{{ end }}
image:
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nextcloudManagement.registry | quote }}
repository: {{ .Values.images.nextcloudManagement.repository | quote }}
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nextcloud.registry | quote }}
repository: {{ .Values.images.nextcloud.repository | quote }}
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
tag: {{ .Values.images.nextcloudManagement.tag | quote }}
tag: {{ .Values.images.nextcloud.tag | quote }}
theme:
{{ .Values.theme | toYaml | nindent 2 }}
resources:
{{ .Values.resources.nextcloudPHP | toYaml | nindent 4 }}
{{ .Values.resources.nextcloud | toYaml | nindent 4 }}
...

View File

@@ -46,9 +46,9 @@ exporter:
resources:
{{ .Values.resources.nextcloudExporter | toYaml | nindent 4 }}
php:
aio:
additionalAnnotations:
intents.otterize.com/service-name: "opendesk-nextcloud-php"
intents.otterize.com/service-name: "opendesk-nextcloud"
configuration:
cache:
auth:
@@ -75,57 +75,23 @@ php:
- "ALL"
enabled: true
privileged: false
runAsUser: 65532
runAsGroup: 65532
runAsUser: 101
runAsGroup: 101
seccompProfile:
type: "RuntimeDefault"
readOnlyRootFilesystem: true
runAsNonRoot: true
seLinuxOptions:
{{ .Values.seLinuxOptions.nextcloudPHP | toYaml | nindent 6 }}
{{ .Values.seLinuxOptions.nextcloud | toYaml | nindent 6 }}
cron:
successfulJobsHistoryLimit: {{ if .Values.debug.enabled }}"3"{{ else }}"0"{{ end }}
debug:
loglevel: {{ if .Values.debug.enabled }}"0"{{ else }}"2"{{ end }}
image:
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nextcloudPHP.registry | quote }}
repository: "{{ .Values.images.nextcloudPHP.repository }}"
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nextcloud.registry | quote }}
repository: "{{ .Values.images.nextcloud.repository }}"
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
tag: {{ .Values.images.nextcloudPHP.tag | quote }}
podAnnotations: {}
prometheus:
serviceMonitor:
enabled: {{ .Values.monitoring.prometheus.serviceMonitors.enabled }}
labels:
{{ .Values.monitoring.prometheus.serviceMonitors.labels | toYaml | nindent 8 }}
prometheusRule:
enabled: {{ .Values.monitoring.prometheus.prometheusRules.enabled }}
additionalLabels:
{{ .Values.monitoring.prometheus.prometheusRules.labels | toYaml | nindent 8 }}
replicaCount: {{ .Values.replicas.nextcloudPHP }}
resources:
{{ .Values.resources.nextcloudPHP | toYaml | nindent 4 }}
apache2:
configuration:
php:
host: "opendesk-nextcloud-php.{{ .Release.Namespace }}.svc.{{ .Values.cluster.networking.domain }}"
trustedProxies: {{ join " " .Values.cluster.networking.cidr | quote }}
containerSecurityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- "ALL"
enabled: true
privileged: false
runAsUser: 65532
runAsGroup: 65532
seccompProfile:
type: "RuntimeDefault"
readOnlyRootFilesystem: true
runAsNonRoot: true
seLinuxOptions:
{{ .Values.seLinuxOptions.nextcloudApache2 | toYaml | nindent 6 }}
tag: {{ .Values.images.nextcloud.tag | quote }}
ingress:
enabled: {{ .Values.ingress.enabled }}
annotations:
@@ -139,14 +105,20 @@ apache2:
host: "{{ .Values.global.hosts.nextcloud }}.{{ .Values.global.domain }}"
tls:
secretName: {{ .Values.ingress.tls.secretName | quote }}
image:
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.nextcloudApache2.registry | quote }}
repository: {{ .Values.images.nextcloudApache2.repository | quote }}
imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }}
tag: {{ .Values.images.nextcloudApache2.tag | quote }}
podAnnotations: {}
replicaCount: {{ .Values.replicas.nextcloudApache2 }}
podSecurityContext:
fsGroup: 101
prometheus:
serviceMonitor:
enabled: {{ .Values.monitoring.prometheus.serviceMonitors.enabled }}
labels:
{{ .Values.monitoring.prometheus.serviceMonitors.labels | toYaml | nindent 8 }}
prometheusRule:
enabled: {{ .Values.monitoring.prometheus.prometheusRules.enabled }}
additionalLabels:
{{ .Values.monitoring.prometheus.prometheusRules.labels | toYaml | nindent 8 }}
replicaCount: {{ .Values.replicas.nextcloud }}
resources:
{{ .Values.resources.nextcloudApache2 | toYaml | nindent 4 }}
{{ .Values.resources.nextcloud | toYaml | nindent 4 }}
...

View File

@@ -82,23 +82,27 @@ global:
configUcr:
directory:
manager:
rest:
authorized-groups:
domain-admins: __DELETE_KEY__
iam-api-full-access: "cn=IAM API - Full Access,cn=groups,{{ .Values.ldap.baseDn }}"
web:
modules:
users:
user:
add:
default: cn=openDesk User,cn=templates,cn=univention,{{ .Values.ldap.baseDn }}
default: "cn=openDesk User,cn=templates,cn=univention,{{ .Values.ldap.baseDn }}"
properties:
description:
syntax: TextArea
syntax: "TextArea"
firstname:
required: "true"
mailPrimaryAddress:
required: "true"
username:
syntax: uid
syntax: "uid"
search:
autosearch: "False"
autosearch: "True"
wizard:
property:
invite:
@@ -114,7 +118,7 @@ global:
ucs:
web:
theme: light
theme: "light"
umc:
cookie-banner:
@@ -132,8 +136,12 @@ global:
all:
disabled: "True"
self-service:
account-registration:
usertemplate: __DELETE_KEY__
passwordreset:
token_validity_period: 172800
blacklist:
groups: __DELETE_KEY__
ingress:
certManager:
@@ -417,6 +425,10 @@ nubusStackDataUms:
smtpStartTls: false
ldapBase: {{ .Values.ldap.baseDn }}
templateContext:
# creates the default.user and default.admin
loadDevData: true
portalHeaderLogo: {{ toYaml .Values.theme.imagery.logoHeaderSvgB64 | quote }}
portalTiles: {{ toYaml .Values.theme.portalTiles | nindent 6 }}
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 }}
@@ -455,12 +467,11 @@ nubusStackDataUms:
portaltileGroupLiveCollaboration:
- 'cn=managed-by-attribute-Livecollaboration,cn=groups,{{ .Values.ldap.baseDn }}'
systemInformation:
enabled: true
releaseVersion: "Release: {{ .Values.global.systemInformation.releaseVersion }}"
{{- if .Values.functional.admin.portal.deploymentInformation.enabled }}
{{- if .Values.functional.admin.portal.deploymentTimestamp.enabled }}
deployDate: "Deployed: {{ now | date "2006-01-02T15:04:05-0700" }}"
{{- else }}
deployDate: "not available"
deployDate: false
{{- end }}
# In openDesk the external memcache does not expect a username to be set. Overwriting
# the default username of `selfservice` is part of the customizing:

View File

@@ -185,6 +185,33 @@ nubusUmcServer:
runAsNonRoot: false
seLinuxOptions:
{{ .Values.seLinuxOptions.umsUmcServer | toYaml | nindent 6 }}
containerSecurityContextSssd:
enabled: true
allowPrivilegeEscalation: true
capabilities:
drop:
- "ALL"
add:
- "DAC_OVERRIDE"
- "SETGID"
- "AUDIT_WRITE"
- "SETUID"
- "CHOWN"
- "SETPCAP"
- "FOWNER"
- "FSETID"
- "KILL"
- "MKNOD"
- "NET_BIND_SERVICE"
- "SYS_CHROOT"
runAsUser: 0
runAsGroup: 0
seccompProfile:
type: "RuntimeDefault"
readOnlyRootFilesystem: true
runAsNonRoot: false
seLinuxOptions:
{{ .Values.seLinuxOptions.umsUmcServer | toYaml | nindent 6 }}
imagePullSecrets:
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
proxy:

View File

@@ -454,7 +454,7 @@ config:
authorizationServicesEnabled: false
attributes:
backchannel.logout.session.required: true
backchannel.logout.url: "https://{{ .Values.global.hosts.nextcloud }}.{{ .Values.global.domain }}/index.php/apps/user_oidc/backchannel-logout/opendesk"
backchannel.logout.url: "https://{{ .Values.global.hosts.nextcloud }}.{{ .Values.global.domain }}/apps/user_oidc/backchannel-logout/opendesk"
post.logout.redirect.uris: "https://{{ .Values.global.hosts.nextcloud }}.{{ .Values.global.domain }}/*##https://{{ .Values.global.hosts.nubus }}.{{ .Values.global.domain }}/*"
defaultClientScopes:
- "opendesk-nextcloud-scope"

View File

@@ -16,6 +16,9 @@ imagePullSecrets:
dovecot:
mailDomain: {{ .Values.global.mailDomain | default .Values.global.domain | quote }}
password: {{ .Values.secrets.dovecot.doveadm | quote }}
migration:
enabled: {{ .Values.functional.migration.oxAppsuite.enabled }}
masterPassword: {{ .Values.secrets.oxAppsuite.migrationsMasterPassword | quote }}
ldap:
enabled: true
host: {{ .Values.ldap.host | quote }}

View File

@@ -9,8 +9,17 @@ cleanup:
deletePodsOnSuccessTimeout: {{ .Values.debug.cleanup.deletePodsOnSuccessTimeout }}
containerSecurityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- "ALL"
enabled: true
runAsUser: 1000
runAsGroup: 1000
seccompProfile:
type: "RuntimeDefault"
readOnlyRootFilesystem: true
runAsNonRoot: true
seLinuxOptions:
{{ .Values.seLinuxOptions.openxchangeBootstrap | toYaml | nindent 4 }}

View File

@@ -23,6 +23,7 @@ nextcloud-integration-ui:
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.openxchangeNextcloudIntegrationUI.registry | quote }}
repository: {{ .Values.images.openxchangeNextcloudIntegrationUI.repository | quote }}
tag: {{ .Values.images.openxchangeNextcloudIntegrationUI.tag | quote }}
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
imagePullSecrets:
{{- range .Values.global.imagePullSecrets }}
- name: {{ . | quote }}
@@ -46,6 +47,8 @@ nextcloud-integration-ui:
type: "RuntimeDefault"
seLinuxOptions:
{{ .Values.seLinuxOptions.openxchangeNextcloudIntegrationUI | toYaml | nindent 6 }}
serviceAccount:
create: false
public-sector-ui:
image:
@@ -77,6 +80,8 @@ public-sector-ui:
type: "RuntimeDefault"
seLinuxOptions:
{{ .Values.seLinuxOptions.openxchangePublicSectorUI | toYaml | nindent 6 }}
serviceAccount:
create: false
appsuite:
appsuite-toolkit:
@@ -160,6 +165,8 @@ appsuite:
type: "RuntimeDefault"
seLinuxOptions:
{{ .Values.seLinuxOptions.openxchangeGotenberg | toYaml | nindent 10 }}
serviceAccount:
create: false
hooks:
beforeAppsuiteStart:
create-guard-dir.sh: |
@@ -167,9 +174,17 @@ appsuite:
chown open-xchange:open-xchange /opt/open-xchange/guard-files
packages:
status:
{{- if .Values.functional.migration.oxAppsuite.enabled }}
open-xchange-authentication-masterpassword: "enabled"
open-xchange-authentication-ldap: "disabled"
open-xchange-authentication-oauth: "disabled"
open-xchange-oidc: "disabled"
{{- else }}
open-xchange-oidc: "enabled"
open-xchange-authentication-database: "disabled"
open-xchange-authentication-oauth: "enabled"
open-xchange-authentication-ldap: "disabled"
{{- end }}
properties:
com.openexchange.UIWebPath: "/appsuite/"
com.openexchange.showAdmin: "false"
@@ -247,7 +262,7 @@ appsuite:
com.openexchange.mail.secondary.authType: "XOAUTH2"
com.openexchange.mail.transport.secondary.authType: "xoauth2"
# Nextcloud integration
com.openexchange.file.storage.nextcloud.oauth.url: "http://opendesk-nextcloud-apache2/"
com.openexchange.file.storage.nextcloud.oauth.url: "http://opendesk-nextcloud-aio/"
com.openexchange.file.storage.nextcloud.oauth.webdav.username.strategy: "user"
com.openexchange.nextcloud.filepicker.includeAccessToken: "false"
# Element integration
@@ -275,6 +290,8 @@ appsuite:
com.openexchange.share.cryptKey: {{ .Values.secrets.oxAppsuite.shareCryptKey | quote }}
com.openexchange.conference.element.authToken: {{ .Values.secrets.oxAppsuite.synapseAsToken | quote }}
propertiesFiles:
/opt/open-xchange/etc/masterpassword-authentication.properties:
com.openexchange.authentication.masterpassword.password: {{ .Values.secrets.oxAppsuite.migrationsMasterPassword | quote }}
/opt/open-xchange/etc/AdminDaemon.properties:
MASTER_ACCOUNT_OVERRIDE: "true"
/opt/open-xchange/etc/AdminUser.properties:
@@ -398,6 +415,8 @@ appsuite:
type: "RuntimeDefault"
seLinuxOptions:
{{ .Values.seLinuxOptions.openxchangeCoreUI | toYaml | nindent 8 }}
serviceAccount:
create: false
core-ui-middleware:
enabled: true
@@ -437,6 +456,9 @@ appsuite:
type: "RuntimeDefault"
seLinuxOptions:
{{ .Values.seLinuxOptions.openxchangeCoreUIMiddleware | toYaml | nindent 8 }}
serviceAccount:
create: false
core-cacheservice:
enabled: false
@@ -454,6 +476,7 @@ appsuite:
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.openxchangeDocumentConverter.registry | quote }}
repository: {{ .Values.images.openxchangeDocumentConverter.repository | quote }}
tag: {{ .Values.images.openxchangeDocumentConverter.tag | quote }}
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
podAnnotations: {}
redis: *redisConfiguration
replicaCount: {{ .Values.replicas.openxchangeCoreDocumentConverter }}
@@ -475,6 +498,8 @@ appsuite:
type: "RuntimeDefault"
seLinuxOptions:
{{ .Values.seLinuxOptions.openxchangeDocumentConverter | toYaml | nindent 8 }}
serviceAccount:
create: false
core-documents-collaboration:
enabled: false
@@ -520,6 +545,8 @@ appsuite:
type: "RuntimeDefault"
seLinuxOptions:
{{ .Values.seLinuxOptions.openxchangeCoreGuidedtours | toYaml | nindent 8 }}
serviceAccount:
create: false
core-imageconverter:
enabled: true
@@ -531,6 +558,7 @@ appsuite:
registry: {{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.openxchangeImageConverter.registry | quote }}
repository: {{ .Values.images.openxchangeImageConverter.repository | quote }}
tag: {{ .Values.images.openxchangeImageConverter.tag | quote }}
pullPolicy: {{ .Values.global.imagePullPolicy | quote }}
objectCache:
s3ObjectStores:
- id: -1
@@ -558,6 +586,8 @@ appsuite:
type: "RuntimeDefault"
seLinuxOptions:
{{ .Values.seLinuxOptions.openxchangeImageConverter | toYaml | nindent 8 }}
serviceAccount:
create: false
guard-ui:
enabled: true
@@ -588,6 +618,8 @@ appsuite:
type: "RuntimeDefault"
seLinuxOptions:
{{ .Values.seLinuxOptions.openxchangeGuardUI | toYaml | nindent 8 }}
serviceAccount:
create: false
core-spellcheck:
enabled: false
@@ -620,4 +652,6 @@ appsuite:
type: "RuntimeDefault"
seLinuxOptions:
{{ .Values.seLinuxOptions.openxchangeCoreUserGuide | toYaml | nindent 8 }}
serviceAccount:
create: false
...

View File

@@ -90,7 +90,6 @@ securityContext:
- "SETUID"
- "SETPCAP"
- "NET_BIND_SERVICE"
- "NET_RAW"
- "SYS_CHROOT"
privileged: false
seccompProfile:

View File

@@ -22,7 +22,7 @@ releases:
- "values.yaml.gotmpl"
- {{ .Values.customization.release.openproject | default "additionalValues: false" }}
installed: {{ .Values.openproject.enabled }}
timeout: 1500
timeout: 1800
commonLabels:
deploy-stage: "component-1"

View File

@@ -21,7 +21,7 @@ releases:
- "values.yaml.gotmpl"
- {{ .Values.customization.release.xwiki | default "additionalValues: false" }}
installed: {{ .Values.xwiki.enabled }}
timeout: 900
timeout: 1800
commonLabels:
deploy-stage: "component-1"

View File

@@ -58,7 +58,7 @@ charts:
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/xwiki/charts-mirror"
name: "cryptpad"
version: "0.0.19"
version: "0.0.20"
verify: true
dkimpy:
# providerCategory: "Platform"
@@ -80,7 +80,7 @@ charts:
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/charts/opendesk-dovecot"
name: "dovecot"
version: "1.3.10"
version: "1.4.0"
verify: true
element:
# providerCategory: "Platform"
@@ -144,6 +144,56 @@ charts:
name: "mariadb"
version: "2.3.1"
verify: true
matrixNeoboardWidget:
# providerCategory: "Platform"
# providerResponsible: "openDesk"
# upstreamRegistry: "https://registry.opencode.de"
# upstreamRepository: "bmi/opendesk/components/platform-development/charts/opendesk-matrix-widgets/matrix-neoboard-widget"
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/charts/opendesk-matrix-widgets"
name: "matrix-neoboard-widget"
version: "3.5.0"
verify: true
matrixNeochoiseWidget:
# providerCategory: "Platform"
# providerResponsible: "openDesk"
# upstreamRegistry: "https://registry.opencode.de"
# upstreamRepository: "bmi/opendesk/components/platform-development/charts/opendesk-matrix-widgets/matrix-neochoice-widget"
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/charts/opendesk-matrix-widgets"
name: "matrix-neochoice-widget"
version: "3.5.0"
verify: true
matrixNeodatefixBot:
# providerCategory: "Platform"
# providerResponsible: "openDesk"
# upstreamRegistry: "https://registry.opencode.de"
# upstreamRepository: "bmi/opendesk/components/platform-development/charts/opendesk-matrix-widgets/matrix-neodatefix-bot"
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/charts/opendesk-matrix-widgets"
name: "matrix-neodatefix-bot"
version: "3.5.0"
verify: true
matrixNeodatefixWidget:
# providerCategory: "Platform"
# providerResponsible: "openDesk"
# upstreamRegistry: "https://registry.opencode.de"
# upstreamRepository: "bmi/opendesk/components/platform-development/charts/opendesk-matrix-widgets/matrix-neodatefix-widget"
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/charts/opendesk-matrix-widgets"
name: "matrix-neodatefix-widget"
version: "3.5.0"
verify: true
matrixUserVerificationService:
# providerCategory: "Platform"
# providerResponsible: "openDesk"
# upstreamRegistry: "https://registry.opencode.de"
# upstreamRepository: "bmi/opendesk/components/platform-development/charts/opendesk-element/opendesk-matrix-user-verification-service"
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/charts/opendesk-element"
name: "opendesk-matrix-user-verification-service"
version: "3.4.0"
verify: true
memcached:
# providerCategory: "Community"
# providerResponsible: "openDesk"
@@ -162,7 +212,7 @@ charts:
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/charts/opendesk-migrations"
name: "opendesk-migrations"
version: "1.3.3"
version: "1.3.5"
verify: true
minio:
# providerCategory: "Community"
@@ -182,7 +232,7 @@ charts:
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/charts/opendesk-nextcloud"
name: "opendesk-nextcloud"
version: "3.2.0"
version: "3.3.4"
verify: true
nextcloudManagement:
# providerCategory: "Platform"
@@ -192,7 +242,7 @@ charts:
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/charts/opendesk-nextcloud"
name: "opendesk-nextcloud-management"
version: "3.2.0"
version: "3.3.4"
verify: true
nginx:
# providerCategory: "Community"
@@ -268,7 +318,7 @@ charts:
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/charts/opendesk-open-xchange-bootstrap"
name: "opendesk-open-xchange-bootstrap"
version: "2.0.0"
version: "2.1.0"
verify: true
otterize:
# providerCategory: "Platform"
@@ -332,6 +382,16 @@ charts:
name: "opendesk-synapse"
version: "3.4.1"
verify: true
synapseCreateAccount:
# providerCategory: "Platform"
# providerResponsible: "openDesk"
# upstreamRegistry: "https://registry.opencode.de"
# upstreamRepository: "bmi/opendesk/components/platform-development/charts/opendesk-element/opendesk-synapse-create-account"
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/charts/opendesk-element"
name: "opendesk-synapse-create-account"
version: "3.4.1"
verify: true
synapseWeb:
# providerCategory: "Platform"
# providerResponsible: "openDesk"
@@ -352,6 +412,6 @@ charts:
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/xwiki/charts-mirror"
name: "xwiki"
version: "1.3.1"
version: "1.4.0"
verify: false
...

View File

@@ -29,6 +29,8 @@ cluster:
# The IP/DNS of your load-balancer will be fetched for some components from 'status' map of services.
# Most providers use '.status.loadBalancer.ingress[0].ip' to store public ip. You can modify the chosen field here.
loadBalancerStatusField: "ip"
# Network protocol options: "IPv4", "IPv6", "DualStack"
ipFamilies: "DualStack"
container:
# Used container engine in kubernetes cluster.

View File

@@ -4,8 +4,9 @@
functional:
admin:
portal:
deploymentInformation:
# Disable to not provide and update openDesk release version and deployment timestamp for admins in the portal.
deploymentTimestamp:
# Set to `false` to disable to not provide and update openDesk deployment timestamp for admins in the portal.
# This is helpful in GitOps deployments as with the timestamp there will always be a change detected.
enabled: true
authentication:
@@ -97,4 +98,11 @@ functional:
# If the LDAP entryUUID should be used for the localpart of user's MatrixIDs following setting must be `true`.
useImmutableIdentifierForLocalpart: false
migration:
oxAppsuite:
# Note: Only available in openDesk Enterprise.
# Turn on temporary for migration purposes only. Will enable master password auth in OX AppSuite and Dovecot using
# `secrets.oxAppsuite.migrationsMasterPassword`.
enabled: false
...

View File

@@ -48,12 +48,12 @@ images:
tag: "2.3.21@sha256:c76965a84d1ca527f523404eb027119f6736b199c094e4671037cb345ecad3dc"
element:
# providerCategory: "Supplier"
# providerResponsible: "Element"
# providerResponsible: "Nordeck"
# upstreamRegistry: "https://registry.opencode.de"
# upstreamRepository: "bmi/opendesk/components/supplier/element/images/opendesk-element-web"
# upstreamRepository: "bmi/opendesk/components/supplier/nordeck/images/opendesk-element-web"
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/element/images/opendesk-element-web"
tag: "1.11.4-amd64@sha256:1785ca0dcb608939533ce50067fb17c2152ceff00ea4e17a4cd500930727687b"
repository: "bmi/opendesk/components/supplier/nordeck/images/opendesk-element-web"
tag: "1.11.2@sha256:faf57be74ff715e0f7c833a977f9f7b974ed3230d5d4e30733be7ed01b295a4c"
freshclam:
# providerCategory: "Community"
# providerResponsible: "openDesk"
@@ -146,6 +146,56 @@ images:
registry: "registry-1.docker.io"
repository: "library/mariadb"
tag: "10.5@sha256:aa1ccc18000c32d1f39ac0b055117b27bffd93e622ec961d682de40fe2a1a95f"
matrixNeoBoardWidget:
# providerCategory: "Supplier"
# providerResponsible: "Nordeck"
# upstreamRegistry: "https://ghcr.io"
# upstreamRepository: "nordeck/matrix-neoboard-widget"
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
# upstreamMirrorStartFrom: ["1", "4", "0"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/nordeck/images-mirror/matrix-neoboard-widget"
tag: "1.20.0@sha256:e72bca018af1c0087587f6bcd1748c820ff520c8cf2a042b9b58354cdc878345"
matrixNeoChoiceWidget:
# providerCategory: "Supplier"
# providerResponsible: "Nordeck"
# upstreamRegistry: "https://ghcr.io"
# upstreamRepository: "nordeck/matrix-poll-widget"
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
# upstreamMirrorStartFrom: ["1", "4", "0"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/nordeck/images-mirror/matrix-poll-widget"
tag: "1.4.0@sha256:216cb88aaa47449a15af9a531d60eee593cb1923c4e8fcc67c119982972911e5"
matrixNeoDateFixBot:
# providerCategory: "Supplier"
# providerResponsible: "Nordeck"
# upstreamRegistry: "https://ghcr.io"
# upstreamRepository: "nordeck/matrix-meetings-bot"
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
# upstreamMirrorStartFrom: ["2", "7", "0"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/nordeck/images-mirror/matrix-meetings-bot"
tag: "2.8.0@sha256:db1d99c13a9facfd08a7da1d0a9c7c05715bad47110e93649ad6b389e462b42c"
matrixNeoDateFixWidget:
# providerCategory: "Supplier"
# providerResponsible: "Nordeck"
# upstreamRegistry: "https://ghcr.io"
# upstreamRepository: "nordeck/matrix-meetings-widget"
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
# upstreamMirrorStartFrom: ["1", "6", "0"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/nordeck/images-mirror/matrix-meetings-widget"
tag: "1.6.1@sha256:70bebd9293a977124a5da955e1a520381129d476d6414a083093c1b48a55dadd"
matrixUserVerificationService:
# providerCategory: "Supplier"
# providerResponsible: "Element"
# upstreamRegistry: "https://registry-1.docker.io"
# upstreamRepository: "matrixdotorg/matrix-user-verification-service"
# upstreamMirrorTagFilterRegEx: '^v(\d+)\.(\d+)\.(\d+)$'
# upstreamMirrorStartFrom: ["3", "0", "0"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/element/images-mirror/matrix-user-verification-service"
tag: "v3.0.0@sha256:25e685d595785e2a72e75a525dac78cf8c782445454f8ac090d3702431c38008"
memcached:
# providerCategory: "Community"
# providerResponsible: "openDesk"
@@ -161,7 +211,7 @@ images:
# upstreamRepository: "bmi/opendesk/components/platform-development/images/opendesk-migrations"
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/images/opendesk-migrations"
tag: "1.3.10@sha256:8cdc1d497840bbf3a1d824969e471503b42b8d8fae0ad22c275947085fc3179a"
tag: "1.3.12@sha256:9f9b74970a26a52153c864ab2096449a413a6245679a67b113907c24c2917bce"
milter:
# providerCategory: "Community"
# providerResponsible: "openDesk"
@@ -178,14 +228,14 @@ images:
registry: "registry-1.docker.io"
repository: "bitnami/minio"
tag: "2023@sha256:bced4f2f9fc48b755ebb3e1b35e76195a978d4331bf2d0c6699dab412d3c0be7"
nextcloudApache2:
nextcloud:
# providerCategory: "Platform"
# providerResponsible: "openDesk"
# upstreamRegistry: "https://registry.opencode.de"
# upstreamRepository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud-apache2"
# upstreamRepository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud"
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud-apache2"
tag: "1.2.2@sha256:c8d12747649ca4c686f75f6318f2b10e324260678214a04332a21e591ed80735"
repository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud"
tag: "2.2.1@sha256:81d434d48e562fde6c33ad865970e342a41e3edf5f55c1219623939945ab4478"
nextcloudExporter:
# providerCategory: "Platform"
# providerResponsible: "openDesk"
@@ -194,22 +244,6 @@ images:
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/images/opendesk-nextcloud-exporter"
tag: "1.0.1@sha256:63e63c7420e37d3989fa0ffdbcf18a07b2a603ab9b2a849c2e7e44342dd82af0"
nextcloudManagement:
# providerCategory: "Platform"
# providerResponsible: "openDesk"
# upstreamRegistry: "https://registry.opencode.de"
# 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.6.3@sha256:e048bccfb166bebf2ff97a3b7a473631c17893e544f549534a7e329abdaa772a"
nextcloudPHP:
# providerCategory: "Platform"
# providerResponsible: "openDesk"
# upstreamRegistry: "https://registry.opencode.de"
# 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.12.3@sha256:72e574b5862bb0bd6798754931bc9a5d1092d802c14cb69e40fa5f3b23ba9674"
nubusDataLoader:
# providerCategory: "Supplier"
# providerResponsible: "Univention"
@@ -369,7 +403,7 @@ images:
# upstreamRepository: "bmi/opendesk/components/platform-development/images/opendesk-nubus"
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/images/opendesk-nubus"
tag: "1.5.1@sha256:d4b97a6438e89e747ab38d975895347eec5ecd771af4d35dd0865d98fd585029"
tag: "1.6.10@sha256:e2c9cc4ccb7a28e2b9ff3d71b5230ff921bd7f9a9f541c4ea16af7ecc3f0330b"
nubusOpenPolicyAgent:
# providerCategory: "Supplier"
# providerResponsible: "Univention"
@@ -745,6 +779,24 @@ images:
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/element/images-mirror/synapse"
tag: "v1.115.0@sha256:abf4a5b5b2030f7deb555a8ec7b945607db9e98b057eb06364e66ba8308bdd40"
synapseCreateUser:
# providerCategory: "Community"
# providerResponsible: "Nordeck"
# upstreamRegistry: "https://registry-1.docker.io"
# upstreamRepository: "alpine/k8s"
registry: "registry-1.docker.io"
repository: "alpine/k8s"
tag: "1.30.0@sha256:d7a11b7032550e992667fd7725b039dcd639270fbceec368d7e66e3d9e41ee15"
synapseGuestModule:
# providerCategory: "Supplier"
# providerResponsible: "Nordeck"
# upstreamRegistry: "https://ghcr.io"
# upstreamRepository: "nordeck/synapse-guest-module"
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
# upstreamMirrorStartFrom: ["1", "0", "0"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/nordeck/images-mirror/synapse-guest-module"
tag: "2.0.0@sha256:0fb4ee93cf6fc58f3f3b2f7f8c95d5e6d259b9a5dc354bde516e441187819283"
synapseWeb:
# providerCategory: "Community"
# providerResponsible: "Element"
@@ -770,5 +822,5 @@ images:
# upstreamMirrorStartFrom: ["0", "12"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/xwiki/images-mirror/xwiki"
tag: "0.19-mariadb-jetty-alpine@sha256:8590ee815bceb7764df681b9239b4606adc5b3750e4eff2d928b62dcd046a623"
tag: "0.21-mariadb-jetty-alpine@sha256:87263c92601da812ebe128cf14d632a10a7a2273ab5ee10f8f19ff83a0576cb3"
...

View File

@@ -13,7 +13,8 @@ replicas:
# -- comment: clamav-distributed - requires `ReadWriteMany` PVCs.
clamd: 1
# -- scalable: true
# -- comment: clamav-distributed - You do not want to scale this service, as it just updates the signature files centrally an should be a singleton.
# -- comment: clamav-distributed - You do not want to scale this service, as it just updates the signature files
# centrally an should be a singleton.
freshclam: 1
# -- scalable: true
# -- comment: clamav-distributed - requires `ReadWriteMany` PVCs.
@@ -148,11 +149,9 @@ replicas:
# -- component: Filestore (Nextcloud)
# -- scalable: true
nextcloudApache2: 1
nextcloud: 1
# -- scalable: true
nextcloudExporter: 1
# -- scalable: true
nextcloudPHP: 1
# -- component: Project management (OpenProject)
# -- scalable: true

View File

@@ -204,13 +204,13 @@ resources:
requests:
cpu: 0.25
memory: "256Mi"
nextcloudApache2:
nextcloud:
limits:
cpu: 99
memory: "256Mi"
memory: "1Gi"
requests:
cpu: 0.1
memory: "128Mi"
memory: "512Mi"
nextcloudExporter:
limits:
cpu: 99
@@ -218,13 +218,6 @@ resources:
requests:
cpu: 0.1
memory: "32Mi"
nextcloudPHP:
limits:
cpu: 99
memory: "1Gi"
requests:
cpu: 0.1
memory: "512Mi"
openproject:
limits:
cpu: 99

View File

@@ -7,6 +7,7 @@ SPDX-License-Identifier: Apache-2.0
secrets:
oxAppsuite:
adminPassword: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "ox_appsuite" "admin_password" | sha1sum | quote }}
migrationsMasterPassword: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "opendesk") "ox_appsuite" "migrations_master_password" | sha1sum | quote }}
cookieHashSalt: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "ox_appsuite" "cookie_hash_salt" | sha1sum | quote }}
sessiondEncryptionKey: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "ox_appsuite" "sessiond_encryptionkey" | sha1sum | quote }}
shareCryptKey: {{ derivePassword 1 "long" (env "MASTER_PASSWORD" | default "sovereign-workplace") "ox_appsuite" "share_cryptkey" | sha1sum | quote }}

View File

@@ -34,10 +34,9 @@ seLinuxOptions:
migrations: ~
milter: ~
minio: ~
nextcloudApache2: ~
nextcloud: ~
nextcloudExporter: ~
nextcloudManagement: ~
nextcloudPHP: ~
opendeskKeycloakBootstrap: ~
openproject: ~
openprojectBootstrap: ~
@@ -60,6 +59,8 @@ seLinuxOptions:
prosody: ~
redis: ~
synapse: ~
synapseCreateUser: ~
synapseGuestModule: ~
synapseWeb: ~
umsGuardianAuthorizationApi: ~
umsGuardianManagementApi: ~

View File

@@ -53,4 +53,29 @@ theme:
logoPortalBackgroundSvgB64: {{ readFile "./../../files/theme/logoPortalBackground.svg" | b64enc | quote }}
portalCss: {{ readFile "./../../files/theme/portal.css" | b64enc }}
portalTiles:
adminAnnouncement: {{ readFile "./../../files/portal-tiles/admin_announcement.svg" | b64enc | quote }}
adminContext: {{ readFile "./../../files/portal-tiles/admin_context.svg" | b64enc | quote }}
adminFunctionalmailbox: {{ readFile "./../../files/portal-tiles/admin_functionalmailbox.svg" | b64enc | quote }}
adminGroup: {{ readFile "./../../files/portal-tiles/admin_group.svg" | b64enc | quote }}
adminResource: {{ readFile "./../../files/portal-tiles/admin_resource.svg" | b64enc | quote }}
adminUser: {{ readFile "./../../files/portal-tiles/admin_user.svg" | b64enc | quote }}
anonymousLogin: {{ readFile "./../../files/portal-tiles/anonymous_login.svg" | b64enc | quote }}
dummyCircle: {{ readFile "./../../files/portal-tiles/dummy_circle.svg" | b64enc | quote }}
fileshareActivity: {{ readFile "./../../files/portal-tiles/fileshare_activity.svg" | b64enc | quote }}
fileshareDirectdocOdp: {{ readFile "./../../files/portal-tiles/fileshare_directdoc_odp.svg" | b64enc | quote }}
fileshareDirectdocOds: {{ readFile "./../../files/portal-tiles/fileshare_directdoc_ods.svg" | b64enc | quote }}
fileshareDirectdocOdt: {{ readFile "./../../files/portal-tiles/fileshare_directdoc_odt.svg" | b64enc | quote }}
fileshareFiles: {{ readFile "./../../files/portal-tiles/fileshare_files.svg" | b64enc | quote }}
groupwareCalendar: {{ readFile "./../../files/portal-tiles/groupware_calendar.svg" | b64enc | quote }}
groupwareContacts: {{ readFile "./../../files/portal-tiles/groupware_contacts.svg" | b64enc | quote }}
groupwareMail: {{ readFile "./../../files/portal-tiles/groupware_mail.svg" | b64enc | quote }}
groupwareTasks: {{ readFile "./../../files/portal-tiles/groupware_tasks.svg" | b64enc | quote }}
managementKnowledge: {{ readFile "./../../files/portal-tiles/management_knowledge.svg" | b64enc | quote }}
managementProject: {{ readFile "./../../files/portal-tiles/management_project.svg" | b64enc | quote }}
realtimeCollaboration: {{ readFile "./../../files/portal-tiles/realtime_collaboration.svg" | b64enc | quote }}
realtimeVideoconference: {{ readFile "./../../files/portal-tiles/realtime_videoconference.svg" | b64enc | quote }}
selfserviceChangepassword: {{ readFile "./../../files/portal-tiles/selfservice_changepassword.svg" | b64enc | quote }}
selfserviceEditprofile: {{ readFile "./../../files/portal-tiles/selfservice_editprofile.svg" | b64enc | quote }}
selfserviceProtectaccount: {{ readFile "./../../files/portal-tiles/selfservice_protectaccount.svg" | b64enc | quote }}
...

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#5e27dd"><path d="M716.92-460v-40h129.23v40H716.92Zm43.39 258.46-103.39-77.54 24.93-31.69 103.38 77.54-24.92 31.69Zm-81.54-450.77L653.85-684l103.38-77.54 24.92 31.69-103.38 77.54ZM220-241.54v-152.31h-41.54q-26.84 0-45.73-18.88-18.88-18.89-18.88-45.73v-43.08q0-26.84 18.88-45.73 18.89-18.88 45.73-18.88h149.23L486.15-660v360l-158.46-93.85H260v152.31h-40Zm226.15-129.69v-217.54l-107.23 62.62H178.46q-9.23 0-16.92 7.69-7.69 7.69-7.69 16.92v43.08q0 9.23 7.69 16.92 7.69 7.69 16.92 7.69h160.46l107.23 62.62Zm110.77 6.77v-231.08q20.08 18.62 32.35 48.89 12.27 30.27 12.27 66.65 0 36.38-12.27 66.65-12.27 30.27-32.35 48.89ZM300-480Z"/></svg>

After

Width:  |  Height:  |  Size: 732 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#5e27dd"><path d="M160-440v-295.38q0-27.62 18.5-46.12Q197-800 224.62-800H440v360H160Zm240-40Zm120-320h215.38q27.62 0 46.12 18.5Q800-763 800-735.13V-600H520v-200Zm0 640v-360h280v295.38q0 27.62-18.5 46.12Q763-160 735.38-160H520ZM160-360h280v200H224.62q-27.62 0-46.12-18.5Q160-197 160-224.87V-360Zm240 40Zm160-320Zm0 160Zm-360 0h200v-280H224.62q-10.77 0-17.7 6.92-6.92 6.93-6.92 17.7V-480Zm360-160h200v-95.38q0-10.77-6.92-17.7-6.93-6.92-17.7-6.92H560v120Zm0 160v280h175.38q10.77 0 17.7-6.92 6.92-6.93 6.92-17.7V-480H560ZM200-320v95.38q0 10.77 6.92 17.7 6.93 6.92 17.7 6.92H400v-120H200Z"/></svg>

After

Width:  |  Height:  |  Size: 690 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#5e27dd"><path d="M600-240v89.23q0 12.39-9.19 21.58-9.19 9.19-21.58 9.19H150.77q-12.39 0-21.58-9.19-9.19-9.19-9.19-21.58v-258.46q0-12.39 9.19-21.58 9.19-9.19 21.58-9.19H280v-200q0-83.08 58.46-141.54Q396.92-840 480-840h160q83.08 0 141.54 58.46Q840-723.08 840-640v520h-40v-120H600Zm0-40h200v-360q0-66-47-113t-113-47H480q-66 0-113 47t-47 113v200h249.23q12.39 0 21.58 9.19 9.19 9.19 9.19 21.58V-280ZM420-580v-40h280v40H420Zm-60 294 200-114H160l200 114Zm0 40.77-200-114V-160h400v-199.23l-200 114ZM160-400v240-240Z"/></svg>

After

Width:  |  Height:  |  Size: 615 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#5e27dd"><path d="M103.85-215.38v-65.85q0-27.85 14.42-47.89 14.42-20.03 38.76-32.02 52.05-24.78 103.35-39.51 51.31-14.73 123.47-14.73 72.15 0 123.46 14.73 51.31 14.73 103.35 39.51 24.34 11.99 38.76 32.02 14.43 20.04 14.43 47.89v65.85h-560Zm640 0v-67.7q0-34.77-14.08-65.64-14.07-30.87-39.92-52.97 29.46 6 56.77 16.65 27.3 10.66 54 23.96 26 13.08 40.77 33.47 14.76 20.4 14.76 44.53v67.7h-112.3Zm-360-289.24q-49.5 0-84.75-35.25t-35.25-84.75q0-49.5 35.25-84.75t84.75-35.25q49.5 0 84.75 35.25t35.25 84.75q0 49.5-35.25 84.75t-84.75 35.25Zm290.77-120q0 49.5-35.25 84.75t-84.75 35.25q-2.54 0-6.47-.57-3.92-.58-6.46-1.27 20.33-24.9 31.24-55.24 10.92-30.34 10.92-63.01t-11.43-62.44q-11.42-29.77-30.73-55.62 3.23-1.15 6.46-1.5 3.23-.35 6.47-.35 49.5 0 84.75 35.25t35.25 84.75ZM143.85-255.38h480v-25.85q0-14.08-7.04-24.62-7.04-10.53-25.27-20.15-44.77-23.92-94.39-36.65-49.61-12.73-113.3-12.73-63.7 0-113.31 12.73-49.62 12.73-94.39 36.65-18.23 9.62-25.27 20.15-7.03 10.54-7.03 24.62v25.85Zm240-289.24q33 0 56.5-23.5t23.5-56.5q0-33-23.5-56.5t-56.5-23.5q-33 0-56.5 23.5t-23.5 56.5q0 33 23.5 56.5t56.5 23.5Zm0 289.24Zm0-369.24Z"/></svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#5e27dd"><path d="M180-160v-40h80v-600h320v40h120v560h80v40H660v-560h-80v560H180Zm120-600v560-560Zm160 310.77q12.38 0 21.58-9.19 9.19-9.2 9.19-21.58 0-12.38-9.19-21.58-9.2-9.19-21.58-9.19-12.38 0-21.58 9.19-9.19 9.2-9.19 21.58 0 12.38 9.19 21.58 9.2 9.19 21.58 9.19ZM300-200h240v-560H300v560Z"/></svg>

After

Width:  |  Height:  |  Size: 399 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#5e27dd"><path d="M480-504.62q-49.5 0-84.75-35.25T360-624.62q0-49.5 35.25-84.75T480-744.62q49.5 0 84.75 35.25T600-624.62q0 49.5-35.25 84.75T480-504.62ZM200-215.38v-65.85q0-24.77 14.42-46.35 14.43-21.57 38.81-33.5 56.62-27.15 113.31-40.73 56.69-13.57 113.46-13.57 56.77 0 113.46 13.57 56.69 13.58 113.31 40.73 24.38 11.93 38.81 33.5Q760-306 760-281.23v65.85H200Zm40-40h480v-25.85q0-13.31-8.58-25-8.57-11.69-23.73-19.77-49.38-23.92-101.83-36.65-52.45-12.73-105.86-12.73t-105.86 12.73Q321.69-349.92 272.31-326q-15.16 8.08-23.73 19.77-8.58 11.69-8.58 25v25.85Zm240-289.24q33 0 56.5-23.5t23.5-56.5q0-33-23.5-56.5t-56.5-23.5q-33 0-56.5 23.5t-23.5 56.5q0 33 23.5 56.5t56.5 23.5Zm0-80Zm0 369.24Z"/></svg>

After

Width:  |  Height:  |  Size: 794 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#5e27dd"><path d="M280-430.77q-20.69 0-34.96-14.27T230.77-480q0-20.69 14.27-34.96T280-529.23q20.69 0 34.96 14.27T329.23-480q0 20.69-14.27 34.96T280-430.77ZM280-280q-83.08 0-141.54-58.46Q80-396.92 80-480q0-83.08 58.46-141.54Q196.92-680 280-680q61.62 0 111.12 33.38 49.5 33.39 72.26 86.62h368.16l80 80-127.69 126.15-68.47-51.53-72.3 53.07L571.92-400H463.38q-22.76 52.46-72.26 86.23T280-280Zm0-40q59.08 0 100.81-35.54 41.73-35.54 53.42-84.46h150.39l57.23 38.69 74.3-53.31L781-405.77 855.23-480l-40-40h-381q-11.69-48.92-53.42-84.46Q339.08-640 280-640q-66 0-113 47t-47 113q0 66 47 113t113 47Z"/></svg>

After

Width:  |  Height:  |  Size: 694 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#5e27dd"><path d="M120-561.54v-155.38q0-27.62 18.5-46.12 18.5-18.5 46.12-18.5h590.76q27.62 0 46.12 18.5 18.5 18.5 18.5 46.12v155.38h-40v-155.38q0-9.23-7.69-16.93-7.69-7.69-16.93-7.69H184.62q-9.24 0-16.93 7.69-7.69 7.7-7.69 16.93v155.38h-40Zm64.62 300q-27.62 0-46.12-18.5-18.5-18.5-18.5-46.11v-195.39h40v195.39q0 9.23 7.69 16.92 7.69 7.69 16.93 7.69h590.76q9.24 0 16.93-7.69 7.69-7.69 7.69-16.92v-195.39h40v195.39q0 27.61-18.5 46.11t-46.12 18.5H184.62Zm-113.85 80v-40h818.46v40H70.77Zm409.23-340Zm-360 0v-40h200q5.62 0 10.62 2.92 5 2.93 7.69 8.31L403-421.15l139.15-249.62q2.7-5.15 7.47-7.19Q554.38-680 560-680q5.62 0 10.62 2.04 5 2.04 7.69 7.65l54.38 108.77H840v40H627.69q-8.69 0-16.77-4.73-8.07-4.73-12.3-13.42L558-620.38 418.08-372.31q-2.7 5.39-7.7 8.08-5 2.69-10.61 2.69-5.62 0-10.5-2.92-4.89-2.92-7.58-8.31l-74.38-148.77H120Z"/></svg>

After

Width:  |  Height:  |  Size: 935 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#5e27dd"><path d="M480-480ZM224.62-160q-27.62 0-46.12-18.5Q160-197 160-224.62v-510.76q0-27.62 18.5-46.12Q197-800 224.62-800h280v40h-280q-10.77 0-17.7 6.92-6.92 6.93-6.92 17.7v510.76q0 10.77 6.92 17.7 6.93 6.92 17.7 6.92h510.76q10.77 0 17.7-6.92 6.92-6.93 6.92-17.7v-280h40v280q0 27.62-18.5 46.12Q763-160 735.38-160H224.62Zm46.15-144.62h418.46L560-476.92 440-325.38l-80-96.16-89.23 116.92ZM680-600v-80h-80v-40h80v-80h40v80h80v40h-80v80h-40Z"/></svg>

After

Width:  |  Height:  |  Size: 546 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#5e27dd"><path d="M204.62-160q-27.62 0-46.12-18.5Q140-197 140-224.62v-510.76q0-27.62 18.5-46.12Q177-800 204.62-800h372.3v40h-372.3q-10.77 0-17.7 6.92-6.92 6.93-6.92 17.7v510.76q0 10.77 6.92 17.7 6.93 6.92 17.7 6.92h510.76q10.77 0 17.7-6.92 6.92-6.93 6.92-17.7v-372.3h40v372.3q0 27.62-18.5 46.12Q743-160 715.38-160H204.62Zm84.61-140h40v-240h-40v240ZM440-300h40v-360h-40v360Zm150.77 0h40v-120h-40v120ZM700-640v-80h-80v-40h80v-80h40v80h80v40h-80v80h-40ZM460-480Z"/></svg>

After

Width:  |  Height:  |  Size: 566 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#5e27dd"><path d="M204.62-160q-27.62 0-46.12-18.5Q140-197 140-224.62v-510.76q0-27.62 18.5-46.12Q177-800 204.62-800h372.3v40h-372.3q-9.24 0-16.93 7.69-7.69 7.69-7.69 16.93v510.76q0 9.24 7.69 16.93 7.69 7.69 16.93 7.69h510.76q9.24 0 16.93-7.69 7.69-7.69 7.69-16.93v-372.3h40v372.3q0 27.62-18.5 46.12Q743-160 715.38-160H204.62ZM320-300v-40h280v40H320Zm0-120v-40h280v40H320Zm0-120v-40h280v40H320Zm380-100v-80h-80v-40h80v-80h40v80h80v40h-80v80h-40Z"/></svg>

After

Width:  |  Height:  |  Size: 550 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#5e27dd"><path d="M180-200q-25.31 0-42.65-17.35Q120-234.69 120-260v-435.38q0-25.31 19.65-44.97Q159.31-760 184.62-760h199.23l80 80h311.53q20.7 0 36.12 11.19 15.42 11.19 21.58 28.81H447.77l-80-80H184.62q-10.77 0-17.7 6.92-6.92 6.93-6.92 17.7v430.76q0 8.47 4.23 13.85 4.23 5.39 11.15 9.23L266-544.62h648.62l-90.7 302.24q-5.69 19.07-21.8 30.73Q786-200 766.15-200H180Zm37.08-40h564.46l78.92-264.62H296L217.08-240Zm0 0L296-504.62 217.08-240ZM160-640v-80 80Z"/></svg>

After

Width:  |  Height:  |  Size: 558 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#5e27dd"><path d="M224.62-120q-27.62 0-46.12-18.5Q160-157 160-184.62v-510.76q0-27.62 18.5-46.12Q197-760 224.62-760h70.76v-89.23h43.08V-760h286.16v-89.23h40V-760h70.76q27.62 0 46.12 18.5Q800-723 800-695.38v510.76q0 27.62-18.5 46.12Q763-120 735.38-120H224.62Zm0-40h510.76q9.24 0 16.93-7.69 7.69-7.69 7.69-16.93v-350.76H200v350.76q0 9.24 7.69 16.93 7.69 7.69 16.93 7.69ZM200-575.39h560v-119.99q0-9.24-7.69-16.93-7.69-7.69-16.93-7.69H224.62q-9.24 0-16.93 7.69-7.69 7.69-7.69 16.93v119.99Zm0 0V-720-575.39Zm280 181.54q-12.38 0-21.58-9.19-9.19-9.19-9.19-21.58 0-12.38 9.19-21.57 9.2-9.19 21.58-9.19 12.38 0 21.58 9.19 9.19 9.19 9.19 21.57 0 12.39-9.19 21.58-9.2 9.19-21.58 9.19Zm-160 0q-12.38 0-21.58-9.19-9.19-9.19-9.19-21.58 0-12.38 9.19-21.57 9.2-9.19 21.58-9.19 12.38 0 21.58 9.19 9.19 9.19 9.19 21.57 0 12.39-9.19 21.58-9.2 9.19-21.58 9.19Zm320 0q-12.38 0-21.58-9.19-9.19-9.19-9.19-21.58 0-12.38 9.19-21.57 9.2-9.19 21.58-9.19 12.38 0 21.58 9.19 9.19 9.19 9.19 21.57 0 12.39-9.19 21.58-9.2 9.19-21.58 9.19ZM480-240q-12.38 0-21.58-9.19-9.19-9.19-9.19-21.58 0-12.38 9.19-21.58 9.2-9.19 21.58-9.19 12.38 0 21.58 9.19 9.19 9.2 9.19 21.58 0 12.39-9.19 21.58Q492.38-240 480-240Zm-160 0q-12.38 0-21.58-9.19-9.19-9.19-9.19-21.58 0-12.38 9.19-21.58 9.2-9.19 21.58-9.19 12.38 0 21.58 9.19 9.19 9.2 9.19 21.58 0 12.39-9.19 21.58Q332.38-240 320-240Zm320 0q-12.38 0-21.58-9.19-9.19-9.19-9.19-21.58 0-12.38 9.19-21.58 9.2-9.19 21.58-9.19 12.38 0 21.58 9.19 9.19 9.2 9.19 21.58 0 12.39-9.19 21.58Q652.38-240 640-240Z"/></svg>

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#5e27dd"><path d="M480-418.46q25.31 0 42.65-17.35Q540-453.15 540-478.46t-17.35-42.66q-17.34-17.34-42.65-17.34t-42.65 17.34Q420-503.77 420-478.46q0 25.31 17.35 42.65 17.34 17.35 42.65 17.35ZM340-283.08h280v-6.07q0-18.62-9.92-31.7-9.93-13.07-26.77-20.77-23.69-10.23-49.66-15.84-25.96-5.62-53.65-5.62-27.69 0-53.65 5.62-25.97 5.61-49.66 15.84-16.84 7.7-26.77 20.77-9.92 13.08-9.92 31.7v6.07ZM695.38-120H264.62q-27.62 0-46.12-18.5Q200-157 200-184.62v-590.76q0-27.62 18.5-46.12Q237-840 264.62-840h278.46L760-623.08v438.46q0 27.62-18.5 46.12Q723-120 695.38-120Zm0-40q9.24 0 16.93-7.69 7.69-7.69 7.69-16.93V-606L526-800H264.62q-9.24 0-16.93 7.69-7.69 7.69-7.69 16.93v590.76q0 9.24 7.69 16.93 7.69 7.69 16.93 7.69h430.76ZM240-160v-640 640Z"/></svg>

After

Width:  |  Height:  |  Size: 838 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#5e27dd"><path d="M184.62-200q-27.62 0-46.12-18.5Q120-237 120-264.62v-430.76q0-27.62 18.5-46.12Q157-760 184.62-760h590.76q27.62 0 46.12 18.5Q840-723 840-695.38v430.76q0 27.62-18.5 46.12Q803-200 775.38-200H184.62ZM480-475.38 160-684.62v420q0 10.77 6.92 17.7 6.93 6.92 17.7 6.92h590.76q10.77 0 17.7-6.92 6.92-6.93 6.92-17.7v-420L480-475.38Zm0-44.62 307.69-200H172.31L480-520ZM160-684.62V-720v455.38q0 10.77 6.92 17.7 6.93 6.92 17.7 6.92H160v-444.62Z"/></svg>

After

Width:  |  Height:  |  Size: 554 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#5e27dd"><path d="M645.36-248.05 531.82-361.59l23.33-23.33 89.88 89.2 172.41-172.92 23.33 24.33-195.41 196.26Zm0-289.23L531.82-650.82l23.33-23.33 89.88 89.2 172.41-172.92 23.33 24.33-195.41 196.26ZM120-318.46v-33.85h320v33.85H120Zm0-289.23v-33.85h320v33.85H120Z"/></svg>

After

Width:  |  Height:  |  Size: 368 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#5e27dd"><path d="M480-113.85q-27.62 0-48.04-18.5-20.42-18.5-24.27-46.11h144.62q-3.85 27.61-24.27 46.11-20.42 18.5-48.04 18.5ZM340-249.23v-40h280v40H340ZM342.31-360q-56.69-37.15-89.5-94.23Q220-511.31 220-580q0-108.85 75.58-184.42Q371.15-840 480-840t184.42 75.58Q740-688.85 740-580q0 68.69-32.81 125.77T617.69-360H342.31ZM354-400h252q45-32 69.5-79T700-580q0-92-64-156t-156-64q-92 0-156 64t-64 156q0 54 24.5 101t69.5 79Zm126 0Z"/></svg>

After

Width:  |  Height:  |  Size: 532 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#5e27dd"><path d="M264.62-299.85h190.76v-33.84H264.62v33.84Zm120-163.23h190.76v-33.84H384.62v33.84Zm120-163.23h190.76v-33.84H504.62v33.84ZM218.46-160q-24.58 0-41.52-16.94Q160-193.88 160-218.46v-523.08q0-24.58 16.94-41.52Q193.88-800 218.46-800h523.08q24.58 0 41.52 16.94Q800-766.12 800-741.54v523.08q0 24.58-16.94 41.52Q766.12-160 741.54-160H218.46Zm0-33.85h523.08q9.23 0 16.92-7.69 7.69-7.69 7.69-16.92v-523.08q0-9.23-7.69-16.92-7.69-7.69-16.92-7.69H218.46q-9.23 0-16.92 7.69-7.69 7.69-7.69 16.92v523.08q0 9.23 7.69 16.92 7.69 7.69 16.92 7.69Zm-24.61-572.3V-193.85-766.15Z"/></svg>

After

Width:  |  Height:  |  Size: 679 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#5e27dd"><path d="M824.62-187.69 701.54-310.77H320q-25.38 0-43.46-18.08-18.08-18.07-18.08-43.46v-9.23h430.77q26.65 0 45.64-18.98 18.98-18.98 18.98-45.63V-720h9.23q25.38 0 43.46 18.08 18.08 18.07 18.08 43.46v470.77ZM175.38-435.31l66.24-66.23h367.61q10.77 0 17.69-6.92 6.93-6.92 6.93-17.69v-249.23q0-10.77-6.93-17.7Q620-800 609.23-800H200q-10.77 0-17.69 6.92-6.93 6.93-6.93 17.7v340.07Zm-40 96.85v-436.92q0-26.66 18.99-45.64Q173.35-840 200-840h409.23q26.65 0 45.64 18.98 18.98 18.98 18.98 45.64v249.23q0 26.65-18.98 45.63-18.99 18.98-45.64 18.98H258.46L135.38-338.46Zm40-187.69V-800-526.15Z"/></svg>

After

Width:  |  Height:  |  Size: 695 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#5e27dd"><path d="M820.09-310.77q-16.63 0-28.36-11.67Q780-334.1 780-350.77v-100q0-16.67 11.64-28.33 11.64-11.67 28.27-11.67t28.36 11.67Q860-467.44 860-450.77v100q0 16.67-11.64 28.33-11.64 11.67-28.27 11.67Zm-15.47 146.15v-61.23q-49.47-8-78.97-41.88-29.5-33.89-31.8-83.04h30.77q0 39.69 27.66 67.54 27.66 27.85 67.72 27.85t67.72-27.67q27.66-27.66 27.66-67.72h30.77q-2.3 49.15-31.42 83.04-29.11 33.88-79.35 41.8v61.31h-30.76ZM346.15-506.15q-44.46-1.54-76.84-35.47-32.39-33.92-32.39-83 0-49.07 32.39-83 32.38-33.92 76.84-35.46 2.97 0 5.83.46 2.87.47 6.64 1.62-19.08 21-28.85 49.88-9.77 28.89-9.77 66.5 0 37.62 9.38 65.74 9.39 28.11 29.24 50.65-3 1.15-6.12 1.61-3.12.47-6.35.47ZM76.92-215.38V-281q0-20.92 11.23-40.69 11.23-19.77 34.31-34.77 18-10.77 40.58-19.5t47.11-13.66q-23.84 17.24-37 44.85Q160-317.15 160-281v65.62H76.92ZM520-504.62q-49.5 0-84.75-35.25T400-624.62q0-49.5 35.25-84.75T520-744.62q49.5 0 84.75 35.25T640-624.62q0 49.5-35.25 84.75T520-504.62Zm0-40q33 0 56.5-23.5t23.5-56.5q0-33-23.5-56.5t-56.5-23.5q-33 0-56.5 23.5t-23.5 56.5q0 33 23.5 56.5t56.5 23.5ZM240-215.38V-281q0-24.77 14.31-46.46t38.92-33.62q47.92-23.69 107.42-39 59.5-15.3 119.35-15.3 25.85 0 54.65 3.96 28.81 3.96 53.66 10.34-3.85 8-6.12 18.66-2.27 10.65-3.5 20.11-24.23-6.92-49.73-10-25.5-3.07-48.96-3.07-63.54 0-116.73 15.3-53.19 15.31-90.73 34.08-15.39 7.31-23.96 19.5Q280-294.31 280-281v25.62h360.08q6.54 12.15 14.69 21.76 8.15 9.62 18.23 18.24H240Zm280-409.24Zm0 369.24Z"/></svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#5e27dd"><path d="M186.15-186.15v-40h123.62Q238-288.62 209-349.08q-29-60.46-29-127.84 0-98.16 56.08-176.35Q292.15-731.46 380-762.31v42.46q-71.54 29.62-115.77 96.12Q220-557.23 220-476.92q0 60.92 25.73 112.19 25.73 51.27 91.19 108.88v-121.07h40v190.77H186.15ZM740-478.46q0-62.54-25.88-114.35-25.89-51.81-91.04-110.57v120.3h-40v-190.77h190.77v40H650.23q75.92 64.54 103.5 129.27T780-478.46h-40ZM646.15-90.77q-14.69 0-25.8-11.11-11.12-11.12-11.12-25.81v-107.69q0-14.7 11.12-25.81 11.11-11.12 25.8-11.12H650v-40q0-29.92 20.42-50.34 20.43-20.43 50.35-20.43t50.35 20.43q20.42 20.42 20.42 50.34v40h3.84q14.7 0 25.04 11.12 10.35 11.11 10.35 25.81v107.69q0 14.69-11.12 25.81-11.11 11.11-25.8 11.11h-147.7Zm34.62-181.54h80v-40q0-17-11.5-28.5t-28.5-11.5q-17 0-28.5 11.5t-11.5 28.5v40Z"/></svg>

After

Width:  |  Height:  |  Size: 878 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#5e27dd"><path d="M184.62-120q-27.62 0-46.12-18.5Q120-157 120-184.62v-390.76q0-27.62 18.5-46.12Q157-640 184.62-640H400v-160q0-16.85 11.58-28.42Q423.15-840 440-840h80q16.85 0 28.42 11.58Q560-816.85 560-800v160h215.38q27.62 0 46.12 18.5Q840-603 840-575.38v390.76q0 27.62-18.5 46.12Q803-120 775.38-120H184.62Zm0-40h590.76q10.77 0 17.7-6.92 6.92-6.93 6.92-17.7v-390.76q0-10.77-6.92-17.7-6.93-6.92-17.7-6.92H560v30.77q0 16.08-11.96 28.04T520-529.23h-80q-16.08 0-28.04-11.96T400-569.23V-600H184.62q-10.77 0-17.7 6.92-6.92 6.93-6.92 17.7v390.76q0 10.77 6.92 17.7 6.93 6.92 17.7 6.92Zm67.69-103.08h215.38v-5.69q0-13.92-7.57-25.35-7.58-11.42-20.74-17.88-19.23-8.23-38.96-12.35-19.73-4.11-40.42-4.11t-40.42 4.11q-19.73 4.12-38.96 12.35-13.16 6.46-20.74 17.88-7.57 11.43-7.57 25.35v5.69ZM560-324.62h160V-360H560v35.38ZM360-360q19.62 0 33.65-14.04 14.04-14.04 14.04-33.65 0-19.62-14.04-33.66-14.03-14.03-33.65-14.03-19.62 0-33.65 14.03-14.04 14.04-14.04 33.66 0 19.61 14.04 33.65Q340.38-360 360-360Zm200-60h160v-35.38H560V-420ZM440-569.23h80V-800h-80v230.77ZM480-380Z"/></svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#5e27dd"><path d="M184.62-200q-27.62 0-46.12-18.5Q120-237 120-264.62v-430.76q0-27.62 18.5-46.12Q157-760 184.62-760h590.76q27.62 0 46.12 18.5Q840-723 840-695.38V-591h-40v-93.62L480-475.38 160-684.62v420q0 10.77 6.92 17.7 6.93 6.92 17.7 6.92h440v40h-440ZM480-520l307.69-200H172.31L480-520ZM160-240v-480 480Zm580 40q-14.69 0-25.04-10.35-10.34-10.34-10.34-25.03v-120q0-14.7 11.5-25.04 11.5-10.35 28.5-10.35v-44.61q0-31.47 21.96-53.43T820-510.77q31.46 0 53.42 21.96t21.96 53.43v44.61q17 0 28.5 10.35 11.5 10.34 11.5 25.04v120q0 14.69-10.34 25.03Q914.69-200 900-200H740Zm35.38-190.77h89.24v-44.61q0-18.54-13.04-31.58T820-480q-18.54 0-31.58 13.04t-13.04 31.58v44.61Z"/></svg>

After

Width:  |  Height:  |  Size: 766 B