Skip to content

Repository files navigation

🚀 DevOps-OS

Automate your entire DevOps lifecycle — from CI/CD pipelines to Kubernetes deployments, infrastructure hardening baselines, and SRE dashboards — using a conversational AI assistant or a single CLI command.

CISanity TestsVersionPython 3.10+License: MITOpen SourceGitHub Stars


Category: DevOps Automation · AI-Assisted Infrastructure · GitOps · SRE Tooling


✨ What is DevOps-OS?

DevOps-OS is an open-source DevOps automation platform that scaffolds production-ready CI/CD pipelines, Kubernetes configurations, and SRE observability configs — in seconds, from a single CLI command or an AI chat prompt.

FeatureDescription
🚀 CI/CD GeneratorsOne-command scaffolding for GitHub Actions, GitLab CI, and Jenkins pipelines
☸️ GitOps Config GeneratorKubernetes manifests, ArgoCD Applications, and Flux CD Kustomizations
📊 SRE Config GeneratorPrometheus alert rules, Grafana dashboards, and SLO manifests
🔐 Infrastructure HardeningGenerate Kyverno policies, InSpec profiles, Checkov checks, and compliance mappings for CIS, STIG, NSA/CISA, Pod Security Standards, and Essential Eight baselines
🧪 Unit Test ScaffoldGenerate pytest, Jest, Vitest, Mocha, or Go test configs with one command
🤖 MCP ServerPlug DevOps-OS tools into Claude or ChatGPT as native AI skills
🛠️ Dev ContainerPre-configured multi-language environment (Python · Java · Go · JavaScript)
🔄 Process-FirstBuilt-in education on the Process-First SDLC philosophy and how it maps to every DevOps-OS tool

👥 Who Is This For?

DevOps-OS is built for anyone who wants to move faster and stop writing boilerplate DevOps configs by hand.

AudienceHow DevOps-OS helps
Solo developersGet a production-ready CI/CD pipeline in under a minute — no DevOps expertise needed
DevOps / platform engineersStandardise pipeline templates across teams with a single CLI command
SRE teamsGenerate Prometheus alert rules, Grafana dashboards, and SLO manifests instantly
DevOps learners & studentsLearn the Process-First SDLC philosophy through runnable examples, not just theory
AI / LLM buildersPlug every scaffold tool into Claude or ChatGPT via the built-in MCP server
Open-source contributorsA well-structured Python project with a clean CLI, full test suite, and contribution guide

🏗️ Tech Stack

CI/CD & GitOps

GitHub ActionsGitLab CIJenkinsArgoCDFlux CD

Kubernetes & Infrastructure

KubernetesHelmKustomizeTerraformDocker

Observability

PrometheusGrafana

Languages

PythonGoJavaJavaScript

Unit Testing

pytestJestMochaVitestGo Test

AI Integration

ClaudeOpenAIGitHub Copilot


⚡ Quick Start

Prerequisites


1 — Clone & install

git clone https://github.com/cloudengine-labs/devops_os.git
cd devops_os
# Create and activate a virtual environment (recommended)
python -m venv .venv
source .venv/bin/activate # macOS / Linux# .venv\Scripts\activate # Windows (cmd / PowerShell)
pip install -r cli/requirements.txt

2 — Learn the Process-First philosophy (recommended first step)

DevOps-OS is built on the Process-First SDLC philosophy from cloudenginelabs.io. Run the process-first command to understand why each tool exists before you start using it:

# Full overview — what Process-First is, how it maps to DevOps-OS, and learning tips
python -m cli.devopsos process-first
# Just the 5 core principles
python -m cli.devopsos process-first --section what
# Table: which scaffold command encodes which principle
python -m cli.devopsos process-first --section mapping
# AI prompts and book recommendations for beginners
python -m cli.devopsos process-first --section tips

Tip: Run --section mapping to see exactly which devopsos scaffold command to use for each DevOps goal before generating any config.
See docs/PROCESS-FIRST.md for the full reference.


3 — Generate a GitHub Actions workflow

