From 362e303ba3988f798fb677a1c2c8f6d1796adfab Mon Sep 17 00:00:00 2001 From: Erik Mackdanz Date: Wed, 6 Nov 2024 12:37:44 +0000 Subject: [PATCH] rearrange by pipeline --- master.cfg | 261 ++++++++++++++++++++++++++--------------------------- 1 file changed, 129 insertions(+), 132 deletions(-) diff --git a/master.cfg b/master.cfg index 2eb8899..3d44d15 100644 --- a/master.cfg +++ b/master.cfg @@ -88,7 +88,33 @@ c = BuildmasterConfig = { }, } -####### CHANGESOURCES +####### CUSTOM BUILD STEPS + +class HLedgerVersion(buildstep.ShellMixin, buildstep.BuildStep): + def __init__(self, **kwargs): + kwargs = self.setupShellMixin(kwargs, prohibitArgs=['command']) + super().__init__(**kwargs) + + @defer.inlineCallbacks + def run(self): + cmd = yield self.makeRemoteShellCommand( + collectStdout=True, + command=["hledger","--version"]) + yield self.runCommand(cmd) + + # record as property + match = re.search(r'[0-9]*\.[0-9]*',cmd.stdout) + if match: + hledger_version = match[0] + else: + hledger_version = '' + yield self.setProperty("hledger-version",hledger_version) + + return cmd.results() + +####### PIPELINES + +####### npupnp tag notifications c['change_source'].append(GitPoller( 'https://framagit.org/medoc92/npupnp.git', @@ -96,18 +122,63 @@ c['change_source'].append(GitPoller( workdir='npupnp', only_tags=True, pollInterval=60*60*24)) +c['schedulers'].append(SingleBranchScheduler( + name="npupnp", + change_filter=ChangeFilter(project="npupnp"), + treeStableTimer=None, + builderNames=["npupnp"])) +factory = BuildFactory() +factory.addStep(ShellCommand(command=["echo", "hello"])) +c['builders'].append(BuilderConfig( + name="npupnp", + tags=["mpd"], + workernames=["carbon-worker"], + factory=factory)) + +####### libupnpp tag notifications + c['change_source'].append(GitPoller( 'https://framagit.org/medoc92/libupnpp.git', project='libupnpp', workdir='libupnpp', only_tags=True, pollInterval=60*60*24)) +c['schedulers'].append(SingleBranchScheduler( + name="libupnpp", + change_filter=ChangeFilter(project="libupnpp"), + treeStableTimer=None, + builderNames=["libupnpp"])) +factory = BuildFactory() +factory.addStep(ShellCommand(command=["echo", "hello"])) +c['builders'].append(BuilderConfig( + name="libupnpp", + tags=["mpd"], + workernames=["carbon-worker"], + factory=factory)) + +####### upmpdcli tag notifications + c['change_source'].append(GitPoller( 'https://framagit.org/medoc92/upmpdcli.git', project='upmpdcli', workdir='upmpdcli', only_tags=True, pollInterval=60*60*24)) +c['schedulers'].append(SingleBranchScheduler( + name="upmpdcli", + change_filter=ChangeFilter(project="upmpdcli"), + treeStableTimer=None, + builderNames=["upmpdcli"])) +factory = BuildFactory() +factory.addStep(ShellCommand(command=["echo", "hello"])) +c['builders'].append(BuilderConfig( + name="upmpdcli", + tags=["mpd"], + workernames=["carbon-worker"], + factory=factory)) + +####### veilid tag builds + c['change_source'].append(GitPoller( 'https://gitlab.com/veilid/veilid.git', project='veilid', @@ -115,6 +186,35 @@ c['change_source'].append(GitPoller( only_tags=True, pollAtLaunch=True, pollInterval=60*60*24)) +c['schedulers'].append(SingleBranchScheduler( + name="veilid", + change_filter=ChangeFilter(project="veilid"), + treeStableTimer=None, + builderNames=["veilid"])) +factory = BuildFactory() +factory.addStep(Git(repourl='https://gitlab.com/veilid/veilid.git')) +factory.addStep(ShellCommand( + name="build veilid-server", + command=["cargo","build","--release"], + workdir="build/veilid-server")) +factory.addStep(ShellCommand( + name="copy veilid-server to lin0", + command=["scp","target/release/veilid-server","lin0:~"])) +factory.addStep(ShellCommand( + name="build veilid-cli", + command=["cargo","build","--release"], + workdir="build/veilid-cli")) +factory.addStep(ShellCommand( + name="copy veilid-cli to lin0", + command=["scp","target/release/veilid-cli","lin0:~"])) +c['builders'].append(BuilderConfig( + name="veilid", + tags=["veilid"], + workernames=["carbon-worker"], + factory=factory)) + +####### crawl tag notifications + c['change_source'].append(GitPoller( 'https://github.com/crawl/crawl.git', project='crawl', @@ -122,6 +222,21 @@ c['change_source'].append(GitPoller( only_tags=True, pollAtLaunch=True, pollInterval=60*60*24)) +c['schedulers'].append(SingleBranchScheduler( + name="crawl", + change_filter=ChangeFilter(project="crawl"), + treeStableTimer=None, + builderNames=["crawl"])) +factory = BuildFactory() +factory.addStep(ShellCommand(command=["echo", "hello"])) +c['builders'].append(BuilderConfig( + name="crawl", + tags=["crawl"], + workernames=["carbon-worker"], + factory=factory)) + +####### ledger tag notifications + c['change_source'].append(GitPoller( 'https://github.com/ledger/ledger.git', project='ledger', @@ -129,8 +244,20 @@ c['change_source'].append(GitPoller( only_tags=True, pollAtLaunch=True, pollInterval=60*60*24)) +c['schedulers'].append(SingleBranchScheduler( + name="ledger", + change_filter=ChangeFilter(project="ledger"), + treeStableTimer=None, + builderNames=["ledger"])) +factory = BuildFactory() +factory.addStep(ShellCommand(command=["echo", "hello"])) +c['builders'].append(BuilderConfig( + name="ledger", + tags=["ledger"], + workernames=["carbon-worker"], + factory=factory)) -####### SCHEDULERS +####### toy project with triggers c['schedulers'].append(ForceScheduler( name="force-two", @@ -188,37 +315,6 @@ c['schedulers'].append(ForceScheduler( ] )) -c['schedulers'].append(SingleBranchScheduler( - name="npupnp", - change_filter=ChangeFilter(project="npupnp"), - treeStableTimer=None, - builderNames=["npupnp"])) -c['schedulers'].append(SingleBranchScheduler( - name="libupnpp", - change_filter=ChangeFilter(project="libupnpp"), - treeStableTimer=None, - builderNames=["libupnpp"])) -c['schedulers'].append(SingleBranchScheduler( - name="upmpdcli", - change_filter=ChangeFilter(project="upmpdcli"), - treeStableTimer=None, - builderNames=["upmpdcli"])) -c['schedulers'].append(SingleBranchScheduler( - name="veilid", - change_filter=ChangeFilter(project="veilid"), - treeStableTimer=None, - builderNames=["veilid"])) -c['schedulers'].append(SingleBranchScheduler( - name="crawl", - change_filter=ChangeFilter(project="crawl"), - treeStableTimer=None, - builderNames=["crawl"])) -c['schedulers'].append(SingleBranchScheduler( - name="ledger", - change_filter=ChangeFilter(project="ledger"), - treeStableTimer=None, - builderNames=["ledger"])) - c['schedulers'].append(Triggerable( name="fetch-deps-stage", builderNames=["fetch-deps-stage"])) @@ -228,105 +324,6 @@ c['schedulers'].append(Triggerable( c['schedulers'].append(Triggerable( name="build-backend-job", builderNames=["build-backend-job"])) - -####### CUSTOM BUILD STEPS - -class HLedgerVersion(buildstep.ShellMixin, buildstep.BuildStep): - def __init__(self, **kwargs): - kwargs = self.setupShellMixin(kwargs, prohibitArgs=['command']) - super().__init__(**kwargs) - - @defer.inlineCallbacks - def run(self): - cmd = yield self.makeRemoteShellCommand( - collectStdout=True, - command=["hledger","--version"]) - yield self.runCommand(cmd) - - # record as property - match = re.search(r'[0-9]*\.[0-9]*',cmd.stdout) - if match: - hledger_version = match[0] - else: - hledger_version = '' - yield self.setProperty("hledger-version",hledger_version) - - return cmd.results() - -####### BUILDERS - -# ---- upmpdcli tag notifications - -factory = BuildFactory() -factory.addStep(ShellCommand(command=["echo", "hello"])) -c['builders'].append(BuilderConfig( - name="npupnp", - tags=["mpd"], - workernames=["carbon-worker"], - factory=factory)) - -factory = BuildFactory() -factory.addStep(ShellCommand(command=["echo", "hello"])) -c['builders'].append(BuilderConfig( - name="libupnpp", - tags=["mpd"], - workernames=["carbon-worker"], - factory=factory)) - -factory = BuildFactory() -factory.addStep(ShellCommand(command=["echo", "hello"])) -c['builders'].append(BuilderConfig( - name="upmpdcli", - tags=["mpd"], - workernames=["carbon-worker"], - factory=factory)) - -# ---- veilid tag builds - -factory = BuildFactory() -factory.addStep(Git(repourl='https://gitlab.com/veilid/veilid.git')) -factory.addStep(ShellCommand( - name="build veilid-server", - command=["cargo","build","--release"], - workdir="build/veilid-server")) -factory.addStep(ShellCommand( - name="copy veilid-server to lin0", - command=["scp","target/release/veilid-server","lin0:~"])) -factory.addStep(ShellCommand( - name="build veilid-cli", - command=["cargo","build","--release"], - workdir="build/veilid-cli")) -factory.addStep(ShellCommand( - name="copy veilid-cli to lin0", - command=["scp","target/release/veilid-cli","lin0:~"])) -c['builders'].append(BuilderConfig( - name="veilid", - tags=["veilid"], - workernames=["carbon-worker"], - factory=factory)) - -# ---- crawl tag notifications - -factory = BuildFactory() -factory.addStep(ShellCommand(command=["echo", "hello"])) -c['builders'].append(BuilderConfig( - name="crawl", - tags=["crawl"], - workernames=["carbon-worker"], - factory=factory)) - -# ---- ledger tag notifications - -factory = BuildFactory() -factory.addStep(ShellCommand(command=["echo", "hello"])) -c['builders'].append(BuilderConfig( - name="ledger", - tags=["ledger"], - workernames=["carbon-worker"], - factory=factory)) - -# ---- toy project with triggers - factory = BuildFactory() factory.addStep(Trigger( schedulerNames=["fetch-deps-stage"], -- 2.52.0