diff options
Diffstat (limited to 'cc/ci')
-rw-r--r-- | cc/ci/azure-install-rust.yml | 28 | ||||
-rw-r--r-- | cc/ci/azure-steps.yml | 11 |
2 files changed, 30 insertions, 9 deletions
diff --git a/cc/ci/azure-install-rust.yml b/cc/ci/azure-install-rust.yml index 118d65e..9c1bae8 100644 --- a/cc/ci/azure-install-rust.yml +++ b/cc/ci/azure-install-rust.yml @@ -5,16 +5,30 @@ steps: if [ "$toolchain" = "" ]; then toolchain=stable fi - curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain $toolchain - echo "##vso[task.prependpath]$HOME/.cargo/bin" + if command -v rustup; then + rustup update $toolchain + rustup default $toolchain + else + curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain $toolchain + echo "##vso[task.prependpath]$HOME/.cargo/bin" + fi displayName: Install rust (unix) condition: ne( variables['Agent.OS'], 'Windows_NT' ) - - script: | - IF "%TOOLCHAIN%"=="" (SET TOOLCHAIN=stable-%TARGET%) - curl -sSf -o rustup-init.exe https://win.rustup.rs - rustup-init.exe -y --default-toolchain %TOOLCHAIN% - echo ##vso[task.prependpath]%USERPROFILE%\.cargo\bin + - bash: | + set -e + toolchain=$TOOLCHAIN + if [ "$toolchain" = "" ]; then + toolchain=stable-$TARGET + fi + if command -v rustup; then + rustup update --no-self-update $toolchain + rustup default $toolchain + else + curl.exe -sSf -o rustup-init.exe https://win.rustup.rs + ./rustup-init.exe -y --default-toolchain $toolchain + echo "##vso[task.prependpath]$USERPROFILE/.cargo/bin" + fi displayName: Install rust (windows) condition: eq( variables['Agent.OS'], 'Windows_NT' ) diff --git a/cc/ci/azure-steps.yml b/cc/ci/azure-steps.yml index c240ed0..bbf8ec6 100644 --- a/cc/ci/azure-steps.yml +++ b/cc/ci/azure-steps.yml @@ -3,15 +3,22 @@ steps: - bash: rustup target add $TARGET displayName: Install Rust target + # Remove the ubuntu-toolchain-r/test PPA, which is added by default. Some + # packages were removed, and this is causing the g++multilib install to fail. + # Similar issue: https://github.com/scikit-learn/scikit-learn/issues/13928 + - bash: sudo add-apt-repository --remove ppa:ubuntu-toolchain-r/test + condition: eq( variables['Agent.OS'], 'Linux' ) + displayName: Remove ppa:ubuntu-toolchain-r/test + - bash: sudo apt-get install g++-multilib condition: eq( variables['Agent.OS'], 'Linux' ) displayName: Install g++-multilib - script: cargo build displayName: "Normal build" - - bash: cargo test $NO_RUN -- --test-threads 1 + - bash: cargo test $NO_RUN displayName: "Crate tests" - - bash: cargo test $NO_RUN --features parallel -- --test-threads 1 + - bash: cargo test $NO_RUN --features parallel displayName: "Crate tests (parallel)" - bash: cargo test $NO_RUN --manifest-path cc-test/Cargo.toml --target $TARGET displayName: "cc-test tests" |