Add workflow to automatically build WASM files #552
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
jobs: | |
tests: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@master | |
- uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: "1.70.0" | |
- name: version info | |
run: rustc --version; cargo --version; | |
- name: Run all tests | |
run: cargo test --features=macro | |
fmt: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@master | |
- uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: "1.70.0" | |
- run: | | |
rustup component add rustfmt | |
cargo fmt --all -- --check | |
clippy: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@master | |
- uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: "1.70.0" | |
- run: | | |
rustup component add clippy | |
cargo clippy --features=macro -- -D warnings | |
bootstrap: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@master | |
- uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: stable | |
- name: Build | |
run: cargo build | |
- name: Install dart-sass 1.54.3 | |
run: | | |
wget https://github.com/sass/dart-sass/releases/download/1.54.3/dart-sass-1.54.3-linux-x64.tar.gz | |
tar -xzvf dart-sass-1.54.3-linux-x64.tar.gz | |
- name: Install bootstrap | |
run: git clone --depth=1 --branch v5.0.2 https://github.com/twbs/bootstrap.git | |
- name: Verify unchanged output | |
run: | | |
./target/debug/grass bootstrap/scss/bootstrap.scss > grass-output.css | |
./dart-sass/sass bootstrap/scss/bootstrap.scss > dart-sass-output.css | |
if [[ $(diff -u grass-output.css dart-sass-output.css) ]]; then | |
echo "Differences found" | |
diff -u grass-output.css dart-sass-output.css | |
exit 1 | |
else | |
echo "No differences found" | |
fi | |
# sass-spec: | |
# continue-on-error: true | |
# runs-on: ubuntu-latest | |
# steps: | |
# - name: Checkout | |
# uses: actions/checkout@master | |
# - uses: dtolnay/rust-toolchain@master | |
# with: | |
# toolchain: stable | |
# - name: version info | |
# run: rustc --version; cargo --version; | |
# - name: Build binary | |
# run: cargo b --release | |
# - name: Get sass-spec | |
# run: git submodule init && git submodule update | |
# - name: Install whatever Ruby needs | |
# run: | | |
# sudo apt-get install libncurses5-dev libncursesw5-dev | |
# sudo gem install bundler | |
# cd sass-spec && bundler install | |
# - name: Run Sass spec | |
# run: ./sass-spec/sass-spec.rb -c './target/release/grass' |