Cleanup csl file on program close
This commit is contained in:
parent
0e03bc0740
commit
c3e13888d0
2 changed files with 10 additions and 1 deletions
|
@ -3,6 +3,7 @@ use serde_yaml::Value;
|
||||||
use std::path::PathBuf;
|
use std::path::PathBuf;
|
||||||
use std::collections::HashMap;
|
use std::collections::HashMap;
|
||||||
use utils::result_prefix;
|
use utils::result_prefix;
|
||||||
|
use std::fs::remove_file;
|
||||||
|
|
||||||
pub mod read;
|
pub mod read;
|
||||||
pub mod validate;
|
pub mod validate;
|
||||||
|
@ -45,3 +46,10 @@ pub fn get_config() -> Result<Config, String> {
|
||||||
try!(result_prefix(validate::validate(config.clone()), "Config Validation Error".into()));
|
try!(result_prefix(validate::validate(config.clone()), "Config Validation Error".into()));
|
||||||
return Ok(Config::new(config));
|
return Ok(Config::new(config));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
pub fn cleanup_config(config: Config) {
|
||||||
|
if config.references.is_some() {
|
||||||
|
remove_file(config.references.unwrap().csl).expect("Failed to remove file");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -56,7 +56,8 @@ fn main() {
|
||||||
match subcommand {
|
match subcommand {
|
||||||
"build" => {
|
"build" => {
|
||||||
let config = get_config(args.clone());
|
let config = get_config(args.clone());
|
||||||
utils::ok_or_exit(build(config));
|
utils::ok_or_exit(build(config.clone()));
|
||||||
|
config::cleanup_config(config);
|
||||||
}
|
}
|
||||||
cmd => {
|
cmd => {
|
||||||
writeln!(io::stderr(), "Unknown command {}.", cmd).unwrap();
|
writeln!(io::stderr(), "Unknown command {}.", cmd).unwrap();
|
||||||
|
|
Reference in a new issue