perlmojoliciousjob-queuehypnotoad

Mojolicious - minion worker doesn't start automatically


I am using Mojolicious full app and loading Minion (backend sqlite). My question is why minion worker doesn't start by itself when I start mojolicious app with hypnotoad. According to the documentation Minion it should:

Background worker processes are usually started with the command Minion::Command::minion::worker, which becomes automatically available when an application loads Mojolicious::Plugin::Minion.

Environment:

Mojolicious full app

package Apps;

use Moo;
extends 'Mojolicious';

sub startup {
    my $self = shift;

    $self->plugin(Config => file => '/var/www/apps/lib/appconf.perl');
    $self->plugin(Minion => {SQLite => 'sqlite:/var/www/apps/db/minion_backend_sqlite.db'});
    ...
}

This is how I start my server:

/usr/local/bin/hypnotoad /var/www/apps/script/apps

Currently, I start minion worker in background( which also gets killed somehow after sometime, starangely) like this:

/var/www/apps/script/apps minion worker -m production

Thank you.


Solution

  • As Corion and Grinnz mentioned in comments:

    Minion workers are separate unrelated processes, that you must start and manage on your own.

    Good news:

    Mojolicious team has opened this issue. Will be solved soon: Allow for Minion worker to be started by the application server