Von Version < 1.35 >
bearbeitet von awa
am 24.03.2020, 09:00
Auf Version < 1.36 >
bearbeitet von tkr
am 25.03.2020, 08:27
< >
Änderungskommentar: Es gibt keinen Kommentar für diese Version

Zusammenfassung

Details

Seiteneigenschaften
Dokument-Autor
... ... @@ -1,1 +1,1 @@
1 -XWiki.awa
1 +XWiki.tkr
Inhalt
... ... @@ -7,6 +7,8 @@
7 7  * Plugin-Entwickler können beim Maven-Build das Plugin automatisch am Ende des Builds hochladen. So kann der Entwickler schneller testen.
8 8  * Eine Installation auf einem Live-System kann so weiter automatisiert werden.
9 9  
10 +Um Plugins einfach deployen zu können, empfiehlt sich der Quick Start über das Maven-Deploy-Plugin (siehe Kapitel 4. unten). Es folgt zunächst eine genaue Beschreibung des Plugins.
11 +
10 10  Das Deploy-Plugin kann sowohl als Mandant-Plugin als auch als System-Plugin installiert werden. Es enthält eine [[Servlet-Aktion>>doc:Formcycle.PluginDevelopment.Types.IPluginServletAction]]. Per HTTP-Post-Request wird eine Plugin-JAR-Datei an den {{formcycle/}}-Server gesendet. Die weiteren Parameter im HTTP-Request bestimmen, was nun weiter mit dem Plugin geschieht, etwa ob es nur installiert oder auch aktiviert werden soll.
11 11  
12 12  Falls das hochgeladene Plugin bereits existiert, ist es in der Regel ist es sinnvoll, dieses zu ersetzen. Dazu ist es erforderlich, anzugeben, über welchen Identifikator ein Plugin identifiziert wird. Es gibt hierbei vier Möglichkeiten, die dieses Plugin erlaubt:
... ... @@ -71,7 +71,17 @@
71 71  Die Parameter können direkt als URL-Parameter, als //multipart/form-data// oder als //application/x-www-form-urlencoded// übergeben werden. Folgende Parameter werden vom Deploy-Plugin unterstützt und können übergeben werden:
72 72  
73 73  ; deploy-action
74 -: Aktion, welche mit dem Plugin durchgeführt werden soll. Erlaubte Werte sind //save//, //update-properties//, //activate//, //deactivate// und //delete//. Ein Erklärung zu diesen Aktionen findet sich unten.
76 +: Aktion, welche mit dem Plugin durchgeführt werden soll. Erlaubte Werte sind //save//, //update-properties//, //activate//, //deactivate// und //delete//.
77 +:; save
78 +:: Überträgt das angegebene Plugin auf das {{formcycle/}}-System. Es muss hierbei eine JAR-Datei übertragen werden. Falls das Plugin noch nicht existiert (und der Parameter //disallow-install// nicht gesetzt ist), wird das Plugin neu installiert und ist dann aktiviert. Andernfalls, falls das Plugin bereits existiert, wird es aktualisiert, dabei bleibt das Plugin aktiviert oder deaktiviert.
79 +:; delete
80 +:: Löscht das angegebene Plugin. Es darf hierbei keine JAR-Datei übertragen werden. Existiert das angegebene Plugin nicht, wird ein Fehler zurückgegeben.
81 +:; activate
82 +:: Aktiviert das angegebene Plugin. Es darf hierbei keine JAR-Datei übertragen werden. Existiert das angegebene Plugin nicht, wird ein Fehler zurückgegeben. Ist das Plugin bereits aktiviert, wird nicht getan und ein Erfolg zurückgegeben.
83 +:; deactivate
84 +:: Deaktiviert das angegebene Plugin. Es darf hierbei keine JAR-Datei übertragen werden. Existiert das angegebene Plugin nicht, wird ein Fehler zurückgegeben. Ist das Plugin bereits deaktiviert, wird nicht getan und ein Erfolg zurückgegeben.
85 +:; update-properties
86 +:: Aktualisiert die Eigenschaften des angegebenen Plugins. Es darf hierbei keine JAR-Datei übertragen werden. Entweder die Eigenschaft //clear-properties// oder //property// sollte gesetzt sein. Existiert das angegebene Plugin nicht, wird ein Fehler zurückgegeben.
75 75  ; client-id
76 76  : ID des Mandanten, in dem ein Plugin installiert, aktualisiert oder gelöscht werden soll. Es darf nur entweder //client-id// oder //client-uuid// angegeben werden
77 77  ; client-uuid
... ... @@ -79,7 +79,7 @@
79 79  ; jar-file
80 80  : Binärdaten mit der JAR-Datei des Plugins, welches aktualisert oder installiert werden soll.
81 81  ; token
82 -: Das Token (Password) für die Authorisierung des Requests. Nur erforderlich, wenn in der Plugin-Konfiguration ein Token festgelegt wurde.
94 +: Das Token (Passwort) für die Authorisierung des Requests. Nur erforderlich, wenn in der Plugin-Konfiguration ein Token festgelegt wurde.
83 83  ; plugin-ident
84 84  : Die Art, wie nach einem vorhandenen Plugin gesucht wird (siehe oben). Folgende Werte sind erlaubt:
85 85  :; manifest
... ... @@ -109,13 +109,10 @@
109 109  ; locale
110 110  : Die Sprache, welche während der Installation, Aktualisierung oder Löschung des Plugins verwendet werden soll, etwa //en// oder //de//. Beeinflusst nur einige Fehlermeldungen und kann in der Regel weggelassen werden.
111 111  
112 -=== Deploy-Action ===
124 +=== Beispiele ===
113 113  
114 -Der Wert des Parameters //deploy-action// gibt an, was genau mit dem Plugin geschehen soll. Es gibt dabei die folgenden Möglichkeiten:
126 +;
115 115  
116 -; save
117 -: Überträgt das angegebene Plugin auf das {{formcycle/}}-System. Es muss hierbei eine JAR-Datei übertragen werden. Falls das Plugin noch nicht existiert (und der Parameter //disallow-install// nicht gesetzt ist), wird das Plugin neu installiert und ist dann aktiviert. Andernfalls, falls das Plugin bereits existiert, wird es aktualisiert, dabei bleibt das Plugin aktiviert oder deaktiviert.
118 -
119 119  (((
120 120  {{code language="bash"}}
121 121  # Installiert oder aktualisiert das Plugin mit dem Implementation-Title com.example:plugin
... ... @@ -129,9 +129,6 @@
129 129  {{/code}}
130 130  )))
131 131  
132 -; delete
133 -: Löscht das angegebene Plugin. Es darf hierbei keine JAR-Datei übertragen werden. Existiert das angegebene Plugin nicht, wird ein Fehler zurückgegeben. Beispiel:
134 -
135 135  (((
136 136  {{code language="bash"}}
137 137  # Löscht das Plugin mit dem Implementation-Title com.example:plugin
... ... @@ -144,9 +144,6 @@
144 144  {{/code}}
145 145  )))
146 146  
147 -; activate
148 -: Aktiviert das angegebene Plugin. Es darf hierbei keine JAR-Datei übertragen werden. Existiert das angegebene Plugin nicht, wird ein Fehler zurückgegeben. Ist das Plugin bereits aktiviert, wird nicht getan und ein Erfolg zurückgegeben. Beispiel:
149 -
150 150  (((
151 151  {{code language="bash"}}
152 152  # Aktiviert das Plugin mit dem Implementation-Title com.example:plugin
... ... @@ -159,9 +159,6 @@
159 159  {{/code}}
160 160  )))
161 161  
162 -; deactivate
163 -: Deaktiviert das angegebene Plugin. Es darf hierbei keine JAR-Datei übertragen werden. Existiert das angegebene Plugin nicht, wird ein Fehler zurückgegeben. Ist das Plugin bereits deaktiviert, wird nicht getan und ein Erfolg zurückgegeben. Beispiel:
164 -
165 165  (((
166 166  {{code language="bash"}}
167 167  # Deaktiviert oder aktualisiert das Plugin mit dem Implementation-Title com.example:plugin
... ... @@ -174,9 +174,6 @@
174 174  {{/code}}
175 175  )))
176 176  
177 -; update-properties
178 -: Aktualisiert die Eigenschaften des angegebenen Plugins. Es darf hierbei keine JAR-Datei übertragen werden. Entweder die Eigenschaft //clear-properties// oder //property// sollte gesetzt sein. Existiert das angegebene Plugin nicht, wird ein Fehler zurückgegeben. Beispiel:
179 -
180 180  (((
181 181  {{code language="bash"}}
182 182  # Löscht alle vorhandenen Plugin-Eigenschaften und setzt dann die Eigenschaft "foo" auf den Wert "bar"
... ... @@ -346,7 +346,7 @@
346 346  
347 347  == Create-Token-Servlet ==
348 348  
349 -Mit diesem Servlet kann ein Hash für ein bestimmtes Klartextpasswort erzeugt werden, welcher dann in der Plugin-Eigenschaft //token// hinterlegt werden kann. Es muss hierbei ein HTTP-GET-Request verwendet werden (Pfad auf den {{formcycle/}}-Servet und die Mandant-ID entsprechend ersetzen):
346 +Mit diesem Servlet kann ein Hash für ein bestimmtes Klartextpasswort erzeugt werden, welcher dann in der Plugin-Eigenschaft //token// hinterlegt werden kann. Dies ist wichtig, wenn das Deployen von jedem Beliebigem Nutzer verhindert werden soll. Es muss hierbei ein HTTP-GET-Request verwendet werden (Pfad auf den {{formcycle/}}-Servet und die Mandant-ID entsprechend ersetzen):
350 350  
351 351  {{code language="none"}}
352 352  http://localhost:8080/formcycle/plugin?client-id=1&name=create-token&token=<PASSWORT>&method=<METHOD>
... ... @@ -555,18 +555,18 @@
555 555  
556 556  Hinweis: IDE wie Eclipse und IntelliJ erlauben es, eine Build-Konfiguration für das Plugin-Projekt zu erstellen, wo die Parameter //fcDeployUrl//, //fcDeployClientId// und //fcDeployToken// hinterlegt werden können.
557 557  
558 -== Versionshistorie
555 +== Versionshistorie ==
559 559  
560 560  In diesem Abschnitt werden die vorhandenen Versionen des Deploy-Plugins und die jeweiligen Änderungen in dieser Version beschrieben.
561 561  
562 -=== 1.1.0
559 +=== 1.1.0 ===
563 563  
564 564  * Anpassungen für {{formcycle/}} 6.4.
565 565  
566 -=== 1.0.1
563 +=== 1.0.1 ===
567 567  
568 568  * Verbesserte Fehlerbehandlung bei der Plugin-Installation.
569 569  
570 -=== 1.0.0
567 +=== 1.0.0 ===
571 571  
572 572  * Initialer Release
Copyright 2000-2025