subhamay-bhattacharyya-gha/Terraform Apply and Summary
Applies Terraform plan and writes a grouped resource summary with IDs and timestamp to GitHub Step Summary. Supports AWS, Azure, GCP, and HCP Terraform Cloud backends with built-in authentication.
View on GitHubTrust Signals
- Scorecard Score
- not yet scored
- Maintenance Recency
- Stale
- License
- None
Inputs
| name | description | required | default |
|---|---|---|---|
| cloud-provider | Target cloud provider or platform (aws, gcp, azure, snowflake, databricks, platform). Note: Snowflake and Databricks authentication must be configured in the calling workflow via environment variables. | yes | — |
| tf-config-path | Relative path from the repository root to the Terraform configuration directory. This is where your main.tf, variables.tf, and other Terraform files are located. | no | tf |
| release-tag | Git release tag to check out. If omitted, the latest commit on the default branch is used. | no | "" |
| ci-pipeline | Set to 'true' to include the commit SHA in the Terraform state key (suitable for CI/CD). Use 'false' for static state keys. | no | false |
| backend-type | Backend type to use: 's3' for AWS S3 or 'remote' for HCP Terraform Cloud. | no | s3 |
| s3-bucket | Name of the S3 bucket used as the backend for storing the Terraform state file (AWS only). | no | — |
| s3-region | AWS region where the S3 backend bucket is located (e.g., us-east-1, eu-west-1) (AWS only). | no | — |
| s3-key-prefix | Optional prefix for the S3 state key (AWS only). | no | "" |
| tfc-token | HCP Terraform Cloud API token. Should be passed as a secret. Required when backend-type is 'remote'. | no | — |
| aws-region | AWS region for authentication. Required when cloud-provider is 'aws'. | no | — |
| aws-role-to-assume | AWS IAM role ARN to assume. Required when cloud-provider is 'aws'. | no | — |
| gcp-wif-provider | GCP Workload Identity Federation provider. Required when cloud-provider is 'gcp'. | no | — |
| gcp-service-account | GCP service account email for authentication. Required when cloud-provider is 'gcp'. | no | — |
| azure-client-id | Azure client ID for authentication. Required when cloud-provider is 'azure'. | no | — |
| azure-tenant-id | Azure tenant ID for authentication. Required when cloud-provider is 'azure'. | no | — |
| azure-subscription-id | Azure subscription ID for authentication. Required when cloud-provider is 'azure'. | no | — |
| tf-plan-name | Name of the Terraform plan file | no | terraform-plan |
| tf-plan-file | File to save the Terraform plan output | no | tfplan |
| tf-vars-file | Optional Terraform variable file | no | terraform.tfvars |
Outputs
no outputs