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/Bundle Checklist"

(CQs)
(Migrated to GitHub)
 
(27 intermediate revisions by 7 users not shown)
Line 1: Line 1:
Here are the steps for adding a new bundle to Orbit. Please use them as a checklist to ensure that you have done
+
{{warning|Note: The contents of this page has been migrated. Please see https://github.com/eclipse/orbit/blob/master/Bundle-checklist.md for current information, or page history for historical versions. }}
everything correctly when you have a new bundle to add.
+
 
+
===CQs===
+
A CQ is a Contribution Questionnaire and it basically refers to legal approval to use a third party bundle in Eclipse. Every bundle in Orbit needs to have '''at least''' 2 CQs, one for the bundle being in the Eclipse repository (being a part of Orbit), and then one for each of the projects which are going to be using the Orbit bundle. These subsequent CQs can be created as "piggy-back" CQs which are commonly easier to clear legal since the code has already been approved and you just want permission to re-use it.
+
 
+
CQs can be created on the [http://portal.eclipse.org Eclipse Foundation] web site in the portal.
+
 
+
===Add the Bundle to CVS===
+
In Orbit we store bundle versions in branches in CVS. Look at our [[Adding Bundles to Orbit]] document for instructions on how to initially put your bundle into Orbit.
+
 
+
===Create a Source Bundle===
+
If you have source for your bundle, then follow these steps for getting your bundle into the right format to be consumed
+
by the build.
+
* In your bundle root, create a directory called <code>source-bundle</code>
+
* Add the appropriate <code>about.html</code> file and an <code>about_files</code> directory with the licenses.
+
* Modify the bundle manifest to add the line to say that your source bundle is attached to the main bundle.
+
<pre>
+
...
+
Bundle-SymbolicName: my.bundle.id.source
+
Eclipse-SourceBundle: my.bundle.id;version="1.0.0.qualifier"
+
...
+
</pre>
+
* Extract the source to the root of the directory.
+
* Modify the <code>build.properties</code> to ensure the root of the source is included in the build.
+
 
+
In the example below, the <code>my/</code> directory is the root of the source since it is for the bundle <code>my.bundle.id</code>. The bundle also contains legal files in an <code>about_files</code> directory so it is included here.
+
 
+
<pre>
+
bin.includes = about.html,\
+
              about_files/,\
+
              plugin.properties,\
+
              META-INF/,\
+
              my/
+
</pre>
+
 
+
===Update the Feature===
+
In Eclipse we build features so when we add a new bundle to Orbit, we must add it to the feature so the builder is aware that we should build it. Please update <code>org.eclipse.orbit.build.feature.set1/feature.xml</code> with an entry for your new bundle. (you don't need one for the source bundle) Changes to the Orbit feature are done in HEAD in CVS.
+
<pre>
+
<plugin
+
id="my.bundle.id"
+
download-size="0"
+
install-size="0"
+
version="1.0.0.qualifier"
+
unpack="false"/>
+
</pre>
+
 
+
===Update the Map File===
+
In Eclipse, the build contributions are driven from map files which specify your bundle, version, and location in the repository. In Orbit our map file is stored in <code>org.eclipse.orbit.releng/maps/bundles.map</code> in HEAD in CVS. When you add a new bundle to the build, you must add an entry for your bundle to the <code>bundles.map</code> file. Don't forget to add an entry for the source bundle if you created one.
+
 
+
<pre>
+
plugin@my.bundle.id,1.0.0=v200802271055,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.orbit/my.bundle.id
+
plugin@my.bundle.id.source,1.0.0=v200802271055,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.orbit/my.bundle.id/source-bundle
+
</pre>
+
 
+
===Update the Project Set File===
+
<pre>
+
<project reference="1.0,:extssh:dev.eclipse.org:/cvsroot/tools,org.eclipse.orbit/my.bundle.id,my.bundle.id_v1.0.0,v1_0_0"/>
+
</pre>
+
 
+
===Update the IP Log===
+

Latest revision as of 12:33, 3 April 2023

Warning2.png
Note: The contents of this page has been migrated. Please see https://github.com/eclipse/orbit/blob/master/Bundle-checklist.md for current information, or page history for historical versions.

Back to the top