Run under Github Actions, and restrict commit messages, structure, with, etc.
Enforce using only our specified prefixes for commit messages. It reduces the
work release managers do when _crafting_ release notes.
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
--- /dev/null
+module.exports = {
+ rules: {
+ 'header-max-length': [2, 'always', 72],
+ 'type-case': [2, 'always', 'lower-case'],
+ 'type-empty': [2, 'never'],
+ 'type-enum': [
+ 2,
+ 'always',
+ [
+ 'babeld',
+ 'bfdd',
+ 'bgpd',
+ 'doc',
+ 'docker',
+ 'eigrpd',
+ 'fpm',
+ 'isisd',
+ 'ldpd',
+ 'lib',
+ 'multi',
+ 'nhrpd',
+ 'ospf6d',
+ 'ospfd',
+ 'pbrd',
+ 'pimd',
+ 'pim6d',
+ 'ripd',
+ 'ripngd',
+ 'sharpd',
+ 'staticd',
+ 'tests',
+ 'tools',
+ 'vtysh',
+ 'vrrpd',
+ 'yang',
+ 'zebra',
+ 'all',
+ ],
+ ],
+ 'subject-empty': [2, 'never'],
+ 'subject-full-stop': [2, 'never', '.'],
+ 'subject-case': [2, 'always', 'sentence-case'],
+ },
+};
--- /dev/null
+name: commitlint
+
+on:
+ pull_request_target:
+ types:
+ - opened
+ - reopened
+
+jobs:
+ lint:
+ if: github.repository == 'frrouting/frr'
+ permissions:
+ contents: read
+ runs-on: ubuntu-latest
+ steps:
+ - name: Check Commit
+ uses: wagoid/commitlint-github-action@v5
+ with:
+ configFile: .github/commitlint.config.js