[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] [taler-deployment] branch master updated: new taler-deploym
From: |
gnunet |
Subject: |
[GNUnet-SVN] [taler-deployment] branch master updated: new taler-deployment in Python for bootstrapping |
Date: |
Thu, 10 Oct 2019 16:18:56 +0200 |
This is an automated email from the git hooks/post-receive script.
dold pushed a commit to branch master
in repository deployment.
The following commit(s) were added to refs/heads/master by this push:
new e37aa46 new taler-deployment in Python for bootstrapping
e37aa46 is described below
commit e37aa461c5b2c258af0d8c160a9078295fd6fd05
Author: Florian Dold <address@hidden>
AuthorDate: Thu Oct 10 19:48:48 2019 +0530
new taler-deployment in Python for bootstrapping
---
bin/taler-deployment | 108 +++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 108 insertions(+)
diff --git a/bin/taler-deployment b/bin/taler-deployment
new file mode 100755
index 0000000..852184e
--- /dev/null
+++ b/bin/taler-deployment
@@ -0,0 +1,108 @@
+#!/usr/bin/env python3
+
+import click
+import types
+import os
+import os.path
+import subprocess
+import time
+from pathlib import Path
+
+activate_template = """\
+#!/bin/bash
+
+# Generated by taler-deployment-bootstrap
+
+function taler-config-generate () {
+ echo "Command disabled. Please use taler-deployment-config-generate instead."
+ return 1
+}
+function taler-exchange-keyup () {
+ echo "Command disabled. Please use taler-deployment-keyup instead."
+}
+
+export PATH="$HOME/deployment/bin:$HOME/local/bin:\$PATH"
+export TALER_BOOTSTRAP_TIMESTAMP={timestamp}
+export TALER_CHECKDB="postgres:///talercheck-$USER"
+export TALER_CONFIG_CURRENCY={currency}
+export TALER_ENV_NAME={envname}
+export TALER_ENV_URL_INTRO="https://{envname}.taler.net/"
+export TALER_ENV_URL_BANK="https://bank.{envname}.taler.net/"
+export TALER_ENV_URL_MERCHANT_BLOG="https://shop.{envname}.taler.net/"
+export
TALER_ENV_URL_MERCHANT_DONATIONS="https://donations.{envname}.taler.net/"
+export TALER_ENV_URL_MERCHANT_SURVEY="https://survey.{envname}.taler.net/"
+export TALER_ENV_URL_AUDITOR="https://auditor.{envname}.taler.net/"
+export TALER_ENV_URL_BACKOFFICE="https://backoffice.{envname}.taler.net/"
+"""
+
+
+@click.group()
+def cli():
+ pass
+
+
+@cli.command()
+@click.argument("envname", type=click.Choice(["test", "int", "demo"]))
+def bootstrap(envname):
+ """Bootstrap a GNU Taler deployment from the deploymen.git repository"""
+
+ home = Path.home()
+
+ # read Python-style config
+ cfg = types.ModuleType(name)
+ cfgtext = (home / "envcfg.py").read_text()
+ exec(cfgtext, module.__dict__)
+
+ repos = [
+ ("gnunet", "git://gnunet.org/gnunet.git"),
+ ("libmicrohttps", "gnunet.org/libmicrohttpd.git"),
+ ("twister", "git://git.taler.net/twister"),
+ ("bank", "git://git.taler.net/bank"),
+ ("merchant", "git://git.taler.net/merchant"),
+ ("landing", "git://git.taler.net/landing"),
+ ("exchange", "git://git.taler.net/exchange"),
+ ("donations", "git://git.taler.net/donations"),
+ ("blog", "git://git.taler.net/blog"),
+ ("survey", "git://git.taler.net/survey"),
+ ("backoffice", "git://git.taler.net/backoffice"),
+ ]
+
+ for (r_name, r_url) in repos:
+ r_dir = home / "sources" / r_name
+ if not r_dir.exists():
+ r_dir.mkdir(parents=True, exist_ok=True)
+ subprocess.run(["git", "-C", r_dir.as_posix(), "clone", r_url],
check=True)
+ tag = getattr(cfg, "tag_" + r_name)
+ subprocess.run(["git", "-C", r_dir.as_posix(), "fetch"], check=True)
+ subprocess.run(
+ ["git", "-C", r_dir.as_posix(), "checkout", "-q", "-f", tag, "--"],
+ check=True,
+ )
+
+ with (home / "activate").open("w") as f:
+ f.write(activate_template.format(envname=envname,
timestamp=str(time.time())))
+
+ (home / "sockets").mkdir(parents=True, exist_ok=True)
+ (home / "taler-data").mkdir(parents=True, exist_ok=True)
+
+ if envname == "test":
+ bb_dir = home / "bb-worker"
+ if not bb_dir.exists():
+ subprocess.run(
+ [
+ "buildbot-worker",
+ "create-worker",
+ "--umask=0o22",
+ bb_dir.as_posix(),
+ "localhost:9989",
+ "test-worker",
+ "test-pass",
+ ],
+ check=True,
+ )
+ print("Bootstrap finished.")
+ print("Please source the ~/activate file before proceeding.")
+
+
+if __name__ == "__main__":
+ cli()
--
To stop receiving notification emails like this one, please contact
address@hidden.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] [taler-deployment] branch master updated: new taler-deployment in Python for bootstrapping,
gnunet <=