Skip to content

Commit 5fe4b4e

Browse files
committed
Create Release-Build script
1 parent 258897a commit 5fe4b4e

File tree

1 file changed

+46
-0
lines changed

1 file changed

+46
-0
lines changed

dotnet-publish.sh

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
#!/bin/bash
2+
cd "$(dirname "$0")"
3+
4+
if [ -d "./publish" ]; then
5+
read -p "Delete ./publish directory [y/N]? " -r
6+
7+
if [[ $REPLY =~ ^[Yy]$ ]]; then
8+
rm -rf ./publish
9+
else
10+
exit 1
11+
fi
12+
fi
13+
14+
dotnet build wireguard-allowed-ips.sln --configuration Release &&
15+
16+
# Single-File executables
17+
18+
# Linux
19+
dotnet publish ./WireguardAllowedIPs/WireguardAllowedIPs.csproj --configuration Release -o ./publish/linux-x64-selfcontained --os linux -a x64 /p:PublishSingleFile=true /p:IncludeNativeLibrariesForSelfExtract=true --self-contained &&
20+
dotnet publish ./WireguardAllowedIPs/WireguardAllowedIPs.csproj --configuration Release -o ./publish/linux-arm-selfcontained --os linux -a arm /p:PublishSingleFile=true /p:IncludeNativeLibrariesForSelfExtract=true --self-contained &&
21+
dotnet publish ./WireguardAllowedIPs/WireguardAllowedIPs.csproj --configuration Release -o ./publish/linux-arm64-selfcontained --os linux -a arm64 /p:PublishSingleFile=true /p:IncludeNativeLibrariesForSelfExtract=true --self-contained &&
22+
23+
# Windows
24+
dotnet publish ./WireguardAllowedIPs/WireguardAllowedIPs.csproj --configuration Release -o ./publish/windows-x86-selfcontained --os win -a x86 /p:PublishSingleFile=true /p:IncludeNativeLibrariesForSelfExtract=true --self-contained &&
25+
dotnet publish ./WireguardAllowedIPs/WireguardAllowedIPs.csproj --configuration Release -o ./publish/windows-x64-selfcontained --os win -a x64 /p:PublishSingleFile=true /p:IncludeNativeLibrariesForSelfExtract=true --self-contained &&
26+
27+
# Mac
28+
dotnet publish ./WireguardAllowedIPs/WireguardAllowedIPs.csproj --configuration Release -o ./publish/osx-x64-selfcontained --os osx -a x64 /p:PublishSingleFile=true /p:IncludeNativeLibrariesForSelfExtract=true --self-contained &&
29+
dotnet publish ./WireguardAllowedIPs/WireguardAllowedIPs.csproj --configuration Release -o ./publish/osx-arm64-selfcontained --os osx -a arm64 /p:PublishSingleFile=true /p:IncludeNativeLibrariesForSelfExtract=true --self-contained &&
30+
31+
# Runtime Executables
32+
33+
# Linux
34+
dotnet publish ./WireguardAllowedIPs/WireguardAllowedIPs.csproj --configuration Release -o ./publish/linux-x64 --os linux -a x64 /p:PublishSingleFile=true &&
35+
dotnet publish ./WireguardAllowedIPs/WireguardAllowedIPs.csproj --configuration Release -o ./publish/linux-arm --os linux -a arm /p:PublishSingleFile=true &&
36+
dotnet publish ./WireguardAllowedIPs/WireguardAllowedIPs.csproj --configuration Release -o ./publish/linux-arm64 --os linux -a arm64 /p:PublishSingleFile=true &&
37+
38+
# Windows
39+
dotnet publish ./WireguardAllowedIPs/WireguardAllowedIPs.csproj --configuration Release -o ./publish/windows-x86 --os win -a x86 /p:PublishSingleFile=true &&
40+
dotnet publish ./WireguardAllowedIPs/WireguardAllowedIPs.csproj --configuration Release -o ./publish/windows-x64 --os win -a x64 /p:PublishSingleFile=true &&
41+
42+
# Mac
43+
dotnet publish ./WireguardAllowedIPs/WireguardAllowedIPs.csproj --configuration Release -o ./publish/osx-x64 --os osx -a x64 /p:PublishSingleFile=true &&
44+
dotnet publish ./WireguardAllowedIPs/WireguardAllowedIPs.csproj --configuration Release -o ./publish/osx-arm64 --os osx -a arm64 /p:PublishSingleFile=true &&
45+
46+
echo "Done!"

0 commit comments

Comments
 (0)