# Complete CI/CD for a Python + JavaScript project
python -m cli.devopsos scaffold gha --name my-app --languages python,javascript --type complete# With Kubernetes deployment
python -m cli.devopsos scaffold gha --name my-app --languages python --type complete --kubernetes
# With Kubernetes deployment via Kustomize
python -m cli.devopsos scaffold gha --name my-app --languages python --kubernetes --k8s-method kustomize

4 — Generate other pipelines & configs

All generators are available as subcommands of the unified CLIpython -m cli.devopsos scaffold <target>:

# Jenkins pipeline → Jenkinsfile
python -m cli.devopsos scaffold jenkins --name my-app --languages java --type complete# GitLab CI pipeline → .gitlab-ci.yml
python -m cli.devopsos scaffold gitlab --name my-app --languages python,go --type complete# ArgoCD GitOps configs → argocd/application.yaml + argocd/appproject.yaml
python -m cli.devopsos scaffold argocd --name my-app --repo https://github.com/myorg/my-app.git
# Flux GitOps configs → flux/git-repository.yaml + flux/kustomization.yaml + flux/image-update-automation.yaml
python -m cli.devopsos scaffold argocd --name my-app --method flux --repo https://github.com/myorg/my-app.git
# SRE configs (Prometheus, Grafana, SLO) → sre/ directory
python -m cli.devopsos scaffold sre --name my-app --team platform --slo-target 99.9
# Infrastructure hardening baselines → hardening/ directory
python -m cli.devopsos scaffold hardening --standard cis-k8s --type kyverno --environment production
# Dev container configuration → .devcontainer/devcontainer.json + .devcontainer/devcontainer.env.json
python -m cli.devopsos scaffold devcontainer --languages python,go --cicd-tools docker,terraform --kubernetes-tools k9s,flux
# Unit test configs + sample stubs (Python, JS, Go, TypeScript)
python -m cli.devopsos scaffold unittest --name my-app --languages python
python -m cli.devopsos scaffold unittest --name my-app --languages python,javascript,go
# Combined GitHub Actions + Jenkins in one step
python -m cli.devopsos scaffold cicd --name my-app --type build --languages python --github --jenkins
# Kubernetes manifests
python kubernetes/k8s-config-generator.py --name my-app --image ghcr.io/myorg/my-app:v1

Use python -m cli.devopsos scaffold --help to list all available targets and python -m cli.devopsos scaffold <target> --help to see every option for a specific target.

See CLI Commands Reference for the full option tables and every default output path.
For hardening-specific standards, outputs, and examples, see Infrastructure Hardening Sprint.


5 — Interactive wizard (all-in-one)

python -m cli.devopsos init # interactive project configurator

Single Cli Command for Platform Engineering Capabilities - Dev Container and CICD Environment Setup


6 — Use with AI (MCP Server)

Connect DevOps-OS tools to any MCP-compatible AI assistant: Claude Code, Claude Desktop, Cursor, VS Code Copilot, Windsurf, and Zed.

Fastest setup (Claude Code CLI):

# Download the setup script
curl -fsSLo setup_devops_os_mcp.sh https://raw.githubusercontent.com/cloudengine-labs/devops_os/main/mcp_server/setup_devops_os_mcp.sh
# (Optional but recommended) Inspect the script before running it
less setup_devops_os_mcp.sh
# Run the setup script
bash setup_devops_os_mcp.sh

Already cloned the repo? Run locally instead:

bash mcp_server/setup_devops_os_mcp.sh --local

Then ask your AI assistant:

"Generate a complete GitHub Actions CI/CD workflow for my Python API with Kubernetes deployment using ArgoCD."

Full setup guide → — covers Claude Desktop, Cursor, VS Code, Windsurf, Zed, and troubleshooting.

See skills/README.md for Claude API & OpenAI function-calling examples.


🗂️ Quick Start Commands

Copy-paste commands for every CLI feature. No config files needed — all options have sensible defaults.

