mirror of
https://gitlab.opencode.de/bmi/opendesk/deployment/opendesk.git
synced 2025-12-06 07:21:36 +01:00
89 lines
3.6 KiB
Markdown
89 lines
3.6 KiB
Markdown
<!--
|
|
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)
|