diff options
author | metamuffin <metamuffin@disroot.org> | 2024-04-16 18:15:47 +0200 |
---|---|---|
committer | metamuffin <metamuffin@disroot.org> | 2024-04-16 18:15:47 +0200 |
commit | ddf52f02d66abfee17a4105503220a9a34064f29 (patch) | |
tree | bb01d20ef9daea32730b98af8b159e87eea15704 /tool/src/main.rs | |
parent | 783198703569dd1d1c17f2b3a40a62f20a6f8a44 (diff) | |
download | jellything-ddf52f02d66abfee17a4105503220a9a34064f29.tar jellything-ddf52f02d66abfee17a4105503220a9a34064f29.tar.bz2 jellything-ddf52f02d66abfee17a4105503220a9a34064f29.tar.zst |
jellytool completion generator
Diffstat (limited to 'tool/src/main.rs')
-rw-r--r-- | tool/src/main.rs | 50 |
1 files changed, 6 insertions, 44 deletions
diff --git a/tool/src/main.rs b/tool/src/main.rs index d2518e8..a896fa2 100644 --- a/tool/src/main.rs +++ b/tool/src/main.rs @@ -4,55 +4,17 @@ Copyright (C) 2024 metamuffin <metamuffin.org> */ -pub mod add; -pub mod migrate; - -use add::add; use anyhow::anyhow; -use clap::{Parser, Subcommand, ValueEnum}; +use clap::Parser; use jellybase::{CONF, SECRETS}; use jellyclient::Instance; use jellycommon::user::CreateSessionParams; +use jellytool::{ + add::add, + cli::{Action, Args}, + migrate::migrate, +}; use log::info; -use migrate::migrate; -use std::{fmt::Debug, path::PathBuf}; - -#[derive(Parser)] -struct Args { - #[clap(subcommand)] - action: Action, -} - -#[derive(Subcommand)] -enum Action { - Add { - #[arg(short, long)] - id: Option<String>, - #[arg(short, long)] - media: Option<PathBuf>, - #[arg(short, long)] - library_path: Option<PathBuf>, - }, - Migrate { - database: PathBuf, - mode: MigrateMode, - save_location: PathBuf, - }, - Reimport { - /// Custom hostname, the config's is used by default - #[arg(long)] - hostname: Option<String>, - /// Disable TLS. Dont use this. - #[arg(long)] - no_tls: bool, - }, -} - -#[derive(Debug, Clone, Copy, PartialEq, ValueEnum)] -enum MigrateMode { - Import, - Export, -} fn main() -> anyhow::Result<()> { env_logger::builder() |