由于无法获取 ARM 参数而导致 Azure DevOps 构建工件错误:错误:需要输入:AzureResourceManagerConnection

问题描述 投票:0回答:1

我想通过 Azure DevOps 中的管道构建一个 Artifact,但我在下面看到一个警告和一个错误。

警告:

警告=== LocalFileClientService:无法读取文件:/home/vsts/work/1/s/template-parameters-definition.json,错误:{“stack”:“错误:ENOENT:没有这样的文件或目录,打开'/home/vsts/work/1/s/template-parameters-definition.json'","message":"ENOENT: 没有这样的文件或目录,打开 '/home/vsts/work/1/s/template-参数定义.json'","errno":-2,"code":"ENOENT","syscall":"open","path":"/home/vsts/work/1/s/template-parameters -definition.json"}

错误:

无法获取 ARM 参数:错误:需要输入:AzureResourceManagerConnection

就我而言,我只有一个资源组,在同一个存储库下,我有功能分支、开发分支和生产分支。 template-parameters-definition.json 文件位于workspace_publish 中。 (不知道为什么找不到)。

当我触发从开发分支到生产分支的拉取请求时,我想构建一个工件。

对于AzureResourceManagerConnection,我已在服务连接下检查它,我们已将其设置并命名为:

  • devops-datalake-开发

这是 yaml 文件的代码:

trigger:
- production

pool:
  vmImage: ubuntu-latest

resources:
  repositories:
  - repository: repo-001
    type: git
    name: repo-001
    ref: refs/heads/production


steps:
  - checkout: repo-001
  - task: Synapse workspace deployment@2
    displayName: Validate Synapse workspace Artifacts
    inputs:
      operation: 'validateDeploy'
      ArtifactsFolder: '$(System.DefaultWorkingDirectory)'
      azureSubscription: 'devops-datalake-Development'
      ResourceGroupName: 'rg-dev-001'
      TargetWorkspaceName: 'workspace-dev-001'
      DeleteArtifactsNotInTemplate: true

  - publish: $(System.DefaultWorkingDirectory)/ExportedArtifacts
    artifact: SynapseArtifact

我该如何调试它?

azure-devops azure-pipelines azure-pipelines-yaml azure-artifacts
1个回答
0
投票

警告

警告=== LocalFileClientService:无法读取文件:/home/vsts/work/1/s/template-parameters-definition.json,错误:{“stack”:“错误:ENOENT:没有这样的文件或目录,打开'/home/vsts/work/1/s/template-parameters-definition.json'","message":"ENOENT: 没有这样的文件或目录,打开 '/home/vsts/work/1/s/template-参数定义.json'","errno":-2,"code":"ENOENT","syscall":"open","path":"/home/vsts/work/1/s/template-parameters -definition.json"}

只是警告而不是错误。

template-parameters-definition.json
用于覆盖默认参数模板,与
TemplateParametersForWorkspace.json
分支中的
workspace_publish
不同。此自定义参数模板必须准确命名为
template-parameters-definition.json
并放置在 Git 协作分支的根文件夹中。这不是必需的。请参阅具有自定义参数的 Azure Synapse Analytics CI/CD 的详细信息。

根据错误“无法获取ARM参数:错误:需要输入:AzureResourceManagerConnection”,问题似乎与服务连接有关。要验证这一点,您可以单击任务设置

Synapse workspace deployment@2
-> 从下拉列表“Synapse 工作区连接类型”中选择您的订阅 -> 单击授权创建新的 ARM 服务连接。将新 ARM SC 的服务原则分配为目标工作区的工作区管理员。然后再次运行管道并检查是否有相同的错误。

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.