Skip to content

Commit

Permalink
Net8 tests (#7319)
Browse files Browse the repository at this point in the history
* net 8 working on windows

* net core fixes

* fixing job template

* include net8 for helix

* more net8 changes

* Adding needed tfm check back.

* Fixing global json

* missed net upgrade.

* re-adding containers

* fix x86 order

* arm 64 changes

* arm 64 missed files

* continue on error

* win arm

* linux arm64

* missing linux arm64 files

* Removing extra parameter

* test helix upload

* semi colon escape

* escape ampersand

* fixing bash copy

* upload test

* cp test

* arm files

* relax arm constraints

* missed arm file

* Fixes.

* data analysis sequential tests

* build analysis changes

* fix helix.proj

* templating

* reorder proj

* helix changes

* Helix Restore separate

* fixed yml

* Update build/ci/send-to-helix.yml

* Fix execution of CreateHelixWorkItems target

* Schedule CreateHelixWorkItems BeforeTest

* helix proj change

* helix proj change

* Helix Updates

* helix proj change

* .sh test file update

* more helix changes

* Removing commented code

* added ability to run GC after tests

* adding missed files

* netfx fix

---------

Co-authored-by: Eric StJohn <ericstj@microsoft.com>
  • Loading branch information
michaelgsharp and ericstj authored Dec 16, 2024
1 parent 01c4164 commit c04d405
Show file tree
Hide file tree
Showing 206 changed files with 56,872 additions and 23,255 deletions.
34 changes: 17 additions & 17 deletions .vsts-dotnet-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -52,20 +52,20 @@ jobs:
- template: /build/ci/job-template.yml
parameters:
architecture: arm
name: Ubuntu_x64_cross_arm_Net60
name: Ubuntu_x64_cross_arm
buildScript: ./build.sh
container: UbuntuCrossArmContainer
customMatrixes:
Debug_Build:
_configuration: Debug
_config_short: DI
_includeBenchmarkData: false
_targetFramework: net6.0
_targetFramework: net8.0
Release_Build:
_configuration: Release
_config_short: RI
_includeBenchmarkData: true
_targetFramework: net6.0
_targetFramework: net8.0
innerLoop: true
pool:
name: NetCore-Public
Expand All @@ -75,20 +75,20 @@ jobs:
- template: /build/ci/job-template.yml
parameters:
architecture: arm64
name: Ubuntu_x64_cross_arm64_Net60
name: Ubuntu_x64_cross_arm64
buildScript: ./build.sh
container: UbuntuCrossArm64Container
customMatrixes:
Debug_Build:
_configuration: Debug
_config_short: DI
_includeBenchmarkData: false
_targetFramework: net6.0
_targetFramework: net8.0
Release_Build:
_configuration: Release
_config_short: RI
_includeBenchmarkData: true
_targetFramework: net6.0
_targetFramework: net8.0
innerLoop: true
pool:
name: NetCore-Public
Expand All @@ -97,7 +97,7 @@ jobs:

- template: /build/ci/job-template.yml
parameters:
name: Centos_x64_Net60
name: Centos_x64
buildScript: ./build.sh
container: CentosContainer
innerLoop: true
Expand All @@ -108,7 +108,7 @@ jobs:

- template: /build/ci/job-template.yml
parameters:
name: Ubuntu_x64_Net60
name: Ubuntu_x64
buildScript: ./build.sh
container: UbuntuContainer
innerLoop: true
Expand All @@ -119,7 +119,7 @@ jobs:

- template: /build/ci/job-template.yml
parameters:
name: MacOS_x64_Net60
name: MacOS_x64
buildScript: ./build.sh
innerLoop: true
pool:
Expand All @@ -129,19 +129,19 @@ jobs:
- template: /build/ci/job-template.yml
parameters:
architecture: arm64
name: MacOS_cross_arm64_Net6
name: MacOS_cross_arm64
buildScript: ./build.sh
customMatrixes:
Debug_Build:
_configuration: Debug
_config_short: DI
_includeBenchmarkData: false
_targetFramework: net6.0
_targetFramework: net8.0
Release_Build:
_configuration: Release
_config_short: RI
_includeBenchmarkData: true
_targetFramework: net6.0
_targetFramework: net8.0
innerLoop: true
pool:
vmImage: macOS-13
Expand All @@ -150,19 +150,19 @@ jobs:
- template: /build/ci/job-template.yml
parameters:
architecture: arm64
name: Windows_cross_arm64_Net6
name: Windows_cross_arm64
buildScript: build.cmd
customMatrixes:
Debug_Build:
_configuration: Debug
_config_short: DI
_includeBenchmarkData: false
_targetFramework: net6.0
_targetFramework: net8.0
Release_Build:
_configuration: Release
_config_short: RI
_includeBenchmarkData: false
_targetFramework: net6.0
_targetFramework: net8.0
innerLoop: true
vsTestConfiguration: "/Framework:.NETCoreApp,Version=v6.0"
pool:
Expand All @@ -172,7 +172,7 @@ jobs:

- template: /build/ci/job-template.yml
parameters:
name: Windows_x64_Net6
name: Windows_x64
buildScript: build.cmd
innerLoop: true
vsTestConfiguration: "/Framework:.NETCoreApp,Version=v3.1"
Expand Down Expand Up @@ -205,7 +205,7 @@ jobs:

- template: /build/ci/job-template.yml
parameters:
name: Windows_x86_Net6
name: Windows_x86
architecture: x86
buildScript: build.cmd
innerLoop: true
Expand Down
2 changes: 1 addition & 1 deletion build/Codecoverage.proj
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

<PropertyGroup>
<!-- We need to specify a framework in order for the Restore target to work -->
<TargetFramework>net6.0</TargetFramework>
<TargetFramework>net8.0</TargetFramework>
</PropertyGroup>

<ItemGroup>
Expand Down
16 changes: 8 additions & 8 deletions build/ci/job-template.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,12 +51,12 @@ jobs:
_configuration: Debug
_config_short: D
_includeBenchmarkData: false
_targetFramework: net6.0
_targetFramework: net8.0
Release_Build:
_configuration: Release
_config_short: R
_includeBenchmarkData: true
_targetFramework: net6.0
_targetFramework: net8.0
${{ if ne(parameters.customMatrixes, '') }}:
${{ insert }}: ${{ parameters.customMatrixes }}

Expand All @@ -76,7 +76,7 @@ jobs:
- ${{ if and( eq(parameters.nightlyBuild, 'true'), eq(parameters.pool.vmImage, 'ubuntu-18.04')) }}:
- bash: echo "##vso[task.setvariable variable=LD_LIBRARY_PATH]$(nightlyBuildRunPath):$LD_LIBRARY_PATH"
displayName: Set LD_LIBRARY_PATH for Ubuntu and CentOS to locate Native shared library in current running path
- script: ${{ parameters.buildScript }} -configuration $(_configuration) /p:TargetArchitecture=${{ parameters.architecture }} /p:TestArchitectures=${{ parameters.architecture }} /p:Coverage=${{ parameters.codeCoverage }} $(testTargetFramework) /p:CreateHardLinksForCopyFilesToOutputDirectoryIfPossible=True $(hardLink)
- script: ${{ parameters.buildScript }} -configuration $(_configuration) /p:TargetArchitecture=${{ parameters.architecture }} /p:Coverage=${{ parameters.codeCoverage }} $(testTargetFramework) /p:CreateHardLinksForCopyFilesToOutputDirectoryIfPossible=True $(hardLink)
displayName: Build
- ${{ if eq(parameters.pool.vmImage, 'macOS-10.15') }}:
- task: Bash@3
Expand Down Expand Up @@ -116,15 +116,15 @@ jobs:
displayName: Clean up useless project
- script: $(dotnetPath) msbuild -restore $(nightlyBuildProjPath) /p:ReferenceTypeForTestFramework="Nuget" /p:Configuration=$(_configuration) /p:TargetArchitecture=${{ parameters.architecture }} $(testTargetFramework)
displayName: Build Nightly-Build Project with latest package versions
- script: $(dotnetPath) msbuild $(runNightlyBuildProj) /t:RunNightlyBuildTests /p:Configuration=$(_configuration) /p:TargetArchitecture=${{ parameters.architecture }} /p:TestArchitectures=${{ parameters.architecture }} $(testTargetFramework)
- script: $(dotnetPath) msbuild $(runNightlyBuildProj) /t:RunNightlyBuildTests /p:Configuration=$(_configuration) /p:TargetArchitecture=${{ parameters.architecture }} $(testTargetFramework)
displayName: Run Nightly Build Tests
- ${{ if eq(parameters.nightlyBuild, 'false') }}:
- ${{ if eq(parameters.innerLoop, 'false') }}:
- ${{ if and(eq(parameters.runSpecific, 'false'), eq(parameters.useVSTestTask, 'false')) }}:
- script: set PATH=%PATH%;%USERPROFILE%\.nuget\packages\libtorch-cpu-win-x64\2.2.1.1\runtimes\win-x64\native;%USERPROFILE%\.nuget\packages\torchsharp\0.102.7\runtimes\win-x64\native & ${{ parameters.buildScript }} /p:Build=false -configuration $(_configuration) /p:TargetArchitecture=${{ parameters.architecture }} /p:TestArchitectures=${{ parameters.architecture }} -test -integrationTest /p:Coverage=${{ parameters.codeCoverage }} $(testTargetFramework)
- script: set PATH=%PATH%;%USERPROFILE%\.nuget\packages\libtorch-cpu-win-x64\2.2.1.1\runtimes\win-x64\native;%USERPROFILE%\.nuget\packages\torchsharp\0.102.7\runtimes\win-x64\native & ${{ parameters.buildScript }} /p:Build=false -configuration $(_configuration) /p:TargetArchitecture=${{ parameters.architecture }} -test -integrationTest /p:Coverage=${{ parameters.codeCoverage }} $(testTargetFramework)
displayName: Run All Tests.
- ${{ if and(eq(parameters.runSpecific, 'true'), eq(parameters.useVSTestTask, 'false')) }}:
- script: ${{ parameters.buildScript }} /p:Build=false -configuration $(_configuration) /p:TargetArchitecture=${{ parameters.architecture }} /p:TestArchitectures=${{ parameters.architecture }} -test -integrationTest /p:TestRunnerAdditionalArguments='-trait$(spaceValue)Category=RunSpecificTest' /p:Coverage=${{ parameters.codeCoverage }} $(testTargetFramework)
- script: ${{ parameters.buildScript }} /p:Build=false -configuration $(_configuration) /p:TargetArchitecture=${{ parameters.architecture }} -test -integrationTest /p:TestRunnerAdditionalArguments='-trait$(spaceValue)Category=RunSpecificTest' /p:Coverage=${{ parameters.codeCoverage }} $(testTargetFramework)
displayName: Run Specific Tests.
- ${{ if and(eq(parameters.buildScript, 'build.cmd'), eq(parameters.useVSTestTask, 'true')) }}:
- task: VSTest@2
Expand All @@ -149,7 +149,7 @@ jobs:
publishRunAttachments: true
- ${{ if eq(parameters.innerLoop, 'true') }}:
- ${{ if eq(parameters.codeCoverage, True) }}:
- script: ${{ parameters.buildScript }} /p:Build=false -configuration $(_configuration) /p:TargetArchitecture=${{ parameters.architecture }} /p:TestArchitectures=${{ parameters.architecture }} -test -integrationTest /p:TestRunnerAdditionalArguments='-notrait$(spaceValue)Category=SkipInCI' /p:Coverage=${{ parameters.codeCoverage }} $(testTargetFramework)
- script: ${{ parameters.buildScript }} /p:Build=false -configuration $(_configuration) /p:TargetArchitecture=${{ parameters.architecture }} -test -integrationTest /p:TestRunnerAdditionalArguments='-notrait$(spaceValue)Category=SkipInCI' /p:Coverage=${{ parameters.codeCoverage }} $(testTargetFramework)
displayName: Run CI Tests.
- ${{ if eq(parameters.codeCoverage, False) }}:
- template: /build/ci/send-to-helix.yml
Expand Down Expand Up @@ -236,5 +236,5 @@ jobs:
script: Get-ChildItem -Path '.\artifacts\bin' -Recurse | Where-Object {$_.FullName -like "*runtimes*"} | Remove-Item -Recurse -Confirm:$false -Force
displayName: Clean up runtime folder for package (Unix)
- ${{ if eq(parameters.nightlyBuild, 'false') }}:
- script: ${{ parameters.buildScript }} /p:Build=false -pack -ci -configuration $(_configuration) /p:TargetArchitecture=${{ parameters.architecture }} /p:TestArchitectures=${{ parameters.architecture }} $(testTargetFramework)
- script: ${{ parameters.buildScript }} /p:Build=false -pack -ci -configuration $(_configuration) /p:TargetArchitecture=${{ parameters.architecture }} $(testTargetFramework)
displayName: Build Packages
25 changes: 25 additions & 0 deletions build/ci/send-to-helix.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,31 @@ parameters:
condition: succeeded() # optional -- condition for step to execute; defaults to succeeded()

steps:
- script: ${{ parameters.MsBuildScript}}
$(Build.SourcesDirectory)/eng/helix.proj
/t:Restore
/bl:$(Build.SourcesDirectory)/artifacts/log/${{ parameters.Configuration }}/SendToHelix.binlog
/p:Configuration=${{ parameters.Configuration }}
/p:TargetArchitecture=${{ parameters.Architecture }}
/p:BuildConfig=${{ parameters.Configuration }}
/p:BuildArchitecture=${{ parameters.Architecture }}
/p:HelixSource=${{ parameters.HelixSource }}
/p:HelixType=${{ parameters.HelixType }}
/p:HelixBuild=${{ parameters.HelixBuild }}
/p:HelixConfiguration="${{ parameters.HelixConfiguration }}"
/p:HelixAccessToken="${{ parameters.HelixAccessToken }}"
/p:EnableXUnitReporter=${{ parameters.EnableXUnitReporter }}
/p:WaitForWorkItemCompletion=${{ parameters.WaitForWorkItemCompletion }}
/p:HelixBaseUri=${{ parameters.HelixBaseUri }}
${{ parameters.WarnAsError }}
${{ parameters.TestTargetFramework }}
displayName: "Helix Restore"
env:
SYSTEM_ACCESSTOKEN: $(System.AccessToken)
Creator: ${{ parameters.Creator }}
HelixTargetQueues: ${{ parameters.HelixTargetQueues }}
continueOnError: ${{ parameters.continueOnError }}

- script: ${{ parameters.MsBuildScript}}
$(Build.SourcesDirectory)/eng/helix.proj
/t:Test
Expand Down
2 changes: 1 addition & 1 deletion build/codecoverage-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ jobs:
_configuration: Debug
_config_short: D
_includeBenchmarkData: false
_targetFramework: net6.0
_targetFramework: net8.0
codeCoverage: true
pool:
name: NetCore-Public
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net6.0</TargetFramework>
<TargetFramework>net8.0</TargetFramework>
<CopyLocalLockFileAssemblies>false</CopyLocalLockFileAssemblies>
<NoWarn>$(NoWarn)</NoWarn>

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<TargetFramework>net8.0</TargetFramework>
<OutputType>Exe</OutputType>
<SignAssembly>false</SignAssembly>
<!--This ensures that we can never make the mistake of adding this as a friend assembly. Please don't remove.-->
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net7.0</TargetFramework>
<TargetFramework>net8.0</TargetFramework>
<!--This ensures that we can never make the mistake of adding this as a friend assembly. Please don't remove.-->
<PublicSign>false</PublicSign>
</PropertyGroup>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<TargetFramework>net8.0</TargetFramework>
<OutputType>Exe</OutputType>
<SignAssembly>false</SignAssembly>
<!--This ensures that we can never make the mistake of adding this as a friend assembly. Please don't remove.-->
Expand Down
1 change: 1 addition & 0 deletions eng/Versions.props
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,7 @@
<DotNetRuntime80Version>8.0.1</DotNetRuntime80Version>
<FluentAssertionVersion>6.12.0</FluentAssertionVersion>
<MicrosoftCodeAnalysisTestingVersion>1.1.2-beta1.23431.1</MicrosoftCodeAnalysisTestingVersion>
<MicrosoftDotNetBuildTasksTemplatingVersion>9.0.0-beta.24212.4</MicrosoftDotNetBuildTasksTemplatingVersion>
<MicrosoftDotNetPlatformAbstractionsVersion>5.0.0-preview.5.20278.1</MicrosoftDotNetPlatformAbstractionsVersion>
<MicrosoftDotNetRemoteExecutorVersion>8.0.0-beta.24525.2</MicrosoftDotNetRemoteExecutorVersion>
<MicrosoftDotNetXUnitExtensionsVersion>10.0.0-beta.24504.4</MicrosoftDotNetXUnitExtensionsVersion>
Expand Down
Loading

0 comments on commit c04d405

Please sign in to comment.