dactyl-db 0.9.0

Interchangeably read and write to a lightweight Rust local store or cloud-hosted Vercel Neon instances behind one facade.
Documentation
name: Release

permissions:
  contents: write
  pull-requests: write
  id-token: write
  packages: write

on:
  push:
    branches:
      - main
  workflow_dispatch:

jobs:
  release-publish:
    name: Release (Publish)
    runs-on: ubuntu-latest
    environment: release
    if: github.ref == 'refs/heads/main' || github.event_name == 'workflow_dispatch'
    steps:
      - name: Generate GitHub App token
        uses: actions/create-github-app-token@v2
        id: generate-token
        with:
          app-id: ${{ secrets.GH_APP_ID }}
          private-key: ${{ secrets.GH_APP_PRIVATE_KEY }}
          owner: DecapodLabs

      - name: Run release-please
        id: release
        uses: googleapis/release-please-action@v4
        with:
          release-type: rust
          target-branch: main
          token: ${{ steps.generate-token.outputs.token }}

      - name: Checkout
        if: ${{ steps.release.outputs.release_created }}
        uses: actions/checkout@v4
        with:
          fetch-depth: 0
          token: ${{ steps.generate-token.outputs.token }}
          persist-credentials: false

      - name: Install Rust toolchain
        if: ${{ steps.release.outputs.release_created }}
        uses: dtolnay/rust-toolchain@stable

      - name: Publish to crates.io
        if: ${{ steps.release.outputs.release_created }}
        run: cargo publish
        env:
          CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}