2010-05-06 31 views
5

Tôi mới sử dụng TFS build. Tôi đã có một build được định nghĩa chạy như một sự tích hợp liên tục. Nó tạo ra một thư mục thả, nhưng không có gì trong đó.Làm cách nào để đưa tệp vào vị trí thả TFS Build

Phương pháp hay nhất để di chuyển nội dung trong thư mục thả là gì? Tôi đã nhìn thấy một thư mục Binaries, tôi cần phải sao chép mọi thứ vào đó, hoặc tôi làm thay đổi TFSbuild.proj một cách nào đó để sao chép các tập tin tôi muốn vào thư mục thả?

Trả lời

1

tôi dường như làm cho nó làm việc bằng cách thêm này gần cuối TFSBuild.proj tôi

<Target Name="PackageBinaries"> 
    <ItemGroup> 
     <FilesToDrop Include="$(SolutionRoot)\MyProduct\Installer\Bin\**\*.msi"/> 
    </ItemGroup> 
    <Message Text="[email protected](FilesToDrop)"/> 
    <Copy SourceFiles="@(FilesToDrop)" 
     DestinationFiles="@(FilesToDrop ->'$(BinariesRoot)\%(RecursiveDir)%(Filename)%(Extension)')"/> 
</Target> 

Nó sao chép muốn file msi vào thư mục Binaries mà tfs bình thường xây dựng hệ thống sau đó sao chép đến vị trí thả. Tôi nhận thấy thư mục Binaries bị xóa mỗi lần xây dựng được bắt đầu, vì vậy bạn không phải lo lắng về việc dọn dẹp.

Mục tiêu PackageBinaries dường như là tên mục tiêu chuẩn mà bạn có thể ghi đè để thực hiện loại điều này.


Cập nhật Mới hơn phiên bản của TFS có thể có những cách tốt hơn!

3

Có vẻ như bạn muốn sao chép các tệp khác từ không gian làm việc của bạn (hoặc ở nơi khác) vào vị trí thả?

Mục tiêu trên cung cấp cho bạn một ví dụ về cách tạo mục tiêu sao chép tệp, nhưng có thể bạn đang tự hỏi cách kết nối nó trong TFSBuild.proj của mình.

Cách đơn giản để thực hiện việc này là sử dụng một trong các mục tiêu bộ xương được xác định trước cho điều này chẳng hạn như AfterDropBuild. Nếu bạn đã có mục tiêu giống như mục tiêu đã đề cập ở trên để sao chép các tệp của mình, bạn sẽ đặt nó trong TFSBuild.proj:

<CreateItem Include="$(SolutionRoot)\Source\RandomFilesInWorkspaceFolder\**\*.*"> 
    <Output TaskParameter="Include" ItemName="RandomFiles" /> 
</CreateItem> 
<Copy SourceFiles="@(RandomFiles)" DestinationFiles="@(RandomFiles->'$(DropLocation)\RandomDestinationSubFolder\%(RecursiveDir)%(Filename)%(Extension)')" /> 
Các vấn đề liên quan