Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
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 2 months 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 (about 9 years ago)
- Default Branch: master
- Last Pushed: 2024-05-04T16:42:41.000Z (8 months ago)
- Last Synced: 2024-05-05T15:37:59.200Z (8 months ago)
- Topics: bootique, java, job-scheduler, jobs
- Language: Java
- Homepage: https://bootique.io
- Size: 1.11 MB
- Stars: 7
- Watchers: 12
- Forks: 13
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[![build test deploy](https://github.com/bootique/bootique-job/actions/workflows/maven.yml/badge.svg)](https://github.com/bootique/bootique-job/actions/workflows/maven.yml)
[![Maven Central](https://img.shields.io/maven-central/v/io.bootique.job/bootique-job.svg?colorB=brightgreen)](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.