Skip to main content

A wrapper for the Terraform CLI that provides a formatted plan summary.

Project description

terraformat

A wrapper for the Terraform CLI that provides a formatted plan summary.

Overview

terraformat is a command-line tool designed to improve the readability of terraform plan outputs. It runs your Terraform plan and summarizes the planned resource changes (create, update, destroy) in a color-coded, tabular format. This helps teams more quickly and safely review infrastructure changes before applying them.

Features

  • Runs any terraform command, but enhances terraform plan with a summary table
  • Color-coded output for quick identification of create (green), update (yellow), and destroy (red) actions
  • Parses complex Terraform resource addresses, including those in modules
  • Integrates seamlessly into existing Terraform workflows

Installation

pip install .
pip install git+https://github.com/henryupton/terraformat.git

Requirements

  • Python 3.7+
  • Terraform installed and available in your PATH

Python dependencies (installed automatically):

  • click
  • tabulate

Usage

After installation, you can use terraformat as a drop-in replacement for terraform. All commands are passed through to Terraform, but plan will be summarized:

terraformat plan [ARGS...]

Example output

🚀 Running 'terraform plan'...
--- Original Terraform Output ---
[standard terraform plan output here]

==================================================
📊 Terraformat Summary
==================================================
+----------------+---------+---------+----------+
| Resource Type  | Create  | Update  | Destroy  |
+================+=========+=========+==========+
| aws_instance   |   1     |   0     |    1     |
| local_file     |   1     |   0     |    0     |
| random_pet     |   0     |   1     |    0     |
+----------------+---------+---------+----------+
| Total          |   2     |   1     |    1     |
+----------------+---------+---------+----------+

If you run other Terraform commands, they’re just passed through unchanged:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

terraformat-0.1.6.tar.gz (7.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

terraformat-0.1.6-py3-none-any.whl (6.8 kB view details)

Uploaded Python 3

File details

Details for the file terraformat-0.1.6.tar.gz.

File metadata

  • Download URL: terraformat-0.1.6.tar.gz
  • Upload date:
  • Size: 7.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.11

File hashes

Hashes for terraformat-0.1.6.tar.gz
Algorithm Hash digest
SHA256 b8ddecfcfa8e57d3ed636bf9201187e71dbc6fd83c942e99c860f0d6aa09488e
MD5 6cd167d60db8f7f7baf89458295c23bc
BLAKE2b-256 25c5ebf3e46ed23e98addc11c776ffaf4e38eb292dd2d37fc9e9395a97318afb

See more details on using hashes here.

File details

Details for the file terraformat-0.1.6-py3-none-any.whl.

File metadata

  • Download URL: terraformat-0.1.6-py3-none-any.whl
  • Upload date:
  • Size: 6.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.11

File hashes

Hashes for terraformat-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 3def0618fc977ae8508a8e8309556acf71754ee36bb23917625ad5727bdc547e
MD5 5323faac9e4a4fe722702531baf49ce7
BLAKE2b-256 b6d2ff82e3f6d63fe801cc8301f70e9112e977186031333ef929da75fa577ebf

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page