Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
A simple stub (not tested) for a hypothetical github bot
JavaScript
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
bin
example
lib
.gitignore
.travis.yml
LICENSE
README.md
package.json

README.md

A simple stub (not tested) for a hypothetical GitHub bot written in NodeJS.

This bot is bassed in the original work of Kami (https://github.com/Kami/node-buildbot-github)

This bot handle pull_request events (GiHub API v3) and do the following steps.

  • Look for modified files in the pull request.
  • If there are files clone the collaborator repository to local.

    • Checkout the git reference used in the pull_request.
    • Run a cs-fixer
    • If there are files changed

      • Create a commit with the modifications.
      • Open a GitHub's Pull Request to the collaborator with the fixes.
      • Create a comment in the original pull request with a link to the PR opened to the collaborator.
    • Else

      • Create a comment in the original pull request with the CS status for that PR (clean status)

Execute

node bin/csbot-github --config=<custom config file>

Register the bot for pull_request events.

GitHub Username must have enough privileges in <target repository>

curl -u "<GitHub Username>" -H "Content-Type: application/json" -X POST -d '{
 "name": "web",
  "active": true,
  "events": ["pull_request"],
  "config": {
    "url": "<bot IP:PORT>",
    "content_type": "json"
  }
}' https://api.github.com/repos/<target user>/<target repository>/hooks

Get an OAuth 2 token

curl -u "<GitHub Username>" -H "Content-Type: application/json" -X POST -d '{
  "scopes": [
    "public_repo"
  ],
  "note": "cs-bot"
}' https://api.github.com/authorizations
Something went wrong with that request. Please try again.