Skip to content

Commit fa239f2

Browse files
pakrymJohn Luo
authored andcommitted
EnableAzurePipelinesReporter for helix (#8094)
* EnableAzurePipelinesReporter for helix * Update Helix SDK * Revert a fix that broke things even more * Try publishing test assets * Try fixing Kestrel tests on Helix * Try a temp file in the working directory * Skip Http2Spec tests on Debian 8 * Missed update * Try a different format * Disable failing test on Fedora * Mark flaky test
1 parent aaaaf57 commit fa239f2

File tree

17 files changed

+66
-19
lines changed

17 files changed

+66
-19
lines changed

.azure/pipelines/helix-test.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@ jobs:
1717
steps:
1818
- script: .\build.cmd -all -ci /t:Helix /p:IsHelixJob=true /bl:$env:BUILD_SOURCESDIRECTORY\artifacts\logs\SendToHelix.binlog
1919
displayName: Run build.cmd helix target
20+
env:
21+
SYSTEM_ACCESSTOKEN: $(System.AccessToken) # We need to set this env var to publish helix results to Azure Dev Ops
2022
artifacts:
2123
- name: Helix_logs
2224
path: artifacts/logs/

build/repo.targets

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -151,7 +151,7 @@
151151
Properties="$(BuildProperties);__DummyTarget=GenerateBuildAssetManifest" />
152152
</Target>
153153

154-
<Target Name="Helix" DependsOnTargets="Restore">
154+
<Target Name="Helix">
155155
<MSBuild Projects="$(MSBuildThisFileDirectory)..\eng\helix\helix.proj"
156156
Targets="Test"
157157
Properties="$(BuildProperties);$(SolutionProperties);"

eng/Version.Details.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -388,9 +388,9 @@
388388
<Uri>https://github.com/dotnet/arcade</Uri>
389389
<Sha>ed63a7faf2d119829dd971be91bb46b6ebaa1dd2</Sha>
390390
</Dependency>
391-
<Dependency Name="Microsoft.DotNet.Helix.Sdk" Version="2.0.0-beta.19252.2">
391+
<Dependency Name="Microsoft.DotNet.Helix.Sdk" Version="2.0.0-beta.19253.2">
392392
<Uri>https://github.com/dotnet/arcade</Uri>
393-
<Sha>ed63a7faf2d119829dd971be91bb46b6ebaa1dd2</Sha>
393+
<Sha>e31dd0f6fd12a136a2310a308d235c360703b221</Sha>
394394
</Dependency>
395395
<Dependency Name="Microsoft.AspNetCore.Testing" Version="3.0.0-preview6.19252.7" CoherentParentDependency="Microsoft.EntityFrameworkCore">
396396
<Uri>https://github.com/aspnet/Extensions</Uri>

eng/helix/helix.proj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
<HelixBuild Condition=" '$(CI)' == 'true' ">$(BUILD_BUILDNUMBER)</HelixBuild>
1616
<WaitForWorkItemCompletion Condition=" '$(CI)' == 'true' ">false</WaitForWorkItemCompletion>
1717
<FailOnMissionControlTestFailure>false</FailOnMissionControlTestFailure>
18-
<EnableAzurePipelinesReporter>false</EnableAzurePipelinesReporter>
18+
<EnableAzurePipelinesReporter>true</EnableAzurePipelinesReporter>
1919
<IsExternal>true</IsExternal>
2020
<Creator>aspnetcore</Creator>
2121
<SkipInvalidConfigurations>true</SkipInvalidConfigurations>

eng/helix/vstest/runtests.cmd

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ REM only puts the explicit filter traits the user provided in
3636
REM Filter syntax: https://github.com/Microsoft/vstest-docs/blob/master/docs/filter.md
3737
set NONFLAKY_FILTER="Flaky:All!=true&Flaky:Helix:All!=true&Flaky:Helix:Queue:All!=true&Flaky:Helix:Queue:%HELIX%!=true"
3838
echo Running non-flaky tests.
39-
%DOTNET_ROOT%\dotnet vstest %target% --logger:trx --logger:console;verbosity=normal --TestCaseFilter:%NONFLAKY_FILTER%
39+
%DOTNET_ROOT%\dotnet vstest %target% --logger:trx --TestCaseFilter:%NONFLAKY_FILTER%
4040
if errorlevel 1 (
4141
echo Failure in non-flaky test 1>&2
4242
set exit_code=1
@@ -45,7 +45,7 @@ if errorlevel 1 (
4545

4646
set FLAKY_FILTER="Flaky:All=true|Flaky:Helix:All=true|Flaky:Helix:Queue:All=true|Flaky:Helix:Queue:%HELIX%=true"
4747
echo Running known-flaky tests.
48-
%DOTNET_ROOT%\dotnet vstest %target% --logger:trx --logger:console;verbosity=normal --TestCaseFilter:%FLAKY_FILTER%
48+
%DOTNET_ROOT%\dotnet vstest %target% --logger:trx --TestCaseFilter:%FLAKY_FILTER%
4949
if errorlevel 1 (
5050
echo Failure in flaky test 1>&2
5151
REM DO NOT EXIT and DO NOT SET EXIT_CODE to 1

eng/helix/vstest/runtests.sh

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,6 @@ if [ $nonflaky_exitcode != 0 ]; then
7979
echo "Non-flaky tests failed!" 1>&2
8080
# DO NOT EXIT
8181
fi
82-
8382
FLAKY_FILTER="Flaky:All=true|Flaky:Helix:All=true|Flaky:Helix:Queue:All=true|Flaky:Helix:Queue:$HELIX=true"
8483
echo "Running known-flaky tests."
8584
$DOTNET_ROOT/dotnet vstest $1 --logger:trx --TestCaseFilter:"$FLAKY_FILTER"

eng/targets/Helix.targets

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@
5252

5353
<Target Name="_CreateHelixWorkItem" Condition="$(BuildHelixPayload)">
5454

55-
<MSBuild Projects="$(MSBuildProjectFullPath)" Targets="_PublishHelixArchive" RemoveProperties="HelixTargetQueue" />
55+
<MSBuild Projects="$(MSBuildProjectFullPath)" Targets="_PublishHelixArchive" RemoveProperties="HelixTargetQueue;TestRunId" />
5656

5757
<ConvertToAbsolutePath Paths="$(PublishDir)">
5858
<Output TaskParameter="AbsolutePaths" PropertyName="PublishAbsoluteDir" />

global.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,6 @@
44
},
55
"msbuild-sdks": {
66
"Yarn.MSBuild": "1.13.0",
7-
"Microsoft.DotNet.Helix.Sdk": "2.0.0-beta.19252.2"
7+
"Microsoft.DotNet.Helix.Sdk": "2.0.0-beta.19253.2"
88
}
99
}

src/Servers/Kestrel/Directory.Build.props

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
</PropertyGroup>
77

88
<PropertyGroup>
9+
<KestrelRoot>$(MSBuildThisFileDirectory)</KestrelRoot>
910
<KestrelSharedSourceRoot>$(MSBuildThisFileDirectory)shared\</KestrelSharedSourceRoot>
1011
</PropertyGroup>
1112

src/Servers/Kestrel/Kestrel/test/GeneratedCodeTests.cs

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,12 +17,10 @@ public class GeneratedCodeTests
1717
[Flaky("https://github.com/aspnet/AspNetCore-Internal/issues/2223", FlakyOn.Helix.All)]
1818
public void GeneratedCodeIsUpToDate()
1919
{
20-
var repositoryRoot = typeof(GeneratedCodeTests).Assembly.GetCustomAttributes<AssemblyMetadataAttribute>().First(f => string.Equals(f.Key, "RepositoryRoot", StringComparison.OrdinalIgnoreCase)).Value;
21-
22-
var httpHeadersGeneratedPath = Path.Combine(repositoryRoot, "src/Servers/Kestrel/Core/src/Internal/Http/HttpHeaders.Generated.cs");
23-
var httpProtocolGeneratedPath = Path.Combine(repositoryRoot, "src/Servers/Kestrel/Core/src/Internal/Http/HttpProtocol.Generated.cs");
24-
var httpUtilitiesGeneratedPath = Path.Combine(repositoryRoot, "src/Servers/Kestrel/Core/src/Internal/Infrastructure/HttpUtilities.Generated.cs");
25-
var transportConnectionGeneratedPath = Path.Combine(repositoryRoot, "src/Servers/Kestrel/Transport.Abstractions/src/Internal/TransportConnection.Generated.cs");
20+
var httpHeadersGeneratedPath = Path.Combine(AppContext.BaseDirectory,"shared", "GeneratedContent", "HttpHeaders.Generated.cs");
21+
var httpProtocolGeneratedPath = Path.Combine(AppContext.BaseDirectory,"shared", "GeneratedContent", "HttpProtocol.Generated.cs");
22+
var httpUtilitiesGeneratedPath = Path.Combine(AppContext.BaseDirectory,"shared", "GeneratedContent", "HttpUtilities.Generated.cs");
23+
var transportConnectionGeneratedPath = Path.Combine(AppContext.BaseDirectory,"shared", "GeneratedContent", "TransportConnection.Generated.cs");
2624

2725
var testHttpHeadersGeneratedPath = Path.GetTempFileName();
2826
var testHttpProtocolGeneratedPath = Path.GetTempFileName();

src/Servers/Kestrel/Kestrel/test/Microsoft.AspNetCore.Server.Kestrel.Tests.csproj

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<Project Sdk="Microsoft.NET.Sdk">
1+
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
44
<TargetFramework>netcoreapp3.0</TargetFramework>
@@ -9,6 +9,10 @@
99
<Compile Include="$(KestrelSharedSourceRoot)test\*.cs" LinkBase="shared" />
1010
<Compile Include="$(SharedSourceRoot)test\SkipOnHelixAttribute.cs" />
1111
<Content Include="$(KestrelSharedSourceRoot)test\TestCertificates\*.pfx" LinkBase="shared\TestCertificates" CopyToOutputDirectory="PreserveNewest" />
12+
<Content Include="$(KestrelRoot)Core\src\Internal\Http\HttpHeaders.Generated.cs" LinkBase="shared\GeneratedContent" CopyToOutputDirectory="PreserveNewest" />
13+
<Content Include="$(KestrelRoot)Core\src\Internal\Http\HttpProtocol.Generated.cs" LinkBase="shared\GeneratedContent" CopyToOutputDirectory="PreserveNewest" />
14+
<Content Include="$(KestrelRoot)Core\src\Internal\Infrastructure\HttpUtilities.Generated.cs" LinkBase="shared\GeneratedContent" CopyToOutputDirectory="PreserveNewest" />
15+
<Content Include="$(KestrelRoot)Transport.Abstractions\src\Internal\TransportConnection.Generated.cs" LinkBase="shared\GeneratedContent" CopyToOutputDirectory="PreserveNewest" />
1216

1317
<AssemblyAttribute Include="System.Reflection.AssemblyMetadataAttribute">
1418
<_Parameter1>RepositoryRoot</_Parameter1>

src/Servers/Kestrel/test/FunctionalTests/Http2/HandshakeTests.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
namespace Microsoft.AspNetCore.Server.Kestrel.FunctionalTests.Http2
2121
{
2222
[OSSkipCondition(OperatingSystems.MacOSX, SkipReason = "Missing SslStream ALPN support: https://github.com/dotnet/corefx/issues/30492")]
23+
[SkipOnHelix(Queues = "Debian.8.Amd64.Open")] // Debian 8 uses OpenSSL 1.0.1 which does not support HTTP/2
2324
[MinimumOSVersion(OperatingSystems.Windows, WindowsVersions.Win10)]
2425
public class HandshakeTests : LoggedTest
2526
{

src/Servers/Kestrel/test/FunctionalTests/Http2/ShutdownTests.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ namespace Microsoft.AspNetCore.Server.Kestrel.FunctionalTests.Http2
2323
{
2424
[OSSkipCondition(OperatingSystems.MacOSX, SkipReason = "Missing SslStream ALPN support: https://github.com/dotnet/corefx/issues/30492")]
2525
[MinimumOSVersion(OperatingSystems.Windows, WindowsVersions.Win10)]
26+
[SkipOnHelix(Queues = "Debian.8.Amd64.Open")] // Debian 8 uses OpenSSL 1.0.1 which does not support HTTP/2
2627
public class ShutdownTests : TestApplicationErrorLoggerLoggedTest
2728
{
2829
private static X509Certificate2 _x509Certificate2 = TestResources.GetTestCertificate();
@@ -42,6 +43,8 @@ public ShutdownTests()
4243
}
4344

4445
[ConditionalFact]
46+
[SkipOnHelix(Queues = "Fedora.28.Amd64.Open")] // https://github.com/aspnet/AspNetCore/issues/9985
47+
[Flaky("https://github.com/aspnet/AspNetCore/issues/9985", FlakyOn.Helix.All)]
4548
public async Task GracefulShutdownWaitsForRequestsToFinish()
4649
{
4750
var requestStarted = new TaskCompletionSource<object>(TaskCreationOptions.RunContinuationsAsynchronously);

src/Servers/Kestrel/test/Interop.FunctionalTests/H2SpecCommands.cs

Lines changed: 33 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,33 @@ namespace Interop.FunctionalTests
1616
{
1717
public static class H2SpecCommands
1818
{
19+
#region chmod
20+
// user permissions
21+
const int S_IRUSR = 0x100;
22+
const int S_IWUSR = 0x80;
23+
const int S_IXUSR = 0x40;
24+
25+
// group permission
26+
const int S_IRGRP = 0x20;
27+
const int S_IWGRP = 0x10;
28+
const int S_IXGRP = 0x8;
29+
30+
// other permissions
31+
const int S_IROTH = 0x4;
32+
const int S_IWOTH = 0x2;
33+
const int S_IXOTH = 0x1;
34+
35+
const int _0755 =
36+
S_IRUSR | S_IXUSR | S_IWUSR
37+
| S_IRGRP | S_IXGRP
38+
| S_IROTH | S_IXOTH;
39+
40+
[DllImport("libc", SetLastError = true)]
41+
private static extern int chmod(string pathname, int mode);
42+
43+
private static int chmod755(string pathname) => chmod(pathname, _0755);
44+
#endregion
45+
1946
private const int TimeoutSeconds = 15;
2047

2148
private static string GetToolLocation()
@@ -27,11 +54,15 @@ private static string GetToolLocation()
2754
}
2855
else if (RuntimeInformation.IsOSPlatform(OSPlatform.Linux))
2956
{
30-
return Path.Combine(root, "linux", "h2spec");
57+
var toolPath = Path.Combine(root, "linux", "h2spec");
58+
chmod755(toolPath);
59+
return toolPath;
3160
}
3261
else if (RuntimeInformation.IsOSPlatform(OSPlatform.OSX))
3362
{
34-
return Path.Combine(root, "darwin", "h2spec");
63+
var toolPath = Path.Combine(root, "darwin", "h2spec");
64+
chmod755(toolPath);
65+
return toolPath;
3566
}
3667
throw new NotImplementedException("Invalid OS");
3768
}

src/Servers/Kestrel/test/Interop.FunctionalTests/H2SpecTests.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ namespace Interop.FunctionalTests
2121
[OSSkipCondition(OperatingSystems.MacOSX, SkipReason = "Missing SslStream ALPN support: https://github.com/dotnet/corefx/issues/30492")]
2222
[MinimumOSVersion(OperatingSystems.Windows, WindowsVersions.Win81,
2323
SkipReason = "Missing Windows ALPN support: https://en.wikipedia.org/wiki/Application-Layer_Protocol_Negotiation#Support")]
24+
[SkipOnHelix(Queues = "Debian.8.Amd64.Open")] // Debian 8 uses OpenSSL 1.0.1 which does not support HTTP/2
2425
public class H2SpecTests : LoggedTest
2526
{
2627
[ConditionalTheory]

src/Servers/Kestrel/test/Sockets.FunctionalTests/Sockets.FunctionalTests.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
<ItemGroup>
1111
<Compile Include="..\FunctionalTests\**\*.cs" />
1212
<Compile Include="$(SharedSourceRoot)NullScope.cs" />
13+
<Compile Include="$(SharedSourceRoot)test\SkipOnHelixAttribute.cs" />
1314
<Compile Include="$(KestrelSharedSourceRoot)test\*.cs" LinkBase="shared" />
1415
<Compile Include="$(KestrelSharedSourceRoot)test\TransportTestHelpers\*.cs" LinkBase="shared\TransportTestHelpers" />
1516
<Content Include="$(KestrelSharedSourceRoot)test\TestCertificates\*.pfx" LinkBase="shared\TestCertificates" CopyToOutputDirectory="PreserveNewest" />

src/Tools/dotnet-watch/test/dotnet-watch.Tests.csproj

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,10 +32,16 @@
3232
<RemoveDir Directories="$(TargetDir)TestProjects" Condition="Exists('$(TargetDir)TestProjects')" />
3333
</Target>
3434

35-
<Target Name="PublishDotNetWatch" BeforeTargets="Build">
35+
<Target Name="PublishDotNetWatchOnBuild" BeforeTargets="Build">
3636
<MSBuild Projects="..\src\dotnet-watch.csproj"
3737
Targets="Publish"
3838
Properties="PublishDir=$(OutputPath)\tool\;Configuration=$(Configuration)" />
3939
</Target>
4040

41+
<Target Name="PublishDotNetWatchOnPublish" BeforeTargets="Publish">
42+
<MSBuild Projects="..\src\dotnet-watch.csproj"
43+
Targets="Publish"
44+
Properties="PublishDir=$(PublishDir)\tool\;Configuration=$(Configuration)" />
45+
</Target>
46+
4147
</Project>

0 commit comments

Comments
 (0)