use std::io::Result; use crate::configuration::Configuration; use crate::remote::sync_up; pub struct SyncUp; impl SyncUp { pub fn new() -> Self { SyncUp } } impl super::Command for SyncUp { fn before_dependencies(&self) -> Vec> { vec![] } fn execute(&self, _: Option<&String>, configuration: &Configuration, command: &String) -> Result<()> { match sync_up(&configuration.data_directory, &configuration.remote_config) { Ok(_) => {} Err(e) => { if command == self.command() { return Err(e) } } } return Ok(()) } fn after_dependencies(&self) -> Vec> { vec![] } fn command(&self) -> &'static str { "sync-up" } fn help(&self) -> &'static str { "\t\t\t\tPushes to the git remote if configured" } }