On 27/09/16 09:39, Ryan Schmidt wrote: > I'm not familiar enough with Buildbot to be able to suggest a specific way to > accomplish the switch. But I know Subversion very well, and that "svn switch" > is the intended solution to the problem of wanting to work on different > branches while only keeping a single working copy on disk. > > This may create some additional complications. Depending on how your branches > differ from one another, there might be situations where switching from one > branch to another does not leave your working copy in a clean state. Make > sure you check the status code of "svn switch" to ensure it didn't have an > error, and I'd probably also run "svn status --ignore-externals" on the > working copy afterward, to make sure there are no modified or unversioned > files present before building. >
Thanks, it seems I have hit a common problem: http://trac.buildbot.net/ticket/97 Funny thing though is that if I do (consider gcc as the project in question - good example as repo is massive!): c['change_source'].append(SVNPoller( svnurl = 'svn://gcc.gnu.org/svn/gcc', project='gcc', pollAtLaunch = True, split_file = util.svn.split_file_branches, pollinterval = 60 * 3)) class CloneOrUpdateGCCRepo (SVN): name = "update gcc repo" description = r"fetching GCC sources" descriptionDone = r"fetched GCC sources" def __init__ (self): SVN.__init__ (self, repourl = 'svn://gcc.gnu.org/svn/gcc/', workdir = WithProperties (r"%s/../gcc/", r'builddir'), mode = r'incremental', method='fresh') self.haltOnFailure = True ... self.addStep (CloneOrUpdateGCCRepo ()) This does not actually checkout the right branch. I was expecting trunk or branches/gcc-4_9-release to be checked out, since I have a special AnyBranchScheduler with a custom branch_fn function but instead the whole of svn://gcc.gnu.org/svn/gcc/ is checked out every time. -- Paulo Matos _______________________________________________ users mailing list [email protected] https://lists.buildbot.net/mailman/listinfo/users
