https://github.com/bootique/bootique-job
Provides a job execution framework with Bootique integration
https://github.com/bootique/bootique-job
bootique java job-scheduler jobs
Last synced: about 1 year ago
JSON representation
Provides a job execution framework with Bootique integration
- Host: GitHub
- URL: https://github.com/bootique/bootique-job
- Owner: bootique
- License: apache-2.0
- Created: 2015-12-11T06:54:16.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2025-04-19T13:23:02.000Z (about 1 year ago)
- Last Synced: 2025-04-19T18:03:36.929Z (about 1 year ago)
- Topics: bootique, java, job-scheduler, jobs
- Language: Java
- Homepage: https://bootique.io
- Size: 1010 KB
- Stars: 7
- Watchers: 10
- Forks: 13
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://github.com/bootique/bootique-job/actions/workflows/maven.yml)
[](https://search.maven.org/artifact/io.bootique.job/bootique-job/)
# bootique-job
Provides a job execution framework with [Bootique](http://bootique.io) 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 examples [here](https://github.com/bootique-examples/bootique-job-examples).
## Commands
### ListCommand
`--list`
List all configured jobs and their parameters and default parameter values.
### ExecCommand
`--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. Can optionally contain a JSON map
of job parameters. E.g. `myjob{"p":1}`. Multiple `--job` arguments 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 `--job` argument 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.
The command exits with `0`, only if all the jobs completed normally. Otherwise, returns a non-zero exit code.
### ScheduleCommand
`--schedule`
Schedules and executes jobs according to configuration. Waits indefinitely on the foreground.