Update ci.yml #29
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: [push, pull_request] | |
jobs: | |
unit-tests: | |
name: Unit tests | |
strategy: | |
matrix: | |
# os: [ubuntu-latest, macos-latest] | |
os: [ubuntu-latest] | |
rust_profile: [minimal] | |
rust_channel: [stable] | |
neovim: [false, true] | |
version: [v8.2.3140, stable, nightly, v0.10.0] | |
exclude: | |
# pin to support Vim >= v8.2.* (3140 is arbitrary, when is popup_list() released?) | |
# try to support nvim >= 0.6.0 and neovim nightly is unstable | |
# vim stable is still v8.1.*, and neovim nightly is quite unstable | |
- neovim: true | |
version: nightly | |
- neovim: true | |
version: v8.2.3140 | |
- neovim: false | |
version: v0.10.0 | |
- neovim: false | |
version: stable | |
runs-on: ${{ matrix.os }} | |
steps: | |
- uses: actions/checkout@v2 | |
- name: install rust toolchain | |
uses: actions-rs/toolchain@v1 | |
with: | |
profile: ${{ matrix.rust_profile }} | |
toolchain: ${{ matrix.rust_channel }} | |
override: true | |
components: clippy | |
- name: Checkout thinca/vim-themis | |
uses: actions/checkout@v2 | |
with: | |
repository: thinca/vim-themis | |
path: vim-themis | |
- name: Checkout junegunn/vader.vim | |
uses: actions/checkout@v2 | |
with: | |
repository: junegunn/vader.vim | |
path: vader.vim | |
- name: Install Vim or Neovim | |
uses: rhysd/action-setup-vim@v1 | |
id: vim | |
with: | |
version: ${{ matrix.version }} | |
neovim: ${{ matrix.neovim }} | |
- name: Report Vim Version | |
env: | |
VIM_BIN: ${{ steps.vim.outputs.executable }} | |
run: | | |
$VIM_BIN --version | |
- name: Unit-tests with themis | |
env: | |
THEMIS_VIM: ${{ steps.vim.outputs.executable }} | |
PROFILE_LOG: profile.txt | |
run: | | |
echo "${THEMIS_VIM}" | |
if [ -n "$(find test -type f -name '*.vim')" ]; then | |
./vim-themis/bin/themis --recursive --reporter tap test | |
fi | |
- name: Unit-tests with vader (neovim) | |
env: | |
VIM_BIN: ${{ steps.vim.outputs.executable }} | |
if: ${{ matrix.neovim }} | |
run: | | |
echo "${VIM_BIN}" | |
if [ -n "$(find test -type f -name 'nvim-*.vader')" ]; then | |
$VIM_BIN -E -s -N -u test/ci.vimrc -c 'Vader! test/**/nvim-*.vader' | |
fi | |
- name: Unit-tests with vader (vim) | |
env: | |
VIM_BIN: ${{ steps.vim.outputs.executable }} | |
if: ${{ !matrix.neovim }} | |
run: | | |
echo "${VIM_BIN}" | |
if [ -n "$(find test -type f -name 'vim-*.vader')" ]; then | |
$VIM_BIN -E -s -N -u test/ci.vimrc -c 'Vader! test/**/vim-*.vader' | |
fi | |
lint: | |
name: Lint | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: '3.10' | |
- run: pip install vim-vint | |
- run: vint --style-problem --verbose . |