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 "Jetty/Contributor/Update Site"

 
(4 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{Jetty Contributors}}
+
{{Jetty Contributor}}
  
==Jetty Update Site==
+
==Jetty's P2 Repositories==
 +
Jetty publishes to different types of repositories:
 +
* The Jetty-rt-bundles are built for each release of Jetty and contain only the jetty jars.
 +
* The EclipseRT Webstarter Kits follow the release cycle of eclipse. They are tied to a particular build of equinox and contain the ORBIT dependencices.
  
Jetty provides an eclipse p2 style update site for each of its builds that are stamped and released to the public for usage.
+
How-to run the p2 builds is documented here: [[Jetty/Contributor/Eclipse_Release]]
  
The URL for the update site follows the following naming convention: http://download.eclipse.org/jetty/<version>/update/
+
==Jetty-rt-bundles repositories==
  
==Generating the Update Site==
+
Jetty provides an eclipse p2 repository site for each of its builds that are stamped and released to the public for usage.
<div class="unbounded-list">
+
* http://download.eclipse.org/jetty/updates/jetty-bundles-7.x/ ${jetty-version}
; http://dev.eclipse.org/svnroot/rt/org.eclipse.jetty/jetty-update-site/trunk : Jetty update site trunk
+
* http://download.eclipse.org/jetty/updates/jetty-bundles-8.x/ ${jetty-version}
</div>
+
Each one of those repositories publishes only the jetty jars.
 +
They do not contain any dependency or equinox jars.
 +
They are meant to be consumed by downstream builds.
  
There are some requirements for getting this to work right as there is no nice and easy maven build for generating this as of yet.  It is a woefully manual process that must be performed through the editor itself.  I would _highly_ recommend using a clean installation of eclipse and keeping it around for the purposes of generating this update site.
+
Each branch of jetty defines a composite repository that list each one of the released version of jetty:
 +
* http://download.eclipse.org/jetty/updates/jetty-bundles-7.x
 +
* http://download.eclipse.org/jetty/updates/jetty-bundles-8.x
  
* check out the source from the above scm URL
+
Each branch has a nightly build that publishes the current snapshot build here:
* obtain the servlet-api 2.5 bundle (see section below) and copy it into the plugins directory of the clean eclipse installation
+
* http://download.eclipse.org/jetty/updates/jetty-bundles-7.x/development
* you should have the target artifacts in your local repository, if not then checkout the release tag and generate the documents from the top level, this should populate the local repo
+
* http://download.eclipse.org/jetty/updates/jetty-bundles-8.x/development
* locate and execute the gather.sh script which gathers up the maven artifacts, renames them to eclipse conventions and places them in the files directory in your current directory
+
* copy the Jetty files (now following the org.eclipse.jetty*_VERSION.jar naming convention) into the plugins directory of the clean eclipse installation
+
* start the clean eclipse installation
+
* import the project into a fresh eclipse workspace
+
* Set the Target Platform
+
** mac: Eclipse->Preferences->Plugin Development->TargetPlatform
+
** chose 'Base RPC (Binary Only)' under Predefined Targets
+
** apply
+
** check the javax.servlet 2.5 bundle copied over in the second step above
+
** apply
+
** ok
+
* open the site.xml file of the org.eclipse.jetty.update.site project
+
* click Build All button
+
** if there are errors, good luck resolving them...they can be numerous and varied, or it just works, nuff said.
+
* zip up the resulting project (all of the org.eclipse.jetty.update.site project)
+
* scp the file to dev.eclipse.org:/home/www/jetty/<VERSION>
+
* unzip and rename directory to 'update'
+
* do a sanity check to make sure all the same jar files are on the plugins directory as the previous update sites
+
  
 +
 +
The hudson job https://hudson.eclipse.org/hudson/view/Jetty-RT/job/jetty-rt-bundles/ is parameterized.
 +
It can be configured to build any of the repositories described here.
 +
 +
