Очистка после неудачных сборок Nant - PullRequest
3 голосов
/ 30 сентября 2010

Я ищу свой скрипт компоновки nant, чтобы можно было убирать за собой, если сборка идет не так, как надо. Я ищу что-то похожее на следующее исполнение:

Target= Software.Build

Target= Software.Build.Success *(depends on Software.Build succeeding)*

Target= Software.Build.Failed

Я ищу решение, которое в случае сбоя цели Software.Build будет выполняться Software.Build.Failed, например, по электронной почте кому-нибудь, что сборка каким-то образом не удалась, в противном случае будет запущен Software.Build.Success, чтобы продолжить выполнение сценария сборки.

Возможно ли это даже с помощью nant? Если да, может ли кто-нибудь указать мне подходящую статью / решение?

Ответы [ 2 ]

6 голосов
/ 13 октября 2010

Или, если у вас есть глобальные данные для очистки, вы можете использовать событие NAnt OnFailure.

<property name="nant.onfailure" value="failure" />
<target name="failure">
    <!-- Put your cleaning code in here -->
</target>
4 голосов
/ 04 октября 2010

NAntContrib имеет trycatch задачу :

<trycatch>
  <try>
    <call target="Software.Build" />
  </try>
  <catch>
    <call target="Software.Build.Failed" />
    <fail message="build failed" />
  </catch>
  <finally>
    <!-- execute everything that doesn't depend on success or failure -->
  </finally>
</trycatch>
<call target="Software.Build.Success" />
...