name: 'Lint'

on:
  push:
    branches: [master, develop]
  pull_request:
    branches: [master, develop]

jobs:
  lint:
    runs-on: 'ubuntu-latest'
    steps:
      - uses: 'actions/checkout@v2'

      - name: 'Use Node.js'
        uses: 'actions/setup-node@v2.4.1'
        with:
          node-version: '16.x'
          cache: 'npm'

      - name: 'Install'
        run: 'npm install'

      - name: 'lint:commit'
        run: 'npm run lint:commit -- --to "${{ github.sha }}"'

      - name: 'lint:editorconfig'
        run: 'npm run lint:editorconfig'

      - name: 'lint:markdown'
        run: 'npm run lint:markdown'

      - name: 'lint:typescript'
        run: 'npm run lint:typescript'

      - name: 'lint:prettier'
        run: 'npm run lint:prettier'

      - name: 'lint:dotenv'
        uses: 'dotenv-linter/action-dotenv-linter@v2'
        with:
          github_token: ${{ secrets.github_token }}

      - name: 'lint:docker'
        uses: 'hadolint/hadolint-action@v1.6.0'
        with:
          dockerfile: './Dockerfile'
