//// Copyright (c) 2020-2021 science+computing ag and other contributors//// This program and the accompanying materials are made// available under the terms of the Eclipse Public License 2.0// which is available at https://www.eclipse.org/legal/epl-2.0///// SPDX-License-Identifier: EPL-2.0//usestd::path::PathBuf;usestd::str::FromStr;useclap::crate_authors;useclap::crate_version;useclap::App;useclap::Arg;useclap::ArgGroup;// Helper types to ship around stringly typed clap API.pubconstIDENT_DEPENDENCY_TYPE_BUILD: &str="build";pubconstIDENT_DEPENDENCY_TYPE_RUNTIME: &str="runtime";pubfncli<'a>()-> App<'a>{App::new("butido").author(crate_authors!()).version(crate_version!()).about("Generic Build Orchestration System for building linux packages with docker").after_help(r#" The following environment variables can be passed to butido: RUST_LOG - to enable logging, for exact usage see the rust cookbook "#).arg(Arg::new("hide_bars").required(false).multiple(false).long("hide-bars").about("Hide all progress bars")).arg(Arg::new("database_host").required(false).multiple(false).long("db-url").value_name("HOST").about("Override the database host").long_about(indoc::indoc!(r#" Override the database host set via configuration. Can also be overriden via environment variable 'BUTIDO_DATABASE_HOST', but this setting has precedence. "#))).arg(Arg::new("database_port").required(false).multiple(false).long("db-port").value_name("PORT").about("Override the database port").