-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy path.cirrus.yml
60 lines (54 loc) · 1.72 KB
/
.cirrus.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
# Config file for cirrus-ci.org
# Adapted from https://github.com/Stebalien/xattr
task:
name: CI / build (freebsd)
matrix:
- name: CI / build (freebsd-13.3)
freebsd_instance:
image_family: freebsd-13-3
- name: CI / build (freebsd-14.0)
freebsd_instance:
image_family: freebsd-14-0
sysinfo_script:
# Record info about the test environment.
- mount
- df -h
- sysctl hw.model hw.ncpu hw.physmem
- freebsd-version
# Create a 5 MB memory based FS with acls enabled and
# mount it to a sub-directory of /tmp (where it won't
# interfere with other uses of /tmp.)
- mkdir /tmp/exacl_acls /tmp/exacl_nfsv4acls
- mdmfs -o acls -s 5m md /tmp/exacl_acls
- mdmfs -o nfsv4acls -s 5m md /tmp/exacl_nfsv4acls
- mount
- env
- pkg info
setup_script:
# Install Rust.
- pkg install -y bash llvm11
- curl https://sh.rustup.rs -sSf --output rustup.sh
- sh rustup.sh -y
# Install shunit2.
- mkdir -p /tmp/bin
- curl https://raw.githubusercontent.com/kward/shunit2/master/shunit2 -sSf --output /tmp/bin/shunit2
- chmod ugo+x /tmp/bin/shunit2
test_script:
- . $HOME/.cargo/env
# Set up path for shunit2.
- export PATH="$PATH:/tmp/bin"
- cargo fetch
- cargo build # Build no-serde
- cargo build --features serde # Build with serde
- cargo test --no-run --features serde # Compile only
# Run tests on our mem-based FS with acls.
- export TMPDIR=/tmp/exacl_acls
- cargo test --features serde
- export TMPDIR=/tmp/exacl_nfsv4acls
- cargo test --features serde
- ./tests/run_tests.sh
- export TMPDIR=/tmp
- ./ci/bindgen.sh
lint_script:
- . $HOME/.cargo/env
- ./ci/lint.sh