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 |
config.email | String | dev-null@screwdriver.cd | 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.readOnly | Object | {} | Config with readOnly info: enabled, username, accessToken, cloneType |
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 |
config.gheCloud | Boolean | false | Flag set to true if using Github Enterprise Cloud |
[config.gheCloudSlug] | String | null | The Github Enterprise Cloud Slug |
[config.gheCloudCookie] | String | null | The Github Enterprise Cloud Cookie name |
[config.gheCloudContext] | String | null | The Github Enterprise Cloud scm context |
config.githubGraphQLUrl | String | https://api.github.com/graphql | GraphQL endpoint for GitHub |
const scm = new GithubScm({
oauthClientId: 'abcdef',
oauthClientSecret: 'hijklm',
secret: 'somesecret'
});
No parameters are required.
A single element array of ScmContext(ex: ['github:github.com']
(default), ['github:github.screwdriver.cd']
), 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.