.NET 5 Preview - DXP Changes
The .NET 5 preview is a major update to the Optimizely CMS platform. The public preview was released on July 1st as announced by Martin Ottosen here https://world.episerver.com/blogs/martin-ottosen/dates/2021/6/-net-5-public-preview/ and with it comes a number of features as mentioned in my previous blog post.
If you’ve not read it you can read the full list here
- Admin UI Changes Breakdown - https://world.optimizely.com/blogs/scott-reed/dates/2021/7/-net-5-preview-breakdown--admin-area/
- Alloy Project Breakdown - https://world.optimizely.com/blogs/scott-reed/dates/2021/7/-net-5-preview-breakdown--alloy-project/
- DXP Changes - https://world.optimizely.com/blogs/scott-reed/dates/2021/8/-net-5-preview---dxp-changes/
In this series of blog posts, I’m going to give an overview of what to expect in this version based upon my own exploration and usage. I will compare what we had to what we have to give developers an easier understanding of where the platform has changed.
In this third post I am going to give a high-level overview of what is looking to change on the DXP with the .NET 5 version.
Linux Web Apps
Due to the fact that we've been running on full fat .NET for many years we've been limited to being only able to run our solutions on a Windows based infrastructure. With the move to .NET 5 the team believes Linux Web Apps will be better in the long term for running apps. I assume as well somewhere down the line support for containers/orchestration will be on the cards with all these changes to be for a more modern DevOps system.
As updated in my Alloy blog post as we do not have any Web.Config we do not have transforms anymore. We do see however in the Alloy demo some .JSON files with configuration names in them however for these files from now on they do not trasnform they just load the correct environment directly from the file. E.g if you have appsettings.Integration that will load the integration settings. This means 2 considerations
- Make sure to have any .JSON config files have the exact settings you want per environment
- Make sure that your configuration middleware loads the correct settings you want based on the environment you're using as you can no longer load settings from web.config.
I've heard a couple of things around deployments to be aware of with this move that's very important
- With this version of .NET the Deployment API will only be supported. Therefore you'll have to make sure your DevOps processes are migrated to using it as soon as you can. This may be an opportunity to pre prepare for the version update ahead of time to reduce time/effort in the migration. To note once you have a package on Integration you can use the DXP Pass Portal to deploy it up to prep/prod.
- To start there will be no maintenance page option availible for Linux DXP sites in the deployment process.