Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

2.5.4 branch prep

Create .externals_2-5-xto2-5-4 file

Documents the 2.5.x revisions that were used to construct this branch. Create a temp folder for .externals_2-5-xto2-5-4 and then issue an svn import WITHOUT including the temp folder in the destination path and .externals_2-5-xto2-5-4 will be added.

No Format
svn import tmpexternals https://source.sakaiproject.org/svn/sakai/branches/sakai_2-5-4 -m "add .externals_2-5-xto2-5-4"
sakai.properties updates

...

1. Release.

...

Update component/component-api/component/src/config/org/sakaiproject/config/sakai.properties updating version.service, version.sakai and uncommenting stealthToolsstealthTools@org.sakaiproject.tool.api.ActiveToolManager. Commit changes.

No Format
version.service=RELEASE
version.sakai=2.5.4
. . .
# STEALTH TOOLS.  A stealth tool is a tool that is running in Sakai, but is not available to be added to a site in Worksite Setup.
# For Development/QA purposes stealthTools property will be commented out; release artifacts will have the property uncommented.
stealthTools@org.sakaiproject.tool.api.ActiveToolManager=blogger,sakai.messagecenter,sakai.podcasts,sakai.postem,sakai.rutgers.linktool,sakai.rutgers.testlink,sakai.search,sakai.site.roster

...

2. Demo and Sample

...

Update reference/docs/sakai.properties AND reference/demo/sakai.properties version.service and version.sakai. Make sure stealthedTools property is commented out (i.e., enabling all provisional tools for the demo). Commit changes.

...

No Format
version.service=DEV
version.sakai=2.5.4
pom.xml updates

...

0. Update /master/pom.xml <sakai.version> from M2 to 2.5.4.

...

<sakai.version>2.5.4</sakai.version>.

...

1. Update /master/pom.xml Sakai Maven plugin <version> from M2 to 1.0.

...

Done.

No Format

<plugin>
  <inherited>true</inherited>
  <groupId>org.sakaiproject.maven.plugins</groupId>
  <artifactId>sakai</artifactId>
    <version>*1.0*</version>
    . . . .
</plugin>

...

2. Update all pom.xml <version> values from M2 to 2.5.4.

...

Done.

...

3. entitybroker/pom.xml

...

(minus) Remove <distributionManagement> directive which disrupts build process as well as other extraneous definitions. Commit changes.

...

4. /pack-demo/pom.xml.

...

Confirm that pack-demo pom includes the binary artifact generation code.

...

5. Update Sections-app pom.xml.

...

(minus) WARNING: update bad pom after 2.5.4 branch is created and before artifacts are generated. This was fixed for 2.5.x but excluded in .externals. Sections-app pom.xml <testiNcludes> element should be <testIncludes>.

http://jira.sakaiproject.org/jira/browse/SAK-13214

.svnignore

Update .svnignore and commit changes.

...

No Format
Sakai.keystore
sakaiartifactgenerator.sh
Add SAK-14949 patch.

Done.

Update .externals

Check out 2.5.4 branch .externals to local tag prep folder and update revision numbers to last commit from above steps. This ensures that the next checkout will include all branch prep commits.

...

Check out 2.5.4 branch again and confirm checkout includes all tag prep commits as well as updated .externals.

Cut RC1 tag.
RC2 prep

Took new revisions of the following projects to Announcement, Samigo (bugs), Syllabus (dependency), reference (scripts), JSF (required dependency) and Velocity per P. Peterson.

...

Check out 2.5.4 branch .externals and update revision to r 55882 to grab head of the branch.

Release Prep

Local build machine environment
  1. Check out 2.5.4 branch
  2. clean Tomcat 5.5.26
  3. empty .m2/repository/org/sakaiproject
  4. new MySQL 5.0.51 sakai db
  5. Confirm maven-taglib is defined in .M2/settings.xml
No Format
<!-- Reference plugins in order to use <goalPrefix> short-hand -->
<pluginGroups>
    <pluginGroup>net.sourceforge.maven-taglib</pluginGroup>
</pluginGroups>
favicon

