我使用的订阅具有几个不同的已部署环境(开发、测试、过渡等)。每个环境都有自己的存储帐户,包含关联的Terraform状态文件。这些环境通过Azure DevOps管道部署。
通过门户、CLI等,很容易获取以这种方式创建的.tfstate文件。
但是是否可以使用'terraform state'命令访问这些状态文件,例如使用Azure Cloud Shell?如果可以,如何将它们指向正确的位置?
我试过在云 shell 中使用terraform状态命令,但是不清楚如何将它们指向正确的位置,或者这是否确实可行。
2条答案
按热度按时间11dmarpk1#
对于这些需求,您需要
AzurePowerShell
任务来实现您的需求。1,首先,如果您可以通过Azure门户中的PowerShell功能实现您的要求,则可以使用AzurePowerShell任务实现相同的要求(AzurePowerShell基于您提供的服务连接/服务主体在代理上运行。)
2,其次,您可以使用AzCopy下载文件,然后对其进行操作。DevOps Microsoft主机代理支持此工具。
pprl5pva2#
运行以下命令:tfstate(你可以给予像thils dev. tfstate这样的扩展名tfstate很重要)。
所有你需要移动到terraform文件目录enter image description here
并运行以下命令terraform state pull〉dev.tfstate
enter image description here