mszostok/codeowners-validator

Add support for outside collaborators

Opened this issue · 1 comments

Description

There is an option to add people as outside collaborators.

The codeowners-validator should include those members when in owners check as currently they are ignored.

Reasons

Currently, owners check my produce false negatives when CODEOWNRES files has outside collaborators as owners.

I would help out with a PR for this issue. I looked into the code and I can do one of the following:

  1. Add an outsideCollaborators map variable to ValidOwners struct and a function which adds all outside collaborators part of the repository to the map. Inside function Check in valid_owner.go we can then continue the for loop on any outside collaborators with access to the repository. The second option is validating outside collaborators in validateGitHubUser().
  2. Create a second initOrgListMembers() function which adds outside collaborators to the orgMembers map. This joins organization members with outside collaborators and the check succeeds in validateGitHubUser().

I would probably prefer option 1 since we can differentiate between different types of users. What do you think?