# ── Setup ──────────────────────────────────────────────────────────────────
git clone https://github.com/cloudengine-labs/devops_os.git &&cd devops_os
pip install -r cli/requirements.txt
# ── Check version ──────────────────────────────────────────────────────────
python -m cli.devopsos --version # → devopsos version 0.4.0# ── Interactive project wizard ─────────────────────────────────────────────
python -m cli.devopsos init # guided setup for any project# ── GitHub Actions ─────────────────────────────────────────────────────────
python -m cli.devopsos scaffold gha --name my-app --type build --languages python
python -m cli.devopsos scaffold gha --name my-app --type complete --languages python,javascript --kubernetes
# ── Jenkins ────────────────────────────────────────────────────────────────
python -m cli.devopsos scaffold jenkins --name my-app --type build --languages java
# ── GitLab CI ──────────────────────────────────────────────────────────────
python -m cli.devopsos scaffold gitlab --name my-app --type build --languages python
python -m cli.devopsos scaffold gitlab --name my-app --type complete --kubernetes
# ── ArgoCD / Flux GitOps ───────────────────────────────────────────────────
python -m cli.devopsos scaffold argocd --name my-app --repo https://github.com/org/my-app.git
python -m cli.devopsos scaffold argocd --name my-app --method flux --repo https://github.com/org/my-app.git
# ── SRE (Prometheus + Grafana + SLO) ──────────────────────────────────────
python -m cli.devopsos scaffold sre --name my-app --team platform --slo-target 99.9
# ── Infrastructure Hardening ───────────────────────────────────────────────
python -m cli.devopsos scaffold hardening --standard cis-k8s --type kyverno --environment production
python -m cli.devopsos scaffold hardening --standard all --output hardening
# ── Dev Container ──────────────────────────────────────────────────────────
python -m cli.devopsos scaffold devcontainer --languages python,go --cicd-tools docker,terraform
# ── Combined CI/CD (GHA + Jenkins in one step) ────────────────────────────
python -m cli.devopsos scaffold cicd --name my-app --type build --languages python --github --jenkins
# ── Unit Tests ─────────────────────────────────────────────────────────────
python -m cli.devopsos scaffold unittest --name my-app --languages python
python -m cli.devopsos scaffold unittest --name my-app --languages python,javascript,go
# ── Process-First philosophy ───────────────────────────────────────────────
python -m cli.devopsos process-first # full overview
python -m cli.devopsos process-first --section mapping # which tool for which goal# ── Help for any command ───────────────────────────────────────────────────
python -m cli.devopsos --help
python -m cli.devopsos scaffold --help
python -m cli.devopsos scaffold gha --help

Full option reference:docs/CLI-COMMANDS-REFERENCE.md
CLI test report:docs/CLI-TEST-REPORT.md


📁 Repository Structure

devops_os/
├── .devcontainer/ # Redirect note; active devcontainer generation lives in cli/templates/devcontainer/
├── .legacy/ # Archived repo-local devcontainer implementation
├── .github/workflows/ # CI, Sanity Tests, and GitHub Pages workflows
├── cli/ # CLI scaffold tools (gha, gitlab, jenkins, argocd, sre, hardening, unittest, devopsos)
├── kubernetes/ # Kubernetes manifest generator
├── mcp_server/ # MCP server for AI assistant integration (Claude, ChatGPT)
├── skills/ # Claude & OpenAI tool/function definitions
├── docs/ # Detailed guides and test reports
├── tests/ # Comprehensive test suite
├── go-project/ # Example Go application
└── scripts/ # Helper scripts

🧪 Testing

Sanity Tests

All tests run without real infrastructure — everything uses in-memory mock data.

pip install -r cli/requirements.txt -r mcp_server/requirements.txt pytest pytest-html
python -m pytest cli/test_cli.py mcp_server/test_server.py tests/test_comprehensive.py -v

Latest results: ✅ 260 passed · ⚠️ 2 xfailed (known tracked bugs) · ❌ 0 failed

ReportDescription
🖥️ CLI Test ReportCLI v0.2.0 post-revamp test results — 52 tests, all passing
📋 Detailed Test ReportFull results with CLI output samples for every scaffold command
🌐 Interactive HTML ReportSelf-contained pytest HTML report
📄 CLI Output ExamplesReal captured output for all scaffold sub-commands
⚙️ Sanity WorkflowGitHub Actions workflow running all scenarios on every push

