-
-
Notifications
You must be signed in to change notification settings - Fork 33
120 lines (107 loc) · 3.89 KB
/
ci.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
name: Tests
on: [push, pull_request]
concurrency:
group: ci-${{ github.ref }}
cancel-in-progress: true
jobs:
stylua:
name: Stylua
runs-on: ubuntu-latest
if: github.event_name == 'push' || (github.event_name == 'pull_request' && github.event.pull_request.head.repo.fork == true)
steps:
- uses: actions/checkout@v4
- uses: JohnnyMorganz/stylua-action@v4
with:
token: ${{ secrets.GITHUB_TOKEN }}
version: latest
args: --check .
legacy_tests:
name: legacy tests
runs-on: ${{ matrix.os }}
if: github.event_name == 'push' || (github.event_name == 'pull_request' && github.event.pull_request.head.repo.fork == true)
strategy:
matrix:
include:
- os: ubuntu-20.04
url: https://github.com/neovim/neovim/releases/download/nightly/nvim-linux64.tar.gz
manager: sudo apt-get
packages: -y fd-find esl-erlang elixir
- os: ubuntu-20.04
url: https://github.com/neovim/neovim/releases/download/v0.9.5/nvim-linux64.tar.gz
manager: sudo apt-get
packages: -y fd-find esl-erlang elixir
- os: ubuntu-20.04
url: https://github.com/neovim/neovim/releases/download/v0.8.3/nvim-linux64.tar.gz
manager: sudo apt-get
packages: -y fd-find esl-erlang elixir
- os: macos-14
url: https://github.com/neovim/neovim/releases/download/nightly/nvim-macos-x86_64.tar.gz
manager: brew
packages: fd elixir
- os: macos-14
url: https://github.com/neovim/neovim/releases/download/v0.9.5/nvim-macos.tar.gz
manager: brew
packages: fd elixir
- os: macos-14
url: https://github.com/neovim/neovim/releases/download/v0.8.3/nvim-macos.tar.gz
manager: brew
packages: fd elixir
steps:
- uses: actions/checkout@v4
- run: date +%F > todays-date
- name: Restore from todays cache
uses: actions/cache@v4
with:
path: _neovim
key: ${{ runner.os }}-${{ matrix.url }}-${{ hashFiles('todays-date') }}
- name: Add Repository
if: matrix.os == 'ubuntu-20.04'
run: wget https://packages.erlang-solutions.com/erlang-solutions_2.0_all.deb && sudo dpkg -i erlang-solutions_2.0_all.deb
- name: Prepare
run: |
${{ matrix.manager }} update
${{ matrix.manager }} install ${{ matrix.packages }}
test -d _neovim || {
mkdir -p _neovim
curl -sL ${{ matrix.url }} | tar xzf - --strip-components=1 -C "${PWD}/_neovim"
}
- name: Run legacy tests
env:
BUSTED_TIMEOUT: 600000
run: |
export PATH="${PWD}/_neovim/bin:${PATH}"
export VIM="${PWD}/_neovim/share/nvim/runtime"
nvim --version
bin/test
tests:
name: tests
runs-on: ${{ matrix.os }}
if: github.event_name == 'push' || (github.event_name == 'pull_request' && github.event.pull_request.head.repo.fork == true)
strategy:
matrix:
include:
- os: ubuntu-20.04
manager: sudo apt-get
packages: -y fd-find esl-erlang elixir
nvim-version: v0.8.3
- os: ubuntu-20.04
manager: sudo apt-get
packages: -y fd-find esl-erlang elixir
nvim-version: v0.9.5
- os: macos-14
manager: brew
packages: fd elixir
nvim-version: v0.8.3
- os: macos-14
manager: brew
packages: fd elixir
nvim-version: v0.9.5
steps:
- uses: actions/checkout@v4
- uses: extractions/setup-just@v2
- uses: leafo/gh-actions-lua@v10
with:
luaVersion: "5.1.5"
- uses: leafo/gh-actions-luarocks@v4
- name: Run nvim-test tests
run: just test ${{ matrix.nvim-version }}