pez-infra/.github/actions/setup-tofu/action.yml
Rasmus Wejlgaard a218acac34 ci: extract shared SOPS/tofu steps into composite actions
The SOPS install + version, the decrypt loop, the OpenTofu version, and
the Backblaze backend-credential extraction were copy-pasted across
terraform.yml (twice), validate-terraform.yml, and _deploy-core.yml.
A version bump meant editing the same string in up to four places and
was easy to do partially.

Pull them into three local composite actions so each is defined once:
  - setup-tofu          (pins OpenTofu version)
  - sops-decrypt        (installs SOPS, decrypts *.enc.* in place)
  - tofu-backend-creds  (exports Backblaze S3 creds to GITHUB_ENV)

Behaviour is unchanged; sops-decrypt also matches *.enc.env everywhere
(previously only _deploy-core did), which is a no-op in terraform/.
2026-06-18 20:23:35 +01:00

15 lines
347 B
YAML

name: Set up OpenTofu
description: Install a pinned OpenTofu version (single source of truth for the version).
inputs:
version:
description: OpenTofu version to install
required: false
default: "1.9.0"
runs:
using: composite
steps:
- uses: opentofu/setup-opentofu@v2
with:
tofu_version: ${{ inputs.version }}