We have recently ran into an issue with licenses refreshing on our Azure App Services and our setup for code deployments.
Context:
We self-host Umbraco on Azure App Services and do deployments on App Service Deployment Slots to which we release our code builds. After that we swap the staging Deployment Slot with the primary app service to put our changes live.
Problem:
The license is automatically refreshed on our primary app service slots, but not on our deployment slots because they exist in a stopped state unless we release our code builds on it.
So when we swap the staging deployment slot with the primary slot after a code deployment, we end up with a potentially outdated license in the wwwroot\umbraco\licenses folder.
Potential solutions:
One solution would be to include a step in the release pipeline to download the licenses folder from the primary slot to the deployment slot before we perform the slot swap.
However, a more preferred solution would be to have the option to store the refreshed licenses on a blob storage container. That way there only needs to be one place to refresh and get the licenses from, without depending on duplicating licenses to a deployment slot.
We have recently ran into an issue with licenses refreshing on our Azure App Services and our setup for code deployments.
Context:
We self-host Umbraco on Azure App Services and do deployments on App Service Deployment Slots to which we release our code builds. After that we swap the staging Deployment Slot with the primary app service to put our changes live.
Problem:
The license is automatically refreshed on our primary app service slots, but not on our deployment slots because they exist in a stopped state unless we release our code builds on it.
So when we swap the staging deployment slot with the primary slot after a code deployment, we end up with a potentially outdated license in the
wwwroot\umbraco\licensesfolder.Potential solutions:
One solution would be to include a step in the release pipeline to download the licenses folder from the primary slot to the deployment slot before we perform the slot swap.
However, a more preferred solution would be to have the option to store the refreshed licenses on a blob storage container. That way there only needs to be one place to refresh and get the licenses from, without depending on duplicating licenses to a deployment slot.