From 95cc8da13b712ed52b37446fde173f547581c0e2 Mon Sep 17 00:00:00 2001 From: Matthias Beyer Date: Wed, 24 Apr 2019 09:44:28 +0200 Subject: Add "compare" functionality in CLI --- src/cli.rs | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/src/cli.rs b/src/cli.rs index 25533cc..cf06dbe 100644 --- a/src/cli.rs +++ b/src/cli.rs @@ -90,6 +90,37 @@ pub fn build_cli<'a>() -> App<'a, 'a> { .required(true)) ) + + .subcommand(SubCommand::with_name("compare") + .about("Compare a list of packages to distro repositories") + .arg(Arg::with_name("compare-list") + .index(1) + .required(true) + .multiple(false) + .takes_value(true) + .value_name("FILE") + .help("Compare the data from this list to a list of distros out there. Supports JSON and CSV, based on file extension (.json / .csv)")) + .arg(Arg::with_name("compare-distros") + .index(2) + .required(true) + .multiple(true) + .takes_value(true) + .value_name("DIST") + .help("A list of repology distribution names to compare to")) + + .after_help(r#" + Compare a list of packages to all supplied repology distributions. + The list of packages shall have the following format: + + * CSV: + Header: name;version;comment + + * JSON: + { "name": "...", "version": "...", "comment": "..." } + + "#) + ) + .after_help(r#" repolocli can read data from stdin, if you want to postprocess repology.org data you already fetched from repology.org/api/v1 via curl (or some other method). -- cgit v1.2.3