Skip to content

Commit

Permalink
Build using Arcade
Browse files Browse the repository at this point in the history
Notes for Muggles:

- `build` only compiles by default. Add `-test` to run tests and `-pack` to get nupkgs
- Dependency versions are now in `eng/Versions.props`
- No more API Check, *.baselines.json, or *.breakingchanges.json
- No more NuGet package verifier
- Nightly builds are now published to https://dotnetfeed.blob.core.windows.net/dotnet-core/index.json

Fixes #12537, resolves #14025, resolves dotnet/arcade#1051, resolves dotnet/arcade#1052, resolves dotnet/arcade#1053, resolves dotnet/arcade#1054
  • Loading branch information
bricelam committed Dec 19, 2018
1 parent 2f07f47 commit 10780cd
Show file tree
Hide file tree
Showing 126 changed files with 4,628 additions and 102,170 deletions.
83 changes: 64 additions & 19 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
/.build/
/global.json
QueryBaseline.cs

## Ignore Visual Studio temporary files, build results, and
Expand All @@ -8,13 +6,11 @@ QueryBaseline.cs
## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore

# User-specific files
*.rsuser
*.suo
*.user
*.userosscache
*.sln.docstates
*.user.sln*
/test.ps1
*.stackdump

# User-specific files (MonoDevelop/Xamarin Studio)
*.userprefs
Expand All @@ -26,18 +22,20 @@ QueryBaseline.cs
[Rr]eleases/
x64/
x86/
[Aa][Rr][Mm]/
[Aa][Rr][Mm]64/
bld/
[Bb]in/
[Oo]bj/
[Ll]og/

# Visual Studio 2015 cache/options directory
# Visual Studio 2015/2017 cache/options directory
.vs/
# Uncomment if you have tasks that create the project's static files in wwwroot
#wwwroot/

# BenchmarkDotNet Results
[Bb]enchmarkDotNet.Artifacts/
# Visual Studio 2017 auto generated files
Generated\ Files/

# MSTest test Results
[Tt]est[Rr]esult*/
Expand All @@ -52,20 +50,29 @@ TestResult.xml
[Rr]eleasePS/
dlldata.c

# Benchmark Results
BenchmarkDotNet.Artifacts/

# .NET Core
project.lock.json
project.fragment.lock.json
artifacts/
**/Properties/launchSettings.json
.dotnet/

# StyleCop
StyleCopReport.xml

# Files built by Visual Studio
*_i.c
*_p.c
*_i.h
*_h.h
*.ilk
*.meta
*.obj
*.iobj
*.pch
*.pdb
*.ipdb
*.pgc
*.pgd
*.rsp
Expand All @@ -75,6 +82,7 @@ artifacts/
*.tlh
*.tmp
*.tmp_proj
*_wpftmp.csproj
*.log
*.vspscc
*.vssscc
Expand Down Expand Up @@ -103,6 +111,9 @@ ipch/
*.vspx
*.sap

# Visual Studio Trace Files
*.e2e

# TFS 2012 Local Workspace
$tf/

Expand All @@ -123,6 +134,10 @@ _TeamCity*
# DotCover is a Code Coverage Tool
*.dotCover

# AxoCover is a Code Coverage Tool
.axoCover/*
!.axoCover/settings.json

# Visual Studio code coverage results
*.coverage
*.coveragexml
Expand Down Expand Up @@ -158,7 +173,7 @@ publish/
# Publish Web Output
*.[Pp]ublish.xml
*.azurePubxml
# TODO: Comment the next line if you want to checkin your web deploy settings
# Note: Comment the next line if you want to checkin your web deploy settings,
# but database connection strings (with potential passwords) will be unencrypted
*.pubxml
*.publishproj
Expand All @@ -170,12 +185,13 @@ PublishScripts/

# NuGet Packages
*.nupkg
.packages/
# The packages folder can be ignored because of Package Restore
**/packages/*
**/[Pp]ackages/*
# except build/, which is used as an MSBuild target.
!**/packages/build/
!**/[Pp]ackages/build/
# Uncomment if necessary however generally it will be regenerated when needed
#!**/packages/repositories.config
#!**/[Pp]ackages/repositories.config
# NuGet v3's project.json files produces more ignorable files
*.nuget.props
*.nuget.targets
Expand All @@ -193,6 +209,7 @@ AppPackages/
BundleArtifacts/
Package.StoreAssociation.xml
_pkginfo.txt
*.appx

# Visual Studio cache files
# files ending in .cache can be ignored
Expand All @@ -211,9 +228,15 @@ ClientBin/
*.publishsettings
orleans.codegen.cs

# Including strong name files can present a security risk
# (https://github.com/github/gitignore/pull/2483#issue-259490424)
#*.snk

# Since there are multiple workflows, uncomment next line to ignore bower_components
# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
#bower_components/
# ASP.NET Core default setup: bower directory is configured as wwwroot/lib/ and bower restore is true
**/wwwroot/lib/

# RIA/Silverlight projects
Generated_Code/
Expand All @@ -225,15 +248,19 @@ _UpgradeReport_Files/
Backup*/
UpgradeLog*.XML
UpgradeLog*.htm
ServiceFabricBackup/
*.rptproj.bak

# SQL Server files
*.mdf
*.ldf
*.ndf

