Files
circ/.github/workflows/ci.yml
2022-01-09 08:49:07 -08:00

45 lines
1003 B
YAML

name: Build & Test
on:
push:
branches: [ master, ci ]
pull_request:
branches: [ master, ci ]
env:
CARGO_TERM_COLOR: always
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Install dependencies
if: runner.os == 'Linux'
run: sudo apt-get update; sudo apt-get install zsh cvc4 libboost-all-dev libssl-dev coinor-cbc coinor-libcbc-dev
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
- uses: Swatinem/rust-cache@v1
- name: Initialize submodules
run: make fetch_deps
- name: Cache submodule build
uses: actions/cache@v2
with:
path: third_party/ABY/build
key: ${{ runner.os }}
- name: Build submodules
run: make build_deps
- name: Typecheck
run: cargo check
- name: Check format
run: cargo fmt -- --check
- name: Lint
run: cargo clippy
- name: Build
run: make build
- name: Run tests
run: make test