如何解决Terraform Azure Pipeline 未获取工作区
我在 Azure Devops 中创建了一个使用 terraform 模块的管道。我已经能够运行我的管道,但我在检测创建的工作区时遇到问题。
bash 脚本会在工作区不存在的情况下创建它,您可以在这里看到脚本:
#!/bin/bash
echo "*************************************************************"
echo "* Create or select workspace *"
echo "*************************************************************"
if [ $(terraform workspace list | grep -c "$1") -eq 0 ] ; then
echo "** Create new workspace $1 **"
terraform workspace new "$1" -no-color
else
echo "** Switch to workspace $1 **"
terraform workspace select "$1" -no-color
fi
我确定工作区已创建,但 terraform 后续任务并未占用工作区。
您可以看到正在设置默认而不是开发。这是在 terraform plan
任务
2021-03-12T18:13:48.0424826Z [1m # azurerm_resource_group.k8s[0m will be created[0m[0m
2021-03-12T18:13:48.0426216Z [0m [32m+[0m[0m resource "azurerm_resource_group" "k8s" {
2021-03-12T18:13:48.0427763Z [32m+[0m [0m[1m[0mid[0m[0m = (known after apply)
2021-03-12T18:13:48.0428525Z [32m+[0m [0m[1m[0mlocation[0m[0m = "eastus"
2021-03-12T18:13:48.0429278Z [32m+[0m [0m[1m[0mname[0m[0m = "default-k8s"
2021-03-12T18:13:48.0430000Z [32m+[0m [0m[1m[0mtags[0m[0m = {
2021-03-12T18:13:48.0430713Z [32m+[0m [0m"environment" = "default"
2021-03-12T18:13:48.0431181Z }
2021-03-12T18:13:48.0431534Z }
以前是否有人遇到过这个问题,如果有的话,有没有关于让 terraform 任务检测在 bash 脚本中创建的工作区的建议?
解决方法
我在 bash 脚本部分遗漏了一个关键细节。这是我希望执行脚本的工作目录。
您可以在“高级”部分看到。如果没有该路径,脚本就会在错误的位置运行。
因此,我拥有 development 工作区和资源组 development-k8s。
2021-03-12T19:40:13.7898170Z [1m # azurerm_resource_group.k8s[0m will be created[0m[0m
2021-03-12T19:40:13.7898875Z [0m [32m+[0m[0m resource "azurerm_resource_group" "k8s" {
2021-03-12T19:40:13.7928911Z [32m+[0m [0m[1m[0mid[0m[0m = (known after apply)
2021-03-12T19:40:13.7930291Z [32m+[0m [0m[1m[0mlocation[0m[0m = "eastus"
2021-03-12T19:40:13.7954850Z [32m+[0m [0m[1m[0mname[0m[0m = "development-k8s"
2021-03-12T19:40:13.7955573Z [32m+[0m [0m[1m[0mtags[0m[0m = {
2021-03-12T19:40:13.7956351Z [32m+[0m [0m"environment" = "development"
2021-03-12T19:40:13.7956951Z }
2021-03-12T19:40:13.7957351Z }
我希望它可以为您节省我在整个过程中来回花费的几个小时:)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。