[Buildbot-devel] Triggers receiving wrong branch info

Michael Rubinsky hamogram at yahoo.com
Thu May 21 02:51:44 UTC 2009


Michael Rubinsky wrote:
[snip]
>> Repo-Layout:
>>
>> Project1/trunk
>> Project1/branch
>> Project1/releases
>> Project2/trunk
>> Project2/branch
>> Project2/releases
>>
>> --------------------
>> svn_source = SVNPoller("https://my.repo/data/svn/Project1",\
>>                        svnuser=const_svnuser, svnpasswd=const_svnpasswd,\
>>                        split_file=my_split_file,\
>>                        pollinterval=const_pollinterval)
>> c['change_source'].append(svn_source)
>>
>> sch_Project1 = RepositoryScheduler(name="Project1",
>>                                    branches=None,
>>                                    treeStableTimer=defaultTreeStableTime,
>>                                    builderNames=["Project1"])
>> c['schedulers'].append(sch_Project1)
>>
>> sch_Project2_trig = Triggerable(name="Project2_trig",\
>>                                 builderNames=["Project2"])
>> c['schedulers'].append(sch_Project2_trig)
>>
>> --------------------
>> in builder Project1:
>>
>> stepList.append(Trigger(schedulerNames=["Project2_trig"], waitForFinish=True, updateSourceStamp=False))
>>
>> --------------------
>> This works fine for me, if every branch that exists in Project1 is present in Project2 and you don't use the try scheduler. This fails, because it tries to apply the patch on both projects. I think
>> the important part is "updateSourceStamp" in the trigger step.
>>
> The sourcestamp is ok, I don't mind that they all build off the same 
> revision.  The problem is with the branches.
> 
> The problem I have is that the different projects have totally 
> independent branches.  Project1 could have say:
> svn://repo/Project1/branches/0.1
> svn://repo/Project1/branches/0.2
> svn://repo/Project1/branches/0.3
> Project 2 could have:
> svn://repo/Project1/branches/1.2
> svn://repo/Project1/branches/3.2
> 
> Most of the 'dependent' projects are independent libraries that are 
> linked into other bigger projects, hence why the versioning is different.
> 

When Project1 triggers Project2 this is what the svn command it's 
sending it, which is the problem:
 From the log:
argv: ['/vol/apps/subversion-1.5.6_64/bin/svn', 'checkout', 
'--revision', '18862', '--non-interactive', '--no-auth-cache', 
'svn://repo/Project1/tags/0.1', 'work/buildbot-trunk']

So Project2 actually ends up checking out Project1 and building that (if 
it can).  Basically I don't want to send a path at all to my trigger, so 
it will pick up it's own 'trunk'.

> Cheers,
> Michael
> 
>> Cheers,
>> René
>>





More information about the devel mailing list