Azure-pipelines-tasks: Task: "Index Sources & Publish Symbols" v2 does not work on Linux

Created on 24 Nov 2017  路  11Comments  路  Source: microsoft/azure-pipelines-tasks

Troubleshooting

Environment

Issue Description

I tried to use the Index Sources & Publish Symbols as described at https://docs.microsoft.com/en-us/vsts/build-release/symbols/index?toc=/vsts/package/toc.json

However, it seems this does not work on Linux?

2017-11-24T11:41:14.8776090Z ##[section]Starting: Publish symbols path: 
2017-11-24T11:41:14.8820260Z ==============================================================================
2017-11-24T11:41:14.8833820Z Task         : Index Sources & Publish Symbols
2017-11-24T11:41:14.8847750Z Description  : Index your source code and publish symbols to a file share or Visual Studio Team Services Symbol Server
2017-11-24T11:41:14.8861380Z Version      : 2.0.3
2017-11-24T11:41:14.8876850Z Author       : Microsoft Corporation
2017-11-24T11:41:14.8890870Z Help         : See [more information](https://go.microsoft.com/fwlink/?LinkID=613722) on how to use this task. The Visual Studio Team Services Symbol Server is in private preview. See [these instructions](https://go.microsoft.com/fwlink/?linkid=846265) on how to participate in the private preview.
2017-11-24T11:41:14.8904330Z ==============================================================================
2017-11-24T11:41:15.0321090Z ##[error]A supported task execution handler was not found. This error usually means the task does not carry an implementation that is compatible with your current operating system. Contact the task author for more details.
2017-11-24T11:41:15.0364740Z ##[section]Finishing: Publish symbols path: 
Symbols enhancement

Most helpful comment

I get the following out of the task:

```##[section]Starting: Publish symbols path

Task : Index sources and publish symbols
Description : Index your source code and publish symbols to a file share or Azure Artifacts symbol server
Version : 2.0.16
Author : Microsoft Corporation

Help : See more information on how to use this task.

[error]The current operating system is not capable of running this task. That typically means the task was written for Windows only. For example, written for Windows Desktop PowerShell.

[section]Finishing: Publish symbols path

```

not sure why it's been closed?

All 11 comments

I am getting this same error. I am using a private agent: Ubuntu 16.04 hosted on an AWS EC2 instance. Everything works fine in my ASP.NET Core build definition except for the Index Sources & Publish Symbols task. I can't find any documentation anywhere that says this task shouldn't run on Ubuntu, so some Microsoft feedback here would be appreciated!

My Index Sources & Publish Symbols task version is 2.0.5.

Are there any updates on this? I'm having the same issue on a macOS private agent.

Thanks for reporting this (and sorry for the delay on following up). Currently symbol publishing is only supported on Windows agents. The Visual Studio team is working on adding .NET Core source linking support for VSTS to the debugger. When that lands we will look at what we need to do to bring the symbol publishing experience to Linux and macOS agents.

At this stage, this limitation is by design but we would like to change that once he other necessary elements are in place.

Thank you @CumpsD! SourceLink worked well to index the PDBs. I used the official Microsoft version which wasn't available when this issue was raised.

Having indexed the PDBs, I tried to them publish using the VSTS task, however even with indexing turned off (indexSource: false) the task still fails to run on Linux.

In light of this discussion on the matter I'm going to include my indexed PDBs into my NuGet package. The package is for private use only. For anyone else, the last 4 comments of that discussion are worth reading to understand the reasoning.

I get the following out of the task:

```##[section]Starting: Publish symbols path

Task : Index sources and publish symbols
Description : Index your source code and publish symbols to a file share or Azure Artifacts symbol server
Version : 2.0.16
Author : Microsoft Corporation

Help : See more information on how to use this task.

[error]The current operating system is not capable of running this task. That typically means the task was written for Windows only. For example, written for Windows Desktop PowerShell.

[section]Finishing: Publish symbols path

```

not sure why it's been closed?

Is this fixed now? On our On-Premises AzureDevOps server, which should be latest version, still does not work...

@mitchdenny wrote:

Thanks for reporting this (and sorry for the delay on following up). Currently symbol publishing is only supported on Windows agents. The Visual Studio team is working on adding .NET Core source linking support for VSTS to the debugger. When that lands we will look at what we need to do to bring the symbol publishing experience to Linux and macOS agents.

At this stage, this limitation is by design but we would like to change that once he other necessary elements are in place.

I think that this should be reopened since the reason why this issue was closed has failed. .NET Core Source Linking does not work with .NET Core 3 or later due to issues with changes done during builds of applications based on .NET Core 3 and it seems not to be any priority fixing this from the dotnet/sdk team (root issue dotnet/sdk#1458 has been open for over 3 years).

Source Link with Azure DevOps artifacts is not supported since Azure DevOps artifacts doesn't support snupkg packages and the "Alternative PDB distribution" doesn't work in .NET Core 3 or later (and in addition .NET Framework) due to lacking support to copying the pdb file to the build directory. The only (and recommended way) to do this now in Azure DevOps is to use the PublishSymbols with Azure pipelines which again doesn't work on Linux.

This issue dotnet/sourcelink#628 describes the Source Link issue quite well.

I think that this should be reopened since the reason why this issue was closed has failed.

Absolutely agree. The issue is not solved and because .NET Core / SourceLink has Linux support, Azure Artifacts should really support that.

/cc @johnterickson

Please upvote an existing feature request (or create a new one) on https://developercommunity.visualstudio.com/spaces/21/visual-studio-team-services.html?type=idea

Was this page helpful?
0 / 5 - 0 ratings