diff --git a/src/Microsoft.DotNet.Helix/Sdk.Tests/Microsoft.DotNet.Helix.Sdk.Tests/HelpersTests.cs b/src/Microsoft.DotNet.Helix/Sdk.Tests/Microsoft.DotNet.Helix.Sdk.Tests/HelpersTests.cs index 86c53ddee40..af88f34435f 100644 --- a/src/Microsoft.DotNet.Helix/Sdk.Tests/Microsoft.DotNet.Helix.Sdk.Tests/HelpersTests.cs +++ b/src/Microsoft.DotNet.Helix/Sdk.Tests/Microsoft.DotNet.Helix.Sdk.Tests/HelpersTests.cs @@ -43,6 +43,14 @@ public void VerifyNonEncodedFowardSlashIsConverted() public void FailOnceThenPass() { var target = Path.Combine(Path.GetTempPath(), "my-test-file-123456.snt"); + + // If we're inside a Helix Docker work item, GetTempPath() is cleaned every execution, + // but the work item's own directory is not (and is writeable from inside Docker), so use it. + if (!string.IsNullOrEmpty(Environment.GetEnvironmentVariable("HELIX_DOCKER_ENTRYPOINT"))) + { + target = Path.Combine(Environment.GetEnvironmentVariable("HELIX_WORKITEM_PAYLOAD"), "my-test-file-123456.snt"); + } + bool exists = File.Exists(target); if (!exists) { diff --git a/tests/UnitTests.proj b/tests/UnitTests.proj index e1f2e16a924..b200bcfd4a6 100644 --- a/tests/UnitTests.proj +++ b/tests/UnitTests.proj @@ -61,6 +61,7 @@ + @@ -73,6 +74,7 @@ +