Skip to content

Commit c1beafd

Browse files
committed
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
1 parent 2477208 commit c1beafd

File tree

11 files changed

+48
-3
lines changed

11 files changed

+48
-3
lines changed

OWNERS

+1-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ svetoslavganov@google.com
1616
yamasani@google.com
1717

1818
# Support bulk translation updates
19-
per-file */res*/values*/*.xml = byi@google.com
19+
per-file */res*/values*/*.xml = byi@google.com, delphij@google.com
2020

2121
per-file Android.bp = file:platform/build/soong:/OWNERS
2222
per-file Android.mk = file:platform/build/soong:/OWNERS

OWNERS.md

+34
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
# Background
2+
13
As general background, `OWNERS` files expedite code reviews by helping code
24
authors quickly find relevant reviewers, and they also ensure that stakeholders
35
are involved in code changes in their areas.
@@ -27,8 +29,40 @@ main `services/core/` project:
2729
* `media/`
2830
* `wifi/`
2931

32+
# Design
33+
3034
Area maintainers are strongly encouraged to list people in a single
3135
authoritative `OWNERS` file in **exactly one** location. Then, other paths
3236
should reference that single authoritative `OWNERS` file using an include
3337
directive. This approach ensures that updates are applied consistently across
3438
the tree, reducing maintenance burden.
39+
40+
# Examples
41+
42+
The exact syntax of `OWNERS` files can be difficult to get correct, so here are
43+
some common examples:
44+
45+
```
46+
# Complete include of top-level owners from this repo
47+
include /ZYGOTE_OWNERS
48+
# Partial include of top-level owners from this repo
49+
per-file ZygoteFile.java = file:/ZYGOTE_OWNERS
50+
```
51+
```
52+
# Complete include of subdirectory owners from this repo
53+
include /services/core/java/com/android/server/net/OWNERS
54+
# Partial include of subdirectory owners from this repo
55+
per-file NetworkFile.java = file:/services/core/java/com/android/server/net/OWNERS
56+
```
57+
```
58+
# Complete include of top-level owners from another repo
59+
include platform/libcore:/OWNERS
60+
# Partial include of top-level owners from another repo
61+
per-file LibcoreFile.java = file:platform/libcore:/OWNERS
62+
```
63+
```
64+
# Complete include of subdirectory owners from another repo
65+
include platform/frameworks/av:/camera/OWNERS
66+
# Partial include of subdirectory owners from another repo
67+
per-file CameraFile.java = file:platform/frameworks/av:/camera/OWNERS
68+
```

core/java/android/app/OWNERS

+3
Original file line numberDiff line numberDiff line change
@@ -1 +1,4 @@
1+
per-file *Alarm* = file:/apex/jobscheduler/OWNERS
2+
per-file *AppOp* = file:/core/java/android/permission/OWNERS
3+
per-file *Notification* = file:/packages/SystemUI/OWNERS
14
per-file *Zygote* = file:/ZYGOTE_OWNERS

core/java/android/os/OWNERS

+3
Original file line numberDiff line numberDiff line change
@@ -24,4 +24,7 @@ per-file PowerComponents.java = file:/BATTERY_STATS_OWNERS
2424

2525
per-file GraphicsEnvironment.java = chrisforbes@google.com, cnorthrop@google.com, lpy@google.com, timvp@google.com, zzyiwei@google.com
2626

27+
per-file *Network* = file:/services/core/java/com/android/server/net/OWNERS
28+
per-file *Power* = file:/services/core/java/com/android/server/power/OWNERS
29+
per-file *Telephony* = file:/telephony/OWNERS
2730
per-file *Zygote* = file:/ZYGOTE_OWNERS

core/java/android/telephony/OWNERS

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
include /telephony/OWNERS
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
per-file *AppOp* = file:/core/java/android/permission/OWNERS
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
include /services/core/java/com/android/server/notification/OWNERS

core/java/com/android/internal/os/OWNERS

+1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
per-file *Power* = file:/services/core/java/com/android/server/power/OWNERS
12
per-file *Zygote* = file:/ZYGOTE_OWNERS
23

34
# BatteryStats
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
include /telephony/OWNERS

services/core/java/com/android/server/OWNERS

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ per-file ZramWriteback.java = minchan@google.com, rajekumar@google.com, srnvs@go
1212
per-file UserspaceRebootLogger.java = ioffe@google.com, tomcherry@google.com
1313

1414
per-file *Alarm* = file:/apex/jobscheduler/OWNERS
15-
per-file *AppOps* = file:/core/java/android/permission/OWNERS
15+
per-file *AppOp* = file:/core/java/android/permission/OWNERS
1616
per-file *Bluetooth* = file:/core/java/android/bluetooth/OWNERS
1717
per-file *Gnss* = file:/services/core/java/com/android/server/location/OWNERS
1818
per-file *Location* = file:/services/core/java/com/android/server/location/OWNERS

services/tests/servicestests/src/com/android/server/OWNERS

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
per-file *Alarm* = file:/apex/jobscheduler/OWNERS
2-
per-file *AppOps* = file:/core/java/android/permission/OWNERS
2+
per-file *AppOp* = file:/core/java/android/permission/OWNERS
33
per-file *Bluetooth* = file:/core/java/android/bluetooth/OWNERS
44
per-file *Gnss* = file:/services/core/java/com/android/server/location/OWNERS
55
per-file *Network* = file:/services/core/java/com/android/server/net/OWNERS

0 commit comments

Comments
 (0)