You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

81 lines
2.6 KiB

# CI workflow
name: sledge
on: [push, pull_request]
env:
LLVM_VERSION: 8
WASMCEPTION_URL: https://github.com/gwsystems/wasmception/releases/download/v0.2.0/wasmception-linux-x86_64-0.2.0.tar.gz
WASI_SDK: /opt/wasi-sdk
PATH: /root/.cargo/bin:$PATH
LANG: C.UTF-8
LANGUAGE: C.UTF-8
LC_ALL: C.UTF-8
PATH: /opt/sledge/bin:$PATH
LD_LIBRARY_PATH: /usr/local/lib:$LD_LIBRARY_PATH
# job control
jobs:
format:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Clang Format
run: ./format.sh -d
test:
runs-on: ubuntu-latest
steps:
- name: Apt Update
run: sudo apt-get update
- uses: actions/checkout@v2
- name: Init Submodules
run: git submodule update --init --recursive
- name: Install General GCC C/C++ Build toolchain
run: |
sudo apt-get install -y --no-install-recommends \
automake \
build-essential \
binutils-dev \
cmake \
git \
libtinfo5 \
libtool \
pkg-config
- name: Install curl / wget tools
run: |
sudo apt-get install -y --no-install-recommends \
curl \
ca-certificates \
libssl-dev \
lsb-release \
gpg-agent \
software-properties-common \
wget
- name: Install LLVM
run: |
sudo ./install_llvm.sh $LLVM_VERSION
- name: Install Rust
run: |
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | \
sh -s -- --default-toolchain stable --component rustfmt --target wasm32-wasi -y
PATH=/root/.cargo/bin:$PATH
cargo install --debug cargo-audit cargo-watch rsign2
# - name: Get wasmception
# run: |
# wget $WASMCEPTION_URL -O wasmception.tar.gz
# mkdir -p awsm/wasmception
# tar xvfz wasmception.tar.gz -C awsm/wasmception
- name: Get WASI-SDK
run: |
curl -sS -L -O https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-8/wasi-sdk_8.0_amd64.deb && sudo dpkg -i wasi-sdk_8.0_amd64.deb && rm -f wasi-sdk_8.0_amd64.deb
ENV WASI_SDK=/opt/wasi-sdk
- name: Install Test Script Utilities
run: |
curl -sS -L -O https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-8/wasi-sdk_8.0_amd64.deb && sudo dpkg -i wasi-sdk_8.0_amd64.deb && rm -f wasi-sdk_8.0_amd64.deb
ENV WASI_SDK=/opt/wasi-sdk
- name: Compile sledge
run: |
make install
- name: Compile test workloads
run: |
./test.sh