Merge branch 'develop' of git@github.com:fabioformosa/quartz-manager.git into develop

This commit is contained in:
fabio.formosa
2021-02-04 23:33:27 +01:00

View File

@@ -16,24 +16,30 @@ Through this webapp you can launch and control your scheduled job. The UI Consol
Open the [Project Roadmap](https://github.com/fabioformosa/quartz-manager/projects) to take a look at the plan of Quartz Manager.
Currently this project might be useful to look how to import Quartz Library in a spring boot application. For this purpose, browse the folder `quartz-manager-parent/quartz-manager-api`.
We're just working to create a library, from project `quartz-manager-parent/quartz-manager-api`, to be imported in your spring boot where you have your job to be scheduled.
The project `quartz-manager-parent/quartz-manager-web` is an example of how-to:
* import the library
* set the application.yml
* add secure layer
Take a loot to the project [Quartz-Manager Demo](https://github.com/fabioformosa/quartz-manager-demo), it is an example of how-to:
* import the quartz-manager-api library in your webapp
* include the quartz-manager frontend (angular based) through a webjar
* set properties into the application.yml
* add a secure layer to allow the API only to logged users
* schedule a custom job (a dummy `hello world`)
**NB: In few days, we'll release the library jar of quartz-manager into the maven central repo.**
Next steps in the roadmap are:
* to add a persistent layer to save all job setup.
* to add a complete setup UI panel for quartz, in term of cronjobs and multiple jobs.
* to add CI/CD pipeline to ease the deploy pulling a docker container.
* Enabling adapters for integrations: kafka, etc.
## PROJECT STRUCTURE
* **quartz-parent/quartz-manager-api** is the library that can be imported in webapp to have the quartz-manager API.
* **quartz-parent/quartz-manager-web** is an example of webapp that imports quartz-manager-api. It adds a secure layer and a custom job to be scheduled.
* **quartz-parent/quartz-manager-webjar** is a maven module to build and package the angular frontend in a webjar.
* **quartz-parent/quartz-manager-security** is ther library that can be imported in a webapp to have a security layer (login) over the quartz-manager API.
* **quartz-parent/quartz-manager-web-showcase** is an example of webapp that imports quartz-manager-api. Useful to develop the frontend started locally with the webpack dev server.
* **quartz-frontend** is the angular app that interacts with the Quartz Manager API.
Next steps in the roadmap are:
* to simplify the customization of the job through plugins
* to add CI/CD pipeline to ease the deploy pulling a docker container
* to add a complete setup UI panel for quartz, in term of cronjobs and multiple jobs
* to add a persistent layer to save all job logs.
## QUICK START
## HOW-TO CONTRIBUTE
**[requirements]** Make sure you have installed
* [Java 8](https://java.com/download/) or greater
* [Maven](https://maven.apache.org/)