Просмотр исходного кода

[Helix] Better logging (flaky tests, logged tests) (#18274)

Hao Kung 6 лет назад
Родитель
Сommit
f1dba10a34
4 измененных файлов с 9 добавлено и 6 удалено
  1. 3 3
      .azure/pipelines/ci.yml
  2. 4 0
      eng/helix/content/runtests.sh
  3. 1 2
      eng/helix/helix.proj
  4. 1 1
      eng/targets/Helix.props

+ 3 - 3
.azure/pipelines/ci.yml

@@ -579,7 +579,7 @@ stages:
       steps:
       - script: .\restore.cmd -ci
         displayName: Restore
-      - script: .\build.cmd -ci -NoRestore -test -projects eng\helix\helix.proj /p:IsRequiredCheck=true /p:IsHelixJob=true /p:BuildAllProjects=true /p:BuildNative=false -bl
+      - script: .\build.cmd -ci -NoRestore -test -projects eng\helix\helix.proj /p:IsRequiredCheck=true /p:IsHelixJob=true /p:BuildAllProjects=true /p:BuildNative=false /p:ASPNETCORE_TEST_LOG_DIR=artifacts/log -bl
         displayName: Run build.cmd helix target
         env:
           SYSTEM_ACCESSTOKEN: $(System.AccessToken) # We need to set this env var to publish helix results to Azure Dev Ops
@@ -599,7 +599,7 @@ stages:
       steps:
       - script: .\restore.cmd -ci
         displayName: Restore
-      - script: .\build.cmd -ci -NoRestore -test -projects eng\helix\helix.proj /p:IsHelixJob=true /p:IsHelixDaily=true /p:BuildAllProjects=true /p:BuildNative=true -bl
+      - script: .\build.cmd -ci -NoRestore -test -projects eng\helix\helix.proj /p:IsHelixJob=true /p:IsHelixDaily=true /p:BuildAllProjects=true /p:BuildNative=true /p:ASPNETCORE_TEST_LOG_DIR=artifacts/log -bl
         displayName: Run build.cmd helix target
         env:
           SYSTEM_ACCESSTOKEN: $(System.AccessToken) # We need to set this env var to publish helix results to Azure Dev Ops
@@ -620,7 +620,7 @@ stages:
       steps:
       - script: ./restore.sh -ci
         displayName: Restore
-      - script: ./build.sh -ci --arch arm64 -test --no-build-nodejs -projects $(Build.SourcesDirectory)/eng/helix/helix.proj /p:IsHelixJob=true /p:IsHelixDaily=true /p:BuildAllProjects=true /p:BuildNative=true -bl
+      - script: ./build.sh -ci --arch arm64 -test --no-build-nodejs -projects $(Build.SourcesDirectory)/eng/helix/helix.proj /p:IsHelixJob=true /p:IsHelixDaily=true /p:BuildAllProjects=true /p:BuildNative=true /p:ASPNETCORE_TEST_LOG_DIR=artifacts/log -bl
         displayName: Run build.sh helix arm64 target
         env:
           SYSTEM_ACCESSTOKEN: $(System.AccessToken) # We need to set this env var to publish helix results to Azure Dev Ops

+ 4 - 0
eng/helix/content/runtests.sh

@@ -109,4 +109,8 @@ if [ $? != 0 ]; then
     # DO NOT EXIT
 fi
 
+echo "Copying artifacts/logs to $HELIX_WORKITEM_UPLOAD_ROOT/../"
+shopt -s globstar
+cp artifacts/log/**/*.log $HELIX_WORKITEM_UPLOAD_ROOT/../
+cp artifacts/log/**/*.log $HELIX_WORKITEM_UPLOAD_ROOT/
 exit $nonflaky_exitcode

+ 1 - 2
eng/helix/helix.proj

@@ -16,7 +16,6 @@
   </ItemGroup>
 
   <PropertyGroup>
-    <HelixSource>pr/dotnet/aspnetcore</HelixSource>
     <HelixBuild>private-$(USERNAME)</HelixBuild>
     <HelixBuild Condition=" '$(USERNAME)' == '' ">private-$(USER)</HelixBuild>
     <IsExternal>true</IsExternal>
@@ -30,7 +29,7 @@
     <HelixBuild>$(BUILD_BUILDNUMBER).$(TargetArchitecture).$(SYSTEM_JOBATTEMPT)</HelixBuild>
     <WaitForWorkItemCompletion>true</WaitForWorkItemCompletion>
     <EnableAzurePipelinesReporter>true</EnableAzurePipelinesReporter>
-    <FailOnMissionControlTestFailure>true</FailOnMissionControlTestFailure>
+    <EnableXUnitReporter>true</EnableXUnitReporter>
   </PropertyGroup>
 
   <PropertyGroup Condition=" '$(ContinuousIntegrationBuild)' != 'true' ">

+ 1 - 1
eng/targets/Helix.props

@@ -16,7 +16,7 @@
     <IsWindowsHelixQueue Condition="$(HelixTargetQueue.Contains('Windows')) or $(HelixTargetQueue.Contains('windows'))">true</IsWindowsHelixQueue>
     <HelixTestName>$(MSBuildProjectName)-$(TargetFramework)</HelixTestName>
     <HelixUseArchive>false</HelixUseArchive>
-    <LoggingTestingDisableFileLogging Condition="'$(IsHelixJob)' == 'true'">true</LoggingTestingDisableFileLogging>
+    <LoggingTestingDisableFileLogging Condition="'$(IsHelixJob)' == 'true'">false</LoggingTestingDisableFileLogging>
     <NodeVersion>10.15.3</NodeVersion>
   </PropertyGroup>