Skip to content

Commit 4cf173a

Browse files
authored
1.0.0-beta1 Release
1.0.0-beta1 Release
2 parents 65030c8 + a9ad171 commit 4cf173a

File tree

118 files changed

+9886
-274
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

118 files changed

+9886
-274
lines changed

.github/dependabot.yml

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
version: 2
2+
updates:
3+
- package-ecosystem: nuget
4+
directory: "/"
5+
schedule:
6+
interval: daily
7+
open-pull-requests-limit: 10
8+
ignore:
9+
- dependency-name: Akka.Cluster.TestKit
10+
versions:
11+
- 1.4.16
12+
- 1.4.17
13+
- 1.4.18
14+
- dependency-name: Akka.TestKit.Xunit2
15+
versions:
16+
- 1.4.16
17+
- 1.4.17
18+
- 1.4.18
19+
- dependency-name: Akka.Remote.TestKit
20+
versions:
21+
- 1.4.16
22+
- 1.4.17
23+
- 1.4.18

Akka.MultiNodeTestRunner.sln

Lines changed: 24 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,6 @@ Microsoft Visual Studio Solution File, Format Version 12.00
33
# Visual Studio Version 16
44
VisualStudioVersion = 16.0.29230.47
55
MinimumVisualStudioVersion = 10.0.40219.1
6-
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Akka.MultiNodeTestRunner", "src\Akka.MultiNodeTestRunner\Akka.MultiNodeTestRunner.csproj", "{E945AABA-2779-41E8-9B43-8898FFD64F22}"
7-
EndProject
8-
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Akka.MultiNodeTestRunner.Tests", "src\Akka.MultiNodeTestRunner.Tests\Akka.MultiNodeTestRunner.Tests.csproj", "{0F9B9BC6-9F86-40E8-BA9B-D27BF3AC7970}"
9-
EndProject
106
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "build", "build", "{79D71264-186B-4F62-8930-35DD9ECCAF3B}"
117
ProjectSection(SolutionItems) = preProject
128
build.cmd = build.cmd
@@ -15,20 +11,36 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "build", "build", "{79D71264
1511
build.sh = build.sh
1612
EndProjectSection
1713
EndProject
14+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Akka.MultiNode.TestAdapter", "src\Akka.MultiNode.TestAdapter\Akka.MultiNode.TestAdapter.csproj", "{F3037C62-E780-4619-89B3-BA21C7168DFA}"
15+
EndProject
16+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Akka.MultiNode.SampleMultiNodeTests", "src\Akka.MultiNode.SampleMultiNodeTests\Akka.MultiNode.SampleMultiNodeTests.csproj", "{89D2C131-718F-4C93-9343-72E5BE6F7317}"
17+
EndProject
18+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Akka.MultiNode.TestAdapter.Tests", "src\Akka.MultiNode.TestAdapter.Tests\Akka.MultiNode.TestAdapter.Tests.csproj", "{A66D60EE-714F-4297-A9BD-222CFD868C28}"
19+
EndProject
20+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Akka.MultiNode.RemoteHost", "src\Akka.MultiNode.RemoteHost\Akka.MultiNode.RemoteHost.csproj", "{D59D10BA-E776-4AC6-B8F0-BAB40544439C}"
21+
EndProject
1822
Global
1923
GlobalSection(SolutionConfigurationPlatforms) = preSolution
2024
Debug|Any CPU = Debug|Any CPU
2125
Release|Any CPU = Release|Any CPU
2226
EndGlobalSection
2327
GlobalSection(ProjectConfigurationPlatforms) = postSolution
24-
{E945AABA-2779-41E8-9B43-8898FFD64F22}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
25-
{E945AABA-2779-41E8-9B43-8898FFD64F22}.Debug|Any CPU.Build.0 = Debug|Any CPU
26-
{E945AABA-2779-41E8-9B43-8898FFD64F22}.Release|Any CPU.ActiveCfg = Release|Any CPU
27-
{E945AABA-2779-41E8-9B43-8898FFD64F22}.Release|Any CPU.Build.0 = Release|Any CPU
28-
{0F9B9BC6-9F86-40E8-BA9B-D27BF3AC7970}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
29-
{0F9B9BC6-9F86-40E8-BA9B-D27BF3AC7970}.Debug|Any CPU.Build.0 = Debug|Any CPU
30-
{0F9B9BC6-9F86-40E8-BA9B-D27BF3AC7970}.Release|Any CPU.ActiveCfg = Release|Any CPU
31-
{0F9B9BC6-9F86-40E8-BA9B-D27BF3AC7970}.Release|Any CPU.Build.0 = Release|Any CPU
28+
{F3037C62-E780-4619-89B3-BA21C7168DFA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
29+
{F3037C62-E780-4619-89B3-BA21C7168DFA}.Debug|Any CPU.Build.0 = Debug|Any CPU
30+
{F3037C62-E780-4619-89B3-BA21C7168DFA}.Release|Any CPU.ActiveCfg = Release|Any CPU
31+
{F3037C62-E780-4619-89B3-BA21C7168DFA}.Release|Any CPU.Build.0 = Release|Any CPU
32+
{89D2C131-718F-4C93-9343-72E5BE6F7317}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
33+
{89D2C131-718F-4C93-9343-72E5BE6F7317}.Debug|Any CPU.Build.0 = Debug|Any CPU
34+
{89D2C131-718F-4C93-9343-72E5BE6F7317}.Release|Any CPU.ActiveCfg = Release|Any CPU
35+
{89D2C131-718F-4C93-9343-72E5BE6F7317}.Release|Any CPU.Build.0 = Release|Any CPU
36+
{A66D60EE-714F-4297-A9BD-222CFD868C28}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
37+
{A66D60EE-714F-4297-A9BD-222CFD868C28}.Debug|Any CPU.Build.0 = Debug|Any CPU
38+
{A66D60EE-714F-4297-A9BD-222CFD868C28}.Release|Any CPU.ActiveCfg = Release|Any CPU
39+
{A66D60EE-714F-4297-A9BD-222CFD868C28}.Release|Any CPU.Build.0 = Release|Any CPU
40+
{D59D10BA-E776-4AC6-B8F0-BAB40544439C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
41+
{D59D10BA-E776-4AC6-B8F0-BAB40544439C}.Debug|Any CPU.Build.0 = Debug|Any CPU
42+
{D59D10BA-E776-4AC6-B8F0-BAB40544439C}.Release|Any CPU.ActiveCfg = Release|Any CPU
43+
{D59D10BA-E776-4AC6-B8F0-BAB40544439C}.Release|Any CPU.Build.0 = Release|Any CPU
3244
EndGlobalSection
3345
GlobalSection(SolutionProperties) = preSolution
3446
HideSolutionNode = FALSE

NuGet.Config

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<configuration>
3+
<packageSources>
4+
<clear />
5+
<add key="myget.org/F/xunit" value="https://www.myget.org/F/xunit/api/v3/index.json" protocolVersion="3" />
6+
<add key="myget.org/F/b4ff5f6" value="http://www.myget.org/F/b4ff5f68eccf4f6bbfed74f055f88d8f/api/v3/index.json" protocolVersion="3" />
7+
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
8+
<add key="Akka.NET Nightly" value="https://www.myget.org/F/akkadotnet/api/v2" />
9+
</packageSources>
10+
<disabledPackageSources>
11+
<add key="Microsoft and .NET" value="true" />
12+
</disabledPackageSources>
13+
</configuration>

RELEASE_NOTES.md

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,5 @@
1-
#### 0.1.0 October 05 2019 ####
2-
First release
1+
#### 1.0.0-beta1 October 05 2019 ####
2+
First beta release
3+
4+
#### 0.1.13 October 05 2019 ####
5+
Initial commit

build-system/azure-pipeline.template.yaml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,15 @@ jobs:
1313
pool:
1414
vmImage: ${{ parameters.vmImage }}
1515
steps:
16+
- task: UseDotNet@2
17+
displayName: 'Use .NET 5 SDK 5.0.101'
18+
inputs:
19+
version: 5.0.101
20+
- task: UseDotNet@2
21+
displayName: 'Use .NET Core Runtime 3.1.10'
22+
inputs:
23+
packageType: runtime
24+
version: 3.1.10
1625
- checkout: self # self represents the repo where the initial Pipelines YAML file was found
1726
clean: false # whether to fetch clean each time
1827
submodules: recursive # set to 'true' for a single level of submodules or 'recursive' to get submodules of submodules

build-system/pr-validation.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ jobs:
1818
parameters:
1919
name: 'windows_pr'
2020
displayName: 'Windows PR Validation'
21-
vmImage: 'vs2017-win2016'
21+
vmImage: 'windows-2019'
2222
scriptFileName: build.cmd
2323
scriptArgs: all
2424
outputDirectory: 'bin/nuget'
@@ -27,7 +27,7 @@ jobs:
2727
parameters:
2828
name: 'linux_pr'
2929
displayName: 'Linux PR Validation'
30-
vmImage: 'ubuntu-16.04'
30+
vmImage: 'ubuntu-20.04'
3131
scriptFileName: ./build.sh
3232
scriptArgs: all
3333
outputDirectory: 'bin/nuget'

build-system/windows-release.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
# See https://docs.microsoft.com/en-us/azure/devops/pipelines/yaml-schema for reference
33

44
pool:
5-
vmImage: vs2017-win2016
5+
vmImage: windows-2019
66
demands: Cmd
77

88
trigger:

build.fsx

Lines changed: 110 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,13 @@ open Fake.DocFxHelper
1212
// Information about the project for Nuget and Assembly info files
1313
let configuration = "Release"
1414

15+
// Configuration values for tests
16+
let testNetCoreVersion = "netcoreapp3.1"
17+
let testNetVersion = "net5.0"
18+
1519
// Metadata used when signing packages and DLLs
16-
let signingName = "My Library"
17-
let signingDescription = "My REALLY COOL Library"
20+
let signingName = "Akka.MultiNode.TestAdapter"
21+
let signingDescription = "Akka.NET Multi-node Test Adapter; used for executing tests written with Akka.Remote.TestKit"
1822
let signingUrl = "https://signing.is.cool/"
1923

2024
// Read release notes and version
@@ -54,19 +58,24 @@ Target "Clean" (fun _ ->
5458
CleanDir outputPerfTests
5559
CleanDir outputNuGet
5660
CleanDir "docs/_site"
61+
62+
CleanDirs !! "./**/bin"
63+
CleanDirs !! "./**/obj"
5764
)
5865

5966
Target "AssemblyInfo" (fun _ ->
6067
XmlPokeInnerText "./src/common.props" "//Project/PropertyGroup/VersionPrefix" releaseNotes.AssemblyVersion
6168
XmlPokeInnerText "./src/common.props" "//Project/PropertyGroup/PackageReleaseNotes" (releaseNotes.Notes |> String.concat "\n")
6269
)
6370

64-
Target "Build" (fun _ ->
71+
Target "Build" (fun _ ->
72+
let additionalArgs = if versionSuffix.Length > 0 then [sprintf "/p:VersionSuffix=%s" versionSuffix] else []
6573
DotNetCli.Build
6674
(fun p ->
6775
{ p with
6876
Project = solutionFile
69-
Configuration = configuration }) // "Rebuild"
77+
Configuration = configuration
78+
AdditionalArgs = additionalArgs }) // "Rebuild"
7079
)
7180

7281

@@ -92,25 +101,46 @@ module internal ResultHandling =
92101
>> Option.iter (failBuildWithMessage errorLevel)
93102

94103
Target "RunTests" (fun _ ->
95-
let projects =
96-
match (isWindows) with
97-
| true -> !! "./src/**/*.Tests.csproj"
98-
| _ -> !! "./src/**/*.Tests.csproj" // if you need to filter specs for Linux vs. Windows, do it here
104+
let projects = match (isWindows) with
105+
| true -> !! "./src/**/*.Tests.*sproj"
106+
| _ -> !! "./src/**/*.Tests.*sproj" // if you need to filter specs for Linux vs. Windows, do it here
99107

100108
let runSingleProject project =
101109
let arguments =
102110
match (hasTeamCity) with
103-
| true -> (sprintf "test -c Release --no-build --logger:trx --logger:\"console;verbosity=normal\" --results-directory %s -- -parallel none -teamcity" (outputTests))
104-
| false -> (sprintf "test -c Release --no-build --logger:trx --logger:\"console;verbosity=normal\" --results-directory %s -- -parallel none" (outputTests))
111+
| true -> (sprintf "test -c Release --no-build --logger:trx --logger:\"console;verbosity=normal\" --framework %s --results-directory \"%s\" -- -parallel none -teamcity" testNetCoreVersion outputTests)
112+
| false -> (sprintf "test -c Release --no-build --logger:trx --logger:\"console;verbosity=normal\" --framework %s --results-directory \"%s\" -- -parallel none" testNetCoreVersion outputTests)
105113

106114
let result = ExecProcess(fun info ->
107115
info.FileName <- "dotnet"
108116
info.WorkingDirectory <- (Directory.GetParent project).FullName
109-
info.Arguments <- arguments) (TimeSpan.FromMinutes 30.0)
110-
111-
ResultHandling.failBuildIfXUnitReportedError TestRunnerErrorLevel.Error result
117+
info.Arguments <- arguments) (TimeSpan.FromMinutes 30.0)
112118

113-
projects |> Seq.iter (log)
119+
ResultHandling.failBuildIfXUnitReportedError TestRunnerErrorLevel.Error result
120+
121+
CreateDir outputTests
122+
projects |> Seq.iter (runSingleProject)
123+
)
124+
125+
Target "RunTestsNet" (fun _ ->
126+
let projects = match (isWindows) with
127+
| true -> !! "./src/**/*.Tests.*sproj"
128+
| _ -> !! "./src/**/*.Tests.*sproj" // if you need to filter specs for Linux vs. Windows, do it here
129+
130+
let runSingleProject project =
131+
let arguments =
132+
match (hasTeamCity) with
133+
| true -> (sprintf "test -c Release --no-build --logger:trx --logger:\"console;verbosity=normal\" --framework %s --results-directory \"%s\" -- -parallel none -teamcity" testNetVersion outputTests)
134+
| false -> (sprintf "test -c Release --no-build --logger:trx --logger:\"console;verbosity=normal\" --framework %s --results-directory \"%s\" -- -parallel none" testNetVersion outputTests)
135+
136+
let result = ExecProcess(fun info ->
137+
info.FileName <- "dotnet"
138+
info.WorkingDirectory <- (Directory.GetParent project).FullName
139+
info.Arguments <- arguments) (TimeSpan.FromMinutes 30.0)
140+
141+
ResultHandling.failBuildIfXUnitReportedError TestRunnerErrorLevel.Error result
142+
143+
CreateDir outputTests
114144
projects |> Seq.iter (runSingleProject)
115145
)
116146

