Skip to content

Workflow file for this run

name: ci
on:
push:
pull_request:
branches:
- 'master'
concurrency:
group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.head_ref || github.repository_owner == 'neovim' && github.sha || github.ref_name }}
cancel-in-progress: true
env:
PYTEST_ADDOPTS: '-vv'
jobs:
lint:
runs-on: ubuntu-latest
env:
TOXENV: 'checkqa,docs'
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
cache: 'pip'
python-version: 3.11
- name: install dependencies
run: pip install tox tox-gh-actions
- name: test
run: tox
test:
strategy:
fail-fast: false
matrix:
python: ['3.10', '3.11']
target: ['tests']
os: ['ubuntu-latest', 'macos-latest', 'windows-latest']
include:
- os: ubuntu-latest
NIGHTLY: nvim-linux64.tar.gz
NVIM_BIN_PATH: nvim-linux64/bin
EXTRACT: tar xzf
- os: macos-latest
NIGHTLY: nvim-macos.tar.gz
NVIM_BIN_PATH: nvim-macos/bin
EXTRACT: tar xzf
- os: windows-latest
NIGHTLY: nvim-win64.zip
NVIM_BIN_PATH: nvim-win64/bin
EXTRACT: unzip
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
cache: 'pip'
python-version: ${{ matrix.python }}
- if: matrix.target == 'checkqa'
run: printf 'TOXENV=checkqa,docs\n' >> $GITHUB_ENV
- name: install neovim
if: matrix.target == 'tests'
run: |
curl -LO 'https://github.com/neovim/neovim/releases/download/nightly/${{ matrix.NIGHTLY }}'
${{ matrix.EXTRACT }} ${{ matrix.NIGHTLY }}
echo '${{ runner.os }}'
- name: update path (bash)
if: matrix.target == 'tests' && runner.os != 'Windows'
run: echo "$(pwd)/${{ matrix.NVIM_BIN_PATH }}" >> $GITHUB_PATH
- name: update path (windows)
if: matrix.target == 'tests' && runner.os == 'Windows'
run: echo "$(pwd)/${{ matrix.NVIM_BIN_PATH }}" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
- name: install dependencies
run: |
# pip install . # Install from setup.py
# pip install -q pytest
# python -m pip install --upgrade pip
pip install tox tox-gh-actions
- name: test
run: |
echo $PATH
which nvim
nvim --version
tox