A provider for strider that integrates with GitHub to provide easy setup of your projects. It registers webhooks and sets up ssh keys (if you so choose).
Note: Supports using '[skip ci]' in your commit message to skip commits triggering a job.
If you are running on localhost:3000 the default settings should work just fine.
SERVER_NAME The url of your strider server. Defaults to http://localhost:3000.
The following variables only need to be overridden if you are using github enterprise. See 'Enterprise Setup' below.
PLUGIN_GITHUB_APP_ID Defaults to client ID of Strider-CD Github App
PLUGIN_GITHUB_APP_SECRET Defaults to client secret of Strider-CD Github App
PLUGIN_GITHUB_API_DOMAIN Defaults to https://github.com
PLUGIN_GITHUB_API_ENDPOINT Defaults to https://api.github.com
-
You'll need to create an Application on your GitHub Enterprise Server. Log in to GitHub Enterprise and navigate to
https://your-github-url.com/settings/applications/newand set authentication URL tohttps://your-strider-server:port/auth/github/callback. -
Define the environment variables. Here is an example:
export SERVER_NAME="http://111.11.11.111:3000" export PLUGIN_GITHUB_APP_ID="a342d32c23c23" export PLUGIN_GITHUB_APP_SECRET="5af64a67af586847afbc6796769769d97a961" export PLUGIN_GITHUB_API_DOMAIN="https://github.my-organization.com" export PLUGIN_GITHUB_API_ENDPOINT="https://github.my-organization.com/api/v3"
NOTE
SERVER_NAMEmust be the same exact host that you used for the 'Authentication URL' in step 1. For example, if you usedhttp://111.11.11.111:3000/auth/guthub/callbackin step 1, yourSERVER_NAMEmust behttp://111.11.11.111:3000. Also note that the protocol must be the same between the two (if you usedhttp://in step 1, you must usehttp://inSERVER_NAMEand nothttps://). -
Reboot strider and navigate link a github account as normal, you should see your enterprise repos!
- If you get 'Error: Could not fetch user profile': Somehow, passport will fail to retrieve the user profile unless all
of the following are set. On GitHub Enterprise, log in to the profile you are trying to link to, and navigate to
/settings/profile. Make sure the following are defined and set properly.- Public Email
- Homepage URL
- Make sure your github profile has a public email set
- Go to https://github.com/settings/profile and select an email under "Public email".
- Make sure you have admin rights on the projects before adding them, since strider will need to create webhooks for the integration to work.
Due to the fact that Github posts to the Strider app when there is an event (commit, PR, etc) it is very difficult to test all of the functionality when developing/fixing bugs locally. An alternative is to use something like localtunnel.
$ npm install -g localtunnel
$ lt --port <strider-port>