What does a CMS/DXP upgrade process look like?
BY: Erin Presseau | 8/23/22
Today I was able to sit down with one of our very busy .NET principal developers, Anoop Sandhu. As SilverTech’s Associate Director of Technology, Anoop’s time is highly coveted around here but I got lucky to snag a few minutes with him on the topic of DXP upgrades. I happened to be reviewing the Sitefinity DXP 14.2 release notes and checking out the new features when I realized how much goes into an upgrade that the average marketer may not know about.
I decided to ask Anoop to help explain what the upgrade process looks like and why it is so important to make sure it’s done the right way.
Q: What goes into a CMS or DXP platform upgrade?
Anoop: This is a high-level and over-simplified explanation but Sitefinity upgrades are really a three-step process:
1. Our developers review the current existing website. This should be done so that developers understand going into the upgrade, what customizations have been done, if the upgrade will impact any API’s or features that may be deprecated in the new version, and what foreseen negative impacts could this upgrade have. I say foreseen because an experienced developer will have run into some of these challenges before with similar set ups and are familiar with what obstacles to expect.
2. A developer upgrades the Sitefinity project files to the desired version. This is of course after a full site back-up has been run. Important things to watch out for here include
- Following up on any errors flagged in log files
- Making sure upgrade didn’t overwrite any customized files
- Ensuring changes aren’t going to break deployment scenarios
- Validating solution functions as expected
3. The website must then be re-started which triggers an in-place database upgrade. The Sitefinity website will detect that it is on a newer version and determine what changes are needed to bring the database in line with the new version. Depending upon how big of a gap there is between old and new versions will determine how many changes need to be made. We encourage our clients to stay on top of upgrades and do them regularly rather than let new versions pile up and then have to upgrade multiple versions at once. Upgrading multiple versions at once often adds to the complexity of the upgrade and can end up costing more in time and dollars in the long run.
Q: Why should you use a partner to make sure your upgrade goes smoothly rather than try to do it yourself?
Anoop: At face value, the upgrade process seems deceptively simple. But what most don’t account for are the nuances and gotchas along the way that can only be learned through trial and error, and the experience of having performed hundreds of these types of upgrades across different versions.
Upgrades require developer assistance. Hotfixes and upgrades are not “patches” or “installations” that can executed via a standalone application. Upgrades are in-place database upgrades. Rollbacks, albeit extremely rare, require a database restore along with a file system rollback.
We thoroughly test all upgrades locally before ever deploying them to a QA environment. Admin app changes, API updates, deprecated features, and custom development are all taken into consideration before we sign off as “ready” to be tested by our QA team. We have the historical expertise to know what is high risk and target those items for extra validation from the earliest phases of an upgrade. After all that is done, our continuous integration and deployment pipelines make sure we have a repeatable, standardized deployment process that allows us to validate the deployment across multiple internal environments before going “Live”, whether that is on a site hosted by SilverTech or with an external vendor.
Q: What are the features that you think are most helpful in Sitefinity’s latest, 14.2 release?
Anoop: For Sitefinity developers, the new bugfixes and the new .NET core search being out-of-the-box are a great help in the latest 14.2 release for anyone intending to build on .NET core.
For clients, especially those in regulated industries, the ability to set filters and notifications for expired or outdated content is key. So if there are rates or promotions or other time-sensitive content items, editors can set preferences to be alerted when that content is out of date.
And the search widgets for .NET core is nice for clients too because now content categories can be easily searched in widgets that you can easily add to any page.
Sitefinity does a nice job listening to partners to know what we are struggling with and what clients are asking for. As a Titanium partner, our team has direct access to the Sitefinity development team which is incredibly helpful for us and ultimately benefits our long-term clients because we advocate for what they need.
So, there you have it. Upgrades don’t have to be painful! When you host with an experienced development partner who has automated deployment pipelines, standardized repeatable upgrade processes should go smoothly with minimal to no downtime for even the largest upgrades. Contact us at SilverTech with any Sitefinity web development or Sitefinity upgrade questions.
Anoop Sandhu, Associate Director of Technology
Anoop oversees the design and architecture of Sitefinity website builds and upgrades and approves code as it moves through our deployment pipeline. He also works with clients to make sure their technical needs and concerns are addressed in a way that is understood by all parties. Anoop is a Certified Advanced Sitefinity Developer.