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 "Orbit/Adding Bundles To Orbit In 5 Minutes"

m (Consumption)
m (Manual Build And Promotion)
(9 intermediate revisions by 3 users not shown)
Line 3: Line 3:
 
This is for primarily meant as a guide for contributing a bundle to make its way into a release. This guide assumes all the steps to get approval for the bundle itself have already been performed.
 
This is for primarily meant as a guide for contributing a bundle to make its way into a release. This guide assumes all the steps to get approval for the bundle itself have already been performed.
  
See http://git.eclipse.org/c/gerrit/orbit/orbit-recipes.git/tree/README.md for a more thorough explanation
+
See https://git.eclipse.org/c/orbit/orbit-recipes.git/tree/README.md for a more thorough explanation
  
 
== Setup ==
 
== Setup ==
Line 53: Line 53:
 
* We should also test that our new recipe builds successfully prior to submitting for review
 
* We should also test that our new recipe builds successfully prior to submitting for review
  
First we test that our recipe builds alongside all other recipes and install them locally to be discovered later by our aggregation featue
+
First we test that our recipe builds alongside all other recipes and install them locally to be discovered later by our aggregation feature
  
 
  $ mvn clean install
 
  $ mvn clean install
Line 73: Line 73:
 
== Consumption ==
 
== Consumption ==
  
