]> git.r.bdr.sh - rbdr/blog/blobdiff - src/command/add_remote.rs
Add remote management
[rbdr/blog] / src / command / add_remote.rs
index c98330fbf7d94fdeae7c64abb841b56c1d5f4c13..ad7be83db4b4c41ef0109f25256cf4d2708534e7 100644 (file)
@@ -1,3 +1,4 @@
+use std::fs::{create_dir_all, write};
 use std::io::Result;
 use crate::configuration::Configuration;
 
@@ -14,8 +15,10 @@ impl super::Command for AddRemote {
         vec![]
     }
 
-    fn execute(&self, input: Option<&String>, _: &Configuration, _: &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(())
     }