如何使用Runbook执行存储在Azure存储中的Powershell

时间:2019-04-15 10:32:08

标签: azure azure-powershell

我创建了一个ps1文件,它将执行一些预配活动。我已经在Stroage帐户中更新了该文件。现在,我已经创建了带有运行手册的另一个自动化帐户,我想从自动化运行手册中调用存储在存储帐户中的ps1文件。有人可以帮忙吗。

1 个答案:

答案 0 :(得分:0)

您可以将.ps1文件下载到runbook temp文件夹中,然后调用它。

存储在Blob存储中的test.ps1文件,其内容如下:

param([string]$p1,[string]$p2)

Write-Output "***this is from a test ps1 file***"
Write-Output $p1
Write-Output $p2

这样的代码:

    #create the context to authenticate with azure storage
    $context = New-AzureStorageContext -StorageAccountName your_storage_name -StorageAccountKey "your_storage_key"

    #download the .ps1 file to runbook temp folder
    Get-AzureStorageBlobContent -Container "your_blob_container" -Blob "test.ps1" -Destination $env:temp -Context $context | Out-Null

    #execute the powershell
    &"$env:temp\test.ps1" -p1 "my name is p1" -p2 "i'm p2"

结果:

enter image description here