Once a change has been reviewed and approved, a build should be triggered within about an hour at https://hudson.eclipse.org/orbit/job/orbit-recipes/ . Once the build succeeds, information about where to find the build page, as well as the generated p2 repository can be found at the bottom of the build's logs.
+
Once a change has been reviewed and approved, a build should be triggered within about an hour at https://ci.eclipse.org/orbit/job/orbit-recipes/ . Once the build succeeds, information about where to find the build page, as well as the generated p2 repository can be found at the bottom of the build's logs.
  
 
The automated builds are analogous to nightly builds, in that they are not usually retained for long and are generally used merely for testing purposes. For more stable repositories, committers have the ability to push integration, milestone, and recommended (I, S, R) builds that can also be promoted to the [http://download.eclipse.org/tools/orbit/downloads/ downloads page] for visibility.
 
The automated builds are analogous to nightly builds, in that they are not usually retained for long and are generally used merely for testing purposes. For more stable repositories, committers have the ability to push integration, milestone, and recommended (I, S, R) builds that can also be promoted to the [http://download.eclipse.org/tools/orbit/downloads/ downloads page] for visibility.
 
To manually trigger a build, go to the [https://ci.eclipse.org/orbit/job/orbit-recipes/ orbit-recipes] job on the HIPP, and while logged in with your committer account, click "Build Now". Change the BUILD_LABEL parameter from 'N' to 'I', or whichever build label is desired ('N', 'I', 'S', 'R' are recognized).
 
  
 
See [[Orbit_Builds#Orbit_Builds_for_Orbit_Committers | Orbit Builds for Orbit Committers]].
 
See [[Orbit_Builds#Orbit_Builds_for_Orbit_Committers | Orbit Builds for Orbit Committers]].
 +
 +
== Manual Build And Promotion ==
 +
 +
To manually trigger/promote a build, you must be logged in with your committer account on the [https://ci.eclipse.org/orbit/ Orbit JIPP page].
 +
 +
Go to the [https://ci.eclipse.org/orbit/job/orbit-recipes/ orbit-recipes] job on the JIPP, and while logged in with your committer account, click "Build With Parameters". Change the <code>BUILD_LABEL</code> to whichever build label is desired ('I', 'S', 'M', 'R' are recognized). Generally the other parameters should be left as they are. Now wait for the build to complete.
 +
 +
To promote this newly created build to the [http://download.eclipse.org/tools/orbit/downloads/ downloads page], go to the [https://ci.eclipse.org/orbit/job/promote-to-downloads/ promote-to-downloads] job on the JIPP, and while logged in with your committer account, click "Build Now". Change the <code>SRC_LOCATION</code> parameter to the path to your builds directory relative to <code>http://download.eclipse.org/tools/orbit/</code>. For example, if your build was <code>http://download.eclipse.org/tools/orbit/I-builds/I20170425174753/</code>, then the SRC_LOCATION would be <code>I-builds/I20170425174753/</code>
 +
 +
Once this is completed, you should be able to see your build on the [http://download.eclipse.org/tools/orbit/downloads Orbit downloads page]
  
 
[[Category: Orbit]]
 
[[Category: Orbit]]

Revision as of 11:43, 26 March 2019

For the long version See Adding Bundles to Orbit

This is for primarily meant as a guide for contributing a bundle to make its way into a release. This guide assumes all the steps to get approval for the bundle itself have already been performed.

See https://git.eclipse.org/c/orbit/orbit-recipes.git/tree/README.md for a more thorough explanation

Setup

  • Clone the orbit-recipes git repository
$ git clone ssh://USERNAME@git.eclipse.org:29418/orbit/orbit-recipes

Creation/Preparation

  • Choose a folder under which to create the recipe and then create it there
$ cd github/mongodb
$ mvn ebr:create-recipe -DgroupId=org.mongodb -DartifactId=mongo-java-driver -Dversion=3.4.1 -DbundleSymbolicName=org.mongodb.mongo-java-driver
  • Modify recipe pom and osgi.bnd to suite the needs of the bundle. If the bundles has dependencies, make sure to specify them under the Import-Package header in the osgi.bnd as opposed to just leaving it as '*;resolution:=optional'.
$ cd org.mongodb.mongo-java-driver_3.4.1
$ $EDITOR pom.xml
$ $EDITOR osgi.bnd
  • Perform a test build of the package to have an ip_log.xml file generated. Fill in the missing information (Name, Email, Company, Ipzilla Bug Id), into the ip_log.xml file. Note that the Ipzilla Bug Id must be an Add-To-Orbit (ATO) CQ.
$ mvn -U clean package -DdirtyWorkingTree=warning
$ $EDITOR src/eclipse/ip_log.xml

Add To Build

  • Add the new recipe to the category pom as a module

(eg. <module>org.mongodb.mongo-java-driver_3.4.1</module>)

$ cd ../
$ $EDITOR pom.xml
  • Add the recipe bundle to the aggregation feature to ensure it ends up in the generated repository
$ cd ../../
$ EDITOR releng/aggregationfeature/feature.xml

(eg. <plugin id="org.mongodb.mongo-java-driver" version="3.4.1.qualifier"/>)

  • Add and commit the new recipe and changes to the aggregation feature. Be sure to reference the ATO CQ in your commit message.
$ git add github/mongodb/org.mongodb.mongo-java-driver_3.4.1 releng/aggregationfeature/feature.xml
$ git commit

Building Locally (Recommended)

  • We should also test that our new recipe builds successfully prior to submitting for review

First we test that our recipe builds alongside all other recipes and install them locally to be discovered later by our aggregation feature

$ mvn clean install

Next we test that the aggregation feature builds successfully

$ mvn clean install -f releng/aggregationfeature/pom.xml

Finally, we test that the generated repository containing all bundle recipes builds successfully

$ mvn clean package -f releng/repository/pom.xml

Contributing

  • Lastly, we push to review
$ git push origin HEAD:refs/for/master

Consumption

Once a change has been reviewed and approved, a build should be triggered within about an hour at https://ci.eclipse.org/orbit/job/orbit-recipes/ . Once the build succeeds, information about where to find the build page, as well as the generated p2 repository can be found at the bottom of the build's logs.

The automated builds are analogous to nightly builds, in that they are not usually retained for long and are generally used merely for testing purposes. For more stable repositories, committers have the ability to push integration, milestone, and recommended (I, S, R) builds that can also be promoted to the downloads page for visibility.

See Orbit Builds for Orbit Committers.

Manual Build And Promotion

To manually trigger/promote a build, you must be logged in with your committer account on the Orbit JIPP page.

Go to the orbit-recipes job on the JIPP, and while logged in with your committer account, click "Build With Parameters". Change the BUILD_LABEL to whichever build label is desired ('I', 'S', 'M', 'R' are recognized). Generally the other parameters should be left as they are. Now wait for the build to complete.

To promote this newly created build to the downloads page, go to the promote-to-downloads job on the JIPP, and while logged in with your committer account, click "Build Now". Change the SRC_LOCATION parameter to the path to your builds directory relative to http://download.eclipse.org/tools/orbit/. For example, if your build was http://download.eclipse.org/tools/orbit/I-builds/I20170425174753/, then the SRC_LOCATION would be I-builds/I20170425174753/

Once this is completed, you should be able to see your build on the Orbit downloads page

Back to the top