Fix unspecified errors working with Azure root Management Group

If you have not been working with Management Groups to manage Azure at scale, I recommend to review the documentation. You should also take a look at the Microsoft Cloud Adoption Framework (which was just recently updated).

When you start using Management Groups you might want to change the display name of the root management group or do other changes to the hierarchy. To get started you need to have access to the root management group. If you have global administrator permissions, follow the documentation (especially this) on how to set that up.

Continue reading …

Management groups vanishing from Azure portal after rename

If you use Management groups to manage Azure at scale you may get hit with a bug in the Azure portal, that I discovered today. If you rename the Root Tenant Group the portal stops showing any previously create management groups. Their assignment are still active and you can still manage them using PowerShell or CLI but the portal will start show the out-of-the-box experience.

Continue reading …

Azure Notification Hub race condition

Both development and production environments are deployed in a fully automated fashion using ARM templates. As part of these deployments we also create Notification Hubs and related authorization rules.

I noticed today that some of our deployments were failing due to the fact that the Notification Hub resource provider was not able to find a related resource although the necessary dependencies were defined.

Continue reading …

Setting App Service connection strings in ARM

For automatic deployment of test environments we are spinning up App Service instances and want to automatically set connection strings for the database and other services in the same template.

According to the Azure Resource Manager documentation the property connectionStrings of the Microsoft.Web/sites/config resource type can be used. Alas, when I use that property the connection strings are not configured on the App Service.

Continue reading …

Remove data from BACPAC file

Today I needed to create a test database for one of the products I’m working on. In the backend it uses LINQ to SQL against a SQL Azure Database. Exporting the production database and cleaning it up with millions of records in it turned out to be not the most efficient way of creating an empty test database.

Continue reading …

Cloud Adoption Framework for Azure

Governance is one of the major adoption challenges when it comes to cloud computing. Organizations find themselves “not ready” to consume cloud services whether that perception is more a gut feeling or comes from experience.

Microsoft works hard to built a rich toolset to cover many aspects of governance such as Azure Policy, Azure Blueprints, Azure Cost Management and many more. But tooling is only half the equation.

Continue reading …