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.0.tar.gz (7.3 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.0-py3-none-any.whl (6.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: terraformat-0.1.0.tar.gz
  • Upload date:
  • Size: 7.3 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.0.tar.gz
Algorithm Hash digest
SHA256 a15ddc136bb96926556ac77e1dccfe298c2272aa7dc5fc31f358ba4111c8b8e5
MD5 4188e4c3dddd3c063fa84e723b6176f7
BLAKE2b-256 013ccca191884069518c9211f35a80edbbff42145d42a06e44ba0f11804941d3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: terraformat-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 6.6 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cfbc6724f3ae6b8447cd9864adff97d4d6705ecd3a0a7e6b4da1c8a9a03d5f0f
MD5 fd2af064226df73830e9c933f317bf88
BLAKE2b-256 991a05d163c8036683d73f39ed1c913953cc5fdea06d029e073e750b2fe01bdc

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