wasmer_cli/commands/app/
mod.rs1pub mod create;
4pub mod database;
5pub mod delete;
6pub mod deploy;
7mod deployments;
8pub mod get;
9pub mod info;
10pub mod list;
11pub mod logs;
12pub mod purge_cache;
13pub mod regions;
14pub mod secrets;
15pub mod version;
16pub mod volumes;
17
18mod util;
19pub use util::AppIdentArgOpts;
20
21use crate::commands::AsyncCliCommand;
22
23#[derive(clap::Subcommand, Debug)]
25pub enum CmdApp {
26 Deploy(deploy::CmdAppDeploy),
27 Create(create::CmdAppCreate),
28 Get(get::CmdAppGet),
29 Info(info::CmdAppInfo),
30 List(list::CmdAppList),
31 Logs(logs::CmdAppLogs),
32 PurgeCache(purge_cache::CmdAppPurgeCache),
33 Delete(delete::CmdAppDelete),
34 #[clap(subcommand)]
35 Version(version::CmdAppVersion),
36 #[clap(subcommand, alias = "secrets")]
37 Secret(secrets::CmdAppSecrets),
38 #[clap(subcommand, alias = "regions")]
39 Region(regions::CmdAppRegions),
40 #[clap(subcommand, alias = "volumes")]
41 Volume(volumes::CmdAppVolumes),
42 #[clap(subcommand, alias = "databases")]
43 Database(database::CmdAppDatabase),
44 #[clap(subcommand, alias = "deployments")]
45 Deployment(deployments::CmdAppDeployment),
46}
47
48#[async_trait::async_trait]
49impl AsyncCliCommand for CmdApp {
50 type Output = ();
51
52 async fn run_async(self) -> Result<Self::Output, anyhow::Error> {
53 match self {
54 Self::Get(cmd) => {
55 cmd.run_async().await?;
56 Ok(())
57 }
58 Self::Info(cmd) => {
59 cmd.run_async().await?;
60 Ok(())
61 }
62 Self::Create(cmd) => {
63 cmd.run_async().await?;
64 Ok(())
65 }
66 Self::List(cmd) => cmd.run_async().await,
67 Self::Logs(cmd) => cmd.run_async().await,
68 Self::Delete(cmd) => cmd.run_async().await,
69 Self::Version(cmd) => cmd.run_async().await,
70 Self::Deploy(cmd) => cmd.run_async().await,
71 Self::PurgeCache(cmd) => cmd.run_async().await,
72 Self::Secret(cmd) => cmd.run_async().await,
73 Self::Region(cmd) => cmd.run_async().await,
74 Self::Volume(cmd) => cmd.run_async().await,
75 Self::Database(cmd) => cmd.run_async().await,
76 Self::Deployment(cmd) => cmd.run_async().await,
77 }
78 }
79}