Documentation/4.8/Developers/Build system/SlicerBot/SVN2GitHub
From Slicer Wiki
Home < Documentation < 4.8 < 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 withgithub-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.
Slicer-SVN2GitHub.sh
andSlicer-SVN2GitHub-slicerbot.sh
scripts are available on https://gist.github.com/jcfr/da442a017484b7691018
ChangeLogs
- 2017/03/09: Added contact information
- 2015/10/19: Updated script adding --force option to address issue reported on Slicer/Slicer/pull/375#issuecomment-148759758
- 2015/10/19: Created this page and added scripts on https://gist.github.com/jcfr/da442a017484b7691018