Plugin: updater-terraform
Updates a Terraform variable that stores the application version. It is useful when Terraform modules or deployments need the new release version written into configuration.
Installation
Section titled “Installation”Binary
Section titled “Binary”semrel plugin install @semrel/updater-terraformsemrel plugin install downloads the binary to .semrel/plugins/ and updates .semrel.lock. Commit .semrel.lock to pin the version for your team.
Docker
Section titled “Docker”Pre-built, signed multi-platform images (linux/amd64, linux/arm64) are published on every release:
docker pull ghcr.io/semrels/updater-terraform:latestVerify the image signature with cosign:
cosign verify ghcr.io/semrels/updater-terraform:latest \ --certificate-identity-regexp 'https://github.com/SemRels/updater-terraform/.github/workflows/release.yml.*' \ --certificate-oidc-issuer https://token.actions.githubusercontent.comConfiguration
Section titled “Configuration”version: 1plugins: - uses: @semrel/updater-terraform args: file: variables.tf variable: app_versionEnvironment Variables
Section titled “Environment Variables”| Name | Required | Default | Description |
|---|---|---|---|
SEMREL_PLUGIN_FILE | no | variables.tf | Terraform file to update. |
SEMREL_PLUGIN_VARIABLE | no | app_version | Terraform variable name that stores the release version. |
Release Context Variables
Section titled “Release Context Variables”SEMREL_NEXT_VERSIONSEMREL_CURRENT_VERSIONSEMREL_TAG_NAMESEMREL_DRY_RUN
Behavior
Section titled “Behavior”For a 1.4.0 release, the updater can change default = "1.3.2" to default = "1.4.0" for the configured Terraform variable.