Skip to content

Directory Restructuring#973

Merged
zacharycmontoya merged 9 commits into
masterfrom
zach/directory-restructuring
Oct 19, 2020
Merged

Directory Restructuring#973
zacharycmontoya merged 9 commits into
masterfrom
zach/directory-restructuring

Conversation

@zacharycmontoya

@zacharycmontoya zacharycmontoya commented Oct 7, 2020

Copy link
Copy Markdown
Contributor

Goal

Implements the proposal discussed in #951. There is a significant amount of changes marked with File renamed without changes.. I recommend viewing the changes commit by commit as they each set up a subdirectory as outlined in the proposal. I may even merge this change as separate commits instead of squashing.

High-Level Changes

  • Set up the build subdirectory
  • Set up the test/test-applications subdirectory
    • samples -> test/test-applications/integrations
    • sample-libs -> test/test-applications/integrations/dependency-libs
    • reproductions -> test/test-applications/regression
    • reproduction-dependencies -> test/test-applications/regression/dependency-libs
    • samples-aspnet -> test/test-applications/aspnet
    • samples-iis -> test/test-applications/aspnet
  • Move benchmarks to test/benchmarks
  • Delete performance directory
  • Move lib to src/Datadog.Trace.ClrProfiler.Native/lib
  • Move deploy/Datadog.Trace.ClrProfiler.WindowsInstaller to src/WindowsInstaller
  • Move customer-samples to samples

Result

Datadog.Trace.sln

restructured-solution-view

Validation

  • Followed docs/README.md steps
    • Windows -> Building from a command line
    • Linux -> Building from a command line
  • Ran integration tests locally in Visual Studio
    • HttpMessageHandler and WebRequest integration tests on net45 and netcoreapp2.1
    • SmokeTests on net45 and netcoreapp2.1
  • Ran build/tools/GeneratePackageVersions and build/tools/PrepareRelease
  • Azure DevOps pipelines are successful
    • packages
    • unit-tests
    • integration-tests (wait for Windows runs to finish to confirm)
    • benchmarks

@DataDog/apm-dotnet

@zacharycmontoya zacharycmontoya changed the title Zach/directory restructuring Directory Restructuring Oct 7, 2020
@zacharycmontoya zacharycmontoya self-assigned this Oct 7, 2020
@zacharycmontoya zacharycmontoya added the area:builds project files, build scripts, pipelines, versioning, releases, packages label Oct 7, 2020
@zacharycmontoya zacharycmontoya force-pushed the zach/directory-restructuring branch 7 times, most recently from ff72fa9 to e1a0890 Compare October 8, 2020 20:30
@zacharycmontoya zacharycmontoya marked this pull request as ready for review October 8, 2020 20:46
@zacharycmontoya zacharycmontoya requested a review from a team as a code owner October 8, 2020 20:46
Comment thread .azure-pipelines/integration-tests.yml Outdated
Comment thread test/test-applications/integrations/Directory.Build.props Outdated
@zacharycmontoya zacharycmontoya force-pushed the zach/directory-restructuring branch 2 times, most recently from 229446d to 1ea5821 Compare October 14, 2020 16:04
@zacharycmontoya

Copy link
Copy Markdown
Contributor Author

I'm not sure what's up with the Azure DevOps but it looks like the integration-tests are largely succeeding after the latest commit 1ea5821 , though they're getting close to timing out for taking too long: https://dev.azure.com/datadoghq/dd-trace-dotnet/_build/results?buildId=27411&view=results

- Move docker to build/docker
- Update docker-compose.yml to accommodate new file path
- Update shell script files to accommodate new file path
- Modify .gitignore to allow the build/artifacts directory to be checked in
- Move createLogPath.sh and Datadog logos to build/artifacts
- Modify package.sh to consume createLogPath.sh from the new location
- Move tools/PrepareRelease and tools/GeneratePackageVersions to build/tools
- Copy tools/Directory.Build.props and tools/GlobalSuppression.cs to build/tools with some modifications
- Modify PrepareRelease files to accommodate new file path
- Modify GeneratePackageVersion files to accommodate new file path
- Modify Datadog.Trace.proj to accommodate new file path
@zacharycmontoya zacharycmontoya force-pushed the zach/directory-restructuring branch from 1ea5821 to f84e4a4 Compare October 19, 2020 17:43
- Move samples                   to test/test-applications/integrations
- Move sample-libs               to test/test-applications/integrations/dependency-libs
- Move reproductions             to test/test-applications/regression
- Move reproduction-dependencies to test/test-applications/regression/dependency-libs
- Move samples-aspnet            to test/test-applications/aspnet
- Move samples-iis folder        to test/test-applications/aspnet
- Modify project files to build
- Modify IntegrationTests to run tests from the new directories
- Move benchmarks and performance to test/benchmarks
- Modify project files to build
- Comment out the Save method call in Performance.StackExchange.Redis so the BenchmarkDotNet artifacts would be produced in the expected location
- Modify benchmarks.yml to run benchmarks from the new location
- Move lib/coreclr/src to src/Datadog.Trace.ClrProfiler.Native/lib/coreclr/src
- Modify Profiler build scripts to find new CoreCLR lib path
@zacharycmontoya zacharycmontoya force-pushed the zach/directory-restructuring branch 3 times, most recently from f86eb59 to 992256f Compare October 19, 2020 18:20
 - Move deploy/Datadog.Trace.ClrProfiler.WindowsInstaller to src/Datadog.Trace.ClrProfiler.WindowsInstaller
- Move customer-samples directory to samples
- Rename customer-samples.sln to samples.sln
…ndowsInstaller (and rename the .wixproj file as well)
- Delete unnecessary files that would otherwise bubble up to test/test-applications/integrations/dependency-libs/Directory.Build.props
- Move Test.Common.props to test/test-applications/Directory.Build.props, and modify solution file and imports accordingly
- Add a new Directory.Build.props in the build directory so there's a chain of them
- Modify all StyleCop Include declarations to use $(MSBuildThisFileDirectory) since relative paths in ItemGroups are evaluated from the original project file location
@zacharycmontoya zacharycmontoya force-pushed the zach/directory-restructuring branch from 992256f to 0ce3823 Compare October 19, 2020 20:06
@zacharycmontoya zacharycmontoya merged commit 2a9688d into master Oct 19, 2020
@zacharycmontoya zacharycmontoya deleted the zach/directory-restructuring branch October 19, 2020 22:01
@zacharycmontoya zacharycmontoya added this to the 1.20.0 milestone Nov 3, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:builds project files, build scripts, pipelines, versioning, releases, packages type:refactor

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants