wasmer/azure-pipelines.yml
2019-08-24 21:53:11 -07:00

101 lines
2.8 KiB
YAML

name: $(Build.SourceBranch)-$(date:yyyyMMdd)$(rev:.r)
# The Different jobs (lint, test, build to run)
jobs:
- job: lint
pool:
vmImage: 'macos-10.14'
steps:
- checkout: self
submodules: true
- template: .azure/install-rust.yml
- script: |
rustup component add rustfmt
rustup component add clippy || cargo install --git https://github.com/rust-lang/rust-clippy/ --force clippy
displayName: Lint dependencies
- script: cargo fmt --all -- --check
displayName: Lint
variables:
rust_toolchain: stable
- job: Test
strategy:
matrix:
linux:
imageName: 'ubuntu-16.04'
rust_toolchain: nightly-2019-06-10
mac:
imageName: 'macos-10.14'
rust_toolchain: nightly-2019-06-10
windows:
imageName: 'vs2017-win2016'
rust_toolchain: stable
pool:
vmImage: $(imageName)
steps:
- checkout: self
submodules: true
- template: .azure/install-rust.yml
- template: .azure/install-sccache.yml
- template: .azure/install-cmake.yml
- template: .azure/install-llvm.yml
- bash: make test
displayName: Tests (*nix)
condition: and(succeeded(), not(eq(variables['Agent.OS'], 'Windows_NT')))
- bash: make spectests-cranelift
displayName: Tests (Windows)
condition: and(succeeded(), eq(variables['Agent.OS'], 'Windows_NT'))
- bash: make check
displayName: Check with Flags
condition: and(succeeded(), not(eq(variables['Agent.OS'], 'Windows_NT')))
# - bash: make integration-tests
# displayName: Integration Tests
- job: Build
strategy:
matrix:
linux:
imageName: 'ubuntu-16.04'
rust_toolchain: nightly-2019-06-10
mac:
imageName: 'macos-10.14'
rust_toolchain: nightly-2019-06-10
MACOSX_DEPLOYMENT_TARGET: 10.10
windows:
imageName: 'vs2017-win2016'
rust_toolchain: stable
# RUSTFLAGS: -Ctarget-feature=+crt-static
pool:
vmImage: $(imageName)
steps:
- checkout: self
submodules: true
- template: .azure/install-rust.yml
- template: .azure/install-sccache.yml
- template: .azure/install-cmake.yml
- template: .azure/install-llvm.yml
- bash: make release
displayName: Build (*nix)
condition: and(succeeded(), not(eq(variables['Agent.OS'], 'Windows_NT')))
- bash: make release-llvm
displayName: Build (Windows)
condition: and(succeeded(), eq(variables['Agent.OS'], 'Windows_NT'))
- bash: make capi
displayName: Build c-api
- bash: |
install_name_tool -id "@rpath/libwasmer_runtime_c_api.dylib" target/release/libwasmer_runtime_c_api.dylib
displayName: Build c-api (Darwin fix)
condition: and(succeeded(), eq(variables['Agent.OS'], 'Darwin'))
trigger:
branches:
include:
- '*'