The build strategy for a
plan determines how a build is triggered.
This table lists Bamboo's available 'build strategies', which determine how the execution of a plan (i.e. a build) is triggered. You set a Build Strategy option on the Plan Details tab of the plan configuration.
Build strategy option | Description | Reason for choosing |
---|
Code is updated | Polling the Repository for changes | Bamboo will 'poll' the source code repository for changes based on either of the following: - set intervals (periodically)
- a schedule.
If Bamboo detects a change to any code in this repository, a build of this plan will be triggered. See Polling the repository for changes. | - This is a 'pull strategy'.
- This is the simplest option.
- But it does mean that your SCM must service a 'check out' or 'update' command whenever it is polled, even if no code has changed in the repository.
|
Repository triggers the build when changes are committed | Bamboo will wait to receive a message from the source code repository (specified above) about any code changes in this repository. When Bamboo receives such a message, Bamboo will trigger a build of this plan. See Repository triggers the build when changes are committed. | - This is a 'push strategy'.
- This option minimises server load as message events are sent only when code changes to this repository are committed.
- But you must configure your source code management system to send message events to Bamboo about code changes in this repository.
|
Scheduled | Cron Based Scheduling | Bamboo will trigger a build of this plan based on a cron expression. See Cron-based scheduling. | - Allows you to run builds based on a schedule.
- This option allows you to schedule builds when server load is likely to be minimal, for example, outside office hours.
- Scheduled builds are triggered irrespective of any code changes in the source code repository.
|
Single daily build | Bamboo will trigger a build of this plan once per day at a specified time. See Single daily build. | - Can be set up to run at a time of you choice.
- This option is suitable if a build of this plan takes a long time to complete.
- Scheduled builds are triggered irrespective of any code changes in the source code repository.
|
Manual | Manual
| Bamboo only triggers a build of this plan when the user chooses this function manually or through a build dependency. See Triggering a plan build manually. | - This option is suitable if a build of this plan will fail, perhaps due to source code problems of failing tests.
- This frees up Bamboo agents to build other plans which are less likely to fail.
|