Как я могу перейти на основе пользовательского ввода в MSBuild? - PullRequest
3 голосов
/ 12 февраля 2010

Как я могу остановить или продолжить сборку, основываясь на пользовательском вводе, используя MSBuild?

У меня сейчас есть файл в моем проекте:

<Target Name="Afterbuild">
    <MSBuild.ExtensionPack.UI.Dialog TaskAction="Confirm" Title="Production Deployment" Button1Text="Continue" Button2Text="Cancel" Text="WARNING !!! You are about to overwrite code on the prodution server. Please confirm!">
        <Output TaskParameter="ButtonClickedText" PropertyName="Clicked"/>            
    </MSBuild.ExtensionPack.UI.Dialog>

    <Message Text="User Clicked: $(Clicked)"/>
    <Message Text="User Typed: $(Typed)"/>
</Target>

Я не уверен, как поступить.

1 Ответ

4 голосов
/ 12 февраля 2010

Вы можете использовать задачу с ошибкой с условием:

<Target Name="Afterbuild">
  <MSBuild.ExtensionPack.UI.Dialog TaskAction="Confirm" Title="Production Deployment" Button1Text="Continue" Button2Text="Cancel" Text="WARNING !!! You are about to overwrite code on the prodution server. Please confirm!">
    <Output TaskParameter="ButtonClickedText" PropertyName="Clicked"/>            
  </MSBuild.ExtensionPack.UI.Dialog>

  <Error Condition="'$(Clicked)' == 'Cancel'"
         Text="Build have been canceled by user"/>

  <CallTarget Condition="'$(Clicked)' == 'Continue'"
              Targets="ContinueBuild"
              Text="Proceed with build"/>
</Target>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...