summaryrefslogtreecommitdiffstats
path: root/deployment/deploy.py
diff options
context:
space:
mode:
Diffstat (limited to 'deployment/deploy.py')
-rw-r--r--deployment/deploy.py40
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())