Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CODEOWNERS: Split codeowners for the documentation #14076

Merged
merged 1 commit into from
Nov 20, 2020

Conversation

pchaigno
Copy link
Member

With recent changes to the review process, @cilium/docs was renamed to @cilium/docs-structure to clarify that reviews from that team should focus on the documentation's structure rather than its technical content.

Of course, we still need reviews for the technical content. So the next step, implemented in this pull request, is to assign each of the different reviewer team their own pages in the documentation.

@pchaigno pchaigno added the release-note/misc This PR makes changes that have no direct user impact. label Nov 18, 2020
@pchaigno pchaigno requested a review from a team as a code owner November 18, 2020 21:42
@pchaigno pchaigno requested a review from jibi November 18, 2020 21:42
@maintainer-s-little-helper maintainer-s-little-helper bot added this to In progress in 1.10.0 Nov 18, 2020
Copy link
Member

@joestringer joestringer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for picking this up, I was just starting to think about this :-)

I don't think there's any good way to test this unfortunately, but I noticed a couple of things that differ from the existing configuration:

  • Current configuration specifies /Documentation/ first as a default for all files under that directory, then overrides the owner with subsequent configuration
  • Unless another path above overlaps with the path, there should be no need to add another entry specifically for a given path.

Also, it would be nice to sort alphabetically, with shorter paths first just to make it easier to read & find individual paths if possible (modulo the ordering rules which I believe are that the last entry that matches will define the owners for the given path)

CODEOWNERS Outdated Show resolved Hide resolved
CODEOWNERS Outdated
/Documentation/gettingstarted/k8s-install-aks* @cilium/azure @cilium/docs-structure
/Documentation/operations/performance/ @cilium/bpf @cilium/docs-structure
/Documentation/policy/ @cilium/policy @cilium/docs-structure
/Documentation/configuration/index.rst @cilium/docs-structure
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Isn't this already applied by matching /Documentation/ for this group? (likewise for similar other paths which only have the @cilium/docs-structure group as owner, unless there may be a conflict with another line in the file)

Copy link
Member Author

@pchaigno pchaigno Nov 18, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yep, that's a good question. I wanted to keep (1) the entries I've already classified as being @cilium/docs-structure's responsibility separate from (2) entries I haven't classified under any codeowner because it's unclear (e.g., Documentation/gettingstarted/local-redirect-policy.rst).

I'm not sure that makes sense, especially considering it makes the whole thing more complex. But it's clearly easier to change the PR from separated entries to single @cilium/docs-structure entry than the other way around 😄

@pchaigno
Copy link
Member Author

Current configuration specifies /Documentation/ first as a default for all files under that directory, then overrides the owner with subsequent configuration

Ouch, yes. I messed up the order. Will fix.

With recent changes to the review process, @cilium/docs was renamed to
@cilium/docs-structure to clarify that reviews from that team should
focus on the documentation's structure rather than its technical content.

Of course, we still need reviews for the technical content. So the next
step, implemented in this commit, is to assign each of the different
reviewer team their own pages in the documentation.

Signed-off-by: Paul Chaignon <paul@cilium.io>
@pchaigno pchaigno force-pushed the pr/pchaigno/split-documentation-codeowners branch from f1f3011 to 7b38839 Compare November 18, 2020 23:17
@pchaigno
Copy link
Member Author

/Documentation/ is actually the only entry in CODEOWNERS that conflicts with (& is overridden by) other /Documentation/ entries. I don't expect that to change because, when we have a subdir in Documentation/, it usually doesn't belong to any specific codeowner or it belongs entirely to a single codeowner. Given that, I just sorted the entries alphabetically, without trying to put shorter paths first. I hope it's better; if not, let's try something else.

(Ideally, I think we would generate our CODEOWNERS from a different, user-friendlier syntax. But there's still a bit of work needed to get there.)

Copy link
Member

@joestringer joestringer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's still some entries that look like they might be redundant, but everything that's there looks right to me 👍

Copy link
Member

@jibi jibi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 📖

@qmonnet
Copy link
Member

qmonnet commented Nov 19, 2020

I understand the /Documentation/ @cilium/docs-structure will be a catch-all for any documentation page which does not a more specific entry, but do we have something in place to checking that we didn't forget some entries, or that we won't forget to update the CODEOWNERS when adding new pages?

@pchaigno
Copy link
Member Author

I understand the /Documentation/ @cilium/docs-structure will be a catch-all for any documentation page which does not a more specific entry, but do we have something in place to checking that we didn't forget some entries, or that we won't forget to update the CODEOWNERS when adding new pages?

For bpf/, I think we have checkpatch. For other entries, we don't have an equivalent. This would be good to have.

One other idea I had was to assign the catch-all entry to both @cilium/docs-structure and @cilium/janitors. Then janitors would check why their review was requested and re-assign documentation pages to the appropriate teams (whether @cilium/docs-structure alone or some other team). That way we would slowly reduce the catch-all.

@qmonnet
Copy link
Member

qmonnet commented Nov 19, 2020

One other idea [...]

Yes, adding janitors to the catch-all sounds like a good idea to me!

/Documentation/check-cmdref.sh @cilium/docs-structure
/Documentation/check-crd-compat-table.sh @cilium/docs-structure
/Documentation/check-examples.sh @cilium/docs-structure
/Documentation/cmdref/ @cilium/nonexistantteam
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What will happen to this nonexistantteam?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It will continue to not exist 😄

See ba5f196 for context.

@aanm aanm merged commit 040d79d into master Nov 20, 2020
@aanm aanm deleted the pr/pchaigno/split-documentation-codeowners branch November 20, 2020 10:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
release-note/misc This PR makes changes that have no direct user impact.
Projects
No open projects
Development

Successfully merging this pull request may close these issues.

None yet

6 participants