DSC für Linux-Resource „nxScript“
Die Ressource nxScript in PowerShell DSC bietet einen Mechanismus zum Ausführen von Linux-Skripts auf einem Linux-Knoten.
Syntax
nxScript <string> #ResourceName
{
GetScript = <string>
SetScript = <string>
TestScript = <string>
[ User = <string> ]
[ Group = <string> ]
[ DependsOn = <string[]> ]
}
Eigenschaften
Eigenschaft | BESCHREIBUNG |
---|---|
GetScript | Stellt ein Skript bereit, um den aktuellen Status des Computers zurückzugeben. Dieses Skript wird ausgeführt, wenn Sie das Skript GetDscConfiguration.py aufrufen. Das Skript muss mit einem Shebang, z. B. #!/bin/bash , beginnen. |
SetScript | Stellt ein Skript bereit, das den Computer in den richtigen Zustand versetzt. Wenn Sie das Skript StartDscConfiguration.py aufrufen, wird TestScript zuerst ausgeführt. Wenn der TestScript-Block einen Exitcode ungleich 0 zurückgibt, wird der SetScript-Block ausgeführt. Wenn der TestScript-Block den Exitcode 0 zurückgibt, wird der SetScript-Block nicht ausgeführt. Das Skript muss mit einem Shebang, z. B. #!/bin/bash , beginnen. |
TestScript | Stellt ein Skript bereit, das auswertet, ob sich der Knoten derzeit im richtigen Zustand befindet. Wenn Sie das Skript StartDscConfiguration.py aufrufen, wird dieses Skript ausgeführt. Wenn es einen Exitcode ungleich 0 zurückgibt, wird der SetScript-Block ausgeführt. Wenn es den Exitcode 0 zurückgibt, wird der SetScript-Block nicht ausgeführt. TestScript wird auch ausgeführt, wenn Sie das Skript TestDscConfiguration aufrufen. In diesem Fall wird der SetScript-Block jedoch nicht ausgeführt, ganz gleich, welcher Exitcode vom TestScript-Block zurückgegeben wird. TestScript muss Inhalte enthalten und den Exitcode 0 zurückgeben, wenn die tatsächliche Konfiguration der aktuellen Konfiguration des gewünschten Zustands entspricht. Andernfalls muss ein Exitcode ungleich 0 zurückgegeben werden. Die aktuelle Konfiguration des gewünschten Zustands ist die letzte Konfiguration, die auf den Knoten angewendet wurde, der DSC verwendet. Das Skript muss mit einem Shebang, z. B. #!/bin/bash , beginnen. |
Benutzer | Der Benutzer, der das Skript ausführt. |
Group | Die Gruppe, die das Skript ausführt. |
Allgemeine Eigenschaften
Eigenschaft | BESCHREIBUNG |
---|---|
DependsOn | Gibt an, dass die Konfiguration einer anderen Ressource ausgeführt werden muss, bevor diese Ressource konfiguriert wird. Wenn beispielsweise die ID des Skriptblocks mit der Ressourcenkonfiguration, den Sie zuerst ausführen möchten, „ResourceName“ und dessen Typ „ResourceType“ ist, lautet die Syntax für das Verwenden dieser Eigenschaft DependsOn = "[ResourceType]ResourceName" . |
Beispiel
Das folgende Beispiel veranschaulicht die Verwendung der Ressource nxScript, um zusätzliche Konfigurationsschritte auszuführen.
Import-DSCResource -ModuleName nx
Node $node
{
nxScript KeepDirEmpty {
GetScript = @"
#!/bin/bash
ls /tmp/mydir/ | wc -l
"@
SetScript = @"
#!/bin/bash
rm -rf /tmp/mydir/*
"@
TestScript = @'
#!/bin/bash
filecount=`ls /tmp/mydir | wc -l`
if [ $filecount -gt 0 ]
then
exit 1
else
exit 0
fi
'@
}
}
Zusammenarbeit auf GitHub
Die Quelle für diesen Inhalt finden Sie auf GitHub, wo Sie auch Issues und Pull Requests erstellen und überprüfen können. Weitere Informationen finden Sie in unserem Leitfaden für Mitwirkende.
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für