Communardo Software GmbH, Kleiststraße 10 a, D-01129 Dresden
0800 1 255 255

Administration mit Hilfe von Skripten in Confluence

Mitunter kommt es zu Situation bei wel­chen in Confluence eine bestimmte Datenstruktur her­ge­stellt wer­den muss. Als Beispiel wäre hier das Vorbereiten einer bestimm­ten Bereich/Seiten-Struktur für einen Kunden zu nen­nen. Oder das Zuordnen eines bestimm­ten Themes zu bestimm­ten Bereichen. Solche Aufgaben las­sen sich auch bei Confluence über ein Skript lösen.
Für die Erstellung einer Bereich/Seiten-Struktur steht die Confluence-CLI zur Verfügung. Diese lässt sich hier her­un­ter­la­den. Weiterhin muss Confluence externe Zugriffe erlauben.
Dazu akti­viert man über "Confluence Administration" -> "Allgemeine Konfiguration" die Option "Entfernte API (XML-RPC & SOAP)".
Nun kann man durch einen ein­fa­chen Konsolenbefehl einen neuen Space anlegen:
confluence --server http://localhost:8080/confluence --password IHRPASSWORT --user IHR_ADMIN_NUTZER --action addSpace  --space "confluencecli"
und zu die­sem eine neue Seite:
confluence --server http://localhost:8080/confluence --password IHRPASSWORT --user IHR_ADMIN_NUTZER --action storePage  --space "confluencecli"  --title "Meine Testseite"  --content "Mein Inhalt"
In der Dokumentation zur Confluence CLI befin­den sich Befehle für das Verwalten von Labels, Nutzern, Gruppen und vie­len mehr. Kombiniert man diese Befehle in einer Skriptdatei las­sen sich sehr ein­fach kom­plexe Datenstrukturen aufbauen.
Leider las­sen sich nicht alle Wünsche über die Confluence CLI abbil­den. Möchte man zum Beispiel das Theme bestimm­ter Bereiche ändern geht dies über das direkte Aufrufen der dazu­ge­hö­ri­gen Action.
Folgender Aufruf setzt das Communardo Theme mit der id "de.communardo.confluence.communardo.theme:communardo-theme" für den Bereich mit dem Bereichsschlüssel "testspace1":
http://localhost:8080/confluence/spaces/dochoosetheme.action?key=testspace1&themeKey=de.communardo.confluence.communardo.theme:communardo-theme
Damit der Aufruf in einem Script funk­tio­niert wer­den aber wei­tere Parameter Benötigt:
  • os_username – Name des Nutzers der diese Action auführt
  • os_password – pass­wort des Nutzers der diese Action ausführt
  • os_authType=basic – Setzt die Basis Authentifizierung
Confluence sichert jedes Form intern mit einem "atl_token" wel­ches eine ID enhält die intern geprüft wird. Wird die­ses Token nicht mit­ge­ge­ben wird die Anfrage als Fehler zurück­ge­ge­ben. Umgehen lässt sich dies in dem man den Header der Anfrage um "X‑Atlassian-Token: no-check" erwei­tert. Eine sol­che Anfrage ist zum Beispiel mit dem Programm "wget" (link) mög­lich.
Unter Windows würde ein sol­cher Befehl so aus­se­hen ("^" dient zum escapen des Sonderzeichens "&" in der Windows Konsole):
wget --header="X-Atlassian-Token: no-check" http://localhost:8080/confluence/spaces/dochoosetheme.action?key=testspace1^&os_authType=basic^&os_username=admin^&os_password=admin^&themeKey=de.communardo.confluence.communardo.theme:communardo-theme
24. März 2011

Pin It on Pinterest