我正在编写一个teamcity管道,在该管道中,我使用terraform来旋转一些AWS实例。我的管道使用docker逐一调用所有步骤。
然而,terraform init在terraform中仍然失败:命令没有找到错误。
[11:05:00][Step 2/6] Initialising terraform
[11:05:00][Step 2/6] terraform init
[11:05:00][Step 2/6] Makefile:41: recipe for target 'terraformApply' failed
[11:05:00][Step 2/6] make: terraform: Command not found下面是我的Makefile的terraformApply片段
@echo Download terraform
# ${CURDIR}
wget https://releases.hashicorp.com/terraform/0.12.20/terraform_0.12.20_linux_amd64.zip
unzip -o terraform_0.12.20_linux_amd64.zip
@echo Terraform downloaded
# @echo Current Directory
# ${CURDIR}
sleep 60
@echo *
@echo Initialising terraform
terraform init
## sudo terraform/terraform plan
@echo Terraform initialised
TF_VAR_AWS_ACCESS_KEY="****" TF_VAR_AWS_SECRET_KEY="****" terraform apply -auto-approve
@echo Terraform setup done我的管道运行在linux代理上。
我直接在linux机器上运行了这个Makefile,它运行得很好。然而,在teamcity管道上,却找不到提取出来的地形。另外,使用Makefile中的echo *列出目录中的所有文件,我确实看到了存在于同一路径中的terraform。
任何帮助都将不胜感激。
发布于 2020-02-07 11:17:32
默认情况下,基于Linux的系统不搜索当前工作目录中的二进制文件。提取terraform之后,需要将其称为./terraform init。
https://stackoverflow.com/questions/60112338
复制相似问题