Azure DevOps: Migrating to windows-latest

by Sigve Fast

Microsoft is deprecating and removing the windows-2016 environments in DevOps in the coming months. Here's how to change the agent environment in your pipelines. YAML If you are using YAML for setup this is an easy fix. Just change the pool:vmImage setting to windows-2022 GUI configuration If…

Custom icons in the Optimizely/Episerver CMS page tree

by Tomas Hensrud Gulla

By default, all pages in your Optimizely page tree look the same. With custom icons, you can add your personal touch, and make it easier to visually separate the different types of pages.…

Deploying a .NET 5 website to a Linux-based Azure Web App, using Azure DevOps Pipelines

by Tomas Hensrud Gulla

With Microsoft .NET 5 you can choose what platform you use for developing and hosting the solutions you build. Build on Windows, test on macOS, and host on Linux? No problem! Why should you run your Web App on Linux? Because it's cheaper? Because you'll get…

Optimizely Content Cloud (CMS) and updates to the database schema

by Tomas Hensrud Gulla

The Optimizely (formerly Episerver) products are continuously improved and weekly updates provide bug fixes, security updates, performance improvements, and occasional new features. Sometimes the database schema remains unchanged when you update the product, sometimes it does not. When Optimizely makes changes to the database schema, those changes are incorporated into…

Sanity: Serialize custom objects with .NET

by Magnus Sigvartsen

Sanity.io is a headless CMS. Since a headless CMS acts as an API for our raw data, it makes it easy to distribute the data to multiple channels such as mobile, web and wearables.…

Episerver/Optimizely Scheduled jobs - always add a GUID!

by Tomas Hensrud Gulla

A scheduled job is Episerver's/Optimizely's way of running some piece of code at a configurable interval.…

Sanity: Serializing custom annotations in .NET

by Magnus Sigvartsen

Knut from Sanity has a guide on how to create internal and external links in Sanity Studio. He also shows how you can render these links in your front end. Unfortunately, he does not show how you can do it using .NET. After digging around the github repo for Sanity…

Azure app configuration with no secrets using Azure managed identity

by Karl Solgård

Some applications have secrets. Sometimes secrets lie in the app settings. If these gets in the hands of someone evil, it could have dire consequences. We don't want to deal with these app settings at all! That's where TokenCredentials and managed identity comes in!…

Lazy loading images in Episerver/Optimizely xhtml string properties

by Tomas Hensrud Gulla

Lat lasting (eller «lazy loading» på godt norsk) av bilder er en teknikk for å øke ytelsen ved å utsette lasting av bilder til det er strengt nødvendig. Lenge var dette en øvelse som krevde komplisert kode eller bruk av biblioteker, men nå har de fleste nettleserne innebygget støtte.…

Deploy Sanity Studio with Azure DevOps

by Bjarte Aune Olsen

Sanity.io is a headless CMS, which means the editor interface is very loosely coupled with the website or interface that is displaying the content to the end user. The editor interface for Sanity.io is called Sanity Studio and in most scenarios you will want to deploy this as…