当我远程进入我的虚拟机来执行这个Powershell脚本时,一切正常
但是,如果我尝试在Azure Runbook中运行脚本,它将执行,但Python脚本不会触发,我不知道为什么:(它似乎跳过了它。我是否遗漏了什么
这是我运行手册中的代码
$connectionName = "AzureRunAsConnection"
try
{
# Get the connection "AzureRunAsConnection
$servicePrincipalConnection=Get-AutomationConnection -Name $connectionName
"Logging in to Azure..."
Add-AzureRmAccount `
-ServicePrincipal `
-TenantId $servicePrincipalConnection.TenantId `
-ApplicationId $servicePrincipalConnection.ApplicationId `
-CertificateThumbprint $servicePrincipalConnection.CertificateThumbprint
}
catch {
if (!$servicePrincipalConnection)
{
$ErrorMessage = "Connection $connectionName not found."
throw $ErrorMessage
} else{
Write-Error -Message $_.Exception
"are we here"
throw $_.Exception
}
}
$rgname ="MyResourceName"
$vmname ="MyVirtualMachine"
$ScriptToRun = "c:\mypath\myscript.ps1"
Out-File -InputObject $ScriptToRun -FilePath ScriptToRun.ps1
$run = Invoke-AzureRmVMRunCommand -ResourceGroupName $rgname -Name $vmname -CommandId 'RunPowerShellScript' -ScriptPath ScriptToRun.ps1
Write-Output $run.Value[0]
Remove-Item -Path ScriptToRun.ps1
这里是myscript.ps1(Python的路径由环境变量设置)
Write-Output "Script Started."
Python C:\myscripts\pythonscript.py
Write-Output "Script Ended."
然后我将看到这个输出
Script Started.
Script Ended.
< Py脚本的基本输出应该在中间,但我一无所获。再次,如果我在本地运行,它工作正常。谢谢你的帮助
尝试将脚本迁移到新的^{} 模块,确保已在自动化帐户中安装了
Az.Accounts
、Az.Compute
相关问题 更多 >
编程相关推荐