Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Papyrus Developer Guide/Release Process: How To/Publish Papyrus Artifacts"

(Created page with "== Publish a build == Successful Nightly builds are automatically published to : * http://download.eclipse.org/modeling/mdt/papyrus/updates/nightly/ === Before Publishing...")
 
(Publish)
Line 14: Line 14:
 
=== Publish ===
 
=== Publish ===
  
To publish a milestone or release from a build, you have to use the following scripts (on the build.eclipse.org server) under: <code>/opt/public/modeling/mdt/papyrus/</code>
+
To publish a milestone or release from a build, you have to use the [https://ci.eclipse.org/papyrus/view/MasterRelease/ specific jobs] on the project's Jenkins instance.
* 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: <code> ls -la </code>.
+
 
+
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:
+
 
+
[[File:manualPromote-mars.png|center|800px|thumb|'''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''' 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)
 
* '''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 :  
 
You should verify that what you have pushed is there :  
Line 52: Line 26:
 
** git tag -a 2.0.1_RC4 -m "Create the tag 2.0.1_RC4" d4c28a3b7c1c46cf5407bbfae2eda602eb4480c7
 
** git tag -a 2.0.1_RC4 -m "Create the tag 2.0.1_RC4" d4c28a3b7c1c46cf5407bbfae2eda602eb4480c7
 
** git push origin 2.0.1_RC4
 
** 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 <code>compositeContent.xml</code> and <code>compositeArtifacts.xml</code> 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 "<code>date +%s000</code>"
 
** 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")
 
 
 
[[File:compositeArtifacts.png|center|1000px|thumb|'''The values to edit''']]
 
  
 
Builds can be hidden from this page before a release by modifying <code>downloads-scripts.php</code> in <code>/downloads/</code> on [git://git.eclipse.org/gitroot/www.eclipse.org/papyrus.git git://git.eclipse.org/gitroot/www.eclipse.org/papyrus.git]
 
Builds can be hidden from this page before a release by modifying <code>downloads-scripts.php</code> in <code>/downloads/</code> on [git://git.eclipse.org/gitroot/www.eclipse.org/papyrus.git git://git.eclipse.org/gitroot/www.eclipse.org/papyrus.git]

Revision as of 10:34, 10 July 2020

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.


Publish

To publish a milestone or release from a build, you have to use the specific jobs on the project's Jenkins instance.

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

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">
Previous composite address


Updated composite address


Tip: You can check the status of the contribution at simrel's gerrit page

Back to the top