Develop Shutdown Mechanism for Mifos
Background
There is not a simple tool or embedded feature in Mifos to do a controlled shutdown of the application. The Mifos administrator has no visibility of whether users are actively using the application and must rely on a manual process to do an orderly system shutdown.
We would like to have a way for an Administrator to initiate system shutdown in an orderly manner. For an example, see how the Hudson Continuous Integration Server project implements their shutdown mechanism.
This function should prevent new logins, and after a specified time interval, kick all users off the system, stop all batch jobs and reports, otherwise make the application ready for clean shutdown, then exit.
Extra credit: Make it possible for Administrator to stop the process if they change their mind.
Extra credit: Notify all users that the system is shutting down (like Hudson does).
Extra credit: Allow the Administrator to see what users are logged in and what processes are running before initiating shutdown.
Extra credit: Schedule a shutdown. IE, set a time of day and have a warning message pop up for users, or merely enter - Shutdown in 10 minutes.
Status - Available
Contact
Please email the mifos-developer list if you are interested in helping on this project.
Mentor
Current Volunteer(s)
Time Estimate
40+ hours
Prerequisite experience
Experience with Apache Tomcat, Java, J2EE, SQL (especially MySQL).
Details
- develop graceful shutdown mechanism for Mifos web application is the "parent" issue. Suggested order of work:
- determine whether administrator would perform shutdown procedure using 3rd party tools or new Mifos tools or scripts.
- document shutdown procedure to be followed by Mifos administrator.
- note that the Tomcat Manager can show and expire active HTTP sessions: this may be useful during development of a Mifos shutdown mechanism
Steps
- Read the Developer Kick Start page for information on contributing and getting set up. Follow the steps under
- Introduce yourself to the community - Mailing Lists
- Fill out the Contributor Agreement
- Set up your machine for development:
- Read how to submit patches
- Do research and investigation of shutdown procedure
- Present plan to developer community and collect feedback
- Get approval from Mifos Project Management team to proceed with implementation
- Implement design and provide tools, code, etc. to developer community.
- Document Shutdown procedure on mifos.org