rescrobbled 0.9.0

MPRIS music scrobbler daemon
name: Release

on:
  push:
    tags:
      - 'v[0-9]+.[0-9]+.[0-9]+'

jobs:
  release-github:
    runs-on: ubuntu-latest

    steps:
      - name: Checkout repository
        uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
        with:
          persist-credentials: false
      - name: Install dependencies
        run: sudo apt-get install --no-install-recommends -y libdbus-1-dev dbus
      - name: Build
        run: cargo build --release --verbose
      - name: Get release notes
        run: |
          awk "/^## $GITHUB_REF_NAME/{found=1; next} found && /^## /{exit} found{print}" CHANGELOG.md >changes.txt
      - name: Create release
        uses: softprops/action-gh-release@a06a81a03ee405af7f2048a818ed3f03bbf83c7b # v2.5.0
        with:
          body_path: changes.txt
          files: target/release/rescrobbled
          discussion_category_name: announcements

  release-cratesio:
    runs-on: ubuntu-latest
    permissions:
      id-token: write

    steps:
      - name: Checkout repository
        uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
        with:
          persist-credentials: false
      - name: Install dependencies
        run: sudo apt-get install --no-install-recommends -y libdbus-1-dev dbus
      - uses: rust-lang/crates-io-auth-action@b7e9a28eded4986ec6b1fa40eeee8f8f165559ec # v1.0.3
        id: auth
      - name: Release on crates.io
        run: |
          cargo publish --dry-run
          sed -i 's/publish = false/publish = true/' Cargo.toml
          cargo publish --allow-dirty
        env:
          CARGO_REGISTRY_TOKEN: ${{ steps.auth.outputs.token }}