CCNet: ¿Cómo puedo copiar el número de revisión SVN con un archivo de MSBuild?
-
13-09-2019 - |
Pregunta
¿Tiene anyboy saber cómo pasar el parámetro LastChangeNumber
en MSBuild?
Estoy tratando de utilizar esto:
<Exec Condition=" '$(LastChangeNumber)' != '' " Command=">\\server\destination\subversion_revision.txt echo subversion $(LastChangeNumber)" />
Lo que hace caso omiso de la condición de éxito si dejo a cabo el parámetro LastChangeNumber del MSBuild, y tiene éxito si paso en un parámetro de litera como /p:LastChangeNumber=foo
. Sin embargo, cuando intento esto:
<msbuild>
<executable>C:\WINDOWS\Microsoft.NET\Framework\v3.5\MSBuild.exe</executable>
<projectFile>MySolution.sln</projectFile>
<buildArgs>/noconsolelogger /p:Configuration=Debug /p:LastChangeNumber=$(LastChangeNumber) /v:diag</buildArgs>
<logger>C:\Program Files\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MsBuild.dll</logger>
</msbuild>
Me aparece un error en mi registro del servidor CrusieControl.NET:
ThoughtWorks.CruiseControl.Core.Config.Preprocessor.EvaluationException: Referencia al símbolo desconocido LastChangeNumber
Solución
Bueno, he encontrado una manera de hacerlo:
<Exec Command=">$(DeployDir)label.txt echo subversion $(CCNetLabel)" />
Con una etiquetadora personalizado:
<labeller type="assemblyVersionLabeller">
<major>2</major>
<minor>0</minor>
</labeller>
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow