diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..046c471 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,53 @@ +name: Release to NuGet + +on: + release: + types: [published] + +jobs: + build: + runs-on: ubuntu-latest + strategy: + matrix: + package: + [ + ArtemisNetCoreClient + ] + steps: + - uses: actions/checkout@v1 + - name: Setup .NET Core + uses: actions/setup-dotnet@v1 + with: + dotnet-version: "8.0.x" + - name: Create NuGet Package + run: dotnet pack -c Release /p:Version=${{ github.event.release.name }} /p:PackageReleaseNotes="See https://github.com/Havret/dotnet-activemq-artemis-core-client/releases/tag/${{ github.event.release.tag_name }}" + - name: Archive NuGet Package + uses: actions/upload-artifact@v1 + with: + name: ${{ matrix.package }} + path: ./src/${{ matrix.package }}/bin/Release/${{ matrix.package }}.${{ github.event.release.name }}.nupkg + - name: Archive NuGet Package With Symbols + uses: actions/upload-artifact@v1 + with: + name: ${{ matrix.package }} + path: ./src/${{ matrix.package }}/bin/Release/${{ matrix.package }}.${{ github.event.release.name }}.snupkg + - name: Publish NuGet Package + run: dotnet nuget push ./src/${{ matrix.package }}/bin/Release/${{ matrix.package }}.${{ github.event.release.name }}.nupkg --api-key ${{ secrets.nuget_api_key }} --source https://api.nuget.org/v3/index.json + - name: Upload NuGet Package + uses: actions/upload-release-asset@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./src/${{ matrix.package }}/bin/Release/${{ matrix.package }}.${{ github.event.release.name }}.nupkg + asset_name: ${{ matrix.package }}.${{ github.event.release.name }}.nupkg + asset_content_type: application/zip + - name: NuGet Package With Symbols + uses: actions/upload-release-asset@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./src/${{ matrix.package }}/bin/Release/${{ matrix.package }}.${{ github.event.release.name }}.snupkg + asset_name: ${{ matrix.package }}.${{ github.event.release.name }}.snupkg + asset_content_type: application/zip diff --git a/README.md b/README.md index 1ea5ab7..b7be395 100644 --- a/README.md +++ b/README.md @@ -12,6 +12,10 @@ --- +|NuGet|Status| +|------|-------------| +|ArtemisNetCoreClient|[![NuGet](https://img.shields.io/nuget/vpre/ArtemisNetCoreClient.svg)](https://www.nuget.org/packages/ArtemisNetCoreClient/) + Apache ActiveMQ Artemis is an open-source project to build a multi-protocol, embeddable, very high performance, clustered, asynchronous messaging system. This .NET client library is an open-source effort to equip .NET developers with a powerful, straightforward client for Apache ActiveMQ Artemis. Utilizing the broker's Core protocol, this library focuses on high-performance messaging, ensuring compatibility and comprehensive feature support with Apache ActiveMQ Artemis.