Category: DevOps

Terraform set timezone upon virtual machine creation

Sometimes it’s important to set proper timezone on the server and recently I’ve got this task: set proper timezone automatically based on the server’s location in Azure Cloud. Moreover, I needed timezone to be set automatically by Terraform upon virtual machine creation.  In my case I had Ubuntu VMs in Azure and here is the …

Continue reading

How to find unattached Public IPs in Azure

Finding the Unassociated IP Addresses Open the Azure Portal. Perform a search for Public IP addresses. Click on the +Add filter option. From the drop-down for Operator, select “==”. Select “–” for Value. Click Apply. After you complete these steps, you’ll have a list of unattached Azure public IP addresses. The next phase of the operation involves selecting and deleting the addresses …

Continue reading

Publish Code Coverage of .NET app in SonarQube from Azure DevOps

This article enhances the one where I explained the steps of generation and publication code coverage in Azure DevOps pipeline. This time we go further and implement “shift-left” strategy by introducing SonarQube in Azure DevOps CI/CD process. Our task here will be not only configure code analysis in SonarQube but also get code coverage metrics …

Continue reading

Correct Way to Generate and Publish .NET Code Coverage in Azure DevOps

Cobertura Code Coverage in Azure DevOps Publishing code coverage in Azure DevOps and making it look pretty is way harder than it should be. It’s something that sounds simple, oh just check the box on the task – but nope you have to make sure to read the notes and add the additional parameter to …

Continue reading

How to resolve merge conflicts in Azure DevOps

There is a simple and effective extension that allows resolving Pull Requests merge conflicts directly in Azure DevOps: Pull Request Merge Conflict Extension

Continue reading

How to enable trace log and debug in Terraform CLI

To capture a trace log in Terraform, set the environment variable TF_LOG to TRACE. Refer to the steps below for details in your Terraform product:

Continue reading

Auto-renew Letsencrypt certificates in Azure Automation Account with managed identity

system-managed-identity

Recently my Job for renewing Letsencrypt certificates in KeyVault has stopped working. Upon closer look I found that my Run As account certificate expired: I navigated to certificate’s properties to renew it as described in Microsoft documentation and thouhgt I have 1 minute work to fix that but no! There is no option to renew …

Continue reading

Implementing Security Headers in Azure Application Gateway

If your Azure App Service is behind Azure Application Gateway you will need to implement Strict Transport Security and Secure Headers in your Azure Application Gateway instead of App Service’s web.config or .htaccess Azure Application Gateway has an ability to add, remove or modify inbound and outbound headers. This can be done in “Rewrites” section …

Continue reading

Implementing Security Headers in Azure App Service

Azure-App-Service

If you want to follow best security practices and implement Strict Transport Security and Secure Headers in your Azure App Service you will need to add Security Headers in web.config or .htaccess files in your web application’s root folder. Before you start remember that App Services run on a PaaS. This means that not everything …

Continue reading