Skip to content

Commit 383f40a

Browse files
vazoisCopilot
andcommitted
Split replication tests into TLS, AsyncReplay, and DisklessSync projects
Separate Garnet.test.cluster.replication into 3 additional projects for parallel CI execution: - Garnet.test.cluster.replication.tls: TLS replication tests (inherits ClusterReplicationBaseTests with useTLS=true) - Garnet.test.cluster.replication.asyncreplay: Async replay tests (inherits ClusterReplicationBaseTests with asyncReplay=true) - Garnet.test.cluster.replication.disklesssync: Diskless sync tests (standalone ClusterReplicationDisklessSyncTests) Base replication project retains ClusterReplicationBaseTests and ClusterResetDuringReplicationTests. Updated InternalsVisibleTo, multilog project references, CI and nightly workflow matrices, and solution file. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent 914f8b1 commit 383f40a

11 files changed

Lines changed: 158 additions & 2 deletions

File tree

.github/workflows/ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ jobs:
8484
os: [ ubuntu-latest, windows-latest ]
8585
framework: [ 'net8.0' , 'net10.0']
8686
configuration: [ 'Debug', 'Release' ]
87-
test: [ 'Garnet.test', 'Garnet.test.cluster', 'Garnet.test.cluster.migrate', 'Garnet.test.cluster.replication', 'Garnet.test.cluster.vectorsets', 'Garnet.test.cluster.multilog' ]
87+
test: [ 'Garnet.test', 'Garnet.test.cluster', 'Garnet.test.cluster.migrate', 'Garnet.test.cluster.replication', 'Garnet.test.cluster.replication.tls', 'Garnet.test.cluster.replication.asyncreplay', 'Garnet.test.cluster.replication.disklesssync', 'Garnet.test.cluster.vectorsets', 'Garnet.test.cluster.multilog' ]
8888
if: needs.changes.outputs.garnet == 'true'
8989
steps:
9090
- name: Check out code

.github/workflows/nightly.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ jobs:
1818
strategy:
1919
fail-fast: false
2020
matrix:
21-
test: [ 'Garnet.test', 'Garnet.test.cluster', 'Garnet.test.cluster.migrate', 'Garnet.test.cluster.replication', 'Garnet.test.cluster.vectorsets', 'Garnet.test.cluster.multilog', 'Tsavorite.test' ]
21+
test: [ 'Garnet.test', 'Garnet.test.cluster', 'Garnet.test.cluster.migrate', 'Garnet.test.cluster.replication', 'Garnet.test.cluster.replication.tls', 'Garnet.test.cluster.replication.asyncreplay', 'Garnet.test.cluster.replication.disklesssync', 'Garnet.test.cluster.vectorsets', 'Garnet.test.cluster.multilog', 'Tsavorite.test' ]
2222
os: [ ubuntu-latest, windows-latest ]
2323
framework: [ 'net8.0', 'net10.0' ]
2424
configuration: [ 'Debug', 'Release' ]

Garnet.slnx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,9 @@
8080
<Project Path="test/Garnet.test.cluster/Garnet.test.cluster.csproj" />
8181
<Project Path="test/Garnet.test.cluster.migrate/Garnet.test.cluster.migrate.csproj" />
8282
<Project Path="test/Garnet.test.cluster.replication/Garnet.test.cluster.replication.csproj" />
83+
<Project Path="test/Garnet.test.cluster.replication.tls/Garnet.test.cluster.replication.tls.csproj" />
84+
<Project Path="test/Garnet.test.cluster.replication.asyncreplay/Garnet.test.cluster.replication.asyncreplay.csproj" />
85+
<Project Path="test/Garnet.test.cluster.replication.disklesssync/Garnet.test.cluster.replication.disklesssync.csproj" />
8386
<Project Path="test/Garnet.test.cluster.vectorsets/Garnet.test.cluster.vectorsets.csproj" />
8487
<Project Path="test/Garnet.test.cluster.multilog/Garnet.test.cluster.multilog.csproj" />
8588
<Project Path="test/Garnet.test/Garnet.test.csproj" />

test/Garnet.test.cluster.multilog/Garnet.test.cluster.multilog.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
<ProjectReference Include="..\..\libs\storage\Tsavorite\cs\src\devices\AzureStorageDevice\Tsavorite.devices.AzureStorageDevice.csproj" />
4242
<ProjectReference Include="..\Garnet.test.cluster\Garnet.test.cluster.csproj" />
4343
<ProjectReference Include="..\Garnet.test.cluster.replication\Garnet.test.cluster.replication.csproj" />
44+
<ProjectReference Include="..\Garnet.test.cluster.replication.disklesssync\Garnet.test.cluster.replication.disklesssync.csproj" />
4445
</ItemGroup>
4546

