- import the variable template
- use the two variables it provides wherever we name the pool
- future release branches will now automatically switch to the -Svc pools
* Use `-noBuild` in second build steps of test jobs
- building again in Publish target adds nothing in most cases
- use `-noBuildRepoTasks` more consistently
- again, building the repo tasks wastefully repeated work done in previous build step
- use `-noBuildJava` more consistently in quarantined pipelines
- Java tests aren't worth testing _or building_ in these pipelines because they cannot be quarantined
- remove `-noRestore` and `-noBuildDeps` when `-noBuild` specified; redundant
- work around https://github.com/dotnet/sdk/issues/23777
- do not publish .cshtml files of most test asset projects when `$(NoBuild)` is set
- update FunctionalTestWithAssets.targets to help Publish succeed when `$(NoBuild)` is set
- fixes build jobs in quarantined-pr pipeline where `--no-build` was already specified
- for IIS test assets, perform all builds needed for their profiles within Build target
- move `ReferenceTestTasks=false` and comments about it to where property matters
- merge separate targets in FunctionalTest.props to make items available during (now separate) Publish
nits:
- touch up RunHelix.ps1 console output
- reorder command line arguments for consistency in changed parts of the YAML files
- move `NoBuild=true` setting out of FunctionalTestWithAssets.props
- use `BeforeTargets` in FunctionalTest.props to improve determinism
- remove separate step to restore Interop projects
- make Interop test asset projects more "normal"
- use usual mechanism to target latest ASP.NET Core bits
- remove use of `$(BuildInteropProjects)`
- expand FunctionalTestWithAssets.targets to help w/ local testing
- still delayed and done only when necessary
- handle non-Helix testing e.g. handle `dotnet test` too
- build test assets into location `InteropTests` expects on local machine
- add FunctionalTestWithAssets.props, providing relevant defaults
- expand `FunctionalTestWithAssets` use to Identity.FunctionalTests
nits:
- rename `@(FunctionalTestAssetProjectReference)` to `@(TestAssetProjectReference)`
- cleanup leftover reference to ProjectTemplates/testassets/ in Build.props
- should have been removed in 54ff379
- remove `/p:RunTemplateTests=true`; no need to specify the default
- clean up other projects that use `$(MvcTestingTargets)`
- none need special handling for publish (don't need pages, views, or wwwroot files)
- stop using `$(TargetArchitecture)` in Helix.Common.props and Helix.targets
- add `$(IsArm64HelixQueue)`
- make Helix queue choices more readable
- use `<Choose/>
- remove excess `Condition` clauses
- rename `$(IsHelixDaily)` ➡️ `$(IsHelixPRCheck)`
- use new property only in ci.yml and quarantined-pr.yml
- flip check in Helix.Common.props
nit: remove unused `$(IsRequiredCheck)` and `$(CreateHelixPayload)` properties
* Remove top-level build scripts in favor of project specific scripts
* Add more build scripts and move top-level to eng
* Fix path in Powershell script
* Update BuildDirectory for CI jobs
* Fix paths in restore scripts and jobs
* Address feedback from peer review
* Fix references to Html.Abstractions
* Update baseline files with new project
* Fix a few more broken links
* !fixup! Correct Build.props and regen project references
* Update docs and fix public api modification check
Co-authored-by: Doug Bunting <6431421+dougbu@users.noreply.github.com>
- part of #29475
- primarily involves updating links to this repo
nit: Remove broken links to old Travis environments (that happen to mention 'master')
* Switch to Windows.10.Arm64v8.Open Helix queue
- avoid problems with empty `$env:Path` values
* Build shared framework for at least `dotnet-watch` tests on ARM64
- extend `$(CrossgenOutput)` changes to those jobs too
* Include Windows.10.Arm64v8.Open when skipping on Windows.10.Arm64.Open
- also make sure internal queues are also skipped in updated attributes
[master] Update dependencies from dotnet/runtime dotnet/efcore
- Update TFM net5.0 -> net6.0
- Introduce $(TargetTFM)
- TargetTfm -> DefaultNetCoreTargetFramework
- Updated: NETCoreAppMaximumVersion
- Apply suggestions from code review
Co-authored-by: Doug Bunting <6431421+dougbu@users.noreply.github.com>
- Fix version numbers used in Blazor WASM SDK
- Address feedback from peer review
- Fix check for platform version
- Fix build config for dotnet-watch project
- Update TFM net5.0 -> net6.0
- Introduce $(TargetTFM)
- TargetTfm -> DefaultNetCoreTargetFramework
- Apply suggestions from code review
Co-authored-by: Doug Bunting <6431421+dougbu@users.noreply.github.com>
- Fix version numbers used in Blazor WASM SDK
- Address feedback from peer review
- Remove workaround in dotnet-watch tests
- Testrunner to 5.0 and adding workarounds
- Try props.in
- net50
- Fixup KnownFrameworkReference for integration tests
- Resolve a few comments
- don't use repo-specific properties in shipping file
- pass `$(DefaultNetCoreTargetFramework)` into template files used in tests
- Update src/Components/WebAssembly/Sdk/src/targets/Microsoft.NET.Sdk.BlazorWebAssembly.Current.targets
- Update KnownFrameworkReference for template tests
- Use DefaultNetcoreTFM
- Undo change to props.in
- Update src/ProjectTemplates/test/ProjectTemplates.Tests.csproj
- Update GenerateTestProps.targets
- this is where `$(KnownAppHostPackOrFrameworkReferenceTfm)` is needed
- Update src/ProjectTemplates/test/ProjectTemplates.Tests.csproj
- additional template input not needed here
- Other file changes
- Rename the one net5.0 directory in the repo
- Fixup rebase remnants
- 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
- Switch Directory.Build.*.in files in Helix content
- ensure item manipulation is done after base items exist
nit: Fix *.in exclusion
- Update TFM workaround to reference 5.0 instead of 3.1 (#26991)
- Make some Directory.Build.*.in settings override-able
- that is, move some properties to Directory.Build.props.in
also
- fix `Condition`s that resulted in empty Directory.Build.targets
- separate Directory.Build.empty.in
- ensure RunTests project is _not_ affected by root Directory.Build.* files
- Update SDK
- Set `$(DefaultNetCoreTargetFramework)` in Helix root Directory.Build.props
= `dotnet-watch` tests otherwise fail with "The TargetFramework value '' was not recognized"
- 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
- !fixup! Remove extra end tags
- !fixup! Don't build GenerateFiles.csproj in desktop `msbuild`
- !fixup! Arcade uses different test targets
- 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)
nits:
- correct condition for `$(GenerateCrossgenProfilingSymbols)`
- set `$(ASPNETCORE_TEST_LOG_DIR)` in every step of the Helix build jobs
- Ensure ReadRequest type can be loaded on server. Fixes#26882 (#26931)
- Enable debugging when using embedded PDBs (#27107)
* Fix debug using embedded PDBs.
* Check for either debugBuild or referenced PDBs
Co-authored-by: Thays <thaystg@gmail.com>
- Ensure Blazor JS files are up-to-date
- Merge branch 'master' into darc-master-76e24f4d-c90c-42ac-a1e5-411ae61ca37b
* 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
* Make `dotnet msbuild` the default on Windows too
- add step using desktop `msbuild` when native builds may be involved
- `-All` (without `-NoBuildNative`), `-BuildNative` or `-BuildInstallers` run this step
- but `-ForceCoreMsbuild` unconditionally skips this step
nits:
- add binary log for RepoTasks build if `$BinaryLog` (echoes the `dotnet msbuild` command)
- add blank lines between build steps
* Enable building managed projects depending on native assets
- splitting native builds out confuses these projects
- use `$(BuildNative)` less, only to control actual building (not bundling)
- build both native platforms in one `msbuild` invocation
* Adjust generation scripts to explicitly choose the MSBuild engine
- ensure native assets are included in GenerateReferenceAssemblies.ps1 build
- clean up the global state that tools.ps1 corrupts
* Revert move to VS2019.Pre queues
This reverts part of commit b67d161e03
- was "[release/5.0-preview5] Update dependencies from dotnet/aspnetcore-tooling (#21710)"
* Revert "!temporary! Require `msbuild` from VS2019 16.6"
- this reverts commit 58cf2304a6
* Reduce build duplication in pipelines
- build native assets and repo tasks once per CI job
- only cleanup framework references after packing managed projects
nits:
- wrap a few long lines
- remove extra `-forceCoreMsbuild` options in SiteExtensions' build.cmd
* Fix Helix jobs
- restore.cmd doesn't work well with `-projects`; script unconditionally adds `-all`
* !fixup! Reduce duplications further
- missed a couple of places `-noBuildRepoTasks` helps
* Cleanup: Remove a few dangling binary logs
* !fixup! Correct typos in generation scripts
* !fixup! Another typo in the generation scripts
* Quick fix: Simplify devBuilds.yml
- remove an excess build step
* Quick fix: Move `SetupNugetSources` script invocations above `parameters.beforeBuild`
- ensure NuGet.config is ready for all internal builds
- remove now-duplicate `SetupNugetSources` invocations wherever default-build.yml is used
* Quick fix: Clean up SiteExtensions/build.cmd
- quote all rooted paths
- check `%ERRORLEVEL%` after every `CALL`
- nits:
- add a few more `ECHO` commands
- wrap long lines
* Quick fix: Ensure `$(BuildNative)` is always set correctly
- fix problems using `-all` or `/p:BuildAllProjects=true` without `-buildNative`
- ensure `$(BuildNative)` is `false` where it's not supported
- move some duplicated settings into eng/Common.props and `<Import />` the new file
- remove now-duplicated parts of conditions using `$(BuildNative)`
* Quick fix: Consistently use `--build-*`
- avoid `/p:Build*` on the command line (except with eng/scripts/ci-source-build.sh)
- nits:
- remove now-useless `-buildNative` with `-all`
- expand and correct a couple of related comments and messages
* Quick fix: Support `-all` together with `-projects`
- remove need to specify `/p:BuildAllProjects=true`
- nit: simplify some Boolean logic
* 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>