Difference between revisions of "Documentation/Nightly/Developers/Build ExtensionsIndex"

From Slicer Wiki
Jump to: navigation, search
m (Created page with '== Overview == Locally building an extension index provides a convenient way to: * check [[Documentation/{{documentation/version}}/Developers/Extensions/DescriptionFile|extensi…')
 
m
Line 1: Line 1:
 +
__TOC__
 +
 
== Overview ==
 
== Overview ==
 +
 +
This page explain how to build an ExtensionsIndex.
 +
 +
Think of the ExtensionsIndex as a repository containing a list of [[Documentation/{{documentation/version}}/Developers/Extensions/DescriptionFile|extension description files]] (*.s4ext) used by the Slicer extensions build system to build, test, package and upload extensions on an extensions server.
 +
 +
Once uploaded on an extensions server, within Slicer, extensions can be installed using the [[Documentation/{{documentation/version}}/SlicerApplication/ExtensionsManager|extensions manager]].
 +
 +
There are two possible approaches to build it:
 +
* [[#Manual_build|Manual build]]
 +
* [[#Dashboard_driven_build|Dashboard driven build]]
 +
 +
== Manual build ==
  
 
Locally building an extension index provides a convenient way to:
 
Locally building an extension index provides a convenient way to:
Line 5: Line 19:
 
* check [[Documentation/{{documentation/version}}/Developers/Extensions/DescriptionFile|extension description files]] are valid
 
* check [[Documentation/{{documentation/version}}/Developers/Extensions/DescriptionFile|extension description files]] are valid
 
* upload one or more extensions at ones to check that Slicer can [[Documentation/{{documentation/version}}/SlicerApplication/ExtensionsManager|download and install]] them
 
* upload one or more extensions at ones to check that Slicer can [[Documentation/{{documentation/version}}/SlicerApplication/ExtensionsManager|download and install]] them
 +
  
 
Given a directory containing one or more extension description files, it is possible to manually  
 
Given a directory containing one or more extension description files, it is possible to manually  
Line 33: Line 48:
 
   <tr>
 
   <tr>
 
     <td><code>MIDAS_PACKAGE_URL</code></td>
 
     <td><code>MIDAS_PACKAGE_URL</code></td>
     <td>MIDAS extensions server URL specifying where the extension should be uploaded. For example http://slicer.kitware.com/midas3</td>
+
     <td>MIDAS extensions server URL speciManualfying where the extension should be uploaded. For example http://slicer.kitware.com/midas3</td>
 
   </tr>
 
   </tr>
 
   <tr>
 
   <tr>
Line 45: Line 60:
 
</table>
 
</table>
  
TBD
+
 
 +
== Dashboard driven build ==

Revision as of 17:08, 13 June 2013

Home < Documentation < Nightly < Developers < Build ExtensionsIndex

Overview

This page explain how to build an ExtensionsIndex.

Think of the ExtensionsIndex as a repository containing a list of extension description files (*.s4ext) used by the Slicer extensions build system to build, test, package and upload extensions on an extensions server.

Once uploaded on an extensions server, within Slicer, extensions can be installed using the extensions manager.

There are two possible approaches to build it:

Manual build

Locally building an extension index provides a convenient way to:


Given a directory containing one or more extension description files, it is possible to manually configure and build the associated extensions specifying the following CMake options:

Slicer_DIR Path to Slicer build tree
Slicer_EXTENSION_DESCRIPTION_DIR Path to folder containing extension description files

Optionally, it is also possible to specify:

CMAKE_BUILD_TYPE On unix-like platform, should match the build type of the associated Slicer build directory
Slicer_UPLOAD_EXTENSIONS By default set to OFF.
If enabled, extension builds will be submitted to Slicer dashboard and associated packages will be uploaded to extensions server
MIDAS_PACKAGE_URL MIDAS extensions server URL speciManualfying where the extension should be uploaded. For example http://slicer.kitware.com/midas3
MIDAS_PACKAGE_EMAIL Email allowing to authenticate to the extensions server.
MIDAS_PACKAGE_API_KEY Token allowing to authenticate to the extensions server.


Dashboard driven build