Flarops is an intelligent DevOps CLI tool designed to automate the deployment of multi-tier web applications. It analyzes your source code to automatically generate Kubernetes Helm charts, Terraform infrastructure configurations, Werf build manifests, and GitHub Actions CI/CD pipelines.
- Smart Project Analyzer: Automatically detects your frontend (React, Vue, Vite, etc.), backend (Go, Node.js, Python), and database type (MySQL, PostgreSQL, MongoDB).
- Helm Chart Generator: Creates Deployments, StatefulSets (with PVCs for databases), Services, and Traefik Ingress routing tailored to your project.
- Werf & Giterminism Integration: Dynamically generates
werf.yamlandwerf-giterminism.yamlfor seamless image building and deployment. - Terraform State Management: Automatically sanitizes project names and provisions an AWS S3 bucket to safely store your Terraform remote state.
- CI/CD Ready: Instantly generates a
.github/workflows/deploy.ymlpipeline.
To use Flarops locally during development, navigate to the Flarops directory and link it:
npm linkNavigate to the root of your application repository (it must be a Git repository) and run:
flarops initThe CLI will interactively ask for:
- AWS Credentials (or automatically pick up your default
~/.aws/credentials). - Docker Registry credentials (e.g., Docker Hub).
- Project Domain (optional, used for Ingress).
After initialization, Flarops will generate the following structure in your repository:
.
βββ deploy/
β βββ helm/ # Complete Kubernetes Helm chart
β βββ terraform/ # Terraform AWS infrastructure
β βββ .env # Production environment variables
β βββ .env.safety # Internal deploy configuration
βββ .github/
β βββ workflows/
β βββ deploy.yml # GitHub Actions pipeline
βββ werf.yaml # Werf build configuration
βββ werf-giterminism.yaml # Werf Giterminism settings
MIT