visual studio 2008 - CruiseControl.NET automated build version numbers -


this complicated one, hope explain enough.

background

i'm in process of automating build process cruisecontrol.net , nant. biggest headache i'm encounting version number format , cruisecontrol.net requiring label labeller before running build project.

currently developer runs visual studio 2008 produce debug, release , custom build. each of these configurations invoke buildinc (a custom tool) reads file (version.ver) increments read version number, generates .rc2 file executable properties , writes new version version.ver. version.ver , .rc2 change , need checking backing source before developer labels release in source control. label in source control version number i.e. 1.2.3.4 -> 1-2-3-4.

currently new automated build triggers cruisecontrol.net project invokes nant script. nant script runs visual studio , publishes builds release directory. works fine, nant script able previous , new version number reading version.ver. problem getting cruisecontrol.net label source , display label on dashboard. new version number/label generated during build , number increment held within visual studio project in pre-link tasks arguments.

version numbers

version numbers in unique format , different between builds done on trunk , development branches. builds done on branch enhancements merged trunk when completed.

trunk

  • format: [major].[merge].[release].00 i.e. 42.01.02.00
  • major: system number
  • merge: incremented if branch merged
  • release: incremented on bug fixes

branch

  • format [major].00.[stream].[release] i.e. 42.00.01.01
  • major: system number
  • stream: stream number, linking other components enhancement
  • release: incremented on bug fixes

numbers prefixed 0 i.e. 01, 02. doesn't play tools i'm encountered. (i'm hoping change that)

questions

after hope understand problems.

  1. what general improvements make automated process?
  2. do think version number should known before build started?
  3. should automate build system auto increment version number?
  4. should consider changing version number format?
  5. any other comments, need more opinions.

let me know if more information needed.

notes

language c++, platform windows , source control cvs.

you can add post build event project write latest build number (in whatever format want) text file, label.txt, in source folder.

then add filelabeller type labeling latest version number take version number label.txt.

<labeller type="filelabeller">    <labelfilepath>projectfolder\label.txt</labelfilepath>    <allowduplicatesubsequentlabels>true</allowduplicatesubsequentlabels> </labeller> 

Comments

Popular posts from this blog

linux - Using a Cron Job to check if my mod_wsgi / apache server is running and restart -

actionscript 3 - TweenLite does not work with object -

jQuery Ajax Render Fragments OR Whole Page -