#azure-powershell #azure-automation
#azure-powershell #azure-автоматизация
Вопрос:
Есть ли способ обновить файлы модулей в учетной записи автоматизации во время выполнения сценария?
Например, у меня есть приведенный ниже фрагмент кода для обновления файлов модуля на моем локальном компьютере.
$path = $env:USERPROFILE "DocumentsWindowsPowerShellModules***FrameworkAbstracts**.ps1"
$item = Get-ChildItem -Path "$path"
$Content = Get-Content -LiteralPath $item.FullName
$newContent = ""
$Content | ForEach-Object {
if ( $_ -match 'response = ""')
{
"match"
$_ = $_.replace('response = ""', 'response = "y"')
}
$newContent = $($_ "`r`n" )
}
Set-Content -Value $newContent -LiteralPath $item.FullName
Можно ли запустить приведенный выше скрипт в runbook для обновления модулей учетной записи автоматизации?
Если нет, то как обновить файлы модуля в учетной записи автоматизации во время выполнения скрипта?
Где хранятся все модули? Любые предложения будут с благодарностью приняты.
Ответ №1:
Боюсь, вы не сможете запустить приведенный выше сценарий в runbook. Как мы видим, ваш путь включает ваши собственные переменные среды и локальный путь, которые Azure не может распознать.
Для импорта пользовательских модулей есть три способа, вы можете взглянуть на эту ссылку.
На самом деле вы можете настраивать модули непосредственно на портале. Перейдите в свою учетную запись автоматизации, найдите Modules
и Modules gallery
выберите Shared Resources
. Выберите нужный модуль, например
Az
. Вы увидите страницу ниже. Затем нажмите импорт.
Комментарии:
1. Я понимаю, что azure не может распознать локальный путь. Но где все модули, хранящиеся в рабочей учетной записи автоматизации? Есть ли у нас доступ к его структуре папок?
2. Я обновил свой ответ, вы можете взглянуть на новую ссылку. @VINODKUMAR
3. @DorisLv Когда я пытаюсь импортировать модуль Az, я получаю сообщение со списком всех зависимостей и сообщением, что они должны быть установлены в первую очередь. Кажется, мы должны установить их все вручную !?! Тьфу! github.com/MicrosoftDocs/azure-docs/issues/34978 Я действительно надеюсь, что это устарело и есть более простой способ.
4. Боюсь, нам придется делать это вручную в Portal. @ToddRopog