Commit Graph

101 Commits

Author SHA1 Message Date
Doug Bunting 352ad1a980
Rebrand and update for 5.0.1 (#27406)
* Move to 5.0.1 versions

* Move to GA .NET SDK
- required for some tests to pass

* Remove feeds that won't be needed after 5.0.0 is GA

* Cherry-pick `$(CrossgenOutput)` and Directory.Build.*.in changes from master
- [master] Update dependencies from dotnet/runtime dotnet/efcore (#26788)
    - 219ecd688012
- when project template tests run test assets, need latest shared Fx bits
- hit `BadImageFormatException`s otherwise
    - test projects build against uploaded packages
    - those packages reference the 5.0.1 shared framework
    - the ASP.NET parts of the 5.0.1 shared Fx are `crossgen`ed to target Windows

- Use runtime and ref/ assemblies matching repo in Helix testing
    - add Directory.Build.*.in files based on project template test infrastructure
    - use files as import boundary where the project doesn't create its own Directory.Build.* files
    - ensure `dotnet-watch` tests also use the latest runtime and ref/ assemblies

- Extend Helix Directory.Build.* workarounds
    - generate Directory.Build.* files when restoring any projects
    - include generated files in Helix runs needing the latest runtime
    - copy generated files when testing `dotnet-watch` locally
    - include generated content in Microsoft.NET.Sdk.BlazorWebAssembly.IntegrationTests test assets
        - remove duplicate settings from existing Directory.Build.* files
    - ensure shared framework and targeting packs are laid out under .dotnet/ before test assets restore

- Disable `crossgen` when building for Helix runs
    - make `$(CrossgenOutput)` property override-able
    - use override in CI jobs that submit to other platforms
        - for now, leave the ARM64 Helix jobs alone (build on Ubuntu, run in Debian)

* Correct an `$(IsTestAssetProject)` setting
- affected projects are all test assets or provide test support
- without this, a number of the projects are incorrectly marked as shipping

* Baseline released 5.0.0 packages
- this is a complete rewrite of eng/Baseline.xml
  - based on the 5.0.0 MergedManifest.xml file

* Add 5.0.0 PackageOverrides.txt and PlatformManifest.txt files
- need consistent versions when servicing targeting packs

Co-authored-by: dotnet-maestro[bot] <42748379+dotnet-maestro[bot]@users.noreply.github.com>
2020-11-10 09:51:47 -08:00
William Godbe bc3dc72700
Fix path data in FrameworkList.xml (#26622)
* Fix path data in FrameworkList.xml

* Move FrameworkList.xml to SharedFxRoot

* Fix targeting pack xml test

* Add test

* Add another test

* Extract .xml files to Helix as well

* Add another test

* Update TestRunner.cs

* Remove slash
2020-10-09 11:06:15 -07:00
Doug Bunting b592cf6610
Place ref/ layout where SDK can find it (#25987)
- correct Helix test failures with stable versions, where SDK's packs aren't enough

E.g. from https://dev.azure.com/dnceng/internal/_build/results?buildId=813814
``` text
...\.dotnet\sdk\5.0.100-rc.1.20379.10\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk.FrameworkReferenceResolution.targets(318,5): error MSB4018: The "ResolveTargetingPackAssets" task failed unexpectedly. [...\src\ProjectTemplates\test\bin\Release\net5.0\TestTemplates\AspNet.m0yq3xrporu\AspNet.m0yq3xrporu.csproj]
...\.dotnet\sdk\5.0.100-rc.1.20379.10\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk.FrameworkReferenceResolution.targets(318,5): error MSB4018: System.IO.DirectoryNotFoundException: Could not find a part of the path '...\.dotnet\packs\Microsoft.AspNetCore.App.Ref\5.0.0\data\FrameworkList.xml'. [...\src\ProjectTemplates\test\bin\Release\net5.0\TestTemplates\AspNet.m0yq3xrporu\AspNet.m0yq3xrporu.csproj]
```
2020-09-17 21:03:07 -07:00
Doug Bunting e3b632894d
Fix Helix testing issues with stable versions and local builds (#25865)
- include all shipping packages in Helix payloads that need runtime
  - remove hard-coded `-ci` that broke Helix tests with stable versions or local builds
  - for local builds, do not assume `$(Configuration)` is Release
- support `$(HelixTargetQueues)` property used in RunHelix.ps1
  - lost somewhere along the lines; script ran full matrix

nits:
- clean up redundant addition of runtime and ref/ packages
  - `@(HelixContent)` additions in `_CreateHelixWorkItem` target are ignored
- mention '+' separation of `-HelixQueues` argument to RunHelix.ps1
- allow `$(IsUnitTestProject)` override in case we need it in the future
2020-09-13 21:45:23 -07:00
Doug Bunting 8453a07dfa
Pass `$(MicrosoftNETCoreAppInternalPackageVersion)` to Helix jobs (#25850)
- required for servicing, where e.g. `5.0.0` may be ambiguous
- also move `%DOTNET_HOME%` into the working directory
  - reduces build-up in `%HELIX_CORRELATION_PAYLOAD%` and aligns w/ build.sh

nit: add more debug output to `runtests.*`
2020-09-13 11:40:33 -07:00
Doug Bunting 326507bb01
Correct `$(SharedFxVersion)` and `$(TargetingPackVersion)` values (#25790)
* Correct `$(SharedFxVersion)` and `$(TargetingPackVersion)` values
- Ensure `$(SharedFxVersion)` doesn't change in `$(NoSemVer20)` projects
- Ignore current project's `$(VersionSuffix)` in `$(TargetingPackVersion)`
    - Never assume `$(AspNetCoreBaselineVersion)` matches released targeting pack
- Stabilize both versions correctly
- Use these properties more widely
    - Remove other mechanisms to get the same values
    - Reduce use of the `_GetPackageVersionInfo` target
    - Reduce use of `$(SharedFxVersion)` for the targeting pack

nits:
- Correct comments about old RTMVersions.csproj project
- Fix or remove a few other comments

* Do not pass package filenames on Helix command Lines
- remove parsing of these command-line arguments from `RuntestOptions`
  - instead craft the names using passed `$(SharedFxVersion)`
- restore `$(DotNetRuntimeSourceFeedKey)` on Helix command line
  - lost somewhere along the line
- correct argument count in runtests.sh
  - treated 11th argument as both Helix timeout and feed credential
  - count was messed up somewhere alone the line

nits:
- update C# syntax in `RuntestOptions` e.g. remove unused `public` setters
- sort and group properties and their assignments
2020-09-11 19:17:28 -07:00
Doug Bunting 12f92dbc8c
Eliminate duplicates in Helix `TestRunner` (#25663)
* Eliminate duplicates in Helix `TestRunner`
- do not add source that's already in NuGet.config
  - configuration file now part of Helix content
- do not re-set an env variable that's set in `runtests.*`

nit: simplify `%Path% setting in runtests.cmd
- always quote the value
- but, keep the `SETLOCAL` command
  - don't pollute environment on Helix agents

* Remove `--source` options we don't need anymore from `runtests.*`
- nit: add `--no-restore` to `dotnet run` command after `dotnet restore`

* Add `--arch arm64` to ARM64 `restore` build steps
- #25397
- was restoring for the wrong architecture

nit: add `--no-restore` to Helix project build steps
- already restored
2020-09-09 11:58:05 -07:00
Will Godbe d1ab8efe70 Use -nopath 2020-09-02 09:32:10 -07:00
William Godbe e6a163be57
Merge branch 'release/5.0' into wtgodbe/MergePreview8 2020-09-01 09:47:29 -07:00
Doug Bunting 48c1261097
Do not use `$(AppRuntimeVersion)` or NETCore version for shared Fx in Helix runs (#25477)
- remove hard-coded `$(AppRuntimeVersion)` property entirely
  - use `$(SharedFxVersion)` instead

nits:
- make `RunTests` help more clear about how `--runtime` option is used
- remove unused `--sdk` option on `RunTests` command line
- add Microsoft.AspNetCore.App.Ref package to Helix content later, ensuring it exists
2020-08-31 21:40:02 -07:00
Will Godbe 6205d66a0e Resolve merge conflicts 2020-08-26 12:07:14 -07:00
Hao Kung 94e314d4d2 Helix pass in -nopath for dotnet-install (#24968) 2020-08-18 16:57:29 -07:00
Hao Kung 130ec438fd
Improve crash/hang support in helix (#24489) 2020-08-01 10:38:26 -07:00
DotNet Bot cba2275799 Merged PR 9296: [internal/release/5.0-preview8] Update dependencies from dnceng/internal/dotnet-runtime
This pull request updates the following dependencies

[marker]: <> (Begin:2f3f3ff0-d34f-49bd-50aa-08d828f9655f)
## From https://github.com/dotnet/runtime
- **Subscription**: 2f3f3ff0-d34f-49bd-50aa-08d828f9655f
- **Build**: 20200722.7
- **Date Produced**: 7/23/2020 12:04 AM
- **Commit**: 3cab6dd440a5f3763bfbd2d582b36fe51095686a
- **Branch**: refs/heads/internal/release/5.0-preview8

[DependencyUpdate]: <> (Begin)

- **Updates**:
  - **System.Diagnostics.DiagnosticSource**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7
  - **System.Diagnostics.EventLog**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7
  - **System.Drawing.Common**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7
  - **System.IO.Pipelines**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7
  - **System.ComponentModel.Annotations**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7
  - **Microsoft.Extensions.Logging.Abstractions**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7
  - **Microsoft.Extensions.Logging.Configuration**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7
  - **Microsoft.Extensions.Logging.Console**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7
  - **Microsoft.Extensions.Logging.Debug**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7
  - **Microsoft.Extensions.Logging.EventLog**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7
  - **Microsoft.Extensions.Logging.EventSource**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7
  - **Microsoft.Extensions.Logging.TraceSource**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7
  - **Microsoft.Extensions.Options**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7
  - **Microsoft.Extensions.Options.ConfigurationExtensions**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7
  - **Microsoft.Extensions.Options.DataAnnotations**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7
  - **Microsoft.Extensions.Primitives**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7
  - **Microsoft.Extensions.Logging**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7
  - **Microsoft.Extensions.Internal.Transport**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7
  - **Microsoft.Extensions.Hosting.Abstractions**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7
  - **Microsoft.Extensions.Caching.Abstractions**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7
  - **Microsoft.Extensions.Caching.Memory**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7
  - **Microsoft.Extensions.Configuration**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7
  - **Microsoft.Extensions.Configuration.Abstractions**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7
  - **Microsoft.Extensions.Configuration.Binder**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7
  - **Microsoft.Extensions.Configuration.CommandLine**: from 5.0.0-preview.8.203...
2020-07-26 05:49:09 +00:00
Hao Kung d9049eca9c
Revert "Try using helix sdk support directly again (#23585)" (#24250)
This reverts commit 059fe39ae0.
2020-07-23 22:47:36 +00:00
Hao Kung 059fe39ae0
Try using helix sdk support directly again (#23585) 2020-07-22 10:50:55 -07:00
Hao Kung e370158348
Add nuget restore feed as well (#23863) 2020-07-10 13:53:38 -07:00
Hao Kung 0a02cd88b7
Use 5 retries in curl (#23112) 2020-06-18 19:01:01 -07:00
Hao Kung 0dc6aa66a5
Include identical helix script files directly (#23116) 2020-06-18 19:00:15 -07:00
Hao Kung 46d012d13b
Better retries (#22898) 2020-06-16 23:17:11 -07:00
Brennan 49aecc3efe
Use non-generic TaskCompletionSource in SignalR and Kestrel (#22925) 2020-06-15 17:35:19 -07:00
Brennan 15015d5162
Remove temp SDK on Helix (#22475) 2020-06-02 19:34:13 +00:00
Doug Bunting 256045729a
Add `SuccessfulTests` to ensure something runs in every non-Helix run (#22406)
* Remove extra `[SkipOnHelix]` attribute
- only need the one compiled into Microsoft.AspNetCore.Testing
- update the documentation to reflect this
  - nit: address Markdown warnings that VS Code showed

* Add `SuccessfulTests` to ensure something runs in every non-Helix runs
- #22241
- cleans up hundreds of warnings but leaves a couple for the Blazor tests assembly
  - see comments about xUnit runner command line in the new class
2020-06-02 12:19:28 -07:00
Doug Bunting d2b3eecedb Provide an `$(OutputPath)` setting in helix.proj
- #22246
2020-06-01 11:49:30 -07:00
Hao Kung a806ae62c3
Add helix-matrix.yml and windows arm 64 helix queue (#22002) 2020-05-23 17:08:18 -07:00
Brennan 4e2584a04a
Install dotnet-dump first (#22068) 2020-05-20 23:31:22 -07:00
dotnet-maestro[bot] d5849f3534
[master] Update dependencies from dotnet/arcade dotnet/aspnetcore-tooling (#21630)
* Update dependencies from https://github.com/dotnet/arcade build 20200511.9
- Microsoft.DotNet.Arcade.Sdk: 5.0.0-beta.20228.4 => 5.0.0-beta.20261.9
- Microsoft.DotNet.GenAPI: 5.0.0-beta.20228.4 => 5.0.0-beta.20261.9
- Microsoft.DotNet.Helix.Sdk: 5.0.0-beta.20228.4 => 5.0.0-beta.20261.9

* Update dependencies from https://github.com/dotnet/aspnetcore-tooling build 20200514.6

Microsoft.AspNetCore.Mvc.Razor.Extensions , Microsoft.AspNetCore.Razor.Language , Microsoft.CodeAnalysis.Razor , Microsoft.NET.Sdk.Razor
 From Version 5.0.0-preview.5.20261.4 -> To Version 5.0.0-preview.6.20264.6

* Pre-emptively take -nobl change

* Disable binlogs in CI

* Fix build.sh to know about -nobl

* Align build.ps1|sh with latest Arcade parameters
- do not enable binary logs by default in CI builds
- leave `-binaryLog` and `-excludeCIBinaryLog` handling to eng/common/tools.ps1|sh
  - was unnecessary since `-bl /bl:{some name}` worked fine, ignoring OOMs

nit: document `-excludeCIBinarylog` a bit more

* Do not pass unknown options into CodeCheck.ps1

* Pass `-ci -nobl` into remaining CI build jobs

* Switch default TFM to `net5.0`

* Update missing project templates tfms

* Add more `-ci -nobl`
- needed because _all_ builds in the pipeline are implicitly CI builds
  - default-build.yml adds `-ci` when script wasn't explicit

* Default templates to net5.0

* PR feedback

* Update TFMs in explicit .nuspec files

* Update TFMs in test projects

* Update TFMs in test C# code

* Update TFMs in infrastructure files

* Future-proof a check for `net5.0` or later
- avoid comparisons involving `$(TargetFramework)` in .targets files
  - fine to compare it with `''` or `$(DefaultNetCoreTargetFramework)`

* !fixup! Undo a couple of earlier fixes
- remove a duplicate `$()` setting
- correct the one remaining versioned `#if` define
  - did not make it `#if NETCOREAPP` because benchmarks test numerous .NET Core TFMs

* Disable binary logs in CodeCheck.ps1

* Specify `-ci -nobl` just once when using `parameters.buildArgs`

* Restore `$binaryLog` default logic

Co-authored-by: Doug Bunting <6431421+dougbu@users.noreply.github.com>
Co-authored-by: Will Godbe <wigodbe@microsoft.com>
Co-authored-by: Viktor Hofer <viktor.hofer@microsoft.com>
2020-05-15 00:17:02 +00:00
Brennan f56c61b812
Capture dump of hanging test process in Helix (#21659) 2020-05-12 13:55:09 -07:00
Hao Kung 4434cf43ce
Don't throw on dotnet exit codes (#21639)
Operation can succeed for purposes of the tests, the tests will fail if things aren't setup properly, so we can safely ignore the errors
2020-05-11 15:08:42 -07:00
Hao Kung f86eb17fb4
[Helix] Install ef tool to work item root instead of globally (#21025) 2020-04-20 19:33:02 -07:00
Hao Kung 02bb671d15
[Helix] Don't fail fast on ef tool install issues (may be already installed) (#20958) 2020-04-18 01:58:02 -07:00
Hao Kung f3c2c1c5b3
[Helix] Capture more output/errors in test runner (#20919) 2020-04-16 22:30:55 -07:00
Hao Kung 698ab1518d
[Helix] Force overwrite when installing app runtime (#20803) 2020-04-13 22:24:02 -07:00
Hao Kung c16d3364d4
[Helix] Install aspnet runtime as part of test runner (#20693) 2020-04-11 10:47:56 -07:00
Hao Kung 200f2c49be
Reenable sharedfx with arm64 queue skipped (#20659) 2020-04-09 12:24:03 -07:00
Hao Kung 1bbca1502b
Revert "Reenable framework unit tests on helix (#19975)" (#20657)
This reverts commit 9a792f2a27.
2020-04-09 05:00:26 +00:00
Hao Kung 9a792f2a27
Reenable framework unit tests on helix (#19975) 2020-04-07 23:39:27 -07:00
Hao Kung fba6e94c4f
Helix add some more prints (#20463) 2020-04-03 01:37:21 -07:00
Brennan ca5cd91d68
Replace RunTests scripts with .NET app (#20337) 2020-04-01 09:01:34 -07:00
Brennan cc2f5497e8
Avoid modifying global machine state on Helix (#20315) 2020-03-30 15:34:02 -07:00
David Fowler 619e2025f1
Enable the blame data collector (#20318)
- This should dump out which tests were incomplete on
the test runner crashing.
2020-03-30 11:16:17 -07:00
David Fowler c7d4d7c270
Add console logger to test command (#20273) 2020-03-28 12:20:24 -07:00
David Fowler 796cf9649b
Trying things out (#20264) 2020-03-28 08:08:53 -07:00
Brennan 2766f202a2
Fix Helix log upload (#20258) 2020-03-27 23:15:56 -07:00
Doug Bunting 3dfd5f28c1 nit: Mark shell scripts as executable 2020-03-25 11:04:25 -07:00
John Luo 6912dda560
Add gRPC interop tests (again) (#20069)
* Revert "Revert "Add gRPC interop tests (#17040)" (#20047)"

This reverts commit 236dcd9fbe.

* Fix daily and quarantine Helix runs

* Cleanup
2020-03-23 13:29:50 -07:00
Kevin Pilch 236dcd9fbe
Revert "Add gRPC interop tests (#17040)" (#20047)
This reverts commit 8afb78fb95.
2020-03-21 06:04:28 +00:00
James Newton-King 8afb78fb95
Add gRPC interop tests (#17040)
* WIP add interop tests

* Clean up

* Move test project into build infrastructure

* Clean up

* Remove hardcoded paths

* Clean up

* Fix build

* Add copyright notices

* Update azure template

* Fix build

* Fix build?

* Fix build?

* Add gRPC interop tests to CI

- Convert to using references managed by build infrastructure
- Use produced AspNetCore.App shared framework
- Save server logs
- Dynamically bind to ports
- Ensure InteropWebsite is built in the same configuration as the test project

* Cleanup

* Rebase fix

* Include tests assets in build directory for Helix

* Incorporate changes in ProcessEx

* Include Grpc test in regular build

* Fixup

* Test

* exe doesn't always exist

* Capture logs on helix

* Maybe this will work

* There are two application started messages

* Derp

* Cleanup

* Update directory

* Add interop tests to more pipelines

* mkdir

Co-authored-by: John Luo <johluo@microsoft.com>
2020-03-20 19:32:45 -07:00
Hao Kung b4220d5c23
[Helix] Also upload logs from windows queues (#20005) 2020-03-20 15:17:39 -07:00
Brennan 78fce45039
Remove global xunit max thread setting (#19944) 2020-03-18 10:39:25 -07:00