class soc::intelmq( ) { group { 'intelmq': ensure => present, } user { 'intelmq': ensure => present, gid => 'intelmq', groups => 'www-data', home => '/opt/intelmq', managehome => true, provider => 'useradd', } file { '/etc/intelmq': ensure => directory, owner => 'intelmq', group => 'intelmq', } # file { '/opt/sso/apache/groups.txt': # ensure => file, # content => template('soc/sso/apache-groups.txt.erb') # } package { ['apache2', 'libapache2-mod-wsgi-py3', 'postgresql', 'python3-venv', 'python3-pip', 'python3-gpg']: ensure => 'latest', } exec { 'sudo -u intelmq /usr/bin/python3 -m venv --system-site-packages /opt/intelmq/venv': creates => '/opt/intelmq/venv', } # Install intelmq and all most stuff around it. exec { 'sudo -u intelmq /opt/intelmq/venv/bin/pip3 install intelmq intelmq-api intelmq-certbund-contact intelmq-certbund-contact-api intelmq-checkticket-api intelmq-events-api intelmq-fody-backend intelmq-manager intelmq-session intelmq-tickets-api intelmqmail': creates => '/opt/intelmq/etc', } }