summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSerenaFeng <feng.xiaowei@zte.com.cn>2017-09-21 13:41:59 +0800
committerSerenaFeng <feng.xiaowei@zte.com.cn>2017-09-21 13:41:59 +0800
commitd4ddb2bd9f28ba2a2136bb225e63d6cc2a6a13b0 (patch)
tree71700fe52f1a3623a0ad8793cb954edbba961e96
parentc4a49c82cd4fd3c21b3384960bf3b351f14d6cf4 (diff)
refactor one click deployment in testapi
substitue docker-compose.template with string description, so that user can wget deploy.py and execute directly. Change-Id: I9703a1c8dfbdc46470561d54c6663e3728540162 Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
-rw-r--r--testapi/deployment/deploy.py40
-rw-r--r--testapi/deployment/docker-compose.yml.template15
-rw-r--r--testapi/opts/deploy.py55
3 files changed, 55 insertions, 55 deletions
diff --git a/testapi/deployment/deploy.py b/testapi/deployment/deploy.py
deleted file mode 100644
index 6433fa6..0000000
--- a/testapi/deployment/deploy.py
+++ /dev/null
@@ -1,40 +0,0 @@
-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())
diff --git a/testapi/deployment/docker-compose.yml.template b/testapi/deployment/docker-compose.yml.template
deleted file mode 100644
index cd68404..0000000
--- a/testapi/deployment/docker-compose.yml.template
+++ /dev/null
@@ -1,15 +0,0 @@
-version: '2'
-services:
- mongo:
- image: mongo:3.2.1
- container_name: opnfv-mongo
- testapi:
- image: opnfv/testapi:latest
- container_name: opnfv-testapi
- environment:
- - mongodb_url=mongodb://mongo:27017/
- - base_url={{ vars.base_url }}
- ports:
- - "{{ vars.expose_port }}:8000"
- links:
- - mongo
diff --git a/testapi/opts/deploy.py b/testapi/opts/deploy.py
new file mode 100644
index 0000000..f58690c
--- /dev/null
+++ b/testapi/opts/deploy.py
@@ -0,0 +1,55 @@
+import argparse
+import os
+
+from jinja2 import Environment
+
+DOCKER_COMPOSE_FILE = './docker-compose.yml'
+DOCKER_COMPOSE_TEMPLATE = """
+version: '2'
+services:
+ mongo:
+ image: mongo:3.2.1
+ container_name: opnfv-mongo
+ testapi:
+ image: opnfv/testapi:latest
+ container_name: opnfv-testapi
+ environment:
+ - mongodb_url=mongodb://mongo:27017/
+ - base_url={{ vars.testapi_base_url }}
+ ports:
+ - "{{ vars.testapi_port }}:8000"
+ links:
+ - mongo
+"""
+
+
+def render_docker_compose(testapi_port, testapi_base_url):
+ vars = {
+ "testapi_port": testapi_port,
+ "testapi_base_url": testapi_base_url,
+ }
+
+ yml = Environment().from_string(DOCKER_COMPOSE_TEMPLATE).render(vars=vars)
+
+ with open(DOCKER_COMPOSE_FILE, 'w') as f:
+ f.write(yml)
+ f.close()
+
+
+def main(args):
+ render_docker_compose(args.testapi_port, args.testapi_base_url)
+ os.system('docker-compose -f {} up -d'.format(DOCKER_COMPOSE_FILE))
+
+
+if __name__ == '__main__':
+ parser = argparse.ArgumentParser(description='Backup MongoDBs')
+ parser.add_argument('-tp', '--testapi-port',
+ type=int,
+ required=False,
+ default=8000,
+ help='testapi exposed port')
+ parser.add_argument('-tl', '--testapi-base-url',
+ type=str,
+ required=True,
+ help='testapi exposed base-url')
+ main(parser.parse_args())