taler-rust

GNU Taler code in Rust. Largely core banking integrations.
Log | Files | Refs | Submodules | README | LICENSE

commit c037423b91c20c39d6ea99c1b9f01128e3e4c26d
parent 321eb9c9f99617c6febaa34fc797be815515d0b4
Author: Antoine A <>
Date:   Mon, 28 Jul 2025 19:17:11 +0200

common: clean cli

Diffstat:
Mcommon/taler-common/src/cli.rs | 2+-
Mtaler-magnet-bank/src/dev.rs | 4++--
Mtaler-magnet-bank/src/main.rs | 22+++++++++++-----------
3 files changed, 14 insertions(+), 14 deletions(-)

diff --git a/common/taler-common/src/cli.rs b/common/taler-common/src/cli.rs @@ -46,7 +46,7 @@ pub enum ConfigCmd { } impl ConfigCmd { - pub fn run(&self, cfg: Config) -> anyhow::Result<()> { + pub fn run(&self, cfg: &Config) -> anyhow::Result<()> { let out = match self { ConfigCmd::Get { section, diff --git a/taler-magnet-bank/src/dev.rs b/taler-magnet-bank/src/dev.rs @@ -61,8 +61,8 @@ pub enum DevCmd { }, } -pub async fn dev(cfg: Config, cmd: DevCmd) -> anyhow::Result<()> { - let cfg = WorkerCfg::parse(&cfg)?; +pub async fn dev(cfg: &Config, cmd: DevCmd) -> anyhow::Result<()> { + let cfg = WorkerCfg::parse(cfg)?; let keys = setup::load(&cfg)?; let client = reqwest::Client::new(); let client = AuthClient::new(&client, &cfg.api_url, &cfg.consumer).upgrade(&keys.access_token); diff --git a/taler-magnet-bank/src/main.rs b/taler-magnet-bank/src/main.rs @@ -79,28 +79,28 @@ enum Command { Dev(DevCmd), } -async fn app(args: Args, cfg: Config) -> anyhow::Result<()> { - match args.cmd { +async fn run(cmd: Command, cfg: &Config) -> anyhow::Result<()> { + match cmd { Command::Dbinit { reset } => { - let cfg = parse_db_cfg(&cfg)?; + let cfg = parse_db_cfg(cfg)?; let pool = pool(cfg.cfg, "magnet_bank").await?; let mut conn = pool.acquire().await?; dbinit(&mut conn, cfg.sql_dir.as_ref(), "magnet-bank", reset).await?; } Command::Setup { reset } => { - let cfg = WorkerCfg::parse(&cfg)?; + let cfg = WorkerCfg::parse(cfg)?; setup::setup(cfg, reset).await? } Command::Serve { check } => { if check { - let cfg = ServeCfg::parse(&cfg)?; + let cfg = ServeCfg::parse(cfg)?; if cfg.revenue.is_none() && cfg.wire_gateway.is_none() { std::process::exit(1); } } else { - let db = parse_db_cfg(&cfg)?; + let db = parse_db_cfg(cfg)?; let pool = pool(db.cfg, "magnet_bank").await?; - let cfg = ServeCfg::parse(&cfg)?; + let cfg = ServeCfg::parse(cfg)?; let api = Arc::new(MagnetApi::start(pool, cfg.payto).await); let mut router = Router::new(); if let Some(cfg) = cfg.wire_gateway { @@ -113,9 +113,9 @@ async fn app(args: Args, cfg: Config) -> anyhow::Result<()> { } } Command::Worker { transient: _ } => { - let db = parse_db_cfg(&cfg)?; + let db = parse_db_cfg(cfg)?; let pool = pool(db.cfg, "magnet_bank").await?; - let cfg = WorkerCfg::parse(&cfg)?; + let cfg = WorkerCfg::parse(cfg)?; let keys = setup::load(&cfg)?; let client = reqwest::Client::new(); let client = @@ -140,7 +140,7 @@ async fn app(args: Args, cfg: Config) -> anyhow::Result<()> { fn main() { let args = Args::parse(); - taler_main(CONFIG_SOURCE, args.common.clone(), |cfg| async move { - app(args, cfg).await + taler_main(CONFIG_SOURCE, args.common, |cfg| async move { + run(args.cmd, &cfg).await }); }