Änderungen von Dokument Eigene Autoconf-Rolle erstellen
Zuletzt geändert von Tom Altenbrunn am 2023/03/17 08:03
Von Version 12.3
bearbeitet von Tom Altenbrunn
am 2023/03/15 10:07
am 2023/03/15 10:07
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Auf Version 5.1
bearbeitet von Jonas Mayer
am 2023/03/15 08:23
am 2023/03/15 08:23
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Zusammenfassung
-
Seiteneigenschaften (3 geändert, 0 hinzugefügt, 0 gelöscht)
Details
- Seiteneigenschaften
-
- Titel
-
... ... @@ -1,1 +1,1 @@ 1 -Eigene Autoconf-R olle erstellen1 +Eigene Autoconf-Regel erstellen - Dokument-Autor
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. TomAltenbrunn@sbede1 +XWiki.jonasmayer@sbede - Inhalt
-
... ... @@ -1,14 +1,12 @@ 1 -Autoconf liegt wie der Vorgänger Ansible im ctrl-g1 Container und dient dazu, Einstellungen oder Konfigurationen auf bereitsdeployte Rechner zu übertragen, ohne einneuesImage dafür zu schreiben.Somit lassen sich relativ einfach und flexibel diverse Anpassungen an bestehenden Clients vornehmen.1 +Autoconf liegt wie der Vorgänger Ansible im ctrl-g1 Container und dient dazu, Einstellungen oder Konfigurationen auf die deployten Rechner zu übertragen, ohne ein Image dafür zu schreiben. 2 2 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 - 5 5 Von SBE ausgelieferte Rollen befinden sich Im Pfad {{box}}/usr/lib/ld-autoconf/logodidact/roles/{{/box}}. 6 6 7 -Selbst erstellte Autoconf-Rollen müssen unter {{box}}/data/ld/autoconf/custom{{/box}} (bzw.früher vor Puppet-Version 1.5.x unter{{box}}/var/lib/ld-autoconf/custom/{{/box}})abgelegt werden, damit diese nicht durch Updates überschrieben werden.5 +Selbst erstellte Autoconf-Rollen müssen unter {{box}}/var/lib/ld-autoconf/custom/{{/box}} abgelegt werden, damit diese nicht durch Updates überschrieben werden. 8 8 9 -Der Aufbau einer Autoconf-R olle muss einer Struktur folgen, damit der Server diese Interpretieren kann.7 +Der Aufbau einer Autoconf-Regel muss einer Struktur folgen, damit der Server diese Interpretieren kann. 10 10 11 -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.9 +Unterhalb der Regel muss ein Ordner mit Namen {{box}}meta{{/box}} mit einer {{box}}logodidact.yml{{/box}} liegen. 12 12 13 13 14 14 ==== **Beispielaufbau der logodidact.yml:** ==== ... ... @@ -46,27 +46,19 @@ 46 46 - LINUX 47 47 ))) 48 48 49 - display_name= Anzeigenameder Autoconf-RolleimLDControlCenter47 +uuid = ID der Autoconf-Regel, muss einmalig sein. Bei einer eigenen Autoconf-Regel sollte der Wert am besten neugeneriert werden. [[https:~~/~~/www.uuidgenerator.net/>>url:https://www.uuidgenerator.net/]] 50 50 51 - uuid=ID der Autoconf-Regel, muss einmaligsein.Beieiner eigenenAutoconf-Rollesollteder Wertam besten neu generiertwerden. [[https:~~/~~/www.uuidgenerator.net/>>url:https://www.uuidgenerator.net/]]49 +tags = beschreibt in welcher Phase die Autoconf-Regel aktiv ist. 52 52 53 - tags =beschreibt,in welchenPhasendieAutoconf-Regel ausgeführtwird.51 +vars = definiert Variablen die den Skripten übergeben werden 54 54 55 -sy stems=Legtfest,welche Betriebssystem-Typendurch dieAutoconf-Rolle unterstützt werden. Gültige Systeme sind: WINDOWS / LINUX53 +display_name = Name der Variable im ctrl 56 56 57 - vars=definiertmöglicheVariablen,dieden Skriptenübergebenwerden55 +optional = bestimmt ob die Option in der Autoconf-Regel optional ist 58 58 59 - ~* display_name = Name der konfigurierbaren Variable im Control Center 57 +type = bestimmt den Wert der Variable. Mögliche Werte STRING, PASSWORD, BOOLEAN, ENUM, ARRAY, INTEGER 58 +ENUM entspricht einem Dropdown-Menü, in dem man aus vordefinierte Werte auswählen kann: 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 - 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 -**Beispiel für eine Variable:** 69 - 70 70 (% class="box" %) 71 71 ((( 72 72 globalLogLevel: ... ... @@ -80,21 +80,14 @@ 80 80 - full 81 81 ))) 82 82 83 - (% style="font-size:12px" %)**Tipp:** DerVariablentypENUMaus demBeispielntsprichteinem Dropdown-Menü,indemman aus vordefinierte Werteauswählenkann:73 +example = Gibt eine grauen Beispielwert für die Variable vor. 84 84 75 +systems = für welches Betriebssystem existieren Skripte in der Autoconf-Regel 85 85 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 88 -* **main.ps1** - Skript wird in allen Phasen ausgeführt, die innerhalb der Beschreibungsdatei {{box}}meta/logodidact.yml{{/box}} festgelegt sind 89 -* (% style="color:#8e44ad" %)**setup.ps1**(%%) - Skript wird ausschließlich in der SETUP-Phase während des Deployments ausgeführt. 90 -* (% style="color:#8e44ad" %)**custom.ps1**(%%) - Skript wird ausschließlich in der CUSTOM-Phase während des Deployments ausgeführt. 91 -* (% style="color:#8e44ad" %)**user.ps1**(%%) - Skript wird ausschließlich in der USER-Phase während des Deployments ausgeführt. 92 -* (% style="color:#8e44ad" %)**audit.ps1**(%%) - Skript wird ausschließlich in der AUDIT-Phase während des Deployments ausgeführt. 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. 78 +Die eigentliche Skripte liegen direkt unterhalb der Autoconf-Regel im Verzeichnis {{box}}win{{/box}} neben dem Ordner {{box}}meta{{/box}}. Dort kann das Script main.ps1 heißen oder je nach dem in welcher Phase des Deployment es ausgeführt werden soll auch custom.ps1, setup.ps1, audit.ps1. 94 94 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. 96 96 97 - 98 98 ==== **Beispielaufbau der main.ps1** ==== 99 99 100 100 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. ... ... @@ -170,12 +170,11 @@ 170 170 171 171 ==== ==== 172 172 173 -==== **Neue AutoConf-R ollenfreigeben** ====156 +==== **Neue AutoConf-Regel 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. 176 -Alternativ werden alle Autoconf-Rollen auch zeitbasiert alle 4 Stunden am Server eingelesen. Dies passiert automatisch im Hintergrund. 158 +Neue Autoconf-Regel müssen mit dem Befehl {{box}}update-autoconf-archive{{/box}} eingelesen werden. 159 +Ansonsten werden die Autoconfrollen auch zeitbasiert (Alle 4 Stunden) neu eingelesen. 160 +Drücken Sie Im Controlcenter mit aktivieren Expertenmodus folgenden Knopfen, damit dort auch die neuen Autoconf-Regeln verfügbar werden. 177 177 178 -Betätigen Sie außerdem im LD Control Center (mit aktiviertem Expertenmodus) folgenden Knopf, damit selbst hinzugefügte Autoconf-Rollen verfügbar werden. 179 - 180 180 [[image:attach:autoconf.png||data-xwiki-image-style-border="true"]] 181 181