Skip to content

Commit 89d1f9b

Browse files
committed
feat(config) Add group-level reviewers
- Introduced a new section in README.md for specifying group-level reviewers, allowing overrides of global settings. - Updated `parseConfig` function in `src/config.js` to include group reviewers in the result. - Modified `src/index.js` to utilize item-specific reviewers when adding reviewers to PRs.
1 parent 8b92be3 commit 89d1f9b

File tree

4 files changed

+24
-5
lines changed

4 files changed

+24
-5
lines changed

README.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -305,6 +305,23 @@ group:
305305
user/repo4
306306
```
307307

308+
### Group-level reviewers
309+
310+
You can specify reviewers at the group level to override the global reviewers setting for specific groups:
311+
312+
```yml
313+
group:
314+
repos: |
315+
lemonade-hq/partners-platform
316+
files:
317+
- source: rules/
318+
dest: .cursor/rules/
319+
reviewers:
320+
- shaharkedar
321+
```
322+
323+
This will automatically request a review from the specified users when PRs are created for repositories in this group, overriding any global `REVIEWERS` setting.
324+
308325
### Syncing branches
309326

310327
You can also sync different branches from the same or different repositories (#51). For example, a repository named `foo/bar` with branch `main`, and `sync.yml` contents:

dist/index.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/config.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -225,7 +225,8 @@ export async function parseConfig() {
225225

226226
result[repo.uniqueName] = {
227227
repo,
228-
files
228+
files,
229+
reviewers: group.reviewers
229230
}
230231
})
231232
})

src/index.js

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -184,9 +184,10 @@ async function run() {
184184
await git.addPrAssignees(ASSIGNEES)
185185
}
186186

187-
if (REVIEWERS !== undefined && REVIEWERS.length > 0 && !FORK) {
188-
core.info(`Adding reviewer(s) "${ REVIEWERS.join(', ') }" to PR`)
189-
await git.addPrReviewers(REVIEWERS)
187+
const itemReviewers = item.reviewers || REVIEWERS
188+
if (itemReviewers !== undefined && itemReviewers.length > 0 && !FORK) {
189+
core.info(`Adding reviewer(s) "${ itemReviewers.join(', ') }" to PR`)
190+
await git.addPrReviewers(itemReviewers)
190191
}
191192

192193
if (TEAM_REVIEWERS !== undefined && TEAM_REVIEWERS.length > 0 && !FORK) {

0 commit comments

Comments
 (0)