What it does
dev-ci solves two problems in one crate:
- Generates calibrated CI workflow files (
.github/workflows/ci.yml, GitLab CI, others later) tailored to thedev-*features a project actually uses. No more copy-pasting outdated CI templates from Stack Overflow. - Runs the entire
dev-*verification suite end-to-end inside a single GitHub Action step, with structured PR annotations and SARIF upload to the GitHub Security tab.
Why it exists
Setting up CI for a Rust project that uses test coverage, security
auditing, fuzzing, mutation testing, and async validation today means
hand-rolling 200+ lines of YAML across multiple jobs. dev-ci reduces
that to one workflow step and one source of truth.
Quick start (CLI generator)
This writes a properly calibrated .github/workflows/ci.yml based on
what's in your Cargo.toml and your dev-tools feature set.
Quick start (Library usage)
[]
= "0.9"
use ;
let yaml = new
.target
.with_clippy
.with_fmt
.with_msrv
.generate;
write?;
# Ok::
Quick start (GitHub Action)
In .github/workflows/ci.yml:
- name: Run dev-* suite
uses: jamesgober/dev-ci@v1
with:
features: full
That's it. The action runs every enabled producer (dev-bench,
dev-coverage, dev-security, etc.), uploads SARIF for code scanning,
and posts a one-line PR status with a link to the full meta-report.
The dev-* suite
dev-ci is part of the wider dev-* verification suite:
dev-report- foundation schemadev-tools- umbrella cratedev-fixtures- test environmentsdev-bench- performancedev-async- async validationdev-stress- load testingdev-chaos- failure injectiondev-coverage- test coveragedev-security- vulnerability scanningdev-deps- dependency healthdev-fuzz- fuzzingdev-flaky- flaky test detectiondev-mutate- mutation testing
Status
v0.9.x is pre-1.0. The generator works for basic GitHub Actions
workflows. Multi-target support (GitLab, Buildkite, CircleCI), the
GitHub Action runtime, and the PR-annotation pipeline land
through the 0.9.x line.
Minimum supported Rust version
1.85 — pinned in Cargo.toml and verified by CI.
License
Apache-2.0. See LICENSE.