X-Git-Url: https://git.r.bdr.sh/rbdr/blog/blobdiff_plain/d620665f6b2e1ae5db4c98a09e35bd63133ae87f..36a4680d18de012e2e5c732f9db161dafa884344:/src/command/add_remote.rs diff --git a/src/command/add_remote.rs b/src/command/add_remote.rs index 3d90103..ad7be83 100644 --- a/src/command/add_remote.rs +++ b/src/command/add_remote.rs @@ -1,4 +1,6 @@ +use std::fs::{create_dir_all, write}; use std::io::Result; +use crate::configuration::Configuration; pub struct AddRemote; @@ -13,8 +15,10 @@ impl super::Command for AddRemote { vec![] } - fn execute(&self, input: Option<&String>) -> Result<()> { - println!("Add Remote: {:?}!", input); + fn execute(&self, input: Option<&String>, configuration: &Configuration, _: &String) -> Result<()> { + create_dir_all(&configuration.config_directory)?; + let input = input.expect("You must provide a location for the remote."); + write(&configuration.remote_config, input)?; return Ok(()) }