4 from jinja2 import Environment
6 DOCKER_COMPOSE_FILE = './docker-compose.yml'
7 DOCKER_COMPOSE_TEMPLATE = """
12 container_name: opnfv-mongo
14 image: opnfv/testapi:latest
15 container_name: opnfv-testapi
17 - mongodb_url=mongodb://mongo:27017/
18 - base_url={{ vars.base_url }}
20 - "{{ vars.testapi_port }}:8000"
24 image: opnfv/reporting:latest
25 container_name: opnfv-reporting
27 - "{{ vars.reporting_port }}:8000"
31 def render_docker_compose(testapi_port, reporting_port, testapi_base_url):
33 "testapi_port": testapi_port,
34 "reporting_port": reporting_port,
35 "base_url": testapi_base_url,
37 yml = Environment().from_string(DOCKER_COMPOSE_TEMPLATE).render(vars=vars)
38 with open(DOCKER_COMPOSE_FILE, 'w') as f:
44 render_docker_compose(args.testapi_port,
46 args.testapi_base_url)
47 os.system('docker-compose -f {} up -d'.format(DOCKER_COMPOSE_FILE))
50 if __name__ == '__main__':
51 parser = argparse.ArgumentParser(description='Backup MongoDBs')
52 parser.add_argument('-tp', '--testapi-port',
56 help='testapi exposed port')
57 parser.add_argument('-tl', '--testapi-base-url',
60 help='testapi exposed base-url')
61 parser.add_argument('-rp', '--reporting-port',
65 help='reporting exposed port')
67 main(parser.parse_args())