name: Continuous Integration on: [push, pull_request] jobs: test: runs-on: ubuntu-latest steps: - uses: actions/checkout@master - uses: actions/setup-node@master with: node-version: 12 - uses: actions-rs/toolchain@v1 with: profile: minimal toolchain: stable override: true - name: Cache cargo registry uses: actions/cache@v1 with: path: ~/.cargo/registry key: ${{ runner.os }}-cargo-registry-${{ hashFiles('**/Cargo.lock') }} - name: Cache cargo index uses: actions/cache@v1 with: path: ~/.cargo/git key: ${{ runner.os }}-cargo-index-${{ hashFiles('**/Cargo.lock') }} - name: Cache cargo build uses: actions/cache@v1 with: path: target key: ${{ runner.os }}-cargo-build-target-${{ hashFiles('**/Cargo.lock') }} - name: install deps run: | sudo add-apt-repository ppa:libreoffice/ppa sudo apt-get update sudo apt-get install libreoffice npm i -g reg-cli cd vrt && yarn --frozen-lockfile && cd ../ - name: test run: make test -B && make vrt -B - uses: actions/upload-artifact@master with: name: vrt path: vrt/screenshot build: runs-on: ubuntu-latest steps: - uses: actions/checkout@master - uses: actions-rs/toolchain@v1 with: profile: minimal toolchain: stable override: true - name: Cache cargo registry uses: actions/cache@v1 with: path: ~/.cargo/registry key: ${{ runner.os }}-cargo-registry-${{ hashFiles('**/Cargo.lock') }} - name: Cache cargo index uses: actions/cache@v1 with: path: ~/.cargo/git key: ${{ runner.os }}-cargo-index-${{ hashFiles('**/Cargo.lock') }} - run: cargo build # clippy: # name: Clippy # runs-on: ubuntu-latest # steps: # - uses: actions/checkout@v1 # - uses: actions-rs/toolchain@v1 # with: # profile: minimal # toolchain: stable # override: true # - run: rustup component add clippy # - uses: actions-rs/cargo@v1 # with: # command: clippy # args: -- -D warnings