This blog post discusses the latest features that allow users to directly edit configurations within Sitefinity Cloud environments. The aim is to achieve the ultimate Sitefinity configuration management solution and meet customer requirements in line with the best practices.
It’s all in the cloud
To align with CI/CD best practises, auto mode was combined with read-only file system mode. This ensured that all configuration files were in read-only mode on Sitefinity Cloud environments, simplifying file system configuration changes through source code. This approach made changes trackable, mergeable, and comparable.
Disabling the ability to save configuration changes on the file system meant that the source code became the single source of truth for application files. The application could be easily restored by redeploying the latest deployment package and restoring a database backup. The read-only file system mode also prevented accidental changes that could lead to downtime due to unwanted restarts or configurations in the production environment.
News for Sitefinity admins
Although the auto-config mode is useful, it does not fulfil all customer requirements. Customers often want to make configuration changes at runtime without the need to set up the project locally, commit changes, and wait for the CI/CD pipeline to run. To address this issue, Sitefinity Cloud has introduced enhanced configuration editing capabilities for its customers who have upgraded to Sitefinity 14.3.8022 or higher. This feature allows customers to specify which configuration files, sections, or properties should be editable directly in Sitefinity Cloud environments.
This change provides a complete solution that covers all possible scenarios. For configuration changes that do not vary from one environment to another and do not contain any sensitive information, customers can update configuration files on their local development environment and push the changes to the source code. For configuration changes that need to vary from one environment to another but do not contain any sensitive information, customers can use configuration transformation files that will be applied during deployment to different environments.
For configuration values that must be kept secret, customers can use Azure DevOps variable groups to configure App Settings and Connection Strings for the application. This feature allows specific configuration values to be overridden and made immutable for runtime changes. Moreover, the values are not visible to anyone browsing the application, making them ideal for API secrets, keys, etc.
If customers export the database from any environment and restore it locally, the secret values will not be present. These values are applied during deployment via App Settings and Connection Strings in the App Service hosting the application, so they are persisted directly in Azure, not on the file system or in the database.
For runtime configuration changes that do not contain any sensitive information, customers can now make them directly in Sitefinity Cloud environments. If customers restore the database from one environment to another or import a database, the default option is to persist Sitefinity configuration values on the target environment. This means that Sitefinity configuration values stored on the target database will not be replaced with those from the source database. If customers want to override the configurations in the target environment, they can disable this option when they run the pipeline.