App-Git-IssueManager/lib/App/Git/IssueManager/Del.pm

39 lines
982 B
Perl
Raw Normal View History

2018-07-04 16:17:31 +02:00
package App::Git::IssueManager::Del;
#ABSTRACT: class implementing the del issue command of the GIT IssueManager
use strict;
use warnings;
use MooseX::App::Command;
extends qw(App::Git::IssueManager);
2018-09-10 22:43:42 +02:00
use Git::LowLevel;
2018-07-04 16:17:31 +02:00
use Git::IssueManager;
use Git::IssueManager::Issue;
use Term::ANSIColor;
use Try::Tiny;
command_short_description 'delete an issue from a repository identified by the given id';
command_usage 'git issue del -i TST-a34df432';
option 'id' => (
is => 'ro',
isa => 'Str',
required => 1,
documentation => q[the id of the issue],
cmd_aliases => [qw(i)]
);
sub run
{
my $self = shift;
2018-09-10 22:43:42 +02:00
my $manager = Git::IssueManager->new(repository=>Git::LowLevel->new(git_dir=> "."));
2018-07-04 16:17:31 +02:00
if (!$manager->ready)
{
print("IssueManager not initialized yet. Please call \"init\" command to do so.");
exit(-1);
}
my $issue=$manager->delete($self->id);
}
1;