sakai-2.8.2 release
Tracked against:Â - SAK-22179Getting issue details... STATUS
Command quick ref:
svn commit -m "SAK-22179 update purepoms parent to 2.8.6" mvn2 release:prepare -DdryRun=true mvn2 release:clean release:prepare release:perform
Â
1. Release indies in this order
- kernel
- purepoms - Bump dependency versions (kernel, eb, common, edu-services) in all poms, commit and release project as a whole.
- entity broker - bind to new purepoms, commit and release
- content-review -Â Â bind to new purepoms, commit and release
- emailtemplateservice - bind to new purepoms, commit and release
- common - bind to new purepoms, commit and release
- edu-services -Â Â bind to new purepoms, commit and release
- jsf - bind to new purepoms, commit and release
- sakai-mock - bind to new purepoms, commit and release
- shortenedurl -Â bind to new purepoms, commit and release
- web services -Â bind to new purepoms, commit and release
- search -Â bind to new purepoms, commit and release
- basic lti - bind to new purepoms, commit and release
- polls -Â bind to new purepoms & ets & eb, commit and release
- reset-pass - bind to new purepoms & ets & eb, commit and release
- profile - bind to new purepoms & jsf, commit and release
- job scheduler - bind to new purepoms & jsf, commit and release
- profile2Â - bind to new purepoms & ets & eb & common & search, commit and release
- sitestats -Â bind to new purepoms & mock & scheduler, commit and release
- msgcntr -Â bind to new purepoms & jsf & scheduler & search, commit and release
- hybrid - bind to new purepoms & msgcntr, commit and release
- samigo - bind to new purepoms &common & edu-services & jsf, commit and release with -P jarsign:
mvn2 release:clean release:prepare release:perform -P jarsign -Dsakai.samigo-audio.jarsign.keystore.location=/path/to/sakai.keystore -Dsakai.samigo-audio.jarsign.alias=ALIAS -Dsakai.samigo-audio.jarsign.password=PASSWORD
2. Download and check samigo audio jar for signature
jarsigner -verify samigo-audio-2.8.5.jar
3. Update JIRA versions
Add a new version for each of the projects and release the current version.
4. Update 2.8.x /master/pom.xml with the new version properties for indies:
<sakai.kernel.version>1.2.8</sakai.kernel.version> <sakai.basiclti.version>1.3.5</sakai.basiclti.version> <sakai.common.version>1.1.7</sakai.common.version> <sakai.contentreview.version>2.8.7</sakai.contentreview.version> <sakai.edu-services.version>1.1.6</sakai.edu-services.version> <sakai.ets.version>0.5.6</sakai.ets.version> <sakai.entitybroker.version>1.4.5</sakai.entitybroker.version> <sakai.hybrid.version>1.1.7</sakai.hybrid.version> <sakai.jsf.version>2.8.4</sakai.jsf.version> <sakai.msgcntr.version>2.8.3</sakai.msgcntr.version> <sakai.polls.version>1.4.4</sakai.polls.version> <sakai.profile.version>2.8.4</sakai.profile.version> <sakai.profile2.version>1.4.9</sakai.profile2.version> <sakai.resetpass.version>2.8.6</sakai.resetpass.version> <sakai.sakai-mock.version>2.8.4</sakai.sakai-mock.version> <sakai.samigo.version>2.8.5</sakai.samigo.version> <sakai.scheduler.version>2.8.3</sakai.scheduler.version> <sakai.search.version>1.3.6</sakai.search.version> <sakai.shortenedurl.version>1.0.5</sakai.shortenedurl.version> <sakai.sitestats.version>2.2.3</sakai.sitestats.version> <sakai.webservices.version>1.0.4</sakai.webservices.version>
5. Review conversion scripts
Review sql conversion scripts in reference/docs/conversion, update and commit as necessary.
6. Make modifications in a release branch, in preparation for tagging
6a. Create release branch for all non-indie modules:
6b. Checkout the 'sakai' module of the release branch, ignoring externals:
svn co https://source.sakaiproject.org/svn/sakai/branches/sakai-2.8.2-release/ --ignore-externals
6c. Edit .externals to point to release branch versions, set property and commit:
svn propset svn:externals -F .externals . svn propget svn:externals svn commit -m "SAK-22179 updated externals for release branch"
6d. Do an svn update so that the correct externals are fetched:
svn upÂ
6e. Update all Sakai non-indie pom.xml <version> values to 2.8.2 and commit:
find . -name "pom.xml" -print | xargs sed -i "" 's/2.8-SNAPSHOT/2.8.2/g'
6f. Disable snapshot repo in master/pom.xml
<repository> <id>sakai-maven2-snapshots</id> <name>Sakai Maven Repo</name> <layout>default</layout> <url>http://source.sakaiproject.org/maven2-snapshots</url> <snapshots> <enabled>false</enabled> </snapshots> </repository>
7. Adjust sakai.properties: default, demo, sample
config/configuration/bundles/src/bundle/org/sakaiproject/config/bundle/
7a. Version
version.service=RELEASE version.sakai=2.8.2
version.service=DEMO version.sakai=2.8.2
version.service=SAMPLE version.sakai=2.8.2
7b. Stealth settings
Stealth the following tools in both release and demo:
Release
# 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=sakai.profile
Demo
# 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. stealthTools@org.sakaiproject.tool.api.ActiveToolManager=sakai.profile,sakai.search
Check in all mods to the release branch.
8. Build the release branch and test it
Clean repo
9. Update .externals to point to release TAG versions, set property and commit:
svn up edit .externals svn propset svn:externals -F .externals . svn propget svn:externals svn commit -m "SAK-22179 updated externals ready for tagging"
10. Create release tag for all non-indie modules:
This was previously performed by a script, but can just as easily be done via some svn copy commands, assuming the code is all in place.
11. Check out and build the release
Clean repo.
Â
svn co https://source.sakaiproject.org/svn//sakai/tags/sakai-2.8.2/ mvn2 clean install sakai:deploy
Â
12. Create download artifacts
cd sakai-2.8.2/pack
12a. Source artifacts
cd pack-src mvn2 -Ppack-src install
Upload artifacts from current directory.
12b. Binary artifacts
cd pack-bin mvn2 -Ppack-bin install
Upload artifacts from current directory.
12c. Demo artifacts
cd pack-demo mvn2 -Ppack-demo install
Upload artifacts from current directory.
13. Create javadocs
From base directory of the release:
mvn javadoc:aggregate cd target/site tar -czvf sakai-javadoc-2.8.2.tgz apidocs/ zip -r sakai-javadoc-2.8.2.zip apidocs/
Upload apidocs/ directory and the .tar.gz and .zip
14. Release binaries to Maven repo
So that other projects that depend on built artifacts can locate them, they need to be released to the Maven repo:
mvn clean install deploy
15. Update release pages
On source.sakaiproject.org, copy the release/2.8.1 directory and edit as required.
Edit the 2.8 release notes pages as required:Â Sakai CLE 2.8 release notes
Make sure that external links to Confluence release pages are updated.
Â