Ubic::Service::Skeleton - skeleton of any service with common start/stop logic
- status()
- Get status of service.
Possible values: "running",
"not running",
"unknown",
"broken".
- start()
- Start service.
Throws exception on failure.
- stop()
- Stop service.
Return values: "stopped",
"not running".
Throws exception on failure.
Subclass must overload following methods with simple status, start and stop
implementations.
- status_impl
- Status implementation. Should return result object or plain string which
coerces to result object.
- start_impl
- Start implementation.
It can check for status itself and return proper
"Ubic::Result" value, or it can allow
skeleton class to recheck status after that, in several attempts.
To choose second option, it should return non-result value or
"result("starting")". See
"timeout_options()" method for details
about recheck policy.
- stop_impl
- Stop implementation.
It can check for status itself and return proper
"Ubic::Result" value, or it can allow
skeleton class to recheck status after that, in several attempts.
To choose second option, it should return non-result value or
"result("stopping")". See
"timeout_options()" method for details
about recheck policy.
- timeout_options
- Return hashref with timeout options.
Possible options:
- start
- Params to be used when checking for status of started service.
Should contain hashref with step and trials
options for "wait_for_status" function
from "Ubic::Service::Utils".
Vyacheslav Matyukhin <mmcleric@yandex-team.ru>
This software is copyright (c) 2015 by Yandex LLC.
This is free software; you can redistribute it and/or modify it
under the same terms as the Perl 5 programming language system itself.