difftreelog
feat info subcommand
in: trunk
4 files changed
cmds/fleet/src/cmds/info.rsdiffbeforeafterbothno changes
cmds/fleet/src/cmds/mod.rsdiffbeforeafterboth1pub mod build_systems;1pub mod build_systems;2pub mod secrets;2pub mod secrets;3pub mod info;34cmds/fleet/src/host.rsdiffbeforeafterboth9};9};101011use anyhow::Result;11use anyhow::Result;12use serde::de::DeserializeOwned;12use structopt::clap::ArgGroup;13use structopt::clap::ArgGroup;13use structopt::StructOpt;14use structopt::StructOpt;141580 .inherit_stdio()81 .inherit_stdio()81 .run_json()82 .run_json()82 }83 }84 pub fn config_attr<T: DeserializeOwned>(&self, host: &str, attr: &str) -> Result<T> {85 Command::new("nix")86 .arg("eval")87 .arg(self.full_attr_name(&format!(88 "fleetConfigurations.default.configuredSystems.{}.config.{}",89 host, attr90 )))91 .args(&["--json", "--show-trace"])92 .inherit_stdio()93 .run_json()94 }839584 pub fn data(&self) -> Ref<FleetData> {96 pub fn data(&self) -> Ref<FleetData> {85 self.data.borrow()97 self.data.borrow()cmds/fleet/src/main.rsdiffbeforeafterboth11use structopt::clap::AppSettings::*;11use structopt::clap::AppSettings::*;12use structopt::StructOpt;12use structopt::StructOpt;131314use cmds::{build_systems::BuildSystems, secrets::Secrets};14use cmds::{build_systems::BuildSystems, info::Info, secrets::Secrets};15use host::{Config, FleetOpts};15use host::{Config, FleetOpts};161617#[derive(StructOpt)]17#[derive(StructOpt)]20 BuildSystems(BuildSystems),20 BuildSystems(BuildSystems),21 /// Secret management21 /// Secret management22 Secrets(Secrets),22 Secrets(Secrets),23 /// Config parsing24 Info(Info),23}25}242625#[derive(StructOpt)]27#[derive(StructOpt)]40 match command {42 match command {41 Opts::BuildSystems(c) => c.run(config)?,43 Opts::BuildSystems(c) => c.run(config)?,42 Opts::Secrets(s) => s.run(config)?,44 Opts::Secrets(s) => s.run(config)?,45 Opts::Info(i) => i.run(config)?,43 };46 };44 Ok(())47 Ok(())45}48}