From 0994441552ab2bf772a752a8937b8fab3bbb222e Mon Sep 17 00:00:00 2001 From: Alan Somers Date: Sat, 26 Aug 2023 09:48:50 -0600 Subject: [PATCH] DO NOT MERGE disable most CI tasks To check if cross is working --- .cirrus.yml | 588 ++++++++++++++++++++++++++-------------------------- 1 file changed, 294 insertions(+), 294 deletions(-) diff --git a/.cirrus.yml b/.cirrus.yml index 522bdafcdb..ece3ff0602 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -36,61 +36,61 @@ test: &TEST # 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: - env: - TARGET: x86_64-unknown-freebsd - matrix: - - name: FreeBSD 14 amd64 & i686 - freebsd_instance: - image_family: freebsd-14-0-snap - cpu: 1 - # Enable tests that would fail on FreeBSD 12 - RUSTFLAGS: --cfg fbsd14 -D warnings - RUSTDOCFLAGS: --cfg fbsd14 - setup_script: - - kldload mqueuefs - - fetch https://sh.rustup.rs -o rustup.sh - - sh rustup.sh -y --profile=minimal --default-toolchain $MSRV - - . $HOME/.cargo/env - - rustup target add i686-unknown-freebsd - - rustup component add clippy - << : *TEST - i386_test_script: - - . $HOME/.cargo/env - - cargo build --target i686-unknown-freebsd --all-features - - cargo doc --no-deps --target i686-unknown-freebsd --all-features - - cargo test --target i686-unknown-freebsd --all-features - i386_feature_script: - - . $HOME/.cargo/env - - if [ -z "$NOHACK" ]; then cargo hack check --each-feature --target i686-unknown-freebsd; fi - before_cache_script: rm -rf $CARGO_HOME/registry/index +#task: + #env: + #TARGET: x86_64-unknown-freebsd + #matrix: + #- name: FreeBSD 14 amd64 & i686 + #freebsd_instance: + #image_family: freebsd-14-0-snap + #cpu: 1 + ## Enable tests that would fail on FreeBSD 12 + #RUSTFLAGS: --cfg fbsd14 -D warnings + #RUSTDOCFLAGS: --cfg fbsd14 + #setup_script: + #- kldload mqueuefs + #- fetch https://sh.rustup.rs -o rustup.sh + #- sh rustup.sh -y --profile=minimal --default-toolchain $MSRV + #- . $HOME/.cargo/env + #- rustup target add i686-unknown-freebsd + #- rustup component add clippy + #<< : *TEST + #i386_test_script: + #- . $HOME/.cargo/env + #- cargo build --target i686-unknown-freebsd --all-features + #- cargo doc --no-deps --target i686-unknown-freebsd --all-features + #- cargo test --target i686-unknown-freebsd --all-features + #i386_feature_script: + #- . $HOME/.cargo/env + #- if [ -z "$NOHACK" ]; then cargo hack check --each-feature --target i686-unknown-freebsd; fi + #before_cache_script: rm -rf $CARGO_HOME/registry/index -# Test macOS aarch64 in a full VM -task: - name: macOS aarch64 - env: - TARGET: aarch64-apple-darwin - macos_instance: - image: ghcr.io/cirruslabs/macos-ventura-base:latest - setup_script: - - curl --proto '=https' --tlsv1.2 -sSf -o rustup.sh https://sh.rustup.rs - - sh rustup.sh -y --profile=minimal --default-toolchain $MSRV - - . $HOME/.cargo/env - - rustup component add clippy - << : *TEST - before_cache_script: rm -rf $CARGO_HOME/registry/index +## Test macOS aarch64 in a full VM +#task: + #name: macOS aarch64 + #env: + #TARGET: aarch64-apple-darwin + #macos_instance: + #image: ghcr.io/cirruslabs/macos-ventura-base:latest + #setup_script: + #- curl --proto '=https' --tlsv1.2 -sSf -o rustup.sh https://sh.rustup.rs + #- sh rustup.sh -y --profile=minimal --default-toolchain $MSRV + #- . $HOME/.cargo/env + #- rustup component add clippy + #<< : *TEST + #before_cache_script: rm -rf $CARGO_HOME/registry/index # Use cross for QEMU-based testing # cross needs to execute Docker, so we must use Cirrus's Docker Builder task. task: - depends_on: - - FreeBSD 14 amd64 & i686 - - Linux x86_64 - - macOS aarch64 - - Rust Formatter - - OpenBSD x86_64 - - Minver - - Rust Stable + #depends_on: + #- FreeBSD 14 amd64 & i686 + #- Linux x86_64 + #- macOS aarch64 + #- Rust Formatter + #- OpenBSD x86_64 + #- Minver + #- Rust Stable env: RUST_TEST_THREADS: 1 # QEMU works best with 1 thread HOME: /tmp/home @@ -99,33 +99,33 @@ task: RUSTFLAGS: --cfg qemu -D warnings TOOL: cross matrix: - - name: Linux arm gnueabi - env: - TARGET: arm-unknown-linux-gnueabi - - name: Linux armv7 gnueabihf - env: - TARGET: armv7-unknown-linux-gnueabihf + #- name: Linux arm gnueabi + #env: + #TARGET: arm-unknown-linux-gnueabi + #- name: Linux armv7 gnueabihf + #env: + #TARGET: armv7-unknown-linux-gnueabihf - name: Linux i686 env: TARGET: i686-unknown-linux-gnu - - name: Linux i686 musl - env: - TARGET: i686-unknown-linux-musl - - name: Linux MIPS - env: - TARGET: mips-unknown-linux-gnu - - name: Linux MIPS64 - env: - TARGET: mips64-unknown-linux-gnuabi64 - - name: Linux MIPS64 el - env: - TARGET: mips64el-unknown-linux-gnuabi64 - - name: Linux mipsel - env: - TARGET: mipsel-unknown-linux-gnu - - name: Linux powerpc64le - env: - TARGET: powerpc64le-unknown-linux-gnu + #- name: Linux i686 musl + #env: + #TARGET: i686-unknown-linux-musl + #- name: Linux MIPS + #env: + #TARGET: mips-unknown-linux-gnu + #- name: Linux MIPS64 + #env: + #TARGET: mips64-unknown-linux-gnuabi64 + #- name: Linux MIPS64 el + #env: + #TARGET: mips64el-unknown-linux-gnuabi64 + #- name: Linux mipsel + #env: + #TARGET: mipsel-unknown-linux-gnu + #- name: Linux powerpc64le + #env: + #TARGET: powerpc64le-unknown-linux-gnu compute_engine_instance: image_project: cirrus-images image: family/docker-builder @@ -142,229 +142,229 @@ task: before_cache_script: rm -rf $CARGO_HOME/registry/index # Tasks for Linux native builds -task: - matrix: - - name: Linux aarch64 - arm_container: - image: rust:1.65.0 - cpu: 1 - depends_on: - - FreeBSD 14 amd64 & i686 - - Linux x86_64 - - macOS aarch64 - - Rust Formatter - - OpenBSD x86_64 - - Minver - - Rust Stable - env: - TARGET: aarch64-unknown-linux-gnu - - name: Linux x86_64 - container: - image: rust:1.65.0 - cpu: 1 - env: - TARGET: x86_64-unknown-linux-gnu - - name: Linux x86_64 musl - container: - image: rust:1.65.0 - cpu: 1 - depends_on: - - FreeBSD 14 amd64 & i686 - - Linux x86_64 - - macOS aarch64 - - Rust Formatter - - OpenBSD x86_64 - - Minver - - Rust Stable - env: - TARGET: x86_64-unknown-linux-musl - setup_script: - - rustup target add $TARGET - - rustup component add clippy - << : *TEST - before_cache_script: rm -rf $CARGO_HOME/registry/index +#task: + #matrix: + #- name: Linux aarch64 + #arm_container: + #image: rust:1.65.0 + #cpu: 1 + #depends_on: + #- FreeBSD 14 amd64 & i686 + #- Linux x86_64 + #- macOS aarch64 + #- Rust Formatter + #- OpenBSD x86_64 + #- Minver + #- Rust Stable + #env: + #TARGET: aarch64-unknown-linux-gnu + #- name: Linux x86_64 + #container: + #image: rust:1.65.0 + #cpu: 1 + #env: + #TARGET: x86_64-unknown-linux-gnu + #- name: Linux x86_64 musl + #container: + #image: rust:1.65.0 + #cpu: 1 + #depends_on: + #- FreeBSD 14 amd64 & i686 + #- Linux x86_64 + #- macOS aarch64 + #- Rust Formatter + #- OpenBSD x86_64 + #- Minver + #- Rust Stable + #env: + #TARGET: x86_64-unknown-linux-musl + #setup_script: + #- rustup target add $TARGET + #- rustup component add clippy + #<< : *TEST + #before_cache_script: rm -rf $CARGO_HOME/registry/index -task: - name: Rust Stable - container: - image: rust:latest - cpu: 1 - env: - TARGET: x86_64-unknown-linux-gnu - setup_script: - - rustup component add clippy - << : *TEST - before_cache_script: rm -rf $CARGO_HOME/registry/index +#task: + #name: Rust Stable + #container: + #image: rust:latest + #cpu: 1 + #env: + #TARGET: x86_64-unknown-linux-gnu + #setup_script: + #- rustup component add clippy + #<< : *TEST + #before_cache_script: rm -rf $CARGO_HOME/registry/index -# Tasks for cross-compiling, but no testing -task: - container: - image: rust:1.65.0 - cpu: 1 - depends_on: - - FreeBSD 14 amd64 & i686 - - Linux x86_64 - - macOS aarch64 - - Rust Formatter - - OpenBSD x86_64 - - Minver - - Rust Stable - env: - BUILD: check - HOST: x86_64-unknown-linux-gnu - matrix: - # Cross claims to support Android, but when it tries to run Nix's tests it - # reports undefined symbol references. - - name: Android aarch64 - env: - TARGET: aarch64-linux-android - - name: Android arm - env: - TARGET: arm-linux-androideabi - - name: Android armv7 - env: - TARGET: armv7-linux-androideabi - - name: Android i686 - env: - TARGET: i686-linux-android - - name: Android x86_64 - env: - TARGET: x86_64-linux-android - - name: Linux arm-musleabi - env: - TARGET: arm-unknown-linux-musleabi - - name: Fuchsia x86_64 - env: - TARGET: x86_64-fuchsia - - name: Illumos - env: - TARGET: x86_64-unknown-illumos - # Cross claims to support running tests on iOS, but it actually doesn't. - # https://github.com/rust-embedded/cross/issues/535 - - name: iOS aarch64 - env: - # cargo hack tries to invoke the iphonesimulator SDK for iOS - NOHACK: 1 - TARGET: aarch64-apple-ios - # Cross claims to support Linux powerpc64, but it really doesn't. - # https://github.com/rust-embedded/cross/issues/441 - - name: Linux powerpc64 - env: - TARGET: powerpc64-unknown-linux-gnu - - name: Linux s390x - env: - TARGET: s390x-unknown-linux-gnu - - name: Linux x32 - env: - TARGET: x86_64-unknown-linux-gnux32 - - name: NetBSD x86_64 - env: - TARGET: x86_64-unknown-netbsd - setup_script: - - rustup target add $TARGET - - rustup component add clippy - << : *BUILD - before_cache_script: rm -rf $CARGO_HOME/registry/index +## Tasks for cross-compiling, but no testing +#task: + #container: + #image: rust:1.65.0 + #cpu: 1 + #depends_on: + #- FreeBSD 14 amd64 & i686 + #- Linux x86_64 + #- macOS aarch64 + #- Rust Formatter + #- OpenBSD x86_64 + #- Minver + #- Rust Stable + #env: + #BUILD: check + #HOST: x86_64-unknown-linux-gnu + #matrix: + ## Cross claims to support Android, but when it tries to run Nix's tests it + ## reports undefined symbol references. + #- name: Android aarch64 + #env: + #TARGET: aarch64-linux-android + #- name: Android arm + #env: + #TARGET: arm-linux-androideabi + #- name: Android armv7 + #env: + #TARGET: armv7-linux-androideabi + #- name: Android i686 + #env: + #TARGET: i686-linux-android + #- name: Android x86_64 + #env: + #TARGET: x86_64-linux-android + #- name: Linux arm-musleabi + #env: + #TARGET: arm-unknown-linux-musleabi + #- name: Fuchsia x86_64 + #env: + #TARGET: x86_64-fuchsia + #- name: Illumos + #env: + #TARGET: x86_64-unknown-illumos + ## Cross claims to support running tests on iOS, but it actually doesn't. + ## https://github.com/rust-embedded/cross/issues/535 + #- name: iOS aarch64 + #env: + ## cargo hack tries to invoke the iphonesimulator SDK for iOS + #NOHACK: 1 + #TARGET: aarch64-apple-ios + ## Cross claims to support Linux powerpc64, but it really doesn't. + ## https://github.com/rust-embedded/cross/issues/441 + #- name: Linux powerpc64 + #env: + #TARGET: powerpc64-unknown-linux-gnu + #- name: Linux s390x + #env: + #TARGET: s390x-unknown-linux-gnu + #- name: Linux x32 + #env: + #TARGET: x86_64-unknown-linux-gnux32 + #- name: NetBSD x86_64 + #env: + #TARGET: x86_64-unknown-netbsd + #setup_script: + #- rustup target add $TARGET + #- rustup component add clippy + #<< : *BUILD + #before_cache_script: rm -rf $CARGO_HOME/registry/index -task: - container: - # Redox's MSRV policy is unclear. Until they define it, use nightly. - image: rustlang/rust:nightly - cpu: 1 - depends_on: - - FreeBSD 14 amd64 & i686 - - Linux x86_64 - - macOS aarch64 - - Rust Formatter - - OpenBSD x86_64 - - Minver - - Rust Stable - env: - BUILD: check - name: Redox x86_64 - env: - HOST: x86_64-unknown-linux-gnu - TARGET: x86_64-unknown-redox - CLIPPYFLAGS: -D warnings - setup_script: - - rustup target add $TARGET - - rustup component add clippy - << : *BUILD - before_cache_script: rm -rf $CARGO_HOME/registry/index +#task: + #container: + ## Redox's MSRV policy is unclear. Until they define it, use nightly. + #image: rustlang/rust:nightly + #cpu: 1 + #depends_on: + #- FreeBSD 14 amd64 & i686 + #- Linux x86_64 + #- macOS aarch64 + #- Rust Formatter + #- OpenBSD x86_64 + #- Minver + #- Rust Stable + #env: + #BUILD: check + #name: Redox x86_64 + #env: + #HOST: x86_64-unknown-linux-gnu + #TARGET: x86_64-unknown-redox + #CLIPPYFLAGS: -D warnings + #setup_script: + #- rustup target add $TARGET + #- rustup component add clippy + #<< : *BUILD + #before_cache_script: rm -rf $CARGO_HOME/registry/index -## Rust Tier 3 targets can't use Rustup -task: - container: - image: rustlang/rust:nightly - cpu: 1 - env: - BUILD: check - HOST: x86_64-unknown-linux-gnu - ZFLAGS: -Zbuild-std - CLIPPYFLAGS: -D warnings - matrix: - - name: DragonFly BSD x86_64 - depends_on: - - FreeBSD 14 amd64 & i686 - - Linux x86_64 - - macOS aarch64 - - Rust Formatter - - OpenBSD x86_64 - - Minver - - Rust Stable - env: - TARGET: x86_64-unknown-dragonfly - - name: OpenBSD x86_64 - env: - TARGET: x86_64-unknown-openbsd - - name: Linux armv7 uclibceabihf - depends_on: - - FreeBSD 14 amd64 & i686 - - Linux x86_64 - - macOS aarch64 - - Rust Formatter - - OpenBSD x86_64 - - Minver - - Rust Stable - env: - TARGET: armv7-unknown-linux-uclibceabihf - - name: Haiku x86_64 - depends_on: - - FreeBSD 14 amd64 & i686 - - Linux x86_64 - - macOS aarch64 - - Rust Formatter - - OpenBSD x86_64 - - Minver - - Rust Stable - env: - TARGET: x86_64-unknown-haiku - setup_script: - - rustup component add rust-src - << : *BUILD - before_cache_script: rm -rf $CARGO_HOME/registry/index +### Rust Tier 3 targets can't use Rustup +#task: + #container: + #image: rustlang/rust:nightly + #cpu: 1 + #env: + #BUILD: check + #HOST: x86_64-unknown-linux-gnu + #ZFLAGS: -Zbuild-std + #CLIPPYFLAGS: -D warnings + #matrix: + #- name: DragonFly BSD x86_64 + #depends_on: + #- FreeBSD 14 amd64 & i686 + #- Linux x86_64 + #- macOS aarch64 + #- Rust Formatter + #- OpenBSD x86_64 + #- Minver + #- Rust Stable + #env: + #TARGET: x86_64-unknown-dragonfly + #- name: OpenBSD x86_64 + #env: + #TARGET: x86_64-unknown-openbsd + #- name: Linux armv7 uclibceabihf + #depends_on: + #- FreeBSD 14 amd64 & i686 + #- Linux x86_64 + #- macOS aarch64 + #- Rust Formatter + #- OpenBSD x86_64 + #- Minver + #- Rust Stable + #env: + #TARGET: armv7-unknown-linux-uclibceabihf + #- name: Haiku x86_64 + #depends_on: + #- FreeBSD 14 amd64 & i686 + #- Linux x86_64 + #- macOS aarch64 + #- Rust Formatter + #- OpenBSD x86_64 + #- Minver + #- Rust Stable + #env: + #TARGET: x86_64-unknown-haiku + #setup_script: + #- rustup component add rust-src + #<< : *BUILD + #before_cache_script: rm -rf $CARGO_HOME/registry/index -# Test that we can build with the lowest version of all dependencies. -# "cargo test" doesn't work because some of our dev-dependencies, like -# rand, can't build with their own minimal dependencies. -task: - name: Minver - env: - HOST: x86_64-unknown-linux-gnu - container: - image: rustlang/rust:nightly - cpu: 1 - setup_script: - - cargo update -Zminimal-versions - check_script: - - cargo check - before_cache_script: rm -rf $CARGO_HOME/registry/index +## Test that we can build with the lowest version of all dependencies. +## "cargo test" doesn't work because some of our dev-dependencies, like +## rand, can't build with their own minimal dependencies. +#task: + #name: Minver + #env: + #HOST: x86_64-unknown-linux-gnu + #container: + #image: rustlang/rust:nightly + #cpu: 1 + #setup_script: + #- cargo update -Zminimal-versions + #check_script: + #- cargo check + #before_cache_script: rm -rf $CARGO_HOME/registry/index -# Tasks that checks if the code is formatted right using `cargo fmt` tool -task: - name: Rust Formatter - container: - image: rust:latest - cpu: 1 - setup_script: rustup component add rustfmt - test_script: cargo fmt --all -- --check **/*.rs +## Tasks that checks if the code is formatted right using `cargo fmt` tool +#task: + #name: Rust Formatter + #container: + #image: rust:latest + #cpu: 1 + #setup_script: rustup component add rustfmt + #test_script: cargo fmt --all -- --check **/*.rs