name: Lint

# based on:
#  - https://github.com/NullVoxPopuli/eslint-plugin-decorator-position/blob/master/.github/workflows/lint.yml
#  - https://github.com/NullVoxPopuli/ember-autostash-modifier/blob/master/.github/workflows/ci.yml
#  - https://github.com/emberjs/ember-test-helpers/blob/master/.github/workflows/ci-build.yml
on:
  pull_request:
  push:
    # filtering branches here prevents duplicate builds from pull_request and push
    branches:
      - main

env:
  CI: true

jobs:
  source:
    if: "! contains(toJSON(github.event.commits.*.message), '[skip ci]')"
    name: Source
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v3
      - uses: volta-cli/action@v1

      - run: yarn install --frozen-lockfile

      - name: ESLint
        run: yarn lint:js

      - name: Templates
        run: yarn lint:hbs


  # docs:
  #   if: "! contains(toJSON(github.event.commits.*.message), '[skip ci]')"
  #   name: Docs
  #   runs-on: ubuntu-latest

  #   steps:
  #   - uses: actions/checkout@v2
  #   - uses: volta-cli/action@v1

  #   - run: yarn install
  #   - run: yarn lint:docs


  # docs-js-code:
  #   if: "! contains(toJSON(github.event.commits.*.message), '[skip ci]')"
  #   name: Docs (JS Code Samples)
  #   runs-on: ubuntu-latest

  #   steps:
  #   - uses: actions/checkout@v2
  #   - uses: volta-cli/action@v1

  #   - run: yarn install
  #   - run: yarn lint:docs-js

  commits:
    if: "! contains(toJSON(github.event.commits.*.message), '[skip ci]')"
    name: Commit Messages
    runs-on: ubuntu-latest

    steps:
    - uses: actions/checkout@v3
      with:
        fetch-depth: 0

    - uses: volta-cli/action@v1
    - uses: wagoid/commitlint-github-action@v4.1.15
