我通过使用tfenv包解决了这个问题,它可以构建适应平台架构的特定Terraform版本。
我运行以下命令来安装在我的 M1 Macbook 下运行的版本(在我的例子中为版本 1.3.3):
brew uninstall terraform
brew install tfenv
TFENV_ARCH=amd64 tfenv install 1.3.3
tfenv use 1.3.3
Run Code Online (Sandbox Code Playgroud)
在苹果推出新的 Apple Silicon 平台之前,该hashicorp/template
插件已经过时(有利于内置templatefile
功能)。该提供商唯一可用的版本是在该平台存在之前发布的版本。
要在 Apple Silicon 硬件上取得进展,您将有两个主要选择:
理想情况下,计划迁移出过时的提供程序并使用内置模板功能。该函数内置于 Terraform 本身,因此不需要任何外部提供程序即可工作。它也比旧template_file
数据源更强大templatefile
,可以接受任何类型的模板变量,但template_file
仅支持字符串。
如果您尚未准备好从该提供商迁移,那么您可能更愿意使用darwin_amd64
Rosetta 2 模拟下的 Terraform 版本。如果您使用 Terraform CLI 版本,那么darwin_amd64
它将依次安装darwin_amd64
提供程序包,因此您将能够使用模板提供程序的最终版本 v2.2.0。
Terraform 并未在 Rosetta 2 中得到正式支持,因此它的工作效果将取决于 Apple 模拟层的完整性,但它有望作为一种短期解决方法,直到您准备好停止使用这个过时的提供程序。
归档时间: |
|
查看次数: |
5180 次 |
最近记录: |