App-Ordo
view release on metacpan or search on metacpan
lib/App/Ordo/Command/Cal/Detach.pm view on Meta::CPAN
package App::Ordo::Command::Cal::Detach;
use Moo;
use Term::ANSIColor qw(colored);
use feature qw(say);
extends 'App::Ordo::Command::Base';
sub name { "cal detach" }
sub summary { "Detach a calendar from a cluster" }
sub usage { "<calendar> <cluster-path>" }
sub option_spec { {} }
sub execute {
my ($self, $opt, $cal_name, $cluster_path) = @_;
unless ($cal_name && $cluster_path) {
say colored(["bold red"], "Usage: cal detach <calendar> <cluster-path>");
return;
}
my $res = $self->api->call('update_cluster', {
name => $cluster_path,
cal_id => '', # empty string = detach
});
if ($res->{success}) {
say colored(["bold green"], "Calendar '$cal_name' detached from cluster '$cluster_path'");
} else {
say colored(["bold red"], "Failed: " . ($res->{message} || 'not found'));
}
}
1;
( run in 0.953 second using v1.01-cache-2.11-cpan-9581c071862 )