Сборка проекта WIX с Team Build - PullRequest
       29

Сборка проекта WIX с Team Build

2 голосов
/ 15 января 2011

Я использую WIX для создания setup.msi для своего проекта на сервере TFS.Я добавил проект WIX в решение.

Для начала, до того, как я добавил проект WIX в свое решение, Team Build выводил все сборки проекта в папку для перетаскивания, что было прекрасно.

Но теперь, когда я добавил установщикпроект, я хочу, чтобы Team Build выводил только мои MSI, а не сборки проекта в мою папку.

Я думаю, что мне не хватает некоторых настроек конфигурации.Не могли бы вы подсказать, что может быть здесь не так?

Пожалуйста, сообщите.

Сборка команды выводит .msi, а также все сборки проекта

Ответы [ 2 ]

1 голос
/ 07 февраля 2011

Насколько я понимаю, ваша сборка работает нормально. Вы просто хотите, чтобы ваша папка Build Drop содержала MSI и никаких других файлов.

Если вы используете Team Build 2008, то для этого можно добавить новый <Target> в файл TFSBuild.proj, который переопределяет встроенную цель CoreDropBuild.

<Target Name="CoreDropBuild"
    Condition=" '$(IsDesktopBuild)'!='true' and '$(SkipDropBuild)'!='true' "
    DependsOnTargets="$(CoreDropBuildDependsOn)" > 

    <!-- Copy output MSI files -->
    <CreateItem Include="$(BinariesRoot)\**\*.msi" >
        <Output ItemName="FilesToCopy" TaskParameter="Include" />
    </CreateItem> 

    <Copy
        SourceFiles="@(FilesToCopy)"
        DestinationFiles="@(FilesToCopy ->'$(DropLocation)\$(BuildNumber)\%(RecursiveDir)%(Filename)%(Extension)')"
        ContinueOnError="true" /> 

</Target>
0 голосов
/ 09 апреля 2013

Насколько мне известно, нет другого способа сделать это, кроме как отключить копирование в папку сброса, а затем написать собственный процесс для копирования только тех файлов, которые вы хотите.Следуйте решению Grant для Team Build 2008 или 2010. Для TFS2012 вам потребуется создать собственный шаблон, содержащий эту пользовательскую копию файла.

...