次の方法で共有


Azure Pipelines を使用してシンボルを発行する

Azure DevOps Services |Azure DevOps Server 2022 |Azure DevOps Server 2020

Azure Pipelines では、 インデックス ソース とシンボルの発行タスクを使用して、シンボルを Azure Artifacts シンボル サーバーに発行できます。 デバッガーを使用すると、製品名、ビルド番号、パッケージ名を知らなくても、接続して正しいシンボル ファイルを自動的に取得できます。 Azure Pipelines を使用して、シンボルをファイル共有とポータブル PDB に発行することもできます。

インデックス ソースと発行シンボル タスクは、リリース パイプラインではサポートされていません。

Azure Artifacts シンボル サーバーにシンボルを発行する

  1. Azure DevOps 組織にサインインしてから、プロジェクトに移動します。

  2. [ パイプライン] を選択し、パイプラインを選択し、[ 編集] を選択してパイプラインを変更します。

  3. パイプライン定義から、 + を選択して新しいタスクを追加します。

  4. インデックス ソースとシンボルの発行タスクを検索します。 [ 追加] を選択してパイプラインに追加します。

  5. 次のように必須フィールドに入力します。

    • タスクのバージョン: 2.\*。

    • 表示名: タスクの表示名。

    • シンボル フォルダーへのパス: シンボル ファイルをホストしているフォルダーへのパス。

    • 検索パターン: シンボル フォルダーへのパスで指定したフォルダー内の .pdb ファイルを検索 するために使用されるパターン。 単一フォルダーのワイルドカード (*) と再帰ワイルドカード (**) の両方がサポートされています。 例: *\bin**.pdb: bin という名前のすべてのサブディレクトリ内のすべての .pdb ファイルを検索します。

    • インデックス ソース: ソース サーバー情報を PDB ファイルに挿入するかどうかを示します。

    • シンボルの発行: シンボル ファイルを発行するかどうかを示します。

      • シンボル サーバーの種類: シンボルを Azure Artifacts シンボル サーバーに発行するには、この組織またはコレクションのシンボル サーバー (Azure Artifacts が必要) を選択します。
    • 詳細ログ: ログに詳細情報を含めます。

インデックス ソースを構成し、シンボルを Azure Artifacts シンボル サーバーに発行するシンボル タスクを発行する方法を示すスクリーンショット。

ファイル共有にシンボルを発行する

Azure Artifacts シンボル サーバーとは別に、 インデックス ソースと シンボルの発行タスクを使用して、シンボルをファイル共有に発行することもできます。

  1. Azure DevOps 組織にサインインしてから、プロジェクトに移動します。

  2. [ パイプライン] を選択し、パイプラインを選択し、[ 編集] を選択してパイプラインを変更します。

  3. パイプライン定義から、 + を選択して新しいタスクを追加します。

  4. インデックス ソースとシンボルの発行タスクを検索します。 [ 追加] を選択してパイプラインに追加します。

  5. 次のように必須フィールドに入力します。

    • タスクのバージョン: 2.\*。

    • 表示名: タスクの表示名。

    • シンボル フォルダーへのパス: シンボル ファイルをホストしているフォルダーへのパス。

    • 検索パターン: シンボル フォルダーへのパスで指定したフォルダー内の .pdb ファイルを検索 するために使用されるパターン。

    • インデックス ソース: ソース サーバー情報を PDB ファイルに挿入するかどうかを示します。

    • シンボルの発行: シンボル ファイルを発行するかどうかを示します。

      • シンボル サーバーの種類: [ファイル共有 ] を選択して、シンボルをファイル共有に発行します。
      • シンボルを発行するパス: シンボルをホストするファイル共有。
    • 詳細ログ: ログに詳細情報を含めるかどうかを確認します。

    ファイル共有にシンボルを発行するようにインデックス ソースを構成し、シンボルを発行するタスクを示すスクリーンショット。

ポータブル PDB を Azure Artifacts シンボル サーバーに発行する

ポータブル PDB は、Windows でのみ使用される従来の PDB とは異なり、すべてのプラットフォームで作成および使用できるシンボル ファイルです。 移植可能な PDB の場合、ビルドではインデックス作成が行われますが、シンボルを発行するには、 インデックス ソースとシンボルの発行 タスクを使用する必要があります。

