diff --git a/.changeset/blue-dragons-shout.md b/.changeset/blue-dragons-shout.md new file mode 100644 index 0000000000..762234a72b --- /dev/null +++ b/.changeset/blue-dragons-shout.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-catalog-backend-module-gitlab': patch +--- + +`restrictUsersToGroup` should use the entire group path when getting members diff --git a/plugins/catalog-backend-module-gitlab/src/__testUtils__/handlers.ts b/plugins/catalog-backend-module-gitlab/src/__testUtils__/handlers.ts index a4fb3ba391..041aa5b835 100644 --- a/plugins/catalog-backend-module-gitlab/src/__testUtils__/handlers.ts +++ b/plugins/catalog-backend-module-gitlab/src/__testUtils__/handlers.ts @@ -83,7 +83,7 @@ const httpHandlers = [ }), rest.get( - `${apiBaseUrlSaas}/groups/subgroup1/members/all`, + `${apiBaseUrlSaas}/groups/group1%2Fsubgroup1/members/all`, (_req, res, ctx) => { return res(ctx.json(subgroup_saas_users_response)); // To-DO change }, diff --git a/plugins/catalog-backend-module-gitlab/src/providers/GitlabOrgDiscoveryEntityProvider.ts b/plugins/catalog-backend-module-gitlab/src/providers/GitlabOrgDiscoveryEntityProvider.ts index eb10dd2274..1fbd2a2a13 100644 --- a/plugins/catalog-backend-module-gitlab/src/providers/GitlabOrgDiscoveryEntityProvider.ts +++ b/plugins/catalog-backend-module-gitlab/src/providers/GitlabOrgDiscoveryEntityProvider.ts @@ -400,14 +400,14 @@ export class GitlabOrgDiscoveryEntityProvider implements EntityProvider { groups.push(await this.gitLabClient.getGroupByPath(this.config.group)); // adds the parent group for #26554 const rootGroupSplit = this.config.group.split('/'); - const rootGroup = this.config.restrictUsersToGroup - ? rootGroupSplit[rootGroupSplit.length - 1] + const groupPath = this.config.restrictUsersToGroup + ? this.config.group : rootGroupSplit[0]; users = paginated( options => this.gitLabClient.listSaaSUsers( - rootGroup, + groupPath, options, this.config.includeUsersWithoutSeat, ),