Jump to: navigation, search

Difference between revisions of "Sirius/Update Sites"

(Update Sites List)
(Milestones)
(24 intermediate revisions by 2 users not shown)
Line 2: Line 2:
  
 
[[Sirius]] builds are stored in [[Equinox/p2|p2]] repositories that are produced as part of the build process. This page provides an overview of the different repositories maintained by the Sirius project, and their corresponding location and [[Eclipse/Repository retention policy| retention policy]].
 
[[Sirius]] builds are stored in [[Equinox/p2|p2]] repositories that are produced as part of the build process. This page provides an overview of the different repositories maintained by the Sirius project, and their corresponding location and [[Eclipse/Repository retention policy| retention policy]].
 
  
 
== Update Sites List ==
 
== Update Sites List ==
  
{| border="1" align="center" cellpadding="3" cellspacing="1"
+
''Note:'' Each update site is released in one variant per supported target platform (e.g. <code>juno</code>, <code>kepler</code> and <code>luna</code>). All variants of a given update site correspond to the exact same source code, but built against a different base Eclipse version. We recommend you use the update site corresponding to you Eclipse version (it can prevent some issues with broken binary compatibility between releases).
! width="20%" | Repository
+
 
! width="40%" | Repository URL
+
''Note 2'': Sirius depends on a version of the Guava library which is not available by default from a Juno install. You need to add [http://download.eclipse.org/tools/orbit/downloads/drops/R20130827064939/repository/ the Orbit update-site] if you want to install Sirius on Juno.
! width="40%" | Retention Policy
+
 
|- valign="top"
+
=== Releases ===
!Nightly builds for the 0.9.x stream
+
 
| <nowiki>http://download.eclipse.org/sirius/updates/nightly/0.9/</nowiki>  
+
* [[Sirius/0.9.0|Sirius 0.9.0]], released on 2013-12-11 (tag [http://git.eclipse.org/c/sirius/org.eclipse.sirius.git/tag/?id=v0.9.0 v0.9.0], commit [http://git.eclipse.org/c/sirius/org.eclipse.sirius.git/commit/?id=ac2881b95e6063728e79fd9c362900764145fa65 ac2881b95e6063728e79fd9c362900764145fa65]):
| Overwritten on each new build.
+
** <code>http://download.eclipse.org/sirius/updates/releases/0.9.0/juno</code>
|- valign="top"
+
** <code>http://download.eclipse.org/sirius/updates/releases/0.9.0/kepler</code>
!Stable build for the 0.9.x stream
+
** <code>http://download.eclipse.org/sirius/updates/releases/0.9.0/luna</code>
| <nowiki>http://download.eclipse.org/sirius/updates/stable/0.9.0-S20131115-0601/{helios,indigo,juno,kepler,luna}</nowiki>  
+
 
| Kept until the infal 0.9.0 release.
+
=== Milestones ===
|}
+
 
 +
* [[Sirius/1.0.0M4|Sirius 1.0.0M4]], released on 2013-12-16 (tag [http://git.eclipse.org/c/sirius/org.eclipse.sirius.git/tag/?id=v1.0.0M4 v1.0.0M4], commit [http://git.eclipse.org/c/sirius/org.eclipse.sirius.git/commit/?id=679983850e861e2584b90dc90a150e5621ca7c7d 679983850e861e2584b90dc90a150e5621ca7c7d]):
 +
** <code>http://download.eclipse.org/sirius/updates/milestones/1.0.0M4/juno</code>
 +
** <code>http://download.eclipse.org/sirius/updates/milestones/1.0.0M4/kepler</code>
 +
** <code>http://download.eclipse.org/sirius/updates/milestones/1.0.0M4/luna</code>
 +
* [[Sirius/1.0.0M5|Sirius 1.0.0M5]], released on 2014-01-27 (tag [http://git.eclipse.org/c/sirius/org.eclipse.sirius.git/tag/?id=v1.0.0M5 v1.0.0M4], commit [http://git.eclipse.org/c/sirius/org.eclipse.sirius.git/commit/?id=08cef0cf45e5af83f3fdc353f03cb52a0e602eeb 08cef0cf45e5af83f3fdc353f03cb52a0e602eeb]):
 +
** <code>http://download.eclipse.org/sirius/updates/milestones/1.0.0M5/juno</code>
 +
** <code>http://download.eclipse.org/sirius/updates/milestones/1.0.0M5/kepler</code>
 +
** <code>http://download.eclipse.org/sirius/updates/milestones/1.0.0M5/luna</code>
 +
* [[Sirius/1.0.0M6|Sirius 1.0.0M6]] was released on 2014-03-12 (tag [http://git.eclipse.org/c/sirius/org.eclipse.sirius.git/tag/?id=v1.0.0M6 v1.0.0M6], commit [http://git.eclipse.org/c/sirius/org.eclipse.sirius.git/commit/?id=c0961643b1874d65d2b1f304b3e42aa02af85424 c0961643b1874d65d2b1f304b3e42aa02af85424]). It is available from the following update sites:
 +
** <code>http://download.eclipse.org/sirius/updates/milestones/1.0.0M6/juno</code>
 +
** <code>http://download.eclipse.org/sirius/updates/milestones/1.0.0M6/kepler</code>
 +
** <code>http://download.eclipse.org/sirius/updates/milestones/1.0.0M6/luna</code>
 +
 
 +
=== Stable Snapshots ===
 +
 
 +
* Sirius 0.9.0-S20131115-0601: <code><nowiki>http://download.eclipse.org/sirius/updates/stable/0.9.0-S20131115-0601</nowiki></code>: [http://download.eclipse.org/sirius/updates/stable/0.9.0-S20131115-0601/juno Juno], [http://download.eclipse.org/sirius/updates/stable/0.9.0-S20131115-0601/kepler Kepler], [http://download.eclipse.org/sirius/updates/stable/0.9.0-S20131115-0601/luna Luna]
 +
 
 +
=== Nightly Builds ===
 +
 
 +
* Latest builds from the <code>master</code> branch (active developement towards 1.0.0):
 +
** <code>http://download.eclipse.org/sirius/updates/nightly/1.0.x/juno</code> or <code>http://download.eclipse.org/sirius/updates/nightly/latest/juno</code>
 +
** <code>http://download.eclipse.org/sirius/updates/nightly/1.0.x/kepler</code> or <code>http://download.eclipse.org/sirius/updates/nightly/latest/kepler</code>
 +
** <code>http://download.eclipse.org/sirius/updates/nightly/1.0.x/luna</code> or <code>http://download.eclipse.org/sirius/updates/nightly/latest/luna</code>
 +
* Latest builds from the <code>v0.9.x</code> branch (maintenance branch):
 +
** <code>http://download.eclipse.org/sirius/updates/nightly/0.9.x/juno</code>
 +
** <code>http://download.eclipse.org/sirius/updates/nightly/0.9.x/kepler</code>
 +
** <code>http://download.eclipse.org/sirius/updates/nightly/0.9.x/luna</code>
  
 
== General Rules ==
 
== General Rules ==
  
''Note:'' the rules defined below are not yet finalised and implemented.
+
''Note:'' the rules defined below are not yet finalized and fully implemented. See the discussions at https://bugs.eclipse.org/bugs/show_bug.cgi?id=422069. Feedback welcome.
  
 
The general form of all the Sirius update-sites is the following:
 
The general form of all the Sirius update-sites is the following:
Line 31: Line 57:
 
Where:
 
Where:
 
* ''TYPE'' can be one of: '''nightly''', '''stable''', '''milestones''', '''releases'''.
 
* ''TYPE'' can be one of: '''nightly''', '''stable''', '''milestones''', '''releases'''.
* ''VERSION'' is the build version number. See below for the acceptable build versions for each type of build and their meaning.
+
* ''VERSION'' is the build version identifier. See below for the acceptable build versions for each type of build and their meaning.
* ''TARGET'' indicates the version of the Eclipse platform which was used to build the content of the udpate site. It is the lower-case code-name of the Eclipse release, e.g. <code>helios</code>, <code>indigo</code>, <code>juno</code>, <code>kepler</code> or <code>luna</code> (at the time of this writing). All target variants of a given Sirius build are compiled from the exact same source code, but it is recommended you consume the update-site corresponding to your Eclipse version to avoid binary compatibility issues like [https://bugs.eclipse.org/bugs/show_bug.cgi?id=374802 this].
+
* ''TARGET'' indicates the version of the Eclipse platform which was used to build the content of the update site. It is the lower-case code-name of the Eclipse release, e.g. <code>juno</code>, <code>kepler</code> or <code>luna</code> (at the time of this writing). All target variants of a given Sirius build are compiled from the exact same source code, but it is recommended you consume the update-site corresponding to your Eclipse version to avoid binary compatibility issues like [https://bugs.eclipse.org/bugs/show_bug.cgi?id=374802 this].
  
 
=== Nightly Builds ===
 
=== Nightly Builds ===
  
Nightly builds correspond to the most recent successful builds from our Continuous Integration server.
+
Nightly builds correspond to the most recent successful builds from [https://hudson.eclipse.org/sirius/ our Continuous Integration server].
  
Version numbers for nightly builds have the form <code>x.y.z-<b>N</b>YYYYMMDD-HHMM</code>, where <code><b>N</b></code> stands for ''Nightly''.
+
Version identifiers for nightly builds have the form <code>x.y.z-<b>N</b>YYYYMMDD-HHMM</code>, where <code><b>N</b></code> stands for ''Nightly''.
  
 
For example, the nightly built for Luna on November 19, 2013 at 22:34 would be published at: <code>http://download.eclipse.org/sirius/updates/nightly/0.9.0-N20131119-2234/luna</code>.
 
For example, the nightly built for Luna on November 19, 2013 at 22:34 would be published at: <code>http://download.eclipse.org/sirius/updates/nightly/0.9.0-N20131119-2234/luna</code>.
Line 44: Line 70:
 
* ''Guarantees and audience'': there is no guarantee on these versions except that they compiled successfully. These are mostly useful for people contributing to Sirius itself and who want the very latest version.
 
* ''Guarantees and audience'': there is no guarantee on these versions except that they compiled successfully. These are mostly useful for people contributing to Sirius itself and who want the very latest version.
 
* ''Frequency'': the Continuous Integration server will automatically publish a new nightly every day if there was some activity in the Git repository since the last nightly. The Sirius development team may also decide to trigger manual builds during the day, which get published as nightlies.
 
* ''Frequency'': the Continuous Integration server will automatically publish a new nightly every day if there was some activity in the Git repository since the last nightly. The Sirius development team may also decide to trigger manual builds during the day, which get published as nightlies.
* ''Retention policy'': for a given stream and target, only the latest nightly build is kept.
+
* ''Retention policy'': for a given stream and target, only the last 10 nightlies are kept. This does not necessarily correspond to 10 days, as we sometimes launch several builds per day.
  
 
=== Stable Builds ===
 
=== Stable Builds ===
Line 50: Line 76:
 
Stable builds are nightly builds that the Sirius team considers stable enough to be used by early adopters and has promoted to stable manually.
 
Stable builds are nightly builds that the Sirius team considers stable enough to be used by early adopters and has promoted to stable manually.
  
Version numbers for nightly builds have the form <code>x.y.z-<b>S</b>YYYYMMDD-HHMM</code>, where <code><b>N</b></code> stands for ''Stable''. When a nightly build is deemed to be stable enough to be promoted, the content of the nightly repo is copied as-is under the new location. If the example above (nightly <code>0.9.0-N20131119-2234</code>) were to be promoted as stable, it would be published at <code>http://download.eclipse.org/sirius/updates/stable/0.9.0-S20131119-2234/luna</code>.
+
Version numbers for nightly builds have the form <code>x.y.z-<b>S</b>YYYYMMDD-HHMM</code>, where <code><b>S</b></code> stands for ''Stable''. When a nightly build is deemed to be stable enough to be promoted, the content of the nightly repo is copied as-is under the new location. If the example above (nightly <code>0.9.0-N20131119-2234</code>) were to be promoted as stable, it would be published at <code>http://download.eclipse.org/sirius/updates/stable/0.9.0-S20131119-2234/luna</code>.
  
* Guarantees and audience: stable builds should have all the basic functionnality working, but may contain some transient bugs and unfinished features which are still in developement. They can be used by adopters and users who want early access to some features and/or are ready to test unfinished features and give us feedback.
+
* ''Guarantees and audience'': stable builds should have all the basic functionality working, but may contain some transient bugs and unfinished features which are still in development. They can be used by adopters and users who want early access to some features and/or are ready to test unfinished features and give us feedback.
* Frequency: there is no fixed frequency, but the development team should publish a new stable release about every two weeks (less than a week between two stable builds is too short to gather feedback, more than 3 weeks means the code is too old compared to the current version).
+
* ''Frequency'': there is no fixed frequency, but the development team should strive to publish a new stable release about every two weeks (less than a week between two stable builds is too short to gather feedback, more than 3 weeks means the code is too old compared to the current version).
* Retention policy: for a given stream and target, all the stable builds are kept until the next milestone or release from that stream, at which point they disappear.
+
* ''Retention policy'': for a given stream and target, all the stable builds are kept until the next milestone or release from that stream, at which point they disappear.
  
 
=== Milestones ===
 
=== Milestones ===
Line 62: Line 88:
 
Version numbers for milestone builds have the form <code>x.y.z<b>M</b>n</code> for milestones and <code>x.y.x<b>RC</b>n</code> for release candidates. When a build is promoted as a milestone or release candidate, the content of the build's repo is copied as-is under the new location. If the example above (stable build <code>0.9.0-S20131119-2234</code>) were to be promoted as milestone <code>M4</code>, it would be published at <code>http://download.eclipse.org/sirius/updates/milestones/0.9.0M4/luna</code>.
 
Version numbers for milestone builds have the form <code>x.y.z<b>M</b>n</code> for milestones and <code>x.y.x<b>RC</b>n</code> for release candidates. When a build is promoted as a milestone or release candidate, the content of the build's repo is copied as-is under the new location. If the example above (stable build <code>0.9.0-S20131119-2234</code>) were to be promoted as milestone <code>M4</code>, it would be published at <code>http://download.eclipse.org/sirius/updates/milestones/0.9.0M4/luna</code>.
  
* Guarantees and audience: milestones should be fully functional and contain no blocker or major bugs. All features included in such a build should be complete (even if in a reduced scope). All automated tests should pass. Manual "open" tests should also be performed with no major issue identified. Exceptions to these rules are possible (to the discretion of the project leads) but should be clearly identified and communicated in the appropriate channels (at least the <code>sirius-dev</code> mailing list, maybe <code>cross-project-issues-dev</code> if some issues can impact other projects in the train).
+
* ''Guarantees and audience'': milestones should be fully functional and contain no blocker or major bugs. All features included in such a build should be complete (even if in a reduced scope). All automated tests should pass. Manual "open" tests should also be performed with no major issue identified. Exceptions to these rules are possible (to the discretion of the project leads) but should be clearly identified and communicated in the appropriate channels (at least the <code>sirius-dev</code> mailing list, maybe <code>cross-project-issues-dev</code> if some issues can impact other projects in the train).
* Frequency: as defined by the [http://wiki.eclipse.org/Luna/Simultaneous_Release_Plan plan] for the simultaneous release targetted by a stream.
+
* ''Frequency'': as defined by the [http://wiki.eclipse.org/Luna/Simultaneous_Release_Plan plan] for the simultaneous release targeted by a stream.
* Retention policy: forever.
+
* ''Retention policy'': forever.
  
 
=== Releases ===
 
=== Releases ===
Line 76: Line 102:
 
* Retention policy: forever.
 
* Retention policy: forever.
  
=== Composite Repositories ===
+
=== Shortcuts ===
  
All the update-sites described above contain each a single version of Sirius and their content never changes once they are published (until they are removed). For each type of build, we also publish composite repositories which aggregate all the builds of that type for a given ''stream'' as they are published. This gives a stable URL that users can point to to always get the latest version of given type of build.
+
All the update-sites described above contain each a single version of Sirius and their content never changes once they are published (until they are removed). For each type of build, we also shortcut URLs which point to the latest builds of that type for a given ''stream'' as they are published. This gives a stable URL that users can point to to always get the latest version of given type of build.
  
 
A stream name can be of the form
 
A stream name can be of the form
 
* <code><b>N</b>.x</code>, where <b>N</b> is a major version number, for example <code>0.x</code>, <code>1.x</code>, etc. Such a stream contains all builds with the corresponding major version.
 
* <code><b>N</b>.x</code>, where <b>N</b> is a major version number, for example <code>0.x</code>, <code>1.x</code>, etc. Such a stream contains all builds with the corresponding major version.
 
* <code><b>N.M</b>.x</code>, where <b>N.M</b> is a minor version number, for example <code>0.9.x</code>, <code>1.2.x</code>, etc. Such a stream contains all builds with the corresponding minor version.
 
* <code><b>N.M</b>.x</code>, where <b>N.M</b> is a minor version number, for example <code>0.9.x</code>, <code>1.2.x</code>, etc. Such a stream contains all builds with the corresponding minor version.
* the special string <code>all</code>, which contains all the builds.
+
* the special string <code>latest</code>, which always point to the latest build (from the <code>master</code> branch), whatever is/will be its version version when released.
  
 
A few examples:
 
A few examples:
* <code>http://download.eclipse.org/sirius/updates/nightly/0.9.x</code> contains all the nightly builds for Sirius 0.9.x branch, but not for the 1.0.x branch, while <code>http://download.eclipse.org/sirius/updates/nightly/all</code> would contain all.
+
* <code>http://download.eclipse.org/sirius/updates/nightly/0.9.x</code> contains all the nightly builds for Sirius 0.9.x branch, but not for the 1.0.x branch.
 
* <code>http://download.eclipse.org/sirius/updates/milestones/1.0.x</code> contains all the milestones leading to the final 1.0.0 release for Luna.
 
* <code>http://download.eclipse.org/sirius/updates/milestones/1.0.x</code> contains all the milestones leading to the final 1.0.0 release for Luna.
 
* <code>http://download.eclipse.org/sirius/updates/releases/0.9.x</code> contains all the releases for the 0.9.x branch, i.e. 0.9.0 and all the service releases if/when they are published (0.9.1, 0.9.2 etc.)
 
* <code>http://download.eclipse.org/sirius/updates/releases/0.9.x</code> contains all the releases for the 0.9.x branch, i.e. 0.9.0 and all the service releases if/when they are published (0.9.1, 0.9.2 etc.)
* <code>http://download.eclipse.org/sirius/updates/releases/all</code>contains all the released versions of Sirius.
+
* <code>http://download.eclipse.org/sirius/updates/nightly/latest</code> contains the very latest build from <code>master</code>.
  
 
[[Category:Sirius]]
 
[[Category:Sirius]]

Revision as of 03:55, 5 May 2014


Sirius builds are stored in p2 repositories that are produced as part of the build process. This page provides an overview of the different repositories maintained by the Sirius project, and their corresponding location and retention policy.

Update Sites List

Note: Each update site is released in one variant per supported target platform (e.g. juno, kepler and luna). All variants of a given update site correspond to the exact same source code, but built against a different base Eclipse version. We recommend you use the update site corresponding to you Eclipse version (it can prevent some issues with broken binary compatibility between releases).

Note 2: Sirius depends on a version of the Guava library which is not available by default from a Juno install. You need to add the Orbit update-site if you want to install Sirius on Juno.

Releases

Milestones

Stable Snapshots

  • Sirius 0.9.0-S20131115-0601: http://download.eclipse.org/sirius/updates/stable/0.9.0-S20131115-0601: Juno, Kepler, Luna

Nightly Builds

General Rules

Note: the rules defined below are not yet finalized and fully implemented. See the discussions at https://bugs.eclipse.org/bugs/show_bug.cgi?id=422069. Feedback welcome.

The general form of all the Sirius update-sites is the following:

http://download.eclipse.org/sirius/updates/TYPE/VERSION/TARGET/

Where:

  • TYPE can be one of: nightly, stable, milestones, releases.
  • VERSION is the build version identifier. See below for the acceptable build versions for each type of build and their meaning.
  • TARGET indicates the version of the Eclipse platform which was used to build the content of the update site. It is the lower-case code-name of the Eclipse release, e.g. juno, kepler or luna (at the time of this writing). All target variants of a given Sirius build are compiled from the exact same source code, but it is recommended you consume the update-site corresponding to your Eclipse version to avoid binary compatibility issues like this.

Nightly Builds

Nightly builds correspond to the most recent successful builds from our Continuous Integration server.

Version identifiers for nightly builds have the form x.y.z-NYYYYMMDD-HHMM, where N stands for Nightly.

For example, the nightly built for Luna on November 19, 2013 at 22:34 would be published at: http://download.eclipse.org/sirius/updates/nightly/0.9.0-N20131119-2234/luna.

  • Guarantees and audience: there is no guarantee on these versions except that they compiled successfully. These are mostly useful for people contributing to Sirius itself and who want the very latest version.
  • Frequency: the Continuous Integration server will automatically publish a new nightly every day if there was some activity in the Git repository since the last nightly. The Sirius development team may also decide to trigger manual builds during the day, which get published as nightlies.
  • Retention policy: for a given stream and target, only the last 10 nightlies are kept. This does not necessarily correspond to 10 days, as we sometimes launch several builds per day.

Stable Builds

Stable builds are nightly builds that the Sirius team considers stable enough to be used by early adopters and has promoted to stable manually.

Version numbers for nightly builds have the form x.y.z-SYYYYMMDD-HHMM, where S stands for Stable. When a nightly build is deemed to be stable enough to be promoted, the content of the nightly repo is copied as-is under the new location. If the example above (nightly 0.9.0-N20131119-2234) were to be promoted as stable, it would be published at http://download.eclipse.org/sirius/updates/stable/0.9.0-S20131119-2234/luna.

  • Guarantees and audience: stable builds should have all the basic functionality working, but may contain some transient bugs and unfinished features which are still in development. They can be used by adopters and users who want early access to some features and/or are ready to test unfinished features and give us feedback.
  • Frequency: there is no fixed frequency, but the development team should strive to publish a new stable release about every two weeks (less than a week between two stable builds is too short to gather feedback, more than 3 weeks means the code is too old compared to the current version).
  • Retention policy: for a given stream and target, all the stable builds are kept until the next milestone or release from that stream, at which point they disappear.

Milestones

Milestone builds correspond to the milestones and released candidates as defined in the SimRel rules.

Version numbers for milestone builds have the form x.y.zMn for milestones and x.y.xRCn for release candidates. When a build is promoted as a milestone or release candidate, the content of the build's repo is copied as-is under the new location. If the example above (stable build 0.9.0-S20131119-2234) were to be promoted as milestone M4, it would be published at http://download.eclipse.org/sirius/updates/milestones/0.9.0M4/luna.

  • Guarantees and audience: milestones should be fully functional and contain no blocker or major bugs. All features included in such a build should be complete (even if in a reduced scope). All automated tests should pass. Manual "open" tests should also be performed with no major issue identified. Exceptions to these rules are possible (to the discretion of the project leads) but should be clearly identified and communicated in the appropriate channels (at least the sirius-dev mailing list, maybe cross-project-issues-dev if some issues can impact other projects in the train).
  • Frequency: as defined by the plan for the simultaneous release targeted by a stream.
  • Retention policy: forever.

Releases

Release builds correspond to official Eclipse Sirius releases.

Version numbers for milestone builds have the form x.y.z. When a build is promoted as a release, the content of the build's repo is copied as-is under the new location. If the example above (milestone build 0.9.0M4) were to be promoted as the final 0.9.0, it would be published at http://download.eclipse.org/sirius/updates/releases/0.9.0/luna.

  • Guarantees and audience: milestones should be fully functional and contain no blocker or major bugs. All features included in such a build should be complete (even if in a reduced scope). All automated tests should pass. Manual "open" tests should also be performed with no major issue identified. Exceptions to these rules are possible (to the discretion of the project leads) but should be clearly identified and communicated in the appropriate channels (at least the sirius-dev mailing list, maybe cross-project-issues-dev if some issues can impact other projects in the train).
  • Frequency: at least the released implied by the participation in the release train, as defined by the release plan. Additional releases outside of the train may also be published (especially maintenance releases).
  • Retention policy: forever.

Shortcuts

All the update-sites described above contain each a single version of Sirius and their content never changes once they are published (until they are removed). For each type of build, we also shortcut URLs which point to the latest builds of that type for a given stream as they are published. This gives a stable URL that users can point to to always get the latest version of given type of build.

A stream name can be of the form

  • N.x, where N is a major version number, for example 0.x, 1.x, etc. Such a stream contains all builds with the corresponding major version.
  • N.M.x, where N.M is a minor version number, for example 0.9.x, 1.2.x, etc. Such a stream contains all builds with the corresponding minor version.
  • the special string latest, which always point to the latest build (from the master branch), whatever is/will be its version version when released.

A few examples: