aboutsummaryrefslogtreecommitdiff
path: root/mingling_ci/src/task/cmd_build.rs
diff options
context:
space:
mode:
Diffstat (limited to 'mingling_ci/src/task/cmd_build.rs')
-rw-r--r--mingling_ci/src/task/cmd_build.rs47
1 files changed, 0 insertions, 47 deletions
diff --git a/mingling_ci/src/task/cmd_build.rs b/mingling_ci/src/task/cmd_build.rs
deleted file mode 100644
index f37699c..0000000
--- a/mingling_ci/src/task/cmd_build.rs
+++ /dev/null
@@ -1,47 +0,0 @@
-use std::ffi::OsString;
-use std::path::Path;
-
-use mingling::{
- Grouped, Routable,
- macros::{buffer, command, renderer},
- res::ResExitCode,
-};
-
-use crate::Next;
-use crate::res::Manifests;
-use crate::task::run::{location, run_parallel_checks};
-
-#[command(node = "build-all")]
-pub async fn build_all(manifests: &Manifests) -> Next {
- let tasks = manifests
- .package_dirs
- .iter()
- .map(|(name, path)| (name.clone(), location(path), build_args(path)))
- .collect();
- let fail_count = run_parallel_checks("Build-All", "Building", tasks).await;
- ResultBuildAll { fail_count }.to_chain()
-}
-
-/// `cargo build --manifest-path <path>`
-fn build_args(path: &Path) -> Vec<OsString> {
- vec![
- "cargo".into(),
- "build".into(),
- "--manifest-path".into(),
- path.as_os_str().to_os_string(),
- ]
-}
-
-/// Number of packages that failed to build.
-#[derive(Grouped)]
-pub struct ResultBuildAll {
- pub fail_count: usize,
-}
-
-/// Silently sets a non-zero exit code when any build failed.
-#[renderer(buffer)]
-pub fn render_build_all(r: ResultBuildAll, exit_code: &mut ResExitCode) {
- if r.fail_count > 0 {
- exit_code.exit_code = 1;
- }
-}