Skip to content

Use a Code Owners file to map paths to groups

Mark Florian requested to merge groups-via-codeowners into main

What does this MR do and why?

Use import.meta.dirname

Added in node 20.11.0: https://nodejs.org/dist/latest-v20.x/docs/api/esm.html#importmetadirname

Improve compare groups script/job

It now logs the number of changed path/group pairs, and blocks merge requests with 1 or more group changes, unless the pipeline:expect-group-changes label is applied.

Add script to transform JSON to CODEOWNERS

This also commits the new GITLAB_CODEOWNERS file.

This file should map paths to groups identically to the old JSON file.

Switch to @gitlab/codeowners parser

Start simplifying CODEOWNERS

It still has many redundant entries, but this will do for now.

Review/run this locally

  1. Copy the pages in mr job URL (must have succeeded)
  2. Run bin/review-mr.sh <job url>
  3. If there are rules changes, check the compare findings job log reports the expected changes
  4. If there are group changes, check the compare groups job log reports the expected changes
Edited by Mark Florian

Merge request reports