We are currently setting up BuildMaster to work through our build and deployment process. For the most part this is working fine. Because we will be building several internal libraries and applications through BuildMaster, it would be in our best interest to reduce the time taken to spawn up and configure each new application however.
The deployment plans that have been configured largely contain common steps due to heavy use of Release Variables with default values.
Ideally it would be nice if we could create a global workflow which had all but one environment using a global deployment plan. This would allow us to re-use the same workflow but still have the power to tweak the single custom plan as each application requires.
Because it doesn't appear to be possible to have a custom 'per application' deployment plan inside a global workflow (makes sense as the whole thing should be global), we need to look at an alternative.
I've created a sample application which I intend other developers to be able to duplicate as required for each new library or application that needs to be set up. I was hoping that we could just duplicate this through the New Application wizard and it would be able to:
1) Create a new application specific workflow.
2) Copy the custom application specific deployment plan and place a new un-linked instance inside the new workflow.
3) Maintain the global deployment plans so that they still link to the global versions.
Unfortunately it looks like we only have three options at this point in time, and none really fit what I want:
1) Copy Deployment Plans (creates a new instance of each deployment plan, including globals).
2) Link Entire Deployment Plans (exactly what it says on the tin, any change in the custom plan affects the sample application as well as each linked application)
3) Link Only Action Groups (same as 1 but action groups inside the plans remain linked together).
Is there a better way than this?
- Duplicating with the 'Link Entire Deployment Plans' option.
- Exporting the single custom deployment plan to XML.
- Creating a new deployment plan to replace the custom linked one.
- Re-importing the custom deployment plan from XML.
- Setting the execution server on all the action groups as it has disappeared.