🛠️ Dev Container

The pre-configured dev container gives you a consistent multi-language environment with all CI/CD tools included.

Supported languages & tools
CategoryTools
LanguagesPython 3.12 · Java 21 · Node.js 22 · Go 1.25 · Ruby · PHP · Rust · C# · Kotlin · C/C++
Build toolspip · Maven · Gradle · npm · yarn · Composer · dotnet · Kotlin compiler · clang
Linting/Testingpytest · black · flake8 · mypy · Jest · ESLint · golangci-lint
ContainersDocker CLI · Docker Compose
IaCTerraform
Kuberneteskubectl · Helm · Kustomize · K9s · KinD · Minikube
GitOpsArgoCD CLI · Flux CD
SecretsKubeseal (Sealed Secrets)
ObservabilityPrometheus · Grafana

Dev container generation now uses two supported paths:

  • python -m cli.devopsos init on a fresh target generates .devcontainer/Dockerfile, .devcontainer/devcontainer.json, and .devcontainer/devcontainer.env.json from templates.
  • python -m cli.devopsos scaffold devcontainer generates the legacy two-file .devcontainer/devcontainer.json and .devcontainer/devcontainer.env.json.

The old checked-in repo-local .devcontainer stack has been archived under .legacy/devcontainer/.

Generate a dev container configuration from the CLI instead of editing JSON by hand:

# Generate devcontainer.json and devcontainer.env.json for a Python + Go project
python -m cli.devopsos scaffold devcontainer \
--languages python,go \
--cicd-tools docker,terraform,kubectl \
--kubernetes-tools k9s,flux \
--devops-tools prometheus,grafana

For generated projects, you can customize the generated .devcontainer/devcontainer.env.json directly to enable or disable any language or tool, then rebuild or reopen in VS Code.


📚 Documentation

GuideDescription
🚀 Getting StartedEasy step-by-step guide — start here
📖 CLI Commands ReferenceComplete reference — every option, input file, and output location
🖥️ CLI Test Reportv0.4.0 CLI test results — 62 tests, all passing
🔄 Process-First PhilosophyWhat Process-First means, how it maps to DevOps-OS, and AI learning tips
📦 Dev Container SetupSet up and customize the dev container
⚡ Quick Start ReferenceEssential CLI commands for all features
⚙️ GitHub Actions GeneratorGenerate and customize GitHub Actions workflows
🦊 GitLab CI GeneratorGenerate and customize GitLab CI pipelines
🔧 Jenkins Pipeline GeneratorGenerate and customize Jenkins pipelines
🔄 ArgoCD / Flux GitOpsGenerate ArgoCD Applications and Flux Kustomizations
📊 SRE ConfigurationPrometheus rules, Grafana dashboards, SLO manifests
🔐 Infrastructure HardeningStandards, output layout, and CLI examples for the hardening scaffold
🧪 Unit Test ScaffoldGenerate pytest, Jest, Vitest, Mocha, or Go test configs
☸️ Kubernetes DeploymentsGenerate and manage Kubernetes deployment configs
🤖 MCP ServerConnect DevOps-OS tools to Claude or ChatGPT
🧠 AI SkillsUse DevOps-OS with the Anthropic API or OpenAI function calling

🤝 Contributing

Contributions are welcome! Whether it's a bug fix, a new scaffold generator, or documentation improvement — feel free to open an issue or submit a pull request.

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/my-feature
  3. Commit your changes: git commit -m 'feat: add my feature'
  4. Push and open a pull request

Read contribution guideline here


📄 License

This project is licensed under the MIT License — see the LICENSE file for details.


Made with ❤️ by CloudEngine Labs

About

DevOps-OS is an open-source DevOps automation platform that scaffolds production-ready CI/CD pipelines, Kubernetes configurations, and SRE observability configs — in seconds, from a single CLI command or an AI chat prompt.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

37 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages