2019-10-06 16:13:50 +03:00
|
|
|
# This Python file uses the following encoding: utf-8
|
|
|
|
|
2019-10-06 20:17:52 +03:00
|
|
|
from BuildBotLib.basemodule import BaseModule
|
2019-10-06 19:15:02 +03:00
|
|
|
|
2019-12-26 11:29:22 +03:00
|
|
|
from buildbot.plugins import util, steps
|
|
|
|
from BuildBotLib.secretManager import SecretManager
|
2020-02-03 14:48:36 +03:00
|
|
|
import hashlib
|
2022-10-21 20:56:44 +03:00
|
|
|
import os
|
2019-10-06 16:13:50 +03:00
|
|
|
|
2019-10-06 19:15:02 +03:00
|
|
|
class Make(BaseModule):
|
2020-01-31 14:55:49 +03:00
|
|
|
def __init__(self, platform):
|
2021-04-15 21:33:26 +03:00
|
|
|
BaseModule.__init__(self,
|
|
|
|
platform,
|
2021-04-16 10:47:28 +03:00
|
|
|
self.getProject())
|
2020-02-03 14:48:36 +03:00
|
|
|
self.tempRepoDir = ""
|
2019-10-06 19:15:02 +03:00
|
|
|
|
2021-04-16 10:47:28 +03:00
|
|
|
def getProject(self):
|
|
|
|
|
|
|
|
@util.renderer
|
|
|
|
def cmdWraper(step):
|
|
|
|
repository = step.getProperty('repository')
|
2021-04-16 23:45:57 +03:00
|
|
|
project = self.getNameProjectFromGitUrl(repository)
|
|
|
|
if not len(project):
|
2021-04-16 10:47:28 +03:00
|
|
|
return "build"
|
|
|
|
|
|
|
|
return project
|
|
|
|
|
|
|
|
return cmdWraper
|
|
|
|
|
2020-06-19 13:43:02 +03:00
|
|
|
def isSupport(self, step):
|
2020-06-19 18:22:01 +03:00
|
|
|
return True
|
2020-06-19 13:43:02 +03:00
|
|
|
|
2019-10-06 19:15:02 +03:00
|
|
|
def isDeploy(self, step):
|
2019-12-26 11:29:22 +03:00
|
|
|
return step.getProperty('deploy')
|
2019-10-06 16:13:50 +03:00
|
|
|
|
2022-10-21 20:56:44 +03:00
|
|
|
def isCopyArtefact(self, step):
|
2022-10-22 14:31:55 +03:00
|
|
|
val = step.getProperty('copyCustomArtifact')
|
|
|
|
return type(val) == str and len(val) > 0
|
2022-10-21 20:56:44 +03:00
|
|
|
|
|
|
|
def isCopyCustomFolder(self, step):
|
2022-10-22 14:31:55 +03:00
|
|
|
val = step.getProperty('copyCustomFolder')
|
|
|
|
return type(val) == str and len(val) > 0
|
2022-10-21 20:56:44 +03:00
|
|
|
|
2019-10-06 19:15:02 +03:00
|
|
|
def isRelease(self, step):
|
2022-10-21 22:29:19 +03:00
|
|
|
return step.getProperty('release') and step.getProperty('stopOnErrors')
|
2019-10-06 16:13:50 +03:00
|
|
|
|
2021-10-27 17:23:19 +03:00
|
|
|
def isProdDeploer(self, step):
|
|
|
|
return step.getProperty('prodDeploer')
|
|
|
|
|
2024-05-26 12:32:47 +02:00
|
|
|
def isWebDeploer(self, step):
|
|
|
|
return step.getProperty('webDeploer')
|
|
|
|
|
2019-10-06 19:15:02 +03:00
|
|
|
def isTest(self, step):
|
2019-12-26 11:29:22 +03:00
|
|
|
return step.getProperty('test')
|
2019-10-06 16:13:50 +03:00
|
|
|
|
2021-04-16 23:45:57 +03:00
|
|
|
def getNameProjectFromGitUrl(self, repository):
|
|
|
|
if not len(repository):
|
|
|
|
return ""
|
|
|
|
|
|
|
|
repository = repository.replace('.git', '')
|
|
|
|
begin = repository.rfind('/')
|
|
|
|
begin = max(repository.rfind('/', 0, begin),
|
|
|
|
repository.rfind(':', 0, begin))
|
|
|
|
|
|
|
|
if begin < 0:
|
|
|
|
return ""
|
|
|
|
|
|
|
|
project = repository[begin + 1:len(repository)]
|
|
|
|
return project
|
2020-02-05 14:53:02 +03:00
|
|
|
|
2021-04-19 09:10:26 +03:00
|
|
|
def getLastRepoName(self, url):
|
2021-04-19 01:15:10 +03:00
|
|
|
fullName = self.getNameProjectFromGitUrl(url)
|
|
|
|
array = fullName.split('/')
|
2021-04-19 09:10:26 +03:00
|
|
|
if len(array) <= 0:
|
2021-04-19 01:15:10 +03:00
|
|
|
return ""
|
|
|
|
|
|
|
|
return array[-1]
|
|
|
|
|
2019-10-06 19:15:02 +03:00
|
|
|
def destDirPrivate(self, props):
|
2019-12-26 11:29:22 +03:00
|
|
|
repo = str(props.getProperty('repository'))
|
2021-04-16 23:45:57 +03:00
|
|
|
got_revision = str(props.getProperty('got_revision'))
|
2019-10-06 16:13:50 +03:00
|
|
|
|
2021-04-27 15:04:43 +03:00
|
|
|
name = got_revision
|
2021-04-16 23:45:57 +03:00
|
|
|
|
|
|
|
return self.getNameProjectFromGitUrl(repo) + "/" + name
|
2019-10-06 16:13:50 +03:00
|
|
|
|
2020-02-03 14:48:36 +03:00
|
|
|
def tempDirPrivate(self, props):
|
|
|
|
repo = str(props.getProperty('repository'))
|
2021-04-16 23:45:57 +03:00
|
|
|
got_revision = str(props.getProperty('got_revision'))
|
|
|
|
|
2021-04-27 15:04:43 +03:00
|
|
|
name = got_revision
|
2020-02-03 14:48:36 +03:00
|
|
|
|
|
|
|
m = hashlib.md5()
|
2021-04-19 01:15:10 +03:00
|
|
|
repoPath = self.getLastRepoName(repo) + "/" + name
|
2020-02-05 15:05:17 +03:00
|
|
|
|
|
|
|
m.update(repoPath.encode('utf-8'))
|
2020-02-03 14:48:36 +03:00
|
|
|
|
|
|
|
return m.hexdigest()
|
|
|
|
|
2019-10-06 19:15:02 +03:00
|
|
|
def destDir(self, props):
|
2020-12-23 23:41:57 +03:00
|
|
|
return '/var/www/builds/' + self.destDirPrivate(props)
|
2019-10-06 16:13:50 +03:00
|
|
|
|
2022-10-22 15:10:39 +03:00
|
|
|
def destDirCustoArtefactFile(self, props):
|
|
|
|
|
|
|
|
if self.isCopyArtefact(props):
|
|
|
|
return self.destDir(props) + "/" + os.path.basename(props.getProperty('copyCustomArtifact'))
|
|
|
|
|
|
|
|
return ""
|
|
|
|
|
2020-02-03 14:48:36 +03:00
|
|
|
def tempDir(self, props):
|
|
|
|
self.tempRepoDir = self.home + '/rTemp/' + self.tempDirPrivate(props)
|
|
|
|
return self.tempRepoDir
|
|
|
|
|
2019-10-06 19:15:02 +03:00
|
|
|
def destDirUrl(self, props):
|
2021-01-10 12:37:51 +03:00
|
|
|
return "https://quasarapp.ddns.net:3031/" + self.destDirPrivate(props)
|
2019-10-06 16:13:50 +03:00
|
|
|
|
2019-12-27 14:03:46 +03:00
|
|
|
def permission(self):
|
2020-12-23 23:41:57 +03:00
|
|
|
return ["chmod", "-R", "775", '/var/www/builds/']
|
2019-10-06 16:13:50 +03:00
|
|
|
|
2019-10-06 19:15:02 +03:00
|
|
|
def linuxXmakeCmd(self, props):
|
2019-10-06 16:13:50 +03:00
|
|
|
command = [
|
|
|
|
'qmake-linux',
|
|
|
|
"-r",
|
|
|
|
"CONFIG+=qtquickcompiler",
|
|
|
|
'ONLINE="~/repo"'
|
2019-12-26 11:29:22 +03:00
|
|
|
]
|
2019-10-06 16:13:50 +03:00
|
|
|
|
2019-12-26 11:29:22 +03:00
|
|
|
return command
|
2019-10-06 16:13:50 +03:00
|
|
|
|
2020-10-08 15:35:25 +03:00
|
|
|
def wasmXmakeCmd(self, props):
|
|
|
|
return []
|
|
|
|
|
2019-10-06 19:15:02 +03:00
|
|
|
def windowsXmakeCmd(self, props):
|
|
|
|
command = [
|
|
|
|
'qmake-windows',
|
|
|
|
'-spec', 'win32-g++',
|
|
|
|
"-r",
|
|
|
|
"CONFIG+=qtquickcompiler",
|
|
|
|
'ONLINE="~/repo"'
|
2019-12-26 11:29:22 +03:00
|
|
|
]
|
2019-10-06 16:13:50 +03:00
|
|
|
|
2019-12-26 11:29:22 +03:00
|
|
|
return command
|
2019-10-06 16:13:50 +03:00
|
|
|
|
2019-10-06 19:15:02 +03:00
|
|
|
def androidXmakeCmd(self, props):
|
2021-04-06 00:33:46 +03:00
|
|
|
file = self.home + "/buildBotSecret/secret.json"
|
|
|
|
secret = SecretManager(file, props)
|
2019-10-06 16:13:50 +03:00
|
|
|
|
2019-10-06 19:15:02 +03:00
|
|
|
command = [
|
|
|
|
'qmake-android',
|
|
|
|
'-spec', 'android-clang',
|
|
|
|
"-r",
|
|
|
|
"CONFIG+=qtquickcompiler",
|
|
|
|
'SIGN_PATH="' + secret.getValue('SIGPATH') + '"',
|
|
|
|
'SIGN_ALIES="quasarapp"',
|
|
|
|
'SIGN_STORE_PASSWORD="' + secret.getValue('SIGPASS') + '"'
|
2019-10-06 16:13:50 +03:00
|
|
|
|
2019-12-26 11:29:22 +03:00
|
|
|
]
|
2019-10-06 16:13:50 +03:00
|
|
|
|
2019-12-26 11:29:22 +03:00
|
|
|
return command
|
2019-10-06 19:15:02 +03:00
|
|
|
|
2022-01-21 00:32:25 +03:00
|
|
|
def iosXmakeCmd(self, props):
|
|
|
|
return ""
|
|
|
|
|
|
|
|
def macXmakeCmd(self, props):
|
|
|
|
return ""
|
|
|
|
|
2019-12-26 11:29:22 +03:00
|
|
|
def androidXmakeEnv(self, props):
|
2019-12-24 22:40:58 +03:00
|
|
|
return {}
|
|
|
|
|
2020-10-08 15:35:25 +03:00
|
|
|
def wasmXmakeEnv(self, props):
|
|
|
|
return {}
|
|
|
|
|
2019-12-26 11:29:22 +03:00
|
|
|
def windowsXmakeEnv(self, props):
|
2019-12-24 22:40:58 +03:00
|
|
|
return {}
|
|
|
|
|
2019-12-26 11:29:22 +03:00
|
|
|
def linuxXmakeEnv(self, props):
|
2019-12-24 22:40:58 +03:00
|
|
|
return {}
|
|
|
|
|
2022-01-21 00:32:25 +03:00
|
|
|
def iosXmakeEnv(self, props):
|
|
|
|
return {}
|
|
|
|
|
|
|
|
def macXmakeEnv(self, props):
|
|
|
|
return {}
|
|
|
|
|
2019-12-26 11:29:22 +03:00
|
|
|
def makePrefix(self):
|
2019-12-27 12:55:39 +03:00
|
|
|
return "X"
|
2019-12-24 22:40:58 +03:00
|
|
|
|
2020-02-10 14:56:35 +03:00
|
|
|
def generateStep(self, cmd, platform, desc, checkFunc, log=False):
|
2019-12-24 22:40:58 +03:00
|
|
|
|
2019-12-26 17:51:44 +03:00
|
|
|
@util.renderer
|
|
|
|
def envWraper(step):
|
|
|
|
|
|
|
|
platformEnv = {
|
2020-01-31 14:55:49 +03:00
|
|
|
BaseModule.P_Linux: self.linuxXmakeEnv,
|
|
|
|
BaseModule.P_Windows: self.windowsXmakeEnv,
|
|
|
|
BaseModule.P_Android: self.androidXmakeEnv,
|
2020-10-08 15:35:25 +03:00
|
|
|
BaseModule.P_Wasm: self.wasmXmakeEnv,
|
2022-01-21 00:32:25 +03:00
|
|
|
BaseModule.P_iOS: self.iosXmakeEnv,
|
|
|
|
BaseModule.P_Mac: self.macXmakeEnv,
|
2020-10-08 15:35:25 +03:00
|
|
|
|
2019-12-26 17:51:44 +03:00
|
|
|
}
|
|
|
|
|
2019-12-26 18:05:13 +03:00
|
|
|
return platformEnv[platform](step)
|
2019-12-24 22:40:58 +03:00
|
|
|
|
2019-12-26 11:29:22 +03:00
|
|
|
def dustepIf(step):
|
2020-06-19 13:43:02 +03:00
|
|
|
return checkFunc(step) and self.isSupport(step)
|
2019-12-26 11:29:22 +03:00
|
|
|
|
2020-01-03 12:00:49 +03:00
|
|
|
res = steps.Compile(
|
2019-12-27 15:13:59 +03:00
|
|
|
command=self.getWraper(cmd),
|
2022-10-21 22:29:19 +03:00
|
|
|
haltOnFailure=util.Interpolate('%(prop:stopOnErrors)s') == "True",
|
2019-12-26 11:29:22 +03:00
|
|
|
doStepIf=lambda step: dustepIf(step),
|
2020-06-19 14:59:01 +03:00
|
|
|
hideStepIf=lambda results, step: not dustepIf(step),
|
2019-12-27 12:55:39 +03:00
|
|
|
name=desc + ' ' + platform,
|
2019-12-26 17:51:44 +03:00
|
|
|
env=envWraper,
|
2020-02-10 14:30:23 +03:00
|
|
|
want_stdout=True,
|
|
|
|
want_stderr=True,
|
2020-01-05 15:07:41 +03:00
|
|
|
warningPattern=".*[Ww]arning[: ].*",
|
2019-12-26 11:29:22 +03:00
|
|
|
description=desc,
|
2019-12-24 22:40:58 +03:00
|
|
|
)
|
|
|
|
|
2020-02-10 14:56:35 +03:00
|
|
|
if log:
|
|
|
|
res = steps.Compile(
|
|
|
|
command=self.getWraper(cmd),
|
2022-10-21 22:29:19 +03:00
|
|
|
haltOnFailure=util.Interpolate('%(prop:stopOnErrors)s') == "True",
|
2020-02-10 14:56:35 +03:00
|
|
|
doStepIf=lambda step: dustepIf(step),
|
|
|
|
hideStepIf=lambda results, step: not dustepIf(step),
|
|
|
|
name=desc + ' ' + platform,
|
|
|
|
env=envWraper,
|
|
|
|
want_stdout=True,
|
|
|
|
want_stderr=True,
|
|
|
|
logfiles={"LogFile": "buildLog.log"},
|
|
|
|
warningPattern=".*[Ww]arning[: ].*",
|
|
|
|
description=desc,
|
|
|
|
)
|
|
|
|
|
2019-12-26 11:29:22 +03:00
|
|
|
return res
|
2019-12-24 22:40:58 +03:00
|
|
|
|
2019-12-26 11:29:22 +03:00
|
|
|
def generatePlatformSteps(self, platform):
|
2019-12-25 19:35:31 +03:00
|
|
|
|
|
|
|
platformXcmd = {
|
2020-01-31 14:55:49 +03:00
|
|
|
BaseModule.P_Linux: self.linuxXmakeCmd,
|
|
|
|
BaseModule.P_Windows: self.windowsXmakeCmd,
|
|
|
|
BaseModule.P_Android: self.androidXmakeCmd,
|
2020-10-08 15:35:25 +03:00
|
|
|
BaseModule.P_Wasm: self.wasmXmakeCmd,
|
2022-01-21 00:32:25 +03:00
|
|
|
BaseModule.P_iOS: self.iosXmakeCmd,
|
|
|
|
BaseModule.P_Mac: self.macXmakeCmd,
|
2020-10-08 15:35:25 +03:00
|
|
|
|
2019-12-25 19:35:31 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
res = []
|
|
|
|
|
2019-12-26 11:29:22 +03:00
|
|
|
res += [self.generateStep(platformXcmd[platform],
|
|
|
|
platform,
|
2019-12-27 12:55:39 +03:00
|
|
|
self.makePrefix() + 'Make',
|
2020-06-19 14:51:14 +03:00
|
|
|
lambda step: True)]
|
2019-10-06 19:15:02 +03:00
|
|
|
|
2019-12-26 11:29:22 +03:00
|
|
|
res += [self.generateStep(self.makeCommand,
|
|
|
|
platform,
|
2019-12-27 12:55:39 +03:00
|
|
|
'Make',
|
2019-12-26 11:29:22 +03:00
|
|
|
lambda step: True)]
|
2019-10-06 19:15:02 +03:00
|
|
|
|
2020-02-04 16:40:15 +03:00
|
|
|
res += [self.generateStep(self.makeTarget('deploy'),
|
2019-12-26 11:29:22 +03:00
|
|
|
platform,
|
|
|
|
'deploy project',
|
|
|
|
self.isDeploy)]
|
2019-10-06 19:15:02 +03:00
|
|
|
|
2020-02-04 16:40:15 +03:00
|
|
|
res += [self.generateStep(self.makeTarget('test'),
|
2019-12-26 11:29:22 +03:00
|
|
|
platform,
|
|
|
|
'test project',
|
2020-02-10 14:56:35 +03:00
|
|
|
self.isTest,
|
|
|
|
True)]
|
2019-10-06 19:15:02 +03:00
|
|
|
|
2020-02-04 16:40:15 +03:00
|
|
|
res += [self.generateStep(self.makeTarget('release'),
|
2019-12-26 11:29:22 +03:00
|
|
|
platform,
|
|
|
|
'release project',
|
|
|
|
self.isRelease)]
|
2019-10-06 19:15:02 +03:00
|
|
|
|
2019-12-26 11:29:22 +03:00
|
|
|
return res
|
2019-10-06 19:15:02 +03:00
|
|
|
|
|
|
|
def getFactory(self):
|
2019-12-26 11:29:22 +03:00
|
|
|
factory = super().getFactory()
|
2019-10-06 19:15:02 +03:00
|
|
|
|
2021-03-30 18:24:33 +03:00
|
|
|
factory.addStep(
|
|
|
|
steps.Git(
|
|
|
|
repourl=util.Interpolate('%(prop:repository)s'),
|
|
|
|
branch=util.Interpolate('%(prop:branch)s'),
|
|
|
|
mode='full',
|
2021-04-15 21:10:14 +03:00
|
|
|
method='fresh',
|
2021-03-31 20:21:35 +03:00
|
|
|
clobberOnFailure=True,
|
2021-03-30 18:24:33 +03:00
|
|
|
submodules=True,
|
|
|
|
retryFetch=True,
|
|
|
|
name='git operations',
|
|
|
|
description='operations of git like pull clone fetch',
|
|
|
|
)
|
2019-12-26 11:29:22 +03:00
|
|
|
)
|
2019-10-06 19:15:02 +03:00
|
|
|
|
2020-06-19 18:22:01 +03:00
|
|
|
# factory.addStep(self.checkSupportedBuildSystems())
|
2020-01-31 14:55:49 +03:00
|
|
|
factory.addSteps(self.generatePlatformSteps(self.platform))
|
2019-10-06 19:15:02 +03:00
|
|
|
|
|
|
|
factory.addStep(
|
|
|
|
steps.DirectoryUpload(
|
2019-12-26 11:29:22 +03:00
|
|
|
workersrc=util.Interpolate('%(prop:copyFolder)s'),
|
2019-12-27 15:13:59 +03:00
|
|
|
masterdest=self.getWraper(self.destDir),
|
|
|
|
url=self.getWraper(self.destDirUrl),
|
|
|
|
doStepIf=self.getWraper(self.isDeploy),
|
2019-12-26 11:29:22 +03:00
|
|
|
name='copy buildet files',
|
|
|
|
description='copy buildet files to shared folder',
|
2019-10-06 16:13:50 +03:00
|
|
|
)
|
2019-12-26 11:29:22 +03:00
|
|
|
)
|
2019-10-06 16:13:50 +03:00
|
|
|
|
2022-10-21 20:56:44 +03:00
|
|
|
factory.addStep(
|
|
|
|
steps.DirectoryUpload(
|
|
|
|
workersrc=util.Interpolate('%(prop:copyCustomFolder)s'),
|
|
|
|
masterdest=self.getWraper(self.destDir),
|
|
|
|
url=self.getWraper(self.destDirUrl),
|
|
|
|
doStepIf=self.getWraper(self.isCopyCustomFolder),
|
2022-10-22 14:31:55 +03:00
|
|
|
name='copy extra artefact files',
|
|
|
|
description='copy extra artefact files (DirectoryUpload)',
|
2022-10-21 20:56:44 +03:00
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
factory.addStep(
|
2022-10-21 21:32:51 +03:00
|
|
|
steps.FileUpload(
|
2022-10-21 20:56:44 +03:00
|
|
|
workersrc=util.Interpolate('%(prop:copyCustomArtifact)s'),
|
2022-10-22 15:10:39 +03:00
|
|
|
masterdest=self.getWraper(self.destDirCustoArtefactFile),
|
2022-10-21 20:56:44 +03:00
|
|
|
url=self.getWraper(self.destDirUrl),
|
|
|
|
doStepIf=self.getWraper(self.isCopyArtefact),
|
|
|
|
name='copy custom artifact file',
|
2022-10-22 14:31:55 +03:00
|
|
|
description='copy custom artifact file (FileUpload)',
|
2022-10-21 20:56:44 +03:00
|
|
|
)
|
|
|
|
)
|
|
|
|
|
2021-10-28 10:48:57 +03:00
|
|
|
if self.platform == BaseModule.P_Linux:
|
|
|
|
|
|
|
|
factory.addStep(
|
|
|
|
steps.Trigger(schedulerNames=['releaser'],
|
|
|
|
doStepIf=lambda step:
|
|
|
|
self.isProdDeploer(step),
|
|
|
|
set_properties={
|
|
|
|
'copyFolder': 'Distro',
|
|
|
|
'prodName': 'prod.deb'
|
|
|
|
}
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
2024-05-26 12:32:47 +02:00
|
|
|
factory.addStep(
|
|
|
|
steps.Trigger(schedulerNames=['releaserweb'],
|
|
|
|
doStepIf=lambda step:
|
|
|
|
self.isWebDeploer(step),
|
|
|
|
set_properties={
|
|
|
|
'copyFolder': 'Distro',
|
|
|
|
'prodName': 'prod.deb'
|
|
|
|
}
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
2021-04-22 17:42:12 +03:00
|
|
|
factory.addStep(
|
|
|
|
self.generateStep("git clean -xdf",
|
2021-04-22 17:49:09 +03:00
|
|
|
self.platform,
|
2021-04-22 17:42:12 +03:00
|
|
|
'Clean',
|
|
|
|
lambda step: True)
|
|
|
|
)
|
|
|
|
|
2021-10-28 10:48:57 +03:00
|
|
|
clearCmd = "git submodule foreach --recursive git clean -xdf"
|
2021-04-22 17:42:12 +03:00
|
|
|
factory.addStep(
|
2021-10-28 10:48:57 +03:00
|
|
|
self.generateStep(clearCmd,
|
2021-04-22 17:49:09 +03:00
|
|
|
self.platform,
|
2021-04-22 17:42:12 +03:00
|
|
|
'Clean submodules',
|
|
|
|
lambda step: True)
|
|
|
|
)
|
|
|
|
|
2019-10-06 19:15:02 +03:00
|
|
|
return factory
|
|
|
|
|
2021-05-11 11:55:27 +03:00
|
|
|
def getDefinesList(self, props):
|
2021-05-11 17:35:56 +03:00
|
|
|
return str(props.getProperty('defines', '')).split(' ')
|
2021-05-11 11:55:27 +03:00
|
|
|
|
2019-12-26 16:18:17 +03:00
|
|
|
def getPropertyes(self):
|
2019-10-06 19:15:02 +03:00
|
|
|
|
2019-12-26 16:18:17 +03:00
|
|
|
base = super().getPropertyes()
|
2019-10-06 19:15:02 +03:00
|
|
|
|
2019-12-26 16:18:17 +03:00
|
|
|
return base + [
|
2019-10-06 19:15:02 +03:00
|
|
|
util.BooleanParameter(
|
2019-12-26 11:29:22 +03:00
|
|
|
name='deploy',
|
|
|
|
label='deploy project',
|
|
|
|
default=True
|
2019-10-06 19:15:02 +03:00
|
|
|
),
|
|
|
|
util.BooleanParameter(
|
2019-12-26 11:29:22 +03:00
|
|
|
name='test',
|
|
|
|
label='test project ',
|
|
|
|
default=True
|
2019-10-06 19:15:02 +03:00
|
|
|
),
|
2022-10-21 21:46:32 +03:00
|
|
|
util.BooleanParameter(
|
2022-10-21 22:29:19 +03:00
|
|
|
name='stopOnErrors',
|
|
|
|
label='stop build order when step failde',
|
|
|
|
default=True
|
2022-10-21 21:46:32 +03:00
|
|
|
),
|
2019-10-06 19:15:02 +03:00
|
|
|
util.BooleanParameter(
|
2019-12-26 11:29:22 +03:00
|
|
|
name='release',
|
|
|
|
label='release project',
|
|
|
|
default=False
|
2019-10-06 19:15:02 +03:00
|
|
|
),
|
2021-10-27 17:23:19 +03:00
|
|
|
|
|
|
|
util.BooleanParameter(
|
|
|
|
name='prodDeploer',
|
|
|
|
label='release prod project',
|
|
|
|
default=False
|
|
|
|
),
|
|
|
|
|
2024-05-26 12:32:47 +02:00
|
|
|
util.BooleanParameter(
|
|
|
|
name='webDeploer',
|
|
|
|
label='release web project',
|
|
|
|
default=False
|
|
|
|
),
|
|
|
|
|
2019-10-06 19:15:02 +03:00
|
|
|
util.StringParameter(
|
2019-12-26 11:29:22 +03:00
|
|
|
name='copyFolder',
|
|
|
|
label='Folder with buildet data',
|
|
|
|
default="Distro"
|
2019-10-06 19:15:02 +03:00
|
|
|
),
|
2022-10-21 20:56:44 +03:00
|
|
|
|
|
|
|
util.StringParameter(
|
|
|
|
name='copyCustomArtifact',
|
|
|
|
label='File of extra data (will be copied)',
|
|
|
|
default=""
|
|
|
|
),
|
|
|
|
|
|
|
|
util.StringParameter(
|
|
|
|
name='copyCustomFolder',
|
|
|
|
label='Folder of extra data (will be copied)',
|
|
|
|
default=""
|
|
|
|
),
|
|
|
|
|
2020-02-03 14:48:36 +03:00
|
|
|
util.StringParameter(
|
|
|
|
name='repoFolder',
|
|
|
|
label='Folder with repository data',
|
|
|
|
default="Repo"
|
|
|
|
),
|
2022-10-21 20:56:44 +03:00
|
|
|
|
2021-05-11 11:55:27 +03:00
|
|
|
util.StringParameter(
|
|
|
|
name='defines',
|
|
|
|
label='Custom Defines list: Example: -DHANOI_ADMOD=1',
|
|
|
|
default=""
|
|
|
|
),
|
2019-10-06 19:15:02 +03:00
|
|
|
]
|