name: CI
on:
  pull_request:
  push:
    branches: ["master", "staging", "trying"]

env:
  CARGO_INCREMENTAL: 0
  CARGO_NET_RETRY: 10
  CI: 1
  RUST_BACKTRACE: short
  RUSTFLAGS: -D warnings
  RUSTUP_MAX_RETRIES: 10

jobs:
  test:
    name: Rust
    runs-on: ubuntu-latest

    steps:
    - uses: actions/checkout@v2
      with:
        fetch-depth: 0 # fetch tags for publish
    - uses: Swatinem/rust-cache@359a70e43a0bb8a13953b04a90f76428b4959bb6
    - run: cargo run -p xtask -- ci
      env:
        CARGO_REGISTRY_TOKEN: ${{ secrets.CRATES_IO_TOKEN }}
        MIRIFLAGS: -Zmiri-strict-provenance
