name: CI

on:
  pull_request:
    branches:
      - '*'
  push:
    branches:
      - master

permissions:
  contents: read

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

      - uses: leafo/gh-actions-lua@v10
        with:
          luaVersion: "5.1"

      - uses: leafo/gh-actions-luarocks@v4

      - name: luacheck
        run: |
          luarocks install luacheck 1.1.1
          make lint

  style:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3

      - name: stylua
        uses: JohnnyMorganz/stylua-action@v4
        with:
          token: ${{ secrets.GITHUB_TOKEN }}
          version: "v2.0.2"
          args: --check lua scripts

  colors:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3

      - uses: rhysd/action-setup-vim@v1
        with:
          neovim: true

      - name: make colors-check
        run: make colors-check

  filetypes:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3

      - uses: rhysd/action-setup-vim@v1
        with:
          neovim: true

      - name: make filetypes
        env:
          VIMRUNTIME: /home/runner/nvim-stable/share/nvim/runtime
        run: make filetypes
