Skip to content

Commit

Permalink
feat(plugins/core): support GHES (#1188)
Browse files Browse the repository at this point in the history
  • Loading branch information
lowlighter authored Aug 14, 2022
1 parent ab85858 commit 2379a9f
Show file tree
Hide file tree
Showing 4 changed files with 33 additions and 3 deletions.
8 changes: 6 additions & 2 deletions source/app/action/index.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -146,6 +146,8 @@ function quit(reason) {
"quota.required.search": _quota_required_search,
"notice.release": _notice_releases,
"clean.workflows": _clean_workflows,
"github.api.rest": _github_api_rest,
"github.api.graphql": _github_api_graphql,
...config
} = metadata.plugins.core.inputs.action({core, preset})
const q = {...query, ...(_repo ? {repo: _repo} : null), template}
Expand Down Expand Up @@ -175,12 +177,14 @@ function quit(reason) {
conf.settings.token = token
const api = {}
const resources = {}
api.graphql = octokit.graphql.defaults({headers: {authorization: `token ${token}`}})
api.graphql = octokit.graphql.defaults({headers: {authorization: `token ${token}`}, baseUrl: _github_api_graphql || undefined})
info("GitHub GraphQL API", "ok")
const octoraw = github.getOctokit(token)
info("GitHub GraphQL API endpoint", api.graphql.baseUrl)
const octoraw = github.getOctokit(token, {baseUrl: _github_api_rest || undefined})
api.rest = octoraw.rest
api.rest.request = octoraw.request
info("GitHub REST API", "ok")
info("GitHub REST API endpoint", api.rest.baseUrl)
//Apply mocking if needed
if (mocked) {
Object.assign(api, await mocks(api))
Expand Down
2 changes: 1 addition & 1 deletion source/app/web/instance.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ export default async function({sandbox = false} = {}) {
console.debug(util.inspect(conf.settings, {depth: Infinity, maxStringLength: 256}))

//Load octokits
const api = {graphql: octokit.graphql.defaults({headers: {authorization: `token ${token}`}}), rest: new OctokitRest.Octokit({auth: token})}
const api = {graphql: octokit.graphql.defaults({headers: {authorization: `token ${token}`}, baseUrl:conf.settings.api?.graphql ?? undefined}), rest: new OctokitRest.Octokit({auth: token, baseUrl: conf.settings.api?.rest ?? undefined})}
//Apply mocking if needed
if (mock)
Object.assign(api, await mocks(api))
Expand Down
4 changes: 4 additions & 0 deletions source/app/web/settings.example.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

22 changes: 22 additions & 0 deletions source/plugins/core/metadata.yml
Original file line number Diff line number Diff line change
Expand Up @@ -201,6 +201,28 @@ inputs:
extras:
- metrics.run.puppeteer.user.js

github_api_rest:
description: |
GitHub REST API endpoint
Can be used to support [GitHub enterprises server](https://github.com/enterprise).
Leave empty to use default endpoint.
type: string
default: ""
example: https://api.github.com
global: yes

github_api_graphql:
description: |
GitHub GraphQL API endpoint
Can be used to support [GitHub enterprises server](https://github.com/enterprise).
Leave empty to use default endpoint.
type: string
default: ""
example: https://api.github.com/graphql
global: yes

config_timezone:
description: |
Timezone for dates
Expand Down

0 comments on commit 2379a9f

Please sign in to comment.