name: ❄️ Lint

on: [pull_request]

jobs:
  markdownlint:
    name: 🍸 Markdown
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: 🚀 Use Node.js
        uses: actions/setup-node@v2.1.5
        with:
          node-version: '14'
      - run: npm install -g markdownlint-cli@0.27.1
      - run: markdownlint '**/*.md'
  misspell:
    name: 🥛 Check Spelling
    runs-on: ubuntu-latest
    steps:
      - name: 🍒 Check Out
        uses: actions/checkout@v2
      - name: 🍅 Install
        run: |
          wget -O - -q https://git.io/misspell | sh -s -- -b .
      - name: 🌶️ Misspell
        run: |
          git ls-files --empty-directory | xargs ./misspell -error
  trailing-whitespace:
    name: 🧋 Trailing whitespace
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: 🧹 Check for trailing whitespace
        run: "! git grep -EIn $'[ \t]+$'"
  yamllint:
    name: 🍶 YAML
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - uses: actions/setup-python@v2
        with:
          python-version: '3.x'  # Version range or exact version of a Python version to use, using SemVer's version range syntax
          architecture: 'x64'  # optional x64 or x86. Defaults to x64 if not specified
      - name: Install dependencies
        run: |
          python -m pip install --upgrade pip
          pip install yamllint
      - name: 🧹 YAML Lint
        run: |
          # return non-zero exit code on warnings
          yamllint --strict .
