From 0873a43ac1557901b21dfa6f8534bbbfc73dc444 Mon Sep 17 00:00:00 2001 From: Juan Carlos Vargas V Date: Sun, 29 Oct 2023 08:54:46 -0500 Subject: [PATCH] fix(catalog-backend-module-gitlab): #20891 no self managed gitlab now gets all inherited users when consulting /groups/id/members Signed-off-by: Juan Carlos Vargas V --- .changeset/pretty-bats-end.md | 5 +++++ plugins/catalog-backend-module-gitlab/src/lib/client.ts | 2 +- .../src/providers/GitlabOrgDiscoveryEntityProvider.test.ts | 2 +- 3 files changed, 7 insertions(+), 2 deletions(-) create mode 100644 .changeset/pretty-bats-end.md diff --git a/.changeset/pretty-bats-end.md b/.changeset/pretty-bats-end.md new file mode 100644 index 0000000000..8b08c5b00f --- /dev/null +++ b/.changeset/pretty-bats-end.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-catalog-backend-module-gitlab': patch +--- + +Resolved a bug affecting the retrieval of users from group members. By appending '/all' to the API call, we now include members from all inherited groups, as per Gitlab's API specifications. This change is reflected in the listSaaSUsers function. diff --git a/plugins/catalog-backend-module-gitlab/src/lib/client.ts b/plugins/catalog-backend-module-gitlab/src/lib/client.ts index c4cdd444cb..65c3898d06 100644 --- a/plugins/catalog-backend-module-gitlab/src/lib/client.ts +++ b/plugins/catalog-backend-module-gitlab/src/lib/client.ts @@ -92,7 +92,7 @@ export class GitLabClient { options?: CommonListOptions, ): Promise> { return this.pagedRequest( - `/groups/${encodeURIComponent(groupPath)}/members`, + `/groups/${encodeURIComponent(groupPath)}/members/all`, { ...options, show_seat_info: true, diff --git a/plugins/catalog-backend-module-gitlab/src/providers/GitlabOrgDiscoveryEntityProvider.test.ts b/plugins/catalog-backend-module-gitlab/src/providers/GitlabOrgDiscoveryEntityProvider.test.ts index ad930ea23d..669abc69b6 100644 --- a/plugins/catalog-backend-module-gitlab/src/providers/GitlabOrgDiscoveryEntityProvider.test.ts +++ b/plugins/catalog-backend-module-gitlab/src/providers/GitlabOrgDiscoveryEntityProvider.test.ts @@ -569,7 +569,7 @@ describe('GitlabOrgDiscoveryEntityProvider', () => { ), ), rest.get( - `https://gitlab.com/api/v4/groups/group1/members`, + `https://gitlab.com/api/v4/groups/group1/members/all`, (_req, res, ctx) => { const response = [ {