From 6943ead4c644958245974304306fec8918e7a995 Mon Sep 17 00:00:00 2001 From: Markus Heinemann Date: Thu, 15 Oct 2020 13:04:12 +0000 Subject: [PATCH 1/3] feat: add base url config property to github scaffholders --- app-config.yaml | 1 + packages/backend/src/plugins/scaffolder.ts | 6 +++++- .../default-app/packages/backend/src/plugins/scaffolder.ts | 3 ++- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/app-config.yaml b/app-config.yaml index 8ec43c6007..b527069c15 100644 --- a/app-config.yaml +++ b/app-config.yaml @@ -147,6 +147,7 @@ catalog: scaffolder: github: + baseUrl: https://github.com token: $env: GITHUB_TOKEN visibility: public # or 'internal' or 'private' diff --git a/packages/backend/src/plugins/scaffolder.ts b/packages/backend/src/plugins/scaffolder.ts index 90667bfb16..7ba90ed8b5 100644 --- a/packages/backend/src/plugins/scaffolder.ts +++ b/packages/backend/src/plugins/scaffolder.ts @@ -68,7 +68,11 @@ export default async function createPlugin({ ) as RepoVisibilityOptions; const githubToken = githubConfig.getString('token'); - const githubClient = new Octokit({ auth: githubToken }); + const githubBaseUrl = githubConfig.getString('baseUrl'); + const githubClient = new Octokit({ + auth: githubToken, + baseUrl: githubBaseUrl, + }); const githubPublisher = new GithubPublisher({ client: githubClient, token: githubToken, diff --git a/packages/create-app/templates/default-app/packages/backend/src/plugins/scaffolder.ts b/packages/create-app/templates/default-app/packages/backend/src/plugins/scaffolder.ts index ed16d766f1..9f59412036 100644 --- a/packages/create-app/templates/default-app/packages/backend/src/plugins/scaffolder.ts +++ b/packages/create-app/templates/default-app/packages/backend/src/plugins/scaffolder.ts @@ -48,7 +48,8 @@ export default async function createPlugin({ ) as RepoVisibilityOptions; const githubToken = githubConfig.getString('token'); - const githubClient = new Octokit({ auth: githubToken }); + const githubBaseUrl = githubConfig.getString('baseUrl'); + const githubClient = new Octokit({ auth: githubToken, baseUrl: githubBaseUrl }); const githubPublisher = new GithubPublisher({ client: githubClient, token: githubToken, From 1c8c437562e7945b6fe887e4e3a9f35301d30389 Mon Sep 17 00:00:00 2001 From: Markus Heinemann Date: Thu, 15 Oct 2020 13:18:14 +0000 Subject: [PATCH 2/3] Add changeset --- .changeset/selfish-bats-perform.md | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 .changeset/selfish-bats-perform.md diff --git a/.changeset/selfish-bats-perform.md b/.changeset/selfish-bats-perform.md new file mode 100644 index 0000000000..e4d05c088c --- /dev/null +++ b/.changeset/selfish-bats-perform.md @@ -0,0 +1,6 @@ +--- +'@backstage/plugin-scaffolder': patch +'@backstage/plugin-scaffolder-backend': patch +--- + +The new `scaffolder.github.baseUrl` config property allows to specify a custom base url for GitHub enterprise instances From 5c46f0d337cfb937dc4e47286a427cc88b96ffcd Mon Sep 17 00:00:00 2001 From: Markus Heinemann Date: Thu, 15 Oct 2020 20:35:43 +0000 Subject: [PATCH 3/3] Rename config property for custom github scaffolder host --- app-config.yaml | 2 +- packages/backend/src/plugins/scaffolder.ts | 5 +++-- .../default-app/packages/backend/src/plugins/scaffolder.ts | 4 ++-- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/app-config.yaml b/app-config.yaml index b527069c15..768e60a346 100644 --- a/app-config.yaml +++ b/app-config.yaml @@ -147,7 +147,7 @@ catalog: scaffolder: github: - baseUrl: https://github.com + host: https://github.com token: $env: GITHUB_TOKEN visibility: public # or 'internal' or 'private' diff --git a/packages/backend/src/plugins/scaffolder.ts b/packages/backend/src/plugins/scaffolder.ts index 7ba90ed8b5..24bd4e942f 100644 --- a/packages/backend/src/plugins/scaffolder.ts +++ b/packages/backend/src/plugins/scaffolder.ts @@ -68,10 +68,11 @@ export default async function createPlugin({ ) as RepoVisibilityOptions; const githubToken = githubConfig.getString('token'); - const githubBaseUrl = githubConfig.getString('baseUrl'); + const githubHost = + githubConfig.getOptionalString('host') ?? 'https://github.com'; const githubClient = new Octokit({ auth: githubToken, - baseUrl: githubBaseUrl, + baseUrl: githubHost, }); const githubPublisher = new GithubPublisher({ client: githubClient, diff --git a/packages/create-app/templates/default-app/packages/backend/src/plugins/scaffolder.ts b/packages/create-app/templates/default-app/packages/backend/src/plugins/scaffolder.ts index 9f59412036..240309fbd1 100644 --- a/packages/create-app/templates/default-app/packages/backend/src/plugins/scaffolder.ts +++ b/packages/create-app/templates/default-app/packages/backend/src/plugins/scaffolder.ts @@ -48,8 +48,8 @@ export default async function createPlugin({ ) as RepoVisibilityOptions; const githubToken = githubConfig.getString('token'); - const githubBaseUrl = githubConfig.getString('baseUrl'); - const githubClient = new Octokit({ auth: githubToken, baseUrl: githubBaseUrl }); + const githubHost = githubConfig.getOptionalString('host'); + const githubClient = new Octokit({ auth: githubToken, baseUrl: githubHost }); const githubPublisher = new GithubPublisher({ client: githubClient, token: githubToken,