From 5d10f99e53b4c7a989a76a755b48fc74846fcdfc Mon Sep 17 00:00:00 2001 From: Benjamin Janssens Date: Tue, 18 Feb 2025 19:25:49 +0100 Subject: [PATCH] feat(auth): enable persistency of scopes for Bitbucket Cloud Signed-off-by: Benjamin Janssens --- .changeset/chatty-days-wonder.md | 5 +++++ .changeset/serious-guests-tan.md | 5 +++++ packages/integration-react/src/api/ScmAuth.ts | 2 ++ .../src/authenticator.ts | 1 + 4 files changed, 13 insertions(+) create mode 100644 .changeset/chatty-days-wonder.md create mode 100644 .changeset/serious-guests-tan.md diff --git a/.changeset/chatty-days-wonder.md b/.changeset/chatty-days-wonder.md new file mode 100644 index 0000000000..5e5114c28e --- /dev/null +++ b/.changeset/chatty-days-wonder.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-auth-backend-module-bitbucket-provider': patch +--- + +Enabled persistency of scopes for Bitbucket Cloud. diff --git a/.changeset/serious-guests-tan.md b/.changeset/serious-guests-tan.md new file mode 100644 index 0000000000..e140f8bc1d --- /dev/null +++ b/.changeset/serious-guests-tan.md @@ -0,0 +1,5 @@ +--- +'@backstage/integration-react': patch +--- + +Added scopes `project` and `repository:admin` for Bitbucket Cloud. diff --git a/packages/integration-react/src/api/ScmAuth.ts b/packages/integration-react/src/api/ScmAuth.ts index ff3e8c098d..d943a3fac8 100644 --- a/packages/integration-react/src/api/ScmAuth.ts +++ b/packages/integration-react/src/api/ScmAuth.ts @@ -239,11 +239,13 @@ export class ScmAuth implements ScmAuthApi { 'pullrequest', 'snippet', 'issue', + 'project', ]; const repoWriteScopes = options?.scopeMapping?.repoWrite ?? [ 'pullrequest:write', 'snippet:write', 'issue:write', + 'repository:admin', ]; return new ScmAuth('bitbucket', bitbucketAuthApi, host, { default: defaultScopes, diff --git a/plugins/auth-backend-module-bitbucket-provider/src/authenticator.ts b/plugins/auth-backend-module-bitbucket-provider/src/authenticator.ts index a2d8275964..e07d9caf98 100644 --- a/plugins/auth-backend-module-bitbucket-provider/src/authenticator.ts +++ b/plugins/auth-backend-module-bitbucket-provider/src/authenticator.ts @@ -28,6 +28,7 @@ export const bitbucketAuthenticator = createOAuthAuthenticator({ PassportOAuthAuthenticatorHelper.defaultProfileTransform, scopes: { required: ['account'], + persist: true, }, initialize({ callbackUrl, config }) { const clientID = config.getString('clientId');