lgweb.pp 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  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. shell => '/usr/sbin/nologin',
  17. system => true,
  18. }
  19. file { '/etc/systemd/system/lgweb.service':
  20. ensure => file,
  21. owner => root,
  22. group => staff,
  23. mode => '0755',
  24. source => 'puppet:///modules/public/lookingglass/lgweb/lgweb.service',
  25. notify => Service['lgweb'],
  26. require => User['lgweb'],
  27. }
  28. service { 'lgweb':
  29. ensure => running,
  30. enable => true,
  31. require => File['/etc/systemd/system/lgweb.service'],
  32. }
  33. file { '/opt/bird-lg/':
  34. ensure => directory,
  35. owner => root,
  36. group => staff,
  37. mode => '0755',
  38. }
  39. file { '/opt/bird-lg/lg.cfg':
  40. ensure => file,
  41. owner => root,
  42. group => staff,
  43. mode => '0644',
  44. source => 'puppet:///modules/private/lookingglass/lgweb/lgweb.cfg',
  45. notify => Service['lgweb'],
  46. }
  47. file { '/opt/bird-lg/lg.py':
  48. ensure => file,
  49. owner => root,
  50. group => staff,
  51. mode => '0755',
  52. notify => Service['lgweb'],
  53. }
  54. }