uSync all the things
Wir schreiben das Jahr 2022 und es ist Codegarden-Zeit! Als ich den Bahnhof (bzw. mein Hotel gleich nebenan) in Odense verließ und mich auf den Weg zum Veranstaltungsort machte, sprang mir ein riesiges Plakat ins Blickfeld.
Mein erster Gedanke war:
Ist es das, was ich glaube, das es ist?
Nee, das kann nicht sein - oder?
Es stellte sich heraus, dass es genau das war und es vielen ähnlich erging. Es handelte sich um eine Aktion von Kevin Jump alias Jumoo. Zugegeben war mir die besagte Erweiterung (Package) für Umbraco nur wage geläufig und produktiv hatte ich es noch nicht eingesetzt.
Bei uSync handelt es sich um eine geniale Lösung, um alle Änderungen von einer Umbraco-Umgebung in eine andere zu bringen.
Dabei kann man entweder die reinen Schema-Daten, wie Dokumenttypen, Datentypen, Übersetzungen etc. die sich ausschließlich in der Datenbank befinden, oder nur Inhalte wie Texte und verknüpfte Mediendateien oder auch beides in einem Schritt übertragen.
Das Funktionsprinzip ist einfach: Alle Datenbankeinträge, werden in XML-Dateien exportiert. Diese können dann zusammen mit anderen geänderten Dateien (DLLs, Media-Verzeichnis, Views, etc.) per Dateiübertragung (z. B. FTP) in die Zielumgebung transferiert werden. In der Zielumgebung werden diese dann importiert. Klingt einfach, aber die Komplexität liegt im Abgleich der verschiedene IDs und vorhandenem mit importierten Daten.
uSync steht in direkter Konkurrenz zum Umbraco eigenen Paket Umbraco Deploy. Allerdings wurde Deploy zuerst nur in der Umbraco Cloud Lösung angeboten und ist erst seit 2022 auch on-premise Umgebungen. Der Preis machtes allerdings zu einem Enterprise-Produkt. Wohingegen uSync seine Basisfunktionen kostenlos anbietet.
Die uSync Übersicht (Dashboard)
Bedienen lässt sich uSync in Einstellungen (Settings) Bereich der Website-Administration (Back-Office). Dort hat es seinen eigenen Eintrag im linken Menü.
Im Grunde erklärt sich die Funktionalität von selbst. In der Entwicklungsumgebung exportiert man z. B. Settings. Die aktualisierten Dateien überträgt man per FTP in die Online-Umgebung. In der Online-Umgebung genügt dann ein Klick auf Import unter Settings.
Sollte man Inhalte aus der Online-Umgebung in der Entwicklungsumgebung benötigen, so verfährt man genau anders herum mit den Content-Funktionen.
Ansonsten hilft die detaillierte Dokumentation sicher weiter.
Dateien für den Austausch
uSync exportiert relevante Datenbankinhalte in Dateien. Diese kann man z. B. per FTP hochladen.
Auch wenn der Nachfolgende Screenshot vermuten lässt, dass uSync nur für Version 9 ist, so täuscht dies. Ich selbst habe uSync mit Umbraco Version 10.3.2 ausprobiert und keine Problem festgestellt.