diff options
Diffstat
| -rw-r--r-- | .github/workflows/legal.yml | 9 | +7 −2 |
| -rw-r--r-- | .gitignore | 2 | +2 −0 |
| -rw-r--r-- | mise.toml | 13 | +13 −0 |
| -rwxr-xr-x | scripts/check-signoff | 39 | +0 −39 |
4 files changed, 22 insertions, 41 deletions
diff --git a/.github/workflows/legal.yml b/.github/workflows/legal.yml index 6d3cb53..4c0b2d5 100644 --- a/.github/workflows/legal.yml +++ b/.github/workflows/legal.yml @@ -21,8 +21,13 @@ jobs: with: fetch-depth: 0 - - name: Check contributor agreement - run: ./scripts/check-signoff + - uses: jdx/mise-action@5228313ee0372e111a38da051671ca30fc5a96db # v3 + with: + version: 2026.7.5 + experimental: true + + - name: Check contribution sign-off + run: mise run signoff - name: Check repository licensing uses: fsfe/reuse-action@676e2d560c9a403aa252096d99fcab3e1132b0f5 # v6.0.0 diff --git a/.gitignore b/.gitignore index 4af8e00..363797d 100644 --- a/.gitignore +++ b/.gitignore @@ -3,6 +3,8 @@ /target /dist +mise.local.toml +mise.*.local.toml __pycache__ *.qcow2 diff --git a/mise.toml b/mise.toml new file mode 100644 --- /dev/null +++ b/mise.toml @@ -0,0 +1,13 @@ +# SPDX-FileCopyrightText: 2026 Nikolay Govorov +# SPDX-License-Identifier: Apache-2.0 + +min_version = "2026.7.5" + +[settings] +experimental = true + +[task_config] +dir = "{{cwd}}" +includes = [ + "git::https://github.com/dimidiumlabs/infra.git//tasks?ref=22410a5dae5ff53b54d1666db5c6009229fbaaa5", +] diff --git a/scripts/check-signoff b/scripts/check-signoff deleted file mode 100755 --- a/scripts/check-signoff +++ /dev/null @@ -1,39 +0,0 @@ -#!/bin/sh -eu -# SPDX-FileCopyrightText: 2026 Nikolay Govorov -# SPDX-License-Identifier: Apache-2.0 - -ALLOWLIST='Nikolay Govorov|github-actions\[bot\]' - -bad=0 -for sha in $(git log --no-merges --format=%H); do - author=$(git log -1 --format='%an' "$sha") - if printf '%s\n' "$author" | grep -qE "^($ALLOWLIST)$"; then - continue - fi - - email=$(git log -1 --format='%ae' "$sha") - expected="${author} <${email}>" - if ! git log -1 --format='%(trailers:key=Signed-off-by,valueonly)' "$sha" | grep -qF "$expected"; then - echo "Commit $(printf '%.8s' "$sha") by ${expected} is missing a valid Signed-off-by" - bad=1 - fi -done - -if [ "$bad" -eq 1 ]; then - echo "All commits must be signed off (git commit -s). See CLA.md" - exit 1 -fi - -# Check that all authors and committers are in .mailmap -missing=0 -for email in $(git log --no-merges --format='%ae%n%ce' | sort -u); do - if ! grep -v '^#' .mailmap | grep -qF "<${email}>"; then - echo "Email <${email}> is not in .mailmap" - missing=1 - fi -done - -if [ "$missing" -eq 1 ]; then - echo "All contributors must be listed in .mailmap. See README.md" - exit 1 -fi |
