Authentication loops swapping organisations in Azure DevOps

I have recently been getting a problem swapping between different organisations in Azure DevOps. It happens when I swap between Black Mable ones and customer ones, where each is back by different Azure Active Directory (AAD) but I am using the same credentials; because I am either a member of that AAD or a guest. The problem is I get into an authentication loop. It happens to be in Chrome, but you might find the same problem in other browsers....

August 13, 2019 · 2 min · Richard Fennell

Azure DevOps Repos branch build policies not triggering when expected in PRs - Solved

I recently hit a problem with builds triggered by branch policies in Azure DevOps Repos. With the help of Microsoft I found out the problem and I thought it worth writing up uncase others hit the issue. Setup Folders Assume you have a Git repo with source for the UI, backend Services and common code in sub folders / [root] UI Services Common Branch Policies On the Master branch there are a policies of running...

May 23, 2019 · 1 min · Richard Fennell

Regex issues in Node

I have been trying to use Regex to select a block of an XML based .NET Core CSPROJ file, and yes before you say know I could use XPATH, but why am not is another story. I was trying to use the Regex content.match(/<PropertyGroup>((.|n)\*)</PropertyGroup>/gmi) The strange thing was this selection string worked in online Regex testers and in online Javascript IDEs, but failed inside my Node based Azure DevOps Pipeline extension....

May 23, 2019 · 1 min · Richard Fennell

A fix for Error: SignerSign() failed.&quot; (-2146958839/0x80080209) with SignTool.exe

I have spent too long recently trying to sign a UWP .MSIXBUNDLE generated from an Azure DevOps build using the SignTool.exe and our code signing certificate. I kept getting the error Done Adding Additional Store Error information: "Error: SignerSign() failed." (-2146958839/0x80080209) From past experience, SignTool errors are usually due to the publisher details in the XML manifest files (in this case unpack the bundle with MakeAppx.exe and look in AppxMetadataAppxBundleManifest.xml, and also check the manifest in the bundled ....

April 30, 2019 · 1 min · Richard Fennell

Programmatically adding User Capabilities to Azure DevOps Agents

I am automating the process by which we keep our build agent up to date. The basic process is to use a fork of the standard Microsoft Azure DevOps Pipeline agent that has the additional code included we need, notably Biztalk. Once I have the Packer created VM up and running, I need to install the agent. This is well document, just run _.config.cmd –help _for details. However, there is no option to add user capabilities to the agent....

December 6, 2018 · 1 min · Richard Fennell

Keeping Azure DevOps organisations inherited process templates in sync

The problem If you are like me for historic reasons you have multiple Azure DevOps organisations (instances) backed by the same Azure Active Directory (AAD). In my case for example: one was created when Azure DevOps was first released as TFSPreview.com and another is from our migration from on-prem TFS using the DB Migration Tools method; and I have others. I make active use of all of these for different purposes, though one is primary with the majority of work done on it, and so I want to make sure the inherited process templates are the same on each of them....

November 29, 2018 · 4 min · Richard Fennell

DPI problems after upgrading from Camtasia 8 to 2018

This is another of those posts I do so I don’t forget how I fixed something. I have a requirement to record videos for a client in 720p resolution. As I use as SurfaceBook with a High-Res screen I have found the best way to do this is set my Windows screen resolution to 1280x720 and do all my recording at this as native resolution. Any attempt to record smaller portions of a screen or scale video in production have lead to quality problems, especially as remote desktops within remote desktops are required....

November 26, 2018 · 1 min · Richard Fennell

Using Paths in PR Triggers on an Azure DevOps Pipelines Builds

When I started creating OSS extensions for Azure DevOps Pipelines (starting on TFSPreview, then VSO, then VSTS and now named Azure DevOps) I made the mistake of putting all my extensions in a single GitHub repo. I thought this would make life easier, I was wrong, it should have been a repo per extension. I have considered splitting the GitHub repo, but as a number of people have forked it, over 100 at the last count, I did not want to start a chain of chaos for loads of people....

October 2, 2018 · 2 min · Richard Fennell

Videos do not play in VSTS WIKI via relative links - workaround

The Problem The documentation for the VSTS WIKI suggests you can embed a video in a VSTS WIKI using the markdown/HTML``` Problem is that this does not seem to work, the MP4 just does not appear, you get an empty video player. However, if you swap to a full URL it does work e.g. ### The Workaround The workaround is to either place the MP4 file in some URL accessible location e....

August 31, 2018 · 1 min · Richard Fennell

Registering an agent with VSTS and getting the message &quot;Agent pool not found&quot;

When you want to register a build agent with VSTS, you use the VSTS instance’s URL and a user’s Personal Access Token (PAT). Whilst doing this today I connected to the VSTS instance OK but got the error “Agent pool not found”.when I was asked to pick the agent pool to add the new agent to. As the user who’s PAT I was using was a Build Administrator I was a bit confused, but then I remembered to check their user access level....

August 16, 2018 · 1 min · Richard Fennell