diff options
| author | Joe Carstairs <me@joeac.net> | 2024-11-27 18:44:23 +0000 |
|---|---|---|
| committer | Joe Carstairs <me@joeac.net> | 2024-11-27 18:44:23 +0000 |
| commit | 817f6cb7e48e2517dd1612c14357d9aa066a9e53 (patch) | |
| tree | b70feb6250bdd65764612aed90938e567bdb9723 /rust/actualbudget_to_schist_transformer/src/run.rs | |
| parent | b9612b1dfa275be6649f2b54517aac4574f0efc4 (diff) | |
AB transformer takes DB urls as command line arguments
Diffstat (limited to 'rust/actualbudget_to_schist_transformer/src/run.rs')
| -rw-r--r-- | rust/actualbudget_to_schist_transformer/src/run.rs | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/rust/actualbudget_to_schist_transformer/src/run.rs b/rust/actualbudget_to_schist_transformer/src/run.rs index 77f0e45..3c88589 100644 --- a/rust/actualbudget_to_schist_transformer/src/run.rs +++ b/rust/actualbudget_to_schist_transformer/src/run.rs @@ -1,11 +1,19 @@ -use anyhow::Result; +use anyhow::{Context, Result}; use diesel::{Connection, SqliteConnection}; use crate::{actualbudget_state::read_actualbudget_state, schist_state::export_schist_state, transform_state::transform_state}; -pub fn run() -> Result<()> { - let actualbudget_connection = &mut SqliteConnection::establish("in.sqlite").unwrap(); - let schist_connection = &mut SqliteConnection::establish("out.sqlite").unwrap(); +pub fn run(in_db_url: &str, out_db_url: &str) -> Result<()> { + let actualbudget_connection = &mut SqliteConnection::establish(in_db_url) + .with_context(|| format!( + "failed to establish connection to input database at {}", + in_db_url, + ))?; + let schist_connection = &mut SqliteConnection::establish(out_db_url) + .with_context(|| format!( + "failed to establish connection to output database at {}", + out_db_url, + ))?; let actualbudget_state = read_actualbudget_state(actualbudget_connection)?; let schist_state = transform_state(actualbudget_state)?; |
