我有一个Azure发布管道,其中包含失败的Azure Powershell任务内联脚本。我正在运行一个自托管的构建代理。当我从Windows Powershell在本地执行Powershell命令时,该命令运行良好。该任务正在尝试启动DataFactory SSIS集成运行时:
Start-AzDataFactoryV2IntegrationRuntime -ResourceGroupName "MyResourceGroup"
-DataFactoryName "my-data-factory"
-Name "myIntegrationRuntime1"
-Force
首先我得到一个警告:
警告:AzureRM.Profile已加载。 Az和AzureRM模块不能 在同一会话中导入或在同一脚本或运行手册中使用。 如果您在可以控制的环境中运行PowerShell,则可以 使用'Uninstall-AzureRm'cmdlet从中删除所有AzureRm模块 您的机器。如果您在Azure自动化中运行,请注意 您的任何运行本都不会同时导入Az和AzureRM模块。更多 有关信息,请参见https://aka.ms/azps-migration-guide。
然后出现错误:
在以下位置找到了“ Start-AzDataFactoryV2IntegrationRuntime”命令 模块“ Az.DataFactory”,但无法加载该模块。欲了解更多 信息,请运行“导入模块Az.DataFactory”。
当我查看已安装的模块时,我看到同时安装了AzureRM和Az,尽管我运行命令Import-Module Az.DataFactory
,但在已安装模块的列表中没有看到它。
答案 0 :(得分:3)
警告:AzureRM.Profile已加载。 Az和AzureRM模块不能 在同一会话中导入或在同一脚本或运行手册中使用。
从去年开始,Az
作为新的跨平台PowerShell模块发布,它完全独立于AzureRM
。由于Az
和AzureRM
在不同版本中使用相同的依赖项,因此不可能在同一PowerShell会话中并行运行Az
和AzureRM
。这就是为什么您收到第一条错误消息的原因。
第一种解决方案是,如果没有使用AzureRM
的脚本,则删除所有AzureRM
模块。
但是,如果您继续想将AzureRM
用于部分脚本,同时还要使用Az
编写另一个脚本。您可以使用Azure Powershell任务V4.0执行。