sandcastle-ng

Scripts for the deployment of Sandcastle (GNU Taler)
Log | Files | Refs | README

commit 52043a343be84340c054714578b625c499a1855b
parent f98540a3f0a760c8817f036c7b5f65569cc15e7b
Author: Antoine A <>
Date:   Thu,  9 Jul 2026 16:10:22 +0200

add missing challenger-webui

Diffstat:
MDockerfile | 5+++++
Abuildconfig/challenger-webui.debpath | 1+
Abuildconfig/challenger-webui.giturl | 1+
Abuildconfig/challenger-webui.tag | 2++
Mbuildscripts/sandcastle-build-generic | 41++++++++++++++++++++++-------------------
5 files changed, 31 insertions(+), 19 deletions(-)

diff --git a/Dockerfile b/Dockerfile @@ -109,6 +109,10 @@ COPY buildconfig/taler-merchant.* /buildconfig/ RUN sandcastle-build-generic taler-merchant # Challenger +FROM base-system as challenger-webui +COPY buildconfig/challenger-webui.* /buildconfig/ +RUN sandcastle-build-generic challenger-webui + FROM taler-exchange as challenger COPY buildconfig/challenger.* /buildconfig/ RUN sandcastle-build-generic challenger @@ -182,6 +186,7 @@ COPY --from=taler-harness /packages/taler-harness/* /packages/ COPY --from=taler-merchant-webui /packages/taler-merchant-webui/* /packages/ COPY --from=libeufin /packages/libeufin/* /packages/ COPY --from=taler-merchant-demos /packages/taler-merchant-demos/* /packages/ +COPY --from=challenger-webui /packages/challenger-webui/* /packages/ COPY --from=challenger /packages/challenger/* /packages/ COPY --from=donau /packages/donau/* /packages/ COPY --from=turnstile /opt/turnstile /opt/turnstile diff --git a/buildconfig/challenger-webui.debpath b/buildconfig/challenger-webui.debpath @@ -0,0 +1 @@ +packages/challenger-webui diff --git a/buildconfig/challenger-webui.giturl b/buildconfig/challenger-webui.giturl @@ -0,0 +1 @@ +git://git.taler.net/taler-typescript-core.git diff --git a/buildconfig/challenger-webui.tag b/buildconfig/challenger-webui.tag @@ -0,0 +1 @@ +master +\ No newline at end of file diff --git a/buildscripts/sandcastle-build-generic b/buildscripts/sandcastle-build-generic @@ -8,14 +8,15 @@ # deb-v$maj.$min$.$patch-$revision => release version with debian revision # Debian revisions of dev versions are *not* supported -from logging import log, warning -import os -import sys -import subprocess import glob -import shutil +import os import shlex +import shutil +import subprocess +import sys from email.utils import formatdate +from logging import log, warning + def run_cmd(cmd, shell=False, cwd=None, env=None): """Helper to run commands and exit on failure (mimicking set -e).""" @@ -23,12 +24,13 @@ def run_cmd(cmd, shell=False, cwd=None, env=None): command_env = os.environ.copy() if env: command_env.update(env) - + # Flush stdout so logs appear in order sys.stdout.flush() - + subprocess.check_call(cmd, shell=shell, cwd=cwd, env=command_env) + def get_tag_debver(tag): """Get a debian version string from a git tag""" if tag.startswith("v"): @@ -45,12 +47,12 @@ def get_tag_debver(tag): return a + ":" + b return tag warning(f"unexpected tag format: {tag}") - return "10000.0.0" # Version big enough to work everytime + return "100.0.0" # Version big enough to work every time def main(): - if 'LD_LIBRARY_PATH' in os.environ: - del os.environ['LD_LIBRARY_PATH'] + if "LD_LIBRARY_PATH" in os.environ: + del os.environ["LD_LIBRARY_PATH"] # Arguments if len(sys.argv) < 2: @@ -63,12 +65,12 @@ def main(): DEBIANPATH = "" debpath_file = f"/buildconfig/{package}.debpath" if os.path.exists(debpath_file): - with open(debpath_file, 'r') as f: + with open(debpath_file, "r") as f: DEBIANPATH = f.read().strip() print(f"Building {package} with generic build logic", file=sys.stderr) - with open(f"/buildconfig/{package}.tag", 'r') as f: + with open(f"/buildconfig/{package}.tag", "r") as f: tag = f.read().strip() outdir = f"/packages/{package}/" @@ -79,10 +81,10 @@ def main(): # Using shell=True here to easily handle the pipe logic run_cmd("dpkg-scanpackages . | xz - > /packages/Packages.xz", shell=True) - + with open("/etc/apt/sources.list.d/taler-packaging-local.list", "w") as f: f.write("deb [trusted=yes] file:/packages ./\n") - + run_cmd(["apt-get", "update"]) # Prepare Build Directory @@ -90,7 +92,7 @@ def main(): os.makedirs("/build") os.chdir("/build") - with open(f"/buildconfig/{package}.giturl", 'r') as f: + with open(f"/buildconfig/{package}.giturl", "r") as f: GITURL = f.read().strip() run_cmd(["git", "config", "--global", "advice.detachedHead", "false"]) @@ -119,9 +121,9 @@ def main(): deb_dbg_repo = "debian/.debhelper/" os.environ["DEB_DBG_SYMBOLS_REPO"] = deb_dbg_repo os.makedirs(deb_dbg_repo, exist_ok=True) - - open(os.path.join(deb_dbg_repo, "debian-symbols-pool"), 'a').close() - + + open(os.path.join(deb_dbg_repo, "debian-symbols-pool"), "a").close() + os.environ["DEB_BUILD_MAINT_OPTIONS"] = "debug" debian_date = formatdate(localtime=True) @@ -147,9 +149,10 @@ def main(): for f in deb_files: shutil.copy(f, outdir) - + for f in ddeb_files: shutil.copy(f, outdir) + if __name__ == "__main__": main()