diff options
author | Rob Mensching <rob@firegiant.com> | 2021-04-26 11:31:05 -0700 |
---|---|---|
committer | Rob Mensching <rob@firegiant.com> | 2021-05-11 11:14:01 -0700 |
commit | df016066100df955d5ff98811e113fb2b1bd4b8a (patch) | |
tree | a27b35a3651ca7b1d8c4bb7c7483ec2f92583e08 /src/internal/SetBuildNumber/SetBuildNumber.proj | |
parent | dc6022da6cdbb9d7ca54c4a36485ceead07feaaf (diff) | |
download | wix-df016066100df955d5ff98811e113fb2b1bd4b8a.tar.gz wix-df016066100df955d5ff98811e113fb2b1bd4b8a.tar.bz2 wix-df016066100df955d5ff98811e113fb2b1bd4b8a.zip |
Implement integrated build process
Diffstat (limited to 'src/internal/SetBuildNumber/SetBuildNumber.proj')
-rw-r--r-- | src/internal/SetBuildNumber/SetBuildNumber.proj | 96 |
1 files changed, 96 insertions, 0 deletions
diff --git a/src/internal/SetBuildNumber/SetBuildNumber.proj b/src/internal/SetBuildNumber/SetBuildNumber.proj new file mode 100644 index 00000000..e0993cd3 --- /dev/null +++ b/src/internal/SetBuildNumber/SetBuildNumber.proj | |||
@@ -0,0 +1,96 @@ | |||
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <!-- 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. --> | ||
3 | |||
4 | <Project Sdk="Microsoft.Build.NoTargets/3.0.4"> | ||
5 | <PropertyGroup> | ||
6 | <TargetFramework>netcoreapp3.1</TargetFramework> | ||
7 | <!-- Disable central package version management since this project will write the central package version management file --> | ||
8 | <ManagePackageVersionsCentrally>false</ManagePackageVersionsCentrally> | ||
9 | |||
10 | <!-- Explicitly set the restore sources because this project may run before the build\artifacts folder has been created --> | ||
11 | <RestoreSources>https://api.nuget.org/v3/index.json</RestoreSources> | ||
12 | <RestoreIgnoreFailedSources>true</RestoreIgnoreFailedSources> | ||
13 | </PropertyGroup> | ||
14 | |||
15 | <PropertyGroup> | ||
16 | <SetBuildNumbersDependsOn> | ||
17 | __SetPropertiesFromGit; | ||
18 | SetAppVeyorBuildNumber; | ||
19 | SetGlobalJson; | ||
20 | SetDirectoryPackagesProps; | ||
21 | </SetBuildNumbersDependsOn> | ||
22 | |||
23 | <GlobalJsonPath>$([System.IO.Path]::GetFullPath($(MSBuildThisFileDirectory)..\..\global.json))</GlobalJsonPath> | ||
24 | <CentralPackageVersionsPath>$([System.IO.Path]::GetFullPath($(MSBuildThisFileDirectory)..\..\Directory.Packages.props))</CentralPackageVersionsPath> | ||
25 | </PropertyGroup> | ||
26 | |||
27 | <Target Name="SetAppVeyorBuildNumber" | ||
28 | Condition=" '$(APPVEYOR)'=='True' "> | ||
29 | <PropertyGroup> | ||
30 | <AppVeyorBuildNumber>$(InformationalVersion)</AppVeyorBuildNumber> | ||
31 | <AppVeyorBuildNumber Condition=" 'APPVEYOR_PULL_REQUEST_NUMBER'!='' ">PR#$(APPVEYOR_PULL_REQUEST_NUMBER)-$(AppVeyorBuildNumber)</AppVeyorBuildNumber> | ||
32 | </PropertyGroup> | ||
33 | |||
34 | <Message Importance="high" Text=" $(AppVeyorBuildNumber)" /> | ||
35 | |||
36 | <Exec Command='appveyor UpdateBuild -Version "$(AppVeyorBuildNumber)"' /> | ||
37 | </Target> | ||
38 | |||
39 | |||
40 | <Target Name="SetGlobalJson" | ||
41 | Inputs="global.json.pp" | ||
42 | Outputs="$(GlobalJsonPath)"> | ||
43 | <PropertyGroup> | ||
44 | <GlobaJsonTextHeader>/* DO NOT MODIFY! Auto-generated from internal\SetBuildNumber\global.json.pp */</GlobaJsonTextHeader> | ||
45 | <GlobalJsonText>$([System.IO.File]::ReadAllText(global.json.pp))</GlobalJsonText> | ||
46 | <GlobalJsonText>$(GlobalJsonText.Replace('{apiversion}', $(ApiVersion)))</GlobalJsonText> | ||
47 | <GlobalJsonText>$(GlobalJsonText.Replace('{fileversion}', $(FileVersion)))</GlobalJsonText> | ||
48 | <GlobalJsonText>$(GlobalJsonText.Replace('{fullversion}', $(InformationalVersion)))</GlobalJsonText> | ||
49 | <GlobalJsonText>$(GlobalJsonText.Replace('{informationalversion}', $(InformationalVersion)))</GlobalJsonText> | ||
50 | <GlobalJsonText>$(GlobalJsonText.Replace('{height}', $(GitCommits)))</GlobalJsonText> | ||
51 | <GlobalJsonText>$(GlobalJsonText.Replace('{packageversion}', $(PackageVersion)))</GlobalJsonText> | ||
52 | <GlobalJsonText>$(GlobalJsonText.Replace('{version}', $(Version)))</GlobalJsonText> | ||
53 | </PropertyGroup> | ||
54 | |||
55 | <WriteLinesToFile File="$(GlobalJsonPath)" | ||
56 | Lines="$(GlobaJsonTextHeader);$(GlobalJsonText)" | ||
57 | Overwrite="true" | ||
58 | WriteOnlyWhenDifferent="true" /> | ||
59 | |||
60 | <Message Importance="high" Text="$(MSBuildProjectName) -> $(GlobalJsonPath)" /> | ||
61 | </Target> | ||
62 | |||
63 | |||
64 | <Target Name="SetDirectoryPackagesProps" | ||
65 | Inputs="Directory.Packages.props.pp" | ||
66 | Outputs="$(CentralPackageVersionsPath)"> | ||
67 | <PropertyGroup> | ||
68 | <CentralPackageVersionsTextHeader><!-- DO NOT MODIFY! Auto-generated from internal\SetBuildNumber\Directory.Packages.props.pp --></CentralPackageVersionsTextHeader> | ||
69 | <CentralPackageVersionsText>$([System.IO.File]::ReadAllText(Directory.Packages.props.pp))</CentralPackageVersionsText> | ||
70 | <CentralPackageVersionsText>$(CentralPackageVersionsText.Replace('{apiversion}', $(ApiVersion)))</CentralPackageVersionsText> | ||
71 | <CentralPackageVersionsText>$(CentralPackageVersionsText.Replace('{fileversion}', $(FileVersion)))</CentralPackageVersionsText> | ||
72 | <CentralPackageVersionsText>$(CentralPackageVersionsText.Replace('{fullversion}', $(InformationalVersion)))</CentralPackageVersionsText> | ||
73 | <CentralPackageVersionsText>$(CentralPackageVersionsText.Replace('{informationalversion}', $(InformationalVersion)))</CentralPackageVersionsText> | ||
74 | <CentralPackageVersionsText>$(CentralPackageVersionsText.Replace('{height}', $(GitCommits)))</CentralPackageVersionsText> | ||
75 | <CentralPackageVersionsText>$(CentralPackageVersionsText.Replace('{packageversion}', $(PackageVersion)))</CentralPackageVersionsText> | ||
76 | <CentralPackageVersionsText>$(CentralPackageVersionsText.Replace('{version}', $(Version)))</CentralPackageVersionsText> | ||
77 | </PropertyGroup> | ||
78 | |||
79 | <WriteLinesToFile File="$(CentralPackageVersionsPath)" | ||
80 | Lines="$(CentralPackageVersionsTextHeader);$(CentralPackageVersionsText)" | ||
81 | Overwrite="true" | ||
82 | WriteOnlyWhenDifferent="true" /> | ||
83 | |||
84 | <Message Importance="high" Text="$(MSBuildProjectName) -> $(CentralPackageVersionsPath)" /> | ||
85 | </Target> | ||
86 | |||
87 | |||
88 | <Target Name="SetBuildNumbers" | ||
89 | DependsOnTargets="$(SetBuildNumbersDependsOn)" | ||
90 | BeforeTargets="AfterBuild" /> | ||
91 | |||
92 | |||
93 | <ItemGroup> | ||
94 | <PackageReference Include="GitInfo" Version="2.1.2" /> | ||
95 | </ItemGroup> | ||
96 | </Project> | ||