Replace Tomcat favicon.ico with Sakai favicon. Add it to reference library. Pack-demo pom.xml snippet below:

No Format
<!-- Replace the favorite icon from tomcat -->
<copy file="${basedir}/../reference/library/src/webapp/icon/favicon.ico"
tofile="${basedir}/target/pack/webapps/ROOT/favicon.ico"
overwrite="true" />
conversion scripts (runconversion.sh)

Check for presence of *runconversion.sh (in assignment, content (named content-runconversion.sh, db) and make sure names get trapped by artifact generation script.

/master/pom.xml

Confirm <distributionManagement>, maven-taglib-plugin, wagon-webdav <build> extensions are in place and that the org.sakaiproject.maven.plugins <version> is set to 1.0. Commit changes if necessary.

...

No Format
<!-- Required for Dav -->
<extensions>
    <extension>
	<groupId>org.apache.maven.wagon</groupId>
	<artifactId>wagon-webdav</artifactId>
        <version>1.0-beta-2</version>
    </extension>
</extensions>
(minus) /reference/conversion

Review sql conversion scripts, update and commit as necessary.

base pom.xml

1. Confirm javadoc plugin definition. Should be configured as follows:

...

No Format
<profile>
      	<id>taglib</id>
      	<modules>
		 <module>gradebook/app/ui</module>
		 <module>help/help-tool</module>
		 <module>jsf/widgets</module>
		 <module>mailtool/mailtool</module>
		 <module>metaobj/metaobj-util/tool-lib</module>
		 <module>msgcntr/messageforums-app</module>
		 <module>osp/common/tool-lib</module>
		 <module>osp/glossary/tool-lib</module>
		 <module>osp/jsf/widgets</module>
		 <module>osp/presentation/tool-lib</module>
		 <module>podcasts/podcasts-app</module>
		 <module>postem/postem-app</module>
		 <module>profile/profile-app</module>
		 <module>roster/roster-app</module>
		 <module>rwiki/rwiki-tool/tool</module>
		 <module>sam/samigo-app</module>
		 <module>sections/sections-app</module>
		 <module>sections/sections-app-util</module>
		 <module>syllabus/syllabus-app</module>
      	</modules>
<profile>

Update .externals

Check out 2.5.4 branch .externals to local tag prep folder and update revision numbers to last tag prep commit. This ensures that the next checkout will include all tag prep commits.

...

Check out 2.5.4 branch again and confirm checkout includes all tag prep commits as well as updated .externals.

Generate Release artifacts

1. Mount Sakai Maven2 Repo using DAV (https:/source.sakaiproject.org/maven2 -> /Volumes/maven2). WARNING: create backup folder of maven2 so that only one copy operation is required in event of a generation failure.
2. Copy sakaiartifactgenerator.sh to local 2.5.4 branch checkout folder and run

...

7. then package up
the maven repo in /tmp/maven2
the javadoc
the sakai-demo and sakai-bin artifacts
the taglibsdocs

Check samigo audio jar for signature

No Format
jarsigner -verify sakai-samigo-audio-2.5.4.jar

Check artifacts

1. Build and deploy the sakai-src artifact.

...

2. Run the demo artifact.
3. Checkout 2.5.4 branch and import into Eclipse. Check pom.xml files for correct revision.

Update Sakai Maven2 repo

1. Make backup copy of current maven2/org/sakaiproject folder where x.x.x equals the previous Sakai release number. Then untar updated files:

No Format
sudo tar -xvzf mavenrepo-2.5.4.tgz -C /var/www/html/

Generate checksums (example)

No Format
md5sum sakai-bin-2.5.4.tar.gz > sakai-bin-2.5.4_tar_gz.md5

Cut release tag from 2.5.4 branch

The sakaitagbuilder.bash script accepts two arguments: Sakai version and tag suffix (e.g., blank, beta01, rc01, qa01). In this case no tag suffix is required.

...

After the release is generated, backup .m2/repository/org/sakaiproject, whack original (to ensure someone new can populate their repo from scratch), download the release tag and build and deploy it to a fresh Tomcat and fresh MySQL database.

Build release page

Make sure that external links to Confluence release pages are updated.