| Crates.io | sludge-cicd |
| lib.rs | sludge-cicd |
| version | 0.1.29 |
| created_at | 2022-08-21 23:20:44.477117+00 |
| updated_at | 2025-06-21 16:23:19.662621+00 |
| description | Personal CI/CD tool for Rust crates |
| homepage | |
| repository | https://github.com/SludgePhD/CICD |
| max_upload_size | |
| id | 649995 |
| size | 74,687 |
A simple CI/CD tool for Rust crates.
Based on https://github.com/rust-analyzer/smol_str/blob/master/.github/ci.rs.
Note that this is intended for personal use. The documentation below is because I forget.
sludge-cicd will:
RUSTFLAGS=-Dwarnings by default.RUSTDOCFLAGS=-Dwarnings by default."main" and a CRATES_IO_TOKEN is configured:
CHANGELOG.md completeness:
CHANGELOG.md next to a non-workspace Cargo.toml has to contain a heading for the version we're about to publish.CHANGELOG.md has to either contain an entry for every package we're about to publish, or an entry for the version all packages share.git tag --list and Cargo.toml to figure out which packages in the workspace need to be published.
v0.1.0 indicates to the tool that all crates in the workspace have been published at version 0.1.0.package-v0.1.0 indicates that package has been published at version 0.1.0.CHANGELOG.md (or none) a single vX.Y.Z tag will be created.package-vX.Y.Z tag will be created.CHANGELOG.md, if any.sludge-cicd <args...>
The <args...> arguments are passed to any cargo check, cargo build and cargo test invocations.
| Variable | Meaning |
|---|
GITHUB_TOKEN | GitHub Actions token. Needs to have contents: write permission if auto-publishing is used (for pushing tags and creating releases). Hidden from all subprocesses invoked, except those that require it.
CRATES_IO_TOKEN | Token for auto-publishing new versions to crates.io. If absent, auto-publishing is disabled. The token is hidden from any subprocesses invoked.
CICD_CHECK_ONLY | If set to any value, only cargo check is run for CI instead of running tests.
CICD_SKIP_DOCS | If set to any value, cargo doc will not be run to check documentation.
CICD_SUDO | If set to any value, tests will be executed (but not built) using sudo. OS must be configured to allow passwordless sudo.