Issue Number | 3950 |
---|---|
Summary | Enhanced web based scheduler for the CDR |
Created | 2015-08-12 00:06:55 |
Issue Type | New Feature |
Submitted By | alan |
Assigned To | Learn, Blair (NIH/NCI) [C] |
Status | Closed |
Resolved | 2016-03-29 17:06:18 |
Resolution | Fixed |
Path | /home/bkline/backups/jira/ocecdr/issue.167325 |
In order to better manage CDR systems on stage and production and
reduce the
burden on CBIIT and the time delays of creating issues for multiple
teams to
work on, we can add more web based management capabilities to the
CDR.
Here are a number of possible candidates for such capabilities:
1. Cron like program for job scheduling.
We would need the ability to edit the crontab file using a web
interface, enabling us to change job schedules at will without
requiring assistance from a systems administrator to make a change
and then again to change it back again.
There are some open source cron implementations that might only
need a web interface with appropriate security controls to edit the
crontab file.
2. Ability to run CheckDtds, RefreshManifest, and possibly other
utilities.
This might be subsumed under the cron facility or implemented as a
separate, interactive interface..
3. Ability to pause and resume, or stop and fail publishing jobs.
If someone is monitoring publishing, it would be useful to be able
to complete any documents in process and then pause the job upon
receipt of some kind of signal from the user. The user might
inspect outputs or log files and then either resume the job or kill
it.
This will require changes to the cdrpub.py script plus a web
interface to communicate the commands to it.
A first step in implementing these capabilities is to refine
the
requirements and add any others that we can think of. Then we can
progress to design.
[implement scheduler (select framework), CDR server/C++ or as a service/sys software package, python scripts, existing publish service]
Scope: This is limited to implementing the framework and possibly converting a small reports scheduled job to use this new tool as proof of concept. This story does not include converting all possible services to use this tool. Story Point - 40
I have attached an HTML file generated from an emacs outline listing possible features to look for in a general purpose, off-the-shelf, job scheduling program that could be plugged in to the CDR and possibly many other projects. These are just ideas for features, not requirements.
Most of the ideas came from perusing documentation for "schedulix" and "JobScheduler", both open-source packages.
I added Bryan to the list of watchers since he indicated an active interest in this task in our story pointing meetings.
Re-assigning this task to Blair, as per discussions within the department.
Collection of related documents at: https://collaborate.nci.nih.gov/display/OCECTBWIKI/Job+Scheduling
New components:
NextDoor Scheduler [Installation instructions|https://collaborate.nci.nih.gov/display/OCECTBWIKI/Installing+Nextdoor+Scheduler}
Scheduling UI (/cgi-bin/scheduler
Web.config changes. (New rewrite rule.)
New database tables (created automatically on first run)
scheduler_jobs
scheduler_execution
scheduler_jobauditlog
New configuration:
Action
Name: 'MANAGE SCHEDULER'
Descr: 'Permission to control the CDR Scheduler.'
Not document type specifc
File Name | Posted | User |
---|---|---|
Features.htm | 2016-02-22 21:33:08 |
Elapsed: 0:00:00.001572