diff --git a/.changeset/red-parrots-attack.md b/.changeset/red-parrots-attack.md new file mode 100644 index 0000000000..1530c17c8b --- /dev/null +++ b/.changeset/red-parrots-attack.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-catalog-backend-module-gitlab': patch +--- + +Fix a corner case where returned users are null for bots diff --git a/plugins/catalog-backend-module-gitlab/src/lib/client.ts b/plugins/catalog-backend-module-gitlab/src/lib/client.ts index 8f8c67895c..46932c95c6 100644 --- a/plugins/catalog-backend-module-gitlab/src/lib/client.ts +++ b/plugins/catalog-backend-module-gitlab/src/lib/client.ts @@ -128,10 +128,11 @@ export class GitLabClient { throw new Error(`GraphQL errors: ${JSON.stringify(response.errors)}`); } memberIds.push( - ...response.data.group.groupMembers.nodes.map( - (node: { user: { id: string } }) => + ...response.data.group.groupMembers.nodes + .filter(n => n.user) + .map(node => Number(node.user.id.replace(/^gid:\/\/gitlab\/User\//, '')), - ), + ), ); ({ hasNextPage, endCursor } = response.data.group.groupMembers.pageInfo); } while (hasNextPage);