我创建了Runbook A,其中包含一些声明的变量和一些函数。
// Runbook A
$myvar = "test"
Function MyFunc($var1) {
Write-Output $var1
}
// Runbook B
Write-Output $myvar
MyFunc
如何将代码从运行手册 A 导入到运行手册 B,以便使运行手册 A 中的代码可重用?
基本上,没有直接的方法可以满足您的要求。不能将运行手册用作函数。但是,您可以将运行手册创建为模块化并调用它们。
无需登录到 Azure 即可调用运行手册。Webhook看起来是一个更好的选择。
为了解决这个问题,我创建了一个powershell模块.psm1文件。 它允许我调用函数,但它不允许我打印变量。 仍在努力。
使用 invoke-expression
# Runbook_A
$global:FX = @'
$myvar = "test"
Function MyFunc($var1) {
Write-Output $var1
}
'@
在父模块中:
# RunBook_B
.Runbook_A.ps1
Invoke-Expression $global:FX
Write-Output $myvar
MyFunc "Hello $myvar"
输出:
test
Hello test
注意:Runbook_A应发布并位于同一自动化帐户中