Commit Graph

216 Commits

Author SHA1 Message Date
Nate McMaster b0b65a530a
Support using Internal.AspNetCore.Sdk as an MSBuild SDK (#1452)
* Add Microsoft.AspNetCore.BuildTools.ApiCheck as an external dependency
* Move the global.json files temporarily to avoid loading the wrong version of Internal.AspNetCore.Sdk
2018-10-04 11:07:06 -07:00
Nate McMaster ae3cdb304e
Merge branch 'release/2.2' 2018-08-10 10:13:35 -07:00
Nate McMaster 555f10b5f9
Fix #650 - remove the BuildGraphOf property (#1302) 2018-08-10 09:42:43 -07:00
Nate McMaster 68fd26a46b
Merge branch 'release/2.2' 2018-07-25 11:19:21 -07:00
Nate McMaster 2e96271e69
Merge branch 'release/2.1' into release/2.2 2018-07-25 09:29:48 -07:00
Nate McMaster e69a47f230
Implement patch policies per repo and set default to ProductChangesOnly
Our policy since 1.0.0 has been to always cascade version updates in the packages we own. e.g. if Logging has a product change in 2.1.x, then Kestrel, EF Core, Mvc, etc also re-ship with the updated Logging dependency. This has been done for a variety of reasons:

* NuGet does not show updates for transitive dependencies, only direct ones
* NuGet does resolves the lowest compatible transitive dependencies
* ASP.NET Core ships to both .NET Framework (where transitive dependency version matters) and .NET Core (where it matters less if you use the shared framework)

While transitive dependencies is still an important scenario, this practice of always patching has led to bigger issues.

* High probability users will unintentionally upgrade out of the shared framework: #3307
* Conflicts with metapackages that attempt to use exact version constraints: aspnet/Universe#1180
* A quality perception issue: the high volume of new versions in servicing updates with only metadata changes has created the impression that new versions of packages may not be very important. It's also made it appear like there are more issues product than there really are.
* High volume of packages changing with only metadata changes. Of the last 301 packages published in a servicing update, only 11 contained actual changes to the implementation assemblies. (3.5%)

This change implements a system to verify a new, non-cascading versioning policy for servicing updates. This required changes to repos to pin version variables to that matter per-repo,
and to remove some of the restrictions and checks.

Incidentally, this should make defining new patches easier because it automatically determines which packages are or are not patching in the release.
2018-07-12 21:33:50 -07:00
Nate McMaster 1aa529ddf6
Merge branch 'release/2.2' 2018-07-10 16:22:44 -07:00
Nate McMaster 9276602279
Merge branch 'release/2.1' into release/2.2 2018-07-06 13:43:43 -07:00
Nate McMaster bf03fee4be
Refactor LZMA generation to support Docker and Antares usage
List explicitly as .csproj files the scenarios for which the offline package cache is important

Produces new artifacts designed for various scenarios, such as:
 * Docker (where xml doc files are not needed)
 * Azure web apps (where 1.x SDKs must still be supported, but xml docs are not needed)
2018-07-06 13:15:23 -07:00
Ryan Brandenburg 5b0f8118ea
Upgrade to .NET Core 3.0.0-preview1-26629-04 (#1240)
* Upgrade to .NET Core 3.0.0-preview1-26629-04
2018-06-29 16:27:55 -07:00
John Luo 1b0781cf20 Merge branch 'release/2.1' into dev 2018-06-27 16:54:10 -07:00
Nate McMaster 6b8aac13e0
Prepare infrastructure for the 2.1.3 patch 2018-06-27 14:51:05 -07:00
Nate McMaster e4e3551a1e
Prepare 2.1.2 patch 2018-06-12 15:18:36 -07:00
Nate McMaster 2a63b00218
Remove dependency on PreinstallBundledPackages target 2018-06-05 18:15:39 -07:00
Nate McMaster 451c7036a6
Merge branch 'release/2.1' into dev 2018-06-04 13:05:46 -07:00
Nate McMaster ca4e81b975
Merge branch 'release/2.0' into release/2.1 2018-06-01 17:08:08 -07:00
Nate McMaster a39e0b8d6d
Merge branch 'release/2.1' into dev 2018-05-30 17:43:42 -07:00
Nate McMaster da8ca36fe8
Pin to stable 2.1.0 corefx packages (#1188)
* Pin to stable 2.1.0 corefx packages
* Ensures ProdCon overrides passed to us match our expectations about which variables will be set
2018-05-30 13:42:36 -07:00
Nate McMaster 71fb3b2f6a
Fix version coherence check to filter out non-package artifacts 2018-05-30 11:34:03 -07:00
Nate McMaster faf600ce71
Fixup the effect of cascading versions (#1187)
The PR #1175 was incomplete. This fixes the cascading effect of patching to 2.1.1

Changes:
 - add CheckRepoGraph (ported directly from the release/2.0 branch)
 - Update submodules
2018-05-30 10:58:10 -07:00
Nate McMaster 6beb419a02 Upgrade metapackages, shared framework, and installers to netcoreapp2.2 2018-05-09 11:51:06 -07:00
Nate McMaster 695bf56afc
Run VerifyCoherentVersions check (#1156)
All packages were being ignored. This adds an error if 0 packages are found, and also fixes the folder scanned for coherence.

This also required removing the 'Private' designation from external dependencies, because we no longer scan just shipping packages,

Removed unused NoWarn metadata as well.
2018-05-08 16:51:26 -07:00
Nate McMaster 1c59b85c9a
Run PreinstallBundledPackages 2018-05-02 10:37:24 -07:00
Ryan Brandenburg adccac3591 Fix GetArtifactInfo 2018-04-18 18:00:24 -07:00
Nate McMaster 68a122b16c
Merge branch 'release/2.1' into dev 2018-04-09 09:54:00 -07:00
Nate McMaster 6c79085b10
Use PackageVersion to define version of the LineupPackage 2018-04-06 11:27:10 -07:00
Nate McMaster 9f7e295af8
Add task to generate the repo to repo graph (#1036) 2018-04-05 13:24:49 -07:00
Pavel Krymets f828c9d6aa
Merge release/2.1 into dev (#1030) 2018-04-03 10:45:17 -07:00
Nate McMaster cad2b01dae
Hard-code the repo-to-repo build order on macOS and Linux (#1028)
Workaround for #1014
2018-04-02 15:31:45 -07:00
Nate McMaster d94db644e3
Backport: separate list of dependency versions and dependency items, and stop issuing KRB4002 on duplicates 2018-03-27 10:06:56 -07:00
Nate McMaster 7fffc939cf
Backport: consolidate list of myget feeds to one place and remove the need to mirror packages 2018-03-27 09:03:44 -07:00
Nate McMaster 2efb163714
Generate branding.g.props for use in downstream builds that need to align version information 2018-03-26 16:14:30 -07:00
Nate McMaster eb5b94e3c4
Make consistent variable names for RestoreSourcePropsPath 2018-03-26 16:03:09 -07:00
Nate McMaster 2dbb33d316
Update to build tools 2.0.7-rtm-10025 and remove custom DownloadNuGetPackages task in favor of the one in build tools 2018-03-26 11:53:34 -07:00
Nate McMaster 0f765534cb
Remove duplicate copies of files from artifact output 2018-03-23 16:37:40 -07:00
Nate McMaster 6eb4b0ecfb
Prepare the 2.0.7 patch 2018-03-22 10:08:30 -07:00
Nate McMaster 6c54d51390
Ensure repos have a NuGetPackageVerifier file (#980) 2018-03-21 12:39:51 -07:00
Nate McMaster 349acb5bb3
Condense restore feed configuration to single location and remove package mirroring (#945) 2018-03-13 10:56:09 -07:00
Nate McMaster 4dcb3f4ce9
Don't set version variables in a ProdCon build that we expect from PackageVersions.props (#924) 2018-02-27 15:50:17 -08:00
Nate McMaster 06e225dc9f
Better error for when you forget to clone submodules 2018-02-16 10:55:37 -08:00
John Luo b90e74cd10 Merge branch 'release/2.1' into dev 2018-02-13 14:29:11 -08:00
John Luo 84aee6be39 Feedback 2018-02-13 14:18:37 -08:00
= 6c4f043136 Include SignalR packages in .App/.All 2018-02-13 14:14:17 -08:00
= a7676ddaf4 Include SignalR packages in .App/.All 2018-02-09 15:11:38 -08:00
Pavel Krymets 4040cb9638
Create all directories and make it by default (#862) 2018-02-08 11:39:09 -08:00
Nate McMaster 0b2f053ad8 Fix #785 - publish nuget packages and the shared runtime at the same time 2018-02-07 14:40:08 -08:00
John Luo f15d0f7567 Merge branch 'release/2.1' into dev 2018-02-06 09:46:09 -08:00
= 0ec2bd4e76 Add .App to LZMA
- Use metapackage version for .App in archiver project
2018-02-06 09:44:04 -08:00
John Luo 1c31731d89 Merge branch 'release/2.1' into dev 2018-02-01 15:01:46 -08:00
John Luo e4e837fa24 Flatten dependencies of Microsoft.AspNetCore.All metapackage
Remove BrowserLink from Microsoft.AspNetCore.App
Remove version locking in .All metapackage
2018-02-01 11:51:27 -08:00
Ryan Brandenburg 18575e8879 Run more checks on Universe PRs 2018-01-30 13:03:42 -08:00
Nate McMaster 5fae89b962
Update versions to include prodcon build id (#819)
* Update versions to include prodcon build id
* Ensure version metadata does not appear in the package version
* Update build tools
2018-01-30 10:38:09 -08:00
Nate McMaster baa665db81
Include global CLI tool packages in the LZMA (#809)
Fixes #803
2018-01-25 18:04:40 -08:00
Pranav K 13cf9f76bd Add support for building Microsoft.AspNetCore.Analyzers metapackage 2018-01-22 13:54:50 -08:00
= 564e049ae9 Build Microsoft.AspNetCore.App
- Produce .App and .All metapackages and shared frameworks
2018-01-19 11:32:30 -08:00
Nate McMaster df31235288 Ensure the required 2.0.x runtime is installed 2018-01-19 11:12:16 -08:00
Nate McMaster 230e4a02ef
Split compilation and tests into separate phases (#779)
* Split compilation and tests into separate phases
* Ensure template tests are skipped, and reduce duplication between test/build repo targets
* Show summary at the end of which repos failed
2018-01-12 09:46:36 -08:00
Nate McMaster 5214c9382b
Run some verification checks on PRs and add early errors for bad PackageArtifact config (#771) 2018-01-11 10:30:57 -08:00
Nate McMaster a54852fe6e Add targets to deploy all known installers to an azure blob feed
- Add PublishToAzureBlob task
 - Move badge/version txt file generation to publish step
2018-01-08 18:23:24 -08:00
= 83d26d660e Remove runtime store related build steps 2018-01-08 11:51:04 -08:00
= 0554b12109 Delay building metapackage to after runtime store generation
Wait for all manifests to be generated
2018-01-08 11:13:16 -08:00
Nate McMaster 997e31805b Update dependencies 2018-01-08 11:12:07 -08:00
Nate McMaster 49c952a035 Update build tools to 2.0.3-rtm-10005 2018-01-08 11:10:45 -08:00
Nate McMaster af88d38cf7 Update to build tools 2.1.0-preview1-15651 2017-12-28 16:17:15 -08:00
Nate McMaster ababb64d51 Change output of sharedfx build to match feed layout
- Upgrade build tools
- Produce an SVG badge for the sharedfx
- Produce the 'latest.aspnetcore.version' file for the dotnet-install.ps1/sh downloader script
- Change layout of output for sharefx build
- Use KoreBuild's bundled package folder for internal build tools packages
2017-12-27 11:12:02 -08:00
Pavel Krymets ee8d0f30eb
Add AzureIntegration.targets (#722) 2017-12-20 08:52:30 -08:00
Nate McMaster bc804863a2
Don't import the external package props file into the module build context (#711) 2017-12-13 12:14:19 -08:00
Nate McMaster 88e66f2b21 Prepare the 2.0.5 patch and add task to ensure repo versions cascade 2017-12-07 22:52:46 -08:00
Nate McMaster 0ade3698b4 Identify the difference between skipped and shipped repositories 2017-12-07 22:36:44 -08:00
John Luo e0daa126e2 Produce aspnetcore shared framework 2017-12-05 12:15:30 -08:00
Pranav K 3a76af803a Rename the parameter used to specify additional sources to avoid conflating with DotNetRestoreSources used in projects 2017-12-01 16:04:01 -08:00
Pranav K ba5ab12e9f Downgrade to CoreFx version with signed binaries
Install shared runtimes required for builds to work
2017-11-29 12:16:19 -08:00
Pranav K 12e6e99d92 Add support for restore sources and package version props url
Fixes #654
Fixes #656
2017-11-28 11:54:09 -08:00
Pranav K 8c357435c9 Remove Sign target from being called 2017-11-22 13:33:43 -08:00
Pranav K 7dccc8a4aa Remove SignType checks 2017-11-22 12:50:12 -08:00
Pranav K db8adaf5b7 Remove uses of aspnetcore-ci-dev 2017-11-22 09:28:47 -08:00
Nate McMaster e860022e1a Remove references to aspnetcore-ci-dev and fix properties in PackageArchive targets 2017-11-22 08:31:19 -08:00
Nate McMaster 4ecabacc76
Create an initial implementation of the secret manager for VS (#355) 2017-11-21 14:16:39 -08:00
Nate McMaster 3113d9573c Stop modifying the NuGet.config file during build 2017-11-21 08:42:30 -08:00
Nate McMaster fac246e67c
Add support for PB_SkipTests and PB_SignType variables (#646) 2017-11-13 12:27:01 -08:00
Nate McMaster a24bed01d7 Identify the difference between skipped and shipped repositories 2017-11-10 13:46:25 -08:00
Nate McMaster ee5178160e Account for .Sources packages when computing the repo graph 2017-11-09 14:08:13 -08:00
Nate McMaster 3d88b10b73 Merge branch 'dev' into namc/merge-rel-2.0.3 2017-11-09 11:27:02 -08:00
Nate McMaster 476a383539
Add mirrored artifacts to restore sources for repo builds 2017-11-09 10:33:04 -08:00
Nate McMaster 7ebdee8667 Update thet list of external dependencies 2017-11-08 16:57:57 -08:00
Nate McMaster dae1f1ce78 Merge branch 'rel/2.0.3' into dev 2017-11-08 16:31:07 -08:00
Nate McMaster 7c0d83e7ff
Stop producing PackageLineup and remove obsolete code (#628) 2017-11-03 16:20:29 -07:00
Nate McMaster cccfe3dd57
Use submodules for source dependencies (#621)
As a part of making builds more reproducible, we want to start committing the exact sha of source dependencies used to build aspnetcore. This implements that using git submodules, and removes targets that were previously used to clone source on demand.

Initial submodule status:

Antiforgery => e1884586
AzureIntegration => c998d74e
BasicMiddleware => 9f3ed006
BrowserLink => 7e2ff85a
Caching => c6a9cbbe
Common => 062ad3e7
CORS => 8fd36866
DataProtection => 49b2e22a
DependencyInjection => 88297e3c
Diagnostics => 7ac0e06a
DotNet=>ols => 1836201b
EntityFrameworkCore => e70d7dae
EventNotification => 3f881f18
FileSystem => 51e14a62
Hosting => 82ccf4f0
HtmlAbstractions => d687617a
HttpAbstractions => c0f93723
HttpSysServer => 02331040
Identity => 52dfb021
JavaScriptServices => e583a17e
JsonPatch => e453fafa
KestrelHttpServer => 0c34523e
Logging => e8e3e707
MetaPackages => d63542ca
Mvc => 2e4bc548
Razor => 6c7551d9
Routing => bb413c6a
Security => 88cb3df0
SignalR => 2419867d

[auto-updated: submodules]
2017-11-01 13:03:46 -07:00
Nate McMaster e91af13a7d Generate the PackageVersionProps file and put it in the lineup package 2017-10-23 15:00:53 -07:00
= a4e87d1dd8 Build runtime store installers
- hosting tar.gz archives
- rpm installers for generic and red hat
- deb installers for debian.8, ubuntu 14.04, ubuntu 16.04, ubuntu 16.10

Create hosting targz archives
2017-10-13 17:00:46 -07:00
Nate McMaster 446de15f0b Add aspnet/Templating to the universe build 2017-10-12 18:02:16 -07:00
John Luo afba40b573 Build LZMA
- Update metapackage reference insertion
2017-10-11 16:11:12 -07:00
Nate McMaster c8068b7d1c Use submodules for source dependencies
As a part of making builds more reproducible, we want to start committing the exact sha of source dependencies used to build aspnetcore. This implements that using git submodules, and removes targets that were previously used to clone source on demand.
2017-10-11 15:48:50 -07:00
Nate McMaster c76125af0e Add previously-built aspnetcore artifacts as external dependencies 2017-10-09 12:55:14 -07:00
Nate McMaster 869d762641 Copy symbol packages to artifacts/symbols 2017-10-09 12:27:41 -07:00
Nate McMaster 611b6a23ad Update how PackageReference versions are set
Changes:
 - Remove floating versions
 - Disable myget feeds during a Universe build
 - Use package-specific MSBuild variables. Pattern = `packageId.Pascalize() + "PackageVersion"`, with a few exceptions.
 - Remove myget feeds during build
 - Remove obsolete 'GenerateLineup' targets/tasks
2017-10-09 11:32:21 -07:00
Nate McMaster 2b6989bc09 Add /t:Push 2017-10-04 11:24:40 -07:00
John Luo 8cba694aa4 Build all metapackage before split packages 2017-10-02 16:48:09 -07:00
= 11b25e7c87 Build and pack Runtime Store
- Also add targets to build all metapackage.
2017-10-02 16:43:30 -07:00
Nate McMaster 372be2f638 Generate and set DotNetRestoreSourcePropsPath 2017-10-02 14:12:41 -07:00