Fixed a bug with the sqlite backup feature.

When a custom path is used the backup feature does not work.
Changed it so it will take the path of the sqlite file and use that.
This commit is contained in:
BlackDex 2019-10-11 12:08:40 +02:00
parent d292269ea0
commit 2cde814aaa
1 changed files with 5 additions and 1 deletions

View File

@ -52,12 +52,16 @@ pub fn get_connection() -> Result<Connection, ConnectionError> {
/// Creates a back-up of the database using sqlite3
pub fn backup_database() -> Result<(), Error> {
use std::path::Path;
let db_url = CONFIG.database_url();
let db_path = Path::new(&db_url).parent().unwrap();
let now: DateTime<Utc> = Utc::now();
let file_date = now.format("%Y%m%d").to_string();
let backup_command: String = format!("{}{}{}", ".backup 'db_", file_date, ".sqlite3'");
Command::new("sqlite3")
.current_dir("./data")
.current_dir(db_path)
.args(&["db.sqlite3", &backup_command])
.output()
.expect("Can't open database, sqlite3 is not available, make sure it's installed and available on the PATH");