1

我构建了一个新的 Azure Pipeline 并添加了这个“Azure CLI”任务来尝试运行一些 Azure CLI Powershell 脚本。首先,我想对现有的 AppInsights 资源进行一些检查。(Azure CLI) https://github.com/microsoft/azure-pipelines-tasks/blob/master/Tasks/AzureCLIV2/Readme.md

在 Azure CLI 任务中运行“Get-AzApplicationInsights”时出现此错误。

'Get-AzApplicationInsights' : The term 'Get-AzApplicationInsights' is not recognized as the name of a cmdlet, function.

整个 yaml 脚本如下所示:

steps:
- task: AzureCLI@2
  displayName: 'Azure CLI Powershell'
  inputs:
    azureSubscription: ####
    scriptType: ps
    scriptLocation: inlineScript
    inlineScript: |
     Write-Output "RESULTS:"
     az config set extension.use_dynamic_install=yes_without_prompt
     Get-AzApplicationInsights -ResourceGroupName ############# -Name ############## Select-String -Pattern "PricingPlan"

关于为什么无法识别 cmdlet,我是否遗漏了什么?我应该先导入一个模块吗?

4

2 回答 2

4

要运行 Azure powershell Get-AzApplicationInsights,只需在Azure PowerShell 任务中运行它。

或者如果你想使用 Azure CLI 任务,你可以az monitor app-insights component show直接使用 CLI 命令而不是 powershell 命令。

于 2021-03-04T01:52:30.910 回答
3

同意王悦。

检查这个文档Get-AzApplicationInsights是 power shell CMD install 还是 Azure CLI,我们应该通过任务 Azure Power Shell 而不是 Azure CLI 任务来运行它。

在此处输入图像描述

构建定义示例:

- task: AzurePowerShell@5
  displayName: 'Azure PowerShell script: InlineScript'
  inputs:
    azureSubscription: '{Subscription}'
    ScriptType: InlineScript
    Inline: 'Get-AzApplicationInsights -ResourceGroupName "{Resource Group Name}" -Name "{Application Insights name}" -IncludePricingPlan'
    azurePowerShellVersion: LatestVersion

结果:

在此处输入图像描述

于 2021-03-04T02:53:15.727 回答