I have few questions about the way QB works:
1. I have a configuration variable which has a script inside, e.g. VAR_X = ${groovy: some_calculations_here}. I'd like to use it a number of times throughout the build process. Does QB evaluate it once at the beginning or each time I refer to it?
2. I have a configuration where build duration is about 1 hour. This configuration can be triggered number of times during 1 hour, so next few builds are queued by QB. Triggering step passes some variables, one of them is used as a build version and also in repository definition (i.e. as a part of config spec in ClearCase or changeset to build in Git). When exactly are those variables being evaluated?
3. In which order do these steps run?
- checking build condition
- pre-queue script
- calculating build version
- evaluating used variables
- evaluating repository definition if there are some groovy scripts in it
- calculating changes since previous build
- pre-build script
- snapshot taking
4. Checking build condition and calculating changes in ClearCase builds can take some time and cleartool command used in this process takes a lot of CPU. Can I dispatch it to few agents or does it have to run on QB server?
5. What exactly does a new option 'Record SCM changes'? Because I think I saw SCM changes in build overview even when this option was disabled. Also, does it speed up the build?
6. http://wiki.pmease.com/display/QB50/Commit+Command - if my issue tracker is not supported by QB do I have to first write a custom plugin similar to Trac/Bugzilla/JIRA plugin to be able to use this part of documentation and modify issues that are in build's changeset?