Documentation/Labs/CI-and-NightlyPackagesGeneration

From Slicer Wiki
Revision as of 15:40, 26 April 2016 by JChris.FillionR (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Home < Documentation < Labs < CI-and-NightlyPackagesGeneration

Overview

As of April 26th 2016, the build machines known as the Slicer factories have two roles:

  • Continuous integration for Slicer
  • Nightly packages generation and testing for Slicer application and associated extensions

There are currently two factories (factory.kitware and factory-south.kitware) in charge of both Nightly testing and Nightly generation of packages.

Current scripts to build extensions:


Limitations of the current infrastructure

  • Some extensions are consistently not built
  • No access to the factory internals
  • No well described procedure on how factory machine with packaging can be set up
  • Andriy: Not possible to choose the factory in the extension manager.
    • Jc: It is already possible to set the extension server in the settings
  • Jorge: Community want to help, but nobody know how to

Possible improvements

  • Temporary: Is there a way to run a manual build process ?
  • Sharing the workload for maintaining and troubleshooting the factory process
  • Cloud based solutions (e.g. AWS)
    • Costs ?
    • Preliminary tests ?


AWS cost

Instance types: https://aws.amazon.com/ec2/instance-types/ Instances prices: https://aws.amazon.com/ec2/purchasing-options/dedicated-instances/

G2.2xlarge (linux): $3825 / yr G2.2xlarge (windows): $4934 / yr

Data Transfer

  • Internet -> EC2: $0
  • EC2 -> Internet: $55 / yr / instance

Details: https://docs.google.com/spreadsheets/d/1tTndErxk_71ZjbT85Kwo5hkd9Yf10qm7ToaM087vKg4/edit?usp=sharing