Hello Dojo community,
Recently I have been tasked to migrate an existing solution into the new solution template so that we can leverage the CI/CD from the start and also the ease of publishing to the catalog among other things.
My question is does anyone have some tips and tricks in regards on how to properly migrate all of the scripts and data sources into the new template?
Since this solution has a significant number of various projects, I'm assuming that it won't be as easy as just copy-pasting the projects into the new solution?
What is the best, most safe and convenient approach?
Thank you all in advance!
At this time, we haven’t created any official scripts for bulk migration, primarily because we couldn’t ensure support for 100% of all possible edge cases across different solutions.
The recommended approach is currently to create each new project from the template and manually copy over the relevant source code files and folders from the existing solution. This is the method being followed by several teams internally.
That said, if you have the time and interest, you could potentially build a "good enough" script to handle most of the repetitive work. Using dotnet new
commands via the CLI (similar to what we demonstrated in the GitHub Codespaces tutorial), it’s possible to create a PowerShell or Bash script that:
-
Loops over your existing source structure
-
Executes the appropriate
dotnet new
commands -
Copies over relevant files and folders
You would still likely need to fine-tune the resulting solution—adjusting NuGet packages, project references, and ensuring everything compiles correctly. While this could save time in the long run, most teams so far have opted to migrate projects manually for more control and predictability.