使用 Azure 自动化开发 PowerShell 脚本可能非常缓慢。这可以通过使用 PowerShell ISE 插件来帮助您在本地测试运行脚本。
但是,不可避免地,在本地运行与在 Azure 自动化中运行时,有些事情会有所不同。例如文件路径。
检测脚本当前运行的环境的正确方法是什么?
目前我定义了一个变量资产,我只保留本地而不上传。然后我可以做类似的事情:
# Check if we are running locally - NOTE: Do not upload the runningLocally variable! Keep it local only
if (Get-AutomationVariable -Name 'runningLocally') {
# We are running locally
} else {
# We are running in Azure Automation
}
但这似乎相当笨重且容易出错。我正在寻找一种更强大、更可靠的方法。
我发现了一些额外的方法。在 AA 中运行时的机器名和用户名都是“客户端”,这似乎是一种更健壮的方法?