diff options
author | Treehugger Robot <android-test-infra-autosubmit@system.gserviceaccount.com> | 2024-02-05 12:52:18 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2024-02-05 12:52:18 +0000 |
commit | c29a4e01a029ad4e20dc96f028e19737ceb796b7 (patch) | |
tree | e69baf7ac3581771a6c65851bc3a0f03af37e60b | |
parent | 44674672109e2f8b0c3bc4373cd4184291949fdb (diff) | |
parent | c359e76d2d145f80b9e1c64c0431dc3acbb82ed3 (diff) | |
download | development-c29a4e01a029ad4e20dc96f028e19737ceb796b7.tar.gz |
Merge "Check whether cargo run can be omitted." into main am: c359e76d2d
Original change: https://android-review.googlesource.com/c/platform/development/+/2945327
Change-Id: I9930ba4ae403972c93bef10f68d89391ccd9d679
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r-- | tools/cargo_embargo/src/main.rs | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/tools/cargo_embargo/src/main.rs b/tools/cargo_embargo/src/main.rs index fab14040c..713bb8ced 100644 --- a/tools/cargo_embargo/src/main.rs +++ b/tools/cargo_embargo/src/main.rs @@ -288,7 +288,7 @@ fn make_crates(args: &Args, cfg: &VariantConfig) -> Result<Vec<Crate>> { } } -/// Runs cargo_embargo with the given JSON configuration string. +/// Runs cargo_embargo with the given JSON configuration file. fn run_embargo(args: &Args, config_filename: &Path) -> Result<()> { let cfg = Config::from_file(config_filename)?; let crates = make_all_crates(args, &cfg)?; @@ -319,6 +319,18 @@ fn run_embargo(args: &Args, config_filename: &Path) -> Result<()> { } } + // If we were configured to run cargo, check whether we could have got away without it. + if cfg.variants.iter().any(|variant| variant.run_cargo) && package_out_files.is_empty() { + let mut cfg_no_cargo = cfg.clone(); + for variant in &mut cfg_no_cargo.variants { + variant.run_cargo = false; + } + let crates_no_cargo = make_all_crates(args, &cfg_no_cargo)?; + if crates_no_cargo == crates { + eprintln!("Running cargo appears to be unnecessary for this crate, consider adding `\"run_cargo\": false` to your cargo_embargo.json."); + } + } + write_all_bp(&cfg, crates, &package_out_files) } |