commit cc5b22d0fff0b2a892b459e1402dabcff4dbdf7f
parent 8c819941a72cfea40d2b5ca82085f135559e6e0b
Author: Devan Carpenter <devan@taler.net>
Date: Wed, 22 Nov 2023 23:52:58 -0500
ci: add support for foreign arch containers
Diffstat:
1 file changed, 5 insertions(+), 0 deletions(-)
diff --git a/buildbot/master.cfg b/buildbot/master.cfg
@@ -188,6 +188,7 @@ def container_add_step(HALT_ON_FAILURE,
factory,
WORK_DIR,
stepName,
+ CONTAINER_ARCH="amd64",
jobCmd="/workdir/contrib/ci/ci.sh",
containerFile="contrib/ci/Containerfile"):
print(f"HALT_ON_FAILURE: {HALT_ON_FAILURE}, WARN_ON_FAILURE: {WARN_ON_FAILURE}, CONTAINER_BUILD: {CONTAINER_BUILD}, CONTAINER_NAME: {CONTAINER_NAME}")
@@ -196,6 +197,7 @@ def container_add_step(HALT_ON_FAILURE,
name=stepName,
commands=[
util.ShellArg(command=["podman", "run", "--rm",
+ "--arch", CONTAINER_ARCH,
"--add-host", "taler.host.internal:10.0.2.2",
"--network", "slirp4netns:allow_host_loopback=true",
"--env", util.Interpolate("CI_COMMIT_REF=%(src::revision)s"),
@@ -214,9 +216,11 @@ def container_add_step(HALT_ON_FAILURE,
name=stepName,
commands=[
util.ShellArg(command=["podman", "build", "-t", CONTAINER_NAME,
+ "--arch", CONTAINER_ARCH,
"-f", containerFile, "."],
logname='build container', haltOnFailure=True),
util.ShellArg(command=["podman", "run", "--rm",
+ "--arch", CONTAINER_ARCH,
"--add-host", "taler.host.internal:10.0.2.2",
"--network", "slirp4netns:allow_host_loopback=true",
"--env", util.Interpolate("CI_COMMIT_REF=%(src::revision)s"),
@@ -1115,6 +1119,7 @@ class GenerateStagesCommand(buildstep.ShellMixin, steps.BuildStep):
self.configDict[stage]["CONTAINER_NAME"],
container_factory,
CONTAINER_WORKDIR,
+ self.configDict[stage]["CONTAINER_ARCH"],
stage,
f"contrib/ci/jobs/{stage}/job.sh")
for stage in jobDirs