π You can use Enterprise-grade CloudOps Automation Runbooks, integrating AWS Cloud Foundations & FinOps best practices for DevOps and SRE teams π
π The CloudOps Runbooks ποΈ
The CloudOps Runbooks project shows solid foundation but needs optimization in several key areas: dependency management, CI/CD pipeline efficiency, code organization following cloud-foundations patterns, and integration of battle-tested AWS automation tools.
- π Mission: Our mission is to simplify CloudOps Automation for DevOps and SRE teams by providing an extensive, community-driven repository of actions and runbooks that streamline day-to-day operations.
- ποΈ Vision: Our vision is to be the π₯ One-Stop Multi-Cloud Platform Engineering & Best Practices Solution for all CloudOps Automation needs, allowing DevOps and SRE teams to automate their workflows with ease, improve efficiency, and minimize toil.
- ποΈ AWS Cloud Foundations Integration - Battle-tested templates and automation from AWS best practices
- π Cloud Foundations Assessment Tool (CFAT) - Automated AWS account assessment and compliance checking
- π Comprehensive Inventory Scripts - Full AWS resource discovery and management
- ποΈ Control Tower Automation - Streamlined AWS Control Tower deployment and management
- π Identity & Access Management - AWS IAM and SSO/IDC automation
- π Centralized Logging - CloudTrail and Config aggregation patterns
- π·οΈ Tagging Governance - Organizational tagging policies and enforcement
- β‘ Lightning-Fast Toolchain - Powered by
uvfor dependency management, ruff, ty - π³ Production-Ready PyPi and Containers - Multi-arch Docker images with Wolfi base
- π§ͺ Comprehensive Testing - Automated testing with pytest and coverage reporting
- π Rich Documentation - MkDocs-powered documentation site
- π€ AI-Ready - Integration points for OpenAI/Anthropic and local LLMs
pip install runbooks
uv pip install runbooksdocker run -it nnthanh101/runbooks:latest runbooks --help- Open the project in VSCode.
- Install the Remote - Containers extension.
- Reopen in Container:
Command PaletteCtrl+Shift+Pβ Reopen in Container.
π οΈ Features
-
π₯ β Lightning-Fast Toolchain: Powered by π¦
uv- Next-generation Python dependency and build management, πruff- Linting and formatting at blazing speed, and π§ͺ pytest - Robust testing framework with coverage reports. -
π₯ β Effortless CI/CD Pipelines: π οΈ Taskfile Automation - Say goodbye to manual SDLC repetitive tasks, π³ Containerized Workflows β π‘οΈ Security-first practices and Multi-stage Wolfi-based Docker builds for scalable production-ready environments, and βοΈ Auto-publish to
PyPIand GitHub Container Registry (GHCR) with GitHub Actions. -
π₯ βοΈCloudOps Automation and FinOps Toolkit β Pre-configured hybrid-cloud workflows and seamlessly integrations (jupyterlab, mkdocs, boto3, moto) for managing cloud infrastructure π.
Feature Toolchain Purpose π οΈ Configuration pyproject.tomlCentralized configuration for dependencies, testing, and linting. π§Ή Task Automation TaskfileAutomates repetitive tasks like linting, testing, and publishing. π¦ Python Dependencies uvLightning-fast dependency resolution, caching, and builds. π Linting & Formatting ruffEnforces code quality standards, auto-formatting, and import sorting. π§ͺ Testing Framework pytestComprehensive unit tests, integration tests with coverage reporting. π³ Docker Integration Dockerfile + DevContainerOptimized wolfi-based multi-stage builds for CI/CD and local development environments. π¦Ύ CI/CD Pipelines GitHub ActionsAutomated builds, tests, and deployments to PyPI and GHCR. π Security Compliance chainguard/wolfi-base+ SBOM + AttestationsEnsures compliance, vulnerability scanning, and security transparency.
Project Structure
π End-to-end Production-grade project structure for successful π CloudOps Automation and Visual Analytics FinOps projects π
cloudops-automation/
βββ .devcontainer/ ## Dev Container configurations
β βββ Dockerfile ## Container image build file
βββ .github/ ## CI/CD workflows
β βββ workflows/ ## GitHub Actions workflows
β βββ templates/ ## Workflow templates
βββ .vscode/ ## IDE-specific configurations
βββ config/ ## Configuration files (YAML, JSON)
βββ data π Where all your raw and processed data files are stored.
β βββ external <- Data from third-party sources.
β βββ interim <- Intermediate data that has been transformed.
β βββ processed <- The final, canonical data sets for modeling.
β βββ raw <- The original, unprocessed, immutable data dump.
β
βββ docs π A default mkdocs project; see mkdocs.org for details
β βββ api/ ## API documentation
β βββ architecture/ ## Architecture diagrams
β βββ tutorials/ ## Tutorials and guides
β βββ getting-started.md ## Quickstart guide
β βββ index.md ## Overview documentation
β
βββ logs/ ## Log files for debugging
|
βββ models π§ Store your trained and serialized models for easy access and versioning.
β
βββ notebooks π» Jupyter notebooks for experiments and visualization.
β βββ data_exploration.ipynb
β βββ data_preprocessing.ipynb
β βββ model_training.ipynb
β βββ model_evaluation.ipynb
β
βββ pyproject.toml <- Project configuration file with package metadata for
β runbooks and configuration for tools like black
β
βββ src/ ## π§© Source code for use in this project.
β βββ runbooks/ ## Main module for CloudOps Runbooks automation
β β βββ __init__.py ## Package initializer
β β βββ calculator.py ## [Python101] Calculator
β β βββ config.py
β β βββ exceptions.py
β β βββ utils.py ## Utility scripts (logging, configs)
β β βββ cleanup.py ## Cleanup automation runbook
β βββ main.py
βββ test/ ## Unit and integration tests
β βββ conftest.py
β βββ __init__.py
β βββ test_calculator.py ## [Python101] Test cases for calculator
β βββ test_utils.py ## Test cases for utils
β βββ test_exceptions.py
βββ templates/ ## Terraform and CloudFormation templates
βββ tools/ ## Developer tools and scripts
βββ .dockerignore ## Docker ignore file
βββ .env ## Environment variables
βββ .gitignore ## Git ignore file
βββ .python-version ## Python version management
βββ .gitignore
βββ mkdocs.yml # Documentation generator configuration
βββ README.md π€ Explain your project and its structure for better collaboration.
βββ references <- Data dictionaries, manuals, and all other explanatory materials.
β
βββ reports π Generated analysis (reports, charts, and plots) as HTML, PDF, LaTeX.
β βββ figures <- Generated graphics and figures to be used in reporting
β
βββ requirements.txt π The requirements file for reproducing the analysis environment, for easy environment setup.
βββ Taskfile <- Taskfile with convenience commands like `task data` or `task train`