-
Notifications
You must be signed in to change notification settings - Fork 0
/
buildAll.proj
90 lines (74 loc) · 3.89 KB
/
buildAll.proj
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" DefaultTargets="RebuildAll" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="properties\service_fabric_common.props" />
<Import Project="properties\service_fabric_managed_netstandard.targets" />
<Import Project="properties\service_fabric_managed_netframework.targets" />
<Import Project="properties\service_fabric_nuget.targets" />
<PropertyGroup>
<CurrentDir>$(MSBuildThisFileDirectory)</CurrentDir>
</PropertyGroup>
<!--Targets which can be invoked from Build.ps1-->
<Target Name="RebuildAll" DependsOnTargets="BuildCode;GeneratePackages">
<Message Text="SUCCESS! Generated binaries and packages are dropped at $(CurrentDir)drop\$(Configuration)" Importance="High"/>
</Target>
<Target Name="BuildAll" DependsOnTargets="RestorePackagesProd;RestorePackagesTest;BuildProd;BuildTest;CopyProdBinaries;GenerateNugetPackages">
<Message Text="SUCCESS! Generated binaries and packages are dropped at $(CurrentDir)drop\$(Configuration)" Importance="High"/>
</Target>
<!-- Builds code, this target doesn't generates nuget packages. -->
<Target Name="BuildCode" DependsOnTargets="RestorePackagesProd;RestorePackagesTest;CleanAll;BuildProd;BuildTest;CopyProdBinaries">
<Message Text="SUCCESS! Generated binaries are dropped at $(CurrentDir)drop\$(Configuration)" Importance="High"/>
</Target>
<!-- Generates nuget packages from the build, this target doesn't builds code, build must have been done before invoking this target.
This allows signing of binaires after build and consuming them in nuget packages. -->
<Target Name="GeneratePackages" DependsOnTargets="GenerateNugetPackages">
<Message Text="SUCCESS! Generated binaries and packages are dropped at $(CurrentDir)drop\$(Configuration)" Importance="High"/>
</Target>
<!-- Targets to Restore packages and project tools -->
<Target Name="RestorePackagesProd">
<CallTarget Targets="RestoreProd_netframework;RestoreProd_netstandard;" />
</Target>
<Target Name="RestorePackagesTest">
<CallTarget Targets="RestoreTest_netframework" />
</Target>
<!--Target for building product code. -->
<Target Name="BuildProd">
<Message Text="Building all projects ..." Importance="High"/>
<CallTarget Targets="BuildProd_netframework;BuildProd_netstandard;" />
</Target>
<!--Target for copying product binaries to drop. -->
<Target Name="CopyProdBinaries">
<Message Text="Copying binaries to drop folder ..." Importance="High"/>
<CallTarget Targets="CopyProdBinaries_netframework;CopyProdBinaries_netstandard;" />
</Target>
<!--Target for generating nuget packages. -->
<Target Name="GenerateNugetPackages">
<CallTarget Targets="GenerateNugetPackages_Prod" />
</Target>
<!--Target for building test code. -->
<Target Name="BuildTest">
<Message Text="Building all test projects ..." Importance="High"/>
<CallTarget Targets="BuildTest_netframework" />
</Target>
<!--Targets for cleaning product and test code. -->
<!--
This target can be used to clean all of the projects before you build them.
It will also delete any dll & exe files located in the the DestinationFolder folder.
-->
<Target Name="CleanAll">
<Message Text="Cleaning drop folder ..."/>
<!-- Delete any files this process may have created from a previous execution -->
<CreateItem Include="$(CurrentDir)\drop\**\*">
<Output ItemName="GeneratedFiles" TaskParameter="Include"/>
</CreateItem>
<Delete Files="@(GeneratedFiles)"/>
<RemoveDir Directories="$(CurrentDir)\drop"/>
<Message Text="Cleaning all projects ..."/>
<CallTarget Targets="CleanProd;CleanTest" />
</Target>
<Target Name="CleanProd">
<CallTarget Targets="CleanProd_netframework;CleanProd_netstandard" />
</Target>
<Target Name="CleanTest">
<CallTarget Targets="CleanTest_netframework" />
</Target>
</Project>