# Business Intelligence projects
*.rdl.data
*.bim.layout
*.bim_*.settings
*.rptproj.rsuser

# Microsoft Fakes
FakesAssemblies/
Expand All @@ -245,9 +272,6 @@ FakesAssemblies/
.ntvs_analysis.dat
node_modules/

# Typescript v1 declaration files
typings/

# Visual Studio 6 build log
*.plg

Expand Down Expand Up @@ -276,8 +300,8 @@ paket-files/
.idea/
*.sln.iml

# CodeRush
.cr/
# CodeRush personal settings
.cr/personal

# Python Tools for Visual Studio (PTVS)
__pycache__/
Expand All @@ -287,6 +311,9 @@ __pycache__/
# tools/**
# !tools/packages.config

# Tabs Studio
*.tss

# Telerik's JustMock configuration file
*.jmconfig

Expand All @@ -295,3 +322,21 @@ __pycache__/
*.btm.cs
*.odx.cs
*.xsd.cs

# OpenCover UI analysis results
OpenCover/

# Azure Stream Analytics local run output
ASALocalRun/

# MSBuild Binary and Structured Log
*.binlog

# NVidia Nsight GPU debugger configuration file
*.nvuser

# MFractors (Xamarin productivity tool) working folder
.mfractor/

# Local History for Visual Studio
.localhistory/
29 changes: 18 additions & 11 deletions Directory.Build.props
Original file line number Diff line number Diff line change
@@ -1,23 +1,30 @@
<Project>
<Project>
<!-- HACK: Our test projects don't match Arcade's conventions -->
<PropertyGroup Condition="'$(IsUnitTestProject)' == ''">
<IsUnitTestProject Condition="$(MSBuildProjectName.EndsWith('.FunctionalTests'))">True</IsUnitTestProject>
</PropertyGroup>

<Import Project="Sdk.props" Sdk="Microsoft.DotNet.Arcade.Sdk" />

<Import
Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), AspNetCoreSettings.props))\AspNetCoreSettings.props"
Condition=" '$(CI)' != 'true' AND '$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), AspNetCoreSettings.props))' != '' " />

<Import Project="version.props" />
<Import Project="build\dependencies.props" />
<Import Project="build\sources.props" />

<PropertyGroup>
<AssemblyOriginatorKeyFile>$(MSBuildThisFileDirectory)build\Key.snk</AssemblyOriginatorKeyFile>
<StrongNameKeyId>MicrosoftAspNetCore</StrongNameKeyId>
<PackageTags>Entity Framework Core;entity-framework-core;EF;Data;O/RM;EntityFramework;EntityFrameworkCore;EFCore</PackageTags>
<Product>Microsoft Entity Framework Core</Product>
<RepositoryType>git</RepositoryType>
<RepositoryRoot>$(MSBuildThisFileDirectory)</RepositoryRoot>
<RepositoryUrl>https://github.com/aspnet/EntityFrameworkCore</RepositoryUrl>
<SignAssembly>True</SignAssembly>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
<LangVersion>7.2</LangVersion>
<NoWarn>$(NoWarn);CS1591;CA1032;CA1034;CA1052;CA1063;CA1815;CA1819;CA1822;CA2231</NoWarn>
<DebugType>portable</DebugType>
<PackageLicenseUrl>https://raw.githubusercontent.com/aspnet/AspNetCore/2.0.0/LICENSE.txt</PackageLicenseUrl>
<PackageIconUrl>https://go.microsoft.com/fwlink/?LinkID=288859</PackageIconUrl>
<PackageProjectUrl>https://docs.microsoft.com/ef/core/</PackageProjectUrl>
</PropertyGroup>

<!-- HACK: Work around dotnet/arcade#1373 -->
<PropertyGroup>
<NoWarn>$(NoWarn);NU5125</NoWarn>
</PropertyGroup>

<ItemGroup>
Expand Down
8 changes: 2 additions & 6 deletions Directory.Build.targets
Original file line number Diff line number Diff line change
@@ -1,9 +1,5 @@
<Project>
<PropertyGroup Condition=" '$(TargetLatestDotNetRuntime)' != 'false' ">
<!-- Assign these values at the end of the project after TargetFramework has been assigned. TargetFramework is not assigned yet in Directory.Build.props. -->
<RuntimeFrameworkVersion Condition=" '$(TargetFramework)' == 'netcoreapp2.0' ">$(MicrosoftNETCoreApp20PackageVersion)</RuntimeFrameworkVersion>
<RuntimeFrameworkVersion Condition=" '$(TargetFramework)' == 'netcoreapp3.0' ">$(MicrosoftNETCoreAppPackageVersion)</RuntimeFrameworkVersion>
</PropertyGroup>
<Project>
<Import Project="Sdk.targets" Sdk="Microsoft.DotNet.Arcade.Sdk" />

<!-- This is required to workaround overlap between System.Collections.Generic.IAsyncEnumerable in System.Runtime and System.Interactive.Async. -->
<Target Name="AddAssemblyAliasToReactiveAsync"
Expand Down
5 changes: 0 additions & 5 deletions EFCore.Cosmos.sln.DotSettings

This file was deleted.

5 changes: 0 additions & 5 deletions EFCore.Runtime.sln.DotSettings

This file was deleted.

Loading

0 comments on commit 10780cd

Please sign in to comment.