Upgrading Mura Manually

If you aren't on a version with the Mura auto-updater or you need to upgrade manually for whatever reason, here's a quick break down on the directories and files you'll need to replace. Fortunately, while it's not as easy as clicking a button, it's not hard either. If you are upgrading from a previous Mura install there is a special section at the end of these directions that only applies to you. Just replace the following:

Directories and Files

/admin/
Replace the entire directory. (Note: The prototype plugin framework placed installed plugins into /admin/plugins, but we've now changed that - if you have any plugins in that directory move them to the /plugins/ off of the Mura root.) 

/config/
Replace everything except settings.ini.cfm. 

/default/
When we create sites in Mura we never use the default site. Since Mura copies this directory when creating a new site in a Mura install, we like to keep it as a "master" that we can always have up to date. So when we upgrade an install, we simply replace the entire /default/ directory.

Alternatively, if you have a specific model you'd like used for any new sites, by all means, make this what you want. So for example, if you want all new sites that you add to "inherit" a certain content structure and/or files, update the /default/ site to whatever structure you want, and then when you add a new site (using the "Add Site" link in Site Settings) your new site will be a copy of whatever's in the /default/ site.

/requirements/mura/
Replace the entire directory. We recommend that you never customize anything in this directory. If you need to change functionality or output, simply create a CFC (ColdFusion Component) that extends the base CFC and redefine the method or methods in question. You then edit the /config/coldspring.xml.cfm to use the new extended class.

/tasks/
Replace everything except the /tasks/sites/ directory. The /tasks/sites/ directory is where file that have been uploaded either as a content node or by FCKeditor are stored. Mura can store files in one of three locations: the database, the file system or on Amazon's S3 service. This location is configurable in the settings.ini.cfm. /[siteid]/

When it comes to siteID directories other than default you don't really need to change anything if you have made a lot of changes. We try not to change anything in the display objects directory and add all of our custom code to to /[siteid]/includes/display_objects/custom/ directory. The mark up in the display objects are all done with standards and flexibility in mind so if you keep your styles in the stylesheet, this shouldn't affect your presentation at all.

At the same time, if you need to change something go ahead, just copy it and place it in the "custom" directory. Basically, once a site is deployed we update site specific files on an "as needed" basis. There are no files that are required to be changed in the /[siteid]/css, /[siteid]/images and /[siteid]/js, but you may want to replace or add: /[siteid]/js/global.js /[siteid]/css/default.css

Database

Any database updates will be done automatically for you when you reload the application after the update. The "Reload Application" link is the bottom link in the left column of the Mura CMS admin.

Also, if your install is running on MSSQL you will want to turn off "Maintain Connection" in your datasource's advanced settings before you proceed. After the upgrade is complete you can turn it back on.

Important note: your update will not work until you reload the application!

Upgrading from Sava

If you are upgrading from Sava there are a few more steps that you will need to take.

First, you will need to edit your sites local contentRenderer and servlet component and change the extends attributes /[siteid]/includes/contentRenderer.cfc /[siteid]/includes/servlet.cfc

In both of these file you will need to change their extends attributes accordingly. mura.content.contentRenderer mura.servlet

Second, you will need to edit your settings.ini.cfm and change the MapDir attribute from sava5 to mura.

Third, you need to add the follolowing directories /[siteid]/includes/resourceBundles /[siteid]/includes/themes /[siteid]/includes/plugin