phase1: make scheduler and changesource branch-aware
authorThibaut VARÈNE <hacks@slashdirt.org>
Mon, 24 Oct 2022 15:09:43 +0000 (17:09 +0200)
committerPetr Štetiar <ynezz@true.cz>
Mon, 15 May 2023 15:36:01 +0000 (17:36 +0200)
The ForcedScheduler for tags still needs work

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
phase1/master.cfg

index b4958b9850455c415dd66880a1ee99d74bf959e4..afc93ce8bed4ce2fc8e49c55c006dfc0d8e4166d 100644 (file)
@@ -15,7 +15,6 @@ from twisted.python import log
 
 from buildbot import locks
 from buildbot.data import resultspec
-from buildbot.changes import filter
 from buildbot.changes.gitpoller import GitPoller
 from buildbot.config import BuilderConfig
 from buildbot.plugins import reporters
@@ -27,7 +26,7 @@ from buildbot.process import results
 from buildbot.process.factory import BuildFactory
 from buildbot.process.properties import Interpolate
 from buildbot.process.properties import Property
-from buildbot.schedulers.basic import SingleBranchScheduler
+from buildbot.schedulers.basic import AnyBranchScheduler
 from buildbot.schedulers.forcesched import BaseParameter
 from buildbot.schedulers.forcesched import ForceScheduler
 from buildbot.schedulers.forcesched import ValidationError
@@ -61,7 +60,6 @@ work_dir = os.path.abspath(ini['general'].get("workdir", "."))
 scripts_dir = os.path.abspath("../scripts")
 
 repo_url = ini['repo'].get("url")
-repo_branch = ini['repo'].get("branch", "master")
 
 rsync_defopts = ["-v", "-4", "--timeout=120"]
 
@@ -279,8 +277,8 @@ populateTargets()
 c['change_source'] = []
 c['change_source'].append(GitPoller(
        repo_url,
-       workdir=work_dir+'/work.git', branch=repo_branch,
-       pollinterval=300))
+       workdir=work_dir+'/work.git', branches=branchNames,
+       pollAtLaunch=True, pollinterval=300))
 
 ####### SCHEDULERS
 
@@ -299,7 +297,7 @@ class TagChoiceParameter(BaseParameter):
        @property
        def choices(self):
                taglist = []
-               basever = re.search(r'-([0-9]+\.[0-9]+)$', repo_branch)
+               basever = re.search(r'-([0-9]+\.[0-9]+)$', "master")    # XXX FIXME
 
                if basever:
                        findtags = subprocess.Popen(
@@ -330,10 +328,10 @@ class TagChoiceParameter(BaseParameter):
                return s
 
 c['schedulers'] = []
-c['schedulers'].append(SingleBranchScheduler(
+c['schedulers'].append(AnyBranchScheduler(
        name            = "all",
-       change_filter   = filter.ChangeFilter(branch=repo_branch),
-       treeStableTimer = 60,
+       change_filter   = util.ChangeFilter(branch=branchNames),
+       treeStableTimer = 15*60,
        builderNames    = list(targets)))
 
 c['schedulers'].append(ForceScheduler(