oci-spec 0.9.0

Open Container Initiative Specifications in Rust
Documentation
name: cross
on:
  pull_request: {}
  push:
    branches:
      - main
env:
  CARGO_TERM_COLOR: always
jobs:
  build:
    strategy:
      fail-fast: false
      matrix:
        target:
          - x86_64-unknown-linux-gnu
          - aarch64-unknown-linux-gnu
          - powerpc64le-unknown-linux-gnu
          - s390x-unknown-linux-gnu
          - x86_64-pc-windows-gnu
          - x86_64-unknown-freebsd
          - x86_64-pc-solaris
    name: ${{matrix.target}}
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
      - name: Generate lockfile
        run: cargo generate-lockfile
      - name: Setup Cache
        uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
        with:
          path: |
            ~/.cargo/registry
            ~/.cargo/git
            target
          key: ${{ runner.os }}-cross-${{matrix.target}}-${{ hashFiles('**/Cargo.lock') }}
      - name: Install cross-rs
        run: |
          cargo install cross --git https://github.com/cross-rs/cross
          cross --version
      - name: Ensure the latest base image
        run: docker pull ghcr.io/cross-rs/${{matrix.target}}:main
      - name: Build for ${{matrix.target}}
        run: cross build -v --target ${{matrix.target}}