lgweb.pp 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. # Module:: public::lookingglass
  2. # Manifest:: lgweb.pp
  3. # Sources
  4. # git clone https://github.com/sileht/bird-lg -C /opt/
  5. class public::lookingglass::lgweb {
  6. package { [ 'python-dnspython', 'python-pydot', 'python-flask' ]:
  7. ensure => installed,
  8. }
  9. nginxpack::vhost::proxy { 'lgweb':
  10. domains => [ 'lg.ldn-fai.net', 'lg.as60197.net' ],
  11. to_domain => '127.0.0.1',
  12. to_port => 5000,
  13. }
  14. user { 'lgweb':
  15. ensure => present,
  16. system => true,
  17. }
  18. file { '/etc/systemd/system/lgweb.service':
  19. ensure => file,
  20. owner => root,
  21. group => staff,
  22. mode => '0755',
  23. source => 'puppet:///modules/public/lookingglass/lgweb/lgweb.service',
  24. notify => Service['lgweb'],
  25. require => User['lgweb'],
  26. }
  27. service { 'lgweb':
  28. ensure => running,
  29. enable => true,
  30. require => File['/etc/systemd/system/lgweb.service'],
  31. }
  32. file { '/opt/bird-lg/':
  33. ensure => directory,
  34. owner => root,
  35. group => staff,
  36. mode => '0755',
  37. }
  38. file { '/opt/bird-lg/lg.cfg':
  39. ensure => file,
  40. owner => root,
  41. group => staff,
  42. mode => '0644',
  43. source => 'puppet:///modules/private/lookingglass/lgweb/lgweb.cfg',
  44. notify => Service['lgweb'],
  45. }
  46. file { '/opt/bird-lg/lg.py':
  47. ensure => file,
  48. owner => root,
  49. group => staff,
  50. mode => '0755',
  51. notify => Service['lgweb'],
  52. }
  53. }