1

I would like to check which custom installed extensions from VS Marketplace are used in both build and deployment pipelines.

Does Azure DevOps provide any view for that or must it be done manually?

Would tremendously help for extension management.

We are using on premise server ver.: 18.181.31230.2 (Azure DevOps Server 2020 Update 1)

Ondrej
  • 15
  • 6

4 Answers4

2

For what it worth, here is a powershell made to check custom task extensions usage in classic Releases but for Azure DevOps Services :

https://github.com/godev99/ps1/blob/main/azdevops_taskext_report.ps1

Quite dirty and messy but it might help.

gab
  • 81
  • 9
  • Do you maybe know this one as well? https://stackoverflow.com/questions/73543644/azure-version-number-must-increase-each-time-an-extension-is-published – CodeMonkey Aug 31 '22 at 18:04
1

If you're not using YAML pipelines yet, then this extension will allow you to easily query which tasks are used where:

https://marketplace.visualstudio.com/items?itemName=solidify-labs.build-task-explorer

For YAML it's harder since there are multiple ways to template these things and multiple ways to reference a task (by name, by guid, by full name). But when you query the timeline of an actual executed job you'll be able to easily extract the guides and names of the tasks. But you'll need to go fancy with the REST API.

jessehouwing
  • 106,458
  • 22
  • 256
  • 341
  • Unfortunately the extension is not the desired solution as it does not search globally (from the extension page), but only within the project AND only for build pipelines (if you find the task within your build definition IN the project you can switch for search globally, but not if the task is not used in the project). Looks like that only manual solution is possible then... but thank you for the suggestion. – Ondrej Mar 18 '22 at 14:41
  • 1
    Yeah, it's a pain. If you rely heavily on YAML it's even worse. Especially if your org also uses yaml-templates or decorator extensions. Probably the best way to then figure out which tasks are used is by looking at the timeline records of completed pipelines. – jessehouwing Mar 21 '22 at 11:41
  • Do you maybe know this one as well? https://stackoverflow.com/questions/73543644/azure-version-number-must-increase-each-time-an-extension-is-published – CodeMonkey Aug 31 '22 at 18:05
1

You can make all your pipelines searchable by using this tool: ExportPipelineDefinitions

It will export all your pipelines to disk so you can search them using "Find in files" in a search tool such as Visual Studio or VS Code.

You can search for a custom installed extension, a task name, a code snippet -- any character sequence your pipeline definitions are likely to contain.

I help manage a couple of hundred pipelines and consider this tool essential.

0

We currently do not have any method to monitor a pipeline task extension is being used by which pipelines.

Yes, the only way is manual check. You need to check the definitions of all the pipelines in the collection to see which are using the pipeline task extension.

Bright Ran-MSFT
  • 5,190
  • 1
  • 5
  • 12
  • Would really help if we had a way of "where used" capability in the extensions or at a minimum if we could identify if an extension is not being used for many days. It is a lot of pain if we have to track manually by going to each and every project especially since the extensions are not project scoped which would make it easy to track by limiting the scope. – BB8 Mar 28 '22 at 21:36
  • Azure DevOps is now mature enough that this functionality is essential for a couple of reasons... 1) Extensions are falling into unmaintained state over time, and for security reasons we must remove them. 2) We have approximately 1000 pipelines of all types - YAML, classic build, and and classic release. #1 becomes very difficult to do without breaking deliveries due to #2. Even functionality that tracks recent extension usage would be helpful. – GaTechThomas Aug 19 '22 at 19:26
  • Do you maybe know this one as well? https://stackoverflow.com/questions/73543644/azure-version-number-must-increase-each-time-an-extension-is-published – CodeMonkey Aug 31 '22 at 18:05