class profile::xmr_stak { ensure_resource('exec', 'systemctl daemon-reload', { command => '/usr/bin/systemctl daemon-reload', refreshonly => true }) ensure_packages(["cpulimit"]) aur::package { "xmr-stak_cpu": } user { "xmr_stak": name => "xmr_stak", ensure => "present", managehome => true, home => "/var/lib/xmr_stak", system => true, password => "!!", require => Aur::Package["xmr-stak_cpu"], } file { "/etc/systemd/system/xmr-stak.service": mode => "0644", owner => "root", group => "root", source => "puppet:///modules/profile/xmr_stak/xmr-stak.service", require => User["xmr_stak"], notify => Exec["systemctl daemon-reload"] } $mining_pool = lookup("xmr_stak::mining_pool") |$key| { {} } $wallet = lookup("xmr_stak::wallet") |$key| { {} } $password = lookup("xmr_stak::password") |$key| { "x" } $instance = regsubst($facts["ec2_metadata"]["hostname"], "\.", "_", "G") file { "/var/lib/xmr_stak/xmr-stak.conf": mode => "0644", owner => "root", group => "root", content => template("profile/xmr_stak/xmr-stak.conf.erb"), require => User["xmr_stak"], } service { "xmr-stak": enable => true, ensure => "running", subscribe => [ Aur::Package["xmr-stak_cpu"], File["/var/lib/xmr_stak/xmr-stak.conf"], File["/etc/systemd/system/xmr-stak.service"] ], require => [ Aur::Package["xmr-stak_cpu"], File["/var/lib/xmr_stak/xmr-stak.conf"], File["/etc/systemd/system/xmr-stak.service"] ] } }