Update to latest build infrastructure
Rob Mensching committed
Mar 1, 2021 at 10:05 UTC
ead8def989c291fa8f9e31760fd2c7a815595481
7 files changed
+74
-32
.gitignore
+32
-11
@@ -13,6 +13,9 @@
13
# User-specific files (MonoDevelop/Xamarin Studio)
14
*.userprefs
15
16
+# Mono auto generated files
17
+mono_crash.*
18
+
19
# Build results
20
[Dd]ebug/
21
[Dd]ebugPublic/
@@ -20,12 +23,14 @@
23
[Rr]eleases/
24
x64/
25
x86/
26
+[Ww][Ii][Nn]32/
27
[Aa][Rr][Mm]/
28
[Aa][Rr][Mm]64/
29
bld/
30
[Bb]in/
31
[Oo]bj/
32
[Ll]og/
33
+[Ll]ogs/
34
35
# Visual Studio 2015/2017 cache/options directory
36
.vs/
@@ -39,9 +44,10 @@ Generated\ Files/
44
[Tt]est[Rr]esult*/
45
[Bb]uild[Ll]og.*
46
42
-# NUNIT
47
+# NUnit
48
*.VisualState.xml
49
TestResult.xml
50
+nunit-*.xml
51
52
# Build Results of an ATL Project
53
[Dd]ebugPS/
@@ -56,6 +62,9 @@ project.lock.json
62
project.fragment.lock.json
63
artifacts/
64
65
+# ASP.NET Scaffolding
66
+ScaffoldingReadMe.txt
67
+
68
# StyleCop
69
StyleCopReport.xml
70
@@ -122,9 +131,6 @@ _ReSharper*/
131
*.[Rr]e[Ss]harper
132
*.DotSettings.user
133
125
-# JustCode is a .NET coding add-in
126
-.JustCode
127
-
134
# TeamCity is a build add-in
135
_TeamCity*
136
@@ -135,6 +141,11 @@ _TeamCity*
141
.axoCover/*
142
!.axoCover/settings.json
143
144
+# Coverlet is a free, cross platform Code Coverage Tool
145
+coverage*.json
146
+coverage*.xml
147
+coverage*.info
148
+
149
# Visual Studio code coverage results
150
*.coverage
151
*.coveragexml
@@ -182,6 +193,8 @@ PublishScripts/
193
194
# NuGet Packages
195
*.nupkg
196
+# NuGet Symbol Packages
197
+*.snupkg
198
# The packages folder can be ignored because of Package Restore
199
**/[Pp]ackages/*
200
# except build/, which is used as an MSBuild target.
@@ -206,6 +219,8 @@ BundleArtifacts/
219
Package.StoreAssociation.xml
220
_pkginfo.txt
221
*.appx
222
+*.appxbundle
223
+*.appxupload
224
225
# Visual Studio cache files
226
# files ending in .cache can be ignored
@@ -231,8 +246,6 @@ orleans.codegen.cs
246
# Since there are multiple workflows, uncomment next line to ignore bower_components
247
# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
248
#bower_components/
234
-# ASP.NET Core default setup: bower directory is configured as wwwroot/lib/ and bower restore is true
235
-**/wwwroot/lib/
249
250
# RIA/Silverlight projects
251
Generated_Code/
@@ -257,6 +270,9 @@ ServiceFabricBackup/
270
*.bim.layout
271
*.bim_*.settings
272
*.rptproj.rsuser
273
+*- [Bb]ackup.rdl
274
+*- [Bb]ackup ([0-9]).rdl
275
+*- [Bb]ackup ([0-9][0-9]).rdl
276
277
# Microsoft Fakes
278
FakesAssemblies/
@@ -292,10 +308,6 @@ paket-files/
308
# FAKE - F# Make
309
.fake/
310
295
-# JetBrains Rider
296
-.idea/
297
-*.sln.iml
298
-
311
# CodeRush personal settings
312
.cr/personal
313
@@ -337,5 +349,14 @@ ASALocalRun/
349
# Local History for Visual Studio
350
.localhistory/
351
340
-# BeatPulse healthcheck temp database
352
+# BeatPulse healthcheck temp database
353
healthchecksdb
354
+
355
+# Backup folder for Package Reference Convert tool in Visual Studio 2017
356
+MigrationBackup/
357
+
358
+# Ionide (cross platform F# VS Code tools) working folder
359
+.ionide/
360
+
361
+# Fody - auto-generated XML schema
362
+FodyWeavers.xsd
appveyor.cmd
+11
-7
@@ -1,16 +1,20 @@
1
@setlocal
2
@pushd %~dp0
3
@set _P=%~dp0build\Release\publish
4
+@set _C=Release
5
+@if /i "%1"=="debug" set _C=Debug
6
5
-dotnet test -c Release src\test\WixToolsetTest.CoreIntegration || exit /b
6
-dotnet test -c Release src\test\WixToolsetTest.Core.Burn || exit /b
7
+:: Restore
8
+msbuild -p:Configuration=%_C% -t:Restore || exit /b
9
8
-dotnet pack -c Release src\WixToolset.Core || exit /b
9
-dotnet pack -c Release src\WixToolset.Core.Burn || exit /b
10
-dotnet pack -c Release src\WixToolset.Core.ExtensionCache || exit /b
11
-dotnet pack -c Release src\WixToolset.Core.WindowsInstaller || exit /b
10
+:: Build
11
+msbuild -p:Configuration=%_C% || exit /b
12
13
-dotnet pack -c Release src\WixToolset.Core.TestPackage || exit /b
13
+:: Test
14
+dotnet test -c %_C% --no-build || exit /b
15
+
16
+:: Pack
17
+msbuild -p:Configuration=%_C% -p:NoBuild=true -t:Pack || exit /b
18
19
@popd
20
@endlocal
appveyor.yml
+2
-4
@@ -21,8 +21,6 @@ environment:
21
build_script:
22
- appveyor.cmd
23
24
-test: off
25
-
24
pull_requests:
25
do_not_increment_build_number: true
26
@@ -35,8 +33,8 @@ skip_tags: true
33
artifacts:
34
- path: build\Release\**\*.nupkg
35
name: nuget
38
-- path: build\Release\**\*.msi
39
- name: msi
36
+- path: build\Release\**\*.snupkg
37
+ name: snupkg
38
39
notifications:
40
- provider: Slack
src/Directory.Build.props
+1
-3
@@ -22,8 +22,6 @@
22
<Product>WiX Toolset</Product>
23
</PropertyGroup>
24
25
- <Import Project="CSharp.Build.props" Condition=" '$(MSBuildProjectExtension)'=='.csproj' and Exists('CSharp.Build.props') " />
26
- <Import Project="Cpp.Build.props" Condition=" Exists('Cpp.Build.props') And '$(MSBuildProjectExtension)'=='.vcxproj' " />
27
- <Import Project="Wix.Build.props" Condition=" Exists('Wix.Build.props') And '$(MSBuildProjectExtension)'=='.wixproj' " />
25
+ <Import Project="Directory$(MSBuildProjectExtension).props" Condition=" Exists('Directory$(MSBuildProjectExtension).props') " />
26
<Import Project="Custom.Build.props" Condition=" Exists('Custom.Build.props') " />
27
</Project>
src/Directory.Build.targets
+2
-7
@@ -9,11 +9,6 @@
9
See the original here: https://github.com/dotnet/sdk/issues/1151#issuecomment-385133284
10
-->
11
<Project>
12
- <PropertyGroup>
13
- <CreateDocumentation Condition=" '$(CreateDocumentationFile)'!='true' ">false</CreateDocumentation>
14
- <DocumentationFile Condition=" '$(CreateDocumentationFile)'=='true' ">$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
15
- </PropertyGroup>
16
-
12
<PropertyGroup>
13
<ReplacePackageReferences>true</ReplacePackageReferences>
14
<TheSolutionPath Condition=" '$(NCrunch)'=='' ">$(SolutionPath)</TheSolutionPath>
@@ -45,12 +40,12 @@
40
<ProjectReference Include="@(PackageInSolution->'$(SmartSolutionDir)\%(SmartPath)' )"/>
41
42
<!-- Remove the package references that are now referenced as projects -->
48
- <PackageReference Remove="@(PackageInSolution->'%(PackageName)' )"/>
43
+ <PackageReference Remove="@(PackageInSolution->'%(PackageName)')"/>
44
</ItemGroup>
45
46
</When>
47
</Choose>
48
54
- <Import Project="Wix.Build.targets" Condition=" Exists('Wix.Build.targets') And '$(MSBuildProjectExtension)'=='.wixproj' " />
49
+ <Import Project="Directory$(MSBuildProjectExtension).targets" Condition=" Exists('Directory$(MSBuildProjectExtension).targets') " />
50
<Import Project="Custom.Build.targets" Condition=" Exists('Custom.Build.targets') " />
51
</Project>
src/Directory.csproj.props
renamed
src/Directory.csproj.targets
new
+26
@@ -0,0 +1,26 @@
1
+<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
2
+<!--
3
+ Do NOT modify this file. Update the canonical version in Home\repo-template\src\Directory.csproj.targets
4
+ then update all of the repos.
5
+-->
6
+<Project>
7
+ <PropertyGroup>
8
+ <CreateDocumentation Condition=" '$(CreateDocumentationFile)'!='true' ">false</CreateDocumentation>
9
+ <DocumentationFile Condition=" '$(CreateDocumentationFile)'=='true' ">$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
10
+ </PropertyGroup>
11
+
12
+ <Target Name="SetNuspecProperties" DependsOnTargets="InitializeSourceControlInformation" AfterTargets="GetBuildVersion"
13
+ Condition=" Exists('$(MSBuildProjectName).nuspec') ">
14
+ <PropertyGroup>
15
+ <ProjectUrl Condition=" '$(ProjectUrl)'=='' and '$(PrivateRepositoryUrl)'!='' ">$(PrivateRepositoryUrl.Replace('.git',''))</ProjectUrl>
16
+
17
+ <NuspecFile>$(MSBuildProjectName).nuspec</NuspecFile>
18
+ <NuspecBasePath Condition=" '$(NuspecBasePath)'=='' ">$(OutputPath)..\</NuspecBasePath>
19
+ <NuspecProperties>$(NuspecProperties);Id=$(PackageId);Authors=$(Authors);Copyright=$(Copyright);Description=$(Description);Title=$(Title)</NuspecProperties>
20
+ <NuspecProperties>$(NuspecProperties);Version=$(PackageVersion);RepositoryCommit=$(SourceRevisionId);RepositoryType=$(RepositoryType);RepositoryUrl=$(PrivateRepositoryUrl);ProjectFolder=$(MSBuildProjectDirectory)\;ProjectUrl=$(ProjectUrl)</NuspecProperties>
21
+ <PublishRepositoryUrl>true</PublishRepositoryUrl>
22
+ <SymbolPackageFormat>snupkg</SymbolPackageFormat>
23
+ </PropertyGroup>
24
+ </Target>
25
+
26
+</Project>