From aaa5fe967d4407a658ea0fab01a75209395cfd3c Mon Sep 17 00:00:00 2001 From: Alan Somers Date: Sat, 13 Aug 2022 17:30:09 -0600 Subject: [PATCH] DO NOT MERGE debug CI failures --- .cirrus.yml | 419 ++++++++++++++++++++++++++-------------------------- 1 file changed, 210 insertions(+), 209 deletions(-) diff --git a/.cirrus.yml b/.cirrus.yml index 8af6e2e1cb..a531378f54 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -36,37 +36,37 @@ 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 12 amd64 & i686 - freebsd_instance: - image: freebsd-12-3-release-amd64 - - name: FreeBSD 14 amd64 & i686 - freebsd_instance: - image_family: freebsd-14-0-snap - # 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 $TOOLCHAIN - - . $HOME/.cargo/env - - rustup target add i686-unknown-freebsd - - rustup component add --toolchain $TOOLCHAIN clippy - - cp Cargo.lock.msrv Cargo.lock - << : *TEST - i386_test_script: - - . $HOME/.cargo/env - - cargo build --target i686-unknown-freebsd - - cargo doc --no-deps --target i686-unknown-freebsd - - cargo test --target i686-unknown-freebsd - 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 12 amd64 & i686 + #freebsd_instance: + #image: freebsd-12-3-release-amd64 + #- name: FreeBSD 14 amd64 & i686 + #freebsd_instance: + #image_family: freebsd-14-0-snap + ## 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 $TOOLCHAIN + #- . $HOME/.cargo/env + #- rustup target add i686-unknown-freebsd + #- rustup component add --toolchain $TOOLCHAIN clippy + #- cp Cargo.lock.msrv Cargo.lock + #<< : *TEST + #i386_test_script: + #- . $HOME/.cargo/env + #- cargo build --target i686-unknown-freebsd + #- cargo doc --no-deps --target i686-unknown-freebsd + #- cargo test --target i686-unknown-freebsd + #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 x86_64 in a full VM task: @@ -86,57 +86,57 @@ task: # Use cross for QEMU-based testing # cross needs to execute Docker, so we must use Cirrus's Docker Builder task. -task: - env: - RUST_TEST_THREADS: 1 # QEMU works best with 1 thread - HOME: /tmp/home - HOST: x86_64-unknown-linux-gnu - PATH: $HOME/.cargo/bin:$PATH - 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 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 - compute_engine_instance: - image_project: cirrus-images - image: family/docker-builder - platform: linux - cpu: 1 # Since QEMU will only use 1 thread - memory: 4G - setup_script: - - mkdir /tmp/home - - curl --proto '=https' --tlsv1.2 -sSf -o rustup.sh https://sh.rustup.rs - - sh rustup.sh -y --profile=minimal --default-toolchain $TOOLCHAIN - - . $HOME/.cargo/env - - cargo install cross --version 0.2.1 # cross 0.2.2 bumped the MSRV to 1.58.1 - - cp Cargo.lock.msrv Cargo.lock - << : *TEST - before_cache_script: rm -rf $CARGO_HOME/registry/index +#task: + #env: + #RUST_TEST_THREADS: 1 # QEMU works best with 1 thread + #HOME: /tmp/home + #HOST: x86_64-unknown-linux-gnu + #PATH: $HOME/.cargo/bin:$PATH + #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 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 + #compute_engine_instance: + #image_project: cirrus-images + #image: family/docker-builder + #platform: linux + #cpu: 1 # Since QEMU will only use 1 thread + #memory: 4G + #setup_script: + #- mkdir /tmp/home + #- curl --proto '=https' --tlsv1.2 -sSf -o rustup.sh https://sh.rustup.rs + #- sh rustup.sh -y --profile=minimal --default-toolchain $TOOLCHAIN + #- . $HOME/.cargo/env + #- cargo install cross --version 0.2.1 # cross 0.2.2 bumped the MSRV to 1.58.1 + #- cp Cargo.lock.msrv Cargo.lock + #<< : *TEST + #before_cache_script: rm -rf $CARGO_HOME/registry/index # Tasks for Linux native builds task: @@ -158,24 +158,25 @@ task: env: TARGET: x86_64-unknown-linux-musl setup_script: + - rustup toolchain list - rustup target add $TARGET - rustup component add clippy - cp Cargo.lock.msrv Cargo.lock << : *TEST before_cache_script: rm -rf $CARGO_HOME/registry/index -task: - name: Rust Stable - container: - image: rust:latest - env: - TARGET: x86_64-unknown-linux-gnu - TOOLCHAIN: - 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 + #env: + #TARGET: x86_64-unknown-linux-gnu + #TOOLCHAIN: + #setup_script: + #- rustup target add $TARGET + #- rustup component add clippy + #<< : *TEST + #before_cache_script: rm -rf $CARGO_HOME/registry/index # Tasks for cross-compiling, but no testing task: @@ -187,64 +188,64 @@ task: 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: 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 - - name: iOS x86_64 - env: - # cargo hack tries to invoke the iphonesimulator SDK for iOS - NOHACK: 1 - TARGET: x86_64-apple-ios - # Cross testing on powerpc fails with "undefined reference to renameat2". - # Perhaps cross is using too-old a version? - - name: Linux powerpc - env: - TARGET: powerpc-unknown-linux-gnu - # 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: macOS aarch64 - env: - TARGET: aarch64-apple-darwin - - name: NetBSD x86_64 - env: - TARGET: x86_64-unknown-netbsd + #- 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 + #- name: iOS x86_64 + #env: + ## cargo hack tries to invoke the iphonesimulator SDK for iOS + #NOHACK: 1 + #TARGET: x86_64-apple-ios + ## Cross testing on powerpc fails with "undefined reference to renameat2". + ## Perhaps cross is using too-old a version? + #- name: Linux powerpc + #env: + #TARGET: powerpc-unknown-linux-gnu + ## 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: macOS aarch64 + #env: + #TARGET: aarch64-apple-darwin + #- name: NetBSD x86_64 + #env: + #TARGET: x86_64-unknown-netbsd setup_script: - rustup target add $TARGET - rustup toolchain install $TOOLCHAIN --profile minimal --target $TARGET @@ -253,71 +254,71 @@ task: << : *BUILD before_cache_script: rm -rf $CARGO_HOME/registry/index -task: - container: - image: rust:1.56 - env: - BUILD: check - name: Redox x86_64 - env: - HOST: x86_64-unknown-linux-gnu - TARGET: x86_64-unknown-redox - # Redox's MSRV policy is unclear. Until they define it, use nightly. - TOOLCHAIN: nightly - setup_script: - - rustup target add $TARGET - - rustup toolchain install $TOOLCHAIN --profile minimal --target $TARGET - - rustup component add --toolchain $TOOLCHAIN clippy - << : *BUILD - before_cache_script: rm -rf $CARGO_HOME/registry/index +#task: + #container: + #image: rust:1.56 + #env: + #BUILD: check + #name: Redox x86_64 + #env: + #HOST: x86_64-unknown-linux-gnu + #TARGET: x86_64-unknown-redox + ## Redox's MSRV policy is unclear. Until they define it, use nightly. + #TOOLCHAIN: nightly + #setup_script: + #- rustup target add $TARGET + #- rustup toolchain install $TOOLCHAIN --profile minimal --target $TARGET + #- rustup component add --toolchain $TOOLCHAIN 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 - env: - BUILD: check - HOST: x86_64-unknown-linux-gnu - TOOLCHAIN: nightly - ZFLAGS: -Zbuild-std - matrix: - - name: DragonFly BSD x86_64 - env: - TARGET: x86_64-unknown-dragonfly - - name: OpenBSD x86_64 - env: - TARGET: x86_64-unknown-openbsd - - name: Linux armv7 uclibceabihf - env: - TARGET: armv7-unknown-linux-uclibceabihf - - name: Haiku x86_64 - env: - TARGET: x86_64-unknown-haiku - setup_script: - - rustup component add rust-src - << : *BUILD - before_cache_script: rm -rf $CARGO_HOME/registry/index +#task: + #container: + #image: rustlang/rust:nightly + #env: + #BUILD: check + #HOST: x86_64-unknown-linux-gnu + #TOOLCHAIN: nightly + #ZFLAGS: -Zbuild-std + #matrix: + #- name: DragonFly BSD x86_64 + #env: + #TARGET: x86_64-unknown-dragonfly + #- name: OpenBSD x86_64 + #env: + #TARGET: x86_64-unknown-openbsd + #- name: Linux armv7 uclibceabihf + #env: + #TARGET: armv7-unknown-linux-uclibceabihf + #- name: Haiku x86_64 + #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 - TOOLCHAIN: nightly - container: - image: rustlang/rust:nightly - setup_script: - - cargo update -Zminimal-versions - check_script: - - cargo check - before_cache_script: rm -rf $CARGO_HOME/registry/index +#task: + #name: Minver + #env: + #HOST: x86_64-unknown-linux-gnu + #TOOLCHAIN: nightly + #container: + #image: rustlang/rust:nightly + #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 - setup_script: rustup +$TOOLCHAIN component add rustfmt - test_script: $TOOL +$TOOLCHAIN fmt --all -- --check +#task: + #name: Rust Formatter + #container: + #image: rust:latest + #setup_script: rustup +$TOOLCHAIN component add rustfmt + #test_script: $TOOL +$TOOLCHAIN fmt --all -- --check