geoipsed 0.2.2

Inline decoration of IPv4 and IPv6 address geolocations
Documentation
name: Docs

on:
  push:
    branches: ["main"]
    paths:
      - "docs/**"
      - "src/**"
      - "crates/**"
      - "Cargo.toml"
      - "Cargo.lock"
  workflow_dispatch:

permissions:
  contents: read
  pages: write
  id-token: write

concurrency:
  group: "pages"
  cancel-in-progress: false

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v6

      - name: Install Rust
        uses: actions-rust-lang/setup-rust-toolchain@v1

      - name: Setup mdBook
        uses: peaceiris/actions-mdbook@v2
        with:
          mdbook-version: 'latest'

      - name: Build API Docs
        run: |
          cargo doc --workspace --no-deps --all-features
          rm -rf docs/src/api
          mkdir -p docs/src/api
          cp -r target/doc/* docs/src/api/
          echo '<meta http-equiv="refresh" content="0; url=geoipsed/index.html">' > docs/src/api/index.html

      - name: Build mdBook
        run: mdbook build docs

      - name: Setup Pages
        uses: actions/configure-pages@v5

      - name: Upload artifact
        uses: actions/upload-pages-artifact@v4
        with:
          path: "docs/book"

      - name: Deploy to GitHub Pages
        id: deployment
        uses: actions/deploy-pages@v4