CLI to crete production ready HCL configuration with human language
Project description
terrafy
CLI to generate production-ready Terraform HCL configuration from human language — powered by Gemini.
How It Works
- Authenticate — provide your Gemini API key
- Create — describe your infrastructure in plain English
- Done — terrafy generates a
.tffile and saves it locally
Installation
Requirements
- Python 3.9+
- Gemini API key
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
.tffile (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
- typer — CLI framework
- rich — terminal formatting
- google-genai — Gemini API client
Project details
Release history Release notifications | RSS feed
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)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
73c2dc9bf8f194dff29aa27657d3a07cf9657210e786b8c3cc4580308f4a12d8
|
|
| MD5 |
7f79fadfc541e14f7fc2c4d74c935d88
|
|
| BLAKE2b-256 |
68038ddca9c1a4017a884c63ce8b189a864a39b53d7e29c11e13bcef133496d7
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b5347cc646e4b768dd8f101f90a0df45279cd7af70cea67885778dd03d17402b
|
|
| MD5 |
44fb60b9d45bc9a1d0a593fe380dc88c
|
|
| BLAKE2b-256 |
4895e7c7574fa7698ce35574f3405f227c8a247802dff111615d27806bc2de4e
|