Terraform(v0.13)如何获取(第三方)提供程序二进制文件的最新版本?
在最新的Terraform版本v0.13中,我试图了解如何为第三方Terraform提供者建立提供者注册中心 采取以下Terraform(v0.13)如何获取(第三方)提供程序二进制文件的最新版本?,terraform,Terraform,在最新的Terraform版本v0.13中,我试图了解如何为第三方Terraform提供者建立提供者注册中心 采取以下terraform配置块: terraform { required_providers { happy_cloud = { source = "registry.example.com/acme/happy_cloud" } } } 从registry.example.com获取,Terraform如何知道acme/ha
terraform
配置块:
terraform {
required_providers {
happy_cloud = {
source = "registry.example.com/acme/happy_cloud"
}
}
}
从
registry.example.com
获取,Terraform如何知道acme/happy_cloud
提供程序二进制文件的最新可用版本是什么?(例如v1.2.3)Terraform通过扮演的客户端角色查找指定的提供者
给定源地址registry.example.com/acme/happy_cloud
,Terraform将:
- 在hostname
上执行,以查找其提供程序注册表基URL(如果有)registry.example.com
- 将该操作调用为
,以了解该提供商可以使用哪些版本acme/happy_cloud/versions
- 使用选择与给定版本约束匹配的最新版本(在本例中为空,因此不受约束)。在本例中,我们假设v1.2.3是最新版本
- 将操作调用为
(或根据当前平台的不同操作系统/arch),以获取为该目标平台构建的版本的软件包位置和签名密钥acme/happy_cloud/1.2.3/download/linux/amd64
- 最后,下载并验证指定的包文件
registry.example.com/acme/happy_cloud
,Terraform将:
- 在hostname
上执行,以查找其提供程序注册表基URL(如果有)registry.example.com
- 将该操作调用为
,以了解该提供商可以使用哪些版本acme/happy_cloud/versions
- 使用选择与给定版本约束匹配的最新版本(在本例中为空,因此不受约束)。在本例中,我们假设v1.2.3是最新版本
- 将操作调用为
(或根据当前平台的不同操作系统/arch),以获取为该目标平台构建的版本的软件包位置和签名密钥acme/happy_cloud/1.2.3/download/linux/amd64
- 最后,下载并验证指定的包文件