bitshifter is a simple webserver that listens for bitbucket repository push webhooks and then if there is a clone of that repo locally, it pulls in the new changes and then pushes them to a new repository.
This is done via the incoming
and outgoing
paths in the local hg repo.
Right now it is expected that the incoming
path points to bitbucket and the
outgoing path goes where ever you want. However, to be able to push,
bitshifter must have permission to do so. This can be via ssh key, but if
the key has a password it must be unlocked and added to an ssh agent that
bitshifter can access.
bitshifter listens on 0.0.0.0:11101
by default. To add bitshifter as a
webhook on bitbucket, you must specify the url as
http://ipaddress:11101/hooked
.
Repositories are expected to be in located in the repos/
directory and
they should be the same path as they are on bitbucket. For example, this
repository is rw_grim/bitshifter
on bitbucket, so it's path relative to this
file is repos/rw_grim/bitshifter
. Once the repo is cloned into that
directory, you need to make sure that it has both an incoming
and outgoing
path. Once that's done, you should be good to go.