All Projects → chrisledet → rebasebot

chrisledet / rebasebot

Licence: MIT license
A GitHub bot that rebases your branches

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to rebasebot

gitbot
The most popular Discord dev toolkit with 400k+ users 🚀✨
Stars: ✭ 59 (+37.21%)
Mutual labels:  github-bot
rocketchat-uptimerobot
Uptime Robot integration for Rocket.Chat
Stars: ✭ 34 (-20.93%)
Mutual labels:  webhook
wikibot
A 🤖 which provides features from Wikipedia like summary, title searches, location API etc.
Stars: ✭ 25 (-41.86%)
Mutual labels:  webhook
chathooks
Service to convert webhook messages to your favorite chat / team messaging format. Run transparently as a formatting webhook proxy.
Stars: ✭ 39 (-9.3%)
Mutual labels:  webhook
MailHookBundle
A bundle to catch API webhook from different mail service
Stars: ✭ 36 (-16.28%)
Mutual labels:  webhook
discord
GitHub webhook that analyzes pull requests and adds comments about incompatible CSS
Stars: ✭ 29 (-32.56%)
Mutual labels:  webhook
ServiceStack.Webhooks
Add Webhooks to your ServiceStack services
Stars: ✭ 26 (-39.53%)
Mutual labels:  webhook
AwesomeCompiler
The Big list of the github, open-source compilers.
Stars: ✭ 27 (-37.21%)
Mutual labels:  github-bot
MsftTeams
Module for Posting messages to MSTeams via Webhook
Stars: ✭ 35 (-18.6%)
Mutual labels:  webhook
gitdub
📤 A github WebHook that emails detailed diffs of your commits.
Stars: ✭ 25 (-41.86%)
Mutual labels:  webhook
Self-Hosted-Asp.Net-WebHooks
Self hosted custom webhook receiver and sender
Stars: ✭ 50 (+16.28%)
Mutual labels:  webhook
YappyGitLab
A GitLab monitor bot for Discord
Stars: ✭ 51 (+18.6%)
Mutual labels:  webhook
PSDiscord
Simple PowerShell module allowing to send messages to Discord Channel over webhooks
Stars: ✭ 34 (-20.93%)
Mutual labels:  webhook
wp-trigger-netlify-build
A WordPress plugin to automatically rebuild a Netlify site when content is updated.
Stars: ✭ 80 (+86.05%)
Mutual labels:  webhook
snitch
Keep updated about all deploys on Tsuru
Stars: ✭ 16 (-62.79%)
Mutual labels:  webhook
term-check
A GitHub app which runs checks for flagged terminology in GitHub repos
Stars: ✭ 19 (-55.81%)
Mutual labels:  github-bot
GitInfo-Git-for-Google-Assistant
GitInfo is a conversational data retrieval bot for Github repositories. It provides a conversational experience to access information. Information that can be retrieved using GitInfo include: stars, latest commit details , no of forks , no of issues etc.
Stars: ✭ 18 (-58.14%)
Mutual labels:  github-bot
labhub
GitHub bot for using GitLab CI in OSS projects
Stars: ✭ 31 (-27.91%)
Mutual labels:  github-bot
github-release-notifier
Automatize tasks when a specific package got a new release - Github Release Notifier
Stars: ✭ 21 (-51.16%)
Mutual labels:  webhook
tailor
GitHub bot that validates patches before they can be merged
Stars: ✭ 18 (-58.14%)
Mutual labels:  github-bot

rebasebot Circle CI

A GitHub bot that rebases your pull request branches when you ask

How it works

  1. Make a dedicated GitHub account for the bot
  2. Grant the GitHub account read and write access to your repositories
  3. Setup the bot on your own server
  4. Type a comment "@{github bot username} rebase" in a pull request
  5. The bot will then kick off a rebase and push (if rebase successful) to your repository
  6. You can then delete the comment (in step 4) if you want to, including the rebase comment from the bot.

Dependencies

  • Dedicated host (e.g. EC2, Digital Ocean, Rackspace)
  • Go 1.5
  • Git
  • Dedicated GitHub account

Setup

Download

$ go get github.com/chrisledet/rebasebot

Build

$ cd $GOPATH/src/github.com/chrisledet/rebasebot
$ go build

Install

Make sure $GOPATH/bin is located in your $PATH

$ go install

Configuration

Here are the environment variables rebasebot uses:

  • GITHUB_USERNAME: GitHub username for bot. Required.
  • GITHUB_PASSWORD: GitHub password for bot. Required.
  • PORT: HTTP server port for the bot. Required.
  • TMPDIR: A path to a writable directory. All local copies will live here. Defaults to OS tmp. Strongly recommended.
  • SECRET: A token used to verify web hook requests from GitHub. Strongly recommended.

The GITHUB_* are needed so the bot can post activity updates to GitHub as well as push to accessible Git repositories. Using your personal credentials is not recommended.

Run

$ $GOPATH/bin/rebasebot

Add GitHub Webhook

This is a required step to complete the setup.

  1. Go into your GitHub repository's Webhooks and services page
  2. Add webhook
  3. Enter http://<your host>/rebase in the "Payload URL" field
  4. Content type should be set to "application/json"
  5. Generate a secret token and enter it in "Secret" field
  6. Only send "Issue comment" events. All other ones will be ignored.
  7. GitHub should succesfully ping the service and receive a HTTP 200 OK

Resources

  • GitHub guide for securing your webhooks

  • Generate secret token with Ruby

    $ ruby -rsecurerandom -e 'puts SecureRandom.hex(20)'
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].