cruisecontrol.net - CCNet AsseblyInfo update is not working. is there an issue with my config? -
below config using though force build doing check-in, version number of assemblies not updated.
probably missing thing.
note: new build servers , first. have lot of assemblyinfo.cs files, under different projects.
do need use msbuildtaks around this? if can example.
<cruisecontrol xmlns:cb="urn:ccnet.config.builder" xmlns="http://thoughtworks.org/ccnet/1/8"> <!-- preprocessor settings --> <cb:define artifactsdir="\artifacts" /> <cb:define productnamecompanysvnpath = "d:\companysvn\trunk\source\"/> <cb:define tortoisesvnexe = "c:\program files\tortoisesvn\bin\svn.exe"/> <cb:define svnpathtobuild = "http://dummy.mummy.com/svn/company/branches/branch-meau/" /> <cb:define nantexecutablepath = "c:\program files\nant\bin\nant.exe"/> <cb:define branchnameci="_br_meau_ci"/> <cb:define buildmode = "release"/> <cb:define platformcpu = "x86"/> <cb:define msbuildexecutable = "c:\windows\microsoft.net\framework64\v3.5\msbuild.exe" /> <cb:define majorversionnumber = "4"/> <cb:define minorversionnumber = "1"/> <cb:define name="svn_ci_productname"> <executable>$(tortoisesvnexe)</executable> <workingdirectory>$(productnamecompanysvnpath)productname.company\</workingdirectory> <trunkurl>$(svnpathtobuild)productname.company/</trunkurl> <cleanup>true</cleanup> <autogetsource>true</autogetsource> </cb:define> <cb:define name="svn_ci_database"> <executable>$(tortoisesvnexe)</executable> <workingdirectory>$(productnamecompanysvnpath)database\</workingdirectory> <trunkurl>$(svnpathtobuild)database/</trunkurl> <cleanup>true</cleanup> <autogetsource>true</autogetsource> </cb:define> <cb:define name="svn_ci_thirdparty"> <executable>$(tortoisesvnexe)</executable> <workingdirectory>$(productnamecompanysvnpath)thirdparty\</workingdirectory> <trunkurl>$(svnpathtobuild)thirdparty/</trunkurl> <cleanup>true</cleanup> <autogetsource>true</autogetsource> </cb:define> <cb:define name="svn_ci_release"> <executable>$(tortoisesvnexe)</executable> <workingdirectory>$(productnamecompanysvnpath)release\</workingdirectory> <trunkurl>$(svnpathtobuild)release/</trunkurl> <cleanup>true</cleanup> <autogetsource>true</autogetsource> </cb:define> <project name="company_svn_build" description="build trunk after merge."> <workingdirectory>$(productnamecompanysvnpath)productname.company\</workingdirectory> <!--<triggers> check source control every x time changes, , run tasks if changes found <intervaltrigger name="continuous" seconds="30" buildcondition="ifmodificationexists" initialseconds="5"/> </triggers>--> <triggers> <intervaltrigger name="continuous" seconds="180" buildcondition="ifmodificationexists" initialseconds="30" /> </triggers> <labeller type="assemblyversionlabeller"> <major>$(majorversionnumber)</major> <minor>$(minorversionnumber)</minor> <incrementonfailure>true</incrementonfailure> </labeller> <!-- souce branch required build binaries. --> <sourcecontrol type="multi"> <sourcecontrols> <svn> <cb:svn_ci_productname/> </svn> <svn> <cb:svn_ci_database/> </svn> <svn> <cb:svn_ci_thirdparty/> </svn> <svn> <cb:svn_ci_release/> </svn> </sourcecontrols> </sourcecontrol> <tasks> <msbuild> <executable>$(msbuildexecutable)</executable> <projectfile>$(productnamecompanysvnpath)productname.company\productname.company.sln</projectfile> <buildargs>/p:configuration=release /p:platform=$(platformcpu) /v:diag</buildargs> <targets>clean</targets> <timeout>9000</timeout> <logger>c:\program files (x86)\cruisecontrol.net\server\thoughtworks.cruisecontrol.msbuild.dll</logger> </msbuild> <msbuild> <executable>$(msbuildexecutable)</executable> <projectfile>$(productnamecompanysvnpath)productname.company\productname.company.sln</projectfile> <buildargs>/p:configuration=release /p:platform=$(platformcpu) /v:diag</buildargs> <targets>build</targets> <timeout>9000</timeout> <logger>c:\program files (x86)\cruisecontrol.net\server\thoughtworks.cruisecontrol.msbuild.dll</logger> </msbuild> <exec> <executable>prepare_productname_release.bat</executable> <basedirectory>$(productnamecompanysvnpath)release</basedirectory> <buildargs>all</buildargs> <buildtimeoutseconds>100</buildtimeoutseconds> </exec> </tasks> <!-- plublishers listed below --> <publishers> <xmllogger /> <artifactcleanup cleanupmethod="keeplastxbuilds" cleanupvalue="50" /> </publishers> </project> <!-- end projects --> </cruisecontrol>
if i'm reading correctly:
cc.net not going tag assemblyinfo.cs files. have yourself. "version" in cc.net context cardinal/ordinal number of build. first build "1", "2", etc, etc.
see assemblyinfo.cs "tagging" example here: use svn revision label build in ccnet
i prefer tag svn revision. may use cc.net version.
the way think of cc.net "a big super fancy msbuild caller" "with post build reporting".