Skip to content

Commit

Permalink
Move getDebAutobakeFactory to common_factories
Browse files Browse the repository at this point in the history
  • Loading branch information
cvicentiu committed Feb 5, 2025
1 parent 0c94f88 commit e71fdaa
Show file tree
Hide file tree
Showing 2 changed files with 118 additions and 118 deletions.
116 changes: 116 additions & 0 deletions common_factories.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
# Local
from constants import MTR_ENV, SAVED_PACKAGE_BRANCHES, test_type_to_mtr_arg
from utils import (
createDebRepo,
createVar,
dockerfile,
getArch,
Expand All @@ -36,6 +37,7 @@
printEnv,
saveLogs,
savePackageIfBranchMatch,
uploadDebArtifacts,
)


Expand Down Expand Up @@ -826,3 +828,117 @@ def getRpmAutobakeFactory():
)
)
return f_rpm_autobake


def getDebAutobakeFactory() -> util.BuildFactory:
f_deb_autobake = util.BuildFactory()
f_deb_autobake.addStep(printEnv())
f_deb_autobake.addStep(
steps.SetProperty(
property="dockerfile",
value=util.Interpolate("%(kw:url)s", url=dockerfile),
description="dockerfile",
)
)
f_deb_autobake.addStep(getSourceTarball())
# build steps
f_deb_autobake.addStep(
steps.Compile(
logfiles={"CMakeCache.txt": "./builddir/CMakeCache.txt"},
command=["debian/autobake-deb.sh"],
env={
"CCACHE_DIR": "/mnt/ccache",
"DEB_BUILD_OPTIONS": util.Interpolate(
"parallel=%(kw:jobs)s",
jobs=util.Property("jobs", default="$(getconf _NPROCESSORS_ONLN)"),
),
},
description="autobake-deb.sh",
)
)
# upload artifacts
f_deb_autobake.addStep(
steps.SetPropertyFromCommand(
command="find .. -maxdepth 1 -type f", extract_fn=ls2string
)
)
f_deb_autobake.addStep(createDebRepo())
f_deb_autobake.addStep(uploadDebArtifacts())

f_deb_autobake.addStep(
steps.Trigger(
name="dockerlibrary",
schedulerNames=["s_dockerlibrary"],
waitForFinish=False,
updateSourceStamp=False,
set_properties={
"tarbuildnum": Property("tarbuildnum"),
"mariadb_version": Property("mariadb_version"),
"master_branch": Property("master_branch"),
"parentbuildername": Property("buildername"),
},
doStepIf=lambda step: hasDockerLibrary(step),
)
)
f_deb_autobake.addStep(
steps.Trigger(
name="release preparation",
schedulerNames=["s_release_prep"],
waitForFinish=True,
updateSourceStamp=False,
set_properties={
"tarbuildnum": Property("tarbuildnum"),
"mariadb_version": Property("mariadb_version"),
"master_branch": Property("master_branch"),
"parentbuildername": Property("buildername"),
},
doStepIf=(
lambda step: savePackageIfBranchMatch(step, SAVED_PACKAGE_BRANCHES)
),
)
)
f_deb_autobake.addStep(
steps.Trigger(
name="install",
schedulerNames=["s_install"],
waitForFinish=False,
updateSourceStamp=False,
set_properties={
"tarbuildnum": Property("tarbuildnum"),
"mariadb_version": Property("mariadb_version"),
"master_branch": Property("master_branch"),
"parentbuildername": Property("buildername"),
},
doStepIf=(
lambda step: hasInstall(step)
and savePackageIfBranchMatch(step, SAVED_PACKAGE_BRANCHES)
and hasPackagesGenerated(step)
),
)
)
f_deb_autobake.addStep(
steps.Trigger(
name="major-minor-upgrade",
schedulerNames=["s_upgrade"],
waitForFinish=False,
updateSourceStamp=False,
set_properties={
"tarbuildnum": Property("tarbuildnum"),
"mariadb_version": Property("mariadb_version"),
"master_branch": Property("master_branch"),
"parentbuildername": Property("buildername"),
},
doStepIf=(
lambda step: hasUpgrade(step)
and savePackageIfBranchMatch(step, SAVED_PACKAGE_BRANCHES)
and hasPackagesGenerated(step)
),
)
)
f_deb_autobake.addStep(
steps.ShellCommand(
name="cleanup", command="rm -r * .* 2> /dev/null || true", alwaysRun=True
)
)

