Page MenuHomePhorge

No OneTemporary

Authored By
Unknown
Size
3 KB
Referenced Files
None
Subscribers
None
diff --git a/docs/docs/administration/migration.md b/docs/docs/administration/migration.md
new file mode 100644
index 0000000..22bc1df
--- /dev/null
+++ b/docs/docs/administration/migration.md
@@ -0,0 +1,44 @@
+# Migration
+
+!!! warning
+
+ Please note that this site is currently work in progress.
+
+
+## Migrating from Kolab 16
+
+Migrating from Kolab 16 implies migrating the data, and converting from the Kolab 3 storage format to the Kolab 4 storage format.
+
+While it is technically possible to migrate in-place, the recommended way to migrate is to import the data, and convert it
+during the import, using the Kolab 4 migration tooling.
+
+
+```
+ kubectl exec -i --tty=false deployment/horizon -- env APP_DEBUG=0 php -dmemory_limit=512M ./artisan data:migrate --force --sync "kolab3://$USER:$PASSWORD@imap?dav_protocol=dav&dav_host=roundcube&dav_path=/dav" "kolab://$USER:$PASSWORD@imap?dav_protocol=dav&dav_path=/dav"
+```
+
+The above migration will execute the following steps:
+
+* Email will be migrated via IMAP
+* Calendars and Tasks will be migrated via CalDAV
+* Contacts will be migrated via CardDAV
+* Notes will *not* be migrated
+* Tags will be extracted from Kolab Configuration Objects, and applied as IMAP Tags
+
+The migration can be re-run to import new data and flag changes, but it will not remove deleted messages/folders.
+
+## IMAP migration
+
+The target user must already exist for this to work.
+
+With cyrus proxy authorization on the source server:
+
+```
+ kubectl exec -i --tty=false deployment/horizon -- env APP_DEBUG=0 php -dmemory_limit=512M ./artisan data:migrate --force --sync "imaps://cyrus-admin:$ADMIN_PASSWORD@source.imap.server:993?user=$SOURCEUSER" "imap://cyrus-admin:$TARGET_ADMIN_PASSWORD@imap?user=$TARGETUSER"
+```
+
+Without cyrus proxy authorization on the source server:
+
+```
+ kubectl exec -i --tty=false deployment/horizon -- env APP_DEBUG=0 php -dmemory_limit=512M ./artisan data:migrate --force --sync "imaps://$SOURCEUSER:$PASSWORD@source.imap.server:993" "imap://cyrus-admin:$TARGET_ADMIN_PASSWORD@imap?user=$TARGETUSER"
+```
diff --git a/docs/mkdocs.yml b/docs/mkdocs.yml
index 7f2d4c8..830a02c 100644
--- a/docs/mkdocs.yml
+++ b/docs/mkdocs.yml
@@ -1,51 +1,51 @@
---
site_name: Kolab Documentation 4.0.16
site_url: https://docs.kolab.org/
repo_name: kolab-infrastructure
repo_url: https://git.kolab.org/source/kolab-infrastructure
theme:
name: material
palette:
primary: grey
accent: custom
font:
text: Nunito
logo: assets/mail-blue.png
favicon: assets/mail-blue.png
features:
- navigation.sections
- navigation.instant
- navigation.tabs
- navigation.top
- navigation.tracking
- navigation.indexes
- search.highlight
- search.share
- search.suggest
- toc.follow
plugins:
- privacy
extra_css:
- stylesheets/extra.css
markdown_extensions:
- admonition
- pymdownx.details
- pymdownx.superfences
nav:
- Home: index.md
- Overview:
- About: overview/about.md
- Deploy:
- deploy/index.md
- Quickstart: deploy/quickstart.md
- Supported Platforms: deploy/supported-platforms.md
- About Kolab on Kubernetes: deploy/about-kolab-on-kubernetes.md
- Reference Architectures:
- deploy/reference-architectures/index.md
- Single Node K3s: deploy/reference-architectures/single-node-k3s.md
- Replicated K3s: deploy/reference-architectures/replicated-k3s.md
- Kubernetes Cluster: deploy/reference-architectures/kubernetes-cluster.md
- Networking: deploy/networking.md
- Administration:
- Notes: administration/notes.md
-
+ - Migration: administration/migration.md

File Metadata

Mime Type
text/x-diff
Expires
Sat, Apr 4, 3:22 AM (1 d, 14 h)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
18822393
Default Alt Text
(3 KB)

Event Timeline