Ресурс nxScript в DSC для Linux
Ресурс nxScript в DSC PowerShell предоставляет механизм управления сценариями Linux на узле Linux.
Синтаксис
nxScript <string> #ResourceName
{
GetScript = <string>
SetScript = <string>
TestScript = <string>
[ User = <string> ]
[ Group = <string> ]
[ DependsOn = <string[]> ]
}
Свойства
Свойство | Описание |
---|---|
GetScript | Предоставляет скрипт для возврата сведений о текущем состоянии компьютера. Этот скрипт выполняется при вызове скрипта GetDscConfiguration.py. Сценарий должен начинаться со знака решетки, например #!/bin/bash . |
SetScript | Предоставляет скрипт, с помощью которого компьютер переходит в надлежащее состояние. При вызове скрипта StartDscConfiguration.py в первую очередь выполняется команда TestScript. Если блок TestScript возвращает код выхода, отличный от 0, запускается блок SetScript. Если блок TestScript возвращает код выхода 0, SetScript не выполняется. Сценарий должен начинаться со знака решетки, например #!/bin/bash . |
TestScript | Предоставляет скрипт для оценки состояния узла. Этот скрипт выполняется при вызове скрипта StartDscConfiguration.py. Если он возвращает код выхода, отличный от 0, выполняется команда SetScript. Если он возвращает код выхода 0, команда SetScript не выполняется. Кроме того, TestScript выполняется при вызове скрипта TestDscConfiguration. Однако в этом случае SetScript не будет запущен, какое бы значение ни вернул блок TestScript. Блок TestScript должен содержать контент и возвращать код выхода 0, если фактическая конфигурация соответствует текущей настройке требуемого состояния, и другой код выхода, если они не совпадают. Текущей конфигурацией требуемого состояния является последняя конфигурация, активированная на узле, который использует DSC. Сценарий должен начинаться со знака решетки, например #!/bin/bash . |
Пользователь | Указывает, от имени какого пользователя выполняется сценарий. |
Группа | Указывает, от имени какой группы выполняется сценарий. |
Общие свойства
Свойство | Описание |
---|---|
DependsOn | Указывает, что перед настройкой этого ресурса необходимо запустить настройку другого ресурса. Например, если идентификатор первого запускаемого блока сценария для конфигурации ресурса — ResourceName, а его тип — ResourceType, то синтаксис использования этого свойства таков: DependsOn = "[ResourceType]ResourceName" . |
Пример
В следующем примере показано применение ресурса nxScript для дополнительного управления конфигурацией.
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
'@
}
}
Совместная работа с нами на GitHub
Источник этого содержимого можно найти на GitHub, где также можно создавать и просматривать проблемы и запросы на вытягивание. Дополнительные сведения см. в нашем руководстве для участников.
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по