Skip to content

chore(ci): run cargo test, fmt and clippy for rustler projects - #2825

Merged
zachdaniel merged 1 commit into
ash-project:mainfrom
shahryarjb:ci/cargo-test-fmt-clippy
Aug 3, 2026
Merged

chore(ci): run cargo test, fmt and clippy for rustler projects#2825
zachdaniel merged 1 commit into
ash-project:mainfrom
shahryarjb:ci/cargo-test-fmt-clippy

Conversation

@shahryarjb

@shahryarjb shahryarjb commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

The reusable workflow compiles the NIF as part of mix test, but it never runs
the crate's own Rust checks — cargo test, cargo fmt and cargo clippy

For: ash-project/igniter_js#68

I ran the tests locally and in the repo CI, and everything passed without issues. That said, since Ash has many projects that require testing, I wanted to make sure the changes wouldn’t cause any pipeline failures—especially since I only modified the Rust portion.

The reusable workflow compiles the NIF but never runs the crate's own Rust
checks, so `cargo test`, `cargo fmt` and `cargo clippy` results never appear
in CI. A project can have a fully green pipeline with failing Rust tests.

Adds a `rust-check` job that runs all three whenever
`rustler-precompiled-module` is set, and adds it to the `needs` of
`build-release` and `hex_publish` so a failing Rust check blocks a release.

Crate directories are discovered from the repository's `Cargo.toml` files so
no per-project configuration is required. The optional `rust-crate-dir` input
overrides discovery when a repository wants a single crate checked.
@zachdaniel
zachdaniel merged commit f211e5b into ash-project:main Aug 3, 2026
51 checks passed
@zachdaniel

Copy link
Copy Markdown
Contributor

🚀 Thank you for your contribution! 🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants