簡體   English   中英

獲取 XAML 構建定義中的詳細步驟

[英]Getting detailed steps in a XAML build definition

我在使用 XAML 構建定義的 TFS 2017 構建服務器上有這個舊項目。 我想獲得構建執行的所有步驟,因為它似乎構建解決方案並制作一些包。

TFS 管理員(不是我)無法安裝任何允許您導出構建的插件...所以我正在嘗試通過代碼

我現在有下面的代碼來獲取基本信息,但我需要詳細的步驟/任務信息,以便我可以設置一個完全相同的新版本。 我仍然可以在 VS 中訪問 xaml 構建定義,但這只是說它構建了解決方案,沒有其他步驟。
我通過首先遍歷項目的所有定義來獲得定義的 id,只要我快速而骯臟地得到我需要的東西,它就不必是整潔的代碼。

    TfsTeamProjectCollection ttpc2 = new TfsTeamProjectCollection(tfsurl);
    var buildClient = ttpc.GetClient<XamlBuildHttpClient>();
    var defs = buildClient.GetDefinitionsAsync(project: "PROJECT NAME").Result;

    var definition = defs.First(x => x.Id == 22);
    Console.WriteLine("uri: " + definition.Uri);
    Console.WriteLine("name: " + definition.Name);
    Console.WriteLine("id: " + definition.Id + " project id: " + definition.Project.Id);

順便說一句,此定義的最后一次構建失敗(由於放置文件夾不可用),並且在我在代碼中獲得的定義中它也是 null。 我仍然可以在服務器上看到所有以前的構建。 我原以為 lastbuild 將包含最后一次成功的構建或具有“失敗”狀態或其他內容的最新構建。

XAML 構建沒有任務。 這是 Windows 工作流程。 沒有辦法獲得“步驟”,因為 XAML 構建過程模板實際上是一個程序。 您可以運行相同的構建兩次並根據任意數量的因素獲得完全不同的行為。

如果您使用的是開箱即用的構建過程模板,您會發現默認的 JSON 構建/YAML 構建模板或多或少地執行相同的操作。 如果您有自定義構建過程模板,則必須在 XAML 編輯器中打開它並通讀代碼並盡可能復制它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM