-
Keep them in one centralized repository (to not update/fix every in every repository you store them)
-
Use tags when referencing modules. This will ensure that if one the modules is being updated, you'd still use the same version instead which leads to stability and more predictable path
-
Reference module:
module "code_src" {
source = "git::https://ADDRESS/orgName/_git/Modules/@Terraform_Modules/some_module?ref=~{ref}~"
}
- Reference module with specific tag:
module "code_src" {
source = "git::https://ADDRESS/orgName/_git/Modules/@Terraform_Modules/some_module?ref=V0.1.7"
}