Ticket #2317 (new support-request)
Multiple issue with Buildmaster
|Reported by:||KeiKun||Owned by:|
I have this Multiple issues with Buildbot.. in IRC some gave answer but some of their answer doesn't match or output the result that i want..
My goal is this
since my slave path is this C:slave<Buildslave files> then my buildername is Windows-x64-VS10 so.. path will be (C:slaveWindows-x64-VS10).
- C:slaveWindows-x64-VS10 to checkkout my SVN ROOT.
- Compile my SVN Branches.(Branch path are < /branches/stable and /trunk >)
- Since Windows can't Compile multiple branches at a time... Schedule the Build with the SVN Repository. if there are changes in both branches( first thing to build is /trunk then next build will be /branches/stable ) or ( first to compile is /trunk then next to compile is /branches/stable so their waterfall will be in 1 build only( if that even exist or not ).
Okay.. so i made this code (that failed to do the 3 goals i want). The problems are this.
- Even without defaultBranch, it still checkout the /trunk instead of / or root.
- Waterfall or buildbot.domain.com/waterfall, saw the changes in /trunk and /branches/stable. But doesn't do anything at all.
- My Current Code Compiled the changes i did in /branches/stable ( Clean C:slaveWindows-x64-VS10 or new checkout as better term). But after the changes in /branches/stable i did committed changes in next rev in /trunk but didn't do anything at all (due to Problem #2).
here's my code that i was talking about
from buildbot.changes.svnpoller import SVNPoller, split_file_branches source_code_svn_url='http://domain.com/svn/Project_Name/' c['change_source'].append( SVNPoller( svnurl=source_code_svn_url, split_file=split_file_branches, pollinterval=60, histmax=10, ) ) def modified_files(change): for name in change.files: if name.endswith(".c"): return True elif name.endswith(".h"): return True return False from buildbot import scheduler from buildbot.changes.filter import ChangeFilter s1=scheduler.AnyBranchScheduler( name="Project_Test", treeStableTimer=2*60, change_filter=ChangeFilter( branch=[ 'trunk' 'branches/stable' ] ), builderNames=[ "Windows-x64-VS10", ], fileIsImportant=modified_files ) c['schedulers']=[s1] from buildbot.process import factory from buildbot.steps import source,shell from buildbot.config import BuilderConfig step_source_svn=source.SVN( mode='copy', baseURL=source_code_svn_url, defaultBranch='trunk', retry=(30,2) ) f2=factory.BuildFactory() f2.addStep(step_source_svn) f2.addStep( shell.Compile( command=[ "devenv.com", "MakeMe.sln", "/build", "Release^|Win32" ], logEnviron=False ) )