33 lines
1.5 KiB
Markdown
33 lines
1.5 KiB
Markdown
# Github Unnotifier
|
|
|
|
So I work in a monorepo, to which I have elevated access.
|
|
This means I get a LOT of work associated notifications on Github because approval requests land on my team's desk.
|
|
However, since we are a team, many of these notificaitons don't require that I action them.
|
|
|
|
I would like to not be notified at all, but Github's notification filtering features are non-existent so I'm doing this the hard way.
|
|
|
|
This script at present does the simple thing - it looks through notifications for activity and tries to identify trivially ignorable notifications which:
|
|
1. Relate to a closed (merged or abandoned) PR
|
|
2. Does not have an outstanding review request against EITHER the user OR one of the user's teams (someone else already reviewed it) AND is in an org in the `org_shitlist`
|
|
|
|
Note that the `org_shitlist` serves as a gate to allow you to opt notifications from organizations into auto-dismissal, rather than auto-dismissing anything you aren't a reviewer on from anywhere as that covers many other potentially desirable notifications too.
|
|
|
|
## Usage
|
|
You're gonna need a `config.toml` like
|
|
|
|
``` toml
|
|
[gh-unnotifier]
|
|
api_key = "your secret value"
|
|
org_shitlist = [
|
|
"your-employer-here",
|
|
"their-oss-group-here",
|
|
]
|
|
```
|
|
|
|
And then you can `bazel run //projects/gh-unnotifier -- maintain --config $(realpath config.toml)`.
|
|
|
|
## License
|
|
|
|
Copyright © Reid D. McKenzie 2023, published under the terms of the Anti-Capitalist Software License v1.4 and later.
|
|
|
|
https://anticapitalist.software/
|