Hudson copiando arquivos com Robocopy

2

Eu tenho a configuração do hudson em um servidor de IC, estou usando o robocopy para copiar arquivos em um servidor da Web.

Estou tendo alguns problemas com códigos de saída. Robocopy relata tantos códigos de saída diferentes para sucesso e falha, hudson não os entende e relata qualquer coisa diferente de 0 como uma falha.

Embora eu tenha conseguido contornar isso chamando robocopy para fazer o mesmo trabalho duas vezes. Então, a primeira vez que ele faz a tarefa e retorna um código de saída diferente de zero e da próxima vez que não tiver nada para copiar, retornará 0. Isso funciona quando clico no botão de compilação no Hudson, mas não quando ele está monitorando o repositório do git para alguma razão.

Então, minha pergunta é: posso informar ao hudson sobre os códigos de saída individuais para que a compilação seja bem-sucedida ou eu precisaria criar um wrapper em torno do robocopy para fornecer códigos de saída que o hudson entende?

Felicidades

Tom

UPDATE Após a resposta de Peter, adicionei as seguintes declarações no final do meu script de robocopy

if ERRORLEVEL 1 set ERRORLEVEL=0
if ERRORLEVEL 2 set ERRORLEVEL=0
if ERRORLEVEL 3 set ERRORLEVEL=0 
if ERRORLEVEL 5 set ERRORLEVEL=0 
if ERRORLEVEL 6 set ERRORLEVEL=0 
if ERRORLEVEL 7 set ERRORLEVEL=0 

Como qualquer coisa abaixo de um 8 é considerado um sucesso para o robocopy, isso traduz os códigos de erro do hudson e relata um sucesso. Eu imagino que poderia refatorar isso em algum momento.

Obrigado pela sua ajuda, Peter!

UPDATE

Reformulou isso com a sugestão de Peter:

se% ERRORLEVEL% LEQ 7 definir ERRORLEVEL = 0

    
por Toggo 28.07.2010 / 12:29

1 resposta

3

É bastante fácil. Você tem que traduzir os códigos de erro para o Hudson. Eu uso a seguinte declaração depois do meu robocopy

if ERRORLEVEL 1 set ERRORLEVEL=0

Eu pesquisei códigos de erro de robocopy e encontrei a seguinte página. Você também pode procurar nas páginas da Microsoft pelos códigos de erro.

link

    
por 28.07.2010 / 14:32