Änderungen von Dokument Eigene Autoconf-Rolle erstellen
Zuletzt geändert von Tom Altenbrunn am 2023/03/17 08:03
Von 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
Auf Version 12.9
bearbeitet von Tom Altenbrunn
am 2023/03/15 11:07
am 2023/03/15 11:07
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Zusammenfassung
-
Seiteneigenschaften (1 geändert, 0 hinzugefügt, 0 gelöscht)
Details
- Seiteneigenschaften
-
- Inhalt
-
... ... @@ -13,16 +13,12 @@ 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 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"]] 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). 19 19 20 -- ---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. 21 21 22 -==== **Beispielaufbau einer logodidact.yml:** ==== 23 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 - 21 +==== **Beispielaufbau der logodidact.yml:** ==== 26 26 27 27 (% class="box" %) 28 28 ((( ... ... @@ -35,15 +35,15 @@ 35 35 authors: 36 36 - Marcel Petersen 37 37 company: SBE network solutions GmbH 38 - (%style="color:#1abc9c"%)display_name:(%%)WLAN Profil mit PSK anlegen34 + display_name: WLAN Profil mit PSK anlegen 39 39 license: SBE 40 - (%style="color:#8e44ad"%)uuid:(%%)52318636-c4f5-11ea-baf9-0bff00c66ff436 + uuid: 52318636-c4f5-11ea-baf9-0bff00c66ff4 41 41 visible: true 42 42 priority: 0 43 43 applyAlways: false 44 - (%style="color:#f1c40f"%)tags:(%%)40 + tags: 45 45 - CUSTOM 46 - (%style="color:#e74c3c"%)vars:(%%)42 + vars: 47 47 ssid: 48 48 display_name: SSID 49 49 optional: false ... ... @@ -52,27 +52,30 @@ 52 52 display_name: Passwort 53 53 optional: false 54 54 type: PASSWORD 55 - (%style="color:#2980b9"%)systems:(%%)51 + systems: 56 56 - WINDOWS 57 57 - LINUX 58 58 ))) 59 59 60 - (% style="color:#1abc9c" %)display_name(%%)= Anzeigename der Autoconf-Rolle im LD Control Center56 +display_name = Anzeigename der Autoconf-Rolle im LD Control Center 61 61 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/]]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/]] 63 63 64 - (% style="color:#f1c40f" %)tags(%%)= beschreibt, in welchen Phasen die Autoconf-Regel ausgeführt wird.60 +tags = beschreibt, in welchen Phasen die Autoconf-Regel ausgeführt wird. 65 65 66 - (%style="color:#e74c3c" %)vars(%%)=definiertmöglicheVariablen,diedenSkripten übergebenwerden62 +systems = Legt fest, welche Betriebssystem-Typen durch die Autoconf-Rolle unterstützt werden. Gültige Systeme sind: WINDOWS / LINUX 67 67 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). 64 +vars = definiert mögliche Variablen, die den Skripten übergeben werden 72 72 73 - (%style="color:#2980b9"%)systems(%%)=Legtfest,welche Betriebssystem-Typendurch dieAutoconf-Rolleunterstützt werden. GültigeSysteme sind: WINDOWS / LINUX66 + ~* display_name = Name der konfigurierbaren Variable im Control Center 74 74 68 + ~* example = Zeigt einen grau eingefärbten Beispieltext innerhalb Variable an, ohne dass dieser als Wert festgelegt ist (Hilfsmittel für Anwender). 75 75 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 + 76 76 **Beispiel für eine Variable:** 77 77 78 78 (% class="box" %) ... ... @@ -88,12 +88,8 @@ 88 88 - full 89 89 ))) 90 90 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 -))) 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: 95 95 96 ----- 97 97 98 98 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: 99 99 ... ... @@ -104,17 +104,14 @@ 104 104 * (% style="color:#8e44ad" %)**audit.ps1**(%%) - Skript wird ausschließlich in der AUDIT-Phase während des Deployments ausgeführt. 105 105 * **collect.ps1** - Sonderfall. Dieses Skript wird ausgeführt, wenn durch einen Anwender aktiv die Phase COLLECT zum Einsammeln von Einstellungen am Client aufgerufen werden. 106 106 107 -(% class="box warningmessage" %) 108 -((( 109 109 (% 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 -))) 111 111 112 112 113 113 ==== **Beispielaufbau der main.ps1** ==== 114 114 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.107 +Im win-Verzeichnis können sich unterschiedliche Powershellskripte befinden. Der jeweilige Name der .ps1 Datei gibt an zu welcher Phase die Datei ausgeführt wird. 116 116 117 -{{code width="50%"}}109 +{{code}} 118 118 user.ps1 = user Phase, nach der Anmeldung 119 119 120 120 custom.ps1 = custom Phase ... ... @@ -180,7 +180,7 @@ 180 180 Remove-Item -Path $file -Force 181 181 } 182 182 183 -Param() = hier werden die übergebenen Parameter von meta/logodidact.yml zu lokale nVariablen.175 +Param() = hier werden die übergebenen Parameter von meta/logodidact.yml zu lokale Variablen. 184 184 {{/code}} 185 185 186 186 ==== ==== ... ... @@ -187,15 +187,10 @@ 187 187 188 188 ==== **Neue AutoConf-Rollen freigeben** ==== 189 189 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.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. 191 191 Alternativ werden alle Autoconf-Rollen auch zeitbasiert alle 4 Stunden am Server eingelesen. Dies passiert automatisch im Hintergrund. 192 192 193 -Betätigen Sie außerdem im LD Control Center (mit aktiviertem Expertenmodus) den Reiter "AutoConfRollenneueinlesen", damit selbst hinzugefügte Autoconf-Rollen verfügbar werden.185 +Betätigen Sie außerdem im LD Control Center (mit aktiviertem Expertenmodus) folgenden Knopf, damit selbst hinzugefügte Autoconf-Rollen verfügbar werden. 194 194 195 -(% class="box infomessage" %) 196 -((( 197 -Der Expertenmodus wird in den **Einstellungen (Zahnrad oben rechts) -> Entwickleroptionen -> Expertenmodus aktivieren** aktiv geschaltet. 198 -))) 199 - 200 200 [[image:attach:autoconf.png||data-xwiki-image-style-border="true"]] 201 201