J'ai un projet .Net 4.0 que je souhaite construire dans CruiseControl.Net.Pourquoi les champs CruiseControl.Net ne sont-ils pas disponibles dans mon script de construction?
Il est maintenant configuré, donc il construit un build de publication et fonctionne parfaitement à l'exception du numéro de version, où je ne peux pas référencer CCNetLabel, que je souhaite utiliser pour le dernier chiffre du numéro de version.
Lorsque j'essaie de faire référence au champ/variable, on me dit que c'est inconnu.
Il semblerait que CC.Net ne «transfère» pas les valeurs à mon script, mais qu'est-ce que je fais de mal?
Ci-dessous ccnet.config et produit ci.config
Merci pour toutes suggestions,
Anders, Danemark
<cruisecontrol xmlns:cb="urn:ccnet.config.builder">
<cb:include
href="configs/product-ci.config"
xmlns:cb="urn:ccnet.config.builder"/>
</cruisecontrol>
<cb:scope xmlns:cb="urn:ccnet.config.builder"
CCNetWebServer="dkapp04"
TriggerInterval="10"
WorkingDir="d:\ccnet.output\product"
msBuildTargets="Publish"
excludedNunitCategories=""
publishUrl="http://dkapp04/product/Dev/"
destinationFolder="d:\ccnet.output\product\Dev"
version ="1.0.0.${CCNetLabel}"
>
<project
name="product"
webURL="http://$(CCNetWebServer)/ccnet/server/local/project/product-ci/ViewLatestBuildReport.aspx"
queue="default">
<state type="state" directory="C:\Program Files\CruiseControl.NET\server\States\" />
<triggers>
<intervalTrigger seconds="$(TriggerInterval)" />
</triggers>
<sourcecontrol type="svn">
<trunkUrl>https://dkapp04.company.com/svn/product/trunk</trunkUrl>
<workingDirectory>$(WorkingDir)</workingDirectory>
<cleanCopy>false</cleanCopy>
<executable>C:\Program Files\VisualSVN Server\bin\svn.exe</executable>
</sourcecontrol>
<tasks>
<msbuild
executable = "C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe"
workingDirectory = "$(WorkingDir)\src"
projectFile="BuildScript.proj"
buildArgs = "/p:Configuration=Debug /p:excludedNunitCategories=$(excludedNunitCategories) /p:DestinationFolder=$(destinationFolder) /p:PublishUrl=$(publishUrl) /p:ApplicationVersion=$(version)"
targets = "$(msBuildTargets)"
timeout = "100"
logger = "C:\Program Files\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MsBuild.dll"
/>
</tasks>
</project>
</cb:scope>
Salut Pratik, merci d'avoir pris le temps. J'aurais besoin d'un peu plus d'aide, cependant. J'ai maintenant téléchargé le svnRevisionLabeller qui fonctionne comme un charme. Je reçois les révisions que je vise. La version publiée est toujours 1.0.0.3 comme écrit dans les fichiers source (et affiché dans VS). Comment puis-je obtenir la dernière étape dans msbuild? Je n'arrive pas à trouver les paramètres qui correspondent ... –
Ma solution était la suivante - je n'avais pas le paramètre version dans la ligne. Merci pour aider, Anders –