Skip to content

Commit 0fd6840

Browse files
author
Matthew Bate
committed
Build Ready Project Files
1 parent 5ab5424 commit 0fd6840

File tree

5 files changed

+41
-47
lines changed

5 files changed

+41
-47
lines changed

.github/workflows/dotnet-desktop.yml

Lines changed: 37 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -16,14 +16,16 @@ permissions:
1616

1717
env:
1818
SERVERMANAGER_PROJECT_PATH: BHD-ServerManager/ServerManager.csproj
19+
REMOTECLIENT_PROJECT_PATH: RemoteClient/RemoteClient.csproj
1920
NETLIMITERBRIDGE_PROJECT_PATH: NetLimiterBridge/NetLimiterBridge.csproj
21+
HAWKSYNCSHARED_PROJECT_PATH: HawkSyncShared/HawkSyncShared.csproj
2022
OUTPUT_NAME: HawkSync-ServerManager
2123
DOTNET_VERSION: '8.0.x'
2224

2325
jobs:
2426
build:
2527
runs-on: windows-latest
26-
28+
2729
steps:
2830
- name: Checkout code
2931
uses: actions/checkout@v4
@@ -38,6 +40,12 @@ jobs:
3840
- name: Setup .NET Framework Build Tools
3941
uses: microsoft/setup-msbuild@v2
4042

43+
- name: Restore HawkSyncShared dependencies
44+
run: dotnet restore ${{ env.HAWKSYNCSHARED_PROJECT_PATH }}
45+
46+
- name: Build HawkSyncShared
47+
run: dotnet build ${{ env.HAWKSYNCSHARED_PROJECT_PATH }} --configuration Release
48+
4149
- name: Restore ServerManager dependencies
4250
run: dotnet restore ${{ env.SERVERMANAGER_PROJECT_PATH }}
4351

