diff --git a/Directory.Build.targets b/Directory.Build.targets index 78c1795e2e..f4c001068d 100644 --- a/Directory.Build.targets +++ b/Directory.Build.targets @@ -98,90 +98,4 @@ - - - - <_TargetFrameworks Remove="@(_TargetFrameworks)" /> - <_TargetFrameworks Include="$(TargetFrameworks);$(TargetFramework)" /> - - - - - - - - - - - - - - - - - - <_TargetFrameworks Remove="@(_TargetFrameworks)" /> - <_TargetFrameworks Include="$(TargetFrameworks);$(TargetFramework)" /> - - - - - - - - - - $([System.IO.Path]::GetDirectoryName($(XunitConsole472Path))) - - - - - - - - - - - - - - - - - - <_CopyItems Include="$(MSBuildThisFileDirectory)eng\helix\vstest\runtests.cmd" /> - - - - - <_CopyItems Include="$(MSBuildThisFileDirectory)eng\helix\xunit\runtests.cmd" /> - - - - - <_CopyItems Include="$(MSBuildThisFileDirectory)eng\helix\vstest\runtests.sh" /> - - - - - - - $(TargetFileName) - $(MSBuildProjectName)-$(TargetFramework) - runtests.cmd $(TargetFileName) $(NETCoreSdkVersion) $(MicrosoftNETCoreAppPackageVersion) - ./runtests.sh $(TargetFileName) $(NETCoreSdkVersion) $(MicrosoftNETCoreAppPackageVersion) - 00:30:00 - - - diff --git a/build/repo.targets b/build/repo.targets index fdbfd75ded..0d5f9b60f2 100644 --- a/build/repo.targets +++ b/build/repo.targets @@ -151,30 +151,9 @@ Properties="$(BuildProperties);__DummyTarget=GenerateBuildAssetManifest" /> - - - - - - - - - - - - - - - - - @(HelixTestProject) - + + ContinueOnError="ErrorAndStop" /> diff --git a/eng/helix/helix.proj b/eng/helix/helix.proj index 9f898f10e9..dd667368a8 100644 --- a/eng/helix/helix.proj +++ b/eng/helix/helix.proj @@ -1,25 +1,14 @@ - + - - - - - - - - - - %(HelixPayload.Command) - %(HelixPayload.Identity) - %(HelixPayload.TestTimeout) - - - + + + + + + pr/aspnet/aspnetcore @@ -32,20 +21,15 @@ false true aspnetcore - - - Windows.10.Amd64.ClientRS4.VS2017.Open; - OSX.1012.Amd64.Open; - Ubuntu.1810.Amd64.Open; - Ubuntu.1604.Amd64.Open; - Centos.7.Amd64.Open; - Debian.8.Amd64.Open; - Debian.9.Amd64.Open; - Redhat.7.Amd64.Open; - Fedora.27.Amd64.Open; - Fedora.28.Amd64.Open; - - - - + + + + + + + + diff --git a/eng/helix/vstest/runtests.cmd b/eng/helix/vstest/runtests.cmd index b8d87d1051..ef251d8978 100644 --- a/eng/helix/vstest/runtests.cmd +++ b/eng/helix/vstest/runtests.cmd @@ -1,14 +1,14 @@ set target=%1 set sdkVersion=%2 set runtimeVersion=%3 -powershell.exe -NoProfile -ExecutionPolicy unrestricted -Command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; &([scriptblock]::Create((Invoke-WebRequest -useb 'https://dot.net/v1/dotnet-install.ps1'))) -Version %sdkVersion% -InstallDir %HELIX_CORRELATION_PAYLOAD%\sdk" -powershell.exe -NoProfile -ExecutionPolicy unrestricted -Command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; &([scriptblock]::Create((Invoke-WebRequest -useb 'https://dot.net/v1/dotnet-install.ps1'))) -Runtime dotnet -Version %runtimeVersion% -InstallDir %HELIX_CORRELATION_PAYLOAD%\sdk" +set DOTNET_ROOT=%HELIX_CORRELATION_PAYLOAD%\sdk +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 x64 -Runtime dotnet -Version %runtimeVersion% -InstallDir %DOTNET_ROOT%" set DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 -set DOTNET_ROOT="$HELIX_CORRELATION_PAYLOAD/sdk" -set PATH="$DOTNET_ROOT:$PATH" +set PATH=%DOTNET_ROOT%;%PATH% set DOTNET_MULTILEVEL_LOOKUP=0 -set DOTNET_CLI_HOME="$HELIX_CORRELATION_PAYLOAD/home" +set DOTNET_CLI_HOME=%HELIX_CORRELATION_PAYLOAD%\home set helix=true -%HELIX_CORRELATION_PAYLOAD%\sdk\dotnet vstest %target% --logger:trx +%DOTNET_ROOT%\dotnet vstest %target% --logger:trx diff --git a/eng/scripts/RunPowershell.cmd b/eng/scripts/RunPowershell.cmd new file mode 100644 index 0000000000..df7f639bbe --- /dev/null +++ b/eng/scripts/RunPowershell.cmd @@ -0,0 +1,6 @@ +@ECHO OFF + +SET _TAIL=%* +CALL SET _TAIL=%%_TAIL:*%1=%% + +PowerShell -NoProfile -NoLogo -ExecutionPolicy unrestricted -Command "[System.Threading.Thread]::CurrentThread.CurrentCulture = ''; [System.Threading.Thread]::CurrentThread.CurrentUICulture = ''; try { & '%~dp0%1' %_TAIL%; exit $LASTEXITCODE } catch { write-host $_; exit 1 }" diff --git a/eng/targets/CSharp.Common.props b/eng/targets/CSharp.Common.props index c9d0879a4b..b28e5f9c7f 100644 --- a/eng/targets/CSharp.Common.props +++ b/eng/targets/CSharp.Common.props @@ -53,5 +53,6 @@ + diff --git a/eng/targets/CSharp.Common.targets b/eng/targets/CSharp.Common.targets index 7836a6072e..3abfab3383 100644 --- a/eng/targets/CSharp.Common.targets +++ b/eng/targets/CSharp.Common.targets @@ -36,4 +36,5 @@ + diff --git a/eng/targets/Helix.Common.props b/eng/targets/Helix.Common.props new file mode 100644 index 0000000000..aa1f9872db --- /dev/null +++ b/eng/targets/Helix.Common.props @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/eng/targets/Helix.props b/eng/targets/Helix.props new file mode 100644 index 0000000000..25f48377ff --- /dev/null +++ b/eng/targets/Helix.props @@ -0,0 +1,38 @@ + + + + + + + Never + Always + + + + + true + 00:30:00 + $(HelixTargetQueue.Contains('Windows')) + $(MSBuildProjectName)-$(TargetFramework) + false + true + + + + + + + + + + + + + + + + + + + + diff --git a/eng/targets/Helix.targets b/eng/targets/Helix.targets new file mode 100644 index 0000000000..40617f62fc --- /dev/null +++ b/eng/targets/Helix.targets @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + <_TargetFrameworks Remove="@(_TargetFrameworks)" /> + <_TargetFrameworks Include="$(TargetFrameworks);$(TargetFramework)" /> + + + + + + + + + + <_SelectedPlatforms>@(HelixProjectPlatform) + + + + <_HelixProjectTargetQueue Include="%(HelixAvailibleTargetQueue.Identity)" Condition="'$(_SelectedPlatforms.Contains(%(Platform)))' == 'true' AND '%(Identity)' == '$(HelixTargetQueue)'" /> + + + + false + + + + + + + + + + + + + + + + + + + + + $(PublishAbsoluteDir)../$(HelixTestName).zip + $(PublishAbsoluteDir) + $(TargetFileName) + @(HelixPreCommand) + @(HelixPostCommand) + call runtests.cmd $(TargetFileName) $(NETCoreSdkVersion) $(MicrosoftNETCoreAppPackageVersion) + ./runtests.sh $(TargetFileName) $(NETCoreSdkVersion) $(MicrosoftNETCoreAppPackageVersion) + $(HelixTimeout) + + + + + + + + diff --git a/src/Servers/IIS/IIS/src/Microsoft.AspNetCore.Server.IIS.csproj b/src/Servers/IIS/IIS/src/Microsoft.AspNetCore.Server.IIS.csproj index 9f71d3f6ca..293ab4c807 100644 --- a/src/Servers/IIS/IIS/src/Microsoft.AspNetCore.Server.IIS.csproj +++ b/src/Servers/IIS/IIS/src/Microsoft.AspNetCore.Server.IIS.csproj @@ -50,7 +50,7 @@ BeforeTargets="AssignTargetPaths" Condition="$(PackNativeAssets) == 'true'"> - + diff --git a/src/Servers/IIS/IIS/test/Common.FunctionalTests/Inprocess/StartupTests.cs b/src/Servers/IIS/IIS/test/Common.FunctionalTests/Inprocess/StartupTests.cs index 55d4cfc170..11a2e5dca0 100644 --- a/src/Servers/IIS/IIS/test/Common.FunctionalTests/Inprocess/StartupTests.cs +++ b/src/Servers/IIS/IIS/test/Common.FunctionalTests/Inprocess/StartupTests.cs @@ -31,6 +31,7 @@ namespace Microsoft.AspNetCore.Server.IISIntegration.FunctionalTests private readonly string _dotnetLocation = DotNetCommands.GetDotNetExecutable(RuntimeArchitecture.x64); + [SkipOnHelix] // https://github.com/aspnet/AspNetCore/issues/6549 [ConditionalFact] [RequiresIIS(IISCapability.PoolEnvironmentVariables)] public async Task ExpandEnvironmentVariableInWebConfig() @@ -67,6 +68,7 @@ namespace Microsoft.AspNetCore.Server.IISIntegration.FunctionalTests Assert.Contains("HTTP Error 500.0 - ANCM In-Process Handler Load Failure", await response.Content.ReadAsStringAsync()); } + [SkipOnHelix] // https://github.com/aspnet/AspNetCore/issues/6549 [ConditionalFact] public async Task StartsWithDotnetLocationWithoutExe() { @@ -78,6 +80,7 @@ namespace Microsoft.AspNetCore.Server.IISIntegration.FunctionalTests await StartAsync(deploymentParameters); } + [SkipOnHelix] // https://github.com/aspnet/AspNetCore/issues/6549 [ConditionalFact] public async Task StartsWithDotnetLocationUppercase() { @@ -89,6 +92,7 @@ namespace Microsoft.AspNetCore.Server.IISIntegration.FunctionalTests await StartAsync(deploymentParameters); } + [SkipOnHelix] // https://github.com/aspnet/AspNetCore/issues/6549 [ConditionalTheory] [InlineData("dotnet")] [InlineData("dotnet.EXE")] @@ -108,6 +112,8 @@ namespace Microsoft.AspNetCore.Server.IISIntegration.FunctionalTests Assert.Equal(1, TestSink.Writes.Count(w => w.Message.Contains("Invoking where.exe to find dotnet.exe"))); } + + [SkipOnHelix] // https://github.com/aspnet/AspNetCore/issues/6549 [ConditionalTheory] [InlineData(RuntimeArchitecture.x64)] [InlineData(RuntimeArchitecture.x86)] @@ -184,6 +190,7 @@ namespace Microsoft.AspNetCore.Server.IISIntegration.FunctionalTests await StartAsync(deploymentParameters); } + [SkipOnHelix] // https://github.com/aspnet/AspNetCore/issues/6549 [ConditionalFact] [RequiresIIS(IISCapability.PoolEnvironmentVariables)] public async Task StartsWithPortableAndBootstraperExe() diff --git a/src/Servers/IIS/IIS/test/Common.Tests/Common.Tests.csproj b/src/Servers/IIS/IIS/test/Common.Tests/Common.Tests.csproj index 6875776d10..0af2ce5bf6 100644 --- a/src/Servers/IIS/IIS/test/Common.Tests/Common.Tests.csproj +++ b/src/Servers/IIS/IIS/test/Common.Tests/Common.Tests.csproj @@ -2,6 +2,8 @@ netcoreapp3.0 + false + false diff --git a/src/Servers/IIS/IIS/test/FunctionalTest.props b/src/Servers/IIS/IIS/test/FunctionalTest.props new file mode 100644 index 0000000000..c37d9df700 --- /dev/null +++ b/src/Servers/IIS/IIS/test/FunctionalTest.props @@ -0,0 +1,42 @@ + + + + 00:45:00 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_FilesToCopy Include="%(PublishedTestAsset.Path)\**\*"> + $(PublishDir)\%(PublishedTestAsset.Identity)\ + + + + + + + + diff --git a/src/Servers/IIS/IIS/test/IIS.BackwardsCompatibility.FunctionalTests/IIS.BackwardsCompatibility.FunctionalTests.csproj b/src/Servers/IIS/IIS/test/IIS.BackwardsCompatibility.FunctionalTests/IIS.BackwardsCompatibility.FunctionalTests.csproj index 3bbc263510..b1a2a048f3 100644 --- a/src/Servers/IIS/IIS/test/IIS.BackwardsCompatibility.FunctionalTests/IIS.BackwardsCompatibility.FunctionalTests.csproj +++ b/src/Servers/IIS/IIS/test/IIS.BackwardsCompatibility.FunctionalTests/IIS.BackwardsCompatibility.FunctionalTests.csproj @@ -1,5 +1,7 @@  + + netcoreapp3.0 IISBackwardsCompatibility.FunctionalTests @@ -8,7 +10,6 @@ - @@ -18,8 +19,12 @@ False - - + + False + + + False + diff --git a/src/Servers/IIS/IIS/test/IIS.ForwardsCompatibility.FunctionalTests/IIS.ForwardsCompatibility.FunctionalTests.csproj b/src/Servers/IIS/IIS/test/IIS.ForwardsCompatibility.FunctionalTests/IIS.ForwardsCompatibility.FunctionalTests.csproj index 070a2bbe09..5509a1f949 100644 --- a/src/Servers/IIS/IIS/test/IIS.ForwardsCompatibility.FunctionalTests/IIS.ForwardsCompatibility.FunctionalTests.csproj +++ b/src/Servers/IIS/IIS/test/IIS.ForwardsCompatibility.FunctionalTests/IIS.ForwardsCompatibility.FunctionalTests.csproj @@ -1,5 +1,7 @@ + + netcoreapp3.0 IISForwardsCompatibility.FunctionalTests @@ -7,16 +9,16 @@ true - - - - - + + + + False + + False - diff --git a/src/Servers/IIS/IIS/test/IIS.FunctionalTests/IIS.FunctionalTests.csproj b/src/Servers/IIS/IIS/test/IIS.FunctionalTests/IIS.FunctionalTests.csproj index 99100e6eff..aaf700f0f2 100644 --- a/src/Servers/IIS/IIS/test/IIS.FunctionalTests/IIS.FunctionalTests.csproj +++ b/src/Servers/IIS/IIS/test/IIS.FunctionalTests/IIS.FunctionalTests.csproj @@ -1,5 +1,7 @@ + + netcoreapp3.0 IIS.FunctionalTests @@ -7,17 +9,17 @@ true - - - - - - False - + + + False + + + False + diff --git a/src/Servers/IIS/IIS/test/IISExpress.FunctionalTests/IISExpress.FunctionalTests.csproj b/src/Servers/IIS/IIS/test/IISExpress.FunctionalTests/IISExpress.FunctionalTests.csproj index 8c1c804ec6..ae792eb6e8 100644 --- a/src/Servers/IIS/IIS/test/IISExpress.FunctionalTests/IISExpress.FunctionalTests.csproj +++ b/src/Servers/IIS/IIS/test/IISExpress.FunctionalTests/IISExpress.FunctionalTests.csproj @@ -1,25 +1,26 @@  + + netcoreapp3.0 True IISExpress.FunctionalTests true - - false - - - - - False - + + + False + + + False + diff --git a/src/Servers/IIS/IntegrationTesting.IIS/src/Microsoft.AspNetCore.Server.IntegrationTesting.IIS.csproj b/src/Servers/IIS/IntegrationTesting.IIS/src/Microsoft.AspNetCore.Server.IntegrationTesting.IIS.csproj index 64996d8d10..42353c00db 100644 --- a/src/Servers/IIS/IntegrationTesting.IIS/src/Microsoft.AspNetCore.Server.IntegrationTesting.IIS.csproj +++ b/src/Servers/IIS/IntegrationTesting.IIS/src/Microsoft.AspNetCore.Server.IntegrationTesting.IIS.csproj @@ -37,7 +37,7 @@ - + diff --git a/src/Servers/IIS/build/testsite.props b/src/Servers/IIS/build/testsite.props index 0139fadd0a..4e6b020b3f 100644 --- a/src/Servers/IIS/build/testsite.props +++ b/src/Servers/IIS/build/testsite.props @@ -10,7 +10,6 @@ OutOfProcess true - false $(MSBuildProjectName) @@ -81,7 +80,7 @@ - $(OutputPath)$(PublishDirName)\$(TestAssetOutputName)-$(TestAssetProfile)\ + $(PublishDir)\$(TestAssetOutputName)-$(TestAssetProfile)\ @@ -90,14 +89,26 @@ - + + + + + + + + + + + + Properties="PublishDir=$(PublishDir);TestAssetProfile=%(TestAssetPublishProfile.Identity);ReferenceTestTasks=false;%(TestAssetPublishProfile.Properties)"> + + diff --git a/src/Servers/IIS/tools/update_schema.ps1 b/src/Servers/IIS/tools/update_schema.ps1 index 3437e31571..c13148f08d 100644 --- a/src/Servers/IIS/tools/update_schema.ps1 +++ b/src/Servers/IIS/tools/update_schema.ps1 @@ -10,12 +10,11 @@ param() $ErrorActionPreference = 'Stop' Set-StrictMode -Version 1 -$ancmSchemaFiles = @( - "aspnetcore_schema.xml", - "aspnetcore_schema_v2.xml" -) - -$ancmSchemaFileLocation = Resolve-Path "$PSScriptRoot\..\AspNetCoreModuleV2\AspNetCore\aspnetcore_schema_v2.xml"; +$ancmSchemaFileLocation = Join-Path $PSScriptRoot "aspnetcore_schema_v2.xml"; +if (!(Test-Path $ancmSchemaFileLocation)) +{ + $ancmSchemaFileLocation = Resolve-Path "$PSScriptRoot\..\AspNetCoreModuleV2\AspNetCore\aspnetcore_schema_v2.xml"; +} [bool]$isAdmin = ([Security.Principal.WindowsPrincipal] [Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole] "Administrator") @@ -40,30 +39,28 @@ if (-not $isAdmin -and -not $WhatIfPreference) { } } -for ($i=0; $i -lt $ancmSchemaFiles.Length; $i++) -{ - $schemaFile = $ancmSchemaFiles[$i] - $schemaSource = $ancmSchemaFileLocation +$schemaFile = "aspnetcore_schema.xml" +$schemaSource = $ancmSchemaFileLocation - $destinations = @( - "${env:ProgramFiles(x86)}\IIS Express\config\schema\", - "${env:ProgramFiles}\IIS Express\config\schema\", - "${env:windir}\system32\inetsrv\config\schema\" - ) +$destinations = @( + "${env:ProgramFiles(x86)}\IIS Express\config\schema\", + "${env:ProgramFiles}\IIS Express\config\schema\", + "${env:ProgramW6432}\IIS Express\config\schema\", + "${env:windir}\system32\inetsrv\config\schema\" +) - foreach ($destPath in $destinations) { - $dest = "$destPath\${schemaFile}"; +foreach ($destPath in $destinations) { + $dest = "$destPath\${schemaFile}"; - if (!(Test-Path $destPath)) - { - Write-Host "$destPath doesn't exist" - continue; - } + if (!(Test-Path $destPath)) + { + Write-Host "$destPath doesn't exist" + continue; + } - if ($PSCmdlet.ShouldProcess($dest, "Replace file")) { - Write-Host "Updated $dest" - Move-Item $dest "${dest}.bak" -ErrorAction Ignore - Copy-Item $schemaSource $dest - } + if ($PSCmdlet.ShouldProcess($dest, "Replace file")) { + Write-Host "Updated $dest" + Move-Item $dest "${dest}.bak" -ErrorAction Ignore + Copy-Item $schemaSource $dest } }