Sektionen
Benutzerspezifische Werkzeuge
Sie sind hier: Startseite Community Vorträge Wiederverwertbarkeit in Plone dank GenericSetup

Wiederverwertbarkeit in Plone dank GenericSetup

Als Präsentation anzeigen ...

Gliederung

  1. Ziel des Vortrages
  2. Abhängigkeiten durch InstallRequires
  3. GenericSetup
  4. Wiederverwertbarkeit durch GenericSetup und InstallRequires
  5. Fragen

1. Ziel des Vortrages

Einhaltung des Prinzipes "Don't Repeat Yourself!"

2. Abhängigkeiten durch InstallRequires

folgendes Szenario:

  • Kunde möchte Paket A
  • Paket A hat Abhängigkeiten
    zu den Paketen B und C
  • Paket C hat Abhängigkeiten
    zu dem Paket D
  • Paket B hat Abhängigkeiten
    zu ...
paket_a4.png

 

Lösung dieses Problems: Abhängigkeiten definieren.

Abhängigkeiten zu definieren ist schon lange Standard und ist in fast allen Paketen enthalten.

  • Was hat das Ganze mit GenericSetup zu tun?
  • Wieso spart man sich Arbeit, wenn es schon längst gang und gäbe ist?

 

3. GenericSetup

  1. Was ist GenericSetup
  2. Setup Profile
  3. Die XML Datein
  4. Der leichte Weg

3.1 Was ist GenericSetup?

 

"GenericSetup is a major step forward in managing Plone site configuration, and GenericSetup is a core part of how Plone handles its own site creation process."

~ Rob Miller, Understanding and Using GenericSetup in Plone http://plone.org/

 

  • ... ist eine Möglichkeit seine Seite effizient zu konfigurieren.
  • ... bietet eine Vielzahl von Möglichkeiten.
  • ... sind größtenteils simple XML Datein.

3.2 Setup Profile

Ein Setup Profile ist eine Zusammenstellung von XML Dateien, welche die Konfiguration Ihrer Seite beschreiben.

  • beschreiben keine Arbeitsschritte sondern das Ergebnis
  • flexibel durch Möglichkeit, mehrere Profile in einem Packet zu definieren
  • kann die gesamte Seitenkonfiguration enthalten

3.3 Die XML Datein

<?xml version="1.0"?>
<object name="portal_catalog">
[...]
</object>

Was kann man modifizieren?

  • catalog
  • cssregistry
  • jsregistry
  • mailhost
  • propertiestool
  • properties
  • rolemap
  • skins
  • structure
  • toolset
  • types
  • workflows

3.4 der leichte Weg

Seite von Hand konfigurieren und dann exportieren.

Beispiel: E-Mail konfiguration

Schritt1: Zum Plone-CcontrolPanel wechseln.

email_config.png

Schritt 2: In die MailHost Konfiguarion gehen.

email_config_2.png

Schritt 3: Konfiguration vornehmen und speichern.

email_config_3.png

Schritt 4: Ins Zope-Management-Interface wechseln.

email_config_4.png

Schritt 5: Den Punkt portal_setup suchen.

email_config_5.png

Schritt 6: Auf den Reiter Export wechseln.

email_config_6.png

Schritt 7: Checkbox vor MailHost anklicken und anschließend auf "Export selected steps".

email_config_7.png

Ergebnis: Eine gepackte XML Datei, welche unsere MailHost-Einstellungen enthält.

4. Wiederverwertbarkeit durch GenericSetup und InstallRequires

Wie erreichen wir nun leichte Wiederverwertbarkeit?

policy_8.png

Wir definieren uns ein basepolicy-Produkt, welche alle Änderungen enthält, welche jedes mal getätigt werden müssen, wie zum Beispiel: MailHost-Einstellungen, Registrierungsmöglichkeiten oder das aktivieren von Workflows für Bilder und Dateien. Anschließend erstellen wir uns weitergehende Policyprodukte, welche die basepolicy als Abhänigkeit haben. In den weitergehenden Produkten können Dinge wie eine vorgefertigte Ordnerstruktur oder spezielle Workflows enthalten sein. Zu guter Letzt, erstellen wir Pakete, welche Abhängigkeiten zu einem der Policyprodukte, Themingprodukten und anderen zusätzlichen Produkten hat. Durch die Abhängigkeiten reicht es das abschließende Paket zu installieren.