oci-distribution 0.11.0

An OCI implementation in Rust
Documentation
name: Build and Test
on:
  push:
    branches:
      - main
  pull_request: {}

jobs:
  build:
    runs-on: ubuntu-latest
    strategy:
      fail-fast: false
    steps:
      - uses: actions/checkout@v4.1.2
      - uses: engineerd/configurator@v0.0.10
        with:
          name: just
          url: https://github.com/casey/just/releases/download/0.10.2/just-0.10.2-x86_64-unknown-linux-musl.tar.gz
          pathInArchive: just
      - name: Build
        run: |
          just build
          just test

  windows-build:
    runs-on: windows-latest
    defaults:
      run:
        # For some reason, running with the default powershell doesn't work with the `Build` step,
        # but bash does!
        shell: bash
    steps:
      - uses: actions/checkout@v4.1.2
      - uses: engineerd/configurator@v0.0.10
        with:
          name: just
          url: "https://github.com/casey/just/releases/download/0.10.2/just-0.10.2-x86_64-pc-windows-msvc.zip"
          pathInArchive: just.exe
      - name: Build
        run: |
          just --justfile justfile-windows build
          just --justfile justfile-windows test

  cargo-deny:
    name: Run cargo deny
    runs-on: ubuntu-latest
    strategy:
      matrix:
        checks:
          - advisories
          - bans licenses sources
    steps:
      - uses: actions/checkout@v4.1.2
      - uses: EmbarkStudios/cargo-deny-action@v1
        with:
          command: check ${{ matrix.checks }}