4647
<PropertyGroup>
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
<Project Sdk="Microsoft.NET.Sdk">
2+
3+
<PropertyGroup>
4+
<SignAssembly>true</SignAssembly>
5+
<AssemblyOriginatorKeyFile>../../Garnet.snk</AssemblyOriginatorKeyFile>
6+
<DelaySign>false</DelaySign>
7+
</PropertyGroup>
8+
9+
<PropertyGroup>
10+
<NoWarn>1701;1702;1591</NoWarn>
11+
</PropertyGroup>
12+
13+
<ItemGroup>
14+
<None Include="..\testcerts\testcert.pfx" Link="testcert.pfx">
15+
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
16+
</None>
17+
</ItemGroup>
18+
19+
<ItemGroup>
20+
<PackageReference Include="Allure.Net.Commons" />
21+
<PackageReference Include="Allure.NUnit" />
22+
<PackageReference Include="CommandLineParser" />
23+
<PackageReference Include="Microsoft.CodeAnalysis" />
24+
<PackageReference Include="Microsoft.Extensions.Configuration.Json" />
25+
<PackageReference Include="Microsoft.Extensions.Configuration.Binder" />
26+
<PackageReference Include="Microsoft.NET.Test.Sdk" />
27+
<PackageReference Include="NUnit" />
28+
<PackageReference Include="NUnit3TestAdapter">
29+
<PrivateAssets>all</PrivateAssets>
30+
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
31+
</PackageReference>
32+
<PackageReference Include="StackExchange.Redis" />
33+
</ItemGroup>
34+
35+
<ItemGroup>
36+
<ProjectReference Include="..\..\libs\client\Garnet.client.csproj" />
37+
<ProjectReference Include="..\..\libs\cluster\Garnet.cluster.csproj" />
38+
<ProjectReference Include="..\..\libs\common\Garnet.common.csproj" />
39+
<ProjectReference Include="..\..\libs\host\Garnet.host.csproj" />
40+
<ProjectReference Include="..\..\libs\server\Garnet.server.csproj" />
41+
<ProjectReference Include="..\..\libs\storage\Tsavorite\cs\src\devices\AzureStorageDevice\Tsavorite.devices.AzureStorageDevice.csproj" />
42+
<ProjectReference Include="..\Garnet.test.cluster\Garnet.test.cluster.csproj" />
43+
<ProjectReference Include="..\Garnet.test.cluster.replication\Garnet.test.cluster.replication.csproj" />
44+
</ItemGroup>
45+
46+
<PropertyGroup>
47+
<AspectInjector_Enabled>false</AspectInjector_Enabled>
48+
</PropertyGroup>
49+
</Project>

test/Garnet.test.cluster.replication/ReplicationTests/ClusterReplicationAsyncReplay.cs renamed to test/Garnet.test.cluster.replication.asyncreplay/ReplicationTests/ClusterReplicationAsyncReplay.cs

File renamed without changes.
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
<Project Sdk="Microsoft.NET.Sdk">
2+
3+
<PropertyGroup>
4+
<SignAssembly>true</SignAssembly>
5+
<AssemblyOriginatorKeyFile>../../Garnet.snk</AssemblyOriginatorKeyFile>
6+
<DelaySign>false</DelaySign>
7+
</PropertyGroup>
8+
9+
<PropertyGroup>
10+
<NoWarn>1701;1702;1591</NoWarn>
11+
</PropertyGroup>
12+
13+
<ItemGroup>
14+
<InternalsVisibleTo Include="Garnet.test.cluster.multilog" Key="0024000004800000940000000602000000240000525341310004000001000100011b1661238d3d3c76232193c8aa2de8c05b8930d6dfe8cd88797a8f5624fdf14a1643141f31da05c0f67961b0e3a64c7120001d2f8579f01ac788b0ff545790d44854abe02f42bfe36a056166a75c6a694db8c5b6609cff8a2dbb429855a1d9f79d4d8ec3e145c74bfdd903274b7344beea93eab86b422652f8dd8eecf530d2" />
15+
</ItemGroup>
16+
17+
<ItemGroup>
18+
<None Include="..\testcerts\testcert.pfx" Link="testcert.pfx">
19+
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
20+
</None>
21+
</ItemGroup>
22+
23+
<ItemGroup>
24+
<PackageReference Include="Allure.Net.Commons" />
25+
<PackageReference Include="Allure.NUnit" />
26+
<PackageReference Include="CommandLineParser" />
27+
<PackageReference Include="Microsoft.CodeAnalysis" />
28+
<PackageReference Include="Microsoft.Extensions.Configuration.Json" />
29+
<PackageReference Include="Microsoft.Extensions.Configuration.Binder" />
30+
<PackageReference Include="Microsoft.NET.Test.Sdk" />
31+
<PackageReference Include="NUnit" />
32+
<PackageReference Include="NUnit3TestAdapter">
33+
<PrivateAssets>all</PrivateAssets>
34+
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
35+
</PackageReference>
36+
<PackageReference Include="StackExchange.Redis" />
37+
</ItemGroup>
38+
39+
<ItemGroup>
40+
<ProjectReference Include="..\..\libs\client\Garnet.client.csproj" />
41+
<ProjectReference Include="..\..\libs\cluster\Garnet.cluster.csproj" />
42+
<ProjectReference Include="..\..\libs\common\Garnet.common.csproj" />
43+
<ProjectReference Include="..\..\libs\host\Garnet.host.csproj" />
44+
<ProjectReference Include="..\..\libs\server\Garnet.server.csproj" />
45+
<ProjectReference Include="..\..\libs\storage\Tsavorite\cs\src\devices\AzureStorageDevice\Tsavorite.devices.AzureStorageDevice.csproj" />
46+
<ProjectReference Include="..\Garnet.test.cluster\Garnet.test.cluster.csproj" />
47+
</ItemGroup>
48+
49+
<PropertyGroup>
50+
<AspectInjector_Enabled>false</AspectInjector_Enabled>
51+
</PropertyGroup>
52+
</Project>

