Skip to content

Commit d6b6a9e

Browse files
committed
Use Common paths for Build, Publish and Pack
The new Output paths point to... Build: `~build\...` Restore: `~build\ext` Publish: `~publish\...` Pack: `~publish\{bin,obj}`
1 parent 2077c92 commit d6b6a9e

6 files changed

+35
-3
lines changed

.gitignore

+4
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,10 @@
1111
# User-specific files (MonoDevelop/Xamarin Studio)
1212
*.userprefs
1313

14+
# Working folders
15+
~build/
16+
~publish/
17+
1418
# Build results
1519
[Dd]ebug/
1620
[Dd]ebugPublic/

Directory.Build.props

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
<Project>
22

3+
<Import Project="Directory.Solution.props" />
4+
35
<PropertyGroup>
46
<RepositoryDirectory>$(MSBuildThisFileDirectory)</RepositoryDirectory>
57
<BuildToolsDirectory>$(RepositoryDirectory)build\</BuildToolsDirectory>
@@ -11,7 +13,6 @@
1113
<When Condition="$(IsCoreProject)">
1214
<PropertyGroup>
1315
<GenerateDocumentationFile>true</GenerateDocumentationFile>
14-
<PackageOutputPath>$(RepositoryDirectory)bin\nupkg</PackageOutputPath>
1516
<TreatWarningsAsErrors Condition="'$(Configuration)' == 'Release'">true</TreatWarningsAsErrors>
1617
</PropertyGroup>
1718
</When>

Directory.Solution.props

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
<Project>
2+
3+
<PropertyGroup>
4+
<RestoreUseStaticGraphEvaluation>True</RestoreUseStaticGraphEvaluation>
5+
</PropertyGroup>
6+
7+
</Project>

azure-pipelines.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -72,10 +72,10 @@ jobs:
7272
env:
7373
SignClientUser: $(SignClientUser)
7474
SignClientSecret: $(SignClientSecret)
75-
ArtifactDirectory: bin/nupkg
75+
ArtifactDirectory: ~packages/bin
7676
condition: and(succeeded(), not(eq(variables['Build.Reason'], 'PullRequest')), not(eq(variables['SignClientSecret'], '')), not(eq(variables['SignClientUser'], '')))
7777

7878
# Publish build artifacts
79-
- publish: bin/nupkg
79+
- publish: ~packages/bin
8080
artifact: Packages
8181
displayName: Publish package artifacts

build/Community.Toolkit.Common.props

+15
Original file line numberDiff line numberDiff line change
@@ -32,4 +32,19 @@
3232
<ContinuousIntegrationBuild>$(TF_BUILD)</ContinuousIntegrationBuild>
3333
</PropertyGroup>
3434

35+
<PropertyGroup>
36+
<!-- Common Outputs -->
37+
<BuildDir>~build\</BuildDir>
38+
<PublishDir>~publish\</PublishDir>
39+
<!-- Build Outputs -->
40+
<BaseOutputPath>$(BuildDir)bin\</BaseOutputPath>
41+
<BaseIntermediateOutputPath>$(BuildDir)obj\</BaseIntermediateOutputPath>
42+
<!-- Restore Outputs-->
43+
<MSBuildProjectExtensionsPath>$(BuildDir)ext\</MSBuildProjectExtensionsPath>
44+
<RestoreOutputPath>$(MSBuildProjectExtensionsPath)</RestoreOutputPath>
45+
<!-- Pack Outputs -->
46+
<PackageOutputPath>$(RepositoryDirectory)~packages\bin\</PackageOutputPath>
47+
<NuSpecOutputPath>$(RepositoryDirectory)~packages\obj\</NuSpecOutputPath>
48+
</PropertyGroup>
49+
3550
</Project>

build/Community.Toolkit.Common.targets

+5
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,11 @@
1111
<PackageTags Condition="'$(PackageTags)' == ''">$(CommonTags)</PackageTags>
1212
</PropertyGroup>
1313

14+
<PropertyGroup>
15+
<!-- Exclude files and folders from build and publish across all projects -->
16+
<DefaultItemExcludes>$(BuildDir)**;$(PublishDir)**;$(DefaultItemExcludes)</DefaultItemExcludes>
17+
</PropertyGroup>
18+
1419
<ItemGroup Condition="$(IsPackable)">
1520
<None Pack="true" PackagePath="\" Visible="False" Include="$(BuildToolsDirectory)Icon.png" />
1621
<None Pack="true" PackagePath="\" Visible="False" Include="$(RepositoryDirectory)License.md" />

0 commit comments

Comments
 (0)