Änderungen von Dokument Eigene Autoconf-Rolle erstellen
Zuletzt geändert von Tom Altenbrunn am 2023/03/17 08:03
Von Version 12.4
bearbeitet von Tom Altenbrunn
am 2023/03/15 10:08
am 2023/03/15 10:08
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Auf Version 13.1
bearbeitet von Tom Altenbrunn
am 2023/03/15 12:08
am 2023/03/15 12:08
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Zusammenfassung
-
Seiteneigenschaften (1 geändert, 0 hinzugefügt, 0 gelöscht)
-
Anhänge (0 geändert, 1 hinzugefügt, 0 gelöscht)
Details
- Seiteneigenschaften
-
- Inhalt
-
... ... @@ -2,17 +2,28 @@ 2 2 3 3 Logodidact ist bereits standardmäßig mit zahlreichen eigenen Autoconf-Rollen bestückt, um ein möglichst breites Spektrum verschiedenster Anforderungen des allgemeinen Schulbetriebs abzudecken. 4 4 5 -Von SBE bereit hestellte Rollen befinden sich im Pfad {{box}}/usr/lib/ld-autoconf/logodidact/roles/{{/box}}.5 +Vonseiten SBE bereitgestellte Rollen befinden sich im ctrl-g1-Container im Pfad {{box}}/usr/lib/ld-autoconf/logodidact/roles/{{/box}}. 6 6 7 - Selbst erstellte Autoconf-Rollenmüssen unter {{box}}/data/ld/autoconf/custom{{/box}} (bzw. früher vor Puppet-Version1.5.x unter {{box}}/var/lib/ld-autoconf/custom/{{/box}}) abgelegt werden, damitdiese nichtdurchUpdatesüberschriebenwerden.7 +[[image:image-20230315103418-1.png||height="103" width="1344" class="img-thumbnail"]] 8 8 9 -Der Aufbau einer Autoconf-Rolle muss einer Struktur folgen, damit der Server diese Interpretieren kann. 10 10 11 - UnterhalbderRegelmusseinOrdnermit Namen{{box}}meta{{/box}}mit einer{{box}}logodidact.yml{{/box}}liegen.IndieserDateisindName,Beschreibung,ErstellersowieweitereInformationenzur Autoconf-Rollefestgelegt.10 +Darüber hinaus ist es Partnern und Kunden möglich für spezielle, schulspezifische Anforderungen eigene Autoconf-Rollen erstellen und im LD Control Center bereitstellen zu können. Dafür steht je nach Puppet-Versionsstand ein eigenes Verzeichnis im ctrl-g1 zur Verfügung, welches nicht durch Server-Updates beeinflusst oder überschrieben wird. 12 12 12 +* bis Puppet-Version **1.4.x** : {{code language="bash"}}/var/lib/ld-autoconf/custom/{{/code}} 13 +* Ab Puppet-Version **1.5.x **: {{code language="bash" layout="LINENUMBERS"}}/data/ld/autoconf/custom/{{/code}} 13 13 14 -==== **Beispielaufbau der logodidact.yml:** ==== 15 15 16 +Der Aufbau einer Autoconf-Rolle unterliegt einer vordefinierten Struktur, bestehend aus einer logodidact.yml, welche die Informationen zu Namen, Beschreibung, Ersteller und Variablen definiert, sowie der eigentlichen ausführbaren Skript-Datei (Powershell oder Bash). Diese liegen wiederum in ihren eigenen Dateiordnern. Daneben besteht auch die Möglichkeit im Unterordner files/ (ausführbare) Dateien, Bilder, Videos, etc. mitzugeben. 17 +Der strukturelle Aufbau ist nachfolgend ersichtlich: 18 +[[image:image-20230315112326-2.png||height="215" width="633" class="img-thumbnail"]] 19 + 20 +---- 21 + 22 +==== **Beispielaufbau einer logodidact.yml:** ==== 23 + 24 +Eine Autoconf-Beispielvorlage liegt serverseitig im Unterordner example/ vor. Zum besseren Verständnis wird nachfolgend eine Autoconf-Rolle zur Mitgabe einer WLAN-SSID samt PSK an Clients näher beleuchtet. 25 + 26 + 16 16 (% class="box" %) 17 17 ((( 18 18 root@ctrl-g1:~~ # cat /usr/lib/ld-autoconf/logodidact/roles/ld_wlan_psk/meta/logodidact.yml ... ... @@ -24,15 +24,15 @@ 24 24 authors: 25 25 - Marcel Petersen 26 26 company: SBE network solutions GmbH 27 - display_name: WLAN Profil mit PSK anlegen 38 +(% style="color:#1abc9c" %)display_name:(%%) WLAN Profil mit PSK anlegen 28 28 license: SBE 29 - uuid: 52318636-c4f5-11ea-baf9-0bff00c66ff4 40 +(% style="color:#8e44ad" %) uuid:(%%) 52318636-c4f5-11ea-baf9-0bff00c66ff4 30 30 visible: true 31 31 priority: 0 32 32 applyAlways: false 33 - tags: 44 +(% style="color:#f1c40f" %) tags:(%%) 34 34 - CUSTOM 35 - vars: 46 +(% style="color:#e74c3c" %) vars:(%%) 36 36 ssid: 37 37 display_name: SSID 38 38 optional: false ... ... @@ -41,30 +41,27 @@ 41 41 display_name: Passwort 42 42 optional: false 43 43 type: PASSWORD 44 - systems: 55 +(% style="color:#2980b9" %)systems:(%%) 45 45 - WINDOWS 46 46 - LINUX 47 47 ))) 48 48 49 -display_name = Anzeigename der Autoconf-Rolle im LD Control Center 60 +(% style="color:#1abc9c" %)display_name(%%) = Anzeigename der Autoconf-Rolle im LD Control Center 50 50 51 -uuid = ID der Autoconf-Regel ,muss einmalig sein. Bei einer eigenen Autoconf-Rolle sollte der Wert am besten neu generiert werden. [[https:~~/~~/www.uuidgenerator.net/>>url:https://www.uuidgenerator.net/]]62 +(% style="color:#8e44ad" %)uuid(%%) = ID der Autoconf-Regel. Muss einmalig sein. Bei einer eigenen Autoconf-Rolle sollte der Wert am besten neu generiert werden. [[https:~~/~~/www.uuidgenerator.net/>>url:https://www.uuidgenerator.net/]] 52 52 53 -tags = beschreibt, in welchen Phasen die Autoconf-Regel ausgeführt wird. 64 +(% style="color:#f1c40f" %)tags(%%) = beschreibt, in welchen Phasen die Autoconf-Regel ausgeführt wird. 54 54 55 -s ystems =Legtfest,welcheBetriebssystem-Typen durch dieAutoconf-Rolleunterstützt werden.GültigeSystemesind: WINDOWS / LINUX66 +(% style="color:#e74c3c" %)vars(%%) = definiert mögliche Variablen, die den Skripten übergeben werden 56 56 57 -vars = definiert mögliche Variablen, die den Skripten übergeben werden 68 +* display_name = Name der konfigurierbaren Variable im Control Center 69 +* optional = bestimmt, ob die Variable zwingend mit einem Wert belegt werden muss 70 +* type = bestimmt den Typ der Variable. Gültige Typen sind: STRING, PASSWORD, BOOLEAN, ENUM, ARRAY, INTEGER 71 +* example = Zeigt einen grau eingefärbten Beispieltext innerhalb der definierten Variable an, ohne dass dieser als Wert festgelegt ist (Hilfsmittel für Anwender). 58 58 59 - ~*display_name =NamederkonfigurierbarenVariableim ControlCenter73 +(% style="color:#2980b9" %) systems (%%)= Legt fest, welche Betriebssystem-Typen durch die Autoconf-Rolle unterstützt werden. Gültige Systeme sind: WINDOWS / LINUX 60 60 61 - ~* example = Zeigt einen grau eingefärbten Beispieltext innerhalb Variable an, ohne dass dieser als Wert festgelegt ist (Hilfsmittel für Anwender). 62 62 63 - ~* optional = bestimmt, ob die Variable zwingend mit einem Wert belegt werden muss 64 - 65 - ~* type = bestimmt den Typ der Variable. Gültige Typen sind: STRING, PASSWORD, BOOLEAN, ENUM, ARRAY, INTEGER 66 - 67 - 68 68 **Beispiel für eine Variable:** 69 69 70 70 (% class="box" %) ... ... @@ -80,8 +80,12 @@ 80 80 - full 81 81 ))) 82 82 83 -(% style="font-size:12px" %)**Tipp:** Der Variablentyp ENUM aus dem Beispiel entspricht einem Dropdown-Menü, in dem man aus vordefinierte Werte auswählen kann: 91 +(% class="box infomessage" %) 92 +((( 93 +(% style="font-size:12px" %)**Tipp:** Der Variablentyp ENUM aus dem Beispiel entspricht einem Dropdown-Menü, in dem man aus vordefinierten Werten auswählen kann 94 +))) 84 84 96 +---- 85 85 86 86 Für die Funktionalität der Autoconf-Rolle ist es nötig, PowerShell-Skripte am Server abzuspeichern, die die Instruktionen an den Arbeitsstationen ausführen. Diese Skripte liegen unterhalb der Autoconf-Rolle im Verzeichnis {{box}}win{{/box}}. Darin sind folgende Dateinamen zulässig: 87 87 ... ... @@ -92,14 +92,17 @@ 92 92 * (% style="color:#8e44ad" %)**audit.ps1**(%%) - Skript wird ausschließlich in der AUDIT-Phase während des Deployments ausgeführt. 93 93 * **collect.ps1** - Sonderfall. Dieses Skript wird ausgeführt, wenn durch einen Anwender aktiv die Phase COLLECT zum Einsammeln von Einstellungen am Client aufgerufen werden. 94 94 107 +(% class="box warningmessage" %) 108 +((( 95 95 (% style="font-size:12px" %)**Hinweis: **Skripte, die durch ihren Dateinamen auf die einzelnen Phasen eingeschränkt sind ((% style="color:#8e44ad; font-size:12px" %)lila eingefärbt(% style="font-size:12px" %)), können sich inhaltlich zueinander unterscheiden. Dadurch kann eine Autoconf-Rolle sehr flexibel gestaltet werden. 110 +))) 96 96 97 97 98 98 ==== **Beispielaufbau der main.ps1** ==== 99 99 100 -Im win-Verzeichnis können sich unterschiedliche Powershell skripte befinden. Der jeweilige Name der .ps1 Datei gibt an zu welcher Phase die Datei ausgeführt wird.115 +Im win-Verzeichnis können sich unterschiedliche Powershell-Skripte befinden. Der jeweilige Name der .ps1 Datei gibt an zu welcher Phase die Datei ausgeführt wird. 101 101 102 -{{code}} 117 +{{code width="50%"}} 103 103 user.ps1 = user Phase, nach der Anmeldung 104 104 105 105 custom.ps1 = custom Phase ... ... @@ -165,7 +165,7 @@ 165 165 Remove-Item -Path $file -Force 166 166 } 167 167 168 -Param() = hier werden die übergebenen Parameter von meta/logodidact.yml zu lokale Variablen. 183 +Param() = hier werden die übergebenen Parameter von meta/logodidact.yml zu lokalen Variablen. 169 169 {{/code}} 170 170 171 171 ==== ==== ... ... @@ -172,10 +172,15 @@ 172 172 173 173 ==== **Neue AutoConf-Rollen freigeben** ==== 174 174 175 -Neue Autoconf-Rollen müssen am Server durch Aufruf des Befehls {{box}}update-autoconf-archive{{/box}} im LXC ctrl-g1 aktualisiert werden. Der Aufruf dieses Kommandos ist auch nach Änderungen an Autoconf-Rollen nötig.190 +Neue Autoconf-Rollen können am Server durch Aufruf des Befehls {{box}}update-autoconf-archive{{/box}} im LXC ctrl-g1 aktualisiert werden. Der Aufruf dieses Kommandos ist auch nach Änderungen an Autoconf-Rollen nötig. 176 176 Alternativ werden alle Autoconf-Rollen auch zeitbasiert alle 4 Stunden am Server eingelesen. Dies passiert automatisch im Hintergrund. 177 177 178 -Betätigen Sie außerdem im LD Control Center (mit aktiviertem Expertenmodus) fol gendenKnopf, damit selbst hinzugefügte Autoconf-Rollen verfügbar werden.193 +Betätigen Sie außerdem im LD Control Center (mit aktiviertem Expertenmodus) den Reiter "AutoConf Rollen neu einlesen", damit selbst hinzugefügte Autoconf-Rollen verfügbar werden. 179 179 195 +(% class="box infomessage" %) 196 +((( 197 +Der Expertenmodus wird in den **Einstellungen (Zahnrad oben rechts) -> Entwickleroptionen -> Expertenmodus aktivieren** aktiv geschaltet. 198 +))) 199 + 180 180 [[image:attach:autoconf.png||data-xwiki-image-style-border="true"]] 181 181
- image-20230315103418-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.TomAltenbrunn@sbede - Größe
-
... ... @@ -1,0 +1,1 @@ 1 +25.1 KB - Inhalt