Files
ahab/src/main.rs

37 lines
1.5 KiB
Rust

use ahab::{cli, scripts};
use anyhow::Result;
use clap::Parser;
fn main() -> Result<()> {
let args = cli::Ahab::parse();
match args.command {
cli::Commands::Django { command } => match command {
cli::Django::Bash => scripts::django::bash(),
cli::Django::Run { rest } => scripts::django::run(&rest),
cli::Django::MakeCommand { app, name } => scripts::django::make_command(&app, &name),
cli::Django::Makemigrations => scripts::django::makemigrations(),
cli::Django::Manage { rest } => scripts::django::manage(&rest),
cli::Django::Migrate { rest } => scripts::django::migrate(&rest),
cli::Django::Shell => scripts::django::shell(),
cli::Django::Test => scripts::django::test(),
},
cli::Commands::Postgres { command } => match command {
cli::Postgres::Import { path } => scripts::postgres::import(&path),
cli::Postgres::Dump { path, format, gzip } => {
scripts::postgres::dump(&path, format, gzip)
}
},
cli::Commands::Link { command } => match command {
cli::Link::Add { paths, force } => scripts::link::add(&paths, force),
cli::Link::Check {
paths,
porcelain,
null,
} => scripts::link::check(&paths, porcelain, null),
},
cli::Commands::Completions { shell } => scripts::completions::completions(shell),
}
}