aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.github/workflows/ci.yml66
1 files changed, 60 insertions, 6 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 560ffa7710..e22d99067a 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -18,11 +18,6 @@ concurrency:
jobs:
lint:
- # This job tests two things: it lints the code but also builds neovim using
- # system dependencies instead of bundled dependencies. This is to make sure
- # we are able to build neovim without pigeonholing ourselves into specifics
- # of the bundled dependencies.
-
if: (github.event_name == 'pull_request' && github.base_ref == 'master') || (github.event_name == 'push' && github.ref == 'refs/heads/master')
runs-on: ubuntu-20.04
timeout-minutes: 10
@@ -65,7 +60,6 @@ jobs:
ninja-build \
pkg-config
-
- name: Cache uncrustify
id: cache-uncrustify
uses: actions/cache@v3
@@ -138,6 +132,66 @@ jobs:
run: |
git diff --color --exit-code
+ - name: Cache dependencies
+ run: ./ci/before_cache.sh
+
+ lintc:
+ # This job tests two things: it lints the code but also builds neovim using
+ # system dependencies instead of bundled dependencies. This is to make sure
+ # we are able to build neovim without pigeonholing ourselves into specifics
+ # of the bundled dependencies.
+
+ if: (github.event_name == 'pull_request' && github.base_ref == 'master') || (github.event_name == 'push' && github.ref == 'refs/heads/master')
+ runs-on: ubuntu-20.04
+ timeout-minutes: 10
+ env:
+ CC: gcc
+ steps:
+ - uses: actions/checkout@v3
+
+ - name: Setup common environment variables
+ run: ./.github/workflows/env.sh lint
+
+ - name: Install apt packages
+ run: |
+ sudo add-apt-repository ppa:neovim-ppa/stable
+ sudo apt-get update
+ sudo apt-get install -y \
+ autoconf \
+ automake \
+ build-essential \
+ cmake \
+ gettext \
+ libluajit-5.1-dev \
+ libmsgpack-dev \
+ libtermkey-dev \
+ libtool-bin \
+ libtree-sitter-dev \
+ libunibilium-dev \
+ libuv1-dev \
+ libvterm-dev \
+ locales \
+ lua-busted \
+ lua-check \
+ lua-filesystem \
+ lua-inspect \
+ lua-lpeg \
+ lua-luv-dev \
+ lua-nvim \
+ luajit \
+ ninja-build \
+ pkg-config
+
+ - name: Cache artifacts
+ uses: actions/cache@v3
+ with:
+ path: |
+ ${{ env.CACHE_NVIM_DEPS_DIR }}
+ key: lint-${{ hashFiles('cmake/*', '**/CMakeLists.txt', '!cmake.deps/**CMakeLists.txt') }}-${{ github.base_ref }}
+
+ - name: Build third-party deps
+ run: ./ci/before_script.sh
+
- name: Build nvim
run: ./ci/run_tests.sh build_nvim