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 "Draft Build Specification"

Line 15: Line 15:
 
What we need for the Eclipse download page:
 
What we need for the Eclipse download page:
  
* 1)We need automated build scripts for each separate "singleton" Higgins component that execute on build.eclipse.org and create their own separate sections on the download page(s). A singleton is a component of which there is one and only one (shown in the diagram as NOT having a second gray box behind it and slightly offset).
+
* 1)An automated build script for each separate oomponent in the Component Inventory http://wiki.eclipse.org/index.php/Component_Inventory The build script should execute on build.eclipse.org and create its own separate sections on the download page(s).  
  
All components on the Higgins download page should line up with the Core Component Architecture.  See the Component Inventory http://wiki.eclipse.org/index.php/Component_Inventory. Each element in the Component Inventory needs to be automatically built (with javadoc) and automatically tested (on build.eclipse.org) in three variants (daily, stable and release.)
+
Each element in the Component Inventory needs to be automatically built (with javadoc) and automatically tested in three variants (daily, stable and release.) Multiple multiple build targets, where applicable are also specified on the Component Inventory.  Note, for components with multiple instances (E.g. Context Provider plugins, or I-Card Provider  plugins, or Token Provider plugins) there need to be separate build scripts for each one, and a separate place on the downloads page.  
 
+
* 2) Similar to 1) above, for components of which there will be N instances (non-singletons) (E.g. Context Provider plugins, or I-Card Provider  plugins, or Token Provider plugins) there need to be separate build scripts for each one. And a separate place on the downloads page.  
+
 
   
 
   
* 3) Version numbers should line up with milestone currently M0.6).  
+
* 3) Version numbers should match the milestone (currently M0.6).  
  
 
* 4)The .psf files (one for each Higgins component) also need to be made available.
 
* 4)The .psf files (one for each Higgins component) also need to be made available.
  
* 5)To implement this download structure requires defining the folder structure for our downloads. There are two types of folders in the Higgins downloads structure: "leaf" for each "singleton" component and "node" for each non-singleton component (including our main downloads page).
+
* 5)To implement this download structure requires defining the folder structure for the downloads. There are two types of folders in the Higgins downloads structure: "leaf" for each core "singleton" component and "node" for each non-singleton component (including our main downloads page).
  
 
Example folder structures:  
 
Example folder structures:  
Line 35: Line 33:
 
* hbx - hbx downloads folder - leaf
 
* hbx - hbx downloads folder - leaf
  
Note that there are more nodes and leaves (see http://wiki.eclipse.org/index.php/Component_Inventory ). Also in some cases multiple build targets, etc.
+
Each "node" downloads folder (including root downloads
 
+
folder) will contain a similar index.php which will look in the subfolders.
In such case each "node" downloads folder (including root downloads
+
Each "leaf" folder (idas, jena, hbx) will contain build results for that "leaf" component. A separate .php file will be generated by each particular build script.  
folder) will contain similar index.php which will look in subfolders  
+
(for example for some file with specific structure) in order to decide
+
which of them should be included in the links to descendant
+
components. At the same time each "leaf" folder (idas, jena, xx, hbx)  
+
will contain build results for this "leaf" component similar to what
+
we now have for our old higgins stuff (there we will use .php file  
+
generated by each particular build script).  
+
  
  

Revision as of 23:29, 4 October 2006

This is the place to capture the requirements for a automated build process for the Higgins project.


Initiall builds will only be available as Java Eclipse plugins.

In the long term we've publicly committed to also support these three package managers:

  • RPM & Debian (for Suse, Red Hat, Debian, Ubuntu)
  • OSX
  • Windows

The download pages need to make it clear what processors the binaries are for. (Note The Eclipse folks said that they are working on automated build scripts for the Eclipse IDE to target RPM and Debian package managers.)

What we need for the Eclipse download page:

Each element in the Component Inventory needs to be automatically built (with javadoc) and automatically tested in three variants (daily, stable and release.) Multiple multiple build targets, where applicable are also specified on the Component Inventory. Note, for components with multiple instances (E.g. Context Provider plugins, or I-Card Provider plugins, or Token Provider plugins) there need to be separate build scripts for each one, and a separate place on the downloads page.

  • 3) Version numbers should match the milestone (currently M0.6).
  • 4)The .psf files (one for each Higgins component) also need to be made available.
  • 5)To implement this download structure requires defining the folder structure for the downloads. There are two types of folders in the Higgins downloads structure: "leaf" for each core "singleton" component and "node" for each non-singleton component (including our main downloads page).

Example folder structures:

  • downloads - root downloads folder - node
  • idas - idas downloads folder -leaf
  • contextProviders - context providers downloads folder - node
  • jena - downloads folder for jena based provider - leaf
  • xx - downloads folder for xx provider - leaf
  • hbx - hbx downloads folder - leaf

Each "node" downloads folder (including root downloads folder) will contain a similar index.php which will look in the subfolders. Each "leaf" folder (idas, jena, hbx) will contain build results for that "leaf" component. A separate .php file will be generated by each particular build script.


Next action items:

  • Determine the target CPU list (x86, plus others TBD.)
  • Create and review a template for the downloads page with dummy content.
  • Create a build script for org.eclipse.higgins.idas.
  • Create a build script for HBX. HBX needs to be on its own separate download page as there will be many end users who will only need this piece. This page needs to be understandable by someone who is not an Eclipse engineer. There should be a link to this page from the main downloads page.
  • Create a build script for Jena/HSQLDB Provider.
  • Create build scripts for additional components as they are added.

Back to the top