diff options
author | MS <ms@taler.net> | 2021-05-17 16:33:11 +0200 |
---|---|---|
committer | MS <ms@taler.net> | 2021-05-17 16:33:11 +0200 |
commit | b0ff994f0303709320d8c210ec64b984f21ac092 (patch) | |
tree | ad80949cda527b1de65961a99ca920cf4a42a57e /bin/taler-deployment | |
parent | 5e5b0d13163c62b80e32f4dda1a551bb2982fd2f (diff) | |
download | deployment-b0ff994f0303709320d8c210ec64b984f21ac092.tar.gz deployment-b0ff994f0303709320d8c210ec64b984f21ac092.tar.bz2 deployment-b0ff994f0303709320d8c210ec64b984f21ac092.zip |
preferring loading API token from file
Diffstat (limited to 'bin/taler-deployment')
-rwxr-xr-x | bin/taler-deployment | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/bin/taler-deployment b/bin/taler-deployment index 62924cb..398a2b8 100755 --- a/bin/taler-deployment +++ b/bin/taler-deployment @@ -28,7 +28,6 @@ from typing import List, Callable from shutil import copy from taler_urls import get_urls from string import ascii_letters, ascii_uppercase -import random activate_template = """\ #!/bin/bash @@ -571,6 +570,12 @@ allowed_envs = ( "tanker" ) +def load_apitoken(): + apitoken_path = Path.home() / "envcfg.py" + if not os.path.isfile(apitoken_path): + return None + with open(apitoken_path, "r") as f: + return f.readline() def load_envcfg(): cfg = types.ModuleType("taler_deployment_cfg") @@ -657,9 +662,6 @@ def sync_repos() -> None: r_dir = home / "sources" / r.name subprocess.run(["git", "-C", str(r_dir), "clean", "-fdx"], check=True) -def generate_apitoken(): - return "secret-token:" + ''.join(random.choices(ascii_letters + ascii_uppercase, k=10)) - @cli.command() def bootstrap() -> None: """Bootstrap a GNU Taler deployment.""" @@ -681,7 +683,10 @@ def bootstrap() -> None: path_list.insert(0, local_path) if deployment_path not in path_list: path_list.insert(0, deployment_path) - + apitoken = load_apitoken() + if not apitoken: + print("Please create ~/merchant_auth_token (taler-deployment-auth-token can help).") + return 1 with (home / "activate").open("w") as f: f.write( activate_template.format( @@ -690,7 +695,7 @@ def bootstrap() -> None: currency=currmap[envname], curr_path=":".join(path_list), coverage=1 if envname == "coverage" else 0, - frontends_apitoken="{}".format(generate_apitoken()), + frontends_apitoken="{}".format(apitoken), **get_urls(envname) ) ) |