Can someone let me know how I would go about going from Umbraco 7 to 12 ?
Is there a clean / clear migration path or is better to start again from scratch ?
It really depends on the size of the Umbraco site you are migrating and how it has been implemented.
If your site has hundreds of thousands of pages, purely starting from scratch, and manually reentering the content is probably not a desirable path, but if it is 12 pages, very doable. There is therefore a number of pages at which purely starting again is the least faff. The advantage of doing so means you can reconsider how the site is implemented and take advantage of the new ways of managing content in the latest Umbraco, instead if trying to make the V7 paradigms work in order to migrate content 'as is'.
In any approach you are going to have to reimplement all your views and supporting controllers and code, because of the changes in syntax between umbraco versions and the switch if the underlying dot net framework to be dot net core. So really the approach is best determined by how content is currently managed in the v7 site and the value of bringing it across with minimal editor input.
There is an official path to migrate a v7 database and it's contentand media to the latest database format.
You would first upgrade your site database to the latest version of V7. This would enable you to create a new umbraco 8.5.5 project and point to this database, triggering a migration that can run for hours, once complete you can then upgrade your new v8 project to the latest version of 8, 8.18...and point this at the database, this will run a further series of database Migrations, and get to the point where you can create a brand new v9 project, point it at the database and run the database Migrations from v8 to v9, then I think you will be OK to create a new v12 project, point it at the database and complete the final set of Migrations... And you can begin to start reimplement g the site...
... However, if your v7 site used 3rd party plugins such as Archetype, there is no version of Archetype for v8+ and so although your data is migrated you have no way of editing it... Now you can either make the plugins work with VLatest or find a likely similar alternative editor, in our Archetype example this would be an inline Block List, and then write code to grate from old stored format to new or manually reenter. So again 100 editors of this type you'll want to write code, if it's just one page.. Probably no need!
The advantage of this approach is it brings across things like members and their passwords and any relations on the site. The downside is it takes so long and there can be many many hiccups and timeouts along the way. Also if it then takes 4 weeks to reimplement the upgraded site there will likely be content changes in existing v7 live site, if these are huge, once you have the migrated site reimplement, you'll likely need to repeat the migration steps again in order not to lose any updates in the meantime, so make a note of what you do and how long it takes in order to weigh this up against the size of the content changes made.
Alternatively there is a tool called uSyncMigrations
You install a packer into your v7 site which creates a zip of all the content, media and settings. You then create a brand new Umbraco 12 with uSyncMigrations installed and upload the zip, uSyncMigrations then converts the exported files to a format ready for v12, and then imports the settings, content and media from your old site, without ING to mess around with all those steps.
The clever thing is if it comes across an obsolete property editor, and it knows about it (eg someone contributed a migrator to handle it) The it does the migration of the data too... It is like magic.
You can also write code during the migration to ignore properties or rename them etc, so you can improve the backoffice as part of the migration process.
It's much quicker way of getting to the point where you start to implement your views and controllers.. And the cool thing is when there are changes in the v7 site content and media, you will get new export files generated that you can run through uSyncMigrations and keep your new site in sync with the v7 content and media throughout. So at the end no big set of steps to repeat!
The downside is uSyncMigrations is in Beta, Lots of people have used it to migrate sites, and it's getting more and more comprehensive and polished, but there are some things it doesn't currently handle, eg Relations and Members, so it's a trade off between what it magically delivers now vs how the site is implemented... What work would you still need to do (and contribute back! )
Another approach, if the Document Type's are awful, there is nothing worth saving, but starting from scratch is too much for the current budget, is to use a Stangler Fig approach, here you run a new v12 site alongside the v7 site, and migrate manually by reimplementing the site section by section over a longer time period. Using Azure front door or similar to control which parts of the site go to which version of Umbraco.
The advantage here is each section gets focus and can be discussed and improved. Business improvements can be delivered earlier, no need to wait for whole site to be finished before the blog has its revamp etc..
The work can be plotted to tie in with business improvement rather than just putting effort in to keep the site the same!
Downside is two backoffices and so can be confusing and a longer period of elapsed time, takes a lot more input and collaboration with site owners to make decisions and feed into improvements, not so good if theim is to keep everything the same!
Anyway sorry for the big read... hope that doesn't just all muddy the waters further! But at least shows the best approach depends upon the site! Some of the recent migration projects have been a hybrid of these approaches too!
Migrating from version 7 to 12
Hi all,
Can someone let me know how I would go about going from Umbraco 7 to 12 ? Is there a clean / clear migration path or is better to start again from scratch ?
Thanks Mike
Hi Mike
It really depends on the size of the Umbraco site you are migrating and how it has been implemented.
If your site has hundreds of thousands of pages, purely starting from scratch, and manually reentering the content is probably not a desirable path, but if it is 12 pages, very doable. There is therefore a number of pages at which purely starting again is the least faff. The advantage of doing so means you can reconsider how the site is implemented and take advantage of the new ways of managing content in the latest Umbraco, instead if trying to make the V7 paradigms work in order to migrate content 'as is'.
In any approach you are going to have to reimplement all your views and supporting controllers and code, because of the changes in syntax between umbraco versions and the switch if the underlying dot net framework to be dot net core. So really the approach is best determined by how content is currently managed in the v7 site and the value of bringing it across with minimal editor input.
There is an official path to migrate a v7 database and it's contentand media to the latest database format.
You would first upgrade your site database to the latest version of V7. This would enable you to create a new umbraco 8.5.5 project and point to this database, triggering a migration that can run for hours, once complete you can then upgrade your new v8 project to the latest version of 8, 8.18...and point this at the database, this will run a further series of database Migrations, and get to the point where you can create a brand new v9 project, point it at the database and run the database Migrations from v8 to v9, then I think you will be OK to create a new v12 project, point it at the database and complete the final set of Migrations... And you can begin to start reimplement g the site...
... However, if your v7 site used 3rd party plugins such as Archetype, there is no version of Archetype for v8+ and so although your data is migrated you have no way of editing it... Now you can either make the plugins work with VLatest or find a likely similar alternative editor, in our Archetype example this would be an inline Block List, and then write code to grate from old stored format to new or manually reenter. So again 100 editors of this type you'll want to write code, if it's just one page.. Probably no need!
The advantage of this approach is it brings across things like members and their passwords and any relations on the site. The downside is it takes so long and there can be many many hiccups and timeouts along the way. Also if it then takes 4 weeks to reimplement the upgraded site there will likely be content changes in existing v7 live site, if these are huge, once you have the migrated site reimplement, you'll likely need to repeat the migration steps again in order not to lose any updates in the meantime, so make a note of what you do and how long it takes in order to weigh this up against the size of the content changes made.
Alternatively there is a tool called uSyncMigrations
You install a packer into your v7 site which creates a zip of all the content, media and settings. You then create a brand new Umbraco 12 with uSyncMigrations installed and upload the zip, uSyncMigrations then converts the exported files to a format ready for v12, and then imports the settings, content and media from your old site, without ING to mess around with all those steps.
The clever thing is if it comes across an obsolete property editor, and it knows about it (eg someone contributed a migrator to handle it) The it does the migration of the data too... It is like magic.
You can also write code during the migration to ignore properties or rename them etc, so you can improve the backoffice as part of the migration process.
It's much quicker way of getting to the point where you start to implement your views and controllers.. And the cool thing is when there are changes in the v7 site content and media, you will get new export files generated that you can run through uSyncMigrations and keep your new site in sync with the v7 content and media throughout. So at the end no big set of steps to repeat!
The downside is uSyncMigrations is in Beta, Lots of people have used it to migrate sites, and it's getting more and more comprehensive and polished, but there are some things it doesn't currently handle, eg Relations and Members, so it's a trade off between what it magically delivers now vs how the site is implemented... What work would you still need to do (and contribute back! )
Another approach, if the Document Type's are awful, there is nothing worth saving, but starting from scratch is too much for the current budget, is to use a Stangler Fig approach, here you run a new v12 site alongside the v7 site, and migrate manually by reimplementing the site section by section over a longer time period. Using Azure front door or similar to control which parts of the site go to which version of Umbraco.
The advantage here is each section gets focus and can be discussed and improved. Business improvements can be delivered earlier, no need to wait for whole site to be finished before the blog has its revamp etc..
The work can be plotted to tie in with business improvement rather than just putting effort in to keep the site the same!
Downside is two backoffices and so can be confusing and a longer period of elapsed time, takes a lot more input and collaboration with site owners to make decisions and feed into improvements, not so good if theim is to keep everything the same!
Anyway sorry for the big read... hope that doesn't just all muddy the waters further! But at least shows the best approach depends upon the site! Some of the recent migration projects have been a hybrid of these approaches too!
Regards
Marc
Thanks Marc - I have some reading and thinking to do it seems :)
is working on a reply...