Änderungen von Dokument Eigene Autoconf-Rolle erstellen

Zuletzt geändert von Tom Altenbrunn am 2023/03/17 08:03

Von Version 9.1
bearbeitet von Jonas Mayer
am 2023/03/15 09:01
Änderungskommentar: Es gibt keinen Kommentar für diese Version
Auf Version 3.1
bearbeitet von Christian Germann
am 2022/10/04 10:51
Änderungskommentar: Es gibt keinen Kommentar für diese Version

Zusammenfassung

Details

Seiteneigenschaften
Titel
... ... @@ -1,1 +1,1 @@
1 -Eigene Autoconf-Rolle erstellen
1 +Eigene Autoconf-Regel erstellen
Dokument-Autor
... ... @@ -1,1 +1,1 @@
1 -XWiki.jonasmayer@sbede
1 +XWiki.cge@sbede
Inhalt
... ... @@ -1,12 +1,12 @@
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.
1 +Autoconf liegt wie der Vorgänger Ansible im ctrl-g1 Container und dient dazu Einstellungen oder Konfigurationen auf die deployten Rechner ohne ein Image dafür zu schreiben.
2 2  
3 3  Von SBE ausgelieferte Rollen befinden sich Im Pfad {{box}}/usr/lib/ld-autoconf/logodidact/roles/{{/box}}.
4 4  
5 -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.
6 6  
7 -Der Aufbau einer Autoconf-Rolle 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.
8 8  
9 -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.
10 10  
11 11  
12 12  ==== **Beispielaufbau der logodidact.yml:** ====
... ... @@ -44,27 +44,19 @@
44 44   - LINUX
45 45  )))
46 46  
47 -display_name = Anzeigename der Autoconf-Rolle im LD Control Center
47 +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/]]
48 48  
49 -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/]]
49 +tags = beschreibt in welcher Phase die Autoconf-Regel aktiv ist.
50 50  
51 -tags = beschreibt, in welchen Phasen die Autoconf-Regel ausgeführt wird.
51 +vars = definiert Variablen die den Skripten übergeben werden
52 52  
53 -systems = Legt fest, welche Betriebssystem-Typen durch die Autoconf-Rolle unterstützt werden. Gültige Systeme sind: WINDOWS / LINUX
53 +display_name = Name der Variable im ctrl
54 54  
55 -vars = definiert mögliche Variablen, die den Skripten übergeben werden
55 +optional = bestimmt ob die Option in der Autoconf-Rege optional ist
56 56  
57 - ~* 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:
58 58  
59 - ~* example = Zeigt einen grau eingefärbten Beispieltext innerhalb Variable an, ohne dass dieser als Wert festgelegt ist (Hilfsmittel für Anwender).
60 -
61 - ~* optional = bestimmt, ob die Variable zwingend mit einem Wert belegt werden muss
62 -
63 - ~* type = bestimmt den Typ der Variable. Gültige Typen sind: STRING, PASSWORD, BOOLEAN, ENUM, ARRAY, INTEGER
64 -
65 -
66 -**Beispiel für eine Variable:**
67 -
68 68  (% class="box" %)
69 69  (((
70 70  globalLogLevel:
... ... @@ -78,21 +78,14 @@
78 78   - full
79 79  )))
80 80  
81 -(% style="font-size:12px" %)**Tipp:** Der Variablentyp ENUM aus dem Beispiel entspricht einem Dropdown-Menü, in dem man aus vordefinierte Werte auswählen kann:
73 +example = Gibt eine grauen Beispielwert für die Variable vor.
82 82  
75 +systems = für welches Betriebssystem existieren Skripte in der Autoconf-Regel
83 83  
84 -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:
85 85  
86 -* **main.ps1** - Skript wird in allen Phasen ausgeführt, die innerhalb der Beschreibungsdatei {{box}}meta/logodidact.yml{{/box}} festgelegt sind
87 -* (% style="color:#8e44ad" %)**setup.ps1**(%%) - Skript wird ausschließlich in der SETUP-Phase während des Deployments ausgeführt.
88 -* (% style="color:#8e44ad" %)**custom.ps1**(%%) - Skript wird ausschließlich in der CUSTOM-Phase während des Deployments ausgeführt.
89 -* (% style="color:#8e44ad" %)**user.ps1**(%%) - Skript wird ausschließlich in der USER-Phase während des Deployments ausgeführt.
90 -* (% style="color:#8e44ad" %)**audit.ps1**(%%) - Skript wird ausschließlich in der AUDIT-Phase während des Deployments ausgeführt.
91 -* **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.
92 92  
93 -(% 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.
94 94  
95 -
96 96  ==== **Beispielaufbau der main.ps1** ====
97 97  
98 98  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.
... ... @@ -166,10 +166,8 @@
166 166  Param() = hier werden die übergebenen Parameter von meta/logodidact.yml zu lokale Variablen.
167 167  {{/code}}
168 168  
169 -==== ====
154 +**Neue AutoConf-Regel freigeben**
170 170  
171 -==== **Neue AutoConf-Regel freigeben** ====
172 -
173 173  Neue Autoconf-Regel müssen mit dem Befehl {{box}}update-autoconf-archive{{/box}} eingelesen werden. 
174 174  Ansonsten werden die Autoconfrollen auch zeitbasiert (Alle 4 Stunden) neu eingelesen.
175 175  Drücken Sie Im Controlcenter mit aktivieren Expertenmodus folgenden Knopfen, damit dort auch die neuen Autoconf-Regeln verfügbar werden.