@@ -192,10 +222,15 @@ Target "SignPackages" (fun _ ->
192222
let overrideVersionSuffix (project:string) =
193223
match project with
194224
| _ -> versionSuffix // add additional matches to publish different versions for different projects in solution
225+
195226
Target "CreateNuget" (fun _ ->
196227
let projects = !! "src/**/*.csproj"
197228
-- "src/**/*Tests.csproj" // Don't publish unit tests
198229
-- "src/**/*Tests*.csproj"
230+
-- "src/**/*.MultiNode.TestAdapter.csproj" // Do not publish MNTR nuget packages
231+
-- "src/**/*.MultiNode.NodeRunner.csproj"
232+
-- "src/**/*.MultiNode.Shared.csproj"
233+
-- "src/**/*.MultiNode.TestRunner.Shared.csproj"
199234

200235
let runSingleProject project =
201236
DotNetCli.Pack
@@ -210,6 +245,61 @@ Target "CreateNuget" (fun _ ->
210245
projects |> Seq.iter (runSingleProject)
211246
)
212247

248+
Target "PublishMntr" (fun _ ->
249+
let executableProjects = !! "./src/**/Akka.MultiNode.TestAdapter.csproj"
250+
let additionalArgs = if versionSuffix.Length > 0 then [sprintf "/p:VersionSuffix=%s" versionSuffix] else []
251+
252+
executableProjects |> Seq.iter (fun project ->
253+
DotNetCli.Restore
254+
(fun p ->
255+
{ p with
256+
Project = project
257+
AdditionalArgs = additionalArgs })
258+
)
259+
260+
executableProjects |> Seq.iter (fun project ->
261+
DotNetCli.Publish
262+
(fun p ->
263+
{ p with
264+
Project = project
265+
Configuration = configuration
266+
Framework = "netstandard2.0"
267+
VersionSuffix = versionSuffix }))
268+
)
269+
270+
Target "CreateMntrNuget" (fun _ ->
271+
272+
let commonPropsVersionPrefix = XMLRead true "./src/common.props" "" "" "//Project/PropertyGroup/VersionPrefix" |> Seq.head
273+
let versionReplacement = List.ofSeq [ "@version@", commonPropsVersionPrefix + (if (not (versionSuffix = "")) then ("-" + versionSuffix) else "") ]
274+
275+
// uses the template file to create a temporary .nuspec file with the correct version
276+
let generateNuspec (nuspecTemplatePath : string) =
277+
let nuspecPath = nuspecTemplatePath.Replace(".template", "")
278+
CopyFile nuspecPath nuspecTemplatePath
279+
TemplateHelper.processTemplates versionReplacement [ nuspecPath ]
280+
nuspecPath
281+
282+
let nuspecTemplates = [
283+
"./src/Akka.MultiNode.TestAdapter/Akka.MultiNode.TestAdapter.nuspec.template"
284+
]
285+
let nuspecFiles = List.map (generateNuspec) nuspecTemplates
286+
287+
let executableProjects = !! "./src/**/Akka.MultiNode.TestAdapter.csproj"
288+
289+
executableProjects |> Seq.iter (fun project ->
290+
DotNetCli.Pack
291+
(fun p ->
292+
{ p with
293+
Project = project
294+
Configuration = configuration
295+
AdditionalArgs = ["--include-symbols"]
296+
VersionSuffix = versionSuffix
297+
OutputPath = "\"" + outputNuGet + "\"" } )
298+
)
299+
300+
nuspecFiles |> Seq.iter (DeleteFile)
301+
)
302+
213303
Target "PublishNuget" (fun _ ->
214304
let projects = !! "./bin/nuget/*.nupkg"
215305
let apiKey = getBuildParamOrDefault "nugetkey" ""
@@ -287,21 +377,24 @@ Target "All" DoNothing
287377
Target "Nuget" DoNothing
288378

289379
// build dependencies
290-
"Clean" ==> "AssemblyInfo" ==> "Build" ==> "BuildRelease"
380+
"Clean" ==> "AssemblyInfo" ==> "Build"
381+
"Build" ==> "PublishMntr" ==> "BuildRelease"
291382

292383
// tests dependencies
293384
"Build" ==> "RunTests"
385+
"Build" ==> "RunTestsNet"
294386

295387
// nuget dependencies
296-
"Clean" ==> "Build" ==> "CreateNuget"
388+
"BuildRelease" ==> "CreateMntrNuget" ==> "CreateNuget"
297389
"CreateNuget" ==> "SignPackages" ==> "PublishNuget" ==> "Nuget"
298390

299391
// docs
300-
"Clean" ==> "BuildRelease" ==> "Docfx"
392+
"BuildRelease" ==> "Docfx"
301393

302394
// all
303395
"BuildRelease" ==> "All"
304396
"RunTests" ==> "All"
397+
"RunTestsNet" ==> "All"
305398
"NBench" ==> "All"
306399
"Nuget" ==> "All"
307400

0 commit comments

Comments
 (0)