exacl 0.4.0

Manipulate file system access control lists (ACL) on macOS, Linux, and FreeBSD
Documentation
# Config file for cirrus-ci.org

freebsd_instance:
  image_family: freebsd-12-2

# Adapted from https://github.com/Stebalien/xattr

task:
  name: CI / build (freebsd-acls)
  
  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
    - mdmfs -o acls -s 5m md /tmp/exacl_acls
    - 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
    - cargo build
    - cargo test --no-run   # Compile only
    # Run tests on our mem-based FS with acls.
    - export PATH="$PATH:/tmp/bin"
    - export TMPDIR=/tmp/exacl_acls
    - cargo test
    - ./tests/run_tests.sh
    - export TMPDIR=/tmp
    - ./ci/bindgen.sh