Source Link は、開発者が .NET アセンブリからソース コードにマッピングしてソース コードをデバッグできるようにする一連のツールです。 含まれているさまざまなパッケージについては、 dotnet/sourcelink GitHub リポジトリを参照してください。

  • GitHub でホストされているプロジェクトの場合は、 Microsoft.SourceLink.GitHub パッケージ参照をプロジェクト ファイルに追加します。

    <ItemGroup>
      <PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.1.1" PrivateAssets="All"/>
    </ItemGroup>
    
  • Azure Repos (以前の Visual Studio Team Services) でホストされているプロジェクトの場合は、 Microsoft.SourceLink.AzureRepos.Git パッケージ参照をプロジェクト ファイルに追加します。

    <ItemGroup>
      <PackageReference Include="Microsoft.SourceLink.AzureRepos.Git" Version="1.1.1" PrivateAssets="All"/>
    </ItemGroup>
    
  • Azure DevOps Server (以前の Team Foundation Server) でホストされているプロジェクトの場合は、 Microsoft.SourceLink.AzureDevOpsServer.Git パッケージ参照をプロジェクト ファイルに追加します。

    <ItemGroup>
      <PackageReference Include="Microsoft.SourceLink.AzureDevOpsServer.Git" Version="1.1.1" PrivateAssets="All"/>
    </ItemGroup>
    

発行タスクを設定する

ソースのインデックス作成とシンボルの発行タスクは、ソース コードのインデックスを作成し、シンボルを Azure Artifacts シンボル サーバーとファイル共有に発行するために使用されます。 ソース リンクを使用しているため、発行タスクでインデックス作成を無効にする必要があります。

  1. Azure DevOps 組織にサインインしてから、プロジェクトに移動します。

  2. [ パイプライン] を選択し、パイプラインを選択し、[ 編集] を選択してパイプラインを変更します。

  3. パイプライン定義から、 + を選択して新しいタスクを追加します。

  4. インデックス ソースとシンボルの発行タスクを検索します。 [ 追加] を選択してパイプラインに追加します。

  5. 必要なフィールドに入力し、[ シンボル サーバー] の 種類として [ シンボル サーバー] を選択します。 インデックス作成を無効にするには、 必ず [インデックス ソース ] をオフにします。

    ポータブル PDB を Azure Artifacts シンボル サーバーに発行するように発行タスクを構成する方法を示すスクリーンショット。

Von Bedeutung

[インデックス ソース] および [シンボルのパブリッシュ] タスクを使用してパブリッシュされたシンボルを削除するには、まず、それらのシンボルを生成したビルドを削除する必要があります。 これを行うには、保持ポリシー を使用するか、実行 を手動で削除します。

Visual Studio を設定する

Visual Studio for Mac では、シンボル サーバーを使用したデバッグはサポートされていません。

Azure Artifacts シンボル サーバーからシンボルの使用を開始する前に、Visual Studio が正しく設定されていることを確認しましょう。

  1. Visual Studio で、[ ツール ]、[ オプション] の順に選択します。

  2. [デバッグ] メニューから [シンボル] を選択します。

  3. +記号を選択して、新しいシンボル サーバーの場所を追加します。

    新しいシンボル サーバーの場所を追加する方法を示すスクリーンショット。

  4. 新しいダイアログ ボックスが表示され、ドロップダウン メニューから自分のアカウントを選択し、接続先の組織を選択します。 完了したら 、[接続 ] を選択します。

  5. 同じ [デバッグ] セクションから [全般] を選択します。 下にスクロールし 、[ソース リンクのサポートを有効にする] をオンにして、ポータブル PDB のサポートを有効にします。

    Visual Studio でソース リンクのサポートを有効にする方法を示すスクリーンショット。

[ソース サーバーのサポートを有効にする] オプションをオンにすると、ソース コードがローカルで使用できない場合や、シンボル ファイルがソース コードと一致しない場合に、ソース サーバーを使用できます。 サードパーティのソース コードのデバッグを有効にする場合は、[ マイ コードのみを有効にする] チェック ボックスをオフにします。

よく寄せられる質問

Q: シンボルが保持される期間は何ですか?

A: シンボル ファイルの保持期間は、シンボル ファイルを生成したビルドと同じです。 手動またはアイテム保持ポリシーを使用してビルドを削除すると、そのビルドによって生成されたシンボルも削除されます。

Q: .NET Core アセンブリから生成されたポータブル PDB でソース インデックス作成を使用できますか。

A: 現時点では不可能です。 移植可能な PDB では、ソース インデックス作成は現在サポートされていません。 推奨される方法は、インデックス作成を実行するようにビルドを構成することです。