Skip to content

GitLab: Group Authorization

You authorized Git-Zen, but some of your organization’s GitLab projects are missing or marked with a warning. The cause is almost always the OAuth user’s membership or role.

Git-Zen asks GitLab for every non-archived project that the OAuth user is a member of. Membership can be direct, or inherited from a group. Git-Zen shows up to 1,000 projects.

For each project, Git-Zen uses the user’s higher role: the project role or the group role.

  • Maintainer or Owner: Git-Zen can create the webhook for you.
  • Reporter or Developer: the project shows with a yellow warning sign. Git-Zen cannot create its webhook. A Maintainer must add the webhook manually.

The easiest setup is to add the OAuth user to your top-level group as a Maintainer. The user then has that role on every project in the group.

Cause: The OAuth user is not a member of the group that holds your projects.

Fix: In GitLab, add the OAuth user to the group. Go to the group, then Manage → Members → Invite members. Then clear the repository cache.

“My group’s projects show a yellow warning sign.”

Section titled ““My group’s projects show a yellow warning sign.””

Cause: The OAuth user has the Reporter or Developer role. GitLab lets only Maintainers and Owners manage webhooks.

Fix: Give the user the Maintainer role on the group or on each project. Or ask a Maintainer to add the webhook manually.

“I see some group projects but not all of them.”

Section titled ““I see some group projects but not all of them.””

Cause: The user is not a member of the missing projects. A project in a subgroup, or a project shared with the group, can have its own member list.

Fix: Open the missing project in GitLab. Go to Manage → Members and check the OAuth user’s role.

“I gave the user access, but nothing changed.”

Section titled ““I gave the user access, but nothing changed.””

Cause: Git-Zen caches the project list.

Fix: Clear the repository cache. You do not need to re-authorize. GitLab checks the user’s current memberships on every request.

When you create an issue, the Milestone list shows:

  • The project’s milestones.
  • Milestones of the groups above the project. These are the project’s group and its parent groups.

Milestones from unrelated groups do not show, even if the OAuth user owns those groups. Git-Zen hides expired milestones.

If an expected group milestone is missing, check that the OAuth user can see the project and its groups in GitLab. Also check that the milestone has not passed its due date.

After you change permissions in GitLab, click Clear Repository Cache on the Git-Zen Webhooks screen. See A new repository or project is missing.

See the GitLab roles and permissions documentation.