name: Lint on PR

on:
  pull_request:
    types: [opened, synchronize, reopened]

jobs:
  lint:
    name: Lint YAML files
    runs-on: docker
    container:
      image: mafyuh/node-yamllint:v1.0.0
    steps:
      - name: Checkout code
        uses: actions/checkout@v4


      - name: Show yamllint version
        run: | 
          yamllint --version

      - name: Lint .yml files
        run: | 
          lint_output=$(find docker -name "*.yml" -exec yamllint --strict -d "{extends: relaxed, rules: {line-length: {max: 120}}}" {} \;)
          
          # Check if there are any warnings or errors in the output
          echo "$lint_output"
          if echo "$lint_output" | grep -q -E "error|warning"; then
            echo "YAML linting failed due to errors or warnings."
            exit 1
          fi