ralph/commands/plugin/
mod.rs1mod common;
16mod init;
17mod install;
18mod list;
19mod templates;
20mod validate;
21
22use anyhow::Result;
23
24use crate::cli::plugin::{PluginArgs, PluginCommand};
25use crate::config::Resolved;
26
27pub fn run(args: &PluginArgs, resolved: &Resolved) -> Result<()> {
28 match &args.command {
29 PluginCommand::List { json } => list::run_list(resolved, *json),
30 PluginCommand::Validate { id } => validate::run_validate(resolved, id.as_deref()),
31 PluginCommand::Install { source, scope } => install::run_install(resolved, source, *scope),
32 PluginCommand::Uninstall { id, scope } => install::run_uninstall(resolved, id, *scope),
33 PluginCommand::Init(init_args) => init::run_init(resolved, init_args),
34 }
35}