diff --git a/.gitignore b/.gitignore
index 84ce9d61..e2b04e56 100644
--- a/.gitignore
+++ b/.gitignore
@@ -8,6 +8,11 @@
*.userosscache
*.sln.docstates
+# Working folders
+[Bb]uild/
+[Pp]ublish/
+[Pp]ackages/
+
# Build results
[Bb]in/
[Oo]bj/
diff --git a/Directory.Build.props b/Directory.Build.props
index ff806bb9..fe83f82f 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -1,5 +1,7 @@
+
+
$(MSBuildThisFileDirectory)
$(RepositoryDirectory)eng\
diff --git a/Directory.Solution.props b/Directory.Solution.props
new file mode 100644
index 00000000..21aaf500
--- /dev/null
+++ b/Directory.Solution.props
@@ -0,0 +1,7 @@
+
+
+
+ True
+
+
+
\ No newline at end of file
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 28e2b003..6719cc15 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -70,7 +70,7 @@ jobs:
displayName: Publish test results
inputs:
testResultsFormat: VSTest
- testResultsFiles: '**/TestResults/VSTestResults*.trx'
+ testResultsFiles: build/*/TestResults/VSTestResults*.trx
condition: always()
# Pack solution
@@ -83,10 +83,10 @@ jobs:
env:
SignClientUser: $(SignClientUser)
SignClientSecret: $(SignClientSecret)
- ArtifactDirectory: bin/nupkg
+ ArtifactDirectory: packages
condition: and(succeeded(), ne(variables['Build.Reason'], 'PullRequest'), ne(variables['SignClientUser'], ''), ne(variables['SignClientSecret'], ''))
# Publish build artifacts
- - publish: bin/nupkg
+ - publish: packages
artifact: Packages
displayName: Publish package artifacts
diff --git a/eng/Toolkit.Common.props b/eng/Toolkit.Common.props
index d272cf8c..b2c79c3b 100644
--- a/eng/Toolkit.Common.props
+++ b/eng/Toolkit.Common.props
@@ -28,6 +28,22 @@
$([System.IO.File]::ReadAllText($(AssemblySignPublicKeyFile)))
+
+
+ $(RepositoryDirectory)build\
+
+ $(RepositoryDirectory)publish\
+
+ $(BuildDir)ext\
+
+ $(RepositoryDirectory)build\
+ $(RepositoryDirectory)packages\
+
+
+
+ $(MSBuildProjectName.Replace('CommunityToolkit.', ''))
+
+
True
@@ -39,4 +55,19 @@
+
+
+ $(BuildDir)$(ProjectDirName)\
+ $(BuildDir)bin\
+ $(BuildDir)obj\
+
+ $(BuildDir)ext\
+ $(MSBuildProjectExtensionsPath)$(TargetCompiler)\
+ $(MSBuildProjectExtensionsPath)
+
+ $(PublishDir)$(ProjectDirName)\
+
+ $(BuildDir)TestResults\
+
+
\ No newline at end of file
diff --git a/eng/Toolkit.Common.targets b/eng/Toolkit.Common.targets
index e82e4b83..7e8d803b 100644
--- a/eng/Toolkit.Common.targets
+++ b/eng/Toolkit.Common.targets
@@ -19,6 +19,11 @@
$(CommonTags)
+
+
+ $(BuildDir)**;$(PublishDir)**;$(DefaultItemExcludes)
+
+
diff --git a/eng/Toolkit.CompilerTargeting.props b/eng/Toolkit.CompilerTargeting.props
index 70a4f60d..d3996453 100644
--- a/eng/Toolkit.CompilerTargeting.props
+++ b/eng/Toolkit.CompilerTargeting.props
@@ -55,7 +55,7 @@
- $([System.IO.Path]::Combine('obj', '$(TargetCompiler)'))
+ $(ProjectDirName.Replace('.$(TargetCompilerIdentifier)$(_ShortCompilerVersion)', ''))
diff --git a/eng/Toolkit.CompilerTargeting.targets b/eng/Toolkit.CompilerTargeting.targets
index 3a1d9534..fcfe0338 100644
--- a/eng/Toolkit.CompilerTargeting.targets
+++ b/eng/Toolkit.CompilerTargeting.targets
@@ -1,7 +1,7 @@
- $([System.IO.Path]::Combine('$(BaseOutputPath)', 'TestResults'))
+ $([System.IO.Path]::Combine('$(BaseOutputPath)', 'TestResults'))
diff --git a/src/Directory.Build.props b/src/Directory.Build.props
index 8023415b..16dbe938 100644
--- a/src/Directory.Build.props
+++ b/src/Directory.Build.props
@@ -7,7 +7,6 @@
true
true
true
- $(RepositoryDirectory)bin\nupkg
true