CCNET Exec с использованием RoboCopy дает сбой даже с ‹successExitCodes›

Итак, у меня есть проект CCNET, который успешно строится, пока я не включу задачу exec RoboCopy для выполнения развертывания:

<exec>
  <executable>C:\Windows\System32\robocopy.exe</executable>
  <buildArgs>D:\CCNETProjects\$(projectname)\Builds\Latest_Build\_PublishedWebsites\$(projectname) D:\TEST_$(projectname) *.* /E /NP /XF *.config /XD config</buildArgs>
  <buildTimeoutSeconds>60</buildTimeoutSeconds>
  <successExitCodes>0,1,2,4,8,16</successExitCodes>
</exec>

Как видите, я включил все возможные коды выхода, перечисленные здесь; http://ss64.com/nt/robocopy-exit.html

Задача выполняется успешно (файлы копируются нормально), результаты сборки не показывают ошибок для этой задачи, но моя сборка все равно не работает!

<buildresults>
  <message>-------------------------------------------------------------------------------</message>
  <message>   ROBOCOPY     ::     Robust File Copy for Windows                              </message>
  <message>-------------------------------------------------------------------------------</message>
  <message>  Started : Wed Jun 27 19:50:45 2012</message>
  <message>   Source : D:\CCNETProjects\FieldworkReportGenerator\Builds\Latest_Build\_PublishedWebsites\FieldworkReportGenerator\</message>
  <message>     Dest : D:\TEST_FieldworkReportGenerator\</message>
  <message>    Files : *.*</message>
  <message>     </message>
  <message>Exc Files : *.config</message>
  <message>     </message>
  <message> Exc Dirs : config</message>
  <message>     </message>
  <message>  Options : *.* /S /E /COPY:DAT /NP /R:1000000 /W:30 </message>
  <message>------------------------------------------------------------------------------</message>
  <message>                    5    D:\CCNETProjects\FieldworkReportGenerator\Builds\Latest_Build\_PublishedWebsites\FieldworkReportGenerator\</message>
  <message> *EXTRA Dir        -1    D:\TEST_FieldworkReportGenerator\App_Data\</message>
  <message> *EXTRA Dir        -1    D:\TEST_FieldworkReportGenerator\downloads\</message>
  <message> *EXTRA Dir        -1    D:\TEST_FieldworkReportGenerator\uploads\</message>
  <message>                   18    D:\CCNETProjects\FieldworkReportGenerator\Builds\Latest_Build\_PublishedWebsites\FieldworkReportGenerator\bin\</message>
  <message>     Newer              22528    ExcelHelpers.dll</message>
  <message>     Newer              48640    ExcelHelpers.pdb</message>
  <message>     Newer              33280    FieldworkReportGenerator.dll</message>
  <message>     Newer              54784    FieldworkReportGenerator.pdb</message>
  <message>                    1    D:\CCNETProjects\FieldworkReportGenerator\Builds\Latest_Build\_PublishedWebsites\FieldworkReportGenerator\Content\</message>
  <message>                    0    D:\CCNETProjects\FieldworkReportGenerator\Builds\Latest_Build\_PublishedWebsites\FieldworkReportGenerator\Content\themes\</message>
  <message>                   14    D:\CCNETProjects\FieldworkReportGenerator\Builds\Latest_Build\_PublishedWebsites\FieldworkReportGenerator\Content\themes\base\</message>
  <message>                   13    D:\CCNETProjects\FieldworkReportGenerator\Builds\Latest_Build\_PublishedWebsites\FieldworkReportGenerator\Content\themes\base\images\</message>
  <message>                   20    D:\CCNETProjects\FieldworkReportGenerator\Builds\Latest_Build\_PublishedWebsites\FieldworkReportGenerator\Scripts\</message>
  <message>                    6    D:\CCNETProjects\FieldworkReportGenerator\Builds\Latest_Build\_PublishedWebsites\FieldworkReportGenerator\uploadify\</message>
  <message>                    2    D:\CCNETProjects\FieldworkReportGenerator\Builds\Latest_Build\_PublishedWebsites\FieldworkReportGenerator\Views\</message>
  <message>                    4    D:\CCNETProjects\FieldworkReportGenerator\Builds\Latest_Build\_PublishedWebsites\FieldworkReportGenerator\Views\Account\</message>
  <message>                    3    D:\CCNETProjects\FieldworkReportGenerator\Builds\Latest_Build\_PublishedWebsites\FieldworkReportGenerator\Views\Home\</message>
  <message>                    3    D:\CCNETProjects\FieldworkReportGenerator\Builds\Latest_Build\_PublishedWebsites\FieldworkReportGenerator\Views\Shared\</message>
  <message>------------------------------------------------------------------------------</message>
  <message>               Total    Copied   Skipped  Mismatch    FAILED    Extras</message>
  <message>    Dirs :        13         0        13         0         0         3</message>
  <message>   Files :        89         4        85         0         0         0</message>
  <message>   Bytes :    9.61 m   155.5 k    9.46 m         0         0         0</message>
  <message>   Times :   0:00:00   0:00:00                       0:00:00   0:00:00</message>
  <message>   Speed :              462883 Bytes/sec.</message>
  <message>   Speed :              26.486 MegaBytes/min.</message>
  <message>   Ended : Wed Jun 27 19:50:45 2012</message>
</buildresults>

информация ccnet.log тоже ничего не показывает;

2012-06-27 19:44:02,507 [4:DEBUG] [FieldworkReportGenerator C:\Windows\System32\robocopy.exe]    Ended : Wed Jun 27 19:44:02 2012
2012-06-27 19:44:02,538 [4:DEBUG] [FieldworkReportGenerator C:\Windows\System32\robocopy.exe] standard-output stream closed -- null received in event
2012-06-27 19:44:02,538 [11:DEBUG] [FieldworkReportGenerator C:\Windows\System32\robocopy.exe] standard-error stream closed -- null received in event
2012-06-27 19:44:02,538 [5:DEBUG] [FieldworkReportGenerator C:\Windows\System32\robocopy.exe] process exited event received
2012-06-27 19:44:02,632 [FieldworkReportGenerator:INFO] Delete merged file 'D:\CCNETProjects\FieldworkReportGenerator\Artifacts\msbuild-results-7d2f394c-2b07-4131-9cfc-4d3f05968758.xml'.
2012-06-27 19:44:02,632 [FieldworkReportGenerator:INFO] Integration complete: Failure - 27/06/2012 19:44:02

У меня закончились идеи.


person Josh    schedule 27.06.2012    source источник


Ответы (1)


Коды выхода представляют собой битовую маску. Вы можете получить код выхода 3, если скомбинируете коды для 1 (некоторые файлы скопированы) и 2 (обнаружены дополнительные каталоги). Судя по вашему выводу, так оно и есть.

person maddoxej    schedule 28.06.2012
comment
Таким образом, вам действительно нужны только 0,1,2,3, так как это единственные коды успеха, где нет ошибки. - person markmnl; 26.07.2016
comment
В документе, указанном в вопросе, говорится, что любое значение больше 7 указывает на то, что во время операции копирования произошел по крайней мере один сбой. Вы можете определить 0,1,2,3,4,5,6,7 как успех. Это зависит от того, считаете ли вы наличие дополнительных файлов в выходной папке ошибкой. - person maddoxej; 26.07.2016