Provides a job execution framework with Bootique integration. The framework includes a basic runnable job definition with metadata and parameters, a job scheduler. It contains Bootique commands to list jobs, run individual jobs, and schedule periodic job execution. Also includes a Zookeeper-based cluster locking facility for jobs that should not be allowed to run concurrently.
See usage example bootique-jobs-demo.
List all configured jobs and their parameters and default parameter values.
--exec --job=name [--job=name [...]] [--serial]
Executes one or more jobs, possibly in parallel. The options have the following meaning:
- --job=name: name is either a job name or a job group name. Multiple
--jobarguments can be specified in order to run several jobs with a single command.
- --serial: enforces sequential execution of jobs, in the same order that they are specified in the program arguments. Does not have any effect, if only one
--jobargument has been specified.
This command implements a fail-fast behavior, when run in serial mode. If there is more than one
--job argument, and one of the jobs fails, the command terminates immediately, and the subsequent jobs are not executed.
This command returns exit code 0, only if all of the jobs complete normally. I.e. it always returns a non-zero exit code, if at least one of the jobs fails, regardless of the mode of execution (parallel or serial).
Schedules and executes jobs according to configuration. Waits indefinitely on the foreground.