How to retry a failed stage in Azure DevOps

One of the biggest limitations of Azure DevOps has until now been the fact that you can’t retry an individual stage or step in a pipeline if it fails. Instead, you’d have to retry the entire pipeline again and hope that the failed stage passes. As of September 2019, in most cases you can now retry a failed stage without the need to retry the whole pipeline - but there’s a catch....

October 3, 2019 · 2 min

Using Cloudflare with Azure Blob Storage

If you’re storing files in Azure Storage, you’ll likely soon find that the cost of bandwidth will soon become one of the more expensive items in your Azure bill. By using a content delivery network (CDN), you can improve performance for those accessing your files from around the world, while also reducing the bandwidth costs incurred on Azure. Microsoft offers its own Azure CDN solution, or you can use Akamai or Verizon....

September 24, 2019 · 4 min

What is Azure DevOps used for?

Azure DevOps is a Microsoft product that can be used as part of the software development lifecycle, to manage the delivery, development and release of software products. DevOps is a paid product (although there is a free tier available) that many software development companies use - particularly those within the Microsoft ecosystem. It used to be called Visual Studio Team Studio (VSTS). DevOps is made up of 5 core areas of functionality:...

September 18, 2019 · 2 min

How to generate an Azure DevOps pipeline status badge for README files

Microsoft has made it very easy to generate badge icons that you can use wherever you’d like, showing the status of your build and release pipelines in Azure DevOps. The icons - which are made available as images - can be generated for both build pipelines and release pipelines on the Azure DevOps website. They change based on the outcome of the latest run, allowing you to place them in places such as your project’s Readme files....

August 20, 2019 · 1 min

How to link Azure DevOps with Jira

In this post, we’ll look at the official integration between Azure DevOps and Atlassian’s Jira software. Love it or hate it, Jira is among other things one of the most widely used issue tracking tools, and in July 2019 Microsoft rolled out a new Jira app that can be used to sync issues between DevOps and Jira, enabling end to end traceability between both platforms from when an issue is reported to when a deployment is released fixing it....

July 28, 2019 · 3 min

How to delete an Azure DevOps project

In this post we’ll look at how to delete an Azure DevOps project. First, you’ll need to login with your account to the DevOps portal. Choose the organisation that contains the project you want to delete from the left-hand sidebar, and then select the project you want to delete. Then, once you’re on the homepage for the project you wish to delete, click “Project Settings” in the bottom left-hand corner. If you don’t see this option you may not have the required permission to manage the project....

July 20, 2019 · 1 min

Using Azure Functions with Rider

Previously we’ve written about how to get started with Azure Functions using JetBrains Rider - but that’s now an outdated article, as the Azure plugin now offers seamless integration with the Microsoft Functions tooling. Gone are the days of manually updating project configuration files. What you’ll need In order to follow along, you’ll need to make sure you: Install JetBrains Rider (free 30-day trial available here) 2019.1 or later Getting started First you’ll want to install the Azure Toolkit for Rider....

June 18, 2019 · 2 min

Building Azure Functions in the Rider IDE

Many people now use Rider as their integrated development environment editor for .NET. However, when it comes to using it for developing Azure Functions, the out-of-the-box experience is (currently) less than ideal. I say currently, because in the next update to the Azure Toolkit plugin for Rider Functions support has been added. This’ll make running and debugging function apps a breeze. Until then though, here’s how you can run a functions app from Rider....

March 31, 2019 · 2 min

Azure App Configuration vs App Settings

For a long time now, App Settings have been the way to configure your app’s settings such as environment variables and connection strings for Azure App Services. In February 2019, Microsoft announced a new service called App Configuration - which, currently in preview - allows you to easily centralise your app settings across multiple resources. Why is App Settings a problem? App Settings are great - if you only need those settings for one resource (eg....

March 28, 2019 · 3 min

Understanding the Newtonsoft JSON Token

One of the concepts worth understanding when writing a custom converter for the popular Newtonsoft JSON framework is that of the JsonToken, and the role it plays in helping you understand the JSON being read. The JsonToken documentation for Newtonsoft is relatively sparse - in part because once you understand it, it’s a relatively simple concept. Effectively, when you’re attempting to deserialise a string representation of a JSON object, such as in the ReadJson method of a custom JsonConverter, the JsonToken represents each element or component (token if you prefer) of the object as it’s deserialised....

March 26, 2019 · 2 min