Update README.md

This commit is contained in:
Fabio Formosa
2020-10-03 00:22:12 +02:00
committed by GitHub
parent 101968e2b5
commit be04f20b5b

View File

@@ -1,7 +1,7 @@
# QUARTZ MANAGER
GUI Manager for Quartz Scheduler.
UI Manager for Quartz Scheduler.
Through this webapp you can launch and control your scheduled job. The GUI Console is composed by a managament panel to set trigger, start/stop scheduler and a log panel with a progress bar to display the job output.
Through this webapp you can launch and control your scheduled job. The UI Console is composed by a management panel to set trigger, start/stop scheduler and a log panel with a progress bar to display the job output.
## SCREENSHOT
![](https://github.com/fabioformosa/quartz-manager/blob/master/quartz-manager-api/src/main/resources/quartz-manager-2-screenshot_800.PNG)
@@ -12,9 +12,14 @@ Through this webapp you can launch and control your scheduled job. The GUI Conso
* The GUI manager updates the progress bar and reports all logs of your quartz job.
## ROADMAP
Open the [Projects Section](https://github.com/fabioformosa/quartz-manager/projects) to glance at the roadmap of Quartz Manager.
This project was born in 2016 when I needed a visual panel to monitor a scheduled job that fulfilled a mailing campaign to my customers.
It is currently under development, regarding: frontend, backend and CI/CD.
Open the [Projects Section](https://github.com/fabioformosa/quartz-manager/projects) to take a look at the roadmap 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 `quartz-manager-parent/quartz-manager-api`, to be imported in your spring boot where you have your job to be scheduled. For instance, the project `quartz-manager-parent/quartz-manager-web` imports it and it adds a secure layer and a custom job that says `hello world`.
## 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-frontend ** is the angular app that interacts with the Quartz Manager API.
## QUICK START
**[requirements]** Make sure you have installed
@@ -22,12 +27,14 @@ It is currently under development, regarding: frontend, backend and CI/CD.
* [Maven](https://maven.apache.org/)
* [npm](https://www.npmjs.com/get-npm), [node](https://nodejs.org) and [angular-cli](https://cli.angular.io/)
To build&run quartz-manager in your machine:
```
#CLONE REPOSITORY
git clone https://github.com/fabioformosa/quartz-manager.git
# START QUARTZ-MANAGER-API
cd quartz-manager/quartz-manager-api
# START QUARTZ-MANAGER-WEB
cd quartz-manager/quartz-parent/quartz-manager-web
mvn spring-boot:run
# START QUARTZ-MANAGER-FRONTEND
@@ -42,15 +49,16 @@ npm start
If you are not confident with maven CLI, you can start it by your IDE. For more details [spring boot ref.](http://docs.spring.io/spring-boot/docs/current/reference/html/using-boot-running-your-application.html)
## HOW TO RUN YOUR SCHEDULED JOB
By default, quartz-manager executes the dummy job that logs "hello world!".
By default, quartz-manager-web executes the dummy job that logs "hello world!".
Replace the dummy job (class: `it.fabioformosa.quartzmanager.jobs.SampleJob`) with yours. Follow these steps:
1. Extend the super class `it.fabioformosa.quartzmanager.jobs.AbstractLoggingJob`
1. set property `quartz-manager.jobClass` with qualified name of your custom Job Class (default job is SampleJob.class)
## HOW TO CHANGE SETTINGS
* Num of Threads: `/quartz-manager/src/main/resources/quartz.properties`
* Num of Threads: `/quartz-manager-parent/quartz-manager-web/src/main/resources/quartz.properties`
* Credentials: To change admin's password, set ENV var `quartz-manager.account.pwd`
* quartz-manager backend context path (default `/quartz-manager`) and port (default `8080`): `/quartz-manager/src/main/resources/application.properties`