Summary ======= This repository contains various scripts and configuration files that manage the various deployments of GNU Taler at https://taler.net/. We use buildbot as the main driver of the deployment. The various buildslaves are launched as user services by systemd. Buildbot jobs are used to: - generate the various (static) Web sites (www, coverage analysis, etc.) - launch the various interactive Taler services (primarily demo.taler.net, test.taler.net, int.taler.net) - run unit tests A namespace/process jail is used to ensure there are no port conflicts or surviving processes for unit tests that require ports that might conflict. Deployment Layout ================= buildbot/ -- scripts and configuration for the buildmaster and jobs launched by it envcfg/ -- Git tags for various deployments, specify which versions should be used history/ -- directory for NOT MAINTAINED scripts historic/docker/ -- dockerized Taler deployment historic/guix/ -- Guix packages for Taler netjail/ -- scripts to create a namespaces to ensure buildslaves do not compete for resources postmortem/ -- postmortem reports about major incidents we have had with lessons learned private-keys/ -- deployment private keys so that keys do not change if we migrate elsewhere sign-gnu-artefact -- shell script for making releases and preparing upload to ftp.gnu.org systemd-services/ -- service definitions for buildbot build-slaves taler-sitesbuild/ -- scripts for updating our Web sites TODOS: ====== 1) Inconsistency: bootstrap-* -- shell scripts to setup the accounts to run some of the services on taler.net; TODO: should likely be integrated with "$ bin/taler-deployment bootstrap" logic for uniformity 2) envcfg.py files MUST currently exist in (most) $HOME directories of buildbot jobs. However, they are not yet versioned here. We should version them, and deploy the envconfigs also via the respective buildbot jobs. 3) Undocumented: mypy/ -- MARCELLO? prepare-* -- MARCELLO? pylint/ -- MARCELLO? selenium/ -- MARCELLO?