These instructions complement those from http://sling.apache.org/documentation/development/release-management.html, which are geared more towards bundle releases, while releasing the Launchpad is a bit more involved.
|Table of Contents|
Since the Launchpad is a collection of bundles, it is required for each bundle included it in to be a release, rather than a SNAPSHOT. It is not necessary to perform new releases for all SNAPSHOT bundles ; instead, we can roll back to the previous release if the changes made after the release are not important enoughWe currently have only releases in the starter, so this should not be an issue.
Create a new and noteworthy page
A new and notheworthy page outlines some of the significant changes done since the last release. The tooling/release/launchpad-comparator Java project allows generating a changelog between two versions of the Sling Launchpad and can be used to extract the new and noteworthy items.
- https://sling.apache.org/news/sling-launchpad-8-released.html .
Deploy the new API docs
For each version we deploy the aggregated javadoc for for the Sling bundles contained in the launchpad. The javadoc can be generated using the tooling/release/ generate_javadoc_for_release.sh script.
Deploy the docker image on DockerHub
For the Launchpad Since Sling 8 release we are adding also provide a docker image. The Dockerfile can be found in launchpad/docker/, see the README.txt file in that folder for instructions on building and pushing the image to DockerHubthe sling-org-apache-sling-starter-docker repo. For instructions on deploying to DockerHub, see the
/repos/private/pmc/sling SVN repository.
Update the Maven archetypes
The Maven archetypes that wrap the Sling launchpad starter should be updated to the latest version and released.
Update local references to the old
A number of projects in the sling source tree typically reference the Sling launchpad, starter mostly for testing. These projects should be updated to either reference the latest release, if they use it for testing additional sets of bundles, or to the latest SNAPSHOT, if they are used to test the current launchpad, like launchpad/testing or launchpad/testing-war .
Change version of dependant projects
The following projects should keep their versions in sync with the main launchpad:
- the main reactor pom
For future releases we should consider releasing the launchpad/testing and launchpad/testing-war projects ( and dependant test projects ) alongside the main launchpad project, so that the test state is recorded as well.
There may be references to old features of the launchpad starter at https://sling.apache.org/documentation/the-sling-engine/the-sling-launchpad.html, so make sure that this is up to date.
- Launchpad 8 release tracking task:
JIRA server ASF JIRA columns key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution serverId 5aa69414-a9e9-3523-82ec-879b028fb15b key SLING-5095
- firstname.lastname@example.org: Sling 8 release checklist
- email@example.com: Launchpad 7 release?
- Towards Sling 6
- firstname.lastname@example.org: Sling 6 release plan