[Buildbot-devel] perforce connection

William Deegan bill at baddogconsulting.com
Mon Aug 20 17:12:36 UTC 2012


Andrea,

On Aug 20, 2012, at 3:28 AM, andrea crotti <andrea.crotti.0 at gmail.com> wrote:

> 2012/8/19 William Deegan <bill at baddogconsulting.com>:
>> Andrea,
>> 
>> 
>> On Aug 18, 2012, at 3:42 AM, Andrea Crotti <andrea.crotti.0 at gmail.com> wrote:
>> 
>>> I'll paste it on Monday, but I checked and (both slave and master) didn't contain any errors.
>> 
>> Not looking for errors, just looking for status logs.
>> It's likely seeing changes, bug discarding them because your scheduler isn't configured to build changes from your actual branches.
>> 
>>> 
>>> Yes in the actual path there are checkins, but where does master comes from?
>>> There is no master branch in general, but DEV and MAIN in general..
>> 
>> I comes from this part of your config.
>> 
>>>> c['schedulers'].append(SingleBranchScheduler(
>>>>   name="all",
>>>>   change_filter=filter.ChangeFilter(branch='master'),
>>>>   treeStableTimer=None,
>>>>   builderNames=["runtests"]))
>> 
>> What's the depot path to the branches you want to build?
>> 
> 
> Ok well I changed branch='master' to branch='DEV' and and
> p4base + 'DEV' definitively makes a depot path which makes sense now,
> but still I can't actually build anything
> 
> This is the twisd.log, but also there I don't see any useful information:
> 
> 2012-08-20 11:20:52+0100 [-] twistd 12.1.0 (/usr/bin/python2 2.7.3) starting up.
> 2012-08-20 11:20:52+0100 [-] reactor class:
> twisted.internet.epollreactor.EPollReactor.
> 2012-08-20 11:20:52+0100 [-] Starting BuildMaster -- buildbot.version: 0.8.6p1
> 2012-08-20 11:20:52+0100 [-] Loading configuration from
> '/home/andrea/pytest_buildbot/master.cfg'
> 2012-08-20 11:20:52+0100 [-] Setting up database with URL
> 'sqlite:///state.sqlite'
> 2012-08-20 11:20:53+0100 [-] setting database journal mode to 'wal'
> 2012-08-20 11:20:53+0100 [-] adding 1 new changesources, removing 0
> 2012-08-20 11:20:53+0100 [-] adding 3 new slaves, removing 0
> 2012-08-20 11:20:53+0100 [-] adding 1 new builders, removing 0
> 2012-08-20 11:20:53+0100 [-] trying to load status pickle from
> /home/andrea/pytest_buildbot/runtests/builder
> 2012-08-20 11:20:53+0100 [-] no saved status pickle, creating a new one
> 2012-08-20 11:20:53+0100 [-] added builder runtests in category
> 2012-08-20 11:20:53+0100 [-] PBServerFactory starting on 9989
> 2012-08-20 11:20:53+0100 [-] Starting factory
> <twisted.spread.pb.PBServerFactory instance at 0x3397e18>
> 2012-08-20 11:20:53+0100 [-] adding scheduler 'all'
> 2012-08-20 11:20:53+0100 [-] adding scheduler 'force'
> 2012-08-20 11:20:53+0100 [-] ConchFactory starting on 1234
> 2012-08-20 11:20:53+0100 [-] Starting factory
> <twisted.conch.manhole_ssh.ConchFactory instance at 0x3386200>
> 2012-08-20 11:20:53+0100 [-] Manhole listening via SSH on port
> tcp:1234:interface=127.0.0.1
> 2012-08-20 11:20:53+0100 [-] RotateLogSite starting on 8010
> 2012-08-20 11:20:53+0100 [-] Starting factory
> <buildbot.status.web.baseweb.RotateLogSite instance at 0x33ab5f0>
> 2012-08-20 11:20:53+0100 [-] Setting up http.log rotating 10 files of
> 10000000 bytes each
> 2012-08-20 11:20:53+0100 [-] WebStatus using
> (/home/andrea/pytest_buildbot/public_html)
> 2012-08-20 11:20:53+0100 [-] BuildMaster is running
> 2012-08-20 11:22:06+0100 [Broker,0,127.0.0.1] slave 'linux_arch'
> attaching from IPv4Address(TCP, '127.0.0.1', 57863)
> 2012-08-20 11:22:06+0100 [Broker,0,127.0.0.1] Starting buildslave
> keepalive timer for 'linux_arch'
> 2012-08-20 11:22:06+0100 [Broker,0,127.0.0.1] Got slaveinfo from 'linux_arch'
> 2012-08-20 11:22:06+0100 [Broker,0,127.0.0.1] bot attached
> 2012-08-20 11:22:06+0100 [Broker,0,127.0.0.1] Buildslave linux_arch
> attached to run tests

Can you make a dummy checkin on branch DEV and check if you see any messages about the change in twisted.log.
Clearly none happened in the section of the log above.

> 
>> 
>> No. How would buildbot know if there are no checkins or not.
> 
> Well if it's unable to check out at all then there must be something
> wrong right?

The builder won't check out anything until the scheduler tells it to start.
The scheduler won't do that until it see a change which it's interested in.
So given that your scheduler was previously looking at the default branch, it wouldn't seen any changes 
it was interested in, and there for no build would start.

Once your builder is started, it will run the P4 step, which would try to check out your tree.
That's when I'd expect to see some errors relating to perforce if your configuration had some issues.

> It looks like it's not even trying or otherwise it should say something..
> And what if the source code is already in sync?

The poller doesn't sync a client. It checks for new changes.

> 
> Should it still makes the build command available or not? (at least
> the force one I suppose it should)



Sure. Then you can take the need to have the scheduler properly configured out of testing the builder itself.

Hope that helps,
-Bill





More information about the devel mailing list