A logger with context about the event.
An authenticated Octokit instance that can be used to make GitHub API requests in the context of the webhook event.
Returns a boolean if the actor on the event was a bot.
Reads the app configuration from the given YAML file in the .github
directory of the repository.
For example, given a file named .github/config.yml:
close: true
comment: Check the specs on the rotary girder.
Your app can read that file from the target repository:
// Load config from .github/config.yml in the repository
const config = await context.config('config.yml')
if (config.close) {
context.octokit.rest.issues.comment(context.issue({body: config.comment}))
context.octokit.rest.issues.edit(context.issue({state: 'closed'}))
}
You can also use a defaultConfig object:
// Load config from .github/config.yml in the repository and combine with default config
const config = await context.config('config.yml', {comment: 'Make sure to check all the specs.'})
if (config.close) {
context.octokit.rest.issues.comment(context.issue({body: config.comment}));
context.octokit.rest.issues.edit(context.issue({state: 'closed'}))
}
Config files can also specify a base that they extend. deepMergeOptions can be used
to configure how the target config, extended base, and default configs are merged.
For security reasons, configuration is only loaded from the repository's default branch, changes made in pull requests from different branches or forks are ignored.
If you need more lower-level control over reading and merging configuration files,
you can context.octokit.config.get(options), see https://github.com/probot/octokit-plugin-config.
Configuration object read from the file
Return the owner, repo, and issue_number params for making API requests
against an issue. The object passed in will be merged with the repo params.
const params = context.issue({body: 'Hello World!'})
// Returns: {owner: 'username', repo: 'reponame', issue_number: 123, body: 'Hello World!'}
Optionalobject: TParams to be merged with the issue params.
Return the owner, repo, and pull_number params for making API requests
against a pull request. The object passed in will be merged with the repo params.
const params = context.pullRequest({body: 'Hello World!'})
// Returns: {owner: 'username', repo: 'reponame', pull_number: 123, body: 'Hello World!'}
Optionalobject: TParams to be merged with the pull request params.
Return the owner and repo params for making API requests against a
repository.
const params = context.repo({path: '.github/config.yml'})
// Returns: {owner: 'username', repo: 'reponame', path: '.github/config.yml'}
Optionalobject: TParams to be merged with the repo params.
The context of the event that was triggered, including the payload and helpers for extracting information can be passed to GitHub API calls.