mirror of
https://github.com/tokio-rs/tokio.git
synced 2026-08-07 00:00:09 +02:00
72 lines
2.7 KiB
YAML
72 lines
2.7 KiB
YAML
only_if: $CIRRUS_TAG == '' && ($CIRRUS_PR != '' || $CIRRUS_BRANCH == 'master' || $CIRRUS_BRANCH =~ 'tokio-.*')
|
|
auto_cancellation: $CIRRUS_BRANCH != 'master' && $CIRRUS_BRANCH !=~ 'tokio-.*'
|
|
freebsd_instance:
|
|
image_family: freebsd-14-2
|
|
env:
|
|
RUST_STABLE: stable
|
|
RUST_NIGHTLY: nightly-2025-01-25
|
|
RUSTFLAGS: -D warnings
|
|
# This excludes unstable features like io_uring, which require '--cfg tokio_unstable'.
|
|
TOKIO_STABLE_FEATURES: full,test-util
|
|
|
|
# Test FreeBSD in a full VM on cirrus-ci.com. Test the i686 target too, in the
|
|
# same VM. The binary will be built in 32-bit mode, but will execute on a
|
|
# 64-bit kernel and in a 64-bit environment. Our tests don't execute any of
|
|
# the system's binaries, so the environment shouldn't matter.
|
|
task:
|
|
name: FreeBSD 64-bit
|
|
setup_script:
|
|
- pkg install -y bash
|
|
- curl https://sh.rustup.rs -sSf --output rustup.sh
|
|
- sh rustup.sh -y --profile minimal --default-toolchain $RUST_STABLE
|
|
- . $HOME/.cargo/env
|
|
- |
|
|
echo "~~~~ rustc --version ~~~~"
|
|
rustc --version
|
|
test_script:
|
|
- . $HOME/.cargo/env
|
|
- cargo test --all --features $TOKIO_STABLE_FEATURES
|
|
# Free the disk space before the next build,
|
|
# otherwise cirrus-ci complains about "No space left on device".
|
|
- cargo clean
|
|
# Enable all unstable features except `taskdump`, which is Linux-only.
|
|
- |
|
|
RUSTFLAGS="$RUSTFLAGS --cfg tokio_unstable" \
|
|
RUSTDOCFLAGS="$RUSTDOCFLAGS --cfg tokio_unstable" \
|
|
cargo test \
|
|
--features $TOKIO_STABLE_FEATURES,io-uring,tracing
|
|
|
|
task:
|
|
name: FreeBSD docs
|
|
env:
|
|
RUSTFLAGS: --cfg docsrs --cfg tokio_unstable
|
|
RUSTDOCFLAGS: --cfg docsrs --cfg tokio_unstable -Dwarnings
|
|
setup_script:
|
|
- pkg install -y bash
|
|
- curl https://sh.rustup.rs -sSf --output rustup.sh
|
|
- sh rustup.sh -y --profile minimal --default-toolchain $RUST_NIGHTLY
|
|
- . $HOME/.cargo/env
|
|
- |
|
|
echo "~~~~ rustc --version ~~~~"
|
|
rustc --version
|
|
test_script:
|
|
- . $HOME/.cargo/env
|
|
# We use `--features $TOKIO_STABLE_FEATURES,io-uring,tracing` instead of
|
|
# `--all-features` to exclude `taskdump`, which is Linux-only.
|
|
- cargo doc --lib --no-deps --features $TOKIO_STABLE_FEATURES,io-uring,tracing --document-private-items
|
|
|
|
task:
|
|
name: FreeBSD 32-bit
|
|
setup_script:
|
|
- pkg install -y bash
|
|
- curl https://sh.rustup.rs -sSf --output rustup.sh
|
|
- sh rustup.sh -y --profile minimal --default-toolchain $RUST_STABLE
|
|
- . $HOME/.cargo/env
|
|
- rustup target add i686-unknown-freebsd
|
|
- |
|
|
echo "~~~~ rustc --version ~~~~"
|
|
rustc --version
|
|
test_script:
|
|
- . $HOME/.cargo/env
|
|
- cargo test --all --features $TOKIO_STABLE_FEATURES --target i686-unknown-freebsd
|