1. Review Jira
Confirm that all merges scheduled for the next kernel release have been merged to the 1.0.x branch. Tidy up KNL issues associated with release.
2. Backup Sakai Maven2 Repo /kernel
Be conservative. Back up https://source.sakaiproject.org/maven2/org/sakaiproject/kernel/ until we are sure that Maven properly pushes the new release to the repo.
No Format |
---|
cd /var/www/html/maven2/org/sakaiproject tar -czvf kernel-[YEARMONTHDAYHOURMINSEC].tgz kernel |
...
3. Check out the kernel project
Checkout a clean version of the project using SVN not git.
...
Avoid opening 1.0.x in Eclipse; otherwise you will pollute the projects with Eclipse metadata files that will have to be deleted before performing the release. Checkout with svn (not git)
4. Clean out local repo
Verify that a clean build works ok with no external dependencies. Issuing mvn -o clean install
ensures that .m2
repo is populated, a requirement for the assembly plugin. If the build fails because external dependencies are missing in .m2
run mvn clean install
, then delete /kernel
and run mvn -o clean install
again.
...
Note: check for Eclipse metadata files (.classpath, .project) and remove. Uncommitted versions of these files will cause mvn release:prepare
to fail.
5. Run integration tests
Note: not sure if we are ready for this step.
See integration test set up instructions at https://source.sakaiproject.org/svn/test-harness/trunk/xdocs/README-INTEGRATION-TESTING.txt
...
6. Generate release
Issue the following release plugin goals. Perform a dry run first.
...
No Format |
---|
mvn clean install
mvn release:prepare
|
Refresh Maven Repo with 1.0.10, 1.0.11-SNAPSHOT and 1.1-SNAPSHOT artifacts
For each new version (release, SNAPSHOT) issue the following command from the root folder:
If a release:
mvn -Prelease clean install deploy -DupdateReleaseInfo=true
if a SNAPSHOT:
mvn clean install javadoc:jar source:jar deploy
1. Check out 1.0.x branch (1.0.11-SNAPSHOT) and perform
No Format |
---|
mvn deploy
|
2. Check out kernel trunk (1.1-SHAPSHOT) and perform
No Format |
---|
mvn clean install javadoc:jar source:jar deploy |
Maven will deploy the new artifacts to the Sakai Maven2 SNAPSHOT Repo automatically.
Trunk vs Branch releases
When releasing from trunk, issue the branch goal to create a new branch. The release plugin will then branch the current trunk to branches/kernel-1.NEXT MINOR VERSION.x.
...
The release plugin will generate a tag. Check it out and make sure it works, binding it against a local working copy of Sakai.
Refresh Maven Repo with 1.0.10, 1.0.11-SNAPSHOT and 1.1-SNAPSHOT artifacts
For each new version (release, SNAPSHOT) issue the following command from the root folder:
...