renovate/lib/modules/manager/terraform
Michael Kriese 868ebbef63
refactor(manager): final strict null checks (#15185)
* refactor(manager): final strict null checks

* refactor: fix type issues

* test: fix mocking
2022-04-20 08:40:20 +02:00
..
__fixtures__ feat(terraform): add support for terraform_version in tfe_workspace blocks (#14522) 2022-03-14 09:53:26 +00:00
__snapshots__ feat(terraform): add support for terraform_version in tfe_workspace blocks (#14522) 2022-03-14 09:53:26 +00:00
lockfile refactor(manager): final strict null checks (#15185) 2022-04-20 08:40:20 +02:00
common.ts feat(terraform): add support for terraform_version in tfe_workspace blocks (#14522) 2022-03-14 09:53:26 +00:00
extract.spec.ts test: enforce lint style rules (#15085) 2022-04-12 14:49:49 +00:00
extract.ts refactor(manager): more strict null checks (#15168) 2022-04-20 06:19:59 +02:00
index.ts default config change (#15113) 2022-04-14 13:36:30 +01:00
modules.spec.ts test: enforce lint style rules (#15085) 2022-04-12 14:49:49 +00:00
modules.ts refactor(manager): more strict null checks (#15168) 2022-04-20 06:19:59 +02:00
providers.ts refactor(manager): more strict null checks (#15168) 2022-04-20 06:19:59 +02:00
readme.md feat(terraform): add support for terraform_version in tfe_workspace blocks (#14522) 2022-03-14 09:53:26 +00:00
required-providers.ts refactor(manager): more strict null checks (#15168) 2022-04-20 06:19:59 +02:00
required-version.ts refactor(manager): more strict null checks (#15168) 2022-04-20 06:19:59 +02:00
resources.ts refactor(manager): more strict null checks (#15168) 2022-04-20 06:19:59 +02:00
types.ts refactor(manager): more strict null checks (#15168) 2022-04-20 06:19:59 +02:00
util.spec.ts test: enforce lint style rules (#15085) 2022-04-12 14:49:49 +00:00
util.ts refactor(manager): more strict null checks (#15168) 2022-04-20 06:19:59 +02:00

Currently, Terraform supports renovating the following dependencies, where sub points represent hosting options of the dependencies:

  • modules
    • GitTags
    • GithubTags
    • TerraformRegistry ( Public and Private )
  • providers ( deprecated in Terraform 0.13.0 )
    • TerraformRegistry ( Public and Private )
  • required_providers block ( Terraform >= 0.13.0)
    • TerraformRegistry ( Public and Private )
  • required_version
  • helm_release
    • chart repository ( Public and Private )
  • docker_*
    • Docker registry ( Public and Private )
  • tfe_workspace ( terraform_version argument )

Terraform range constraints are supported:

  • >= 1.2.0: version 1.2.0 or newer
  • <= 1.2.0: version 1.2.0 or older
  • ~> 1.2.0: any non-beta version >= 1.2.0 and < 1.3.0, e.g. 1.2.X
  • ~> 1.2: any non-beta version >= 1.2.0 and < 2.0.0, e.g. 1.X.Y
  • >= 1.0.0, <= 2.0.0: any version between 1.0.0 and 2.0.0 inclusive

For fine-grained control, e.g. to turn off only parts of this manager, you can use the following depTypes:

resource depType Notes
Terraform provider provider
required Terraform provider required_provider
required Terraform version required_version This handles the required_version in terraform blocks
TFE workspace tfe_workspace This handles the terraform_version argument in tfe_workspace resources
Terraform module module
Helm release helm_release
Docker container docker_container
Docker image docker_image
Docker service docker_service

If you need to change the versioning format, read the versioning documentation to learn more.