@@ -61,24 +69,43 @@ jobs:
6169
/p:BaseOutputPath=bin/ `
6270
/p:Platform="Any CPU"
6371
72+
- name: Restore RemoteClient dependencies
73+
run: dotnet restore ${{ env.REMOTECLIENT_PROJECT_PATH }}
74+
75+
- name: Build RemoteClient (.NET 8.0)
76+
run: |
77+
dotnet build ${{ env.REMOTECLIENT_PROJECT_PATH }} `
78+
--configuration Release `
79+
--no-restore `
80+
/p:UseCommonOutputDirectory=false `
81+
/p:OutputPath=bin/Release/ `
82+
/p:BaseOutputPath=bin/ `
83+
/p:Platform="Any CPU"
84+
6485
- name: Publish ServerManager
6586
run: |
6687
dotnet publish ${{ env.SERVERMANAGER_PROJECT_PATH }} `
6788
--configuration Release `
6889
--runtime win-x64 `
6990
--self-contained false `
70-
--output ./publish `
91+
--output ./publish/ServerManager `
92+
/p:UseCommonOutputDirectory=false
93+
94+
- name: Publish RemoteClient
95+
run: |
96+
dotnet publish ${{ env.REMOTECLIENT_PROJECT_PATH }} `
97+
--configuration Release `
98+
--runtime win-x64 `
99+
--self-contained false `
100+
--output ./publish/RemoteClient `
71101
/p:UseCommonOutputDirectory=false
72102
73103
- name: Copy NetLimiterBridge to ServerManager output
74104
shell: pwsh
75105
run: |
76-
# Create NetLimiterBridge subfolder
77-
New-Item -ItemType Directory -Force -Path ./publish/NetLimiterBridge
78-
79-
# Copy NetLimiterBridge binaries
106+
New-Item -ItemType Directory -Force -Path ./publish/ServerManager/NetLimiterBridge
80107
Copy-Item -Path ./NetLimiterBridge/bin/Release/* `
81-
-Destination ./publish/NetLimiterBridge/ `
108+
-Destination ./publish/ServerManager/NetLimiterBridge/ `
82109
-Recurse -Force
83110
84111
- name: Create version info
@@ -101,7 +128,9 @@ jobs:
101128
102129
Components:
103130
- ServerManager (.NET 8.0)
131+
- RemoteClient (.NET 8.0)
104132
- NetLimiterBridge (.NET Framework 4.8.1)
133+
- HawkSyncShared (.NET Standard/.NET 8.0)
105134
106135
Requirements:
107136
- .NET 8.0 Runtime
@@ -133,39 +162,4 @@ jobs:
133162
with:
134163
name: ${{ env.OUTPUT_NAME }}-${{ env.VERSION }}
135164
path: ./${{ env.OUTPUT_NAME }}-${{ env.VERSION }}.zip
136-
retention-days: 30
137-
138-
- name: Create Release
139-
if: github.ref == 'refs/heads/master' || startsWith(github.ref, 'refs/tags/v')
140-
uses: softprops/action-gh-release@v2
141-
with:
142-
tag_name: ${{ startsWith(github.ref, 'refs/tags/v') && github.ref_name || format('dev-{0}', env.VERSION) }}
143-
name: ${{ startsWith(github.ref, 'refs/tags/v') && format('Release {0}', github.ref_name) || format('Development Build {0}', env.VERSION) }}
144-
files: ./${{ env.OUTPUT_NAME }}-${{ env.VERSION }}.zip
145-
body: |
146-
## HawkSync Server Manager ${{ env.VERSION }}
147-
148-
### Requirements
149-
- Windows 10/11 (x64)
150-
- [.NET 8.0 Runtime](https://dotnet.microsoft.com/download/dotnet/8.0)
151-
- [.NET Framework 4.8.1 Runtime](https://dotnet.microsoft.com/download/dotnet-framework/net481)
152-
153-
### Installation
154-
1. Install .NET 8.0 Runtime if not already installed
155-
2. Install .NET Framework 4.8.1 Runtime if not already installed
156-
3. Download the ZIP file below
157-
4. Extract to your desired location
158-
5. Run `ServerManager.exe`
159-
160-
### Components
161-
- **ServerManager**: Main application (.NET 8.0)
162-
- **NetLimiterBridge**: Network limiting bridge (.NET Framework 4.8.1)
163-
164-
### Changes
165-
See [commit history](https://github.com/${{ github.repository }}/commits/${{ github.ref_name }}) for details.
166-
draft: false
167-
prerelease: ${{ !startsWith(github.ref, 'refs/tags/v') }}
168-
generate_release_notes: true
169-
make_latest: ${{ startsWith(github.ref, 'refs/tags/v') }}
170-
env:
171-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
165+
retention-days: 30

BHD-ServerManager/ServerManager.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
<ApplicationIcon>Icon.ico</ApplicationIcon>
1414
<ProduceReferenceAssembly>True</ProduceReferenceAssembly>
1515
<PlatformTarget>AnyCPU</PlatformTarget>
16-
<BaseOutputPath>\\VM-DEV\ServerData\Development\HawkSync</BaseOutputPath>
16+
<BaseOutputPath></BaseOutputPath>
1717
<RunAnalyzersDuringLiveAnalysis>True</RunAnalyzersDuringLiveAnalysis>
1818
<RunAnalyzersDuringBuild>True</RunAnalyzersDuringBuild>
1919
<EnableNETAnalyzers>False</EnableNETAnalyzers>

HawkSyncShared/HawkSyncShared.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<TargetFramework>net8.0</TargetFramework>
55
<ImplicitUsings>enable</ImplicitUsings>
66
<Nullable>enable</Nullable>
7-
<BaseOutputPath>\\VM-DEV\ServerData\Development\HawkSync</BaseOutputPath>
7+
<BaseOutputPath></BaseOutputPath>
88
</PropertyGroup>
99

1010
</Project>

NetLimiterBridge/NetLimiterBridge.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@
3535
<DebugSymbols>true</DebugSymbols>
3636
<DebugType>full</DebugType>
3737
<Optimize>false</Optimize>
38-
<OutputPath>\\VM-DEV\ServerData\Development\HawkSync\Debug\net10.0-windows10.0.19041.0\NetLimiterBridge\</OutputPath>
38+
<OutputPath>bin\</OutputPath>
3939
<DefineConstants>DEBUG;TRACE</DefineConstants>
4040
<ErrorReport>prompt</ErrorReport>
4141
<WarningLevel>4</WarningLevel>

RemoteClient/RemoteClient.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
<Nullable>enable</Nullable>
77
<UseWindowsForms>true</UseWindowsForms>
88
<ImplicitUsings>enable</ImplicitUsings>
9-
<BaseOutputPath>\\VM-DEV\ServerData\Development\HawkSync\RemoteClient</BaseOutputPath>
9+
<BaseOutputPath></BaseOutputPath>
1010
</PropertyGroup>
1111

1212
<ItemGroup>

0 commit comments

Comments
 (0)