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.
- what general improvements make automated process?
- do think version number should known before build started?
- should automate build system auto increment version number?
- should consider changing version number format?
- 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
Post a Comment