rust-microservice 0.1.3

A microservices framework in Rust whichs provides common functionalities for developing Web APIs.
Documentation
on:
  workflow_call:

jobs:
  rust-release:
    runs-on: ${{ matrix.os }}
    strategy:
      matrix:
        os: [ubuntu-latest] #[ubuntu-latest, macOS-latest, windows-latest]
        include:
        - os: ubuntu-latest
          target: x86_64-unknown-linux-musl
      # - os: macOS-latest
      #   target: x86_64-apple-darwin
      # - os: windows-latest
      #   target: x86_64-pc-windows-msvc

    steps:
      - uses: actions/checkout@v6

      # Download release artifacts from the build job
      - name: Download Release Artifacts
        uses: actions/download-artifact@v8
        with:
          repository: kenniston/rust-microservice
          name: bundle-${{ github.ref_name }}-${{ matrix.target }}
          path: ./.release-artifacts

      # Extract current release notes from CHANGELOG.md
      - name: Extract current release notes
        run: |
          echo "ℹ️ Extracting current release notes from CHANGELOG.md..."
          sed -n '/^## /,/^## /p' CHANGELOG.md | head -n -1 | sed '1d' > RELEASE.md
          echo "✅ Current release notes extracted successfully."

      # Release to GitHub Releases
      - name: Release
        uses: softprops/action-gh-release@v2
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
        with:
          body_path: RELEASE.md
          repository: kenniston/rust-microservice
          files: |
            ./.release-artifacts/server-${{ matrix.target }}
            ./.release-artifacts/server-${{ matrix.target }}.exe