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"

(Update the Feature)
(Remove mention of CQs)
Line 2: Line 2:
 
everything correctly when you have a new bundle to add.
 
everything correctly when you have a new bundle to add.
  
===CQs===
+
===IP Provenance===
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 either a CQ, or reference to ClearlyDefined indicating an appropriate score for the third party library.
+
All contributions to Orbit need to be approved for use, either automatically or by raising an iplab issue for the content if the automatic check does not work. The automatic check is done by activating the "license-check" profile, e.g. <code>mvn verify -P license-check</code>. If the automatic check fails you may need to raise an [https://gitlab.eclipse.org/eclipsefdn/emo-team/iplab/-/issues/new iplab issue (choose vet-third-party in Description dropdown to get correct template)]. Send and email to [https://accounts.eclipse.org/mailing-list/orbit-dev orbit-dev] for advice.
 
+
CQs can be created on the [http://portal.eclipse.org Eclipse Foundation] web site in the portal.
+
 
+
[https://clearlydefined.io/ ClearlyDefined] can also be used.
+
  
 
===Add the Bundle to Git===
 
===Add the Bundle to Git===
Line 20: Line 16:
 
  <plugin id="javax.servlet" version="2.3.0.qualifier" />
 
  <plugin id="javax.servlet" version="2.3.0.qualifier" />
  
===Update the IP Log===
 
In Orbit we keep an on-going IP Log to make it easier when it comes to release review time. By keeping this log all the information is always up-to-date and readily available on the web. IP Log files are stored under <code>src/eclipse/ip_log.xml</code> for a given bundle's module. Generally most of the information should be filled out automatically as part of the creation of the bundle recipes (ebr:create-recipe) but certain information will need to be filled in manually. For example, contact information for the bundle, and the corresponding ipzilla bug id (Add To Orbit CQ Number).
 
 
For more information about the IP Log file, a template and instructions can be found on our [[Orbit IP Log]] wiki page.
 
  
 
===Final Notes===
 
===Final Notes===

Revision as of 15:19, 13 February 2023

Here are the steps for adding a new bundle to Orbit. Please use them as a checklist to ensure that you have done everything correctly when you have a new bundle to add.

IP Provenance

All contributions to Orbit need to be approved for use, either automatically or by raising an iplab issue for the content if the automatic check does not work. The automatic check is done by activating the "license-check" profile, e.g. mvn verify -P license-check. If the automatic check fails you may need to raise an iplab issue (choose vet-third-party in Description dropdown to get correct template). Send and email to orbit-dev for advice.

Add the Bundle to Git

In Orbit we store the metadata necessary to generate a bundle in the orbit-recipes Git repository. Look at our Adding Bundles to Orbit document for instructions on how to initially put your bundle into Orbit.

Verify the osgi.bnd

The osgi.bnd file is used to generate the bundle manifest (META-INF/MANIFEST.MF), and while this file gets generated with some defaults, it is very important to verify it as well as the contents of the generated manifest to ensure the final result is what one expects. In particular the Import-Package header patterns should be verified.

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 releng/aggregationfeature/feature.xml in orbit-recipes with an entry for your new bundle. (you don't need one for the source bundle) Changes to the Orbit feature are done in the master branch on Git.

<plugin id="javax.servlet" version="2.3.0.qualifier" />


Final Notes

  • When in doubt, look at the other bundles in Orbit to see what they did.
  • Always check the build output to ensure that it is what you expect.

Example Layout

Here is an example structure for a bundle.

my.bundle.id_1.0.0/
    pom.xml
    src/
        eclipse/ip_log.xml
        main/resources/
            about_files/LICENSE.txt
            about.html
    .project
    osgi.bnd

Back to the top