---
# vi: ts=2 sw=2 et:
# SPDX-License-Identifier: LGPL-2.1-or-later
# https://github.com/marketplace/actions/super-linter
name: Lint Code Base

on:
  pull_request:
    branches:
      - main
      - v[0-9]+-stable

permissions:
  contents: read

jobs:
  build:
    name: Lint Code Base
    runs-on: ubuntu-latest
    concurrency:
      group: ${{ github.workflow }}-${{ github.ref }}
      cancel-in-progress: true

    steps:
      - name: Repo checkout
        uses: actions/checkout@ec3a7ce113134d7a93b817d10a8272cb61118579
        with:
          # We need a full repo clone
          fetch-depth: 0

      - name: Lint Code Base
        uses: github/super-linter@563be7dc5568017515b9e700329e9c6d3862f2b7
        env:
          DEFAULT_BRANCH: main
          # Excludes:
          #   - man/.* - all snippets in man pages (false positives due to
          #              missing shebangs)
          #   - kernel-install/.* - false-positives for dropins (and I'm afraid
          #                         to touch kernel-install)
          #   - .*\.(in|SKELETON) - all template/skeleton files
          #   - tools/coverity\.sh - external file (with some modifications)
          FILTER_REGEX_EXCLUDE: .*/(man/.*|src/kernel-install/.*|.*\.(in|SKELETON)|tools/coverity\.sh)$
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
          MULTI_STATUS: true
          VALIDATE_ALL_CODEBASE: false
          VALIDATE_BASH: true
