This is a talk at FullStack London 2017.
If your organisation has hundreds of code repositories you probably have some guidelines for them: how they are documented, how branches are protected, whether direct commits to master branch are allowed or only PRs should be used and all PRs should be reviewed, whether tests are run and code coverage is reported to PRs, etc.
Making sure that those guidelines are followed is a difficult task - even if all team members agree to do so, sometimes we simply forget or don’t have time to implement the necessary changes.
Once we’ve agreed on our development guidelines, I was looking for a tool to automate such auditing for our team, so that in the same way as eslint can be used for testing code guidelines based on the rules, we could use this tool to audit our repositories in GitHub organisations. I couldn’t find one so I created it.
Meet gh-lint - a rule-based command-line utility that audits all your GitHub repositories generating results in TAP (Test Anything Protocol) format that can be consumed by tap-github-issues reporter that can create, update and close issues in GitHub repositories.