DevOps 成熟度

DevOps 成熟度规范 - 评估、改进和展示你的 DevOps 成熟度。

DevOps 成熟度规范

概述

DevOps 成熟度规范为 DevOps 最佳实践提供指导,旨在提升软件开发与运维过程中的协作、自动化和效率。

关键要点


规范

DevOps 成熟度评估标准

类别 代码 评估项 要求
基础 D101 分支构建 🟢
D102 PR 构建 🟢
D103 干净环境构建 🟡
质量 D201 单元测试 🟢
D202 功能测试 🟢
D203 性能测试 🟡
D204 代码覆盖率 🟡
D205 可访问性测试 🟡
安全 D301 安全扫描 🟢
D302 许可证扫描 🟡
供应链安全 D401 构建过程文档化 🟢
D402 CI/CD 代码化 🟢
D403 制品签名 🟡
D404 依赖锁定 🟡
分析 D501 静态代码分析 🟡
D502 动态代码分析 🟡
D503 代码风格检查 🟡
报告 D601 通知与告警 🟢
D602 附加报告 🟢

徽章等级

你的得分将获得以下徽章之一:

等级 分数范围 徽章
WIP 0% WIP
PASSING 1–49% PASSING
BRONZE 50–69% BRONZE
SILVER 70–89% SILVER
GOLD 90–100% GOLD

评估项代码说明

代码 说明
D1xx 基础
D2xx 质量
D3xx 安全
D4xx 供应链安全
D5xx 分析
D6xx 报告

评估项详情

D101 分支构建

支持从任意指定分支进行构建,而不仅限于 main 分支。

D102 PR 构建

支持对 Pull Request(PR)进行构建,不仅限于直接推送到分支。

D103 干净环境构建

支持在干净环境(如容器或虚拟机)中进行构建。

D201 单元测试

支持单元测试,包括单元或组件级测试。

D202 功能测试

支持功能测试,如集成测试或端到端(E2E)测试。

D203 性能测试

支持性能测试,包括负载、压力或吞吐量测试。

D204 代码覆盖率

支持代码覆盖率测量,包括行、分支或函数覆盖率。

D205 可访问性测试

支持可访问性测试,符合如 WCAG 等标准。

D301 安全扫描

支持安全扫描,包括 SAST(静态应用安全测试)和 DAST(动态应用安全测试)。

D302 许可证扫描

支持许可证扫描,如 SPDX、FOSSology 或 license-checkers 等工具。

D401 构建过程文档化

提供构建过程文档,包括构建步骤、清单或可复现性说明。

D402 CI/CD 代码化

支持以代码形式定义 CI/CD 工作流,如流水线即代码或基础设施即代码。

D403 制品签名

支持制品签名(如 PGP 或 GPG),确保真实性和完整性。

D404 依赖锁定

支持依赖锁定或版本固定,确保可复现构建。

D501 静态代码分析

支持静态代码分析工具,如 SonarQube、Polaris 等。

D502 动态代码分析

支持动态分析,包括运行时行为分析或模糊测试。

D503 代码风格检查

支持代码风格检查,如 ESLint、Prettier 或 pre-commit 钩子。

D601 通知与告警

支持通知系统,如邮件或 Slack 告警。

D602 附加报告

支持将详细报告附加到构建,如测试结果或覆盖率指标。


常见问题解答

如何自动计算成熟度得分?

你可以使用 devops-maturity,该工具支持 Web UI 和 CLI,可自动计算你的成熟度得分。

OpenSSF Best Practices 和 DevOps Maturity 有什么区别?

OpenSSF Best Practices 面向整个软件开发生命周期的开源项目,而 DevOps Maturity 专注于适用于开源和企业内部项目的 DevOps 实践。DevOps Maturity 提供 Web UI 和 CLI 两种自动化成熟度评分方式,而 OpenSSF Best Practices 仅提供基于 Web 的 SaaS 服务,不支持内部部署。