在Terraform中管理模块版本

在Terraform中管理模块版本,terraform,Terraform,随着我们的Terraform存储库数量的增长,确保对模块的所有引用都使用最新的标记版本成为一个问题 人们如何管理他们的Terraform模块依赖关系 理想情况下,在运行计划时,当模块的后续标记可用时,会发出警告的东西。最新的是邪恶的(同样适用于docker图像标记):-) 请用标签确定terraform模块的来源 样本: module "vpc" { source = "git::https://example.com/vpc.git?ref=v1.2.0" } 有了这些,基础设施或应用程

随着我们的Terraform存储库数量的增长,确保对模块的所有引用都使用最新的标记版本成为一个问题

人们如何管理他们的Terraform模块依赖关系


理想情况下,在运行计划时,当模块的后续标记可用时,会发出警告的东西。

最新的
是邪恶的(同样适用于docker图像标记):-)

请用标签确定terraform模块的来源

样本:

module "vpc" {
  source = "git::https://example.com/vpc.git?ref=v1.2.0"
}

有了这些,基础设施或应用程序团队可以继续使用新功能,而不会影响引用此模块的其他团队或项目。

最新的
是邪恶的(同样适用于docker图像标签):-)

请用标签确定terraform模块的来源

样本:

module "vpc" {
  source = "git::https://example.com/vpc.git?ref=v1.2.0"
}

有鉴于此,基础架构或应用程序团队可以继续使用新功能,而不会影响引用此模块的其他团队或项目。

这不是一个解决方案,而是为了让大家更清楚地看到有一个更高版本的模块可用,我们已经编写了一个定制的预提交钩子,它检查是否有新版本可用,并显示警告


另一个选择是使用Terragrunt之类的工具,它可以通过代码来管理模块版本。

这不是一个解决方案,但为了更明显地看到有更高版本的模块可用,我们编写了一个自定义预提交挂钩,它检查是否有新版本可用,并显示警告


另一种选择是使用Terragrunt之类的工具,它可以通过代码管理模块版本。

这就是我们正在做的,您如何管理搜索所有代码并更新到v1.3.0?这就是我们正在做的,您如何管理搜索所有代码并更新到v1.3.0?