# Based on the "trust" template v0.1.1 # https://github.com/japaric/trust/tree/v0.1.1 image: Visual Studio 2017 platform: - x64 cache: # - windows\nsis-plugins\bin # - windows\windns\bin # - windows\winfw\bin # - windows\winroute\bin # - .mtime_cache environment: global: # This is the Rust channel that build jobs will use by default but can be # overridden on a case by case basis down below RUST_VERSION: stable RUST_BACKTRACE: "1" RUSTFLAGS: "--deny unused_imports --deny dead_code" CPP_BUILD_MODES: "Debug" OPENSSL_STATIC: "1" # These are all the build jobs. Adjust as necessary. Comment out what you # don't need matrix: - TARGET: x86_64-pc-windows-msvc CPP_BUILD_TARGETS: "x64" # Testing other channels - TARGET: x86_64-pc-windows-msvc CPP_BUILD_TARGETS: "x64" RUST_VERSION: beta - TARGET: x86_64-pc-windows-msvc CPP_BUILD_TARGETS: "x64" RUST_VERSION: nightly install: - ps: >- If ($Env:TARGET -eq 'x86_64-pc-windows-gnu') { $Env:PATH += ';C:\msys64\mingw64\bin' } ElseIf ($Env:TARGET -eq 'i686-pc-windows-gnu') { $Env:PATH += ';C:\msys64\mingw32\bin' } - curl -sSf -o rustup-init.exe https://win.rustup.rs/ - rustup-init.exe -y --default-host %TARGET% --default-toolchain %RUST_VERSION% - set PATH=%PATH%;C:\Users\appveyor\.cargo\bin # TMP fix for https://github.com/rust-lang-nursery/rustup.rs/issues/893: - set PATH=%PATH%;C:\Users\appveyor\.rustup\toolchains\%RUST_VERSION%-%TARGET%\bin - rustc -Vv - rustc --print cfg - cargo -V - git submodule update --init - ruby ci/mtime_cache windows/**/*.{cpp,h} --verbose --cache .mtime_cache/cache.json # This is the "test phase", tweak it as you see fit test_script: - ps: . .\env.ps1 - bash -x build_windows_modules.sh --dev-build - cargo build - cargo test # Stops feature branches from triggering two builds (One for branch and one for PR) skip_branch_with_pr: true notifications: - provider: Email on_build_success: false on_build_failure: false on_build_status_changed: false # We build in the test stage, so disable Appveyor's build stage. This prevents # the "directory does not contain a project or solution file" error. build: false