diff --git a/plugins/catalog-backend-module-gitlab/src/__testUtils__/handlers.ts b/plugins/catalog-backend-module-gitlab/src/__testUtils__/handlers.ts index 752fd08f4b..a4fb3ba391 100644 --- a/plugins/catalog-backend-module-gitlab/src/__testUtils__/handlers.ts +++ b/plugins/catalog-backend-module-gitlab/src/__testUtils__/handlers.ts @@ -136,6 +136,7 @@ const httpHandlers = [ // dynamic handlers +// https://docs.gitlab.com/ee/api/groups.html#list-group-details supports encoded path and id const httpGroupFindByEncodedPathDynamic = all_groups_response.flatMap(group => [ // Handler for apiBaseUrl rest.get(`${apiBaseUrl}/groups/${group.full_path}`, (_, res, ctx) => { diff --git a/plugins/catalog-backend-module-gitlab/src/lib/client.ts b/plugins/catalog-backend-module-gitlab/src/lib/client.ts index 1e1d8247cd..0847587107 100644 --- a/plugins/catalog-backend-module-gitlab/src/lib/client.ts +++ b/plugins/catalog-backend-module-gitlab/src/lib/client.ts @@ -166,6 +166,8 @@ export class GitLabClient { return this.pagedRequest(`/groups`, options); } + // https://docs.gitlab.com/ee/api/groups.html#list-group-details + // id can either be group id or encoded full path async getGroupByPath( groupPath: string, options?: CommonListOptions, diff --git a/plugins/catalog-backend-module-gitlab/src/providers/GitlabOrgDiscoveryEntityProvider.ts b/plugins/catalog-backend-module-gitlab/src/providers/GitlabOrgDiscoveryEntityProvider.ts index 556f4ae5a4..eb10dd2274 100644 --- a/plugins/catalog-backend-module-gitlab/src/providers/GitlabOrgDiscoveryEntityProvider.ts +++ b/plugins/catalog-backend-module-gitlab/src/providers/GitlabOrgDiscoveryEntityProvider.ts @@ -366,7 +366,7 @@ export class GitlabOrgDiscoveryEntityProvider implements EntityProvider { if (this.gitLabClient.isSelfManaged() && this.config.restrictUsersToGroup) { groups = (await this.gitLabClient.listDescendantGroups(this.config.group)) .items; - groups.push(await this.gitLabClient.getGroupByPath(this.config.group)); + groups.push(await this.gitLabClient.getGroupByPath(this.config.group)); // adds the parent group for #26554 users = paginated( options => this.gitLabClient.listGroupMembers(this.config.group, options), // calls /groups//members @@ -397,7 +397,7 @@ export class GitlabOrgDiscoveryEntityProvider implements EntityProvider { groups = (await this.gitLabClient.listDescendantGroups(this.config.group)) .items; - groups.push(await this.gitLabClient.getGroupByPath(this.config.group)); + 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