One of the challenges of hosting projects on GitHub and their ticket trackers elsewhere is linking items like GitHub Pull Requests with tickets. I’ve written a very simple API-driven prototype tool called GhostRed to do some simple integration. GhostRed scans GitHub pull requests, creates Redmine tickets in an appropriate project for them and then closes the request with a comment that includes a link to the ticket created. You can install GhostRed with:
$ gem install ghostred
And you can use it pretty simply like so:
$ ghostred --rm_token=token --rm_site=http://projects.puppetlabs.com --gh_org=puppetlabs --gh_token=token --gh_user jamtur01
Replace the options with ones appropriate to your environment. GhostRed also tries to match GitHub repository names to Redmine projects but also contains a mapping hash The full help text:
$ ghostred --help Usage: ghostred [options] ... Configuration options: -r, --rm_token TOKEN The API token to use with Redmine -s, --rm_site SITE The Redmine site to connect to -g, --gh_org GITHUB_ORG The GitHub organisation -u, --gh_user GITHUB_USER The GitHub user -t, --gh_token TOKEN The GitHub token Common options: -v, --version Display version -h, --help Display this screen
You can find the code on GitHub and comments, patches and feedback welcomed.