Hello,
I'd like to suggest a new feature - administrative lock which prevents new jobs from
starting.
Use case:
1. I need to stop my galaxy server (to upgrade, to add new tool, to add new dbkey, etc).
2. I want to stop it in a friendly way, without killing running jobs, but not allow new
jobs to start.
3. Once all the running jobs complete (and new jobs are not started), I can stop the
server, fix it, and restart.
4. Restarting the server (and assuming jobs are tracked in the database), all the held
jobs are started normally.
Code changes:
1. new administrative method ( job_lock() in ./lib/galaxy/web/controller/admin.py )
2. new template ( ./templates/admin/job_lock.mako )
3. job lock code in lib/galaxy/jobs/schedulingpolicy/roundrobin.py
I'm still testing this patch, but comments are welcomed.
-gordon.