无法在 Azure DevOps 中使用自托管 Linux 代理运行 Terraform

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

我在通过自托管 Linux 代理使用 Azure Devops 运行 terraform 步骤时遇到问题。

下面是我的管道代码:-

触发: 没有任何 公关:

‘*’
pool:
name: Self-Hosted-Agent(pool name)
demands:
    agent.name -equals vmmgmtpuks0019(agent name)
    stages:

stage: terraform_installation
jobs:
    job: installation
    steps:
        task: TerraformInstaller@1
        displayName: ‘Terraform installation’
        inputs:
        terraformVersion: ‘latest’

stage: terraform_init
jobs:
    job: init
    steps:

        checkout: self

        task: TerraformTaskV4@4
        displayName: ‘Terraform init’
        inputs:
        provider: ‘azurerm’
        command: ‘init’
        workingDirectory: ‘’
        environmentServiceNameAzureRM: '’
        backendServiceArm: ‘’
        backendAzureRmResourceGroupName: '’
        backendAzureRmStorageAccountName: ‘’
        backendAzureRmContainerName: '’
        backendAzureRmKey: ‘**’

Terraform 安装步骤正在运行,以下是日志:-

开始:Terraform 安装 任务:Terraform 工具安装程序 描述:在缓存中查找或下载特定版本的 Terraform 并将其添加到 PATH 中 版本:1.216.24 作者:微软公司 帮助:了解有关此任务的更多信息

获取最新的 Terraform 版本。 下载:https://releases.hashicorp.com/terraform/1.7.5/terraform_1.7.5_linux_amd64.zip 提取存档 /usr/bin/unzip /package/_work/_temp/terraform-1.7.5-90331641-692a-439d-9d2d-eadd8ae50420.zip 存档:/package/_work/_temp/terraform-1.7.5-90331641-692a-439d-9d2d-eadd8ae50420.zip 膨胀:地形 缓存工具:terraform 1.7.5 x64 在 PATH 环境变量前添加目录:/package/_work/_tool/terraform/1.7.5/x64 验证 Terraform 安装... /package/_work/_tool/terraform/1.7.5/x64/terraform 版本 地形 v1.7.5 在 linux_amd64 上 整理:Terraform 安装

但是,terraform init 步骤失败并显示以下日志:-

启动:Terraform 初始化 任务:地形改造 描述:执行 terraform 命令来管理 AzureRM、Amazon Web Services(AWS) 和 Google Cloud Platform(GCP) 上的资源 版本:4.227.24 作者:微软公司 帮助:了解有关此任务的更多信息

##[错误]错误:无法在路径中找到 terraform 工具 整理:Terraform 初始化

有人可以建议解决这个问题吗?

我什至手动更新了linux机器内的环境变量以指向“/package/_work/_tool/terraform/1.7.5/x64”并尝试允许访问所有hashicorp和terraform相关的URL,但terraform init仍然没有完成并给出错误。然而,它对于微软托管代理来说工作得很好。

azure-devops terraform azure-pipelines azure-devops-self-hosted-agent hashicorp
1个回答
0
投票

您需要在同一作业中安装并运行 Terraform 命令。

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