Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Papyrus Developer Guide/Release Process: How To/Publish Papyrus Artifacts
Publish a build
Successful Nightly builds are automatically published to :
Before Publishing
Stable builds are not automatically published. They should be first tested internally before publishing.
- First, install the build on the update site nightly http://download.eclipse.org/modeling/mdt/papyrus/updates/nightly/[release_name]/
- Then, test it locally
Publish
To publish a milestone or release from a build, you have to use the following scripts (on the build.eclipse.org server) under: /opt/public/modeling/mdt/papyrus/
- manualPromote-[release_name].sh
if there are any doubt on which to use, you can always search the repository for the present promote scripts and pick the correct one: ls -la
.
Start this script, and fill in the parameters in the interactive script:
- the signed builds numbers
- the corresponding version
- the update site in which to publish it
Be careful however as Hudson does not make, as of yet, a zip for the tests and the current script will crash if a build number is provided and it does not find any corresponding zip. This may lead to some, fixable but annoying, access permissions problems.
For example:
In the previous example, the script will:
- publish the main Papyrus plug-ins from Papyrus-Master build #1600 to the Papyrus download in "drops/1.1.0" and the update site in "milestones/1.1/RC3/main"
- publish the extra plug-ins from Papyrus-Master-Extra build #1237 to the Papyrus download in "drops/1.1.0" in the same build folder as the main build, and the update site in "milestones/1.1/RC3/extra"
- do not publish the test results from Papyrus-Master-Tests build
- make "milestones/1.1/RC3" a composite update site, which contains "milestones/1.1/RC3/main" and "milestones/1.1/RC3/extra"
- enable p2 download statistics both on "milestones/1.1/RC3/main" and "milestones/1.1/RC3/extra"
- set the correct linux access rights on the new folders
- Check that the new build appears on http://www.eclipse.org/papyrus/downloads/.
- Check the edited composites on http://download.eclipse.org/modeling/mdt/papyrus/updates/milestones/?d. (or [...]/releases/?d in case of a release)
- and add browse through the directory content to check your version, e.g.: /1.1 will give you the edited root composites, and 1.1/M6 will give you the main and extra composites
You should verify that what you have pushed is there :
-
~/downloads/modeling/mdt/papyrus/downloads/drops/<versionNumber>
-
~/downloads/modeling/mdt/papyrus/updates/<milestones/releases>/<releaseName>
Once you have verified that what you have pushed is there , all you have left to do is to:
- Tag the last commit: Releases should have a tag like 1.1.0, and milestones like 1.1.0_M6
- git tag -a 2.0.1_RC4 -m "Create the tag 2.0.1_RC4" d4c28a3b7c1c46cf5407bbfae2eda602eb4480c7
- git push origin 2.0.1_RC4
Add a new update site with the new build to the parent composite (~/downloads/modeling/mdt/papyrus/updates/milestones/1.1/):
- update both the
compositeContent.xml
andcompositeArtifacts.xml
files of the update site (that are located in the parent of the folder to which you extracted the update site) to add a reference to your newly added update site- set the value of p2.timestamp to the result of "
date +%s000
" - increase the "size" attribute of the children element
- add a "child" element inside the "children" element with a "location" set to the name of the folder (e.g "M6")
- set the value of p2.timestamp to the result of "
Builds can be hidden from this page before a release by modifying downloads-scripts.php
in /downloads/
on git://git.eclipse.org/gitroot/www.eclipse.org/papyrus.git
Simultaneous Release
If the build must be part of the simultaneous release, you must also:
- Use the B3 Aggregator (or a text editor if the modification is trivial) and push to the simrel's gerrit which path is :
ssh://username@git.eclipse.org:29418/simrel/org.eclipse.simrel.build.git
Usually, the only thing to change is the location (for example "milestones/1.1/M6/main"):
<repositories location="http://download.eclipse.org/modeling/mdt/papyrus/updates/milestones/1.1/M6/main" description="Papyrus">
Tip: You can check the status of the contribution at simrel's gerrit page