[Helix] run on arm queues (#11422)
This commit is contained in:
parent
2f2d1e6e3d
commit
6dc65b1673
|
|
@ -10,8 +10,8 @@ pr:
|
||||||
jobs:
|
jobs:
|
||||||
- template: jobs/default-build.yml
|
- template: jobs/default-build.yml
|
||||||
parameters:
|
parameters:
|
||||||
jobName: Helix
|
jobName: Helix_x64
|
||||||
jobDisplayName: 'Tests: Helix'
|
jobDisplayName: 'Tests: Helix x64'
|
||||||
agentOs: Windows
|
agentOs: Windows
|
||||||
timeoutInMinutes: 240
|
timeoutInMinutes: 240
|
||||||
steps:
|
steps:
|
||||||
|
|
@ -25,3 +25,23 @@ jobs:
|
||||||
- name: Helix_logs
|
- name: Helix_logs
|
||||||
path: artifacts/log/
|
path: artifacts/log/
|
||||||
publishOnError: true
|
publishOnError: true
|
||||||
|
|
||||||
|
# Build Helix ARM64
|
||||||
|
- template: jobs/default-build.yml
|
||||||
|
parameters:
|
||||||
|
jobName: Helix_arm64
|
||||||
|
jobDisplayName: "Tests: Helix ARM64"
|
||||||
|
agentOs: Linux
|
||||||
|
timeoutInMinutes: 240
|
||||||
|
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:BuildAllProjects=true /p:BuildNative=true -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
|
||||||
|
installNodeJs: false
|
||||||
|
artifacts:
|
||||||
|
- name: Helix_arm64_logs
|
||||||
|
path: artifacts/logs/
|
||||||
|
publishOnError: true
|
||||||
|
|
|
||||||
|
|
@ -9,16 +9,18 @@ if type -P "node" &>/dev/null; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
node_version=$1
|
node_version=$1
|
||||||
|
arch=$2
|
||||||
osname=`uname -s`
|
osname=`uname -s`
|
||||||
echo $osname
|
|
||||||
if [ "$osname" = "Darwin" ]; then
|
if [ "$osname" = "Darwin" ]; then
|
||||||
platformarch='darwin-x64'
|
platformarch="darwin-$arch"
|
||||||
else
|
else
|
||||||
platformarch='linux-x64'
|
platformarch="linux-$arch"
|
||||||
fi
|
fi
|
||||||
|
echo "PlatformArch: $platformarch"
|
||||||
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||||
output_dir="$DIR/node"
|
output_dir="$DIR/node"
|
||||||
url="http://nodejs.org/dist/v$node_version/node-v$node_version-$platformarch.tar.gz"
|
url="http://nodejs.org/dist/v$node_version/node-v$node_version-$platformarch.tar.gz"
|
||||||
|
echo "Downloading from: $url"
|
||||||
tmp="$(mktemp -d -t install-node.XXXXXX)"
|
tmp="$(mktemp -d -t install-node.XXXXXX)"
|
||||||
trap "rm -rf $tmp" EXIT
|
trap "rm -rf $tmp" EXIT
|
||||||
cd "$tmp"
|
cd "$tmp"
|
||||||
|
|
|
||||||
|
|
@ -7,17 +7,18 @@ set targetFrameworkIdentifier=%2
|
||||||
set sdkVersion=%3
|
set sdkVersion=%3
|
||||||
set runtimeVersion=%4
|
set runtimeVersion=%4
|
||||||
set helixQueue=%5
|
set helixQueue=%5
|
||||||
|
set arch=%6
|
||||||
|
|
||||||
set DOTNET_HOME=%HELIX_CORRELATION_PAYLOAD%\sdk
|
set DOTNET_HOME=%HELIX_CORRELATION_PAYLOAD%\sdk
|
||||||
set DOTNET_ROOT=%DOTNET_HOME%\x64
|
set DOTNET_ROOT=%DOTNET_HOME%\%arch%
|
||||||
set DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
|
set DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
|
||||||
set DOTNET_MULTILEVEL_LOOKUP=0
|
set DOTNET_MULTILEVEL_LOOKUP=0
|
||||||
set DOTNET_CLI_HOME=%HELIX_CORRELATION_PAYLOAD%\home
|
set DOTNET_CLI_HOME=%HELIX_CORRELATION_PAYLOAD%\home
|
||||||
|
|
||||||
set PATH=%DOTNET_ROOT%;%PATH%;%HELIX_CORRELATION_PAYLOAD%\node\bin
|
set PATH=%DOTNET_ROOT%;%PATH%;%HELIX_CORRELATION_PAYLOAD%\node\bin
|
||||||
|
|
||||||
powershell.exe -NoProfile -ExecutionPolicy unrestricted -Command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; &([scriptblock]::Create((Invoke-WebRequest -useb 'https://dot.net/v1/dotnet-install.ps1'))) -Architecture x64 -Version %sdkVersion% -InstallDir %DOTNET_ROOT%"
|
powershell.exe -NoProfile -ExecutionPolicy unrestricted -Command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; &([scriptblock]::Create((Invoke-WebRequest -useb 'https://dot.net/v1/dotnet-install.ps1'))) -Architecture %arch% -Version %sdkVersion% -InstallDir %DOTNET_ROOT%"
|
||||||
powershell.exe -NoProfile -ExecutionPolicy unrestricted -Command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; &([scriptblock]::Create((Invoke-WebRequest -useb 'https://dot.net/v1/dotnet-install.ps1'))) -Architecture x64 -Runtime dotnet -Version %runtimeVersion% -InstallDir %DOTNET_ROOT%"
|
powershell.exe -NoProfile -ExecutionPolicy unrestricted -Command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; &([scriptblock]::Create((Invoke-WebRequest -useb 'https://dot.net/v1/dotnet-install.ps1'))) -Architecture %arch% -Runtime dotnet -Version %runtimeVersion% -InstallDir %DOTNET_ROOT%"
|
||||||
|
|
||||||
set HELIX=%helixQueue%
|
set HELIX=%helixQueue%
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -27,7 +27,7 @@
|
||||||
<PropertyGroup Condition=" '$(ContinuousIntegrationBuild)' == 'true' ">
|
<PropertyGroup Condition=" '$(ContinuousIntegrationBuild)' == 'true' ">
|
||||||
<HelixType>ci</HelixType>
|
<HelixType>ci</HelixType>
|
||||||
<Creator>aspnetcore</Creator>
|
<Creator>aspnetcore</Creator>
|
||||||
<HelixBuild>$(BUILD_BUILDNUMBER).$(SYSTEM_JOBATTEMPT)</HelixBuild>
|
<HelixBuild>$(BUILD_BUILDNUMBER).$(TargetArchitecture).$(SYSTEM_JOBATTEMPT)</HelixBuild>
|
||||||
<WaitForWorkItemCompletion>true</WaitForWorkItemCompletion>
|
<WaitForWorkItemCompletion>true</WaitForWorkItemCompletion>
|
||||||
<EnableAzurePipelinesReporter>true</EnableAzurePipelinesReporter>
|
<EnableAzurePipelinesReporter>true</EnableAzurePipelinesReporter>
|
||||||
<FailOnMissionControlTestFailure>true</FailOnMissionControlTestFailure>
|
<FailOnMissionControlTestFailure>true</FailOnMissionControlTestFailure>
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,10 @@
|
||||||
<HelixAvailablePlatform Include="Windows" />
|
<HelixAvailablePlatform Include="Windows" />
|
||||||
<HelixAvailablePlatform Include="OSX" />
|
<HelixAvailablePlatform Include="OSX" />
|
||||||
<HelixAvailablePlatform Include="Linux" />
|
<HelixAvailablePlatform Include="Linux" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<!-- x64 queues -->
|
||||||
|
<ItemGroup Condition="'$(IsWindowsOnlyTest)' != 'true' AND '$(TargetArchitecture)' == 'x64'">
|
||||||
<HelixAvailableTargetQueue Include="Windows.10.Amd64.ClientRS4.VS2017.Open" Platform="Windows" />
|
<HelixAvailableTargetQueue Include="Windows.10.Amd64.ClientRS4.VS2017.Open" Platform="Windows" />
|
||||||
<HelixAvailableTargetQueue Include="Windows.81.Amd64.Open" Platform="Windows" />
|
<HelixAvailableTargetQueue Include="Windows.81.Amd64.Open" Platform="Windows" />
|
||||||
<HelixAvailableTargetQueue Include="Windows.7.Amd64.Open" Platform="Windows" />
|
<HelixAvailableTargetQueue Include="Windows.7.Amd64.Open" Platform="Windows" />
|
||||||
|
|
@ -23,8 +26,16 @@
|
||||||
<HelixAvailableTargetQueue Include="Debian.9.Amd64.Open" Platform="Linux" />
|
<HelixAvailableTargetQueue Include="Debian.9.Amd64.Open" Platform="Linux" />
|
||||||
<HelixAvailableTargetQueue Include="Redhat.7.Amd64.Open" Platform="Linux" />
|
<HelixAvailableTargetQueue Include="Redhat.7.Amd64.Open" Platform="Linux" />
|
||||||
<HelixAvailableTargetQueue Include="(Fedora.28.Amd64.Open)Ubuntu.1604.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:fedora-28-helix-09ca40b-20190508143249" Platform="Linux" />
|
<HelixAvailableTargetQueue Include="(Fedora.28.Amd64.Open)Ubuntu.1604.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:fedora-28-helix-09ca40b-20190508143249" Platform="Linux" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
<!-- TODO: re-enable Debian.9.Arm64.Open and Ubuntu.1804.Arm64.Open -->
|
<ItemGroup Condition="'$(IsWindowsOnlyTest)' != 'true' AND '$(TargetArchitecture)' == 'arm64'">
|
||||||
|
<!-- arm64 queues -->
|
||||||
|
<HelixAvailableTargetQueue Include="(Debian.9.Arm64.Open)Ubuntu.1604.Arm64.Docker.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:debian-9-helix-arm64v8-0a0ebdd-20190312215438" Platform="Linux" />
|
||||||
|
|
||||||
|
<!-- Need to resolve permission issues on this docker queue
|
||||||
|
<HelixAvailableTargetQueue Include="(Alpine.38.Arm64)Ubuntu.1604.Arm64.Docker@mcr.microsoft.com/dotnet-buildtools/prereqs:alpine-3.8-helix-arm64v8-46e69dd-20190327215724" Platform="Linux" />
|
||||||
|
<HelixAvailableTargetQueue Include="(Ubuntu-1804.Arm64.Open)Ubuntu.1604.Arm64.Docker.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-18.04-helix-arm64v8-6f28fa9-20190606004102" Platform="Linux" />
|
||||||
|
-->
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup Condition="'$(IsWindowsOnlyTest)' == 'true'">
|
<ItemGroup Condition="'$(IsWindowsOnlyTest)' == 'true'">
|
||||||
|
|
|
||||||
|
|
@ -37,7 +37,7 @@
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup Condition="'$(TestDependsOnNode)' == 'true' AND '$(IsWindowsHelixQueue)' == 'false'">
|
<ItemGroup Condition="'$(TestDependsOnNode)' == 'true' AND '$(IsWindowsHelixQueue)' == 'false'">
|
||||||
<HelixPreCommand Include="./installnode.sh $(NodeVersion)" />
|
<HelixPreCommand Include="./installnode.sh $(NodeVersion) $(TargetArchitecture)" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup Condition="'$(TestDependsOnNode)' == 'true' AND '$(IsWindowsHelixQueue)' == 'true'">
|
<ItemGroup Condition="'$(TestDependsOnNode)' == 'true' AND '$(IsWindowsHelixQueue)' == 'true'">
|
||||||
|
|
|
||||||
|
|
@ -49,8 +49,8 @@ Usage: dotnet msbuild /t:Helix src/MyTestProject.csproj
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<BuildHelixPayload Condition="'@(_HelixApplicableTargetQueue->Count())' == '0'">false</BuildHelixPayload>
|
<BuildHelixPayload Condition="'@(_HelixApplicableTargetQueue->Count())' == '0'">false</BuildHelixPayload>
|
||||||
|
<BuildHelixPayload Condition="'$(TargetArchitecture)' == 'arm64' AND '$(SkipHelixArm)' == 'true'">false</BuildHelixPayload>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
</Target>
|
</Target>
|
||||||
|
|
||||||
<Target Name="_PublishHelixArchive" DependsOnTargets="Publish" >
|
<Target Name="_PublishHelixArchive" DependsOnTargets="Publish" >
|
||||||
|
|
@ -78,8 +78,8 @@ Usage: dotnet msbuild /t:Helix src/MyTestProject.csproj
|
||||||
<TestAssembly>$(TargetFileName)</TestAssembly>
|
<TestAssembly>$(TargetFileName)</TestAssembly>
|
||||||
<PreCommands>@(HelixPreCommand)</PreCommands>
|
<PreCommands>@(HelixPreCommand)</PreCommands>
|
||||||
<PostCommands>@(HelixPostCommand)</PostCommands>
|
<PostCommands>@(HelixPostCommand)</PostCommands>
|
||||||
<Command Condition="$(IsWindowsHelixQueue)">call runtests.cmd $(TargetFileName) $(TargetFrameworkIdentifier) $(NETCoreSdkVersion) $(MicrosoftNETCoreAppRuntimeVersion) $(_HelixFriendlyNameTargetQueue)</Command>
|
<Command Condition="$(IsWindowsHelixQueue)">call runtests.cmd $(TargetFileName) $(TargetFrameworkIdentifier) $(NETCoreSdkVersion) $(MicrosoftNETCoreAppRuntimeVersion) $(_HelixFriendlyNameTargetQueue) $(TargetArchitecture)</Command>
|
||||||
<Command Condition="!$(IsWindowsHelixQueue)">./runtests.sh $(TargetFileName) $(NETCoreSdkVersion) $(MicrosoftNETCoreAppRuntimeVersion) $(_HelixFriendlyNameTargetQueue)</Command>
|
<Command Condition="!$(IsWindowsHelixQueue)">./runtests.sh $(TargetFileName) $(NETCoreSdkVersion) $(MicrosoftNETCoreAppRuntimeVersion) $(_HelixFriendlyNameTargetQueue) $(TargetArchitecture)</Command>
|
||||||
<Timeout>$(HelixTimeout)</Timeout>
|
<Timeout>$(HelixTimeout)</Timeout>
|
||||||
</HelixWorkItem>
|
</HelixWorkItem>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,8 @@
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>netcoreapp3.0</TargetFramework>
|
<TargetFramework>netcoreapp3.0</TargetFramework>
|
||||||
|
<!-- Test asset publishing not working on arm64 https://github.com/aspnet/AspNetCore/issues/11205 -->
|
||||||
|
<SkipHelixArm>true</SkipHelixArm>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -2,9 +2,12 @@
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>netcoreapp3.0</TargetFramework>
|
<TargetFramework>netcoreapp3.0</TargetFramework>
|
||||||
</PropertyGroup>
|
<!-- Test asset publishing not working on arm64 https://github.com/aspnet/AspNetCore/issues/11205 -->
|
||||||
|
<SkipHelixArm>true</SkipHelixArm>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
||||||
<Compile Include="..\..\Extensions.Core\src\Base32.cs" Link="Infrastructure\Base32.cs" />
|
<Compile Include="..\..\Extensions.Core\src\Base32.cs" Link="Infrastructure\Base32.cs" />
|
||||||
<Compile Include="..\..\Extensions.Core\src\Rfc6238AuthenticationService.cs" Link="Infrastructure\Rfc6238AuthenticationService.cs" />
|
<Compile Include="..\..\Extensions.Core\src\Rfc6238AuthenticationService.cs" Link="Infrastructure\Rfc6238AuthenticationService.cs" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
@ -46,7 +49,7 @@
|
||||||
File="$(PublishDir)\contentroot.sln"
|
File="$(PublishDir)\contentroot.sln"
|
||||||
Lines="Ignored"
|
Lines="Ignored"
|
||||||
Overwrite="true"
|
Overwrite="true"
|
||||||
Encoding="Unicode"/>
|
Encoding="Unicode" />
|
||||||
</Target>
|
</Target>
|
||||||
|
|
||||||
</Project>
|
</Project>
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,8 @@
|
||||||
<TargetFramework>netcoreapp3.0</TargetFramework>
|
<TargetFramework>netcoreapp3.0</TargetFramework>
|
||||||
<IsSampleProject>false</IsSampleProject>
|
<IsSampleProject>false</IsSampleProject>
|
||||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||||
|
<!-- Test asset publishing not working on arm64 https://github.com/aspnet/AspNetCore/issues/11205 -->
|
||||||
|
<SkipHelixArm>true</SkipHelixArm>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<Import Project="$(MvcTestingTargets)" Condition="'$(MvcTestingTargets)' != ''" />
|
<Import Project="$(MvcTestingTargets)" Condition="'$(MvcTestingTargets)' != ''" />
|
||||||
|
|
@ -52,7 +54,7 @@
|
||||||
DestinationFolder="$(PublishDir)\ClaimsTransformation\wwwroot" />
|
DestinationFolder="$(PublishDir)\ClaimsTransformation\wwwroot" />
|
||||||
<Copy
|
<Copy
|
||||||
SourceFiles="@(_cookiesWwwrootFiles)"
|
SourceFiles="@(_cookiesWwwrootFiles)"
|
||||||
DestinationFolder="$(PublishDir)\Cookies\wwwroot" />
|
DestinationFolder="$(PublishDir)\Cookies\wwwroot" />
|
||||||
<Copy
|
<Copy
|
||||||
SourceFiles="@(_customProviderFiles)"
|
SourceFiles="@(_customProviderFiles)"
|
||||||
DestinationFolder="$(PublishDir)\CustomPolicyProvider\\%(RecursiveDir)" />
|
DestinationFolder="$(PublishDir)\CustomPolicyProvider\\%(RecursiveDir)" />
|
||||||
|
|
@ -68,12 +70,13 @@
|
||||||
<Copy
|
<Copy
|
||||||
SourceFiles="@(_staticFiles)"
|
SourceFiles="@(_staticFiles)"
|
||||||
DestinationFolder="$(PublishDir)\StaticFilesAuth\\%(RecursiveDir)" />
|
DestinationFolder="$(PublishDir)\StaticFilesAuth\\%(RecursiveDir)" />
|
||||||
|
|
||||||
<!-- Drop a dummy sln to specify content root location -->
|
<!-- Drop a dummy sln to specify content root location -->
|
||||||
<WriteLinesToFile
|
<WriteLinesToFile
|
||||||
File="$(PublishDir)\contentroot.sln"
|
File="$(PublishDir)\contentroot.sln"
|
||||||
Lines="Ignored"
|
Lines="Ignored"
|
||||||
Overwrite="true"
|
Overwrite="true"
|
||||||
Encoding="Unicode"/>
|
Encoding="Unicode" />
|
||||||
</Target>
|
</Target>
|
||||||
|
|
||||||
</Project>
|
</Project>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue