Skip to content

Add debug logging for CaughtUp handler invocation #43

Add debug logging for CaughtUp handler invocation

Add debug logging for CaughtUp handler invocation #43

Workflow file for this run

name: Publish NuGet Packages
on:
push:
tags:
- 'micro-plumberd/*'
workflow_dispatch:
inputs:
version:
description: 'Version to publish (e.g., 1.0.122.154 or 1.0.122.154-preview)'
required: true
type: string
configuration:
description: 'Build configuration'
required: false
default: 'Release'
type: choice
options:
- Release
- Debug
env:
DOTNET_VERSION: '10.0.x'
jobs:
publish:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: |
9.0.x
10.0.x
- name: Extract version and configuration from tag
id: get_version
run: |
if [ "${{ github.event_name }}" == "workflow_dispatch" ]; then
VERSION="${{ github.event.inputs.version }}"
CONFIGURATION="${{ github.event.inputs.configuration }}"
else
# Extract version from tag format: micro-plumberd/1.0.122.154 or micro-plumberd/1.0.122.154-preview
VERSION=${GITHUB_REF#refs/tags/micro-plumberd/}
# Auto-detect configuration from version suffix
if [[ "$VERSION" == *"-preview"* ]] || [[ "$VERSION" == *"-alpha"* ]] || [[ "$VERSION" == *"-beta"* ]]; then
CONFIGURATION="Debug"
else
CONFIGURATION="Release"
fi
fi
echo "VERSION=$VERSION" >> $GITHUB_OUTPUT
echo "CONFIGURATION=$CONFIGURATION" >> $GITHUB_OUTPUT
echo "Publishing version: $VERSION (Configuration: $CONFIGURATION)"
- name: Restore dependencies
run: dotnet restore src/MicroPlumberd.sln
- name: Build solution
run: dotnet build src/MicroPlumberd.sln --configuration ${{ steps.get_version.outputs.CONFIGURATION }} --no-restore /p:Version=${{ steps.get_version.outputs.VERSION }}
- name: Pack NuGet packages
run: |
dotnet pack src/MicroPlumberd/MicroPlumberd.csproj \
--configuration ${{ steps.get_version.outputs.CONFIGURATION }} \
--no-build \
--output ./artifacts \
/p:PackageVersion=${{ steps.get_version.outputs.VERSION }}
dotnet pack src/MicroPlumberd.CommandBus.Abstractions/MicroPlumberd.CommandBus.Abstractions.csproj \
--configuration ${{ steps.get_version.outputs.CONFIGURATION }} \
--no-build \
--output ./artifacts \
/p:PackageVersion=${{ steps.get_version.outputs.VERSION }}
dotnet pack src/MicroPlumberd.ProcessManager.Abstractions/MicroPlumberd.ProcessManager.Abstractions.csproj \
--configuration ${{ steps.get_version.outputs.CONFIGURATION }} \
--no-build \
--output ./artifacts \
/p:PackageVersion=${{ steps.get_version.outputs.VERSION }}
dotnet pack src/MicroPlumberd.SourceGenerators/MicroPlumberd.SourceGenerators.csproj \
--configuration ${{ steps.get_version.outputs.CONFIGURATION }} \
--no-build \
--output ./artifacts \
/p:PackageVersion=${{ steps.get_version.outputs.VERSION }}
dotnet pack src/MicroPlumberd.Services/MicroPlumberd.Services.csproj \
--configuration ${{ steps.get_version.outputs.CONFIGURATION }} \
--no-build \
--output ./artifacts \
/p:PackageVersion=${{ steps.get_version.outputs.VERSION }}
dotnet pack src/MicroPlumberd.Cron/MicroPlumberd.Services.Cron.csproj \
--configuration ${{ steps.get_version.outputs.CONFIGURATION }} \
--no-build \
--output ./artifacts \
/p:PackageVersion=${{ steps.get_version.outputs.VERSION }}
dotnet pack src/MicroPlumberd.Encryption/MicroPlumberd.Encryption.csproj \
--configuration ${{ steps.get_version.outputs.CONFIGURATION }} \
--no-build \
--output ./artifacts \
/p:PackageVersion=${{ steps.get_version.outputs.VERSION }}
dotnet pack src/MicroPlumberd.Protobuf/MicroPlumberd.Protobuf.csproj \
--configuration ${{ steps.get_version.outputs.CONFIGURATION }} \
--no-build \
--output ./artifacts \
/p:PackageVersion=${{ steps.get_version.outputs.VERSION }}
dotnet pack src/MicroPlumberd.Testing/MicroPlumberd.Testing.csproj \
--configuration ${{ steps.get_version.outputs.CONFIGURATION }} \
--no-build \
--output ./artifacts \
/p:PackageVersion=${{ steps.get_version.outputs.VERSION }}
dotnet pack src/MicroPlumberd.Services.Uniqueness/MicroPlumberd.Services.Uniqueness.csproj \
--configuration ${{ steps.get_version.outputs.CONFIGURATION }} \
--no-build \
--output ./artifacts \
/p:PackageVersion=${{ steps.get_version.outputs.VERSION }}
dotnet pack src/MicroPlumberd.Services.ProcessManager/MicroPlumberd.Services.ProcessManagers.csproj \
--configuration ${{ steps.get_version.outputs.CONFIGURATION }} \
--no-build \
--output ./artifacts \
/p:PackageVersion=${{ steps.get_version.outputs.VERSION }}
dotnet pack src/MicroPlumberd.DirectConnect/MicroPlumberd.Services.Grpc.DirectConnect.csproj \
--configuration ${{ steps.get_version.outputs.CONFIGURATION }} \
--no-build \
--output ./artifacts \
/p:PackageVersion=${{ steps.get_version.outputs.VERSION }}
dotnet pack src/MicroPlumberd.Service.Identity/MicroPlumberd.Services.Identity.csproj \
--configuration ${{ steps.get_version.outputs.CONFIGURATION }} \
--no-build \
--output ./artifacts \
/p:PackageVersion=${{ steps.get_version.outputs.VERSION }}
dotnet pack src/MicroPlumberd.Cron.Ui/MicroPlumberd.Services.Cron.Ui.csproj \
--configuration ${{ steps.get_version.outputs.CONFIGURATION }} \
--no-build \
--output ./artifacts \
/p:PackageVersion=${{ steps.get_version.outputs.VERSION }}
dotnet pack src/MicroPlumberd.Services.BatchOperations/MicroPlumberd.Services.BatchOperations.csproj \
--configuration ${{ steps.get_version.outputs.CONFIGURATION }} \
--no-build \
--output ./artifacts \
/p:PackageVersion=${{ steps.get_version.outputs.VERSION }}
dotnet pack src/MicroPlumberd.Services.Identity.Blazor/MicroPlumberd.Services.Identity.Blazor.csproj \
--configuration ${{ steps.get_version.outputs.CONFIGURATION }} \
--no-build \
--output ./artifacts \
/p:PackageVersion=${{ steps.get_version.outputs.VERSION }}
dotnet pack src/MicroPlumberd.Services.EventAggregator/MicroPlumberd.Services.EventAggregator.csproj \
--configuration ${{ steps.get_version.outputs.CONFIGURATION }} \
--no-build \
--output ./artifacts \
/p:PackageVersion=${{ steps.get_version.outputs.VERSION }}
- name: List artifacts
run: ls -lh ./artifacts
- name: Publish to NuGet.org
run: |
dotnet nuget push "./artifacts/*.nupkg" \
--api-key ${{ secrets.NUGET_API_KEY }} \
--source https://api.nuget.org/v3/index.json \
--skip-duplicate
- name: Publish to ModelingEvolution NuGet
run: |
dotnet nuget push "./artifacts/*.nupkg" \
--api-key ${{ secrets.NUGET_API_KEY_ME }} \
--source https://nuget.modelingevolution.com/v3/index.json \
--skip-duplicate
continue-on-error: true
- name: Upload artifacts
uses: actions/upload-artifact@v4
with:
name: nuget-packages-${{ steps.get_version.outputs.VERSION }}
path: ./artifacts/*.nupkg
retention-days: 30