truss-image 0.12.0

Image toolkit with a shared Rust core across the CLI, HTTP server, and WASM demo.
Documentation
name: CLI Integration
on:
  push:
    branches: [main]
    paths:
      - "src/**"
      - "e2e/**"
      - "integration/fixtures/**"
      - "Cargo.toml"
      - "Cargo.lock"
      - ".github/workflows/integration-cli.yml"
  pull_request:
    paths:
      - "src/**"
      - "e2e/**"
      - "integration/fixtures/**"
      - "Cargo.toml"
      - "Cargo.lock"
      - ".github/workflows/integration-cli.yml"

concurrency:
  group: integration-cli-${{ github.ref }}
  cancel-in-progress: true

permissions:
  contents: read

env:
  CARGO_TERM_COLOR: always

jobs:
  cli-integration:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v7
        with:
          persist-credentials: false

      - name: Install Rust
        uses: dtolnay/rust-toolchain@stable

      - name: Cache cargo artifacts
        uses: Swatinem/rust-cache@v2

      - name: Install atago
        uses: nao1215/setup-atago@e4b6719aea547a68e6c15252222babab7f492a88 # v0.1.1
        with:
          version: v0.17.0

      # e2e/run.sh builds truss (cargo build --release --locked) and runs the
      # atago specs in e2e/atago against the freshly built binary.
      - name: Run atago CLI tests
        run: ./e2e/run.sh