Orckestra / C1-CMS-Foundation

C1 CMS Foundation - .NET based, open source and a bundle of joy!
https://c1.orckestra.com/
Other
250 stars 109 forks source link

Upgrading to C1 6.13 #817

Open napernik opened 2 years ago

napernik commented 2 years ago

We recommend that everyone upgrade to the C1 CMS 6.13 release, due to a discovered security vulnerability.

The purpose of this guide is to:

How to upgrade to C1 CMS 6.13

Before you upgrade, we strongly recommend that you have a complete backup of your website (and the SQL database, if any).

We also recommend that you complete and test the upgrade in a test environment.

Here are the steps needed for the upgrade:

  1. Make a full backup of your website, check the upgrade requirements.
  2. Go to the System perspective.
  3. Open the folders "Packages", "Available Packages", "Composite.Updates".
  4. From the "Composite.Updates" folder, install the latest C1 version you see.
  5. Repeat Step 4 until you have upgraded to C1 CMS 6.13.

Upgrade Requirements

To complete the upgrade, the web server must have the .NET Framework version 4.8 installed.

Older versions must be upgraded more than once

For older C1 versions (2.x, 3.x and 4.x) you will need to repeat Step 4 multiple times. Each upgrade gives you access to a higher version.

The upgrade steps are: 2.x--> 3.0, --> 4.0 --> 4.1 --> 4.2 --> 5.0 --> 6.13

For example, if you are on version 4.0, you need to upgrade to 4.1, 4.2, 5.0 and finally 6.13.

If you are using version 5.0 or higher, you only need to install a single upgrade package.

The Upgrade Wizard may end with an error message - but it's all good

The C1 upgrade packages make the web application overwrite/transform itself, which can lead to the wizard completing with an error. If this is the case, reload the console, and everything will work as expected.

Known issues

When upgrading from 6.10/6.11/6.12 versions, you can see the following validation message:

The package did not validate
The process cannot access the file '<C1 website path>\bin\Composite.dll'
The process cannot access the file '<C1 website path>\bin\Composite.Workflows.dll'

For a workaround:

1) Download the upgrade package ZIP file ( https://github.com/Orckestra/C1-CMS-Foundation/releases/download/v6.13/C1.CMS.UpgradePackage.6.13.8305.22849.master.zip ). 2) Open the ZIP archive and within the "/install.xml" file comment out or remove the lines related to /bin/Composite.dll and /bin/Composite.Workflows.dll files. 3) Install the updated ZIP file from within the C1 console (the website will likely crash). 4) Extract and copy the /bin/Composite.dll and /bin/Composite.Workflows.dll files from the upgrade package to the website. (If the files are locked, temporary stop the IIS working pool to unlock them.) 5) Run the C1 console and make sure in the logs that the package has been installed successfully.

napernik commented 2 years ago

Upgrading from C1 CMS 6.11/6.12

Please note, that there's a simpler way to upgrade from versions 6.11 and 6.12: Extract and copy the /bin/Composite.dll and /bin/Composite.Workflows.dll files from the upgrade package to the website.

If the files are locked, as a workaround, the website can be temporarily stopped on IIS/AppService.