added webDeployer

This commit is contained in:
Andrei Yankovich 2024-05-26 12:32:47 +02:00
parent 8759a51ed1
commit ae6bd722a3
5 changed files with 49 additions and 3 deletions

View File

@ -4,13 +4,10 @@
"basemodule.py",
"../master.cfg",
"README.md",
"testmodule.py",
"qmake.py",
"crossplatformQmake.py",
"cmake.py",
"make.py",
"stepsLib.py",
"quasarAppCoin.py",
"buildBotWorkers.py",
"buildBotServices.py",
"buildBotIdentity.py",

View File

@ -38,8 +38,11 @@ class BuildBotShedulers(BuildBotModule):
'IOSCMakeBuilder'
]
webBuilders = ['LinuxCMakeBuilderQt6']
buildersDeployCode = ['DocsGenerator']
buildersReleaseCode = ['prodDeployer']
buildersReleaseWebCode = ['webDeployer']
buildersRepo = ['RepoGen']
self.masterConf['schedulers'] = self.shedulers
@ -95,11 +98,34 @@ class BuildBotShedulers(BuildBotModule):
treeStableTimer=70
),
schedulers.SingleBranchScheduler(
name='productionWeb',
change_filter=util.ChangeFilter(repository_re=".*quasarappsite.*", branch="prod"),
builderNames=webBuilders,
properties={
'clean': True,
'test': True,
'release': False,
'repogen': False,
'webDeploer': True,
'deploy': True,
'copyFolder': 'Distro',
'stopOnErrors': True
},
treeStableTimer=70
),
schedulers.Triggerable(name="repogen",
builderNames=buildersRepo),
schedulers.Triggerable(name="releaser",
builderNames=buildersReleaseCode)
schedulers.Triggerable(name="releaserweb",
builderNames=buildersReleaseWebCode)
]
return self.getMasterConf()

View File

@ -30,6 +30,8 @@ class BuildBotWorkers(BuildBotModule):
worker.Worker("Wasm32Builder", password),
worker.Worker("DocsGenerator", password),
worker.Worker("prodDeployer", password),
worker.Worker("webDeployer", password),
]
# 'protocols' contains information

View File

@ -50,6 +50,9 @@ class Make(BaseModule):
def isProdDeploer(self, step):
return step.getProperty('prodDeploer')
def isWebDeploer(self, step):
return step.getProperty('webDeploer')
def isTest(self, step):
return step.getProperty('test')
@ -376,6 +379,17 @@ class Make(BaseModule):
)
)
factory.addStep(
steps.Trigger(schedulerNames=['releaserweb'],
doStepIf=lambda step:
self.isWebDeploer(step),
set_properties={
'copyFolder': 'Distro',
'prodName': 'prod.deb'
}
)
)
factory.addStep(
self.generateStep("git clean -xdf",
self.platform,
@ -434,6 +448,12 @@ class Make(BaseModule):
default=False
),
util.BooleanParameter(
name='webDeploer',
label='release web project',
default=False
),
util.StringParameter(
name='copyFolder',
label='Folder with buildet data',

View File

@ -47,6 +47,7 @@ bot.addBuilder("RepoGen", repoGen)
bot.addBuilder("Wasm32Builder", wasm)
bot.addBuilder("DocsGenerator", docs)
bot.addBuilder("prodDeployer", release)
bot.addBuilder("webDeployer", release)
bot.addBuilder("IOSCMakeBuilder", iosBuilder)