2022-11-06 11:53:49 -08:00
env :
CIRRUS_CLONE_DEPTH : 1
CI : 1
linux_task :
matrix :
- name : alpine
container : &step
image : ghcr.io/fish-shell/fish-ci/alpine:latest
memory : 4GB
- name : centos7
container :
<< : *step
image : ghcr.io/fish-shell/fish-ci/centos7:latest
- name : centos8
container :
<< : *step
image : ghcr.io/fish-shell/fish-ci/centos8:latest
- name : focal-32bit
container :
<< : *step
image : ghcr.io/fish-shell/fish-ci/focal-32bit:latest
tests_script :
# cirrus at times gives us 32 procs and 2 GB of RAM
# Unrestriced parallelism results in OOM
- lscpu || true
- (cat /proc/meminfo | grep MemTotal) || true
- mkdir build && cd build
- cmake -G Ninja -DCMAKE_BUILD_TYPE=Debug -DCTEST_PARALLEL_LEVEL=6 ..
- ninja -j 6 fish fish_tests
- ninja fish_run_tests
2022-11-12 14:36:18 -08:00
only_if : $CIRRUS_REPO_OWNER == 'fish-shell'
2022-11-06 11:53:49 -08:00
linux_arm_task :
matrix :
- name : focal-arm64
arm_container :
image : ghcr.io/fish-shell/fish-ci/focal-arm64
2022-11-12 14:36:18 -08:00
only_if : $CIRRUS_REPO_OWNER == 'fish-shell'
2022-11-06 11:53:49 -08:00
tests_script :
# cirrus at times gives us 32 procs and 2 GB of RAM
# Unrestriced parallelism results in OOM
- lscpu || true
- (cat /proc/meminfo | grep MemTotal) || true
- mkdir build && cd build
- cmake -G Ninja -DCMAKE_BUILD_TYPE=Debug -DCTEST_PARALLEL_LEVEL=6 ..
- ninja -j 6 fish fish_tests
- file ./fish
- ninja fish_run_tests
2022-11-12 14:36:18 -08:00
only_if : $CIRRUS_REPO_OWNER == 'fish-shell'
2022-11-06 11:53:49 -08:00
freebsd_task :
matrix :
- name : FreeBSD 13
freebsd_instance :
2023-09-09 08:41:43 +02:00
image : freebsd-13-2-release-amd64
2022-11-06 11:53:49 -08:00
tests_script :
- pkg install -y cmake devel/pcre2 devel/ninja misc/py-pexpect git
# BSDs have the following behavior: root may open or access files even if
# the mode bits would otherwise disallow it. For example root may open()
# a file with write privileges even if the file has mode 400. This breaks
# our tests for e.g. cd and path. So create a new unprivileged user to run tests.
- pw user add -n fish-user -s /bin/csh -d /home/fish-user
- mkdir -p /home/fish-user
- chown -R fish-user /home/fish-user
- mkdir build && cd build
- chown -R fish-user ..
- sudo -u fish-user -s whoami
- sudo -u fish-user -s cmake -G Ninja -DCMAKE_BUILD_TYPE=Debug -DCTEST_PARALLEL_LEVEL=1 ..
- sudo -u fish-user -s ninja -j 6 fish fish_tests
- sudo -u fish-user -s ninja fish_run_tests
2022-11-12 14:36:18 -08:00
only_if : $CIRRUS_REPO_OWNER == 'fish-shell'