Github implementation of the scm-base class
Fetching latest commit…
Cannot retrieve the latest commit at this time.


Version Downloads Build Status Open Issues Dependency Status License

This scm plugin extends the scm-base, and provides methods to fetch and update data in github.


npm install screwdriver-scm-github


The class has a variety of knobs to tweak when interacting with GitHub.

Parameter Type Default Description
config Object Configuration Object
config.gheHost String null If using GitHub Enterprise, the host/port of the deployed instance
config.gheProtocol String https If using GitHub Enterprise, the protocol to use
config.username String sd-buildbot GitHub username for checkout String GitHub user email for checkout
config.https Boolean false Is the Screwdriver API running over HTTPS
config.oauthClientId String OAuth Client ID provided by GitHub application
config.oauthClientSecret String OAuth Client Secret provided by GitHub application
config.fusebox Object {} [Circuit Breaker configuration][circuitbreaker]
config.secret String Secret to validate the signature of webhook events
config.privateRepo Boolean false Request 'repo' scope, which allows read/write access for public & private repos
const scm = new GithubScm({
    oauthClientId: 'abcdef',
    oauthClientSecret: 'hijklm',
    secret: 'somesecret'



No parameters are required.

Expected Outcome

A single element array of ScmContext(ex: [''](default), ['']), which will be a unique identifier for the scm.

For more information on the exposed methods please see the scm-base.


npm test


Code licensed under the BSD 3-Clause license. See LICENSE file for terms.