We are going to make the assumption that the reader is familiar with certain basic working aspects of Revo and Evo for the purposes of this tutorial.
At this time Provisioner can import from Evolution sites and Revolution pre 2.2, and supports Revolution 2.0 - 2.2.x using mysql and sqlsrv as the target.
If you have been using MODX for any time now, you recognize the important improvements in the latest release of MODX Revolution. You also probably have many sites developed on the MODX Evolution platform. Although the Evolution platform works fantastic for what it was tasked to do, Revolution offers a great many performance and functionality improvements to merit an upgrade.
If this applies to you we have some good news. There is a tool called Provisioner that will translate your older Evo or Revo data directly into a new Revo install. Utilizing Provisioner and some minor tweaks, this process should be a lot less painful than you might expect.
In the past to migrate one MODX site to a new MODX install, some database experience would be necessary. A series of export/import sql tasks were required and depending on the version of MODX, may or may not be quite as simple as that.
Another approach would be to manually copy content from one manager instance to another. Depending on the size of the site, this may not be an option.
Provisioner provides the tool to help you in your migration without the need to start digging around the databases or spending hours on end copying and pasting.
We'll begin by installing Provisioner to your new instance of MODX Revolution. Provisioner is installed via Package Manager (for more info on Package Manager...). You can also install manually by downloading the transport file and unzipping it in your packages directory and perform a local install.
For Evolution sites, you'll need to install the gateway code to the source MODX instance. Download the revogateway.zip file and unzip it to the assets/snippets/ folder. This will allow Provisioner to access the necessary files. This allows read only access to the data needed for Provisioner.
Once you have completed the installation of Provisioner and the revo gateway, go to your new site manager. If you are already in the manager be sure to refresh the browser window to reload the menu bar. It would also be a good idea to clear your cache at this point. "Provisioner" should now appear under the "Components" menu item.
Click on the Provisioner component and log into the remote (source) site from the administration tab by filling in your remote site account details. In the URL field you will need to enter the URL to the "connectors" directory for Revo sites and the site URL for Evo sites. Be sure that the user account you enter has sufficient privileges for the operations to function. Admin privileges should be adequate.
Choose the remote site type.
Now you must supply a site identifier. This is an API key that allows the AJAX calls between the frontend and backend. This can be found near the top of the config.inc.php file.
You must be logged in to the remote site through Provisioner to continue.
It is recommended that you begin importing the remote site to a clean or empty MODX install.
If you have installed Provisioner correctly and successfully logged into the remote site you will see the corresponding data for the Resources, Elements, Files, Packages... listed as tabs in Provisioner.
From these tabs you can pick and choose which resources, elements, files etc are imported with a few options for each. Simply right click the resources you want and import as needed. It will also offer you the option of reformatting the syntax of MODX tags to match your new installation.
There is also a bulk import option under the "Evolution Site Import" tab. This option will allow you to import your remote site without having to select items one at a time. Evo to Revo tag conversion is automatic when performing this action.
It is not recommended that you import plugins as they were not written to function in Revo.
Packages are also something that should be managed with great care as the older packages will overwrite the newer ones on import.