Skip to content

Draft: Explain relation of approval rules and codeowners

Torsten Linz requested to merge master-patch-3e9a into master

What does this MR do?

A user said that if Codeowners approval is made optional but if “you set eligible approvers to a non-zero amount” the approval becomes mandatory. I am not 100% sure how he means that. I speculate it is about this setting: https://docs.gitlab.com/ee/user/project/merge_requests/approvals/rules.html#code-owners-as-eligible-approvers.

  • I think the user may have used approval rules where he shouldn’t have used them. Unlike CODEOWNER approvals, approval rules apply to entire branches and cannot be refined to apply to specific parts of your code base.
  • I can see how this combination of optional approval in the codeowner file combined with requiring approval by eligible approvers can create confusing results.
  • I think it might be good to bring codeowner documentation and approval rule documents closer together. UP FOR DISCUSSION. Please, chime in @phikai and @aqualls.
  • But at least on the approval rule side provide a similar intro sentence as on the codeowner documentation side (see paragraph below video) that explains the purpose of each and how they work together. (THIS IS WHAT THIS MR IS ABOUT)

Related issues

Author's checklist

If you are a GitLab team member and only adding documentation, do not add any of the following labels:

  • ~"frontend"
  • ~"backend"
  • ~"type::bug"
  • ~"database"

These labels cause the MR to be added to code verification QA issues.

Reviewer's checklist

Documentation-related MRs should be reviewed by a Technical Writer for a non-blocking review, based on Documentation Guidelines and the Style Guide.

If you aren't sure which tech writer to ask, use roulette or ask in the #docs Slack channel.

  • If the content requires it, ensure the information is reviewed by a subject matter expert.
  • Technical writer review items:
    • Ensure docs metadata is present and up-to-date.
    • Ensure the appropriate labels are added to this MR.
    • Ensure a release milestone is set.
    • If relevant to this MR, ensure content topic type principles are in use, including:
      • The headings should be something you'd do a Google search for. Instead of Default behavior, say something like Default behavior when you close an issue.
      • The headings (other than the page title) should be active. Instead of Configuring GDK, say something like Configure GDK.
      • Any task steps should be written as a numbered list.
      • If the content still needs to be edited for topic types, you can create a follow-up issue with the docs-technical-debt label.
  • Review by assigned maintainer, who can always request/require the reviews above. Maintainer's review can occur before or after a technical writer review.
Edited by Torsten Linz

Merge request reports