Add cli overrides

This commit is contained in:
Lea Fairbanks 2022-05-31 17:57:05 +12:00 committed by Félix Saparelli
parent 09129a4f7f
commit 19d0616324
No known key found for this signature in database
GPG key ID: B948C4BAE44FC474
2 changed files with 29 additions and 1 deletions

View file

@ -60,6 +60,18 @@ struct Options {
/// Utility log level
#[structopt(long, default_value = "info")]
log_level: LevelFilter,
/// Override Cargo.toml package manifest bin-dir.
#[structopt(long)]
bin_dir: Option<String>,
/// Override Cargo.toml package manifest pkg-fmt.
#[structopt(long)]
pkg_fmt: Option<PkgFmt>,
/// Override Cargo.toml package manifest pkg-url.
#[structopt(long)]
pkg_url: Option<String>,
}
#[tokio::main]
@ -73,7 +85,12 @@ async fn main() -> Result<(), anyhow::Error> {
}
// Load options
let opts = Options::from_iter(args.iter());
let mut opts = Options::from_iter(args.iter());
let cli_overrides = PkgOverride {
pkg_url: opts.pkg_url.take(),
pkg_fmt: opts.pkg_fmt.take(),
bin_dir: opts.bin_dir.take(),
};
// Setup logging
let mut log_config = ConfigBuilder::new();
@ -133,6 +150,7 @@ async fn main() -> Result<(), anyhow::Error> {
meta.merge(&o);
}
meta.merge(&cli_overrides);
debug!("Found metadata: {:?}", meta);
// Compute install directory