Code Migration Process
Code Migration Process
Personal Development Environment
Programmer develops application locally on his/her computer
Programmer uses Subversion to version control his/her source code
Programmer uses various testing processes to test his/her code on their personal development environment
JUnit
Programmer informs Release Manager (RM) when he/she is ready to move source code to sakai-dev
Programmer provides RM with Subversion revision numbers and or Subversion tag/branch names
Programmer(s) sign off (with wiki comment "signatures") that the code is ready
Sakai Development Environment (Staging area for Sakai Test)
RM waits for a Sakai test code migration window and sends out notifications
RM verifies the CHANGELOG and Subversion comments relating to this release
RM backs up existing code and database states
RM checks out / exports code from Subversion
Programmer provides revision numbers and or release tag/branch name
Sakai Foundation subversion repository
UCD subversion repository
others,...
RM further prepares source so that it can be built with MAVEN
RM has to make sure that both the sakai-dev internal database and sakai-dev tomcat are in proper state
RM works closely with programmers to enable programmer to do final testing on that level
Once programmers finishes development level testing he/she performs a second sign off and he/she informs Project Manager (PM) and RM that code is ready for formal testing
Sakai Test Environment (Staging area for Sakai Pilot)
Once code is ready for testing, PM coordinates test procedures with Quality Assurance Manager (QAM) and RM
PM and QAM will instruct RM to install specific source code revisions on the test server
RM has to make sure that both the sakai-test internal database and sakai-test tomcat are in proper state
Once RM has installed the requested source code, and releases sakai-test for testing, she/he will inform PM and QAM
Sakai Pilot Environment
PM and QAM will instruct RM to install specific source code revisions on the pilot server
PM will schedule appropriate downtime and will inform all affected parties
Sakai MOTD (Setting Message Of The Day)
Send email to management and other key players
ToDo: Setup Sakai release mailing list?
Inform data center about scheduled downtime
Send email to: sysadmin@ucdavis.edu (as instructed by Chris Callahan)