name: Lint Bash Scripts

on:
  push:
    paths:
      - '**/*.sh'
  pull_request:
    paths:
      - '**/*.sh'

jobs:
  lint-bash:
    runs-on: docker
    container:
      image: node:16-bullseye

    steps:
      - name: Checkout Code
        uses: https://code.forgejo.org/actions/checkout@v4
        with:
          fetch-depth: 0  # Fetch the entire history to avoid REST API reliance

      - name: Install ShellCheck
        run: |
          apt-get update && apt-get install -y shellcheck

      - name: Lint Bash Scripts
        run: |
          echo "Linting Bash scripts..."
          find . -name '*.sh' -print0 | xargs -0 shellcheck