name: Lint on: push: branches: ["**"] pull_request: branches: ["**"] jobs: shell-lint: name: Shell (shellcheck) runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Install shellcheck run: apt-get update -qq && apt-get install -y -qq shellcheck - name: Run shellcheck run: find . -name "*.sh" -exec shellcheck {} + js-lint: name: JS (eslint) runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Install ESLint run: npm install --save-dev eslint@8 - name: Run ESLint run: npx eslint --ext .js hookshot/ python-lint: name: Python (ruff) runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Install ruff run: python3 -m pip install ruff - name: Check syntax errors run: python3 -m ruff check matrixbot/ --select E9,F63,F7,F82 --output-format=github - name: Run full lint run: python3 -m ruff check matrixbot/ --output-format=github python-audit: name: Python deps (pip-audit) runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Install pip-audit run: python3 -m pip install pip-audit - name: Audit matrixbot dependencies run: python3 -m pip_audit -r matrixbot/requirements.txt