class net::cisoassistant_test { $nftables_rules = { 'allow_access_to_cisoassistant' => { from => 'any', port => 443, to => 'any', proto => 'tcp', }, 'allow_access_to_cisoassistant_api' => { from => 'any', port => 9443, to => 'any', proto => 'tcp', }, 'allow_access_to_always_https_acme_c' => { from => 'any', port => 80, to => 'any', proto => 'tcp', }, } $nftables_rules.each |$name, $params| { sunet::nftables::allow { $name: * => $params, } } ensure_resource('file','/opt/cisoas', { ensure => directory } ) ensure_resource('file','/opt/cisoas/compose', { ensure => directory } ) sunet::docker_compose {'cisoas': service_name => 'cisoas', description => 'CISO Assistant', compose_dir => '/opt/cisoas/compose', content => template('net/cisoassistant/docker-compose.yml.erb'), } file { '/opt/cisoas/update-cisoas-enterprise.sh': mode => '0744', owner => 'root', group => 'root', content => file('net/cisoassistant/update-cisoas-enterprise.sh'), } sunet::scriptherder::cronjob { 'Upgrade cisoassistant images': cmd => '/opt/cisoas/update-cisoas-enterprise.sh', weekday => 'Saturday', ok_criteria => ['exit_status=0', 'max_age=10d'], } }