pub mod alias;
pub mod azure_tenant_add;
pub mod azure_tenant_discover;
pub mod azure_tenant_forget;
pub mod azure_tenant_list;
pub mod azure_tenant_login;
pub mod azure_tenant_show;
pub use alias::AzureTenantAliasArgs;
pub use azure_tenant_add::AzureTenantAddArgs;
pub use azure_tenant_discover::AzureTenantDiscoverArgs;
pub use azure_tenant_forget::AzureTenantForgetArgs;
pub use azure_tenant_list::AzureTenantListArgs;
pub use azure_tenant_login::AzureTenantLoginArgs;
pub use azure_tenant_show::AzureTenantShowArgs;
use clap::Args;
use clap::Subcommand;
use eyre::Result;
#[derive(Args, Debug, Clone)]
pub struct AzureTenantArgs {
#[command(subcommand)]
pub command: AzureTenantCommand,
}
#[derive(Subcommand, Debug, Clone)]
pub enum AzureTenantCommand {
List(AzureTenantListArgs),
Discover(AzureTenantDiscoverArgs),
Alias(AzureTenantAliasArgs),
Add(AzureTenantAddArgs),
Show(AzureTenantShowArgs),
Forget(AzureTenantForgetArgs),
Login(AzureTenantLoginArgs),
}
impl AzureTenantArgs {
pub async fn invoke(self) -> Result<()> {
match self.command {
AzureTenantCommand::List(args) => args.invoke().await?,
AzureTenantCommand::Discover(args) => args.invoke().await?,
AzureTenantCommand::Alias(args) => args.invoke().await?,
AzureTenantCommand::Add(args) => args.invoke().await?,
AzureTenantCommand::Show(args) => args.invoke().await?,
AzureTenantCommand::Forget(args) => args.invoke().await?,
AzureTenantCommand::Login(args) => args.invoke().await?,
}
Ok(())
}
}