Update Managed Cloud

Abstract

Learn how to update your solution with the latest changes.

Managed Cloud Containers lets you install the MCC package with the latest updates. This is an important process for keeping an implementation current with the latest advances for Managed Cloud Containers. We recommend you to plan these updates as part of your regular maintenance plans and, for example, schedule time for MCC updates monthly.

To learn more about the content of an update package, refer to the release notes. The release notes for every package are available from the same location as the upgrade package (release_notes.<mcc package version>.md).

Sitecore Managed Cloud Containers solution can be updated only if it supports a modularized repository structure. Modularized structure supported starting from versions 10.1.0-r.182868 and 10.1.1-r.182925. To check your version, go to the Application repository and check the version of your version.txt file. If you have an earlier version, you must follow the migration process. If you have solution.json, your environment already uses a modularized structure and you can continue the upgrade process described in this topic.

To prepare the update:

  1. Go to the mccsharedupgradestorage storage account, open the mcc-upgrades container, and find the latest revision for your topology and Sitecore version:

    - mcc.{topology}.upgrade.{sitecore_version}-r.{revision}.nupkg

    Note

    If you cannot access the storage account, open a service request for DevOps Engineer access.

  2. Download and unzip the package to a temporary folder.

  3. Review your repositories and look for the customizations you have made:

    • For customized files in the Infrastructure repository: move the custom files to separate modules.

    • For customized files in the Application repository: move the custom files to separate Ansible roles. For example, if you added additional public services, follow the process described in the Add a public service topic. If you added monitoring extensions, read the Add a custom Prometheus alert topic and the Import and export your Grafana dashboard topic.

To update the infrastructure:

Note

If you have customized files, make sure that all custom changes are separated into different modules.

  1. Create a feature branch and copy all content of the Infrastructure folder to the Infrastructure repository except the following folders:

    • config\resources

  2. Create a pull request against the main branch. Review and resolve any conflicts.

  3. Compare config\resources\resources.json and sku\resources.{topology-size}.json files. Update config\resources\resources.json if there are any differences in the structure.

  4. Complete the pull request. The infrastructure pipeline will run and apply changes automatically.

  5. Make sure that the infrastructure pipeline run finished successfully.

  6. If there were changes in the frontdoor folder, run the frontdoor pipeline.

  7. If you have new files added to the pipelines folder make sure to create a new pipeline in Azure DevOps and link it to the new pipeline (yaml file from pipelines folder). See the pipelines documentation for details.

To update the application:

Note

If you have customized files, make sure that all custom changes are separated into different modules.

  1. Create a feature branch and copy all content of the Application folder to the Application repository except the following folder:

    • config\resources

  2. Compare config\resources\resources.json and sku\resources.{topology-size}.json files. Update config\resources\resources.json if there are any differences in the structure.

  3. Create a pull request against the main branch. Review and resolve any conflicts.

  4. Make sure that the application pipeline run finished successfully. The application pipeline will run and apply changes automatically.

  5. If you have new files added to the pipelines folder make sure to create a new pipeline in Azure DevOps and link it to the new pipeline (yaml file from pipelines folder). See the pipelines documentation for detail.

To revert the changes and return to the original state:

  1. Revert the pull request for the Infrastructure repository and run Infrastructure and Frontdoor pipelines to apply changes.

  2. Revert the pull request for the Application repository and run the Application pipeline to apply changes.