]> git.proxmox.com Git - mirror_frr.git/commitdiff
tools: Add commit linter
authorDonatas Abraitis <donatas@opensourcerouting.org>
Tue, 31 Jan 2023 09:16:50 +0000 (11:16 +0200)
committerDonatas Abraitis <donatas@opensourcerouting.org>
Tue, 31 Jan 2023 11:25:25 +0000 (13:25 +0200)
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>
.github/commitlint.config.js [new file with mode: 0644]
.github/workflows/commitlint.yml [new file with mode: 0644]

diff --git a/.github/commitlint.config.js b/.github/commitlint.config.js
new file mode 100644 (file)
index 0000000..cf7daab
--- /dev/null
@@ -0,0 +1,44 @@
+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'],
+       },
+};
diff --git a/.github/workflows/commitlint.yml b/.github/workflows/commitlint.yml
new file mode 100644 (file)
index 0000000..a1f273a
--- /dev/null
@@ -0,0 +1,19 @@
+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