Skip to content

GitHub Actions for Terraform repositories

License

Notifications You must be signed in to change notification settings

open-turo/actions-tf

Repository files navigation

open-turo/actions-tf

GitHub Actions for terraform based repositories

Release Tests pass/fail License Contributions welcome CI semantic-release: angular Conventional commits Join us!

Actions

action: lint

Lint will run pre-commit linters against the consumer repository, optionally checking out, installing the required tools with action-setup-tools, and creating credentials for Terraform Cloud.

See usage here.

Documentation is found here.

action: release

Release will optionally checkout the consumer repository and attempt a Semantic Release using the root level configuration file (e.g. .releaserc.json) indicating branches and plugins to use to facilitate the release.

See usage here.

Documentation is found here.

action: test

Tests the terraform artifacts present in the consumer repository, using golang to perform the tests. open-turo/action-setup-tools will be used to install golang, and the version of golang that will be installed is governed by the version present in the .go-version file found in the root level of the consumer repository.

See usage here.

Documentation is found here.

action: auth

The auth Action is publicly available but is essentially a private Action that will conditionally create the Terraform command line interface configuration file, if it is not found. The file is typically named .terraformrc, but is not found under git control since it houses secrets and such. This file is needed for authentication with Terraform at runtime.

See usage here.

Documentation is found here.

Get Help

Each Action has a detailed README for how to use it as referenced above. Please review Issues, post new Issues against this repository as needed.

Contributions

Please see here for guidelines on how to contribute to this project.