Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/python
- import os, jinja2, yaml
- inventory = open("/etc/ansible/hosts", "r")
- server_groups = yaml.load_all(inventory)
- template_dir = os.path.join(os.path.dirname(__file__), 'templates')
- jinja_env = jinja2.Environment(loader = jinja2.FileSystemLoader(template_dir), autoescape = True)
- def render_template(template, params):
- t = jinja_env.get_template(template)
- return t.render(params)
- def get_ipv4(server_group_list):
- ipv4_list=[]
- for server_group in server_groups:
- for server_group_name in server_group:
- hosts=server_group[server_group_name]['hosts']
- for i in hosts:
- if server_group_name in server_group_list:
- ipv4_list.append(server_group[server_group_name]['hosts'][i]['local_ipv4'])
- ipv4_string=','.join(ipv4_list)
- return ipv4_string
- def master_db_firewall_rules():
- input_source_mysql=get_ipv4(['de-webbservers', 'de-primary-slave', 'de-secondary-slave'])
- input_dest_mysql=get_ipv4(['de-database-master'])
- jinja_vars={'input_source_mysql': input_source_mysql, 'input_dest_mysql': input_dest_mysql}
- print render_template('db-master', jinja_vars)
- master_db_firewall_rules()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement