summaryrefslogtreecommitdiffstats
path: root/pkg/runner/testdata/actions/node16/node_modules/@actions/github/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'pkg/runner/testdata/actions/node16/node_modules/@actions/github/README.md')
-rw-r--r--pkg/runner/testdata/actions/node16/node_modules/@actions/github/README.md97
1 files changed, 97 insertions, 0 deletions
diff --git a/pkg/runner/testdata/actions/node16/node_modules/@actions/github/README.md b/pkg/runner/testdata/actions/node16/node_modules/@actions/github/README.md
new file mode 100644
index 0000000..02e9be0
--- /dev/null
+++ b/pkg/runner/testdata/actions/node16/node_modules/@actions/github/README.md
@@ -0,0 +1,97 @@
+# `@actions/github`
+
+> A hydrated Octokit client.
+
+## Usage
+
+Returns an authenticated Octokit client that follows the machine [proxy settings](https://help.github.com/en/actions/hosting-your-own-runners/using-a-proxy-server-with-self-hosted-runners) and correctly sets GHES base urls. See https://octokit.github.io/rest.js for the API.
+
+```js
+const github = require('@actions/github');
+const core = require('@actions/core');
+
+async function run() {
+ // This should be a token with access to your repository scoped in as a secret.
+ // The YML workflow will need to set myToken with the GitHub Secret Token
+ // myToken: ${{ secrets.GITHUB_TOKEN }}
+ // https://help.github.com/en/actions/automating-your-workflow-with-github-actions/authenticating-with-the-github_token#about-the-github_token-secret
+ const myToken = core.getInput('myToken');
+
+ const octokit = github.getOctokit(myToken)
+
+ // You can also pass in additional options as a second parameter to getOctokit
+ // const octokit = github.getOctokit(myToken, {userAgent: "MyActionVersion1"});
+
+ const { data: pullRequest } = await octokit.pulls.get({
+ owner: 'octokit',
+ repo: 'rest.js',
+ pull_number: 123,
+ mediaType: {
+ format: 'diff'
+ }
+ });
+
+ console.log(pullRequest);
+}
+
+run();
+```
+
+You can also make GraphQL requests. See https://github.com/octokit/graphql.js for the API.
+
+```js
+const result = await octokit.graphql(query, variables);
+```
+
+Finally, you can get the context of the current action:
+
+```js
+const github = require('@actions/github');
+
+const context = github.context;
+
+const newIssue = await octokit.issues.create({
+ ...context.repo,
+ title: 'New issue!',
+ body: 'Hello Universe!'
+});
+```
+
+## Webhook payload typescript definitions
+
+The npm module `@octokit/webhooks` provides type definitions for the response payloads. You can cast the payload to these types for better type information.
+
+First, install the npm module `npm install @octokit/webhooks`
+
+Then, assert the type based on the eventName
+```ts
+import * as core from '@actions/core'
+import * as github from '@actions/github'
+import * as Webhooks from '@octokit/webhooks'
+if (github.context.eventName === 'push') {
+ const pushPayload = github.context.payload as Webhooks.WebhookPayloadPush
+ core.info(`The head commit is: ${pushPayload.head}`)
+}
+```
+
+## Extending the Octokit instance
+`@octokit/core` now supports the [plugin architecture](https://github.com/octokit/core.js#plugins). You can extend the GitHub instance using plugins.
+
+For example, using the `@octokit/plugin-enterprise-server` you can now access enterprise admin apis on GHES instances.
+
+```ts
+import { GitHub, getOctokitOptions } from '@actions/github/lib/utils'
+import { enterpriseServer220Admin } from '@octokit/plugin-enterprise-server'
+
+const octokit = GitHub.plugin(enterpriseServer220Admin)
+// or override some of the default values as well
+// const octokit = GitHub.plugin(enterpriseServer220Admin).defaults({userAgent: "MyNewUserAgent"})
+
+const myToken = core.getInput('myToken');
+const myOctokit = new octokit(getOctokitOptions(token))
+// Create a new user
+myOctokit.enterpriseAdmin.createUser({
+ login: "testuser",
+ email: "testuser@test.com",
+});
+```