[Buildbot-devel] Buildbot Schedulers

Dustin J. Mitchell dustin at zmanda.com
Tue Apr 15 15:00:01 UTC 2008


On Tue, Apr 15, 2008 at 10:10 AM, Scott Henson <shenson at redhat.com> wrote:
>  ok,

Thanks :)

>  svnroot = 'https://svn.example.com/repos/rhn-hosted/hosted/'
>  branch = 'trunk/'
>
>  poller = SVNPoller(svnurl='%s%s'%(svnroot,branch),
>  ~                   pollinterval=180)
>  c['change_source'] = [poller]
>  c['schedulers'] = []
>  rhnwebpath='web/'
>  c['schedulers'].append(Scheduler(name='rhnweb',
>  ~                                 branch=rhnwebpath,
>  ~                                 treeStableTimer=2*60,
>  ~                                 builderNames=['rhnweb']))
>
>  So when I commit to
> https://svn.example.com/repos/rhn-hosted/hosted/trunk/web the svn poller
> runs and says its off branch.

OK, got it.  So your SVNPoller is monitoring
'https://svn.example.com/repos/rhn-hosted/hosted/trunk', with the
default split_file.  That split_file basically recognizes every change
under that directory as relevant, with no branch.  It splits
  https://svn.example.com/repos/rhn-hosted/hosted/trunk/web/
into (svnurl, branch, filepath):
  'https://svn.example.com/repos/rhn-hosted/hosted/trunk/', None, 'web/'

That is then handed to the scheduler, which is configured to look for
commits with branch=rhnwebpath='web/'.  But the branch is None!

It seems like you're using 'branch' to mean something different than
usual, since 'trunk/' is part of your svnurl.  There are a couple of
ways to do what you'd like.  Assuming that this is the only scheduler
in your config, the easiest may be to simply specify the full URL to
the SVNPoller, and then remove the branch= parameter from the
scheduler.  If things are more advanced than that, then you'll need to
write your own split_file function to split a URL into
(snvurl,branch,path) as you understand it.

HTH,
Dustin

-- 
Storage Software Engineer
http://www.zmanda.com




More information about the devel mailing list