diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4ad2598..681f171 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -27,3 +27,9 @@ jobs: test-virgin-root: uses: ./.github/workflows/test-virgin-root.yml + + codesniffer-shellcheck: + uses: ./.github/workflows/codesniffer-shellcheck.yml + + codesniffer-ruff: + uses: ./.github/workflows/codesniffer-ruff.yml diff --git a/.github/workflows/codesniffer-ruff.yml b/.github/workflows/codesniffer-ruff.yml new file mode 100644 index 0000000..63d1284 --- /dev/null +++ b/.github/workflows/codesniffer-ruff.yml @@ -0,0 +1,24 @@ +name: Ruff (Python code sniffer) + +on: + push: + pull_request: + +jobs: + codesniffer-ruff: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: "3.12" + + - name: Install ruff + run: pip install ruff + + - name: Run ruff + run: | + ruff check src tests diff --git a/.github/workflows/codesniffer-shellcheck.yml b/.github/workflows/codesniffer-shellcheck.yml new file mode 100644 index 0000000..113ff41 --- /dev/null +++ b/.github/workflows/codesniffer-shellcheck.yml @@ -0,0 +1,15 @@ +name: ShellCheck + +on: + push: + pull_request: + +jobs: + codesniffer-shellcheck: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Install ShellCheck + run: sudo apt-get update && sudo apt-get install -y shellcheck + - name: Run ShellCheck + run: shellcheck -x $(find scripts -type f -name '*.sh' -print) diff --git a/.github/workflows/mark-stable.yml b/.github/workflows/mark-stable.yml index 72a13c1..a9c9a77 100644 --- a/.github/workflows/mark-stable.yml +++ b/.github/workflows/mark-stable.yml @@ -29,8 +29,16 @@ jobs: test-virgin-root: uses: ./.github/workflows/test-virgin-root.yml + codesniffer-shellcheck: + uses: ./.github/workflows/codesniffer-shellcheck.yml + + codesniffer-ruff: + uses: ./.github/workflows/codesniffer-ruff.yml + mark-stable: needs: + - codesniffer-shellcheck + - codesniffer-ruff - test-unit - test-integration - test-env-nix