Skip to main content

A automate tool for terraform projects

Project description

"Buy Me A Coffee"

Terramagic CLI

Terramagic is a command-line interface tool that makes it easy to create and manage Terraform projects.

Motivation

Creating a new Terraform project from scratch can be time-consuming and error-prone. With Terramagic, you can quickly generate a template for your project and customize it to your needs.

Requirements

Python 3.9 or higher

Installation

You can easily install Terramagic using pip:

pip3 install terramagic

Usage

Creating a new project

To create a new Terraform project, use the create command:

terramagic create --name <project_name> 

For example, to create a project called "infra" automatically 3 environments are created ("development", "staging" and "production") and respective tfvars, run:

terramagic create --name infra

This will generate a new directory called "infra" with the following structure:

infra
├── backend.tf
├── environments
│   ├── development
│   │   └── development.tfvars
│   ├── production
│   │   └── production.tfvars
│   └── staging
│       └── staging.tfvars
├── main.tf
├── main.tfvars
├── modules
│   ├── cluster
│   │   ├── main.tf
│   │   ├── outputs.tf
│   │   └── variables.tf
│   ├── instance
│   │   ├── main.tf
│   │   ├── outputs.tf
│   │   └── variables.tf
│   └── vpc
│       ├── main.tf
│       ├── outputs.tf
│       └── variables.tf
├── outputs.tf
├── providers
│   └── provider.tf
└── variables.tf

You can then edit these files to define your infrastructure resources and variables.

Deleting a project

To delete an existing project, use the delete command and specify the project name:

terramagic delete --name <project_name>

For example, to delete the "myapp" project, run:

terramagic delete --name infra

Help For detailed information about available commands and options, run:

terramagic --help

This will display the following message:

Usage: terramagic [OPTIONS] COMMAND [ARGS]...

  ClI tool to create Terraform project

Options:
  -v, --version  Show version
  --help         Show this message and exit.

Commands:
  create  Create a new Terraform project with specified name and environment
  remove  Delete the project

Enjoy using Terramagic to simplify your Terraform workflow!

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

terramagic-0.3.0.tar.gz (4.0 kB view details)

Uploaded Source

Built Distribution

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

terramagic-0.3.0-py3-none-any.whl (5.4 kB view details)

Uploaded Python 3

File details

Details for the file terramagic-0.3.0.tar.gz.

File metadata

  • Download URL: terramagic-0.3.0.tar.gz
  • Upload date:
  • Size: 4.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.11.4 Darwin/22.6.0

File hashes

Hashes for terramagic-0.3.0.tar.gz
Algorithm Hash digest
SHA256 44e6c340acb40d9a78ff3e48492ba236473bb44af2fa8835481f26a3088334c4
MD5 9a5adc6f918395b7aa568ef1d34c1b52
BLAKE2b-256 666803d507edbb9dd6304a63f726517c4b693dc6d70240b290f0c11f8ef1a2f9

See more details on using hashes here.

File details

Details for the file terramagic-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: terramagic-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 5.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.11.4 Darwin/22.6.0

File hashes

Hashes for terramagic-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0be4ca823d3293edbfb05299b8dfd66cbb16359333131691cf770980f0795f9b
MD5 804434a390dca8157de201ca1ec8c93f
BLAKE2b-256 13f518eedac78a417c7b682f5f45a9bb29edadc7d33a6c6bb7321c0f5e1bcb28

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