66 lines
2.3 KiB
YAML
66 lines
2.3 KiB
YAML
name: Integration based on gbprod/yanky.nvim
|
||
on:
|
||
push:
|
||
branches: [master]
|
||
pull_request:
|
||
branches: [master]
|
||
schedule:
|
||
- cron: '0 7 * * 1'
|
||
# Allows you to run this workflow manually from the Actions tab
|
||
workflow_dispatch:
|
||
|
||
jobs:
|
||
test:
|
||
name: Tests
|
||
runs-on: ubuntu-latest
|
||
strategy:
|
||
matrix:
|
||
nvim-versions: ['stable', 'nightly']
|
||
steps:
|
||
- name: Checkout
|
||
uses: actions/checkout@v4
|
||
- uses: rhysd/action-setup-vim@v1
|
||
with:
|
||
neovim: true
|
||
version: ${{ matrix.nvim-versions }}
|
||
- name: Setup ‘lua’
|
||
uses: leafo/gh-actions-lua@v8
|
||
with:
|
||
luaVersion: '5.1.5'
|
||
- name: Setup ‘luarocks’
|
||
uses: leafo/gh-actions-luarocks@v4
|
||
- name: Install dependencies
|
||
run: |
|
||
luarocks install luacheck
|
||
- name: Run linter
|
||
run: luacheck init.lua lua/
|
||
- name: Start nvim (no config)
|
||
run: |
|
||
nvim --version
|
||
nvim --headless -u /dev/null -c ":checkhealth" -c ":qa"
|
||
- name: Start nvim (using kickstart)
|
||
run: |
|
||
ln -sf $GITHUB_WORKSPACE "${XDG_CONFIG_HOME:-$HOME/.config}"/nvim
|
||
echo "${XDG_CONFIG_HOME:-$HOME/.config}"/nvim
|
||
ls -l "${XDG_CONFIG_HOME:-$HOME/.config}"/nvim
|
||
touch msg.log
|
||
nvim --headless -c ':Lazy! sync' -c ':qa' init.lua 2>&1 | tee -a msg.log
|
||
nvim --headless -c ':checkhealth' -c ':qa' init.lua 2>&1 | tee -a msg.log
|
||
echo -e '\n+++++++ msg.log ++++++++++++++'
|
||
cat msg.log
|
||
echo -e '\n+++++++++ errors: ++++++++++++\n'
|
||
grepnot(){ ! grep $1 $2; return $?;}
|
||
grepnot -i 'error' msg.log # exit with non-zero if "error" match is found
|
||
|
||
# Check Lua Formatting
|
||
stylua:
|
||
name: Check codestyle
|
||
runs-on: ubuntu-latest
|
||
steps:
|
||
- uses: actions/checkout@v4
|
||
- uses: JohnnyMorganz/stylua-action@v3
|
||
with:
|
||
token: ${{ secrets.GITHUB_TOKEN }}
|
||
version: latest
|
||
args: --check .
|