/swift/netcfg.py

https://github.com/willkelly/random
Python | 34 lines | 29 code | 4 blank | 1 comment | 1 complexity | f5858ed8c04a88deb9ca1b2d778df4ca MD5 | raw file
  1. #!/usr/bin/python
  2. import sys
  3. import json
  4. if len(sys.argv) != 2:
  5. sys.stderr.write("Usage: {0} host\n".format(sys.argv[0]))
  6. sys.exit(1)
  7. host = sys.argv[1]
  8. o = json.loads(open("/opt/djeep/etc/puppet/hosts/%s" % (host)).read())['options']
  9. o.update(json.loads(open("/opt/djeep/etc/puppet/clusters/%s" % (o['cluster'])).read())['options'])
  10. t = """auto lo
  11. iface lo inet loopback
  12. auto eth0
  13. iface eth0 inet static
  14. address {host_ip_address}
  15. netmask {host_netmask}
  16. gateway {host_gateway}
  17. auto eth0.{vmnet_vlan}
  18. iface eth0.{vmnet_vlan} inet static
  19. address {host_vmnet_ip}
  20. netmask {vmnet_netmask}
  21. up ifconfig eth0.{vmnet_vlan} up
  22. auto eth0.{mgmt_vlan}
  23. iface eth0.{mgmt_vlan} inet static
  24. address {host_mgmt_ip}
  25. netmask {mgmt_netmask}
  26. up ifconfig eth0.{mgmt_vlan} up""".format(**o)
  27. print t