summaryrefslogtreecommitdiff
path: root/OWNERS.md
diff options
context:
space:
mode:
authorJeff Sharkey <jsharkey@android.com>2020-12-10 08:20:12 -0700
committerJeff Sharkey <jsharkey@android.com>2020-12-10 08:37:23 -0700
commite2cc3f8becb8f61c978293827b31085cf728baa1 (patch)
tree75858f1592a8bbac5b27a7155f25eb122aa78afc /OWNERS.md
parentc9dc68f06315ad5a81a400d425e96c6590d19ae6 (diff)
Additional per-file OWNERS for shared directories.
Iteration based on areas of tree where detailed ownership was found to be missing during routine code reviews. Also add more detailed examples to OWNERS.md. Bug: 174932174 Exempt-From-Owner-Approval: refactoring with team leads buy-in Change-Id: I46ccef33b34594181ae8dc62973d68020f827d6b
Diffstat (limited to 'OWNERS.md')
-rw-r--r--OWNERS.md34
1 files changed, 34 insertions, 0 deletions
diff --git a/OWNERS.md b/OWNERS.md
index 6428c59fd793..601b5c641f21 100644
--- a/OWNERS.md
+++ b/OWNERS.md
@@ -1,3 +1,5 @@
+# Background
+
As general background, `OWNERS` files expedite code reviews by helping code
authors quickly find relevant reviewers, and they also ensure that stakeholders
are involved in code changes in their areas.
@@ -27,8 +29,40 @@ main `services/core/` project:
* `media/`
* `wifi/`
+# Design
+
Area maintainers are strongly encouraged to list people in a single
authoritative `OWNERS` file in **exactly one** location. Then, other paths
should reference that single authoritative `OWNERS` file using an include
directive. This approach ensures that updates are applied consistently across
the tree, reducing maintenance burden.
+
+# Examples
+
+The exact syntax of `OWNERS` files can be difficult to get correct, so here are
+some common examples:
+
+```
+# Complete include of top-level owners from this repo
+include /ZYGOTE_OWNERS
+# Partial include of top-level owners from this repo
+per-file ZygoteFile.java = file:/ZYGOTE_OWNERS
+```
+```
+# Complete include of subdirectory owners from this repo
+include /services/core/java/com/android/server/net/OWNERS
+# Partial include of subdirectory owners from this repo
+per-file NetworkFile.java = file:/services/core/java/com/android/server/net/OWNERS
+```
+```
+# Complete include of top-level owners from another repo
+include platform/libcore:/OWNERS
+# Partial include of top-level owners from another repo
+per-file LibcoreFile.java = file:platform/libcore:/OWNERS
+```
+```
+# Complete include of subdirectory owners from another repo
+include platform/frameworks/av:/camera/OWNERS
+# Partial include of subdirectory owners from another repo
+per-file CameraFile.java = file:platform/frameworks/av:/camera/OWNERS
+```