1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
use std::path::PathBuf;
/// Verify a tarball using signed git tags and reproducible builds
#[derive(Debug, clap::Parser)]
pub struct Args {
/// A file with trusted public keys to verify with
#[clap(long)]
pub keyring: PathBuf,
/// The tag to verify and use to reproduce the tarball
#[clap(long)]
pub tag: Option<String>,
/// Specify a signed commit that should be used instead of a signed tag
#[clap(long)]
pub commit: Option<String>,
/// Resolve a tag to a commit and verify
#[clap(long)]
pub resolve_unsigned_tag: bool,
/// The prefix to use when generating the tarball, this is automatically detected otherwise
#[clap(long)]
pub prefix: Option<String>,
/// Use this name for the archive prefix instead of deriving one automatically
#[clap(long)]
pub name: Option<String>,
/// Use a specific format for the archive
#[clap(long, default_value = "tar.gz")]
pub format: String,
/// The remote repository to clone
pub repo: String,
/// Path to the tarball that should be verified
pub tarball: String,
}