test/Garnet.test.cluster.replication/ReplicationTests/ClusterReplicationDisklessSyncTests.cs renamed to test/Garnet.test.cluster.replication.disklesssync/ReplicationTests/ClusterReplicationDisklessSyncTests.cs

File renamed without changes.
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
<Project Sdk="Microsoft.NET.Sdk">
2+
3+
<PropertyGroup>
4+
<SignAssembly>true</SignAssembly>
5+
<AssemblyOriginatorKeyFile>../../Garnet.snk</AssemblyOriginatorKeyFile>
6+
<DelaySign>false</DelaySign>
7+
</PropertyGroup>
8+
9+
<PropertyGroup>
10+
<NoWarn>1701;1702;1591</NoWarn>
11+
</PropertyGroup>
12+
13+
<ItemGroup>
14+
<None Include="..\testcerts\testcert.pfx" Link="testcert.pfx">
15+
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
16+
</None>
17+
</ItemGroup>
18+
19+
<ItemGroup>
20+
<PackageReference Include="Allure.Net.Commons" />
21+
<PackageReference Include="Allure.NUnit" />
22+
<PackageReference Include="CommandLineParser" />
23+
<PackageReference Include="Microsoft.CodeAnalysis" />
24+
<PackageReference Include="Microsoft.Extensions.Configuration.Json" />
25+
<PackageReference Include="Microsoft.Extensions.Configuration.Binder" />
26+
<PackageReference Include="Microsoft.NET.Test.Sdk" />
27+
<PackageReference Include="NUnit" />
28+
<PackageReference Include="NUnit3TestAdapter">
29+
<PrivateAssets>all</PrivateAssets>
30+
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
31+
</PackageReference>
32+
<PackageReference Include="StackExchange.Redis" />
33+
</ItemGroup>
34+
35+
<ItemGroup>
36+
<ProjectReference Include="..\..\libs\client\Garnet.client.csproj" />
37+
<ProjectReference Include="..\..\libs\cluster\Garnet.cluster.csproj" />
38+
<ProjectReference Include="..\..\libs\common\Garnet.common.csproj" />
39+
<ProjectReference Include="..\..\libs\host\Garnet.host.csproj" />
40+
<ProjectReference Include="..\..\libs\server\Garnet.server.csproj" />
41+
<ProjectReference Include="..\..\libs\storage\Tsavorite\cs\src\devices\AzureStorageDevice\Tsavorite.devices.AzureStorageDevice.csproj" />
42+
<ProjectReference Include="..\Garnet.test.cluster\Garnet.test.cluster.csproj" />
43+
<ProjectReference Include="..\Garnet.test.cluster.replication\Garnet.test.cluster.replication.csproj" />
44+
</ItemGroup>
45+
46+
<PropertyGroup>
47+
<AspectInjector_Enabled>false</AspectInjector_Enabled>
48+
</PropertyGroup>
49+
</Project>

test/Garnet.test.cluster.replication/ReplicationTests/ClusterReplicationTLS.cs renamed to test/Garnet.test.cluster.replication.tls/ReplicationTests/ClusterReplicationTLS.cs

File renamed without changes.

0 commit comments

Comments
 (0)