Änderungen von Dokument Eigene Autoconf-Rolle erstellen
Zuletzt geändert von Tom Altenbrunn am 2023/03/17 08:03
Von Version 12.8
bearbeitet von Tom Altenbrunn
am 2023/03/15 11:06
am 2023/03/15 11:06
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Auf Version 12.10
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)
Details
- Seiteneigenschaften
-
- Inhalt
-
... ... @@ -13,12 +13,16 @@ 13 13 * Ab Puppet-Version **1.5.x **: {{code language="bash" layout="LINENUMBERS"}}/data/ld/autoconf/custom/{{/code}} 14 14 15 15 16 -Der Aufbau einer Autoconf-Rolle unterliegt einer vordefinierten Struktur, bestehend aus einer YAML-Datei, welche die Informationen zu Namen und Variablen definiert, sowie der eigentlichen ausführbaren Skript-Datei (Powershell oder Bash) und einer damit der Server diese Interpretieren kann. 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"]] 17 17 18 - Unterhalb der Regel muss ein Ordner mit Namen {{box}}meta{{/box}} mit einer {{box}}logodidact.yml{{/box}} liegen. In dieser Datei sind Name, Beschreibung, Ersteller sowie weitere Informationen zur Autoconf-Rolle festgelegt.20 +---- 19 19 22 +==== **Beispielaufbau einer logodidact.yml:** ==== 20 20 21 -==== **Beispielaufbau der logodidact.yml:** ==== 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 + 22 22 23 23 (% class="box" %) 24 24 ((( ... ... @@ -31,15 +31,15 @@ 31 31 authors: 32 32 - Marcel Petersen 33 33 company: SBE network solutions GmbH 34 - display_name: WLAN Profil mit PSK anlegen 38 +(% style="color:#1abc9c" %)display_name:(%%) WLAN Profil mit PSK anlegen 35 35 license: SBE 36 - uuid: 52318636-c4f5-11ea-baf9-0bff00c66ff4 40 +(% style="color:#8e44ad" %) uuid:(%%) 52318636-c4f5-11ea-baf9-0bff00c66ff4 37 37 visible: true 38 38 priority: 0 39 39 applyAlways: false 40 - tags: 44 +(% style="color:#f1c40f" %) tags:(%%) 41 41 - CUSTOM 42 - vars: 46 +(% style="color:#e74c3c" %) vars:(%%) 43 43 ssid: 44 44 display_name: SSID 45 45 optional: false ... ... @@ -48,30 +48,27 @@ 48 48 display_name: Passwort 49 49 optional: false 50 50 type: PASSWORD 51 - systems: 55 +(% style="color:#2980b9" %)systems:(%%) 52 52 - WINDOWS 53 53 - LINUX 54 54 ))) 55 55 56 -display_name = Anzeigename der Autoconf-Rolle im LD Control Center 60 +(% style="color:#1abc9c" %)display_name(%%) = Anzeigename der Autoconf-Rolle im LD Control Center 57 57 58 -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/]] 59 59 60 -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. 61 61 62 -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 63 63 64 -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). 65 65 66 - ~*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 67 67 68 - ~* example = Zeigt einen grau eingefärbten Beispieltext innerhalb Variable an, ohne dass dieser als Wert festgelegt ist (Hilfsmittel für Anwender). 69 69 70 - ~* optional = bestimmt, ob die Variable zwingend mit einem Wert belegt werden muss 71 - 72 - ~* type = bestimmt den Typ der Variable. Gültige Typen sind: STRING, PASSWORD, BOOLEAN, ENUM, ARRAY, INTEGER 73 - 74 - 75 75 **Beispiel für eine Variable:** 76 76 77 77 (% class="box" %) ... ... @@ -87,8 +87,12 @@ 87 87 - full 88 88 ))) 89 89 90 -(% 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 +))) 91 91 96 +---- 92 92 93 93 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: 94 94 ... ... @@ -99,14 +99,17 @@ 99 99 * (% style="color:#8e44ad" %)**audit.ps1**(%%) - Skript wird ausschließlich in der AUDIT-Phase während des Deployments ausgeführt. 100 100 * **collect.ps1** - Sonderfall. Dieses Skript wird ausgeführt, wenn durch einen Anwender aktiv die Phase COLLECT zum Einsammeln von Einstellungen am Client aufgerufen werden. 101 101 107 +(% class="box warningmessage" %) 108 +((( 102 102 (% 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 +))) 103 103 104 104 105 105 ==== **Beispielaufbau der main.ps1** ==== 106 106 107 -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. 108 108 109 -{{code}} 117 +{{code width="50%"}} 110 110 user.ps1 = user Phase, nach der Anmeldung 111 111 112 112 custom.ps1 = custom Phase ... ... @@ -172,7 +172,7 @@ 172 172 Remove-Item -Path $file -Force 173 173 } 174 174 175 -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. 176 176 {{/code}} 177 177 178 178 ==== ==== ... ... @@ -179,10 +179,15 @@ 179 179 180 180 ==== **Neue AutoConf-Rollen freigeben** ==== 181 181 182 -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. 183 183 Alternativ werden alle Autoconf-Rollen auch zeitbasiert alle 4 Stunden am Server eingelesen. Dies passiert automatisch im Hintergrund. 184 184 185 -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. 186 186 195 +(% class="box infomessage" %) 196 +((( 197 +Der Expertenmodus wird in den **Einstellungen (Zahnrad oben rechts) -> Entwickleroptionen -> Expertenmodus aktivieren** aktiv geschaltet. 198 +))) 199 + 187 187 [[image:attach:autoconf.png||data-xwiki-image-style-border="true"]] 188 188