Pages

08 November, 2024

XM to XM Cloud Migration tool - 2.1 - Installation and Dependencies

In the previous article, I provided a brief introduction of XM to XM Cloud Migration Tool. In this article, installation, dependencies and installation steps are explained.   


Installation

  • Once downloaded, extract the content in a folder. 
  • In the source CM instance, install the package, SitecorePackage.zip, which is available in the extracted folder. 
  • Once the package is installed, you will see a folder (_MigrationHarness) in the CM root folder and it has all the dependencies needed for the tool to work.
  • Additionally, two configuration changes are necessary. 
    • web.config: Add the following configuration under existing parent XML elements. 

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<runtime>
.........
<assemblyBinding
xmlns="urn:schemas-microsoft-com:asm.v1">
<probing privatePath="_MigrationHarness/bin" />
<dependentAssembly>
<assemblyIdentity name="protobuf-net" publicKeyToken="257b51d87d2e4d67" />
<codeBase version="2.4.0.0" href="_MigrationHarness/bin/protobuf-net.dll" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Microsoft.Extensions.Logging.Abstractions" publicKeyToken="adb9793829ddae60" />
<codeBase version="6.0.0.0" href="_MigrationHarness/bin/Microsoft.Extensions.Logging.Abstractions.dll" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" />
<codeBase version="4.0.2.0" href="_MigrationHarness/bin/System.Buffers.dll" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" />
<codeBase version="4.0.1.2" href="_MigrationHarness/bin/System.Memory.dll" />
<bindingRedirect oldVersion="4.0.1.1" newVersion="4.0.1.2" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" />
<codeBase version="6.0.0.0" href="_MigrationHarness/bin/System.Runtime.CompilerServices.Unsafe.dll" />
<bindingRedirect oldVersion="4.0.4.1" newVersion="6.0.0.0" />
</dependentAssembly>
</assemblyBinding>
.........
</runtime>
</configuration>
view raw web.config.xml hosted with ❤ by GitHub
    • Sitecore.Services.Client.config to allow access to entity and item services. Instead of modifying the Sitecore configurations directly, you can apply the patch as below. Important: Remove this setting once the migration is over as it allows access to all entities and Item Services. 

<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
<sitecore>
<settings>
<setting name="Sitecore.Services.SecurityPolicy">
<patch:attribute name="value">Sitecore.Services.Infrastructure.Web.Http.Security.ServicesOnPolicy, Sitecore.Services.Infrastructure</patch:attribute>
</setting>
</settings>
</sitecore>
</configuration>

  • Run the executables in Admin mode and start migrating content. There are two executables. 
    • XMMigration.exe - For migrating using CLI
    • XMMigrationGUI.exe - For migrating using GUI


Uninstallation


Since the dependencies are contained in a separate single folder - (_MigrationHarness), uninstallation is simple. 
  • Delete _MigrationHarness folder 
  • Revert web.config change. 
  • Remove the Sitecore patch file for Sitecore.Services.SecurityPolicy setting. 




No comments:

Post a Comment

blockquote { margin: 0; } blockquote p { padding: 15px; background: #eee; border-radius: 5px; } blockquote p::before { content: '\201C'; } blockquote p::after { content: '\201D'; }