Skip to main content

A tool to evaluate and measure the maturity level of your DevOps practices.

Project description

DevOps Maturity Assessment

PyPI - Version PyPI - Python Version CI DevOps Maturity

Overview

DevOps Maturity Assessment helps teams turn broad DevOps, DevSecOps, and software supply chain expectations into a score, a gap list, and a shareable badge.

Use it when you want a quick baseline before a platform improvement program, an audit-ready checklist for delivery practices, or a lightweight badge that makes engineering maturity visible in a README.

It provides both a web UI and a CLI, built on the DevOps Maturity Specification — a standardized set of guidelines for DevOps best practices.

User documentation for both interfaces is available at the DevOps Maturity Docs site.

Why teams use it

  • Fast baseline: answer a short weighted checklist and get a maturity level in minutes.
  • Clear next steps: see category scores and prioritized missing practices instead of a raw pass/fail list.
  • Repository-aware AI mode: optionally let an LLM inspect repository metadata, README content, and CI configuration.
  • Shareable signal: publish a badge that makes DevOps maturity visible to users, contributors, and stakeholders.
  • Portable scoring model: use the same criteria from the CLI, web UI, or a YAML file in automation.

🎥 Demo

Explore how the DevOps Maturity Assessment works in both interfaces:

Features

  • Interactive CLI: Perform assessments directly from your terminal.
  • AI-Powered Automated Assessment: Let an LLM assess your repository automatically using repository metadata, CI config, and README content — no manual answers required.
  • Web Interface: Easy-to-use web app for taking assessments and viewing results.
  • Maturity Scoring: Receive a maturity score, level, and badge based on your answers.
  • Progress Tracking: View your assessment history to monitor improvement over time.
  • Customizable Criteria: Adapt the assessment to fit your organization’s specific needs.
  • Open Source: Built with Python and open to community contributions.

Quick Start

Try it in 60 seconds

pip install devops-maturity
dm assess

You will get:

  • an overall percentage score
  • a maturity level (WIP, PASSING, BRONZE, SILVER, or GOLD)
  • per-category scores
  • improvement recommendations
  • a badge URL you can add to your README

Run the CLI

Install from PyPI and start the interactive assessment:

pip install devops-maturity

# Start the assessment
devops-maturity assess

# Or use the shortcut command
dm assess

[!TIP] dm is a convenient alias for devops-maturity, making it quicker to type.

You'll be guided through a series of questions and receive a maturity score, level, and badge. See it in action:

DevOps Maturity CLI Demo

Run from a YAML file

Use devops-maturity.yml when you want a repeatable baseline that can be reviewed in pull requests:

dm config --file devops-maturity.yml

This is useful for CI jobs, internal platform reviews, and recurring maturity checkpoints.

AI-Powered Automated Assessment

Skip the manual questions and let an LLM assess your repository automatically. The tool fetches your file tree, README, and CI/CD configuration files from the repository platform and sends that context to the AI model of your choice.

Supported AI providers: OpenAI, Anthropic, Google Gemini, Ollama (local)

# OpenAI — provider auto-detected from the git remote URL
OPENAI_API_KEY=sk-... devops-maturity assess --auto --ai openai

# Anthropic
ANTHROPIC_API_KEY=... devops-maturity assess --auto --ai anthropic --model claude-3-5-sonnet-20241022

# Google Gemini
GEMINI_API_KEY=... devops-maturity assess --auto --ai gemini

# Ollama (no API key required, runs locally)
devops-maturity assess --auto --ai ollama --model llama3
Flag Env var fallback Default Notes
--auto Enable AI-powered mode
--ai AI provider: openai, anthropic, gemini, ollama
--model Provider default Model name (e.g. gpt-4o, claude-3-haiku-20240307)
--provider Auto-detected Repo platform: github, gitlab, bitbucket
--repo-token GITHUB_TOKEN / GITLAB_TOKEN / BITBUCKET_TOKEN Required for private repos
--ai-key OPENAI_API_KEY / ANTHROPIC_API_KEY / GEMINI_API_KEY AI provider API key
--ollama-url http://localhost:11434 Ollama server base URL

[!NOTE] The --provider flag is auto-detected from the origin remote URL of the current git repository. For public repositories no --repo-token is needed.

[!IMPORTANT] AI mode sends repository context to the selected provider unless you use local Ollama. Use --repo-token only for private repositories you are allowed to assess.

Launch the Web Interface

To preview the web interface locally:

git clone https://github.com/devops-maturity/devops-maturity.git
cd devops-maturity
pip install nox
nox -s preview

Then visit http://127.0.0.1:8000 in your browser.

Web Interface Preview

Experience the full web interface workflow:

1. Start Your Assessment DevOps Maturity Assessment Home

2. View Your Assessment DevOps Maturity Assessment Assessment

3. Track Assessment History DevOps Maturity Assessment List

Configuration

OAuth Setup (Optional)

To enable Google and GitHub OAuth login for the web interface:

  1. Copy the example environment file:

    cp .env.example .env
    
  2. For Google OAuth:

    • Go to Google Cloud Console
    • Create OAuth 2.0 credentials
    • Set authorized redirect URI to: http://localhost:8000/auth/callback/google
    • Copy the client ID and secret to your .env file
  3. For GitHub OAuth:

    • Go to GitHub Developer Settings
    • Create a new OAuth app
    • Set authorization callback URL to: http://localhost:8000/auth/callback/github
    • Copy the client ID and secret to your .env file

If OAuth credentials are not configured, users can still register and login with username/password.

Show Your Support

If you find this tool helpful, please consider giving it a ⭐️ — your support helps others discover and adopt it.

Want to show your project aligns with the DevOps Maturity Specification? Add this badge to your README:

[![DevOps Maturity](https://img.shields.io/badge/DevOps%20Maturity-SILVER-silver.svg)](https://devops-maturity.github.io/)

Contributing

We welcome contributions from the community! Whether you're fixing bugs, adding features, or improving documentation, your help is appreciated.

License

This project is licensed under the Apache License 2.0.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

devops_maturity-1.0.0-py3-none-any.whl (28.0 kB view details)

Uploaded Python 3

File details

Details for the file devops_maturity-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for devops_maturity-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 386da7fbbc2c33b6d0b54b1f7629a6af1d0dbd6a13d08723b109d8f1498f0f00
MD5 084b83aa03467c1c161183e213d4eece
BLAKE2b-256 40fb6e874dc97bf8b0946d6f19423d9760986de7e7f0441e759e5a3333f0c1a3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page