akkadotnet / akka.net

Canonical actor model implementation for .NET with local + distributed actors in C# and F#.
http://getakka.net
Other
4.72k stars 1.04k forks source link

[Incremental builds] failed to run anything in MNTR suite other than Akka.Cluster.Sharding #3017

Closed Aaronontheweb closed 5 years ago

Aaronontheweb commented 7 years ago

https://github.com/akkadotnet/akka.net/pull/3011 - this PR only ran the Cluster.Sharding MNTR suite. Address class in Akka core was modified. Should have triggered full test suite to run.

heynickc commented 7 years ago

@Aaronontheweb the logging in the Build Log in CI is deceiving here. What's actually happening is that Akka.Cluster.Sharding is being run first, fails, and then fails the build. Right now, MNTR returns exit code > 0 when a test failure happens and CI is set to fail the build when the exit code > 0. The detection of MNTR .dlls to run is correct, verified locally:

Searching for incremental tests to run in MNTR test mode...
Adding upstream remote...
C:\Program Files\Git\cmd\git.exe remote add upstream https://github.com/akkadotnet/akka.net
upstream remote already exists
Fetching upstream remote to compare HEAD file changes with...
C:\Program Files\Git\cmd\git.exe diff upstream/dev --name-status
The following files have been updated since forking from dev branch...
        C:\Users\nickc\Documents\Projects\akka.net\src\core\Akka.API.Tests\CoreAPISpec.ApproveCluster.approved.txt
        C:\Users\nickc\Documents\Projects\akka.net\src\core\Akka.API.Tests\CoreAPISpec.ApproveCore.approved.txt
        C:\Users\nickc\Documents\Projects\akka.net\src\core\Akka.Cluster.Tests\MemberOrderingSpec.cs
        C:\Users\nickc\Documents\Projects\akka.net\src\core\Akka.Cluster\Member.cs
        C:\Users\nickc\Documents\Projects\akka.net\src\core\Akka\Actor\Address.cs
The following test projects will be run...
val it : seq<string> =
  seq
    ["C:\Users\nickc\Documents\Projects\akka.net\src\contrib\cluster\Akka.Cluster.Sharding.Tests.MultiNode\bin\Release\n
et452\Akka.Cluster.Sharding.Tests.MultiNode.dll";
     "C:\Users\nickc\Documents\Projects\akka.net\src\contrib\cluster\Akka.Cluster.Tools.Tests.MultiNode\bin\Release\net4
52\Akka.Cluster.Tools.Tests.MultiNode.dll";
     "C:\Users\nickc\Documents\Projects\akka.net\src\contrib\cluster\Akka.DistributedData.Tests.MultiNode\bin\Release\ne
t452\Akka.DistributedData.Tests.MultiNode.dll";
     "C:\Users\nickc\Documents\Projects\akka.net\src\core\Akka.Cluster.Tests.MultiNode\bin\Release\net452\Akka.Cluster.T
ests.MultiNode.dll";
     ...]

The real issue is that the function getIncrementalMNTRTests() doesn't actually log all the projects to be run in this log statement The following test projects will be run... because of the laziness of that log statement. The incremental tests, however are working as intended.

Aaronontheweb commented 5 years ago

Resolved.