CCNet: كيف يمكنني نسخ رقم مراجعة SVN إلى ملف في MSBUILD؟
-
13-09-2019 - |
سؤال
هل يعرف Anyboy كيفية اجتياز LastChangeNumber
المعلمة إلى msbuild؟
أحاول استخدام هذا:
<Exec Condition=" '$(LastChangeNumber)' != '' " Command=">\\server\destination\subversion_revision.txt echo subversion $(LastChangeNumber)" />
الذي يتجاهل بنجاح الحالة إذا أترك المعلمة lastchangenumber من msbuild، وينجح إذا مرت في معلمة بطابقين مثل /p:LastChangeNumber=foo
. وبعد ومع ذلك، عندما أحاول ذلك:
<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>
أحصل على خطأ في سجل خادم Crusiecontrol.net:
CHANNIONWORKS.CRUISECONTROL.CORE.CONFIG.PREPROCESOR.evaluationException: إشارة إلى رمز غير معروف lastchangeNumber
المحلول
حسنا، وجدت طريقة واحدة للقيام بذلك:
<Exec Command=">$(DeployDir)label.txt echo subversion $(CCNetLabel)" />
مع تسمية مخصصة:
<labeller type="assemblyVersionLabeller">
<major>2</major>
<minor>0</minor>
</labeller>
لا تنتمي إلى StackOverflow