mirror of
https://github.com/neovim/neovim.git
synced 2024-12-19 10:45:16 -07:00
ci: containerize the external dependencies test
Cirrus ci automatically pushes/caches docker images, which makes containerization much simpler to handle. Moving this job to cirrus ci shortens the job by a minute, and reduces github actions CI usage by two minutes per PR.
This commit is contained in:
parent
a1b045f60a
commit
7d0479c558
14
.cirrus.yml
14
.cirrus.yml
@ -26,3 +26,17 @@ freebsd_task:
|
||||
- sudo -u cirrus gmake unittest
|
||||
oldtest_script:
|
||||
- sudo -u cirrus gmake oldtest
|
||||
|
||||
with_external_deps_task:
|
||||
container:
|
||||
dockerfile: ci/Dockerfile.external_deps
|
||||
deps_script:
|
||||
# Ideally all dependencies should external for this job, but some
|
||||
# dependencies don't have the required version available. We use the
|
||||
# bundled versions for these with the hopes of being able to remove them
|
||||
# later on.
|
||||
- cmake -S cmake.deps -B .deps -G Ninja -D USE_BUNDLED=OFF -D USE_BUNDLED_LIBVTERM=ON -D USE_BUNDLED_TS=ON
|
||||
- cmake --build .deps
|
||||
build_script:
|
||||
- cmake --preset ci
|
||||
- cmake --build build
|
||||
|
44
.github/workflows/test.yml
vendored
44
.github/workflows/test.yml
vendored
@ -353,47 +353,3 @@ jobs:
|
||||
run: |
|
||||
cd test/old/testdir
|
||||
mingw32-make VERBOSE=1
|
||||
|
||||
with-external-deps:
|
||||
runs-on: ubuntu-22.04
|
||||
timeout-minutes: 10
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
sudo add-apt-repository ppa:neovim-ppa/stable
|
||||
./.github/scripts/install_deps.sh
|
||||
sudo apt-get install -y \
|
||||
libluajit-5.1-dev \
|
||||
libmsgpack-dev \
|
||||
libtermkey-dev \
|
||||
libunibilium-dev \
|
||||
libuv1-dev \
|
||||
lua-filesystem \
|
||||
lua-lpeg \
|
||||
luajit \
|
||||
lua-luv-dev
|
||||
# libtree-sitter-dev \
|
||||
# libvterm-dev
|
||||
|
||||
# Remove comments from packages once we start using these external
|
||||
# dependencies.
|
||||
|
||||
- uses: ./.github/actions/cache
|
||||
|
||||
- name: Build third-party deps
|
||||
run: |
|
||||
# Ideally all dependencies should external for this job, but some
|
||||
# dependencies don't have the required version available. We use the
|
||||
# bundled versions for these with the hopes of being able to remove them
|
||||
# later on.
|
||||
cmake -S cmake.deps -B .deps -G Ninja -D USE_BUNDLED=OFF \
|
||||
-D USE_BUNDLED_LIBVTERM=ON \
|
||||
-D USE_BUNDLED_TS=ON
|
||||
cmake --build .deps
|
||||
|
||||
- name: Build
|
||||
run: |
|
||||
cmake --preset ci
|
||||
cmake --build build
|
||||
|
22
ci/Dockerfile.external_deps
Normal file
22
ci/Dockerfile.external_deps
Normal file
@ -0,0 +1,22 @@
|
||||
FROM ubuntu:22.04
|
||||
|
||||
RUN apt-get update && \
|
||||
apt-get install -y software-properties-common && \
|
||||
add-apt-repository ppa:neovim-ppa/stable && \
|
||||
apt-get install -y ninja-build \
|
||||
gettext \
|
||||
cmake \
|
||||
unzip \
|
||||
curl \
|
||||
git \
|
||||
libluajit-5.1-dev \
|
||||
libmsgpack-dev \
|
||||
libtermkey-dev \
|
||||
libunibilium-dev \
|
||||
libuv1-dev \
|
||||
lua-filesystem \
|
||||
lua-lpeg \
|
||||
luajit \
|
||||
lua-luv-dev \
|
||||
libtree-sitter-dev \
|
||||
libvterm-dev
|
Loading…
Reference in New Issue
Block a user