Skip to content

Commit 73befd5

Browse files
committed
Creates self-contained and single-file releases
Configures the release workflow to publish self-contained, single-file executables for all target platforms. It also adds instructions to the release notes, emphasizing that no .NET runtime installation is required.
1 parent f8cdb84 commit 73befd5

File tree

1 file changed

+41
-7
lines changed

1 file changed

+41
-7
lines changed

.github/workflows/release.yml

Lines changed: 41 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,15 @@ jobs:
3434
echo "version=$VERSION" >> $GITHUB_OUTPUT
3535
echo "Extracted version: $VERSION"
3636
37-
- name: Publish
38-
run: dotnet publish -c Release -r linux-x64 --self-contained -o ./publish --no-build
37+
- name: Publish self-contained
38+
run: |
39+
dotnet publish -c Release -r linux-x64 \
40+
--self-contained true \
41+
-p:PublishSingleFile=true \
42+
-p:IncludeNativeLibrariesForSelfExtract=true \
43+
-p:EnableCompressionInSingleFile=true \
44+
-o ./publish \
45+
--no-build
3946
4047
- name: Create archive
4148
run: |
@@ -78,8 +85,15 @@ jobs:
7885
echo "version=$VERSION" >> $env:GITHUB_OUTPUT
7986
Write-Output "Extracted version: $VERSION"
8087
81-
- name: Publish
82-
run: dotnet publish -c Release -r win-x64 --self-contained -o ./publish --no-build
88+
- name: Publish self-contained
89+
run: |
90+
dotnet publish -c Release -r win-x64 `
91+
--self-contained true `
92+
-p:PublishSingleFile=true `
93+
-p:IncludeNativeLibrariesForSelfExtract=true `
94+
-p:EnableCompressionInSingleFile=true `
95+
-o ./publish `
96+
--no-build
8397
8498
- name: Create archive
8599
run: |
@@ -126,8 +140,15 @@ jobs:
126140
echo "version=$VERSION" >> $GITHUB_OUTPUT
127141
echo "Extracted version: $VERSION"
128142
129-
- name: Publish
130-
run: dotnet publish -c Release -r ${{ matrix.runtime }} --self-contained -o ./publish --no-build
143+
- name: Publish self-contained
144+
run: |
145+
dotnet publish -c Release -r ${{ matrix.runtime }} \
146+
--self-contained true \
147+
-p:PublishSingleFile=true \
148+
-p:IncludeNativeLibrariesForSelfExtract=true \
149+
-p:EnableCompressionInSingleFile=true \
150+
-o ./publish \
151+
--no-build
131152
132153
- name: Create macOS App Bundle
133154
run: |
@@ -208,7 +229,20 @@ jobs:
208229
COMMITS=$(git log ${PREVIOUS_TAG}..HEAD --pretty=format:"- %s" --no-merges)
209230
fi
210231
211-
echo "$COMMITS" > release_notes.md
232+
# Add note about self-contained deployment
233+
echo "## What's Changed" > release_notes.md
234+
echo "" >> release_notes.md
235+
echo "✅ **Self-contained builds** - No .NET runtime installation required!" >> release_notes.md
236+
echo "" >> release_notes.md
237+
echo "### Changes" >> release_notes.md
238+
echo "$COMMITS" >> release_notes.md
239+
echo "" >> release_notes.md
240+
echo "### Download" >> release_notes.md
241+
echo "- **macOS ARM64** (Apple Silicon M1/M2/M3): \`BusLane-*-osx-arm64.dmg\`" >> release_notes.md
242+
echo "- **macOS x64** (Intel): \`BusLane-*-osx-x64.dmg\`" >> release_notes.md
243+
echo "- **Windows**: \`BusLane-*-win-x64.zip\`" >> release_notes.md
244+
echo "- **Linux**: \`BusLane-*-linux-x64.tar.gz\`" >> release_notes.md
245+
212246
cat release_notes.md
213247
214248
- name: Create Release

0 commit comments

Comments
 (0)