3 stable releases
1.0.3 | Jun 28, 2019 |
---|
#4 in #enforce
9KB
156 lines
codeowners-enforcer
Enforce
CODEOWNERS
files on your repo
- Ensure that every file in your repo is owned by someone.
- Written in Rust for superb performance in even the largest repos.
Install
With npm:
npm install --global codeowners-enforcer
With Cargo:
cargo install codeowners-enforcer
Usage
codeowners-enforcer
works by finding your CODEOWNERS
file in a known
location as defined by GitHub.
Then it walks through your file tree asserting that every file has a code owner.
If any files don't have a code owner, it will return their relative paths and
exit with 1
:
codeowners-enforcer
Oops! Found files without CODEOWNERS!
file.one
path/to/file.two
path/to/file.three
Fix: Please delete these files, move them, or add owners to them in /path/to/CODEOWNERS
If you want to return just the file paths, pass --quiet
or -q
:
codeowners-enforcer --quiet
one.txt
path/to/two.sh
path/to/three.py
If you want to ignore files, pass --ignore <pattern>
or -i
:
codeowners-enforcer --ignore "path/**/*.py"
one.txt
path/to/two.sh
You can also pass multiple ignores:
codeowners-enforcer -i "path/**/*.py" -i "path/**/*.sh"
one.txt
If you want to only check certain files, pass <patterns...>
:
codeowners-enforcer "**/*.sh" "**/*.py"
path/to/two.sh
path/to/three.py
Dependencies
~6–15MB
~165K SLoC