Generate production-ready CI/CD configurations from plain English descriptions
Project description
DevOps Pipeline Configurator
Generate production-ready CI/CD configurations from plain English descriptions. No DevOps expertise required.
Features
- Natural Language Input: Describe your project in plain English
- Smart Detection: Automatically detects language, framework, and requirements
- Multiple Platforms: Supports Heroku, AWS, GCP, and Azure
- Complete Configs: Generates GitHub Actions workflows, Dockerfiles, and documentation
- Database Support: PostgreSQL, MySQL, MongoDB, Redis configurations included
Installation
pip install devops-configurator
Or install from source:
git clone https://github.com/shawngeorgie06/devops-configurator.git
cd devops-configurator
pip install -e .
Quick Start
# Interactive mode
devops
# One-liner with quick mode
devops -q -i "Node.js Express app with PostgreSQL deploying to Heroku"
# Specify output directory
devops -i "Python FastAPI to AWS" -o ./my-pipeline
Usage
Interactive Mode
Simply run devops and describe your project:
$ devops
Describe your project:
> Node.js Express API with PostgreSQL database, deploying to Heroku with staging and production environments
Command Line Options
| Option | Short | Description |
|---|---|---|
--input |
-i |
Project description (skip interactive prompt) |
--output |
-o |
Output directory (default: ./pipeline-config) |
--quick |
-q |
Quick mode: skip questions, use smart defaults |
--lang |
-l |
Set language: node or python |
--platform |
-P |
Set platform: heroku, aws, gcp, azure |
--here |
Output files to current directory | |
--preview |
-p |
Preview files without writing |
--non-interactive |
Skip all interactive prompts |
Examples
# Node.js to Heroku (quick mode)
devops -q -i "Express app with PostgreSQL" -P heroku --here
# Python to AWS
devops -q -i "FastAPI with Redis" -l python -P aws -o ./pipeline
# Preview without writing files
devops -i "Django app with PostgreSQL" --preview
# Full interactive experience
devops
Supported Technologies
Languages & Frameworks
| Language | Frameworks |
|---|---|
| Node.js | Express, Next.js, NestJS |
| Python | Django, Flask, FastAPI |
Deployment Platforms
| Platform | Features |
|---|---|
| Heroku | Procfile, app.json, add-ons |
| AWS | ECR, ECS, Docker |
| GCP | Cloud Run, Docker |
| Azure | Web Apps |
Databases & Services
- PostgreSQL
- MySQL
- MongoDB
- Redis
Generated Files
Depending on your configuration, the tool generates:
your-project/
├── .github/
│ └── workflows/
│ └── ci-cd.yml # GitHub Actions pipeline
├── .env.example # Environment variables template
├── Dockerfile # (for AWS/GCP)
├── .dockerignore # (for AWS/GCP)
├── Procfile # (for Heroku)
├── app.json # (for Heroku)
└── PIPELINE_README.md # Setup documentation
GitHub Actions Workflow Includes
- Test Stage: Linting, unit tests, coverage reports
- Build Stage: Production build, artifact upload
- Deploy Stages: Staging and production deployments
- Service Containers: Database and cache services for testing
Configuration
GitHub Secrets
After generating your pipeline, configure these secrets in your GitHub repository:
For Heroku:
HEROKU_API_KEYHEROKU_EMAILHEROKU_APP_NAME_STAGINGHEROKU_APP_NAME_PRODUCTION
For AWS:
AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEYAWS_REGION
For GCP:
GCP_SA_KEYGCP_REGION
For Azure:
AZURE_CREDENTIALS
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
License
This project is licensed under the MIT License - see the LICENSE file for details.
Roadmap
- GitLab CI/CD support
- Bitbucket Pipelines support
- More language support (Go, Java, Ruby)
- Kubernetes deployment configs
- Terraform infrastructure templates
- Web UI version
Support
If you encounter any issues or have questions, please open an issue.
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
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 devops_configurator-1.0.0.tar.gz.
File metadata
- Download URL: devops_configurator-1.0.0.tar.gz
- Upload date:
- Size: 22.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1beb32d9b53d65bf2d0c322a9d3df3336de729c641071bf12418dd3c33d9a8dd
|
|
| MD5 |
c6665f5a6241ace6ccd8a634eda4fa76
|
|
| BLAKE2b-256 |
ca29afcd2c1db445cb06357d35b73c038fbf9a806ddda3b6ce24f93d83176807
|
File details
Details for the file devops_configurator-1.0.0-py3-none-any.whl.
File metadata
- Download URL: devops_configurator-1.0.0-py3-none-any.whl
- Upload date:
- Size: 22.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
944d4892f8974b20aa027bf0bbb610587b99f7b4337fda92a0dd555e8c6a6d31
|
|
| MD5 |
11dbb2df0106a62847869fde2b4566f3
|
|
| BLAKE2b-256 |
3a28d05803c6dfb799de0c044d379930d4c1eaf3f59d32114688f986041be9dd
|