Run definition over creation
This commit is contained in:
parent
9be5bebf78
commit
87fa949309
@ -24,6 +24,7 @@ impl std::fmt::Display for Host {
|
||||
}
|
||||
|
||||
impl Host {
|
||||
// todo: validate ssh config
|
||||
pub fn edit(&mut self) -> Result<Self> {
|
||||
let mut data = toml::to_string_pretty(self)?;
|
||||
|
||||
|
14
src/input.rs
14
src/input.rs
@ -21,19 +21,15 @@ pub fn get_host(config: &mut ConfigManager) -> Result<Host> {
|
||||
.item("New host definition...")
|
||||
.default(0);
|
||||
|
||||
let c = loop {
|
||||
Ok({
|
||||
let c = select.interact()?;
|
||||
|
||||
|
||||
if c == hosts.len() {
|
||||
let _ = config.new_host()?;
|
||||
let _hosts = config.configs.to_owned();
|
||||
hosts = _hosts.into_iter().collect();
|
||||
config.new_host()?
|
||||
} else {
|
||||
break c
|
||||
hosts.get(c).unwrap().to_owned()
|
||||
}
|
||||
};
|
||||
|
||||
Ok(hosts.get(c).unwrap().to_owned())
|
||||
})
|
||||
}
|
||||
|
||||
pub fn get_platform() -> Result<Platform> {
|
||||
|
11
src/main.rs
11
src/main.rs
@ -13,7 +13,7 @@ pub mod platform;
|
||||
fn main() -> Result<()> {
|
||||
let mut search_path: Option<String> = None;
|
||||
let mut config_root: Option<String> = None;
|
||||
let mut dry_run: bool = false;
|
||||
// let mut dry_run: bool = false;
|
||||
{
|
||||
let mut parser = argparse::ArgumentParser::new();
|
||||
|
||||
@ -22,7 +22,8 @@ fn main() -> Result<()> {
|
||||
parser.add_option(&["-V", "--version"], argparse::Print(env!("CARGO_PKG_VERSION").to_string()), "Show version");
|
||||
parser.refer(&mut search_path).add_option(&["-s", "--search"], argparse::StoreOption, "Search path for keys");
|
||||
parser.refer(&mut config_root).add_option(&["-c", "--config"], argparse::StoreOption, "Path to keyman's config dir");
|
||||
parser.refer(&mut dry_run).add_option(&["-d", "--dry-run", "--dryrun"], argparse::StoreTrue, "Do a dry run");
|
||||
// todo: actual dryrun
|
||||
// parser.refer(&mut dry_run).add_option(&["-d", "--dry-run", "--dryrun"], argparse::StoreTrue, "Do a dry run");
|
||||
|
||||
parser.parse_args_or_exit();
|
||||
}
|
||||
@ -37,9 +38,7 @@ fn main() -> Result<()> {
|
||||
|
||||
let mut host = input::get_host(&mut config)?;
|
||||
|
||||
if !dry_run {
|
||||
let platform = host.platform.to_owned();
|
||||
platform.run(&mut host, &mut config)?;
|
||||
}
|
||||
let platform = host.platform.to_owned();
|
||||
platform.run(&mut host, &mut config)?;
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user