This project helps you to balance your daily work as a DevOps engineer, from simple bug fixes to project template generation. you don't need to search on Google for some routine jobs and it helps you with a robust prompt to simplify your career.
Builds and starts the Docker Compose stack:
make
Stops and removes the Docker Compose stack:
make down
Installs the Helm chart for the devopsgpt app on a Kubernetes cluster:
make helm-install
Uninstalls the Helm chart for the devopsgpt app:
make helm-uninstall
You can override the release name and namespace for Helm commands by running:
make [helm-install|helm-uninstall] namespace=NAMESPACE releaseName=RELEASENAME
The default namespace is default
and the default release name is devopsgpt
.
To run tests, run the following command
cd app && pytest tests/
To run this project, you will need to add the following environment variables to your .env file
KEY
(OpenAI API Key)
GET /download-folder{folder_name}/{source}
Parameter | Type | Description |
---|---|---|
folder_name |
string |
Required |
source |
string |
Required |
POST /IaC-basic/
Request Body | Type | Description |
---|---|---|
max_tokens |
int |
Required |
min_tokens |
int |
Required |
service |
string |
Required |
input |
string |
Required |
POST /IaC-bugfix/
Request Body | Type | Description |
---|---|---|
max_tokens |
int |
Required |
min_tokens |
int |
Required |
service |
string |
Required |
bug_description |
string |
Required |
version |
string |
Required |
POST /IaC-install/
Request Body | Type | Description |
---|---|---|
os |
string |
Required |
service |
string |
Required |
POST /IaC-template/docker
Request Body | Type | Description |
---|---|---|
docker_image |
boolean |
Required |
docker_container |
boolean |
Required |
POST /IaC-template/aws/ec2
Request Body | Type | Description |
---|---|---|
key_pair |
boolean |
Required |
security_group |
boolean |
Required |
aws_instance |
boolean |
Required |
ami_from_instance |
boolean |
Required |
POST /IaC-template/aws/s3
Request Body | Type | Description |
---|---|---|
s3_bucket |
boolean |
Required |
s3_bucket_versioning |
boolean |
Required |
POST /IaC-template/aws/iam
Request Body | Type | Description |
---|---|---|
iam_user |
boolean |
Required |
iam_group |
boolean |
Required |
POST /IaC-template/aws/elb
Request Body | Type | Description |
---|---|---|
security_group |
boolean |
Required |
lb_target_group |
boolean |
Required |
lb |
boolean |
Required |
lb_listener_rule |
boolean |
Required |
key_pair |
boolean |
Required |
launch_configuration |
boolean |
Required |
autoscaling_group |
boolean |
Required |
autoscaling_attachment |
boolean |
Required |
autoscaling_policy |
boolean |
Required |
POST /IaC-template/aws/efs
Request Body | Type | Description |
---|---|---|
efs_file_system |
boolean |
Required |
efs_mount_target |
boolean |
Required |
efs_backup_policy |
boolean |
Required |
POST /IaC-template/aws/argocd
Request Body | Type | Description |
---|---|---|
argocd_applicatio.sync_policy.auto_prune |
boolean |
No-Required |
argocd_applicatio.sync_policy.self_heal |
boolean |
No-Required |
argocd_applicatio.sync_policy.argocd_repository |
boolean |
Required |
argocd_applicatio.sync_policy.application_depends_repository |
boolean |
Required |
POST /Helm-template
Request Body | Type | Description |
---|---|---|
api_version |
integer |
Required |
pods.name |
string |
Required |
pods.image |
string |
Required |
pods.target_port |
integer |
Required |
pods.replicas |
integer |
Required |
pods.persistance |
dict |
Required |
pods.environment |
list(dict) |
Required |
pods.stateless |
boolean |
Required |
pods.ingress |
dict |
Required |
POST /ansible-install/nginx
Request Body | Type | Description |
---|---|---|
ansible_user |
string |
Required |
ansible_port |
string |
Required |
os |
string |
Required |
hosts |
list |
Required |
version |
string |
Required |
POST /ansible-install/docker
Request Body | Type | Description |
---|---|---|
ansible_user |
string |
Required |
ansible_port |
string |
Required |
os |
string |
Required |
hosts |
list |
Required |
POST /ansible-install/kuber
Request Body | Type | Description |
---|---|---|
ansible_user |
string |
Required |
ansible_port |
string |
Required |
os |
string |
Required |
hosts |
list |
Required |
version |
string |
Required |
k8s_worker_nodes |
list |
Required |
k8s_master_nodes |
list |
Required |
POST /docker-compose
Request Body | Type | Description |
---|---|---|
networks.app_network.driver |
string |
Required |
version |
string |
Required |
services |
list |
Required |
Client: React + TypeScript + Vite
Server: Python + FastAPI
Containerization: Docker + Kubernetes
CI/CD: Github Actions
Contributions are always welcome!
See CONTRIBUTING.md for ways to get started.
** Abolfazl Andalib - [email protected] **
** Mohammad Madanipour - [email protected] **