Upload
others
View
4
Download
0
Embed Size (px)
Citation preview
Plone bei derDeutschen Physikalischen
Gesellscha� (DPG)André Wobst
https://[email protected]
Deutsche Physikalische Gesellscha� (DPG)größte physikalische Fachgesellscha� der Welt(deutlich über 50.000 Mitglieder)Ursprünge bis hin zur Physikalischen Gesellscha� zuBerlin, gegründet 1845, also 175 Jahre
Alte Seite (Dez. 2005 - Jan. 2019)Zope3 basiert mit einfachen, eigenenKomponenten/AnpassungenPAS Pluggin für Benutzer und GruppenFTP-Adapter für IO (Laden in die ZODB; täglichesdump in ein subversion repository; virtuelle Dateienfür Ordner-Eigenscha�en (Menü, Layout,Zugriffsrechte))
Neustart live seit Feb. 2019Plone 5.1intrinsische Zweisprachigkeit (mittels behaviors:titel, titel_en, description, description_en, text,text_en)Theme, PAS plugin, eigene Komponenten inZusammenarbeit mit der kitconcept GmbHNächste Schritte: Weitere Komponenten undAnwendungen, Plone 5.2, Python 3
Vorbereiten/Einspielen der initialen DatenNeue Baumstruktur im Dateisystem, dort auch neueInhalteInhalte aus alten dumps (verwiesen in der neuenStruktur)Kalender mit 3.700+ Eventsgescripted per Plone REST API (als one-shot)nach dem Einspielen der Inhalte ersetzen der Linksund img-src-Attribute mit UIDs (PATCH der neuenInhalte)
Dump-Load-ZyklusPlone REST API IO: prestio
dump konfigurierbar per prestio.cfgsehr feinteilig: Attribute werden eigene Dateienload nutzt Verzeichnisbaumload wieder zweistufig: UIDs in Links und img-src-Attributen der Seiteninhalte patchenerzeugt also „tiefe” Kopien
https://pypi.org/project/prestiohttps://github.org/wobsta/prestio
https://pypi.org/project/prestiohttps://github.org/wobsta/prestio
Dump step-by-stepneue Plone InstanzOrdner muster mit Datei, Bild, Seite mit Linksprestio --password admin dump
http://127.0.0.1:8080/Plone/muster .
Daten werden ins Filesystem gedumpt
Load step-by-stepcp -a muster work
prestio --password admin load work
http://127.0.0.1:8080/Plone
nur Inhalte, Nacharbeiten erfolderlichBeispiele für Nacharbeiten:plone.app.layout.navigation.
interfaces.INavigationRoot
Navigation portlet
Dump für Inhalts-Monitoringdump wie gehabt, allerdings mit umfangreicherprestio.cfg
check-in in ein repositoryErfassung von Änderungen, Historie
Danke!
Fragen?
https://pypi.org/project/prestio
https://github.org/wobsta/prestio
https://pypi.org/project/prestiohttps://github.org/wobsta/prestio