diff --git a/.github/workflows/CreateRelease.yml b/.github/workflows/CreateRelease.yml
index 20f772c7..b717695e 100644
--- a/.github/workflows/CreateRelease.yml
+++ b/.github/workflows/CreateRelease.yml
@@ -4,6 +4,7 @@ permissions:
contents: write
on:
+ workflow_dispatch:
push:
tags:
- "*.*.*"
@@ -15,7 +16,46 @@ jobs:
- name: Checkout
uses: actions/checkout@v4
+ - name: Setup .NET 8
+ uses: actions/setup-dotnet@v4
+ with:
+ dotnet-version: '8.0.x'
+
+ - name: Publish Standalone Binaries
+ shell: bash
+ run: |
+ mkdir -p ./artifacts
+ RIDS=("win-x64" "win-arm64" "linux-x64" "linux-arm64" "osx-x64" "osx-arm64")
+
+ for RID in "${RIDS[@]}"; do
+ echo "Publishing for $RID..."
+ dotnet publish ./src/dotnet-WireMock.Net/dotnet-WireMock.csproj \
+ -c Release \
+ -r "$RID" \
+ --self-contained true \
+ -p:PublishSingleFile=true \
+ -p:IncludeNativeLibrariesForSelfExtract=true \
+ -p:PublishDocumentationFile=false \
+ -p:DebugType=None \
+ -p:DebugSymbols=false \
+ -o "./publish/$RID"
+
+ if [[ "$RID" == win-* ]]; then
+ (cd "./publish/$RID" && zip "../../artifacts/wiremock-net-$RID.zip" dotnet-WireMock.exe)
+ else
+ tar -czvf "./artifacts/wiremock-net-$RID.tar.gz" -C "./publish/$RID" dotnet-WireMock
+ fi
+ done
+
+ - name: Upload Standalone Artifacts
+ uses: actions/upload-artifact@v4
+ with:
+ name: wiremock-standalone
+ path: ./artifacts/*
+
- name: Release
+ if: startsWith(github.ref, 'refs/tags/')
uses: softprops/action-gh-release@v2
with:
- generate_release_notes: true
\ No newline at end of file
+ generate_release_notes: true
+ files: ./artifacts/*
diff --git a/src/dotnet-WireMock.Net/dotnet-WireMock.csproj b/src/dotnet-WireMock.Net/dotnet-WireMock.csproj
index ca18a534..2a15fe24 100644
--- a/src/dotnet-WireMock.Net/dotnet-WireMock.csproj
+++ b/src/dotnet-WireMock.Net/dotnet-WireMock.csproj
@@ -1,27 +1,27 @@
-
-
-
- Exe
- net8.0
- true
- WireMock.Net
- dotnet-wiremock
- A dotnet commandline tool for WireMock.Net (A Lightweight Http Mocking Server for .NET)
- tdd;mock;http;wiremock;test;server;unittest;dotnet;tool;dotnet-tool
- MIT
- Stef Heyenrath
-
-
-
- true
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
+
+
+
+ Exe
+ net8.0
+ true
+ WireMock.Net
+ dotnet-wiremock
+ A dotnet commandline tool for WireMock.Net (A Lightweight Http Mocking Server for .NET)
+ tdd;mock;http;wiremock;test;server;unittest;dotnet;tool;dotnet-tool
+ MIT
+ Stef Heyenrath
+
+
+
+ true
+
+
+
+
+
+
+
+
+
+
+