return f_deb_autobake
120 changes: 2 additions & 118 deletions master.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -10,30 +10,20 @@ from buildbot.plugins import steps, util
from buildbot.process.properties import Property
from common_factories import (
getQuickBuildFactory,
getDebAutobakeFactory,
getRpmAutobakeFactory,
getSourceTarball,
)
from constants import (
GITHUB_STATUS_BUILDERS,
OS_INFO,
SAVED_PACKAGE_BRANCHES,
)
from locks import getLocks
from master_common import base_master_config
from utils import (
canStartBuild,
createDebRepo,
createWorker,
dockerfile,
hasDockerLibrary,
hasInstall,
hasPackagesGenerated,
hasUpgrade,
ls2string,
nextBuild,
printEnv,
savePackageIfBranchMatch,
uploadDebArtifacts,
)

cfg_dir = os.path.abspath(os.path.dirname(__file__))
Expand Down Expand Up @@ -122,114 +112,8 @@ for w_name in master_config["workers"]:

f_quick_build = getQuickBuildFactory("nm", mtrDbPool)
f_rpm_autobake = getRpmAutobakeFactory()
f_deb_autobake = getDebAutobakeFactory()

f_deb_autobake = util.BuildFactory()
f_deb_autobake.addStep(printEnv())
f_deb_autobake.addStep(
steps.SetProperty(
property="dockerfile",
value=util.Interpolate("%(kw:url)s", url=dockerfile),
description="dockerfile",
)
)
f_deb_autobake.addStep(getSourceTarball())
# build steps
f_deb_autobake.addStep(
steps.Compile(
logfiles={"CMakeCache.txt": "./builddir/CMakeCache.txt"},
command=["debian/autobake-deb.sh"],
env={
"CCACHE_DIR": "/mnt/ccache",
"DEB_BUILD_OPTIONS": util.Interpolate(
"parallel=%(kw:jobs)s",
jobs=util.Property("jobs", default="$(getconf _NPROCESSORS_ONLN)"),
),
},
description="autobake-deb.sh",
)
)
# upload artifacts
f_deb_autobake.addStep(
steps.SetPropertyFromCommand(
command="find .. -maxdepth 1 -type f", extract_fn=ls2string
)
)
f_deb_autobake.addStep(createDebRepo())
f_deb_autobake.addStep(uploadDebArtifacts())

f_deb_autobake.addStep(
steps.Trigger(
name="dockerlibrary",
schedulerNames=["s_dockerlibrary"],
waitForFinish=False,
updateSourceStamp=False,
set_properties={
"tarbuildnum": Property("tarbuildnum"),
"mariadb_version": Property("mariadb_version"),
"master_branch": Property("master_branch"),
"parentbuildername": Property("buildername"),
},
doStepIf=lambda step: hasDockerLibrary(step),
)
)
f_deb_autobake.addStep(
steps.Trigger(
name="release preparation",
schedulerNames=["s_release_prep"],
waitForFinish=True,
updateSourceStamp=False,
set_properties={
"tarbuildnum": Property("tarbuildnum"),
"mariadb_version": Property("mariadb_version"),
"master_branch": Property("master_branch"),
"parentbuildername": Property("buildername"),
},
doStepIf=(lambda step: savePackageIfBranchMatch(step, SAVED_PACKAGE_BRANCHES)),
)
)
f_deb_autobake.addStep(
steps.Trigger(
name="install",
schedulerNames=["s_install"],
waitForFinish=False,
updateSourceStamp=False,
set_properties={
"tarbuildnum": Property("tarbuildnum"),
"mariadb_version": Property("mariadb_version"),
"master_branch": Property("master_branch"),
"parentbuildername": Property("buildername"),
},
doStepIf=(
lambda step: hasInstall(step)
and savePackageIfBranchMatch(step, SAVED_PACKAGE_BRANCHES)
and hasPackagesGenerated(step)
),
)
)
f_deb_autobake.addStep(
steps.Trigger(
name="major-minor-upgrade",
schedulerNames=["s_upgrade"],
waitForFinish=False,
updateSourceStamp=False,
set_properties={
"tarbuildnum": Property("tarbuildnum"),
"mariadb_version": Property("mariadb_version"),
"master_branch": Property("master_branch"),
"parentbuildername": Property("buildername"),
},
doStepIf=(
lambda step: hasUpgrade(step)
and savePackageIfBranchMatch(step, SAVED_PACKAGE_BRANCHES)
and hasPackagesGenerated(step)
),
)
)
f_deb_autobake.addStep(
steps.ShellCommand(
name="cleanup", command="rm -r * .* 2> /dev/null || true", alwaysRun=True
)
)

####### BUILDERS LIST

Expand Down

0 comments on commit e71fdaa

Please sign in to comment.