diff options
Diffstat (limited to 'deployment/deploy.py')
-rw-r--r-- | deployment/deploy.py | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/deployment/deploy.py b/deployment/deploy.py new file mode 100644 index 0000000..6433fa6 --- /dev/null +++ b/deployment/deploy.py @@ -0,0 +1,40 @@ +import argparse +import os + +from jinja2 import Environment, FileSystemLoader + +env = Environment(loader=FileSystemLoader('./')) +docker_compose_yml = './docker-compose.yml' +docker_compose_template = './docker-compose.yml.template' + + +def render_docker_compose(port, base_url): + vars = { + "expose_port": port, + "base_url": base_url, + } + template = env.get_template(docker_compose_template) + yml = template.render(vars=vars) + + with open(docker_compose_yml, 'w') as f: + f.write(yml) + f.close() + + +def main(args): + render_docker_compose(args.expose_port, args.base_url) + os.system('docker-compose -f {} up -d'.format(docker_compose_yml)) + + +if __name__ == '__main__': + parser = argparse.ArgumentParser(description='Backup MongoDBs') + parser.add_argument('-p', '--expose-port', + type=int, + required=False, + default=8000, + help='testapi exposed port') + parser.add_argument('-l', '--base-url', + type=str, + required=True, + help='testapi exposed base-url') + main(parser.parse_args()) |