From 462b0b51491367d1fe5cf1b2d5a46c8f521c19e4 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 10 Aug 2019 11:11:54 -0700
Subject: [PATCH 01/54] Initial version of Azure pipelines
---
.azure-pipelines.yml | 79 +++++++++++++++++++++++++++++++++++++++++
.azure/install-rust.yml | 40 +++++++++++++++++++++
.circleci/config.yml | 3 --
Makefile | 24 +++++++------
4 files changed, 132 insertions(+), 14 deletions(-)
create mode 100644 .azure-pipelines.yml
create mode 100644 .azure/install-rust.yml
diff --git a/.azure-pipelines.yml b/.azure-pipelines.yml
new file mode 100644
index 000000000..f377f977c
--- /dev/null
+++ b/.azure-pipelines.yml
@@ -0,0 +1,79 @@
+name: $(Build.SourceBranch)-$(date:yyyyMMdd)$(rev:.r)
+
+# The Different jobs (lint, test, build to run)
+jobs:
+- job: lint
+ pool:
+ vmImage: 'ubuntu-16.04'
+ steps:
+ - checkout: self
+ submodules: true
+ - template: .azure/install-rust.yml
+ - displayName: Lint dependencies
+ script: |
+ rustup component add rustfmt
+ rustup component add clippy || cargo install --git https://github.com/rust-lang/rust-clippy/ --force clippy
+ - displayName: Lint
+ script: cargo fmt --all -- --check
+
+ variables:
+ rust_toolchain: stable
+
+- job: Test
+ strategy:
+ matrix:
+ linux:
+ imageName: 'ubuntu-16.04'
+ mac:
+ imageName: 'macos-10.14'
+ windows:
+ imageName: 'vs2017-win2016'
+
+ variables:
+ rust_toolchain: nightly-2019-06-10
+
+ pool:
+ vmImage: $(imageName)
+
+ steps:
+ - checkout: self
+ submodules: true
+ - template: .azure/install-rust.yml
+ - displayName: Check with Flags
+ bash: make check
+ - displayName: Tests
+ bash: make test
+ - displayName: Integration Tests
+ bash: make integration-tests
+
+# - job: Build
+# strategy:
+# matrix:
+# linux:
+# imageName: 'ubuntu-16.04'
+# mac:
+# imageName: 'macos-10.14'
+# MACOSX_DEPLOYMENT_TARGET: 10.10
+# windows:
+# imageName: 'vs2017-win2016'
+# RUSTFLAGS: -Ctarget-feature=+crt-static
+
+# variables:
+# rust_toolchain: nightly-2019-06-10
+
+# pool:
+# vmImage: $(imageName)
+
+# steps:
+# - checkout: self
+# submodules: true
+# - template: .azure/install-rust.yml
+# - displayName: Tests
+# bash: make test
+
+
+trigger:
+ branches:
+ include:
+ - '*'
+
diff --git a/.azure/install-rust.yml b/.azure/install-rust.yml
new file mode 100644
index 000000000..5c5915d0a
--- /dev/null
+++ b/.azure/install-rust.yml
@@ -0,0 +1,40 @@
+# This template installs Rust (if doesn't exist in the systems)
+# Also installs the desired Rust toolchain
+
+# Template inspired by Tokio and wasm-bindgen templates
+# Tokio template: https://github.com/tokio-rs/tokio/blob/master/ci/azure-install-rust.yml
+# Wasm-bindgen template: https://github.com/rustwasm/wasm-bindgen/blob/master/ci/azure-install-rust.yml
+
+steps:
+ # Install Rust in Linux, Macos
+ - displayName: "Install Rust (Linux, macOS)"
+ script: |
+ set -ex
+ if [ -x "`command -v rustup`" ]; then
+ echo `command -v rustup` `rustup -V` installed
+ else
+ curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain $RUST_TOOLCHAIN
+ echo "##vso[task.prependpath]$HOME/.cargo/bin"
+ fi
+ condition: not(eq(variables['Agent.OS'], 'Windows_NT'))
+
+ - displayName: "Install Rust (Windows)"
+ script: |
+ set -ex
+ if [ -x "`command -v rustup`" ]; then
+ echo `command -v rustup` `rustup -V` installed
+ else
+ curl -sSf -o rustup-init.exe https://win.rustup.rs
+ ./rustup-init.exe -y --default-toolchain $RUST_TOOLCHAIN
+ echo "##vso[task.prependpath]$USERPROFILE/.cargo/bin"
+ fi
+ condition: eq(variables['Agent.OS'], 'Windows_NT')
+
+ - displayName: Install Rust
+ bash: |
+ set -ex
+ rustup update $RUST_TOOLCHAIN
+ rustup default $RUST_TOOLCHAIN
+
+ rustc -Vv
+ cargo -V
diff --git a/.circleci/config.yml b/.circleci/config.yml
index 4a3b44588..67bcbbbc2 100644
--- a/.circleci/config.yml
+++ b/.circleci/config.yml
@@ -112,9 +112,6 @@ jobs:
name: Check
command: |
make check
- make compile-bench-singlepass
- make compile-bench-llvm
- # TODO: add compile-bench-clif when it works
- run:
name: Integration Tests
command: make integration-tests
diff --git a/Makefile b/Makefile
index a12d14fe5..4fba50646 100644
--- a/Makefile
+++ b/Makefile
@@ -127,9 +127,20 @@ debug:
install:
cargo install --path .
-check:
- cargo check --release --features backend-singlepass,backend-llvm,loader-kernel
+# Checks
+check-bench-singlepass:
+ cargo bench --all --no-run --no-default-features --features "backend-singlepass"
+check-bench-clif:
+ cargo bench --all --no-run --no-default-features --features "backend-cranelift"
+check-bench-llvm:
+ cargo bench --all --no-run --no-default-features --features "backend-llvm"
+check-bench: check-bench-singlepass check-bench-llvm
+
+check: check-bench
+ cargo check --release --features backend-singlepass,backend-llvm,loader-kernel,debug
+
+# Release
release:
cargo build --release --features backend-singlepass,backend-llvm,loader-kernel
@@ -152,15 +163,6 @@ bench-clif:
bench-llvm:
cargo bench --all --no-default-features --features "backend-llvm"
-# compile but don't run the benchmarks
-compile-bench-singlepass:
- cargo bench --all --no-run --no-default-features --features "backend-singlepass"
-compile-bench-clif:
- cargo bench --all --no-run --no-default-features --features "backend-cranelift"
-compile-bench-llvm:
- cargo bench --all --no-run --no-default-features --features "backend-llvm"
-
-
# Build utils
build-install:
mkdir -p ./install/bin
From 98711dd3d8c4713a5656eea761828bcc5f4ca177 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 10 Aug 2019 14:53:47 -0700
Subject: [PATCH 02/54] Renamed azure pipelines config file
---
.azure-pipelines.yml => azure-pipelines.yml | 0
1 file changed, 0 insertions(+), 0 deletions(-)
rename .azure-pipelines.yml => azure-pipelines.yml (100%)
diff --git a/.azure-pipelines.yml b/azure-pipelines.yml
similarity index 100%
rename from .azure-pipelines.yml
rename to azure-pipelines.yml
From 0ae66297b729408db855a433630d2e7c09eea828 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 10 Aug 2019 14:56:58 -0700
Subject: [PATCH 03/54] Fixed config
---
.azure/install-rust.yml | 12 ++++++------
azure-pipelines.yml | 24 ++++++++++++------------
2 files changed, 18 insertions(+), 18 deletions(-)
diff --git a/.azure/install-rust.yml b/.azure/install-rust.yml
index 5c5915d0a..8bf2244bb 100644
--- a/.azure/install-rust.yml
+++ b/.azure/install-rust.yml
@@ -7,8 +7,7 @@
steps:
# Install Rust in Linux, Macos
- - displayName: "Install Rust (Linux, macOS)"
- script: |
+ - script: |
set -ex
if [ -x "`command -v rustup`" ]; then
echo `command -v rustup` `rustup -V` installed
@@ -16,10 +15,10 @@ steps:
curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain $RUST_TOOLCHAIN
echo "##vso[task.prependpath]$HOME/.cargo/bin"
fi
+ displayName: "Install Rust (Linux, macOS)"
condition: not(eq(variables['Agent.OS'], 'Windows_NT'))
- - displayName: "Install Rust (Windows)"
- script: |
+ - script: |
set -ex
if [ -x "`command -v rustup`" ]; then
echo `command -v rustup` `rustup -V` installed
@@ -28,13 +27,14 @@ steps:
./rustup-init.exe -y --default-toolchain $RUST_TOOLCHAIN
echo "##vso[task.prependpath]$USERPROFILE/.cargo/bin"
fi
+ displayName: "Install Rust (Windows)"
condition: eq(variables['Agent.OS'], 'Windows_NT')
- - displayName: Install Rust
- bash: |
+ - bash: |
set -ex
rustup update $RUST_TOOLCHAIN
rustup default $RUST_TOOLCHAIN
rustc -Vv
cargo -V
+ displayName: Install Rust
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index f377f977c..3a2a94244 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -9,12 +9,12 @@ jobs:
- checkout: self
submodules: true
- template: .azure/install-rust.yml
- - displayName: Lint dependencies
- script: |
+ - script: |
rustup component add rustfmt
rustup component add clippy || cargo install --git https://github.com/rust-lang/rust-clippy/ --force clippy
- - displayName: Lint
- script: cargo fmt --all -- --check
+ displayName: Lint dependencies
+ - script: cargo fmt --all -- --check
+ displayName: Lint
variables:
rust_toolchain: stable
@@ -39,12 +39,12 @@ jobs:
- checkout: self
submodules: true
- template: .azure/install-rust.yml
- - displayName: Check with Flags
- bash: make check
- - displayName: Tests
- bash: make test
- - displayName: Integration Tests
- bash: make integration-tests
+ - bash: make check
+ displayName: Check with Flags
+ - bash: make test
+ displayName: Tests
+ - bash: make integration-tests
+ displayName: Integration Tests
# - job: Build
# strategy:
@@ -68,8 +68,8 @@ jobs:
# - checkout: self
# submodules: true
# - template: .azure/install-rust.yml
-# - displayName: Tests
-# bash: make test
+# - bash: make test
+# displayName: Tests
trigger:
From a82907eb2265a524905819bd363ab23bbbe4ba80 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 10 Aug 2019 15:32:09 -0700
Subject: [PATCH 04/54] Improved Azure install requirements
---
.azure/install-cmake.yml | 43 ++++++++++++++++++++++++++++++++++++
.azure/install-llvm.yml | 47 ++++++++++++++++++++++++++++++++++++++++
.azure/install-rust.yml | 5 ++---
azure-pipelines.yml | 2 ++
4 files changed, 94 insertions(+), 3 deletions(-)
create mode 100644 .azure/install-cmake.yml
create mode 100644 .azure/install-llvm.yml
diff --git a/.azure/install-cmake.yml b/.azure/install-cmake.yml
new file mode 100644
index 000000000..707905b55
--- /dev/null
+++ b/.azure/install-cmake.yml
@@ -0,0 +1,43 @@
+# This template installs CMake (if doesn't exist in the systems)
+
+steps:
+ - bash: |
+ set -ex
+ if [ -x "`command -v cmake`" ]; then
+ echo `command -v cmake` `cmake --version` installed
+ else
+ curl -O https://cmake.org/files/v3.4/cmake-3.4.1-Darwin-x86_64.tar.gz
+ tar xf cmake-3.4.1-Darwin-x86_64.tar.gz
+ export CMAKE_BIN_PATH="`pwd`/cmake-3.4.1-Darwin-x86_64/CMake.app/Contents/bin"
+ echo "##vso[task.prependpath]$CMAKE_BIN_PATH"
+ fi
+ displayName: "Install CMake (macOS)"
+ condition: eq(variables['Agent.OS'], 'Darwin')
+
+ - bash: |
+ set -ex
+ if [ -x "`command -v cmake`" ]; then
+ echo `command -v cmake` `cmake --version` installed
+ else
+ curl -O https://cmake.org/files/v3.4/cmake-3.4.1-Linux-x86_64.tar.gz
+ tar xf cmake-3.4.1-Linux-x86_64.tar.gz
+ export CMAKE_BIN_PATH="`pwd`/cmake-3.4.1-Linux-x86_64/CMake.app/Contents/bin"
+ echo "##vso[task.prependpath]$CMAKE_BIN_PATH"
+ fi
+ displayName: "Install CMake (Linux)"
+ condition: eq(variables['Agent.OS'], 'Linux')
+
+ - bash: |
+ set -ex
+ if [ -x "`command -v cmake`" ]; then
+ echo `command -v cmake` `cmake --version` installed
+ else
+ chocolatey install cmake --installargs 'ADD_CMAKE_TO_PATH=System'
+ fi
+ displayName: "Install CMake (Windows)"
+ condition: eq(variables['Agent.OS'], 'Windows_NT')
+
+ - bash: |
+ set -ex
+ cmake --version
+ displayName: CMake version
diff --git a/.azure/install-llvm.yml b/.azure/install-llvm.yml
new file mode 100644
index 000000000..7d822e08b
--- /dev/null
+++ b/.azure/install-llvm.yml
@@ -0,0 +1,47 @@
+# This template installs LLVM (if doesn't exist in the systems)
+
+steps:
+ - bash: |
+ set -ex
+ if [ -x "`command -v llvm-config`" ]; then
+ echo `command -v llvm-config` `llvm-config --version` installed
+ else
+ curl -O https://releases.llvm.org/8.0.0/clang+llvm-8.0.0-x86_64-apple-darwin.tar.xz
+ tar xf clang+llvm-8.0.0-x86_64-apple-darwin.tar.xz
+ export LLVM_SYS_80_PREFIX="`pwd`/clang+llvm-8.0.0-x86_64-apple-darwin/"
+ echo "##vso[task.prependpath]$LLVM_SYS_80_PREFIX/bin"
+ fi
+ displayName: "Install LLVM (macOS)"
+ condition: eq(variables['Agent.OS'], 'Darwin')
+
+ - bash: |
+ set -ex
+ if [ -x "`command -v llvm-config`" ]; then
+ echo `command -v llvm-config` `llvm-config --version` installed
+ else
+ curl -O https://releases.llvm.org/8.0.0/clang+llvm-8.0.0-x86_64-linux-gnu-ubuntu-16.04.tar.xz
+ tar xf clang+llvm-8.0.0-x86_64-linux-gnu-ubuntu-16.04.tar.xz
+ export LLVM_SYS_80_PREFIX="`pwd`/clang+llvm-8.0.0-x86_64-linux-gnu-ubuntu-16.04/"
+ echo "##vso[task.prependpath]$LLVM_SYS_80_PREFIX/bin"
+ fi
+ displayName: "Install LLVM (Linux)"
+ condition: eq(variables['Agent.OS'], 'Linux')
+
+ - bash: |
+ set -ex
+ if [ -x "`command -v llvm-config`" ]; then
+ echo `command -v cmake` `llvm-config --version` installed
+ else
+ curl -O https://github.com/wasmerio/windows-llvm-build/releases/download/v8.0.0/llvm-8.0.0-install.zip
+ unzip llvm-8.0.0-install.zip
+ export LLVM_SYS_80_PREFIX="`pwd`/llvm-8.0.0-install/"
+ echo "##vso[task.prependpath]$LLVM_SYS_80_PREFIX/bin"
+ # chocolatey install cmake --installargs 'ADD_CMAKE_TO_PATH=System'
+ fi
+ displayName: "Install LLVM (Windows)"
+ condition: eq(variables['Agent.OS'], 'Windows_NT')
+
+ - bash: |
+ set -ex
+ llvm-config --version
+ displayName: LLVM version
diff --git a/.azure/install-rust.yml b/.azure/install-rust.yml
index 8bf2244bb..ac3fb3055 100644
--- a/.azure/install-rust.yml
+++ b/.azure/install-rust.yml
@@ -6,8 +6,7 @@
# Wasm-bindgen template: https://github.com/rustwasm/wasm-bindgen/blob/master/ci/azure-install-rust.yml
steps:
- # Install Rust in Linux, Macos
- - script: |
+ - bash: |
set -ex
if [ -x "`command -v rustup`" ]; then
echo `command -v rustup` `rustup -V` installed
@@ -18,7 +17,7 @@ steps:
displayName: "Install Rust (Linux, macOS)"
condition: not(eq(variables['Agent.OS'], 'Windows_NT'))
- - script: |
+ - bash: |
set -ex
if [ -x "`command -v rustup`" ]; then
echo `command -v rustup` `rustup -V` installed
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 3a2a94244..3642f0d86 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -39,6 +39,8 @@ jobs:
- checkout: self
submodules: true
- template: .azure/install-rust.yml
+ - template: .azure/install-cmake.yml
+ - template: .azure/install-llvm.yml
- bash: make check
displayName: Check with Flags
- bash: make test
From 141fad86b3a2a6543080744f9f82a13b7e6609d7 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 10 Aug 2019 15:48:56 -0700
Subject: [PATCH 05/54] Added Cache, improved LLVM install
---
.azure/install-llvm.yml | 17 ++++++++++-------
azure-pipelines.yml | 8 ++++++++
2 files changed, 18 insertions(+), 7 deletions(-)
diff --git a/.azure/install-llvm.yml b/.azure/install-llvm.yml
index 7d822e08b..cc8b641d2 100644
--- a/.azure/install-llvm.yml
+++ b/.azure/install-llvm.yml
@@ -8,8 +8,9 @@ steps:
else
curl -O https://releases.llvm.org/8.0.0/clang+llvm-8.0.0-x86_64-apple-darwin.tar.xz
tar xf clang+llvm-8.0.0-x86_64-apple-darwin.tar.xz
- export LLVM_SYS_80_PREFIX="`pwd`/clang+llvm-8.0.0-x86_64-apple-darwin/"
- echo "##vso[task.prependpath]$LLVM_SYS_80_PREFIX/bin"
+ export LLVM_PATH="`pwd`/clang+llvm-8.0.0-x86_64-apple-darwin/"
+ echo "##vso[task.prependpath]$LLVM_PATH/bin"
+ echo "##vso[task.setvariable variable=LLVM_SYS_80_PREFIX]$LLVM_PATH"
fi
displayName: "Install LLVM (macOS)"
condition: eq(variables['Agent.OS'], 'Darwin')
@@ -21,8 +22,9 @@ steps:
else
curl -O https://releases.llvm.org/8.0.0/clang+llvm-8.0.0-x86_64-linux-gnu-ubuntu-16.04.tar.xz
tar xf clang+llvm-8.0.0-x86_64-linux-gnu-ubuntu-16.04.tar.xz
- export LLVM_SYS_80_PREFIX="`pwd`/clang+llvm-8.0.0-x86_64-linux-gnu-ubuntu-16.04/"
- echo "##vso[task.prependpath]$LLVM_SYS_80_PREFIX/bin"
+ export LLVM_PATH="`pwd`/clang+llvm-8.0.0-x86_64-linux-gnu-ubuntu-16.04/"
+ echo "##vso[task.prependpath]$LLVM_PATH/bin"
+ echo "##vso[task.setvariable variable=LLVM_SYS_80_PREFIX]$LLVM_PATH"
fi
displayName: "Install LLVM (Linux)"
condition: eq(variables['Agent.OS'], 'Linux')
@@ -33,9 +35,10 @@ steps:
echo `command -v cmake` `llvm-config --version` installed
else
curl -O https://github.com/wasmerio/windows-llvm-build/releases/download/v8.0.0/llvm-8.0.0-install.zip
- unzip llvm-8.0.0-install.zip
- export LLVM_SYS_80_PREFIX="`pwd`/llvm-8.0.0-install/"
- echo "##vso[task.prependpath]$LLVM_SYS_80_PREFIX/bin"
+ 7z x llvm-8.0.0-install.zip
+ export LLVM_PATH="`pwd`/llvm-8.0.0-install/"
+ echo "##vso[task.prependpath]$LLVM_PATH/bin"
+ echo "##vso[task.setvariable variable=LLVM_SYS_80_PREFIX]$LLVM_PATH"
# chocolatey install cmake --installargs 'ADD_CMAKE_TO_PATH=System'
fi
displayName: "Install LLVM (Windows)"
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 3642f0d86..36e6499c9 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -41,6 +41,14 @@ jobs:
- template: .azure/install-rust.yml
- template: .azure/install-cmake.yml
- template: .azure/install-llvm.yml
+ - task: CacheBeta@0
+ inputs:
+ key: |
+ cargo
+ $(Agent.OS)
+ $(Build.SourcesDirectory)/Cargo.lock
+ path: $(Build.SourcesDirectory)/target
+ displayName: Cache Cargo Target
- bash: make check
displayName: Check with Flags
- bash: make test
From bdf8a406871d8a0caa8aace794c4de4a416e203f Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 10 Aug 2019 16:17:58 -0700
Subject: [PATCH 06/54] Fixed LLVM install in Windows
---
.azure/install-llvm.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.azure/install-llvm.yml b/.azure/install-llvm.yml
index cc8b641d2..29e943005 100644
--- a/.azure/install-llvm.yml
+++ b/.azure/install-llvm.yml
@@ -34,7 +34,7 @@ steps:
if [ -x "`command -v llvm-config`" ]; then
echo `command -v cmake` `llvm-config --version` installed
else
- curl -O https://github.com/wasmerio/windows-llvm-build/releases/download/v8.0.0/llvm-8.0.0-install.zip
+ curl -OL https://github.com/wasmerio/windows-llvm-build/releases/download/v8.0.0/llvm-8.0.0-install.zip
7z x llvm-8.0.0-install.zip
export LLVM_PATH="`pwd`/llvm-8.0.0-install/"
echo "##vso[task.prependpath]$LLVM_PATH/bin"
From 739f52a81d3e4e24010b52b817bbeb1cf94a075d Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 10 Aug 2019 16:18:06 -0700
Subject: [PATCH 07/54] Comment integration tests for now
---
azure-pipelines.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 36e6499c9..3ae02e6bf 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -53,8 +53,8 @@ jobs:
displayName: Check with Flags
- bash: make test
displayName: Tests
- - bash: make integration-tests
- displayName: Integration Tests
+ # - bash: make integration-tests
+ # displayName: Integration Tests
# - job: Build
# strategy:
From 86684bd1a167f295f051e23ad4172b2ebf5ca811 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 10 Aug 2019 16:31:50 -0700
Subject: [PATCH 08/54] Fixed windows tests
---
azure-pipelines.yml | 13 +++++++++----
1 file changed, 9 insertions(+), 4 deletions(-)
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 3ae02e6bf..23f433370 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -24,13 +24,13 @@ jobs:
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'
-
- variables:
- rust_toolchain: nightly-2019-06-10
+ rust_toolchain: stable
pool:
vmImage: $(imageName)
@@ -52,7 +52,12 @@ jobs:
- bash: make check
displayName: Check with Flags
- bash: make test
- displayName: Tests
+ 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 integration-tests
# displayName: Integration Tests
From ee1ca08bb89edae1c0d14403eab3740367e9960d Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 10 Aug 2019 16:41:58 -0700
Subject: [PATCH 09/54] Moved check down
---
azure-pipelines.yml | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 23f433370..6d3dfaa0f 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -49,14 +49,15 @@ jobs:
$(Build.SourcesDirectory)/Cargo.lock
path: $(Build.SourcesDirectory)/target
displayName: Cache Cargo Target
- - bash: make check
- displayName: Check with Flags
- 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
From 28ebba41b0c4dd746e030c5e7aa9e390de2281fa Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 10 Aug 2019 17:39:39 -0700
Subject: [PATCH 10/54] Added sscache to improve compilation times
---
.azure/install-rust.yml | 3 +++
.azure/install-sccache.yml | 41 ++++++++++++++++++++++++++++++++++++++
azure-pipelines.yml | 1 +
3 files changed, 45 insertions(+)
create mode 100644 .azure/install-sccache.yml
diff --git a/.azure/install-rust.yml b/.azure/install-rust.yml
index ac3fb3055..7de2142b5 100644
--- a/.azure/install-rust.yml
+++ b/.azure/install-rust.yml
@@ -37,3 +37,6 @@ steps:
rustc -Vv
cargo -V
displayName: Install Rust
+
+ - bash: echo "##vso[task.setvariable variable=RUSTC_VERSION;]`rustc --version`"
+ displayName: Set rustc version in env var
diff --git a/.azure/install-sccache.yml b/.azure/install-sccache.yml
new file mode 100644
index 000000000..3111aac9d
--- /dev/null
+++ b/.azure/install-sccache.yml
@@ -0,0 +1,41 @@
+# This template installs sccache (Shared Compilation Cache)
+# More info: https://github.com/mozilla/sccache
+
+steps:
+
+ - bash: |
+ set -e
+ curl -Lfo sccache.tar.gz https://github.com/mozilla/sccache/releases/download/0.2.10/sccache-0.2.10-x86_64-apple-darwin.tar.gz
+ tar -xzf sccache.tar.gz
+ cp sccache-*/sccache /usr/local/bin/
+ displayName: Install sccache (macOS)
+ condition: and(succeeded(), eq(variables['Agent.OS'], 'Darwin'))
+
+ - bash: |
+ set -e
+ curl -Lfo sccache.tar.gz https://github.com/mozilla/sccache/releases/download/0.2.10/sccache-0.2.10-x86_64-unknown-linux-musl.tar.gz
+ tar -xzf sccache.tar.gz
+ sudo cp sccache-*/sccache /usr/local/bin/
+ displayName: Install sccache (Linux)
+ condition: and(succeeded(), eq(variables['Agent.OS'], 'Linux'))
+
+ - bash: |
+ curl -Lfo sccache.tar.gz https://github.com/mozilla/sccache/releases/download/0.2.10/sccache-0.2.10-x86_64-pc-windows-msvc.tar.gz
+ tar -xzf sccache.tar.gz
+ move sccache-* sccache
+ echo "##vso[task.prependpath]%CD%\sccache"
+ displayName: Install sccache (Windows)
+ condition: and(succeeded(), eq(variables['Agent.OS'], 'Windows_NT'))
+
+ - bash: |
+ set -ex
+ sccache -V
+ displayName: sccache version
+
+ - bash: |
+ set -ex
+ echo "##vso[task.setvariable variable=RUSTC_WRAPPER;]sccache"
+ SCCACHE_ERROR_LOG=`pwd`/sccache.log RUST_LOG=debug sscache --start-server
+ sscache -s
+ cat sccache.log
+ displayName: Start sccache
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 6d3dfaa0f..80b874e5c 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -41,6 +41,7 @@ jobs:
- template: .azure/install-rust.yml
- template: .azure/install-cmake.yml
- template: .azure/install-llvm.yml
+ - template: .azure/install-sscache.yml
- task: CacheBeta@0
inputs:
key: |
From 1045d46d3d8cb6296f4ab2a858834187f3eaddc6 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 10 Aug 2019 17:41:50 -0700
Subject: [PATCH 11/54] Fixed reference error
---
azure-pipelines.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 80b874e5c..7ef749d2d 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -41,7 +41,7 @@ jobs:
- template: .azure/install-rust.yml
- template: .azure/install-cmake.yml
- template: .azure/install-llvm.yml
- - template: .azure/install-sscache.yml
+ - template: .azure/install-sccache.yml
- task: CacheBeta@0
inputs:
key: |
From 025bd9e32c980cdd12a27f8118998fa7b7239a7c Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 10 Aug 2019 17:47:09 -0700
Subject: [PATCH 12/54] Trying to fix sccache install
---
.azure/install-sccache.yml | 13 +++++++++----
1 file changed, 9 insertions(+), 4 deletions(-)
diff --git a/.azure/install-sccache.yml b/.azure/install-sccache.yml
index 3111aac9d..26d626fa4 100644
--- a/.azure/install-sccache.yml
+++ b/.azure/install-sccache.yml
@@ -7,7 +7,9 @@ steps:
set -e
curl -Lfo sccache.tar.gz https://github.com/mozilla/sccache/releases/download/0.2.10/sccache-0.2.10-x86_64-apple-darwin.tar.gz
tar -xzf sccache.tar.gz
- cp sccache-*/sccache /usr/local/bin/
+ mv sccache-* sccache
+ export SCCACHE_PATH="`pwd`/sccache/"
+ echo "##vso[task.prependpath]$SCCACHE_PATH"
displayName: Install sccache (macOS)
condition: and(succeeded(), eq(variables['Agent.OS'], 'Darwin'))
@@ -15,15 +17,18 @@ steps:
set -e
curl -Lfo sccache.tar.gz https://github.com/mozilla/sccache/releases/download/0.2.10/sccache-0.2.10-x86_64-unknown-linux-musl.tar.gz
tar -xzf sccache.tar.gz
- sudo cp sccache-*/sccache /usr/local/bin/
+ mv sccache-* sccache
+ export SCCACHE_PATH="`pwd`/sccache/"
+ echo "##vso[task.prependpath]$SCCACHE_PATH"
displayName: Install sccache (Linux)
condition: and(succeeded(), eq(variables['Agent.OS'], 'Linux'))
- bash: |
curl -Lfo sccache.tar.gz https://github.com/mozilla/sccache/releases/download/0.2.10/sccache-0.2.10-x86_64-pc-windows-msvc.tar.gz
tar -xzf sccache.tar.gz
- move sccache-* sccache
- echo "##vso[task.prependpath]%CD%\sccache"
+ mv sccache-* sccache
+ export SCCACHE_PATH="`pwd`/sccache/"
+ echo "##vso[task.prependpath]$SCCACHE_PATH"
displayName: Install sccache (Windows)
condition: and(succeeded(), eq(variables['Agent.OS'], 'Windows_NT'))
From f83e4edf4f7f671a759434133cf124b72cceea25 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 10 Aug 2019 17:49:31 -0700
Subject: [PATCH 13/54] Fixed references to sccache
---
.azure/install-sccache.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.azure/install-sccache.yml b/.azure/install-sccache.yml
index 26d626fa4..6174e3884 100644
--- a/.azure/install-sccache.yml
+++ b/.azure/install-sccache.yml
@@ -40,7 +40,7 @@ steps:
- bash: |
set -ex
echo "##vso[task.setvariable variable=RUSTC_WRAPPER;]sccache"
- SCCACHE_ERROR_LOG=`pwd`/sccache.log RUST_LOG=debug sscache --start-server
- sscache -s
+ SCCACHE_ERROR_LOG=`pwd`/sccache.log RUST_LOG=debug sccache --start-server
+ sccache -s
cat sccache.log
displayName: Start sccache
From af12f627ade66c2c329c79bda459ef74c1b29d08 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 10 Aug 2019 17:57:35 -0700
Subject: [PATCH 14/54] Improved sccache usage
---
.azure/install-sccache.yml | 1 +
azure-pipelines.yml | 3 +++
2 files changed, 4 insertions(+)
diff --git a/.azure/install-sccache.yml b/.azure/install-sccache.yml
index 6174e3884..c5aabe367 100644
--- a/.azure/install-sccache.yml
+++ b/.azure/install-sccache.yml
@@ -38,6 +38,7 @@ steps:
displayName: sccache version
- bash: |
+ mkdir -p $SCCACHE_DIR
set -ex
echo "##vso[task.setvariable variable=RUSTC_WRAPPER;]sccache"
SCCACHE_ERROR_LOG=`pwd`/sccache.log RUST_LOG=debug sccache --start-server
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 7ef749d2d..f0e8df61e 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -32,6 +32,9 @@ jobs:
imageName: 'vs2017-win2016'
rust_toolchain: stable
+ variables:
+ SCCACHE_DIR: $(Pipeline.Workspace)/.sccache
+
pool:
vmImage: $(imageName)
From 3517bd51ebeab53ebd95a01b5f49ecf3f7395f00 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 10 Aug 2019 18:02:57 -0700
Subject: [PATCH 15/54] Trying to fix sccache
---
.azure/install-sccache.yml | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/.azure/install-sccache.yml b/.azure/install-sccache.yml
index c5aabe367..ce31633db 100644
--- a/.azure/install-sccache.yml
+++ b/.azure/install-sccache.yml
@@ -40,7 +40,8 @@ steps:
- bash: |
mkdir -p $SCCACHE_DIR
set -ex
- echo "##vso[task.setvariable variable=RUSTC_WRAPPER;]sccache"
+ echo "##vso[task.setvariable variable=RUSTC_WRAPPER]sccache"
+ env
SCCACHE_ERROR_LOG=`pwd`/sccache.log RUST_LOG=debug sccache --start-server
sccache -s
cat sccache.log
From fff86f8043f635f1364065940297accab3f7f568 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 10 Aug 2019 18:15:29 -0700
Subject: [PATCH 16/54] Fix sccache in Windows
---
.azure/install-sccache.yml | 21 ++++++++++-----------
azure-pipelines.yml | 2 +-
2 files changed, 11 insertions(+), 12 deletions(-)
diff --git a/.azure/install-sccache.yml b/.azure/install-sccache.yml
index ce31633db..09d7fbefa 100644
--- a/.azure/install-sccache.yml
+++ b/.azure/install-sccache.yml
@@ -8,8 +8,8 @@ steps:
curl -Lfo sccache.tar.gz https://github.com/mozilla/sccache/releases/download/0.2.10/sccache-0.2.10-x86_64-apple-darwin.tar.gz
tar -xzf sccache.tar.gz
mv sccache-* sccache
- export SCCACHE_PATH="`pwd`/sccache/"
- echo "##vso[task.prependpath]$SCCACHE_PATH"
+ sccache=`pwd`/sccache/sccache
+ echo "##vso[task.setvariable variable=SCCACHE_BIN]$sccache"
displayName: Install sccache (macOS)
condition: and(succeeded(), eq(variables['Agent.OS'], 'Darwin'))
@@ -18,8 +18,8 @@ steps:
curl -Lfo sccache.tar.gz https://github.com/mozilla/sccache/releases/download/0.2.10/sccache-0.2.10-x86_64-unknown-linux-musl.tar.gz
tar -xzf sccache.tar.gz
mv sccache-* sccache
- export SCCACHE_PATH="`pwd`/sccache/"
- echo "##vso[task.prependpath]$SCCACHE_PATH"
+ sccache=`pwd`/sccache/sccache
+ echo "##vso[task.setvariable variable=SCCACHE_BIN]$sccache"
displayName: Install sccache (Linux)
condition: and(succeeded(), eq(variables['Agent.OS'], 'Linux'))
@@ -27,22 +27,21 @@ steps:
curl -Lfo sccache.tar.gz https://github.com/mozilla/sccache/releases/download/0.2.10/sccache-0.2.10-x86_64-pc-windows-msvc.tar.gz
tar -xzf sccache.tar.gz
mv sccache-* sccache
- export SCCACHE_PATH="`pwd`/sccache/"
- echo "##vso[task.prependpath]$SCCACHE_PATH"
+ sccache=`pwd`/sccache/sccache.exe
+ echo "##vso[task.setvariable variable=SCCACHE_BIN]$sccache"
displayName: Install sccache (Windows)
condition: and(succeeded(), eq(variables['Agent.OS'], 'Windows_NT'))
- bash: |
set -ex
- sccache -V
+ $SCCACHE_BIN -V
displayName: sccache version
- bash: |
mkdir -p $SCCACHE_DIR
set -ex
- echo "##vso[task.setvariable variable=RUSTC_WRAPPER]sccache"
- env
- SCCACHE_ERROR_LOG=`pwd`/sccache.log RUST_LOG=debug sccache --start-server
- sccache -s
+ echo "##vso[task.setvariable variable=RUSTC_WRAPPER]$SCCACHE_BIN"
+ SCCACHE_ERROR_LOG=`pwd`/sccache.log RUST_LOG=debug $SCCACHE_BIN --start-server
+ $SCCACHE_BIN -s
cat sccache.log
displayName: Start sccache
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index f0e8df61e..1b9e65531 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -42,9 +42,9 @@ jobs:
- checkout: self
submodules: true
- template: .azure/install-rust.yml
+ - template: .azure/install-sccache.yml
- template: .azure/install-cmake.yml
- template: .azure/install-llvm.yml
- - template: .azure/install-sccache.yml
- task: CacheBeta@0
inputs:
key: |
From 8f31678813a26fdb487d5ff60741d4968597eaca Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 10 Aug 2019 18:17:01 -0700
Subject: [PATCH 17/54] Improve cache
---
azure-pipelines.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 1b9e65531..da252883e 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -48,10 +48,10 @@ jobs:
- task: CacheBeta@0
inputs:
key: |
- cargo
+ sccache
$(Agent.OS)
$(Build.SourcesDirectory)/Cargo.lock
- path: $(Build.SourcesDirectory)/target
+ path: $(SCCACHE_DIR)
displayName: Cache Cargo Target
- bash: make test
displayName: Tests (*nix)
From ff6b0bb46e9e6b4d0e1b0fd7b2e85bcc21795eb1 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 24 Aug 2019 08:53:08 -0700
Subject: [PATCH 18/54] Added build step
---
azure-pipelines.yml | 64 +++++++++++++++++++++++++++++----------------
1 file changed, 42 insertions(+), 22 deletions(-)
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index da252883e..876d3e2d9 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -66,31 +66,51 @@ jobs:
# - bash: make integration-tests
# displayName: Integration Tests
-# - job: Build
-# strategy:
-# matrix:
-# linux:
-# imageName: 'ubuntu-16.04'
-# mac:
-# imageName: 'macos-10.14'
-# MACOSX_DEPLOYMENT_TARGET: 10.10
-# windows:
-# imageName: 'vs2017-win2016'
-# RUSTFLAGS: -Ctarget-feature=+crt-static
+- 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
-# variables:
-# rust_toolchain: nightly-2019-06-10
+ variables:
+ SCCACHE_DIR: $(Pipeline.Workspace)/.sccache
-# pool:
-# vmImage: $(imageName)
-
-# steps:
-# - checkout: self
-# submodules: true
-# - template: .azure/install-rust.yml
-# - bash: make test
-# displayName: Tests
+ 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
+ - task: CacheBeta@0
+ inputs:
+ key: |
+ sccache
+ $(Agent.OS)
+ $(Build.SourcesDirectory)/Cargo.lock
+ path: $(SCCACHE_DIR)
+ displayName: Cache Cargo Target
+ - bash: make release
+ displayName: Build Release
+ condition: and(succeeded(), not(eq(variables['Agent.OS'], 'Windows_NT')))
+ - bash: release-llvm
+ displayName: Build (Windows)
+ condition: and(succeeded(), eq(variables['Agent.OS'], 'Windows_NT'))
+ - bash: make capi
+ displayName: Check with Flags
+ condition: and(succeeded(), not(eq(variables['Agent.OS'], 'Windows_NT')))
trigger:
branches:
From 9411ba64f86b5c4751ba51104549bb39f6145361 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 24 Aug 2019 09:14:15 -0700
Subject: [PATCH 19/54] Fixed windows make release llvm
---
azure-pipelines.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 876d3e2d9..e2970c765 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -105,7 +105,7 @@ jobs:
- bash: make release
displayName: Build Release
condition: and(succeeded(), not(eq(variables['Agent.OS'], 'Windows_NT')))
- - bash: release-llvm
+ - bash: make release-llvm
displayName: Build (Windows)
condition: and(succeeded(), eq(variables['Agent.OS'], 'Windows_NT'))
- bash: make capi
From abcde5face6dd3fc1231160e5bdf27b7a98aeb12 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 24 Aug 2019 10:22:39 -0700
Subject: [PATCH 20/54] Trying to simplify cache
---
azure-pipelines.yml | 10 ++--------
1 file changed, 2 insertions(+), 8 deletions(-)
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index e2970c765..a62da5904 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -47,10 +47,7 @@ jobs:
- template: .azure/install-llvm.yml
- task: CacheBeta@0
inputs:
- key: |
- sccache
- $(Agent.OS)
- $(Build.SourcesDirectory)/Cargo.lock
+ key: sccache | $(Agent.OS) | Cargo.lock
path: $(SCCACHE_DIR)
displayName: Cache Cargo Target
- bash: make test
@@ -96,10 +93,7 @@ jobs:
- template: .azure/install-llvm.yml
- task: CacheBeta@0
inputs:
- key: |
- sccache
- $(Agent.OS)
- $(Build.SourcesDirectory)/Cargo.lock
+ key: sccache | $(Agent.OS) | Cargo.lock
path: $(SCCACHE_DIR)
displayName: Cache Cargo Target
- bash: make release
From 989e7129abacd29fceff084871e420cadd28484d Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 24 Aug 2019 11:45:44 -0700
Subject: [PATCH 21/54] Use Azure Blog Storage cache
---
.azure/install-sccache.yml | 2 +-
azure-pipelines.yml | 28 ++++++++++++++--------------
2 files changed, 15 insertions(+), 15 deletions(-)
diff --git a/.azure/install-sccache.yml b/.azure/install-sccache.yml
index 09d7fbefa..8102ed230 100644
--- a/.azure/install-sccache.yml
+++ b/.azure/install-sccache.yml
@@ -38,7 +38,7 @@ steps:
displayName: sccache version
- bash: |
- mkdir -p $SCCACHE_DIR
+ # mkdir -p $SCCACHE_DIR
set -ex
echo "##vso[task.setvariable variable=RUSTC_WRAPPER]$SCCACHE_BIN"
SCCACHE_ERROR_LOG=`pwd`/sccache.log RUST_LOG=debug $SCCACHE_BIN --start-server
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index a62da5904..a2c27e8a0 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -32,8 +32,8 @@ jobs:
imageName: 'vs2017-win2016'
rust_toolchain: stable
- variables:
- SCCACHE_DIR: $(Pipeline.Workspace)/.sccache
+ # variables:
+ # SCCACHE_DIR: $(Pipeline.Workspace)/.sccache
pool:
vmImage: $(imageName)
@@ -45,11 +45,11 @@ jobs:
- template: .azure/install-sccache.yml
- template: .azure/install-cmake.yml
- template: .azure/install-llvm.yml
- - task: CacheBeta@0
- inputs:
- key: sccache | $(Agent.OS) | Cargo.lock
- path: $(SCCACHE_DIR)
- displayName: Cache Cargo Target
+ # - task: CacheBeta@0
+ # inputs:
+ # key: sccache | $(Agent.OS) | Cargo.lock
+ # path: $(SCCACHE_DIR)
+ # displayName: Cache Cargo Target
- bash: make test
displayName: Tests (*nix)
condition: and(succeeded(), not(eq(variables['Agent.OS'], 'Windows_NT')))
@@ -78,8 +78,8 @@ jobs:
rust_toolchain: stable
RUSTFLAGS: -Ctarget-feature=+crt-static
- variables:
- SCCACHE_DIR: $(Pipeline.Workspace)/.sccache
+ # variables:
+ # SCCACHE_DIR: $(Pipeline.Workspace)/.sccache
pool:
vmImage: $(imageName)
@@ -91,11 +91,11 @@ jobs:
- template: .azure/install-sccache.yml
- template: .azure/install-cmake.yml
- template: .azure/install-llvm.yml
- - task: CacheBeta@0
- inputs:
- key: sccache | $(Agent.OS) | Cargo.lock
- path: $(SCCACHE_DIR)
- displayName: Cache Cargo Target
+ # - task: CacheBeta@0
+ # inputs:
+ # key: sccache | $(Agent.OS) | Cargo.lock
+ # path: $(SCCACHE_DIR)
+ # displayName: Cache Cargo Target
- bash: make release
displayName: Build Release
condition: and(succeeded(), not(eq(variables['Agent.OS'], 'Windows_NT')))
From f772dbfbb6a96feb9f8b9b44ddffc56938861146 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 24 Aug 2019 11:57:14 -0700
Subject: [PATCH 22/54] Fixed sccache
---
.azure/install-sccache.yml | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/.azure/install-sccache.yml b/.azure/install-sccache.yml
index 8102ed230..8c2460ecb 100644
--- a/.azure/install-sccache.yml
+++ b/.azure/install-sccache.yml
@@ -40,8 +40,12 @@ steps:
- bash: |
# mkdir -p $SCCACHE_DIR
set -ex
+ env
echo "##vso[task.setvariable variable=RUSTC_WRAPPER]$SCCACHE_BIN"
SCCACHE_ERROR_LOG=`pwd`/sccache.log RUST_LOG=debug $SCCACHE_BIN --start-server
$SCCACHE_BIN -s
cat sccache.log
displayName: Start sccache
+ env:
+ SCCACHE_AZURE_CONNECTION_STRING: $(SCCACHE_AZURE_CONNECTION_STRING)
+ SCCACHE_AZURE_BLOB_CONTAINER: $(SCCACHE_AZURE_BLOB_CONTAINER)
From a18fdde72c1f3b68ba8f91a203e0e051aecb1728 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 24 Aug 2019 12:11:18 -0700
Subject: [PATCH 23/54] Trying to fix sccache
---
.azure/install-sccache.yml | 62 +++++++++++++++-----------------------
1 file changed, 24 insertions(+), 38 deletions(-)
diff --git a/.azure/install-sccache.yml b/.azure/install-sccache.yml
index 8c2460ecb..dffbb13d3 100644
--- a/.azure/install-sccache.yml
+++ b/.azure/install-sccache.yml
@@ -1,51 +1,37 @@
# This template installs sccache (Shared Compilation Cache)
# More info: https://github.com/mozilla/sccache
+# Template originally from wasm-bindgen
+# https://github.com/rustwasm/wasm-bindgen/blob/master/ci/azure-install-sccache.yml
steps:
-
- - bash: |
- set -e
- curl -Lfo sccache.tar.gz https://github.com/mozilla/sccache/releases/download/0.2.10/sccache-0.2.10-x86_64-apple-darwin.tar.gz
- tar -xzf sccache.tar.gz
- mv sccache-* sccache
- sccache=`pwd`/sccache/sccache
- echo "##vso[task.setvariable variable=SCCACHE_BIN]$sccache"
- displayName: Install sccache (macOS)
- condition: and(succeeded(), eq(variables['Agent.OS'], 'Darwin'))
-
- - bash: |
- set -e
- curl -Lfo sccache.tar.gz https://github.com/mozilla/sccache/releases/download/0.2.10/sccache-0.2.10-x86_64-unknown-linux-musl.tar.gz
- tar -xzf sccache.tar.gz
- mv sccache-* sccache
- sccache=`pwd`/sccache/sccache
- echo "##vso[task.setvariable variable=SCCACHE_BIN]$sccache"
- displayName: Install sccache (Linux)
- condition: and(succeeded(), eq(variables['Agent.OS'], 'Linux'))
-
- - bash: |
- curl -Lfo sccache.tar.gz https://github.com/mozilla/sccache/releases/download/0.2.10/sccache-0.2.10-x86_64-pc-windows-msvc.tar.gz
- tar -xzf sccache.tar.gz
- mv sccache-* sccache
- sccache=`pwd`/sccache/sccache.exe
- echo "##vso[task.setvariable variable=SCCACHE_BIN]$sccache"
- displayName: Install sccache (Windows)
- condition: and(succeeded(), eq(variables['Agent.OS'], 'Windows_NT'))
-
- bash: |
set -ex
- $SCCACHE_BIN -V
- displayName: sccache version
-
+ curl -L https://github.com/mozilla/sccache/releases/download/0.2.10/sccache-0.2.10-x86_64-unknown-linux-musl.tar.gz | tar xzf -
+ sccache=`pwd`/sccache-0.2.10-x86_64-unknown-linux-musl/sccache
+ echo "##vso[task.setvariable variable=RUSTC_WRAPPER;]$sccache"
+ displayName: Install sccache - Linux
+ condition: eq( variables['Agent.OS'], 'Linux' )
+ - bash: |
+ set -ex
+ brew install openssl@1.1
+ curl -L https://github.com/mozilla/sccache/releases/download/0.2.10/sccache-0.2.10-x86_64-apple-darwin.tar.gz | tar xzf -
+ sccache=`pwd`/sccache-0.2.10-x86_64-apple-darwin/sccache
+ echo "##vso[task.setvariable variable=RUSTC_WRAPPER;]$sccache"
+ displayName: Install sccache - Darwin
+ condition: eq( variables['Agent.OS'], 'Darwin' )
+ - powershell: |
+ Invoke-WebRequest https://github.com/mozilla/sccache/releases/download/0.2.10/sccache-0.2.10-x86_64-pc-windows-msvc.tar.gz -OutFile sccache.tar.gz
+ tar xzf sccache.tar.gz
+ Write-Host "##vso[task.setvariable variable=RUSTC_WRAPPER;]$pwd/sccache-0.2.10-x86_64-pc-windows-msvc/sccache.exe"
+ displayName: Install sccache - Windows
+ condition: eq( variables['Agent.OS'], 'Windows_NT' )
- bash: |
- # mkdir -p $SCCACHE_DIR
set -ex
env
- echo "##vso[task.setvariable variable=RUSTC_WRAPPER]$SCCACHE_BIN"
- SCCACHE_ERROR_LOG=`pwd`/sccache.log RUST_LOG=debug $SCCACHE_BIN --start-server
- $SCCACHE_BIN -s
+ SCCACHE_ERROR_LOG=`pwd`/sccache.log RUST_LOG=debug $RUSTC_WRAPPER --start-server
+ $RUSTC_WRAPPER -s
cat sccache.log
- displayName: Start sccache
+ displayName: "start sccache"
env:
SCCACHE_AZURE_CONNECTION_STRING: $(SCCACHE_AZURE_CONNECTION_STRING)
SCCACHE_AZURE_BLOB_CONTAINER: $(SCCACHE_AZURE_BLOB_CONTAINER)
From 8739d9002b0d2cdbf36a6170199844856d2e7a9b Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 24 Aug 2019 12:52:39 -0700
Subject: [PATCH 24/54] Improved Azure pipelines integration
---
azure-pipelines.yml | 25 ++++++-------------------
1 file changed, 6 insertions(+), 19 deletions(-)
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index a2c27e8a0..b3f29e83d 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -32,9 +32,6 @@ jobs:
imageName: 'vs2017-win2016'
rust_toolchain: stable
- # variables:
- # SCCACHE_DIR: $(Pipeline.Workspace)/.sccache
-
pool:
vmImage: $(imageName)
@@ -45,11 +42,6 @@ jobs:
- template: .azure/install-sccache.yml
- template: .azure/install-cmake.yml
- template: .azure/install-llvm.yml
- # - task: CacheBeta@0
- # inputs:
- # key: sccache | $(Agent.OS) | Cargo.lock
- # path: $(SCCACHE_DIR)
- # displayName: Cache Cargo Target
- bash: make test
displayName: Tests (*nix)
condition: and(succeeded(), not(eq(variables['Agent.OS'], 'Windows_NT')))
@@ -78,9 +70,6 @@ jobs:
rust_toolchain: stable
RUSTFLAGS: -Ctarget-feature=+crt-static
- # variables:
- # SCCACHE_DIR: $(Pipeline.Workspace)/.sccache
-
pool:
vmImage: $(imageName)
@@ -91,20 +80,18 @@ jobs:
- template: .azure/install-sccache.yml
- template: .azure/install-cmake.yml
- template: .azure/install-llvm.yml
- # - task: CacheBeta@0
- # inputs:
- # key: sccache | $(Agent.OS) | Cargo.lock
- # path: $(SCCACHE_DIR)
- # displayName: Cache Cargo Target
- bash: make release
- displayName: Build 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: Check with Flags
- condition: and(succeeded(), not(eq(variables['Agent.OS'], 'Windows_NT')))
+ 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:
From 034ffcff5c97962f1df6f197f1279a7c3e251296 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 24 Aug 2019 12:53:16 -0700
Subject: [PATCH 25/54] Use macos for linting
---
azure-pipelines.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index b3f29e83d..43060170e 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -4,7 +4,7 @@ name: $(Build.SourceBranch)-$(date:yyyyMMdd)$(rev:.r)
jobs:
- job: lint
pool:
- vmImage: 'ubuntu-16.04'
+ vmImage: 'macos-10.14'
steps:
- checkout: self
submodules: true
From 8f1a77735deb885b12b455e2976a84ed6e76643d Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 24 Aug 2019 13:16:58 -0700
Subject: [PATCH 26/54] Added sccache log
---
azure-pipelines.yml | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 43060170e..47d9e5cf1 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -51,6 +51,8 @@ jobs:
- bash: make check
displayName: Check with Flags
condition: and(succeeded(), not(eq(variables['Agent.OS'], 'Windows_NT')))
+ - script: "%RUSTC_WRAPPER% -s"
+ - script: cat sccache.log
# - bash: make integration-tests
# displayName: Integration Tests
@@ -92,6 +94,8 @@ jobs:
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'))
+ - script: "%RUSTC_WRAPPER% -s"
+ - script: cat sccache.log
trigger:
branches:
From 8243cf0737a7b78de9b9e13c7b94abb73b7f6521 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 24 Aug 2019 21:53:11 -0700
Subject: [PATCH 27/54] Trying to fix azure build
---
azure-pipelines.yml | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 47d9e5cf1..7773339ee 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -51,8 +51,6 @@ jobs:
- bash: make check
displayName: Check with Flags
condition: and(succeeded(), not(eq(variables['Agent.OS'], 'Windows_NT')))
- - script: "%RUSTC_WRAPPER% -s"
- - script: cat sccache.log
# - bash: make integration-tests
# displayName: Integration Tests
@@ -70,7 +68,7 @@ jobs:
windows:
imageName: 'vs2017-win2016'
rust_toolchain: stable
- RUSTFLAGS: -Ctarget-feature=+crt-static
+ # RUSTFLAGS: -Ctarget-feature=+crt-static
pool:
vmImage: $(imageName)
@@ -94,8 +92,6 @@ jobs:
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'))
- - script: "%RUSTC_WRAPPER% -s"
- - script: cat sccache.log
trigger:
branches:
From 01f1ad5b30db3f5d1fc35575cd0bd63a1273ff51 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 24 Aug 2019 22:19:29 -0700
Subject: [PATCH 28/54] Trying to fix llvm in windows
---
.azure/install-llvm.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.azure/install-llvm.yml b/.azure/install-llvm.yml
index 29e943005..a7fa86a31 100644
--- a/.azure/install-llvm.yml
+++ b/.azure/install-llvm.yml
@@ -36,9 +36,9 @@ steps:
else
curl -OL https://github.com/wasmerio/windows-llvm-build/releases/download/v8.0.0/llvm-8.0.0-install.zip
7z x llvm-8.0.0-install.zip
- export LLVM_PATH="`pwd`/llvm-8.0.0-install/"
+ LLVM_PATH=`pwd`/llvm-8.0.0-install/
echo "##vso[task.prependpath]$LLVM_PATH/bin"
- echo "##vso[task.setvariable variable=LLVM_SYS_80_PREFIX]$LLVM_PATH"
+ echo "##vso[task.setvariable variable=LLVM_SYS_80_PREFIX;]$LLVM_PATH"
# chocolatey install cmake --installargs 'ADD_CMAKE_TO_PATH=System'
fi
displayName: "Install LLVM (Windows)"
From 998a25e2d1bd1e270c54a5febed9492def49c237 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sun, 25 Aug 2019 00:24:21 -0700
Subject: [PATCH 29/54] Fixed windows tests
---
lib/runtime-c-api/tests/CMakeLists.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/runtime-c-api/tests/CMakeLists.txt b/lib/runtime-c-api/tests/CMakeLists.txt
index 1a3351123..7db3cbcb0 100644
--- a/lib/runtime-c-api/tests/CMakeLists.txt
+++ b/lib/runtime-c-api/tests/CMakeLists.txt
@@ -18,7 +18,7 @@ add_executable(test-context test-context.c)
add_executable(test-module-import-instantiate test-module-import-instantiate.c)
find_library(
- WASMER_LIB NAMES libwasmer_runtime_c_api.dylib libwasmer_runtime_c_api.so libwasmer_runtime_c_api.dll
+ WASMER_LIB NAMES libwasmer_runtime_c_api.dylib libwasmer_runtime_c_api.so wasmer_runtime_c_api.dll
PATHS ${CMAKE_SOURCE_DIR}/../../../target/release/
)
From 410c113b523927ce96f3bc1fe0fdaf9933439a20 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sun, 25 Aug 2019 01:02:49 -0700
Subject: [PATCH 30/54] Trying to fix windows LLVM PATH
---
.azure/install-llvm.yml | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/.azure/install-llvm.yml b/.azure/install-llvm.yml
index a7fa86a31..745cc1d98 100644
--- a/.azure/install-llvm.yml
+++ b/.azure/install-llvm.yml
@@ -36,9 +36,10 @@ steps:
else
curl -OL https://github.com/wasmerio/windows-llvm-build/releases/download/v8.0.0/llvm-8.0.0-install.zip
7z x llvm-8.0.0-install.zip
- LLVM_PATH=`pwd`/llvm-8.0.0-install/
+ LLVM_PATH=`pwd`/llvm-8.0.0-install
+ LLVM_PATH_WIN=`echo %cd%`\\llvm-8.0.0-install
echo "##vso[task.prependpath]$LLVM_PATH/bin"
- echo "##vso[task.setvariable variable=LLVM_SYS_80_PREFIX;]$LLVM_PATH"
+ echo "##vso[task.setvariable variable=LLVM_SYS_80_PREFIX;]$LLVM_PATH_WIN"
# chocolatey install cmake --installargs 'ADD_CMAKE_TO_PATH=System'
fi
displayName: "Install LLVM (Windows)"
From 2a1c78cbb8980be49bff629f3b4ae54a9c8cb882 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sun, 25 Aug 2019 01:03:54 -0700
Subject: [PATCH 31/54] Added env to LLVM
---
.azure/install-llvm.yml | 1 +
1 file changed, 1 insertion(+)
diff --git a/.azure/install-llvm.yml b/.azure/install-llvm.yml
index 745cc1d98..673eb6438 100644
--- a/.azure/install-llvm.yml
+++ b/.azure/install-llvm.yml
@@ -47,5 +47,6 @@ steps:
- bash: |
set -ex
+ env
llvm-config --version
displayName: LLVM version
From d12c3470af64c10ff49aa1827faf3f21b52e39ab Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sun, 25 Aug 2019 01:12:33 -0700
Subject: [PATCH 32/54] Trying to fix LLVM_PATH_WIN
---
.azure/install-llvm.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.azure/install-llvm.yml b/.azure/install-llvm.yml
index 673eb6438..f035ed635 100644
--- a/.azure/install-llvm.yml
+++ b/.azure/install-llvm.yml
@@ -37,7 +37,7 @@ steps:
curl -OL https://github.com/wasmerio/windows-llvm-build/releases/download/v8.0.0/llvm-8.0.0-install.zip
7z x llvm-8.0.0-install.zip
LLVM_PATH=`pwd`/llvm-8.0.0-install
- LLVM_PATH_WIN=`echo %cd%`\\llvm-8.0.0-install
+ LLVM_PATH_WIN=`cd`\\llvm-8.0.0-install
echo "##vso[task.prependpath]$LLVM_PATH/bin"
echo "##vso[task.setvariable variable=LLVM_SYS_80_PREFIX;]$LLVM_PATH_WIN"
# chocolatey install cmake --installargs 'ADD_CMAKE_TO_PATH=System'
From 0d450607cf40a95606096d82940016bd58daeb76 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sun, 25 Aug 2019 01:22:54 -0700
Subject: [PATCH 33/54] Trying to fix windows llvm
---
.azure/install-llvm.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.azure/install-llvm.yml b/.azure/install-llvm.yml
index f035ed635..770684db2 100644
--- a/.azure/install-llvm.yml
+++ b/.azure/install-llvm.yml
@@ -37,9 +37,9 @@ steps:
curl -OL https://github.com/wasmerio/windows-llvm-build/releases/download/v8.0.0/llvm-8.0.0-install.zip
7z x llvm-8.0.0-install.zip
LLVM_PATH=`pwd`/llvm-8.0.0-install
- LLVM_PATH_WIN=`cd`\\llvm-8.0.0-install
+ LLVM_PATH_WIN=$SYSTEM_DEFAULTWORKINGDIRECTORY\llvm-8.0.0-install
echo "##vso[task.prependpath]$LLVM_PATH/bin"
- echo "##vso[task.setvariable variable=LLVM_SYS_80_PREFIX;]$LLVM_PATH_WIN"
+ echo "##vso[task.setvariable variable=LLVM_SYS_80_PREFIX]$LLVM_PATH_WIN"
# chocolatey install cmake --installargs 'ADD_CMAKE_TO_PATH=System'
fi
displayName: "Install LLVM (Windows)"
From 3d787b91248e21768695e1481745378d8d3d0d05 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sun, 25 Aug 2019 01:33:19 -0700
Subject: [PATCH 34/54] Small llvm path win fix
---
.azure/install-llvm.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.azure/install-llvm.yml b/.azure/install-llvm.yml
index 770684db2..0a2a674b1 100644
--- a/.azure/install-llvm.yml
+++ b/.azure/install-llvm.yml
@@ -37,7 +37,7 @@ steps:
curl -OL https://github.com/wasmerio/windows-llvm-build/releases/download/v8.0.0/llvm-8.0.0-install.zip
7z x llvm-8.0.0-install.zip
LLVM_PATH=`pwd`/llvm-8.0.0-install
- LLVM_PATH_WIN=$SYSTEM_DEFAULTWORKINGDIRECTORY\llvm-8.0.0-install
+ LLVM_PATH_WIN=$SYSTEM_DEFAULTWORKINGDIRECTORY\\llvm-8.0.0-install
echo "##vso[task.prependpath]$LLVM_PATH/bin"
echo "##vso[task.setvariable variable=LLVM_SYS_80_PREFIX]$LLVM_PATH_WIN"
# chocolatey install cmake --installargs 'ADD_CMAKE_TO_PATH=System'
From 4da56d1dc62fdebab8de02fa44108d48adc16068 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sun, 25 Aug 2019 17:32:04 -0700
Subject: [PATCH 35/54] Fix C-API on Windows
---
azure-pipelines.yml | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 7773339ee..0c2e189a0 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -87,7 +87,13 @@ jobs:
displayName: Build (Windows)
condition: and(succeeded(), eq(variables['Agent.OS'], 'Windows_NT'))
- bash: make capi
- displayName: Build c-api
+ displayName: Build c-api (*nix)
+ condition: and(succeeded(), not(eq(variables['Agent.OS'], 'Windows_NT')))
+ - bash: |
+ cargo build --release
+ cargo build -p wasmer-runtime-c-api --release
+ displayName: Build c-api (Windows)
+ condition: and(succeeded(), eq(variables['Agent.OS'], 'Windows_NT'))
- bash: |
install_name_tool -id "@rpath/libwasmer_runtime_c_api.dylib" target/release/libwasmer_runtime_c_api.dylib
displayName: Build c-api (Darwin fix)
From 2b08e19a7a0a89651adbbbeed810252b0b410ba9 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sun, 25 Aug 2019 18:18:12 -0700
Subject: [PATCH 36/54] Separate check out of tests
---
azure-pipelines.yml | 15 ++++++++++++---
1 file changed, 12 insertions(+), 3 deletions(-)
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 0c2e189a0..9f657ee7b 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -48,13 +48,22 @@ jobs:
- bash: make spectests-cranelift
displayName: Tests (Windows)
condition: and(succeeded(), eq(variables['Agent.OS'], 'Windows_NT'))
+
+- job: Check
+ pool:
+ vmImage: 'macos-10.14'
+
+ 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 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:
From e48da878e340d3e9093e4170b04ab167a73d9194 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sun, 25 Aug 2019 18:19:56 -0700
Subject: [PATCH 37/54] Fixed rust toolchain for check
---
azure-pipelines.yml | 3 +++
1 file changed, 3 insertions(+)
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 9f657ee7b..4922c3d02 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -53,6 +53,9 @@ jobs:
pool:
vmImage: 'macos-10.14'
+ variables:
+ rust_toolchain: nightly-2019-06-10
+
steps:
- checkout: self
submodules: true
From 1dde19cc833940535be0e171eaa5f137e4779f2c Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sun, 25 Aug 2019 19:32:34 -0700
Subject: [PATCH 38/54] Added InnoSetup
---
.azure/install-innosetup.yml | 15 +++++++++++++++
azure-pipelines.yml | 1 +
2 files changed, 16 insertions(+)
create mode 100644 .azure/install-innosetup.yml
diff --git a/.azure/install-innosetup.yml b/.azure/install-innosetup.yml
new file mode 100644
index 000000000..192bffa50
--- /dev/null
+++ b/.azure/install-innosetup.yml
@@ -0,0 +1,15 @@
+# This template installs InnoSetup
+
+steps:
+ - powershell: |
+ Invoke-WebRequest https://s3-us-west-1.amazonaws.com/rust-lang-ci2/rust-ci-mirror/2017-08-22-is.exe
+ 2017-08-22-is.exe /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-
+ Write-Host "##vso[task.prependpath]C:\Program Files (x86)\Inno Setup 5"
+ displayName: Install InnoSetup - Windows
+ condition: eq(variables['Agent.OS'], 'Windows_NT')
+
+ - bash: |
+ set -ex
+ iscc
+ displayName: InnoSetup
+ condition: eq(variables['Agent.OS'], 'Windows_NT')
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 4922c3d02..255d1b688 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -63,6 +63,7 @@ jobs:
- template: .azure/install-sccache.yml
- template: .azure/install-cmake.yml
- template: .azure/install-llvm.yml
+ - template: .azure/install-innosetup.yml
- bash: make check
displayName: Check with Flags
condition: and(succeeded(), not(eq(variables['Agent.OS'], 'Windows_NT')))
From 8dc82915001a92e193c7eabcbfc6947c804e0276 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sun, 25 Aug 2019 19:37:35 -0700
Subject: [PATCH 39/54] Fixed innosetup install
---
azure-pipelines.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 255d1b688..31652fd2d 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -63,7 +63,6 @@ jobs:
- template: .azure/install-sccache.yml
- template: .azure/install-cmake.yml
- template: .azure/install-llvm.yml
- - template: .azure/install-innosetup.yml
- bash: make check
displayName: Check with Flags
condition: and(succeeded(), not(eq(variables['Agent.OS'], 'Windows_NT')))
@@ -92,6 +91,7 @@ jobs:
- template: .azure/install-rust.yml
- template: .azure/install-sccache.yml
- template: .azure/install-cmake.yml
+ - template: .azure/install-innosetup.yml
- template: .azure/install-llvm.yml
- bash: make release
displayName: Build (*nix)
From a31dae2bf24461c32971f0d935582ff03222280b Mon Sep 17 00:00:00 2001
From: Syrus
Date: Wed, 28 Aug 2019 17:38:01 -0700
Subject: [PATCH 40/54] Trying to improve InnoSetup
---
.azure/install-innosetup.yml | 6 ++----
.azure/install-rust.yml | 7 ++++---
2 files changed, 6 insertions(+), 7 deletions(-)
diff --git a/.azure/install-innosetup.yml b/.azure/install-innosetup.yml
index 192bffa50..f4d563221 100644
--- a/.azure/install-innosetup.yml
+++ b/.azure/install-innosetup.yml
@@ -1,10 +1,8 @@
# This template installs InnoSetup
steps:
- - powershell: |
- Invoke-WebRequest https://s3-us-west-1.amazonaws.com/rust-lang-ci2/rust-ci-mirror/2017-08-22-is.exe
- 2017-08-22-is.exe /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-
- Write-Host "##vso[task.prependpath]C:\Program Files (x86)\Inno Setup 5"
+ - bash: |
+ choco install innosetup -y
displayName: Install InnoSetup - Windows
condition: eq(variables['Agent.OS'], 'Windows_NT')
diff --git a/.azure/install-rust.yml b/.azure/install-rust.yml
index 7de2142b5..4a7a340c0 100644
--- a/.azure/install-rust.yml
+++ b/.azure/install-rust.yml
@@ -22,9 +22,10 @@ steps:
if [ -x "`command -v rustup`" ]; then
echo `command -v rustup` `rustup -V` installed
else
- curl -sSf -o rustup-init.exe https://win.rustup.rs
- ./rustup-init.exe -y --default-toolchain $RUST_TOOLCHAIN
- echo "##vso[task.prependpath]$USERPROFILE/.cargo/bin"
+ choco install rust -y
+ # curl -sSf -o rustup-init.exe https://win.rustup.rs
+ # ./rustup-init.exe -y --default-toolchain $RUST_TOOLCHAIN
+ # echo "##vso[task.prependpath]$USERPROFILE/.cargo/bin"
fi
displayName: "Install Rust (Windows)"
condition: eq(variables['Agent.OS'], 'Windows_NT')
From 366c6e1efbd4f2158b53b550effecf2b4dd76bb3 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Wed, 28 Aug 2019 17:53:33 -0700
Subject: [PATCH 41/54] Improved Azure Pipelines to make the releases
---
.azure/install-innosetup.yml | 17 +++++++++++------
azure-pipelines.yml | 25 +++++++++++++++++++------
2 files changed, 30 insertions(+), 12 deletions(-)
diff --git a/.azure/install-innosetup.yml b/.azure/install-innosetup.yml
index f4d563221..bd7e2980e 100644
--- a/.azure/install-innosetup.yml
+++ b/.azure/install-innosetup.yml
@@ -2,12 +2,17 @@
steps:
- bash: |
- choco install innosetup -y
+ set -ex
+ if [ -x "`command -v iscc`" ]; then
+ echo `command -v iscc` `iscc -?` installed
+ else
+ choco install innosetup -y
+ fi
displayName: Install InnoSetup - Windows
condition: eq(variables['Agent.OS'], 'Windows_NT')
- - bash: |
- set -ex
- iscc
- displayName: InnoSetup
- condition: eq(variables['Agent.OS'], 'Windows_NT')
+ # - bash: |
+ # set -ex
+ # iscc
+ # displayName: InnoSetup
+ # condition: eq(variables['Agent.OS'], 'Windows_NT')
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 31652fd2d..1d3b43f64 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -93,12 +93,6 @@ jobs:
- template: .azure/install-cmake.yml
- template: .azure/install-innosetup.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 (*nix)
condition: and(succeeded(), not(eq(variables['Agent.OS'], 'Windows_NT')))
@@ -107,6 +101,25 @@ jobs:
cargo build -p wasmer-runtime-c-api --release
displayName: Build c-api (Windows)
condition: and(succeeded(), eq(variables['Agent.OS'], 'Windows_NT'))
+ - 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: |
+ cargo build --release --manifest-path wapm-cli/Cargo.toml --features "telemetry update-notifications"
+ displayName: Build WAPM
+ - bash: |
+ mkdir -p artifacts
+ make build-install
+ displayName: Build Distribution (*nix)
+ condition: and(succeeded(), not(eq(variables['Agent.OS'], 'Windows_NT')))
+ - bash: |
+ cd ./src/installer
+ iscc wasmer.iss
+ displayName: Build Distribution (Windows)
+ condition: and(succeeded(), eq(variables['Agent.OS'], 'Windows_NT'))
- bash: |
install_name_tool -id "@rpath/libwasmer_runtime_c_api.dylib" target/release/libwasmer_runtime_c_api.dylib
displayName: Build c-api (Darwin fix)
From d2eb01f96766d20c0b00215e28ed5a7f502d527e Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 31 Aug 2019 21:12:55 -0700
Subject: [PATCH 42/54] Updated azure pipelines with github publish
---
azure-pipelines.yml | 41 ++++++++++++++++++++++++++++++++++-------
1 file changed, 34 insertions(+), 7 deletions(-)
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 1d3b43f64..17832505e 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -93,12 +93,24 @@ jobs:
- template: .azure/install-cmake.yml
- template: .azure/install-innosetup.yml
- template: .azure/install-llvm.yml
- - bash: make capi
- displayName: Build c-api (*nix)
- condition: and(succeeded(), not(eq(variables['Agent.OS'], 'Windows_NT')))
+ - bash: |
+ mkdir -p artifacts
+ displayName: Create Artifacts Dir
+ - bash: |
+ make capi
+ cp target/release/libwasmer_runtime_c_api.so ./artifacts
+ displayName: Build c-api (Linux)
+ condition: and(succeeded(), eq(variables['Agent.OS'], 'Linux'))
+ - bash: |
+ make capi
+ install_name_tool -id "@rpath/libwasmer_runtime_c_api.dylib" target/release/libwasmer_runtime_c_api.dylib
+ cp target/release/libwasmer_runtime_c_api.dylib ./artifacts
+ displayName: Build c-api (Darwin)
+ condition: and(succeeded(), eq(variables['Agent.OS'], 'Darwin'))
- bash: |
cargo build --release
cargo build -p wasmer-runtime-c-api --release
+ cp target/release/wasmer_runtime_c_api.dll ./artifacts
displayName: Build c-api (Windows)
condition: and(succeeded(), eq(variables['Agent.OS'], 'Windows_NT'))
- bash: make release
@@ -111,19 +123,34 @@ jobs:
cargo build --release --manifest-path wapm-cli/Cargo.toml --features "telemetry update-notifications"
displayName: Build WAPM
- bash: |
- mkdir -p artifacts
make build-install
+ cp ./wasmer.tar.gz ./artifacts/$(./scripts/binary-name.sh)
displayName: Build Distribution (*nix)
condition: and(succeeded(), not(eq(variables['Agent.OS'], 'Windows_NT')))
- bash: |
cd ./src/installer
iscc wasmer.iss
+ cp WasmerInstaller.exe ../../artifacts/wasmer-windows.exe
displayName: Build Distribution (Windows)
condition: and(succeeded(), eq(variables['Agent.OS'], 'Windows_NT'))
+ - publish: $(System.DefaultWorkingDirectory)/artifacts
+ artifact: release # -$(Agent.OS)
+
+- job: Publish
+ steps:
+ - download: current
+ artifact: release
- 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'))
+ ls $PIPELINE_WORKSPACE/release
+ env:
+ PIPELINE_WORKSPACE: $(Pipeline.Workspace)
+ - task: GithubRelease@0
+ displayName: 'Create GitHub Release'
+ inputs:
+ gitHubConnection: wasmerio
+ repositoryName: wasmerio/wasmer
+ tag: dev
+ assets: $(Pipeline.Workspace)/release
trigger:
branches:
From e8d666e321b74668a462157375c89ec18f523cf7 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 31 Aug 2019 21:13:46 -0700
Subject: [PATCH 43/54] Updated status badges
---
README.md | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/README.md b/README.md
index b26db97d6..509be9dde 100644
--- a/README.md
+++ b/README.md
@@ -5,17 +5,17 @@
-
-
+
+
-
+
-
+
From 74065ac171a3083980541b851ac7581386fde1d7 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 31 Aug 2019 21:14:01 -0700
Subject: [PATCH 44/54] Fixed publish dependency
---
azure-pipelines.yml | 2 ++
1 file changed, 2 insertions(+)
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 17832505e..0c051e605 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -137,6 +137,8 @@ jobs:
artifact: release # -$(Agent.OS)
- job: Publish
+ dependsOn:
+ - Build
steps:
- download: current
artifact: release
From c47c8a4cecc229c75052f76a9de5236723000077 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 31 Aug 2019 21:19:50 -0700
Subject: [PATCH 45/54] Separated C-API from CLI. Format pipelines
---
azure-pipelines.yml | 318 +++++++++++++++++++++++---------------------
1 file changed, 170 insertions(+), 148 deletions(-)
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 0c051e605..5d7229b7b 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -2,160 +2,182 @@ 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
+ - 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
- 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'))
-- 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
+ - job: Check
+ pool:
+ vmImage: "macos-10.14"
+ variables:
+ rust_toolchain: nightly-2019-06-10
+ 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 check
+ displayName: Check with Flags
+ condition: and(succeeded(), not(eq(variables['Agent.OS'], 'Windows_NT')))
- pool:
- vmImage: $(imageName)
+ - job: Build CLI
+ 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-innosetup.yml
+ - template: .azure/install-llvm.yml
+ - bash: |
+ mkdir -p artifacts
+ displayName: Create Artifacts Dir
+ - 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: |
+ cargo build --release --manifest-path wapm-cli/Cargo.toml --features "telemetry update-notifications"
+ displayName: Build WAPM
+ - bash: |
+ make build-install
+ cp ./wasmer.tar.gz ./artifacts/$(./scripts/binary-name.sh)
+ displayName: Build Distribution (*nix)
+ condition: and(succeeded(), not(eq(variables['Agent.OS'], 'Windows_NT')))
+ - bash: |
+ cd ./src/installer
+ iscc wasmer.iss
+ cp WasmerInstaller.exe ../../artifacts/wasmer-windows.exe
+ displayName: Build Distribution (Windows)
+ condition: and(succeeded(), eq(variables['Agent.OS'], 'Windows_NT'))
+ - publish: $(System.DefaultWorkingDirectory)/artifacts
+ artifact: release # -$(Agent.OS)
- 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'))
+ - job: Build C-API
+ 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: |
+ mkdir -p artifacts
+ displayName: Create Artifacts Dir
+ - bash: |
+ make capi
+ cp target/release/libwasmer_runtime_c_api.so ./artifacts
+ displayName: Build c-api (Linux)
+ condition: and(succeeded(), eq(variables['Agent.OS'], 'Linux'))
+ - bash: |
+ make capi
+ install_name_tool -id "@rpath/libwasmer_runtime_c_api.dylib" target/release/libwasmer_runtime_c_api.dylib
+ cp target/release/libwasmer_runtime_c_api.dylib ./artifacts
+ displayName: Build c-api (Darwin)
+ condition: and(succeeded(), eq(variables['Agent.OS'], 'Darwin'))
+ - bash: |
+ cargo build --release
+ cargo build -p wasmer-runtime-c-api --release
+ cp target/release/wasmer_runtime_c_api.dll ./artifacts
+ displayName: Build c-api (Windows)
+ condition: and(succeeded(), eq(variables['Agent.OS'], 'Windows_NT'))
+ - publish: $(System.DefaultWorkingDirectory)/artifacts
+ artifact: release # -$(Agent.OS)
-- job: Check
- pool:
- vmImage: 'macos-10.14'
-
- variables:
- rust_toolchain: nightly-2019-06-10
-
- 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 check
- displayName: Check with Flags
- condition: and(succeeded(), not(eq(variables['Agent.OS'], 'Windows_NT')))
-
-- 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-innosetup.yml
- - template: .azure/install-llvm.yml
- - bash: |
- mkdir -p artifacts
- displayName: Create Artifacts Dir
- - bash: |
- make capi
- cp target/release/libwasmer_runtime_c_api.so ./artifacts
- displayName: Build c-api (Linux)
- condition: and(succeeded(), eq(variables['Agent.OS'], 'Linux'))
- - bash: |
- make capi
- install_name_tool -id "@rpath/libwasmer_runtime_c_api.dylib" target/release/libwasmer_runtime_c_api.dylib
- cp target/release/libwasmer_runtime_c_api.dylib ./artifacts
- displayName: Build c-api (Darwin)
- condition: and(succeeded(), eq(variables['Agent.OS'], 'Darwin'))
- - bash: |
- cargo build --release
- cargo build -p wasmer-runtime-c-api --release
- cp target/release/wasmer_runtime_c_api.dll ./artifacts
- displayName: Build c-api (Windows)
- condition: and(succeeded(), eq(variables['Agent.OS'], 'Windows_NT'))
- - 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: |
- cargo build --release --manifest-path wapm-cli/Cargo.toml --features "telemetry update-notifications"
- displayName: Build WAPM
- - bash: |
- make build-install
- cp ./wasmer.tar.gz ./artifacts/$(./scripts/binary-name.sh)
- displayName: Build Distribution (*nix)
- condition: and(succeeded(), not(eq(variables['Agent.OS'], 'Windows_NT')))
- - bash: |
- cd ./src/installer
- iscc wasmer.iss
- cp WasmerInstaller.exe ../../artifacts/wasmer-windows.exe
- displayName: Build Distribution (Windows)
- condition: and(succeeded(), eq(variables['Agent.OS'], 'Windows_NT'))
- - publish: $(System.DefaultWorkingDirectory)/artifacts
- artifact: release # -$(Agent.OS)
-
-- job: Publish
- dependsOn:
- - Build
- steps:
- - download: current
- artifact: release
- - bash: |
- ls $PIPELINE_WORKSPACE/release
- env:
- PIPELINE_WORKSPACE: $(Pipeline.Workspace)
- - task: GithubRelease@0
- displayName: 'Create GitHub Release'
- inputs:
- gitHubConnection: wasmerio
- repositoryName: wasmerio/wasmer
- tag: dev
- assets: $(Pipeline.Workspace)/release
+ - job: Publish
+ dependsOn:
+ - Build CLI
+ - Build C-API
+ steps:
+ - download: current
+ artifact: release
+ - bash: |
+ ls $PIPELINE_WORKSPACE/release
+ env:
+ PIPELINE_WORKSPACE: $(Pipeline.Workspace)
+ - task: GithubRelease@0
+ displayName: "Create GitHub Release"
+ inputs:
+ gitHubConnection: wasmerio
+ repositoryName: wasmerio/wasmer
+ tag: dev
+ assets: $(Pipeline.Workspace)/release
trigger:
branches:
include:
- - '*'
-
+ - "*"
From 576f8d5cf4bba27240c6691e7203fa3fd71563ba Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 31 Aug 2019 21:25:09 -0700
Subject: [PATCH 46/54] Fixed githubConnection
---
azure-pipelines.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 5d7229b7b..f785b48e2 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -172,7 +172,7 @@ jobs:
- task: GithubRelease@0
displayName: "Create GitHub Release"
inputs:
- gitHubConnection: wasmerio
+ gitHubConnection: wasmer
repositoryName: wasmerio/wasmer
tag: dev
assets: $(Pipeline.Workspace)/release
From 5c2707a474c7042375034171070d911106df53c9 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 31 Aug 2019 21:30:20 -0700
Subject: [PATCH 47/54] Fixed names
---
azure-pipelines.yml | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index f785b48e2..1571d7a0f 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -62,7 +62,7 @@ jobs:
displayName: Check with Flags
condition: and(succeeded(), not(eq(variables['Agent.OS'], 'Windows_NT')))
- - job: Build CLI
+ - job: Build_CLI
strategy:
matrix:
linux:
@@ -112,7 +112,7 @@ jobs:
- publish: $(System.DefaultWorkingDirectory)/artifacts
artifact: release # -$(Agent.OS)
- - job: Build C-API
+ - job: Build_Library
strategy:
matrix:
linux:
@@ -160,8 +160,8 @@ jobs:
- job: Publish
dependsOn:
- - Build CLI
- - Build C-API
+ - Build_CLI
+ - Build_Library
steps:
- download: current
artifact: release
From 1a1b9667d08fd4179e2e231e593835488db0fabf Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 31 Aug 2019 21:30:49 -0700
Subject: [PATCH 48/54] Removed circleci and appveyor configs
---
.appveyor.yml | 78 --------
.circleci/config.yml | 439 -------------------------------------------
2 files changed, 517 deletions(-)
delete mode 100644 .appveyor.yml
delete mode 100644 .circleci/config.yml
diff --git a/.appveyor.yml b/.appveyor.yml
deleted file mode 100644
index 18cff7054..000000000
--- a/.appveyor.yml
+++ /dev/null
@@ -1,78 +0,0 @@
-version: "{build} ~ {branch}"
-
-os: Visual Studio 2017
-
-branches:
- only:
- - staging
- - trying
- - master
-
-environment:
- matrix:
- - CHANNEL: stable
- ARCH: x86_64
- ABI: msvc
- TARGET: x86_64-pc-windows-msvc
-
-cache:
- - 'C:\Users\appveyor\.cargo'
- - target
-
-install:
- # Install LLVM
- - mkdir C:\projects\deps
- - cd C:\projects\deps
- - appveyor DownloadFile https://github.com/wasmerio/windows-llvm-build/releases/download/v8.0.0/llvm-8.0.0-install.zip -FileName llvm-8.0.0-install.zip
- - 7z x llvm-8.0.0-install.zip
- - C:\projects\deps\llvm-8.0.0-install\bin\llvm-config.exe --version
- - set "LLVM_SYS_80_PREFIX=C:\projects\deps\llvm-8.0.0-install"
- - cd "%APPVEYOR_BUILD_FOLDER%"
-
- # Install Rust
- # uncomment these lines if the cache is cleared, or if we must re-install rust for some reason
- - appveyor DownloadFile https://win.rustup.rs/ -FileName rustup-init.exe
- - rustup-init.exe -yv --default-host %target%
- - set PATH=%PATH%;%USERPROFILE%\.cargo\bin
- - rustup default stable-%target%
- - rustup update
- - rustc -vV
- - cargo -vV
-
- # Install InnoSetup
- - appveyor-retry appveyor DownloadFile https://s3-us-west-1.amazonaws.com/rust-lang-ci2/rust-ci-mirror/2017-08-22-is.exe
- - 2017-08-22-is.exe /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-
- - set PATH="C:\Program Files (x86)\Inno Setup 5";%PATH%
-# uncomment to RDP to appveyor
-# - ps: $blockRdp = $true; iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1'))
-
-build_script:
- - cargo build --release --verbose --features backend-llvm
- - cargo build --release --manifest-path lib/runtime-c-api/Cargo.toml
-
-test_script:
- - cargo test --manifest-path lib/spectests/Cargo.toml --release --features clif -- --nocapture
-
-before_deploy:
- - appveyor PushArtifact target\release\wasmer_runtime_c_api.dll
- - git submodule init
- - git submodule update
- - cargo build --release --manifest-path wapm-cli/Cargo.toml --features "telemetry update-notifications"
- - cd ./src/installer
- - iscc wasmer.iss
- - copy /y .\WasmerInstaller.exe ..\..\WasmerInstaller-%APPVEYOR_REPO_TAG_NAME%.exe
- - appveyor PushArtifact ..\..\WasmerInstaller-%APPVEYOR_REPO_TAG_NAME%.exe
- - cd ..\..\
-
-matrix:
- fast_finish: true
-
-deploy:
- description: 'WasmerInstaller'
- artifact: /.*\.exe/
- auth_token:
- secure: BbreGNDJy20922za7OhJG5TERzfX+dJSBQwttNTJkLvszbqMov6hhAtRb3P45hpf
- provider: GitHub
- on:
- branch: master
- appveyor_repo_tag: true
diff --git a/.circleci/config.yml b/.circleci/config.yml
deleted file mode 100644
index 5abff64df..000000000
--- a/.circleci/config.yml
+++ /dev/null
@@ -1,439 +0,0 @@
-run_with_build_env_vars: &run_with_build_env_vars
- environment:
- LLVM_SYS_80_PREFIX: /home/circleci/project/clang+llvm-8.0.0-x86_64-linux-gnu-ubuntu-16.04/
-
-run_install_dependencies: &run_install_dependencies
- run:
- name: install dependencies
- command: |
- sudo apt-get install -y cmake
- curl -O https://releases.llvm.org/8.0.0/clang+llvm-8.0.0-x86_64-linux-gnu-ubuntu-16.04.tar.xz
- tar xf clang+llvm-8.0.0-x86_64-linux-gnu-ubuntu-16.04.tar.xz
-
-version: 2
-jobs:
- changelog:
- docker:
- - image: docker:stable-git
- steps:
- - checkout
- - run:
- command: ! git diff --exit-code CHANGELOG.md
-
- # Job used for testing
- lint:
- docker:
- - image: circleci/rust:latest
- <<: *run_with_build_env_vars
- steps:
- - checkout
- - run:
- name: "Pull Submodules"
- command: |
- git submodule update --init
- - restore_cache:
- keys:
- - v8-lint-{{ arch }}-{{ checksum "Cargo.lock" }}
- - <<: *run_install_dependencies
- - run:
- name: Install lint deps
- command: |
- git config --global --unset url."ssh://git@github.com".insteadOf || true
- # rustup toolchain install nightly-2019-06-10
- # rustup default nightly-2019-06-10
- rustup component add rustfmt
- rustup component add clippy || cargo install --git https://github.com/rust-lang/rust-clippy/ --force clippy
- - run:
- name: Execute lints
- command: |
- cargo fmt --all -- --check
- - save_cache:
- paths:
- - /usr/local/cargo/registry
- - target/debug/.fingerprint
- - target/debug/build
- - target/debug/deps
- key: v8-lint-{{ arch }}-{{ checksum "Cargo.lock" }}
-
- test-stable:
- docker:
- - image: circleci/rust:1.36
- <<: *run_with_build_env_vars
- steps:
- - checkout
- - run:
- name: "Pull Submodules"
- command: |
- git submodule update --init
- - restore_cache:
- keys:
- - v8-test-cargo-cache-linux-stable-{{ arch }}-{{ checksum "Cargo.lock" }}
- - <<: *run_install_dependencies
- - run:
- name: Test everything (except singlepass)
- command: |
- make cranelift
- make llvm
- make test-rest
- - run:
- name: Integration Tests
- command: make integration-tests
- - save_cache:
- paths:
- - /usr/local/cargo/registry
- - target/release/.fingerprint
- - target/release/build
- - target/release/deps
- key: v8-test-cargo-cache-linux-stable-{{ arch }}-{{ checksum "Cargo.lock" }}
-
- test:
- docker:
- - image: circleci/rust:latest
- <<: *run_with_build_env_vars
- steps:
- - checkout
- - run:
- name: "Pull Submodules"
- command: |
- git submodule update --init
- - restore_cache:
- keys:
- - v8-test-cargo-cache-linux-nightly-{{ arch }}-{{ checksum "Cargo.lock" }}
- - <<: *run_install_dependencies
- - run: rustup default nightly-2019-06-10
- - run:
- name: Tests
- command: make test
- - run:
- name: Debug flag checked
- command: |
- cargo check --features "debug" --release
- - run:
- name: Check
- command: |
- make check
- - run:
- name: Integration Tests
- command: make integration-tests
- - save_cache:
- paths:
- - /usr/local/cargo/registry
- - target/release/.fingerprint
- - target/release/build
- - target/release/deps
- key: v8-test-cargo-cache-linux-nightly-{{ arch }}-{{ checksum "Cargo.lock" }}
-
- test-rust-example:
- docker:
- - image: circleci/rust:latest
- <<: *run_with_build_env_vars
- steps:
- - checkout
- - run:
- name: "Check Wasmer Rust example"
- command: |
- git clone https://github.com/wasmerio/wasmer-rust-example
- rustup default stable
- rustup target add wasm32-unknown-unknown
- cd wasmer-rust-example
- cd wasm-sample-app
- cargo build --release
- cd ..
- sed -i 's/wasmer-runtime.*/wasmer-runtime = \{ path = "..\/lib\/runtime" \}/g' Cargo.toml
- cargo run
- cargo test
-
- test-macos:
- macos:
- xcode: "9.0"
- steps:
- - checkout
- - run:
- name: "Pull Submodules"
- command: |
- git submodule update --init
- - restore_cache:
- keys:
- - v8-cargo-cache-darwin-nightly-{{ arch }}-{{ checksum "Cargo.lock" }}
- - run:
- name: Install crate dependencies
- command: |
- # Installing cmake outside of brew to improve speed
- curl -O https://cmake.org/files/v3.4/cmake-3.4.1-Darwin-x86_64.tar.gz
- tar xf cmake-3.4.1-Darwin-x86_64.tar.gz
- export PATH="`pwd`/cmake-3.4.1-Darwin-x86_64/CMake.app/Contents/bin:$PATH"
- # Installing LLVM outside of brew
- curl -O https://releases.llvm.org/8.0.0/clang+llvm-8.0.0-x86_64-apple-darwin.tar.xz
- tar xf clang+llvm-8.0.0-x86_64-apple-darwin.tar.xz
- - run:
- name: Install Rust
- command: |
- curl -sSf https://sh.rustup.rs | sh -s -- -y --default-toolchain nightly-2019-06-10
- export PATH="$HOME/.cargo/bin:$PATH"
- cargo --version
- - run:
- name: Tests
- command: |
- export PATH="$HOME/.cargo/bin:$PATH"
- export PATH="`pwd`/cmake-3.4.1-Darwin-x86_64/CMake.app/Contents/bin:$PATH"
- export LLVM_SYS_80_PREFIX="`pwd`/clang+llvm-8.0.0-x86_64-apple-darwin/"
- # We increase the ulimit for fixing cargo unclosed files in mac
- ulimit -n 8000
- sudo sysctl -w kern.maxfiles=655360 kern.maxfilesperproc=327680
- make test
- - run:
- name: Check
- command: |
- export PATH="$HOME/.cargo/bin:$PATH"
- export LLVM_SYS_80_PREFIX="`pwd`/clang+llvm-8.0.0-x86_64-apple-darwin/"
- make check
- - run:
- name: Integration Tests
- command: |
- export PATH="$HOME/.cargo/bin:$PATH"
- export PATH="`pwd`/cmake-3.4.1-Darwin-x86_64/CMake.app/Contents/bin:$PATH"
- export LLVM_SYS_80_PREFIX="`pwd`/clang+llvm-8.0.0-x86_64-apple-darwin/"
- make integration-tests
- - save_cache:
- paths:
- - ~/.cargo/registry/
- - target/release/.fingerprint
- - target/release/build
- - target/release/deps
- key: v8-cargo-cache-darwin-nightly-{{ arch }}-{{ checksum "Cargo.lock" }}
-
- test-and-build:
- docker:
- - image: circleci/rust:latest
- steps:
- - checkout
- - run:
- name: "Pull Submodules"
- command: |
- git submodule update --init
- - run:
- name: "Pull dependencies"
- command: |
- git submodule init
- git submodule update
- - restore_cache:
- keys:
- - v8-cargo-cache-linux-nightly-{{ arch }}-{{ checksum "Cargo.lock" }}
- - run:
- name: Install dependencies
- command: |
- sudo apt-get install -y cmake
- curl -O https://releases.llvm.org/8.0.0/clang+llvm-8.0.0-x86_64-linux-gnu-ubuntu-16.04.tar.xz
- tar xf clang+llvm-8.0.0-x86_64-linux-gnu-ubuntu-16.04.tar.xz
- - run: rustup default nightly-2019-06-10
- - run:
- name: Tests
- command: |
- export LLVM_SYS_80_PREFIX="`pwd`/clang+llvm-8.0.0-x86_64-linux-gnu-ubuntu-16.04/"
- make test
- - run:
- name: Release Build
- command: |
- export LLVM_SYS_80_PREFIX="`pwd`/clang+llvm-8.0.0-x86_64-linux-gnu-ubuntu-16.04/"
- make release
- cargo build --release --manifest-path wapm-cli/Cargo.toml --features "telemetry update-notifications"
- mkdir -p artifacts
- VERSION=$(cargo pkgid | cut -d# -f2 | cut -d: -f2)
- # GIT_VERSION=$(git describe --exact-match --tags)
- echo "${VERSION}" >> artifacts/version
- echo "${CIRCLE_TAG}" >> artifacts/git_version
- make build-install
- cp ./wasmer.tar.gz ./artifacts/$(./scripts/binary-name.sh)
- - run:
- name: Dynamic library
- command: |
- cargo build --release --manifest-path lib/runtime-c-api/Cargo.toml
- cp target/release/libwasmer_runtime_c_api.so ./artifacts
- - persist_to_workspace:
- root: .
- paths:
- - artifacts
- - save_cache:
- paths:
- - /usr/local/cargo/registry
- - target/release/.fingerprint
- - target/release/build
- - target/release/deps
- - wapm-cli/target/release/.fingerprint
- - wapm-cli/target/release/build
- - wapm-cli/target/release/deps
- key: v8-cargo-cache-linux-nightly-{{ arch }}-{{ checksum "Cargo.lock" }}
-
- test-and-build-macos:
- macos:
- xcode: "9.0"
- steps:
- - checkout
- - run:
- name: "Pull dependencies"
- command: |
- git submodule init
- git submodule update
- - restore_cache:
- keys:
- - v8-cargo-cache-darwin-nightly-{{ arch }}-{{ checksum "Cargo.lock" }}
- - run:
- name: Install crate dependencies
- command: |
- # Installing cmake outside of brew to improve speed
- curl -O https://cmake.org/files/v3.4/cmake-3.4.1-Darwin-x86_64.tar.gz
- tar xf cmake-3.4.1-Darwin-x86_64.tar.gz
- export PATH="`pwd`/cmake-3.4.1-Darwin-x86_64/CMake.app/Contents/bin:$PATH"
- # Installing LLVM outside of brew
- curl -O https://releases.llvm.org/8.0.0/clang+llvm-8.0.0-x86_64-apple-darwin.tar.xz
- tar xf clang+llvm-8.0.0-x86_64-apple-darwin.tar.xz
- - run:
- name: Install Rust
- command: |
- curl -sSf https://sh.rustup.rs | sh -s -- -y --default-toolchain nightly-2019-06-10
- export PATH="$HOME/.cargo/bin:$PATH"
- cargo --version
- - run:
- name: Tests
- command: |
- export PATH="`pwd`/cmake-3.4.1-Darwin-x86_64/CMake.app/Contents/bin:$PATH"
- export PATH="$HOME/.cargo/bin:$PATH"
- export LLVM_SYS_80_PREFIX="`pwd`/clang+llvm-8.0.0-x86_64-apple-darwin/"
- # We increase the ulimit for fixing cargo unclosed files in mac
- ulimit -n 8000
- sudo sysctl -w kern.maxfiles=655360 kern.maxfilesperproc=327680
-
- make test
- - run:
- name: Release Build
- command: |
- export PATH="`pwd`/cmake-3.4.1-Darwin-x86_64/CMake.app/Contents/bin:$PATH"
- export PATH="$HOME/.cargo/bin:$PATH"
- export LLVM_SYS_80_PREFIX="`pwd`/clang+llvm-8.0.0-x86_64-apple-darwin/"
- make release
- cargo build --release --manifest-path wapm-cli/Cargo.toml --features "telemetry update-notifications"
- mkdir -p artifacts
- make build-install
- cp ./wasmer.tar.gz ./artifacts/$(./scripts/binary-name.sh)
- # VERSION=$(cargo pkgid | cut -d# -f2 | cut -d: -f2)
- # echo "${VERSION}" >> artifacts/version
- - run:
- name: Generate dynamic library for the runtime C API
- command: |
- export PATH="$HOME/.cargo/bin:$PATH"
- cargo build --release --manifest-path lib/runtime-c-api/Cargo.toml
- install_name_tool -id "@rpath/libwasmer_runtime_c_api.dylib" target/release/libwasmer_runtime_c_api.dylib
- cp target/release/libwasmer_runtime_c_api.dylib ./artifacts
- - persist_to_workspace:
- root: .
- paths:
- - artifacts
- - save_cache:
- paths:
- - ~/.cargo/registry/
- - target/release/.fingerprint
- - target/release/build
- - target/release/deps
- - wapm-cli/target/release/.fingerprint
- - wapm-cli/target/release/build
- - wapm-cli/target/release/deps
- key: v8-cargo-cache-darwin-nightly-{{ arch }}-{{ checksum "Cargo.lock" }}
-
- publish-github-release:
- docker:
- - image: cibuilds/github
- steps:
- - attach_workspace:
- at: .
- - run:
- name: "Publish Release on GitHub"
- command: |
- # go get github.com/tcnksm/ghr
- # VERSION=$(git log -1 --pretty=%B)
- # VERSION=$(./artifacts/ --version)
- VERSION=$(cat ./artifacts/version)
- # VERSION_TAG=${CIRCLE_TAG}
- VERSION_TAG=$(cat ./artifacts/git_version)
- LATEST_VERSION_PUBLISHED_ON_CRATES=$(curl -s https://raw.githubusercontent.com/rust-lang/crates.io-index/master/wa/sm/wasmer-runtime | tail -n 1 | sed 's/.*"vers":"\([^"]*\)".*/\1/')
- if ( [ $VERSION_TAG -ne $LATEST_VERSION_PUBLISHED_ON_CRATES ] ) then { echo "Could not detect version published to crates.io; make sure we've published the crates before publishing the Wasmer binary"; exit 1; } else { true; } fi
- rm ./artifacts/version
- rm ./artifacts/git_version
- # VERSION_TAG=$(git describe --exact-match --tags)
- #if [ "$VERSION" == "$VERSION_TAG" ]; then
- # echo "Versions match, publishing to Github"
- ghr -t ${GITHUB_TOKEN} -u ${CIRCLE_PROJECT_USERNAME} -r ${CIRCLE_PROJECT_REPONAME} -c ${CIRCLE_SHA1} ${VERSION} ./artifacts/ || true
- #else
- # echo "Versions don't match. Wasmer output version (wasmer --version) is ${VERSION} while Git tag is ${VERSION_TAG}"
- # exit 1
- #fi
- trigger-benchmark-build:
- docker:
- - image: circleci/rust:latest
- steps:
- - run:
- name: "Trigger Benchmark Build"
- command: |
- if [[ -z "${CIRCLE_API_USER_TOKEN}" ]]; then
- echo "CIRCLE_API_USER_TOKEN environment variable not set"
- exit 1
- else
- echo "Triggering benchmark build"
- curl -u ${CIRCLE_API_USER_TOKEN} \
- -d build_parameters[CIRCLE_JOB]=bench \
- https://circleci.com/api/v1.1/project/github/wasmerio/wasmer-bench/tree/master
- fi
-workflows:
- version: 2
- main:
- jobs:
- - changelog
- - lint
- - test:
- filters:
- branches:
- only:
- - trying
- - staging
- - test-rust-example:
- filters:
- branches:
- only:
- - trying
- - staging
- - test-macos:
- filters:
- branches:
- only:
- - trying
- - staging
- - test-and-build:
- filters:
- branches:
- only:
- - master
- - test-and-build-macos:
- filters:
- branches:
- only:
- - master
- - test-stable:
- filters:
- branches:
- only:
- - trying
- - staging
- - publish-github-release:
- requires:
- - lint
- - test-and-build
- - test-and-build-macos
- filters:
- branches:
- only: master
- - trigger-benchmark-build:
- requires:
- - test-and-build
- - lint
- filters:
- branches:
- only: master
From 77518a927f02b02240ff3b6b94ec10cfbe52f5f4 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 31 Aug 2019 21:49:57 -0700
Subject: [PATCH 49/54] Fixed artifact releases
---
azure-pipelines.yml | 16 +++++++++-------
1 file changed, 9 insertions(+), 7 deletions(-)
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 1571d7a0f..8562acf44 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -110,7 +110,7 @@ jobs:
displayName: Build Distribution (Windows)
condition: and(succeeded(), eq(variables['Agent.OS'], 'Windows_NT'))
- publish: $(System.DefaultWorkingDirectory)/artifacts
- artifact: release # -$(Agent.OS)
+ artifact: cli-$(Agent.OS)
- job: Build_Library
strategy:
@@ -156,26 +156,28 @@ jobs:
displayName: Build c-api (Windows)
condition: and(succeeded(), eq(variables['Agent.OS'], 'Windows_NT'))
- publish: $(System.DefaultWorkingDirectory)/artifacts
- artifact: release # -$(Agent.OS)
+ artifact: library-$(Agent.OS)
- job: Publish
dependsOn:
- Build_CLI
- Build_Library
steps:
- - download: current
- artifact: release
+ # - download: current
+ - task: DownloadPipelineArtifact@1
+ inputs:
+ targetPath: $(Build.ArtifactStagingDirectory)
- bash: |
- ls $PIPELINE_WORKSPACE/release
+ ls $ARTIFACT_STAGING_DIRECTORY
env:
- PIPELINE_WORKSPACE: $(Pipeline.Workspace)
+ ARTIFACT_STAGING_DIRECTORY: $(Build.ArtifactStagingDirectory)
- task: GithubRelease@0
displayName: "Create GitHub Release"
inputs:
gitHubConnection: wasmer
repositoryName: wasmerio/wasmer
tag: dev
- assets: $(Pipeline.Workspace)/release
+ assets: $(Build.ArtifactStagingDirectory)
trigger:
branches:
From 4ac4be283aa8e2500368aaa4d621bde4cc0a305b Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 31 Aug 2019 23:15:48 -0700
Subject: [PATCH 50/54] Added changelog checks
---
CHANGELOG.md | 1 +
azure-pipelines.yml | 8 ++++++++
2 files changed, 9 insertions(+)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 62aa45ac7..a0e17d356 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -8,6 +8,7 @@ Blocks of changes will separated by version increments.
Special thanks to @YaronWittenstein @penberg for their contributions.
+- [#656](https://github.com/wasmerio/wasmer/issues/656) Move CI to Azure Pipelines
- [#650](https://github.com/wasmerio/wasmer/issues/650) Implement `wasi::path_rename`, improve WASI FS public api, and allow open files to exist even when the underlying file is deleted
- [#643](https://github.com/wasmerio/wasmer/issues/643) Implement `wasi::path_symlink` and improve WASI FS public api IO error reporting
- [#608](https://github.com/wasmerio/wasmer/issues/608) Implement wasi syscalls `fd_allocate`, `fd_sync`, `fd_pread`, `path_link`, `path_filestat_set_times`; update WASI fs API in a WIP way; reduce coupling of WASI code to host filesystem; make debug messages from WASI more readable; improve rights-checking when calling syscalls; implement reference counting on inodes; misc bug fixes and improvements
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 8562acf44..47d1c8b47 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -2,6 +2,12 @@ name: $(Build.SourceBranch)-$(date:yyyyMMdd)$(rev:.r)
# The Different jobs (lint, test, build to run)
jobs:
+ - job: changelog
+ steps:
+ - bash: |
+ git --no-pager diff --name-only HEAD $(git merge-base HEAD master) --exit-code CHANGELOG.md
+ displayName: Changelog Updated
+
- job: lint
pool:
vmImage: "macos-10.14"
@@ -169,10 +175,12 @@ jobs:
targetPath: $(Build.ArtifactStagingDirectory)
- bash: |
ls $ARTIFACT_STAGING_DIRECTORY
+ displayName: List Artifacts
env:
ARTIFACT_STAGING_DIRECTORY: $(Build.ArtifactStagingDirectory)
- task: GithubRelease@0
displayName: "Create GitHub Release"
+ condition: and(succeeded(), eq(variables['Build.SourceBranch'], 'refs/heads/master'))
inputs:
gitHubConnection: wasmer
repositoryName: wasmerio/wasmer
From b84287f7a78152cc16a654a6591e0a65fc52b7b1 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 31 Aug 2019 23:17:31 -0700
Subject: [PATCH 51/54] Use azure-pipelines in bors
---
bors.toml | 7 +------
1 file changed, 1 insertion(+), 6 deletions(-)
diff --git a/bors.toml b/bors.toml
index 5fadbdfa0..1003d9678 100644
--- a/bors.toml
+++ b/bors.toml
@@ -1,10 +1,5 @@
status = [
- "ci/circleci: lint",
- "ci/circleci: test",
- "ci/circleci: test-macos",
- "ci/circleci: test-stable",
- "ci/circleci: test-rust-example",
- "continuous-integration/appveyor/branch"
+ "wasmerio.wasmer"
]
required_approvals = 1
timeout_sec = 7200
From 9a6c7ed2eb1057bf48662c579c9b5cb17a3917cc Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 31 Aug 2019 23:34:06 -0700
Subject: [PATCH 52/54] Updated azure pipelines
---
azure-pipelines.yml | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 47d1c8b47..480e21181 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -187,7 +187,14 @@ jobs:
tag: dev
assets: $(Build.ArtifactStagingDirectory)
+# We only run the pipelines on PRs to Master
+pr:
+ - master
+
+# Otherwise, we test in any of this branches (master or bors related)
trigger:
branches:
include:
- - "*"
+ - master
+ - staging
+ - trying
From 5d1837b0c1a2d100a26bc39eb905d348ea0e2654 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 31 Aug 2019 23:39:35 -0700
Subject: [PATCH 53/54] Trigger only on the following branches
---
azure-pipelines.yml | 8 +++-----
1 file changed, 3 insertions(+), 5 deletions(-)
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 480e21181..5f6570a12 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -193,8 +193,6 @@ pr:
# Otherwise, we test in any of this branches (master or bors related)
trigger:
- branches:
- include:
- - master
- - staging
- - trying
+ - master
+ - staging
+ - trying
From 025d548090cdcb62de146be28aed90a202cca090 Mon Sep 17 00:00:00 2001
From: Syrus
Date: Sat, 31 Aug 2019 23:49:30 -0700
Subject: [PATCH 54/54] Trying to improve conditions of pipelines
---
azure-pipelines.yml | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 5f6570a12..1dc3c9043 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -38,6 +38,7 @@ jobs:
rust_toolchain: stable
pool:
vmImage: $(imageName)
+ condition: in(variables['Build.SourceBranch'], 'refs/heads/master', 'refs/heads/staging', 'refs/heads/trying')
steps:
- checkout: self
submodules: true
@@ -57,6 +58,7 @@ jobs:
vmImage: "macos-10.14"
variables:
rust_toolchain: nightly-2019-06-10
+ condition: in(variables['Build.SourceBranch'], 'refs/heads/master', 'refs/heads/staging', 'refs/heads/trying')
steps:
- checkout: self
submodules: true
@@ -84,6 +86,7 @@ jobs:
# RUSTFLAGS: -Ctarget-feature=+crt-static
pool:
vmImage: $(imageName)
+ condition: in(variables['Build.SourceBranch'], 'refs/heads/master', 'refs/heads/staging', 'refs/heads/trying')
steps:
- checkout: self
submodules: true
@@ -134,6 +137,7 @@ jobs:
# RUSTFLAGS: -Ctarget-feature=+crt-static
pool:
vmImage: $(imageName)
+ condition: in(variables['Build.SourceBranch'], 'refs/heads/master', 'refs/heads/staging', 'refs/heads/trying')
steps:
- checkout: self
submodules: true