file-guard 0.2.0

A cross-platform library for simple advisory file locking.
Documentation
on:
  pull_request:
  push:
    branches: [main]
    tags:
      - "v*.*.*"

name: Verify

jobs:
  test_linux:
    name: Test Linux
    runs-on: ubuntu-latest
    steps:
      - name: Checkout sources
        uses: actions/checkout@v2
      - name: Install stable toolchain
        uses: actions-rs/toolchain@v1
        with:
          profile: minimal
          toolchain: stable
          override: true
      - name: Run cargo test
        uses: actions-rs/cargo@v1
        with:
          command: test

  test_windows:
    name: Test Windows
    runs-on: windows-latest
    steps:
      - name: Checkout sources
        uses: actions/checkout@v2
      - name: Install stable toolchain
        uses: actions-rs/toolchain@v1
        with:
          profile: minimal
          toolchain: stable
          override: true
      - name: Run cargo test
        uses: actions-rs/cargo@v1
        with:
          command: test

  test_macos:
    name: Test MacOS
    runs-on: macos-latest
    steps:
      - name: Checkout sources
        uses: actions/checkout@v2
      - name: Install stable toolchain
        uses: actions-rs/toolchain@v1
        with:
          profile: minimal
          toolchain: stable
          override: true
      - name: Run cargo test
        uses: actions-rs/cargo@v1
        with:
          command: test

  build_misc:
    name: Build miscellaneous systems
    strategy:
      matrix:
        target:
          - x86_64-unknown-netbsd
          - x86_64-unknown-freebsd
          - aarch64-linux-android
    runs-on: ubuntu-latest
    steps:
      - name: Checkout sources
        uses: actions/checkout@v2
      - name: Install stable toolchain
        uses: actions-rs/toolchain@v1
        with:
          profile: minimal
          toolchain: stable
          override: true
      - name: Install Cross
        run: |
          CROSS_URL=https://github.com/cross-rs/cross/releases/download/v0.2.5/cross-x86_64-unknown-linux-gnu.tar.gz
          mkdir -p "$HOME/.bin"
          curl -sfSL --retry-delay 10 --retry 5 "${CROSS_URL}" | tar zxf - -C "$HOME/.bin"
          echo "$HOME/.bin" >> $GITHUB_PATH
      - name: Run cross build
        run: cross build --target ${{ matrix.target }}