gpt4 book ai didi

azure - 如何修复 AzurePowerShell 管道任务中的语法错误?

转载 作者:行者123 更新时间:2023-12-03 04:02:02 24 4
gpt4 key购买 nike

我正在尝试使用以下管道任务部署自签名证书:

  - task: AzurePowerShell@5
inputs:
azureSubscription: '${{ parameters.ArmConnection }}'
ScriptType: 'InlineScript'
azurePowerShellVersion: '2.6.0'
Inline: |
$Pwd = ConvertTo-SecureString -String '1234' -Force -AsPlainText
$Base64 = 'MI..............3000.characters.here............M+wICB9A='
Import-AzKeyVaultCertificate -VaultName '${{ parameters.resourceGroupName }}''-my-keyvault' -Name ccg-self-signed-cert -CertificateString $Base64 -Password $Pwd

上面列出的 3 个 Powershell 命令在 PowerShell 命令提示符下对我来说效果很好。

但是当我尝试运行上述管道时,出现语法错误:

/pipelines/shared.yml: (Line: 164, Col: 11, Idx: 7111) - (Line: 164, Col: 11, Idx: 7111): While scanning a simple key, could not find expected ':'.

screenshot error

请问这里发生了什么?

第 164 行代码 $Base64 = '.....' 对于管道脚本来说是否太长?

或者我还有其他问题吗?

更新:

缩进内联脚本后(谢谢,Mathias!),我收到另一个错误,令人惊讶的是谈论“主机名”:

##[section]Starting: AzurePowerShell
==============================================================================
Task : Azure PowerShell
Description : Run a PowerShell script within an Azure environment
Version : 5.168.1
Author : Microsoft Corporation
Help : https://aka.ms/azurepowershelltroubleshooting
==============================================================================
Generating script.
========================== Starting Command Output ===========================
##[command]"C:\windows\System32\WindowsPowerShell\v1.0\powershell.exe" -NoLogo -NoProfile -NonInteractive -ExecutionPolicy Unrestricted -Command ". 'D:\a\_temp\13d4bf76-87b6-4ac4-9bb5-51ef481420d0.ps1'"
##[command]Import-Module -Name C:\Modules\az_2.6.0\Az.Accounts\1.7.5\Az.Accounts.psd1 -Global
##[command]Clear-AzContext -Scope Process
##[command]Clear-AzContext -Scope CurrentUser -Force -ErrorAction SilentlyContinue
##[command]Connect-AzAccount -ServicePrincipal -Tenant *** -Credential System.Management.Automation.PSCredential -Environment AzureCloud @processScope
##[command] Set-AzContext -SubscriptionId XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX -TenantId ***
##[error]Invalid URI: The hostname could not be parsed.
##[error]PowerShell exited with code '1'.
##[section]Finishing: AzurePowerShell

-VaultName '${{parameters.resourceGroupName }}''-my-keyvault' 是将 RG 名称(作为参数传递)添加到字符串“-my-keyvault”之前的正确方法吗? ?

更新2:

使用 -VaultName '${{parameters.resourceGroupName }}-my-keyvault' 解决了我的问题

最佳答案

我建议选择启用系统诊断并再次运行管道以获得更详细的信息

关于azure - 如何修复 AzurePowerShell 管道任务中的语法错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61804990/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com