StackStorm-Exchange / exchange-incubator

Submit your StackStorm integration and automation packs here.
12 stars 61 forks source link

Create CODEOWNERS on Exchange repos #152

Open nmaludy opened 4 years ago

nmaludy commented 4 years ago

Each Exchange repo should have a .github/CODEOWNERS file that should be used to assign reviewers for each pack.

https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/about-code-owners

TODO:

arm4b commented 4 years ago

https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/creating-a-template-repository might also help.

arm4b commented 3 years ago

Following the experience in https://github.com/StackStorm-Exchange/stackstorm-napalm/pull/68 and https://github.com/StackStorm-Exchange/stackstorm-zabbix/pull/43, here is the doc for on-boarding new pack maintainers.

On-boarding new Pack Maintainers

1) Invite @username to respective pack repository in Github with role: Write. If there is a group of people working for the same org, create a Github group in StackStorm-Exchange org instead. 2) Include @username in the .github/CODEOWNERS file, so they'll be notified automatically for PR reviews:

# This is a comment.
# Each line is a file pattern followed by one or more owners.

# These owners will be the default owners for everything in
# the repo. Unless a later match takes precedence, users and
# teams which are put in owners will be requested for review
# when someone opens a pull request.

# This is base configuration. These owners could review the
# whole file in this repository.
* @StackStorm-Exchange/tsc @username

# CI configuration files should be reviewed by specific owners
# who are more responsible for ensuring the quality of this pack
# or orchestrate StackStorm-Exchanges.
.github/**  @StackStorm-Exchange/tsc

3) Add them to the README.md (last section) as an active Maintainer. This way outside contributors would know who's responsible for the pack. Besides of that it will give a credit for the ongoing pack maintenance:

## Maintainers
Active pack maintainers with review & write repository access and expertise with <pack_name>:
* Name ([@username](https://github.com/username)) <email@address> Company

4) In the repository settings, make sure master branch is protected and requires an approved PR to get the code merged.

5) (Recommended) Announce new pack maintainers on StackStorm Twitter and LinkedIn for better outreach

^^ Let's try to keep it consistent across all the Exchange Pack repos.

cognifloyd commented 3 years ago
# This is base configuration. These owners could review the
# whole file in this repository.
* @StackStorm-Exchange/tsc @username

I don't think the entire TSC should be pinged for every commit in every PR on the exchange. Not everyone maintains the exchange packs, and several TSC members have complained about spam from mass exchange updates or frequent updates during PR development.

amanda11 commented 3 years ago

I actually find it useful to be pinged!

arm4b commented 3 years ago

@cognifloyd @StackStorm-Exchange/tsc are, in fact, the main maintainers for the StackStorm Exchange and should be notified for every new PR. This is a shared maintenance responsibility. Someone needs to take care of Exchange and incoming PRs.

cognifloyd commented 3 years ago

No they are not. Only a few of the TSC members actively maintain the exchange. Others focus on the partner program, or core st2.

cognifloyd commented 2 years ago

A default file can be added in https://github.com/StackStorm-Exchange/ci-pack-template to make sure it gets added automatically to any new packs.