web-dev-qa-db-ja.com

* .snupkgシンボルパッケージをVSTSのプライベートフィードに公開する

VSTSビルドを使用して、.net標準ベースのコードをnugetパッケージとしてパッケージ化して公開したいと考えています。シンボルパッケージと共にnugetパッケージを発行したいプライベートnugetフィード(VSTSアーティファクト内)を作成しました。

Dotnet CLIタスクを使用してビルドと公開を試みましたが、それは.nupkgのみを公開し、*。snupkgはnugetフィードに公開しません。

私はたくさんグーグルしましたが、私はnuget.orgへの公開に関連する記事だけを見つけました。

6
Prado

現在、Azure Artifactsは.snupkgsをサポートしていませんが、Azure Pipelinesを使用して構築している場合に公開できるシンボルサーバーを持っています。 このドキュメント は、シンボルを発行するパイプラインの設定を順を追って説明しています。

2
Alex Mullans

シンボルPDBをメインのNuGetパッケージ自体に埋め込むこともできます。 IMOは今日ここでの最良のアプローチです。これははるかに単純で、シンボルサーバーの必要性をまったくなくし、すべてのリポジトリタイプで適切に機能します。プライベートVSTS/Azure DevOpsはパブリックリポジトリをフィードします。唯一の欠点は、クライアントがデバッグ情報を使用しなくても、適度に大きなNuGetパッケージをダウンロードする必要があることですが、それはマイナーなようです。

NuGetパッケージにPDBを追加するには、通常、これをプロジェクトファイルに追加するだけです。

<AllowedOutputExtensionsInPackageBuildOutputFolder>$(AllowedOutputExtensionsInPackageBuildOutputFolder);.pdb</AllowedOutputExtensionsInPackageBuildOutputFolder>

NuGet#4142 および nuget(nupkg)ファイルにpdbファイルを含める を参照してください。

2