terraform-fmt Target
Formats Terraform configuration files according to Terraform's standard formatting conventions.
Usage
nx run my-project:terraform-fmt
Description
The terraform-fmt target formats your Terraform files by:
- Standardizing indentation
- Aligning equals signs
- Fixing spacing
- Ensuring consistent formatting
Dependencies
None - formatting doesn't require initialization.
Behavior
Formatting Rules
The formatter applies:
- Consistent indentation (2 spaces)
- Proper spacing around operators
- Aligned equals signs in blocks
- Standardized block formatting
File Modification
By default, terraform-fmt modifies files in place. To check without modifying:
nx run my-project:terraform-fmt -- -check
Recursive Formatting
Formats all .tf files in the project directory recursively.
Caching
- All Projects: ✅ Cached (deterministic formatting operation)
Examples
Basic Formatting
nx run my-infra:terraform-fmt
Check Formatting (No Changes)
nx run my-infra:terraform-fmt -- -check
Format Specific Files
nx run my-infra:terraform-fmt -- main.tf variables.tf
Common Use Cases
- Code consistency: Maintain consistent formatting
- Pre-commit hooks: Format before committing
- CI/CD checks: Ensure formatted code
- Team standards: Enforce formatting standards
Related Targets
- terraform-validate: Validate after formatting
Notes
- Formatting is deterministic (same input = same output)
- Results are cached when files haven't changed
- Use
-checkin CI to verify formatting without modifying files - Formatting doesn't require Terraform initialization