xamarin-macios/msbuild/Xamarin.MacDev.Tasks.Core/Extensions
Emanuel Fernandez Dell'Oca ee47db89de
[msbuild] Fixes remote tasks execution (#11793)
* [msbuild] Fixes remote tasks execution

When building from Windows we stopped including the `SessionId` value when executing tasks remotely, because we started using that value to decide whether we should execute a task locally or remotely. The problem is the SessionId is also used from some of the base tasks (like ACToolTaskBase) to execute different code paths depending if the build is being executed from Windows or macOS (regardless where the task is currently being executed). Most of those code paths are related to calculating relative paths, and we started getting reports of weird behaviors like missing icons when deploying apps or even Apple Store submission errors.

To fix this problem we're back propagating the SessionId value when executing tasks remotely, and to decide if a task should be executed remotely or not we also check the Environment.OSVersion.Platform value (because SessionId will have a value on macOS too when executing the task remotely), so we only try to execute tasks remotely if the task is being executed from Windows and SessionId is not empty.

* Bumps Xamarin.Messaging

This version stops filtering the SessionId value when executing tasks remotely

* [msbuild] Adds ShouldExecuteRemotely extension method
2021-06-03 21:23:01 -04:00
..
TaskExtensions.cs [msbuild] Fixes remote tasks execution (#11793) 2021-06-03 21:23:01 -04:00