Question

Est-ce anyboy savoir comment passer le paramètre LastChangeNumber dans MSBuild?

Je suis en train d'utiliser ceci:

<Exec Condition=" '$(LastChangeNumber)' != '' " Command=">\\server\destination\subversion_revision.txt echo subversion $(LastChangeNumber)" />

Ce qui ne tient pas compte avec succès la condition si je quitte le paramètre LastChangeNumber du MSBuild, et réussit si je passe un paramètre superposé comme /p:LastChangeNumber=foo. Cependant, quand j'essaie ceci:

  <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>

Je reçois une erreur dans mon journal du serveur CrusieControl.NET:

  

ThoughtWorks.CruiseControl.Core.Config.Preprocessor.EvaluationException:   Référence à symbole inconnu   LastChangeNumber

Était-ce utile?

La solution

Eh bien, je trouve une façon de le faire:

<Exec Command=">$(DeployDir)label.txt echo subversion $(CCNetLabel)" />

Avec une étiqueteuse personnalisée:

<labeller type="assemblyVersionLabeller">
  <major>2</major>
  <minor>0</minor>
</labeller>
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top