2009-03-03 41 views
0

我有3個構建腳本,可以創建分佈式應用程序套件的獨立組件。它們存儲在一個文件夾結構如下所示:如何共享幾個TFS構建腳本之間的屬性?

LegacyComponents - VB6的代碼是「活的」,但在被替換
NewComponents 的過程 - 改寫組件在C#
數據庫
TeamBuildTypes
└LegacyBuild
└新造
└DatabaseBuild

在每一個build文件夾中我有一個離譜pt命名爲TFSBuild.proj。

因爲構建是分開的,所以它們每個都有不同的內部版本號。我需要用一個字符串來標記每個字符串,以便我可以「獲得」一個標籤並擁有完整一致的代碼集。

我使用KitNumber屬性創建了一個名爲KitNumber.targets的文件,並將其放入TeamBuildTypes文件夾中。然後我把下面的行中的每個構建腳本:

<Import Project=".\..\KitNumber.targets"/>

我現在應該可以改變一個地方的套件數量,有它在每次構建應用。

這適用於我的開發盒,因爲源已經從TFS下來,但在構建機器上失敗,因爲只有包含構建腳本的目錄的內容被關閉。

那麼我在哪裏存儲共享屬性,以便我可以在每個腳本中使用它?

回答

0

使用文本文件一行包含我想申請標籤:

<Target Name="ApplyKitNumberLabel" Condition="$(KitNumber) != ''"> 

    <ReadLinesFromFile File="$(WorkspaceRoot)\TeamBuildTypes\KitNumber.txt"> 
    <Output TaskParameter="Lines" 
     PropertyName="KitNumber" /> 
    </ReadLinesFromFile> 

    <Label TeamFoundationServerUrl="$(TeamFoundationServerUrl)" 
     Files="$(WorkspaceRoot)\$(BranchName)\LegacyComponents" 
     Name="$(KitNumber)" 
     Recursive="True" /> 

</Target> 
相關問題