Migrate from Umbraco 7 to Umbraco 8 on Umbraco Cloud
This article will provide detailed steps on how to migrate a Umbraco 7 Cloud project to Umbraco 8.
Last updated
Was this helpful?
This article will provide detailed steps on how to migrate a Umbraco 7 Cloud project to Umbraco 8.
Last updated
Was this helpful?
Taking your Umbraco CMS project from Umbraco 7 to 8 is called a migration as it requires that the data is migrated in the process. This article covers each step involved in this process.
Read the to learn more about limitations and other things related to migrating your Umbraco site from 7 to 8.
You can find the full playlist here:
A Umbraco 7 Cloud project running the latest version of Umbraco 7.
Make sure Umbraco Forms data is not handled as content.
See for more details on how to check the setting.
A clean Cloud project running the latest version of Umbraco 8 with at least 2 environments.
Clone down the Umbraco 7 Cloud project.
Run the project locally and restore Content and Media.
Clone down the Development environment from the Umbraco 8 Cloud project.
Copy ~/App_Data/Umbraco.sdf
or ~/App_Data/Umbraco.mdf
from the cloned Umbraco 7 project.
Paste the file into ~/App_Data
on the clone of the Umbraco 8 project.
Open web.config
from the Umbraco 8 project.
Locate the Umbraco.Core.ConfigurationStatus
key.
Replace the value with the version your Umbraco 7 project is running.
Run the Umbraco 8 project locally
Authorize the migration - Cloud credentials are used for this.
Click Continue to start the migration.
Log in to the backoffice and verify that everything is there once the migration is complete.
Before moving on to the next step, make sure that the Umbraco 8 project is no longer running.
The following files/folders need to be copied into the Umbraco 8 project:
~/Views
- do not overwrite the default Macro and Partial View Macro files, unless changes have been made to these.
~/Media
Any files/folders related to Stylesheets and JavaScripts.
Any custom files/folders the Umbraco 7 project uses, that aren't in the ~/Config
or ~/bin
.
~/App_Data/UmbracoForms
- in the case Umbraco Forms was used on the Umbraco 7 site.
Merge the configuration files carefully to ensure any custom settings are migrated while none of the default configurations for Umbraco 8 is overwritten.
Run the Umbraco 8 project locally
It will give you an error on the frontend as none of the Template files have been updated yet.
Open the command line tool in the ~/data
folder on the Umbraco 8 project.
Generate UDA files by running the following command: echo > deploy-export
.
Once a deploy-complete
marker is added to the ~/data
folder, it is done.
Check ~/data/revision
to ensure all the UDA files have been generated.
Run echo > deploy
in the ~/data
folder to make sure everything checks out with the UDA files that were generated.
Running the echo > deploy
command will generate a new marker. Move forward with the migration based on the marker:
deploy-failed
Something failed during the check
Run echo > deploy-clearsignatures
followed by echo > deploy
to clear up the error
deploy-complete
Everything checks out: Move on to the next step
Umbraco 8 is different from Umbraco 7 in many ways. This means that in this step, all custom code, controllers, and models need to be reviewed and rewritten for Umbraco 8.
One of the changes made, is how published content is rendered through Template files. Due to this, it will be necessary to update all Template files (.cshtml
) to reflect these changes.
Template files need to inherit from Umbraco.Web.Mvc.UmbracoViewPage<ContentModels.HomePage>
instead of Umbraco.Web.Mvc.UmbracoTemplatePage<ContentModels.HomePage>
.
Template files need to use ContentModels = Umbraco.Web.PublishedModels
instead of ContentModels = Umbraco.Web.PublishedContentModels
.
@Model.Value("propertyAlias")
replaces @Umbraco.Field("propertyAlias")
.
@Model.PropertyAlias
replaces @Model.Content.PropertyAlias
.
@Model.Value<IPublishedContent>("propertyAlias")
replaces Model.Content.GetPropertyValue<IPublishedContent>("propertyAlias")
.
Depending on the size of the project and the amount of custom code and implementations, this step is going to require a lot of work.
Once the Umbraco 8 project runs without errors on the local setup, the next step is to deploy and test on the Cloud Development environment.
Push the migration and changes to the Umbraco Cloud Development environment
Progress through the steps based on the deployment result:
deploy-failed
: Run echo > deploy-clearsignatures
followed by echo > deploy
to clear up the error.
deploy-complete
: The Development environment has been upgraded.
Transfer Content and Media from the local clone to the Development environment.
Test everything on the Development environment.
Deploy to the Live environment.
Once the migration is complete, and the Live environment is running without errors, the site is almost ready for launch.
Setup rewrites on the Umbraco 8 site.
Assign hostnames to the project.
Hostnames are unique, and can only be added to one Cloud project at a time.
This can be done after cloning down the Cloud environment or by using the .
Install the community package on the cloned Umbraco 8 site.
See of this guide, for more detail on this.
Read more about these changes in the .