Skip to main content

Cloud cost prevention and optimization tool.

Project description

Relia

The "ESLint" for Cloud Costs. Prevent cloud waste before it ships to production.

License: Apache 2.0 Python Code Style: Black

FeaturesHow It WorksQuick StartRoadmap


⚡ Problem: The "Bill Shock" Loop

Every engineering team knows the ritual:

  1. Engineer deploys a change (e.g., upsizing an RDS instance).
  2. CI/CD passes (tests pass, build succeeds).
  3. 30 days later: Finance asks why the AWS bill jumped by $5,000.

Existing tools (CloudHealth, Vantage) are reactive. They tell you after you've wasted the money.

🛡️ Solution: Shift Left

Relia sits in your Pull Request. It parses your Terraform/Pulumi changes, estimates the monthly cost impact, and blocks the merge if you blow your budget.

Tagline: "Stop paying the infrastructure tax. Start shipping."


🧩 How It Works

Relia runs as a CLI tool in your local environment or CI pipeline to minimize the feedback loop. See ARCHITECTURE.md for details.

flowchart LR
    A[Engineer] -->|`git push`| B(Pull Request)
    B --> C{Relia CI Check}

    subgraph "Relia Engine"
    D[Parser] -->|1. Read .tf files| E[Estimator]
    E -->|2. Fetch Prices| F[AWS Pricing API]
    F -->|3. Calculate Delta| G[Budget Policy]
    end

    C -->|Run| D

    G -->|Over Budget ❌| H[Block Merge]
    G -->|Under Budget ✅| I[Allow Merge]

    style H fill:#ffcccb,stroke:#ff0000
    style I fill:#ccffcc,stroke:#00ff00

✨ Features

1. Pre-Deploy Cost Estimation

Know exactly what a PR will cost before you click merge. Supports both standard .tf files and terraform plan -json output for high accuracy.

# Standard Estimate
$ relia estimate
📊 Relia Cost Estimate ...

# With Visual Topology
$ relia estimate --topology
🌳 Infrastructure Topology
☁️  Project
└── aws_instance
    └── 💻 web  $60.00/mo

# With Cost Diff
$ relia estimate --diff
📉 Cost Diff
+ aws_instance.web  +$60.00/mo

2. Budget Guardrails

Set clear policies in .relia.yaml and enforce them with relia check.

# .relia.yaml
budget: 500.0
rules:
  aws_instance: 50.0 # Max price per instance
$ relia check --budget 500 Within budget. Total: $450.00, Limit: $500.00

3. CI/CD Integration

Relia ships with a GitHub Action to block expensive PRs automatically.


🚀 Quick Start

1. Installation

Relia is available via PyPI (and Poetry):

pip install relia
# or
poetry add relia

2. Run Locally

Navigate to your Terraform project and run:

# Estimate cost
relia estimate ./infrastructure

# Check against budget
relia check ./infrastructure --budget 1000

3. Run with Docker

You can also run Relia without installing Python:

docker run --rm -v $(pwd):/app relia-io/relia estimate .

4. Add to CI/CD

Add Relia to your GitHub Actions workflow to block expensive PRs.

# .github/workflows/cost-check.yml
name: Cost Check
on: [pull_request]
jobs:
  relia:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - uses: relia-io/action@v1
        with:
          path: './infra'
          budget: '1000'
          markdown_report: 'relia_report.md'

🗺️ Roadmap

  • Phase 1 (MVP): CLI, Terraform Support, AWS Pricing.
  • Phase 2: GitHub Action, Budget Policies via .relia.yml.
  • Phase 3: Utilization Scanning ("Fix" Mode).

🤝 Contributing

We love contributions! Please check out CONTRIBUTING.md to get started.

📄 License

This project is licensed under the Apache 2.0 License.

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

relia_oss-0.1.2.tar.gz (12.2 kB view details)

Uploaded Source

Built Distribution

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

relia_oss-0.1.2-py3-none-any.whl (13.8 kB view details)

Uploaded Python 3

File details

Details for the file relia_oss-0.1.2.tar.gz.

File metadata

  • Download URL: relia_oss-0.1.2.tar.gz
  • Upload date:
  • Size: 12.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for relia_oss-0.1.2.tar.gz
Algorithm Hash digest
SHA256 51552f4bda92ea025a3925798409a13d89dff507de94e13b3604a8c974da71c7
MD5 efa6c0f957dae4cb5c02a14b5849f5c7
BLAKE2b-256 e4ff64bd4268afa6a6b747dc5da6ff5ce0f3cd43b19f7e0cb83f33ae2ac0a604

See more details on using hashes here.

Provenance

The following attestation bundles were made for relia_oss-0.1.2.tar.gz:

Publisher: release.yml on davidahmann/relia_oss

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file relia_oss-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: relia_oss-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 13.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for relia_oss-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 959cbfc822095f6304a4b3003c6e58330ac67953ceef8d741f9272adfa595bd9
MD5 ef54f227ec2bd1aa9d999d797699436f
BLAKE2b-256 d238fcfffab2ed03ff8bbd7b9a206a67ebd8b8305d5751df80b84fa74e3967be

See more details on using hashes here.

Provenance

The following attestation bundles were made for relia_oss-0.1.2-py3-none-any.whl:

Publisher: release.yml on davidahmann/relia_oss

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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