Documentation/Nightly/Developers/Build system/SlicerBot
Contents
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 namedslicerbot-<hostname>
. For exampleslicerbot-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
- See SVN2GitHub
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:
SlicerBots
As of 2014-12-23, the machines with SlicerBot accounts are:
- factory
- factory-south-ubuntu
- factory-south-win7