The update of the composite repository is done manually: open compositeContent.xml and compositeArtifacts.xml and add the new repository.
  
 
===Servlet 2.5 Bundle===
 
===Servlet 2.5 Bundle===
Line 42: Line 36:
  
 
http://download.eclipse.org/jetty/7.0.0.M0/update/plugins/javax.servlet_2.5.0.v200806031605.jar
 
http://download.eclipse.org/jetty/7.0.0.M0/update/plugins/javax.servlet_2.5.0.v200806031605.jar
 +
 +
==EclipseRTWebStarterKits repositories==
 +
The starter kits are examples of equinox products.
 +
The EclipseRTWebStarterKit is an equinox distribution where jetty is started by default and will deploy web bundles following the OSGi enterprise spec.
 +
 +
The starter kits are built by choosing a combination of jetty, equinox and orbit.
 +
The naming conventions of the repositories follow the ones adopted by the eclipse-platform:
 +
* Jetty-7 + equinox-3.7-milestones: http://download.eclipse.org/jetty/updates/jetty-rt-3.7milestones/
 +
* Jetty-7 + equinox-3.7-nightly: http://download.eclipse.org/jetty/updates/jetty-rt-3.7-N-builds/
 +
* Jetty-8 + equinox-3.8-milestones: http://download.eclipse.org/jetty/updates/jetty-rt-3.8milestones/
 +
* Jetty-8 + equinox-3.8-nightly: http://download.eclipse.org/jetty/updates/jetty-rt-3.8-N-builds/
 +
 +
Each one of those repositories is a composite repository that lists each releases made there.
 +
The version of the features published by jetty reflect the release of jetty that was used.
 +
 +
The hudson job https://hudson.eclipse.org/hudson/view/Jetty-RT/job/jetty-rt-products/ is parameterized.
 +
It can be configured to build any of the repositories described here.

Latest revision as of 01:07, 30 May 2011


Jetty's P2 Repositories

Jetty publishes to different types of repositories:

  • The Jetty-rt-bundles are built for each release of Jetty and contain only the jetty jars.
  • The EclipseRT Webstarter Kits follow the release cycle of eclipse. They are tied to a particular build of equinox and contain the ORBIT dependencices.

How-to run the p2 builds is documented here: Jetty/Contributor/Eclipse_Release

Jetty-rt-bundles repositories

Jetty provides an eclipse p2 repository site for each of its builds that are stamped and released to the public for usage.

Each one of those repositories publishes only the jetty jars. They do not contain any dependency or equinox jars. They are meant to be consumed by downstream builds.

Each branch of jetty defines a composite repository that list each one of the released version of jetty:

Each branch has a nightly build that publishes the current snapshot build here:


The hudson job https://hudson.eclipse.org/hudson/view/Jetty-RT/job/jetty-rt-bundles/ is parameterized. It can be configured to build any of the repositories described here.

The update of the composite repository is done manually: open compositeContent.xml and compositeArtifacts.xml and add the new repository.

Servlet 2.5 Bundle

You should be able to obtain the bundle from ORBit or from the previous builds of the Jetty update site.

http://download.eclipse.org/jetty/7.0.0.M0/update/plugins/javax.servlet_2.5.0.v200806031605.jar

EclipseRTWebStarterKits repositories

The starter kits are examples of equinox products. The EclipseRTWebStarterKit is an equinox distribution where jetty is started by default and will deploy web bundles following the OSGi enterprise spec.

The starter kits are built by choosing a combination of jetty, equinox and orbit. The naming conventions of the repositories follow the ones adopted by the eclipse-platform:

Each one of those repositories is a composite repository that lists each releases made there. The version of the features published by jetty reflect the release of jetty that was used.

The hudson job https://hudson.eclipse.org/hudson/view/Jetty-RT/job/jetty-rt-products/ is parameterized. It can be configured to build any of the repositories described here.

Back to the top