1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
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, swagger_url):
vars = {
"expose_port": port,
"swagger_url": swagger_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.swagger_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('-su', '--swagger-url',
type=str,
required=True,
help='testapi exposed swagger-url')
main(parser.parse_args())
|