diff --git a/.changeset/loud-owls-beam.md b/.changeset/loud-owls-beam.md index f17b23223b..764bfdf72a 100644 --- a/.changeset/loud-owls-beam.md +++ b/.changeset/loud-owls-beam.md @@ -1,5 +1,5 @@ --- -'@backstage/plugin-scaffolder-backend': minor +'@backstage/plugin-scaffolder-backend': patch --- Added githubApp authentication to the scaffolder-backend plugin diff --git a/plugins/scaffolder-backend/src/scaffolder/stages/publish/github.ts b/plugins/scaffolder-backend/src/scaffolder/stages/publish/github.ts index 1846cb90d1..365b3f14cd 100644 --- a/plugins/scaffolder-backend/src/scaffolder/stages/publish/github.ts +++ b/plugins/scaffolder-backend/src/scaffolder/stages/publish/github.ts @@ -31,10 +31,8 @@ export class GithubPublisher implements PublisherBase { config: GitHubIntegrationConfig, { repoVisibility }: { repoVisibility: RepoVisibilityOptions }, ) { - if (!config.token) { - if (!config.apps) { - return undefined; - } + if (!config.token && !config.apps) { + return undefined; } const credentialsProvider = GithubCredentialsProvider.create(config); @@ -61,12 +59,13 @@ export class GithubPublisher implements PublisherBase { }: PublisherOptions): Promise { const { owner, name } = parseGitUrl(values.storePath); - const token = - ( - await this.config.credentialsProvider.getCredentials({ - url: values.storePath, - }) - ).token || ''; + const { token } = await this.config.credentialsProvider.getCredentials({ + url: values.storePath, + }); + + if (!token) { + return { remoteUrl: '', catalogInfoUrl: undefined }; + } const client = new Octokit({ auth: token,