aboutsummaryrefslogtreecommitdiff
path: root/mingling_ci/src/task/cmd_clippy.rs
diff options
context:
space:
mode:
author魏曹先生 <1992414357@qq.com>2026-08-18 10:01:53 +0800
committer魏曹先生 <1992414357@qq.com>2026-08-18 10:01:53 +0800
commit570b2bc1710c0ab8a68ad69a6121144e4f5e3aca (patch)
tree76995f8437ea0175724a1669a8f821736a20de60 /mingling_ci/src/task/cmd_clippy.rs
parenta7adc172b3cc58e0555b1cddb45d6301c733be81 (diff)
feat(ci-new): add test-all task with per-crate config support
Add a new `test-all` command that runs tests across all crates with optional per-crate command overrides via `mingling-ci.toml` files.
Diffstat (limited to 'mingling_ci/src/task/cmd_clippy.rs')
-rw-r--r--mingling_ci/src/task/cmd_clippy.rs8
1 files changed, 7 insertions, 1 deletions
diff --git a/mingling_ci/src/task/cmd_clippy.rs b/mingling_ci/src/task/cmd_clippy.rs
index 11227a2..0a4282b 100644
--- a/mingling_ci/src/task/cmd_clippy.rs
+++ b/mingling_ci/src/task/cmd_clippy.rs
@@ -13,13 +13,19 @@ use crate::task::run::run_parallel_checks;
#[command(node = "clippy-all")]
pub async fn clippy_all(manifests: &Manifests) -> Next {
- let fail_count = run_parallel_checks("Clippy-All", "Clippy", clippy_args, manifests).await;
+ let tasks = manifests
+ .package_dirs
+ .iter()
+ .map(|(name, path)| (name.clone(), clippy_args(path)))
+ .collect();
+ let fail_count = run_parallel_checks("Clippy-All", "Clippy", tasks).await;
ResultClippyAll { fail_count }.to_chain()
}
/// `cargo clippy --manifest-path <path> -- -D warnings`
fn clippy_args(path: &Path) -> Vec<OsString> {
vec![
+ "cargo".into(),
"clippy".into(),
"--manifest-path".into(),
path.as_os_str().to_os_string(),