From 51c3b0d5eceda53d87d77463b44ec5d9bf28809f Mon Sep 17 00:00:00 2001 From: Toby Vincent Date: Sat, 8 Jul 2023 14:49:18 -0500 Subject: build: add xtask version command --- .build.yml | 2 +- xtask/src/main.rs | 24 ++++++++++++------------ 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/.build.yml b/.build.yml index 6d12d57..f6c3e46 100644 --- a/.build.yml +++ b/.build.yml @@ -21,7 +21,7 @@ tasks: cd projectr cargo check --frozen --all-targets --all-features cargo test --frozen --all-targets --all-features - cargo xtask dist --check || complete-build + cargo xtask version > pkgver || complete-build - package: | cd projectr cargo xtask dist > pkgdist diff --git a/xtask/src/main.rs b/xtask/src/main.rs index 5dd79c2..ebdeecb 100644 --- a/xtask/src/main.rs +++ b/xtask/src/main.rs @@ -32,12 +32,12 @@ fn main() -> Result<()> { match cli.command { Commands::OutDir => println!("{}", out_dir()?.display()), - Commands::Dist { check } => { - let version = match version(cli.pre_release) { - Ok(_) if check => std::process::exit(0), - Err(_) if check => std::process::exit(1), - res => res?, - }; + Commands::Version => match version(cli.pre_release) { + Ok(v) => println!("{v}"), + Err(_) => std::process::exit(1), + }, + Commands::Dist => { + let version = version(cli.pre_release)?; let targz = generate_tar_gz(version)?; println!("{}", targz.display()); } @@ -63,13 +63,13 @@ enum Commands { /// Print the default value of OUT_DIR used by cargo when building the package. OutDir, - /// Generate distributable package - Dist { - /// Validate a git tag matching the package version exists and exit. - #[arg(short, long, required = false)] - check: bool, - }, + /// Validate a git tag matching the package version exists and print version. + Version, + /// Generate distributable package. + Dist, + + /// Automation for create a new release. Release(release::Release), } -- cgit v1.2.3-70-g09d2