summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorJustin M. Keyes <justinkz@gmail.com>2026-04-22 18:25:07 -0400
committerGitHub <noreply@github.com>2026-04-22 18:25:07 -0400
commit82198d0a6622c750b0b86b721998b00ccf3e2b23 (patch)
treeca0d2583127cb48ab3d4146cecd640eef2def66c
parent451811b1be6236fdf69bd41f985d10bdfbcc5f0b (diff)
ci: drop cirrus #39321
Problem: cirrus will shutdown soon, and we are running out of minutes anyway, which causes ci failures. Solution: Drop cirrus config.
-rw-r--r--.cirrus.yml32
-rw-r--r--CONTRIBUTING.md4
-rw-r--r--cmake/RunTests.cmake6
-rw-r--r--runtime/doc/support.txt2
-rw-r--r--test/CMakeLists.txt1
-rw-r--r--test/functional/core/fileio_spec.lua6
-rw-r--r--test/functional/ex_cmds/write_spec.lua3
-rw-r--r--test/functional/plugin/man_spec.lua3
-rw-r--r--test/functional/terminal/ex_terminal_spec.lua3
-rw-r--r--test/harness.lua9
-rw-r--r--test/testutil.lua2
11 files changed, 8 insertions, 63 deletions
diff --git a/.cirrus.yml b/.cirrus.yml
deleted file mode 100644
index 4971cb0852..0000000000
--- a/.cirrus.yml
+++ /dev/null
@@ -1,32 +0,0 @@
-env:
- CIRRUS_CLONE_DEPTH: '2'
- LANG: en_US.UTF-8
-
-freebsd_task:
- name: FreeBSD
- only_if: $BRANCH != "master"
- freebsd_instance:
- image_family: freebsd-15-0-amd64-ufs
- timeout_in: 30m
- install_script:
- - pkg install -y cmake gmake ninja unzip wget gettext python git
- build_deps_script:
- - gmake deps
- build_script:
- - gmake CMAKE_EXTRA_FLAGS="-DCI_BUILD=ON" nvim
- workaround_script:
- # Run tests as user "cirrus" instead of root. This is required for the
- # permission-related tests to work correctly.
- - pw useradd cirrus -m
- - chown -R cirrus:cirrus .
- functionaltest_script:
- - set +e
- # `-k 0` tells ninja to continue running all targets even if some fail.
- - sudo -u cirrus cmake --build build --target functionaltest-parallel -j 2 -- -k 0
- - exit_code="$?"
- - cmake --build build --target functionaltest-summary
- - exit "$exit_code"
- unittest_script:
- - sudo -u cirrus gmake unittest
- oldtest_script:
- - sudo -u cirrus gmake oldtest
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 1af7434665..12722e88e6 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -142,7 +142,7 @@ the VCS/git logs more valuable (try `make lintcommit`). The structure of a commi
### Automated builds (CI)
-Each pull request must pass the automated builds on [Cirrus CI] and [GitHub Actions].
+Each pull request must pass the automated builds on [GitHub Actions].
- CI builds are compiled with [`-Werror`][gcc-warnings], so compiler warnings
will fail the build.
@@ -153,7 +153,6 @@ Each pull request must pass the automated builds on [Cirrus CI] and [GitHub Acti
Note that MSVC requires Release or RelWithDebInfo build type to work properly.
- The [lint](#lint) build checks that the code is formatted correctly and
passes various linter checks.
-- CI for FreeBSD runs on [Cirrus CI].
- To see CI results faster in your PR, you can temporarily set `TEST_FILE` in
[test.yml](https://github.com/neovim/neovim/blob/ad8e0cfc1dfd937c2577dc032e524c799a772693/.github/workflows/test.yml#L26).
@@ -353,7 +352,6 @@ as context, use the `-W` argument as well.
[549]: https://github.com/neovim/neovim/issues/549
[1820]: https://github.com/neovim/neovim/pull/1820
[ASan]: http://clang.llvm.org/docs/AddressSanitizer.html
-[Cirrus CI]: https://cirrus-ci.com/github/neovim/neovim
[GitHub Actions]: https://github.com/neovim/neovim/actions
[Vim]: https://github.com/vim/vim
[clangd]: https://clangd.llvm.org
diff --git a/cmake/RunTests.cmake b/cmake/RunTests.cmake
index c5c15bb08c..5cd397f52b 100644
--- a/cmake/RunTests.cmake
+++ b/cmake/RunTests.cmake
@@ -28,12 +28,6 @@ file(CREATE_LINK ${ROOT_DIR}/src ${TEST_XDG_PREFIX}/src SYMBOLIC)
file(CREATE_LINK ${ROOT_DIR}/test ${TEST_XDG_PREFIX}/test SYMBOLIC)
file(CREATE_LINK ${ROOT_DIR}/README.md ${TEST_XDG_PREFIX}/README.md SYMBOLIC)
-# TODO(dundargoc): The CIRRUS_CI environment variable isn't passed to here from
-# the main CMakeLists.txt, so we have to manually pass it to this script and
-# re-set the environment variable. Investigate if we can avoid manually setting
-# it like with the GITHUB_CI environment variable.
-set(ENV{CIRRUS_CI} ${CIRRUS_CI})
-
if(NOT DEFINED ENV{NVIM_LOG_FILE})
set(ENV{NVIM_LOG_FILE} ${BUILD_DIR}/nvim.log)
endif()
diff --git a/runtime/doc/support.txt b/runtime/doc/support.txt
index 1b374155b4..7a198214d3 100644
--- a/runtime/doc/support.txt
+++ b/runtime/doc/support.txt
@@ -17,7 +17,7 @@ Linux (arm64) 1 >= 2.6.32, glibc >= 2.12 Ubuntu 24.04
macOS (x86_64) 1 >= 11 macOS 15
macOS (arm64) 1 >= 11 macOS 26
Windows 64-bit 1 >= Windows 10 Version 2004 Windows Server 2025
-FreeBSD 1 >= 10 FreeBSD 15
+FreeBSD 2 >= 10
OpenBSD 2 >= 7
MinGW 2 MinGW-w64
Windows 64-bit 3 < Windows 10 Version 2004
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index cb367b9330..b186ffc6d6 100644
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -5,7 +5,6 @@ get_directory_property(TEST_INCLUDE_DIRS DIRECTORY ${PROJECT_SOURCE_DIR}/src/nvi
set(TEST_DIR ${CMAKE_CURRENT_SOURCE_DIR})
set(TEST_OPTIONS
-D BUILD_DIR=${CMAKE_BINARY_DIR}
- -D CIRRUS_CI=$ENV{CIRRUS_CI}
-D CI_BUILD=${CI_BUILD}
-D NVIM_PRG=$<TARGET_FILE:nvim_bin>
-D TEST_DIR=${TEST_DIR}
diff --git a/test/functional/core/fileio_spec.lua b/test/functional/core/fileio_spec.lua
index b1a8e21762..cd23e00b03 100644
--- a/test/functional/core/fileio_spec.lua
+++ b/test/functional/core/fileio_spec.lua
@@ -30,7 +30,6 @@ local write_file = t.write_file
local feed_command = n.feed_command
local skip = t.skip
local is_os = t.is_os
-local is_ci = t.is_ci
local set_session = n.set_session
describe('fileio', function()
@@ -125,7 +124,6 @@ describe('fileio', function()
end)
it('backup #9709', function()
- skip(is_ci('cirrus'))
clear({
args = {
'-i',
@@ -151,7 +149,6 @@ describe('fileio', function()
end)
it('backup with full path #11214', function()
- skip(is_ci('cirrus'))
clear()
mkdir('Xtest_backupdir')
command('set backup')
@@ -176,7 +173,6 @@ describe('fileio', function()
end)
it('backup with full path with spaces', function()
- skip(is_ci('cirrus'))
clear()
mkdir('Xtest_backupdir with spaces')
command('set backup')
@@ -201,7 +197,6 @@ describe('fileio', function()
end)
it('backup symlinked files #11349', function()
- skip(is_ci('cirrus'))
clear()
local initial_content = 'foo'
@@ -222,7 +217,6 @@ describe('fileio', function()
end)
it('backup symlinked files in first available backupdir #11349', function()
- skip(is_ci('cirrus'))
clear()
local initial_content = 'foo'
diff --git a/test/functional/ex_cmds/write_spec.lua b/test/functional/ex_cmds/write_spec.lua
index 38cc85fdb6..4ba3952d7e 100644
--- a/test/functional/ex_cmds/write_spec.lua
+++ b/test/functional/ex_cmds/write_spec.lua
@@ -10,7 +10,6 @@ local fn = n.fn
local api = n.api
local skip = t.skip
local is_os = t.is_os
-local is_ci = t.is_ci
local read_file = t.read_file
local fname = 'Xtest-functional-ex_cmds-write'
@@ -56,7 +55,6 @@ describe(':write', function()
end)
it('&backupcopy=no replaces symlink with new file', function()
- skip(is_ci('cirrus'))
command('set backupcopy=no')
write_file('Xtest_bkc_file.txt', 'content0')
if is_os('win') then
@@ -148,7 +146,6 @@ describe(':write', function()
end)
it('errors out correctly', function()
- skip(is_ci('cirrus'))
command('let $HOME=""')
eq(fn.fnamemodify('.', ':p:h'), fn.fnamemodify('.', ':p:h:~'))
-- Message from check_overwrite
diff --git a/test/functional/plugin/man_spec.lua b/test/functional/plugin/man_spec.lua
index c3fec441a9..ec86362dfb 100644
--- a/test/functional/plugin/man_spec.lua
+++ b/test/functional/plugin/man_spec.lua
@@ -12,8 +12,6 @@ local matches = t.matches
local tmpname = t.tmpname
local eq = t.eq
local pesc = vim.pesc
-local skip = t.skip
-local is_ci = t.is_ci
-- Collects all names passed to find_path() after attempting ":Man foo".
local function get_search_history(name)
@@ -247,7 +245,6 @@ describe(':Man', function()
end)
it('reports non-existent man pages for absolute paths', function()
- skip(is_ci('cirrus'))
local actual_file = tmpname()
-- actual_file must be an absolute path to an existent file for us to test against it
matches('^/.+', actual_file)
diff --git a/test/functional/terminal/ex_terminal_spec.lua b/test/functional/terminal/ex_terminal_spec.lua
index bb56a52fd6..d6ecd816e1 100644
--- a/test/functional/terminal/ex_terminal_spec.lua
+++ b/test/functional/terminal/ex_terminal_spec.lua
@@ -16,7 +16,6 @@ local ok = t.ok
local command = n.command
local skip = t.skip
local is_os = t.is_os
-local is_ci = t.is_ci
describe(':terminal', function()
local screen
@@ -52,7 +51,7 @@ describe(':terminal', function()
end)
it('reads output buffer on terminal reporting #4151', function()
- skip(is_ci('cirrus') or is_os('win'))
+ skip(is_os('win'))
if is_os('win') then
command(
[[terminal powershell -NoProfile -NoLogo -Command Write-Host -NoNewline "\"$([char]27)[6n\""; Start-Sleep -Milliseconds 500 ]]
diff --git a/test/harness.lua b/test/harness.lua
index 14fa82ea10..4005e7ba56 100644
--- a/test/harness.lua
+++ b/test/harness.lua
@@ -131,7 +131,7 @@ local uv = vim.uv
--- Public test harness module surface.
--- @class test.harness
---- @field is_ci fun(name?: 'cirrus'|'github'): boolean
+--- @field is_ci fun(name?: 'github'): boolean
--- @field on_suite_end fun(callback: fun()): fun()
--- @field read_nvim_log fun(logfile?: string, ci_rename?: boolean): string?
local M = {}
@@ -151,14 +151,13 @@ local function now_seconds()
end
--- Check whether the harness is running in CI, optionally for one provider.
---- @param name? 'cirrus'|'github'
+--- @param name? 'github'
--- @return boolean
function M.is_ci(name)
local any_provider = (name == nil)
- assert(any_provider or name == 'github' or name == 'cirrus')
+ assert(any_provider or name == 'github')
local github_actions = ((any_provider or name == 'github') and nil ~= os.getenv('GITHUB_ACTIONS'))
- local cirrus_ci = ((any_provider or name == 'cirrus') and nil ~= os.getenv('CIRRUS_CI'))
- return github_actions or cirrus_ci
+ return github_actions
end
--- Read the last `keep` lines from a file.
diff --git a/test/testutil.lua b/test/testutil.lua
index b12f5827da..6745613ac1 100644
--- a/test/testutil.lua
+++ b/test/testutil.lua
@@ -790,7 +790,7 @@ function M.write_file(name, text, no_dedent, append)
file:close()
end
---- @param name? 'cirrus'|'github'
+--- @param name? 'github'
--- @return boolean
function M.is_ci(name)
return harness.is_ci(name)