Skip to main content

CLI to crete production ready HCL configuration with human language

Project description

terrafy

Python License Issues Last Commit Gemini

CLI to generate production-ready Terraform HCL configuration from human language — powered by Gemini.


How It Works

  1. Authenticate — provide your Gemini API key
  2. Create — describe your infrastructure in plain English
  3. Done — terrafy generates a .tf file and saves it locally

Installation

Requirements

Build & Install

python3 -m build
pip3 install .

Rebuild (clean)

rm -rf build/ dist/ src/*.egg-info
python3 -m build
pip3 install .

Usage

Step 1 — Authenticate

terrafy authenticate <GEMINI_API_KEY>

Step 2 — Generate HCL

terrafy create "Create an S3 bucket to hold images. The name starts with the environment then project prefix"

This will:

  • Call Gemini with your request
  • Print the generated HCL to the terminal
  • Save it to a named .tf file (e.g. s3_bucket.tf) in your current directory

View Docs

terrafy docs

Commands

Command Description Example
authenticate Set your Gemini API key terrafy authenticate sk-qwerty
create Generate HCL from a natural language request terrafy create "S3 bucket for images"
docs Show usage instructions terrafy docs

Dependencies

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

terrafy-0.1.0.tar.gz (3.9 kB view details)

Uploaded Source

Built Distribution

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

terrafy-0.1.0-py3-none-any.whl (5.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: terrafy-0.1.0.tar.gz
  • Upload date:
  • Size: 3.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for terrafy-0.1.0.tar.gz
Algorithm Hash digest
SHA256 73c2dc9bf8f194dff29aa27657d3a07cf9657210e786b8c3cc4580308f4a12d8
MD5 7f79fadfc541e14f7fc2c4d74c935d88
BLAKE2b-256 68038ddca9c1a4017a884c63ce8b189a864a39b53d7e29c11e13bcef133496d7

See more details on using hashes here.

File details

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

File metadata

  • Download URL: terrafy-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 5.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for terrafy-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b5347cc646e4b768dd8f101f90a0df45279cd7af70cea67885778dd03d17402b
MD5 44fb60b9d45bc9a1d0a593fe380dc88c
BLAKE2b-256 4895e7c7574fa7698ce35574f3405f227c8a247802dff111615d27806bc2de4e

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