Azure DevOps, GitHub, TFS, Tips & Tricks

What TFS/Azure DevOps Server version do I have?

At the time of writing this blog, exactly 200 versions of Team Foundation Server(TFS)/Azure DevOps Server exist. This is including CTP’s (Community Technology Preview, RC’s (Release Candidate), SP’s (Service Pack), CU’s (Cumulative Updates), Hotfixes, Patches, Updates and of course RTM’s/RTW’s (Release To Manufacturing/Release To Web). When checking the version number (e.g. 18.181.32118.5), it’s not always clear what marketing version it corresponds to (Azure DevOps Server 2020.1.1 Patch 4). There is no complete list on the Microsoft website that shows all versions. That’s why I thought: let’s do something about it.

In my daily work as a DevOps Consultant, I frequently help customers migrate their old TFS/Azure DevOps Server to Azure DevOps Services. When doing so, it helps to know exactly what version they are on, because migration is only supported from the last two versions. There are way more cases in which I want to know what exact version it is.

The list

That’s why I chose to start creating a list containing all versions of TFS and Azure DevOps Server. Every version is announced on the Microsoft website, along with the most important fixes and features for that specific version, so I wanted to include that. From 2015 on, a REST API was included with TFS, which has a version as well (it relates to the documentation of the REST API), so that had to be included as well.

Open source

I wanted the list to be open source for two reasons:

  • I want others to benefit from my work
  • I hope others will participate in making the list complete

So I opted to setup the list in MarkDown on GitHub. I have not yet had any contributors, but let’s hope, there will be in the near future.

The way I set it up

I could come up with all kinds of code/scripts that would more or less automagically gather the version information, but the information is very much scattered over the internet. That is why I collected the information manually, by using a lot of different sources (mentioned in the list itself). It took me quite some time, but now I feel it is 90% complete. The biggest gap is the RC version numbers that I’m missing. For upcoming releases I have setup two triggers. One is an IFTTT notification on my phone, based on the RSS feed of DevBlogs, where Microsoft publishes the updates. The other one is a Microsoft Office365 Power Automate to create a GitHub Pull Request when the word Patches occurs in the title of a new post on the same blog. This is experimental and I’m still waiting on the first occurrence to be able to test this. In a subsequent blog, I’ll explain how I set this up.

Hopefully the list will help you do your work as well!

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s