[asterisk-dev] Project Dependencies on Bamboo
Paul Belanger
pabelanger at digium.com
Mon Dec 6 16:35:58 UTC 2010
On 10-12-03 11:32 AM, Paul Belanger wrote:
> However I would like to flag 1 Plan as our primary and the remaining as
> secondary. We would then create a blocking dependency on the secondary
> plans so they will not build until the primary has been successful.
>
> Project: Asterisk - Trunk
> Primary Plan:
> Ubuntu Lucid (10.04) > ASTTRUNK-LUCID-75
> Secondary Plan:
> Plan: CentOS 5.5 > ASTTRUNK-CENTOS55-60
> Plan: Debian Lenny (5.0) > ASTTRUNK-LENNY-72
> Plan: Fedora 13 > ASTTRUNK-FEDORA13-2
> Plan: FreeBSD 8.1 > ASTTRUNK-FREEBSD81-50
> Plan: Mac OS X Snow Leopard (10.6) > ASTTRUNK-SNOWLEOPARD-74
> Plan: Mac OS X Tiger (10.4) > ASTTRUNK-TIGER-73
>
As a follow up,
On Friday afternoon I updated our existing plan to use the above
dependency mapping, it seems to be working well. I also enabled 'Block
build if parent builds are queued or in progress' for the secondary
plans. I was curiosity and wanted to see how it worked.
Basically, if the parent builds (primary host) are queued or building,
the current build (secondary) will be blocked. Once the parent has been
successful and no more in the queue, the secondaries will SVN checkout
all revisions since their last successful build. A method to save CPU
cycles on secondary hosts. So, primary hosts svn check and build every
revision, and secondaries do the same. Unless the primary has another
build queued, then the secondary will wait and svn checkout all
revisions at once.
While we may not need to enable this feature for Asterisk, we could use
it for Asterisk SCF builds. Since we are using a series of repo
triggers to build the git-all plan. If a block was set on git-all, it
would not run until all trigger repos have queued and successful built.
--
Paul Belanger
Digium, Inc. | Software Developer
twitter: pabelanger | IRC: pabelanger (Freenode)
Check us out at: http://digium.com & http://asterisk.org
More information about the asterisk-dev
mailing list