Difference between revisions of "Documentation/Nightly/Developers/Build system/SlicerBot"

From Slicer Wiki
Jump to: navigation, search
Line 46: Line 46:
 
These bots can upload packages on http://slicer.kitware.com/midas3
 
These bots can upload packages on http://slicer.kitware.com/midas3
  
Bots able to upload official packages are:
+
=== Applications ===
 +
 
 +
The group with "write" permission on the [http://slicer.kitware.com/midas3/folder/249 NA-MIC/Public/Slicer/Packages/Applications/] folder is <code>Slicer App Packages Uploader</code>
 +
 
 +
Bots currently associated with this group are:
  
 
* [http://slicer.kitware.com/midas3/user/44 Slicerbot Kitware]
 
* [http://slicer.kitware.com/midas3/user/44 Slicerbot Kitware]
 
* [http://slicer.kitware.com/midas3/user/465 Slicerbot Perklab]
 
* [http://slicer.kitware.com/midas3/user/465 Slicerbot Perklab]
 +
 +
Organization of packages listed on https://download.slicer.org is specified on https://github.com/mhalle/slicer4-download
 +
 +
=== Extensions ===
 +
 +
Extensions are organized in three different folders:
 +
* [http://slicer.kitware.com/midas3/folder/254 NA-MIC/Public/Slicer/Packages/Extensions/Nightly]
 +
* [http://slicer.kitware.com/midas3/folder/1568 NA-MIC/Public/Slicer/Packages/Extensions/Continuous]
 +
* [http://slicer.kitware.com/midas3/folder/253 NA-MIC/Public/Slicer/Packages/Extensions/Experimental]
 +
 +
Currently, any user associated with the <code>Experimental Uploader</code> group as "write" permission to these folders.
 +
 +
In additional to users who [[Documentation/{{documentation/version}}/Developers/Tutorials/BuildTestPackageDistributeExtensions#Step-by-step:_How_to_create.2C_publish_and_distribute_an_extension_.3F|requested]] to be added to the <code>Experimental Uploaded</code> group, the following bots are included:
 +
 +
* [http://slicer.kitware.com/midas3/user/44 Slicerbot Kitware]
 +
* [http://slicer.kitware.com/midas3/user/465 Slicerbot Perklab]
 +
 +
Note: The concept of channels is being discussed (See [http://www.na-mic.org/Bug/view.php?id=2334 #2334]). By default, only extension associated with the "official" would be listed in the extensions manager. User will have the option to select other channels.
  
 
= SlicerBots =
 
= SlicerBots =

Revision as of 20:47, 7 June 2016

Home < Documentation < Nightly < Developers < Build system < SlicerBot

Overview

Each time a task associated to the wiki, repository or bug tracker is automated by the execution of a script on a machine, the machine user running such script will be identified as SlicerBot.

Type of SlicerBot

Wiki

This SlicerBot user publishes update on the Slicer wiki. The associated wiki account is UpdateBot

Git

This SlicerBot user can commit changes to a defined subset of Slicer repositories. The associated github account is slicerbot and it can commit changes to all repositories associated with the slicerbot-team in Slicer github organization.

As documented on managing deploy keys Github guide, there are multiple approaches to grant a machine access to a repository. We chose the machine user one.

In a nutshell, the steps to configure a git machine user are:

  • Generate SSK keys without pass-phrase:
ssh-keygen -t rsa -C "slicerbot@slicer.org"
  • Add the generated id_rsa.pub key to the list of SSH keys associated with slicerbot user. Each key *SHOULD* be named slicerbot-<hostname>. For example slicerbot-factory-south-ubuntu
  • Setup git username and email:
git config --global user.name "Slicer Bot"
git config --global user.email "slicerbot@slicer.org"

SVN2GitHub synchronization

HtmlDoc

Every night Slicer-cpp.tar.gz and SlicerWizard.tar.gz are generated on factory-south-ubuntu and pushed on Kitware public web server:

Then, few times during the day these archives are pulled from http://public.kitware.com/ by love.bwh.harvard.edu to ensure the content served by these URLs is updated:

Packages

These bots can upload packages on http://slicer.kitware.com/midas3

Applications

The group with "write" permission on the NA-MIC/Public/Slicer/Packages/Applications/ folder is Slicer App Packages Uploader

Bots currently associated with this group are:

Organization of packages listed on https://download.slicer.org is specified on https://github.com/mhalle/slicer4-download

Extensions

Extensions are organized in three different folders:

Currently, any user associated with the Experimental Uploader group as "write" permission to these folders.

In additional to users who requested to be added to the Experimental Uploaded group, the following bots are included:

Note: The concept of channels is being discussed (See #2334). By default, only extension associated with the "official" would be listed in the extensions manager. User will have the option to select other channels.

SlicerBots

As of 2014-12-23, the machines with SlicerBot accounts are:

  • factory
  • factory-south-ubuntu
  • factory-south-win7