See the MWE2 documentation for more details.
MWE releases are performed via the master branch on Jenkins. The job is parameterized so the release type ('Integration', 'Beta', 'M0', 'M1', 'M2', 'M3', 'M4', 'M5', 'RC1', 'RC2', 'GA') can be configured upon starting the job.
The master branch is configured to perform a nightly integration build. If a nightly build fails, running the build manually choosing the 'Integration' release type should return the same result and further actions should not be necessary.
Performing a stable release has a few manual steps that are documented here:
-
Start the master branch job, selecting the release type. When the job is finished, artifacts should have been uploaded to the Sonatype Nexus and the Eclipse download storage.
-
Add a git tag (
v$MAJOR.$MINOR.$SERVICE
) to mark the commit being released. -
Check Jenkins artifacts, if Maven artifacts have the correct versions (without qualifiers!).
-
Check Jenkins artifacts, if p2 artifacts have the correct version (with qualifiers!).
-
Check if the MWE download site now provides the correct artifacts.
-
Check if the MWE update site now provides the correct artifacts.
-
Check if Sonatype Nexus provides the correct artifacts. If so, close the staging repository and release it afterwards.
-
Create a SimRel contribution by replacing the update site in emft-mwe.aggrcon with the newly released version.
-
If the release was of the type 'GA', run the
./set_version.sh
script and provide a PR to prepare the next release cycle.
mvn -f maven/org.eclipse.emf.mwe2.parent/pom.xml -Dtycho.localArtifacts=ignore -Dmaven.repo.local=.m2/repository clean install
Build with nightly dependencies (EMF etc.)
mvn -f maven/org.eclipse.emf.mwe2.parent/pom.xml -Dtycho.localArtifacts=ignore -Dmaven.repo.local=.m2/repository -Dtarget-platform=org.eclipse.emf.mwe2.target.nightly clean install