Documentation/Nightly/Developers/Build system/SlicerBot/SVN2GitHub

From Slicer Wiki
Jump to: navigation, search
Home < Documentation < Nightly < Developers < Build system < SlicerBot < SVN2GitHub

This page describes how the Slicer GitHub repository is maintained in sync with the official Slicer SVN repository.

Note that the SlicerRT GitHub repository is maintaining in sync using a similar process.

Overview

A cron job running every minutes on factory-south is doing git svn rebase and then force pushing change onto the Slicer github repository.

Reporting issues

If you observe that the bot is not working as expected, the persons to contact are: <email>jchris.fillionr@kitware.com</email>, <email>alexis.girault@kitware.com</email> and <email>johan.andruejol@kitware.com</email>


Details

  • As detailed here, the slicerbot user is pushing changes.


  • The slicerbot user SSH key is associated with github-slicerbot hostname adding the following entry into /Users/kitware/.ssh/config:
$ cat /Users/kitware/.ssh/config
Host github-slicerbot
  HostName github.com
  User git 
  IdentityFile ~/.ssh/slicerbot-factory-south


  • The associated cronjob entry is reported below:
$ crontab -l
*/1 * * * * /Volumes/Dashboards/SVN2Github/lockrun --quiet --lockfile=/Volumes/Dashboards/SVN2Github/Slicer-SVN2GitHub.lockrun -- /bin/sh /Volumes/Dashboards/SVN2Github/Slicer-SVN2GitHub.sh


  • Lockrun tool is used to ensure no concurrent rebase&push are occurring.


ChangeLogs