mdbook-selfpath 0.2.2

A preprocessor for mdbook that allows self-referencing paths
Documentation
name: Release
on:
  release:
    types: [created]

defaults:
  run:
    shell: bash

permissions:
  contents: write

jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Install Rust
        uses: actions-rs/toolchain@v1
        with:
          toolchain: stable
          override: true
      - name: Install make
        run: sudo apt-get update && sudo apt-get install -y make
      - name: Run make compare
        run: |
          cargo install mdbook
          make compare
  release:
    runs-on: ${{ matrix.os }}
    needs: test
    strategy:
      matrix:
        include:
          - target: aarch64-unknown-linux-musl
            os: ubuntu-22.04
          - target: x86_64-unknown-linux-gnu
            os: ubuntu-22.04
          - target: x86_64-unknown-linux-musl
            os: ubuntu-22.04
          - target: x86_64-apple-darwin
            os: macos-latest
          - target: aarch64-apple-darwin
            os: macos-latest
          - target: x86_64-pc-windows-msvc
            os: windows-latest
    name: Deploy ${{ matrix.target }}
    steps:
    - uses: actions/checkout@v4
    - name: Install Rust
      run: ci/install-rust.sh stable ${{ matrix.target }}
    - name: Build asset
      run: ci/make-release-assets.sh ${{ matrix.os }} ${{ matrix.target }}
    - name: Update release with new asset
      env:
        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
      run: gh release upload $MDBOOK_SELFPATH_TAG $MDBOOK_SELFPATH_ASSET
  publish:
    name: Publish to crates.io
    runs-on: ubuntu-latest
    needs: test
    steps:
      - uses: actions/checkout@v4
      - name: Install Rust
        uses: actions-rs/toolchain@v1
        with:
          toolchain: stable
          override: true
      - name: Publish to crates.io
        if: success()
        env:
          CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}
        run: cargo publish --locked --no-verify