gensites.py 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. #!/usr/bin/python
  2. # -*- coding: utf-8 -*-
  3. import os,sys
  4. if not 'GLUON_SITEDIR' in os.environ:
  5. print "GLUON_SITEDIR not set"
  6. sys.exit(1)
  7. execfile(os.environ['GLUON_SITEDIR'] + "/extra/sites.conf")
  8. execfile(os.environ['GLUON_SITEDIR'] + "/extra/groups.conf")
  9. DOMAINS=os.environ['GLUON_SITEDIR'] + "/domains/"
  10. TEMPLATE = ""
  11. with open(os.environ['GLUON_SITEDIR'] + "/extra/template.conf") as f:
  12. TEMPLATE = f.readlines()
  13. if not os.path.isdir(os.environ['GLUON_SITEDIR'] + "/domains"):
  14. try:
  15. os.mkdir(os.environ['GLUON_SITEDIR'] + "/domains")
  16. except OSError:
  17. print ("Creation of the directory %s failed" % os.environ['GLUON_SITEDIR'] + "/domains")
  18. # generate default site.conf
  19. with open(os.environ['GLUON_SITEDIR'] + "/site.conf", "w") as f:
  20. for line in TEMPLATE:
  21. # Substitute values
  22. line = line.replace('%SN', 'Bitte wählen')
  23. line = line.replace('%SC', 'ffho')
  24. line = line.replace('%DS', '6fdb7c99404fe91fca18e84bf48864681018741dc33fb6bde67d6041fc99210c')
  25. line = line.replace('%V4', '10.132.112.0/21')
  26. line = line.replace('%V6', 'a00')
  27. line = line.replace('%N4', '10.132.112.1')
  28. line = line.replace('%ID', '10')
  29. line = line.replace('%GN', 'uml')
  30. line = line.replace('%HIDE', 'false')
  31. f.write(line)
  32. # generate domain specific site confs
  33. for s in sites:
  34. with open(DOMAINS + s['site_code'] + ".conf", "w") as f:
  35. for line in TEMPLATE:
  36. # Substitute values
  37. line = line.replace('%SN', s['site_name'])
  38. line = line.replace('%SC', s['site_code'])
  39. line = line.replace('%DS', groups[s['group']]['%%DS'])
  40. line = line.replace('%V4', groups[s['group']]['%%V4'])
  41. line = line.replace('%V6', groups[s['group']]['%%V6'])
  42. line = line.replace('%N4', groups[s['group']]['%%N4'])
  43. line = line.replace('%ID', groups[s['group']]['%%ID'])
  44. line = line.replace('%GN', s['group'])
  45. if 'hide' in s:
  46. line = line.replace('%HIDE', s['hide'])
  47. else:
  48. line = line.replace('%HIDE', 'false')
  49. f.write(line)