[cle-release-team] Sakai 2.9 release process

Beth Kirschner bkirschn at umich.edu
Mon Nov 14 14:16:13 PST 2011


I'd like to summarize some recent off-list discussions in an effort to  
move forward the Sakai 2.9 build & release process. But first, I think  
we need to not lose sight of the primary goal, which is to release 2.9  
alpha/beta tags quickly and often. It's now mid-November and this  
release team has not directly released any tag. We've just removed  
several road-blocks to making this happen (thanks all!). I think the  
next steps is that the release team needs to take action, make  
decisions, and start putting out regular tagged releases for QA.  
Additionally, we need to decide on updated milestones for the 2.9  
release, starting with when to branch. I'd like to suggest that we  
discuss _and_ make decisions no later than this Thursday's Release  
Team meeting that will result in the following:

1) a new alpha tag build started this week
2) a target date for the first branch and beta tag

Primary goal: Release 2.9 alpha/beta tags in a timely, efficient manner.

Secondary goals:
	* Clean up the release process enough to automate (at least most of) it
	* Rationalize kernel-util (initial testing of this proved successful)
	* Break calendar/assignments cross-dependency (SAK-21389 - fixed)
	* Break courier/presence cross-dependency (SAK-21397 -patch attached)
	* Rationalize kernel, entitybroker, common, edu-services and sakai- 
basic-tool, sakai-standard-tool, sakai-common-tool, sakai-edu-tool
	* Break awkward versioning/release constraints between kernel/ 
framework and indies
	* Explore using a real repository manager and automated build server
	* Balance doing the best possible thing, the smallest possible thing,  
and resources available (avoid partial/piecemeal/long transitions)

Remaining proposed work to achieve the primary goal is as follows:

1. Move kernel-util to shared.
2. Combine the base pom.xml and master/pom.xml into one, perhaps  
called sakai-parent (following the Jasig model for uPortal).
3. Possibly remove purepoms entirely, all indies then inherit from the  
sakai-parent pom.
4. If not 3, then collapse these into one pom, perhaps called sakai- 
indie or similar.
5. Migrate Entity broker into the kernel
6. Combine common and edu-services into  a single package

Additionally, we also discussed as a short term way forward to just  
start cutting [alpha] releases based off some revision of nightly.

Say if we wanted the next alpha to be next Tuesday, then what revision  
was Monday midnight (time zone of the source control server so EST)  
that would be the package what is deployed to QA servers. We could  
call next weeks
sakai-2.9.0-a02-2011-11-15 rXXXXXX

And just go with that until actual release candidates. Once we get  
there, the indie dependency tree won't have any cycles or other  
problems, we shouldn't have to rebuild all of the indies, and make it  
much easier to run the script to pump out a regular release.

The only downside is that regular people if they want the source won't  
be able to check out the alpha tag.





More information about the cle-release-team mailing list