2

Я использую SourceGear Vault и applyLabel = «истину» для проекта так, когда он строит это создаст ярлык в SourceGear Vault для соответствующего project.My вопросовCruiseControl.NET сборка этикетка и SourceGear Vault Практик Связанный Вопрос

у меня есть ночные сборки, так что, если я не имеют никаких изменений, внесенных в этот проект в тот же день, то как я могу определить мои настройки ....

<sourcecontrol type="vault" autoGetSource="true" applyLabel="true"> 
      <executable>c:\program files\sourcegear\vault client\vault.exe</executable> 
      <username>john</username> 
      <password>password</password> 
      <host>server</host> 
      <repository>Default Repository</repository>   
      <folder>$/Projects/xxx/xxx/xxx/source/xxx/xxx/xxx/xx.source</folder> 
        <ssl>false</ssl> 
        <timeout units="minutes">10</timeout> 
        **<useWorkingDirectory>false</useWorkingDirectory>** 
        <workingDirectory>C:\CCNET\build\xx\xx\</workingDirectory> 
     </sourcecontrol> 

дело в том, что я не хочу ярлыки для сборки, где нет изменений в коде.

Любая помощь приветствуется.

ответ

2

В вашем определении проекта должен быть раздел <triggers>. Для наших ночных сборках мы используем следующее:

<triggers> 
     <scheduleTrigger time="00:30" buildCondition="IfModificationExists"/> 
    </triggers> 

Это говорит CCNet строить в 00:30 с часами, только если изменения были проверены в с момента последней сборки. Важная часть здесь - buildCondition="IfModificationExists", которая может использоваться для любого типа триггера.

0

Итак, вы имеете в виду, что у вас разные определения для ночных и нормальных сборок или разных триггеров?

+0

Это должен был быть комментарий к моему сообщению, но ... да. У нас есть разные определения сборки для ночных и CI-сборок, которые строятся из разных каталогов на одном сервере сборки. Они также используют разные триггеры, поскольку в определении CI используется интервалTrigger. – 2008-11-12 18:03:49

Смежные вопросы