Update Orchard CMS v.1.7 to v.1.8

tl;dr

  1. Download the App Data/Sites, Media, Modules, and Themes/<any-in-use-themes> folders from the existing  v1.7 site.
  2. Download a new Orchard.Web.1.8 site. Delete its AppData and Media folders.
  3. Copy and paste content into the new site:
    1. The App Data/Sites and Media folders.
    2. All in-use themes from the Themes folder (ignoring built in themes).
  4. Package the existing Theme; import it into the new site.

Note: these instructions do NOT yet cover module migration. Basically, list all the modules & features that the existing site uses. Then make sure those are installed & enabled on the new site.

Scenario

I have an existing Orchard CMS hosted in a Windows Azure Website. I would like to upgrade to v1.8. Here are the steps. Note: Works on my machine!

Opinion

We should not deploy an Orchard CMS from source control. There are two reasons. First, doing so would overwrite the AppData, Media, Modules, and Themes folders on each push. We don’t want that. Those folders hold end-user data. Second, we don’t need source control for a deployment of Orchard. We aren’t modifying its source! We only modify the source to create themes and modules.

We should deploy Orchard with Visual Studio/WebMatrix/WebDeploy/FTP/Etc, and then we should regularly backup the site.

Tools

Steps

Download the current Orchard CMS assets from Azure.

With WebMatrix

WebMatrix is the alternative when FTP isn’t working.

  1. Login to Windows Azure Portal
  2. Open your site
  3. Click the WebMatrix button
  4. Choose “Edit local copy”
  5. Choose, “No, just download the files and database”
  6. The files will land in \Documents\My Web Sites\TheSiteName

With FTP

In the case that FTP is working, download just these folders:

  1. AppData
  2. Media
  3. Themes
  4. Modules

Usually, I store the download in my Downloads folder.

Gather the current site’s assets into one folder.

  1. Create a new folder to hold the assets. (This folder will act as a backup and migration package.)
  2. Copy and paste the following into that folder:
    1. App_Data
    2. Media
    3. Nuget package of the current theme.

Here is how to create the Nuget Package.

Orchard.exe
package create MyThemeName c:\temp

image

Create a new , local Orchard CMS v1.8.

There are many ways to obtain a local copy. Here are three :

  1. Create it from Windows Azure Gallery. Then download it with WebMatrix.
  2. Create it from WebMatrix (File > New > Site from Application Gallery).
  3. Download Orchard.Web.1.8.zip from orchard.codeplex . Unblock before unzipping.
  4. For the remaining steps, I work almost entirely out of the Downloads folder.

Note: We use Orchard.Web because we do not need to modify the source.

Copy, paste, and import the current into the new .

Publish the new to the current Azure Website.

Tested On

Bugs along the Way

Research Questions