Одна из задач в очереди заданий Minion , которую я использую, требует имени пользователя и пароля.
Я нашел хорошее описание того, как передать параметры в приложение Mojo здесь поэтому я сделал это следующим образом:
package Minion::Command::minion::secure_worker;
use Mojo::Base 'Minion::Command::minion::worker';
use Mojo::Util 'getopt';
sub run {
my ( $self, @args ) = @_;
my $worker = $self->app->minion->worker;
my $status = $worker->status;
getopt \@args,
'U|username=s' => \my $username,
'P|password=s' => \my $password;
$self->app->credentials->{username} = $username;
$self->app->credentials->{password} = $password;
return $self->SUPER::run;
}
1
Однако, когда я пытаюсь передать параметры, которые были в исходной рабочей команде, такие как -j
, я получаю:
Unknown option: j
Почему это?Похоже, что подклассы команды не работают, или что getopt все портит?