Tenemos un proceso que se ejecuta antes de nuestras versiones nocturnas. Si el proceso falla, genera un archivo de texto. Todo lo que necesito hacer es verificar si el archivo existe, y si lo hace, causar un error de MSBuild.¿Cómo causo un error en MSBuild si existe un archivo?
que actualmente han intentado el siguiente:
<CreateProperty Condition="Exists('C:\Process\Fail.txt')"
Value="false">
<Output TaskParameter="Value" PropertyName="ProcessTestPassed"/>
</CreateProperty>
<Message Text="Process did not pass" Condition="Exists('C:\Process\Fail.txt')" ContinueOnError="false" />
<ReadLinesFromFile File="C:\Process\Fail.txt" Condition="'$(ProcessTestPassed)'=='false'" ContinueOnError="false" >
<Output TaskParameter="Lines" ItemName="FileContents" />
</ReadLinesFromFile>
<Message Text="FileContents: $(FileContents)" Condition="'$(ProcessTestPassed)'=='false'" ContinueOnError="false" />
que da un paso construido con esta salida:
Task "CreateProperty"
Done executing task "CreateProperty".
Task "Message"
QAWizardProTestPassed did not pass
Done executing task "Message".
Task "ReadLinesFromFile"
Done executing task "ReadLinesFromFile".
Task "Message"
FileContents:
Done executing task "Message".
Sé que lo anterior es algo excesivo, pero sólo necesito algo de trabajo! ¡¿Que me estoy perdiendo aqui?!
Gracias, Derek
creo que he encontrado una solución aceptable: <= Condición de error" Existe ('C: \ Process \ Fail.txt') "Text =" ¡El proceso no pasó! " /> – dprice
Esa es realmente una buena solución. –