trict;
use experimental qw(postderef);
use Consul 0.022;
use AnyEvent;
use AnyEvent::Consul;
use JSON::MaybeXS;
use Type::Params qw(compile);
use Types::Standard qw(ClassName Dict Str Optional CodeRe
Session => $self->{_sid},
};
$self->{_c}->event->fire(
"_rexec",
payload => encode_json($payload),
$self->{dc_args}->@*,
$self->{node} ? (node => $self->{node}) : (),
00_000_000, # nanoseconds
};
$self->{_c}->kv->put(
"_rexec/$self->{_sid}/job",
encode_json($job),
acquire => $self->{_sid},
$self->{dc_args}->@*,
cb => sub { $self->_fire_event