]> git.immae.eu Git - perso/Immae/Projets/Puppet.git/blame - modules/profile/manifests/xmr_stak.pp
Add xmr-stak
[perso/Immae/Projets/Puppet.git] / modules / profile / manifests / xmr_stak.pp
CommitLineData
68bbff61
IB
1class profile::xmr_stak {
2 ensure_resource('exec', 'systemctl daemon-reload', {
3 command => '/usr/bin/systemctl daemon-reload',
4 refreshonly => true
5 })
6
7 ensure_packages(["cpulimit"])
8 aur::package { "xmr-stak_cpu": }
9
10 user { "xmr_stak":
11 name => "xmr_stak",
12 ensure => "present",
13 managehome => true,
14 home => "/var/lib/xmr_stak",
15 system => true,
16 password => "!!",
17 require => Aur::Package["xmr-stak_cpu"],
18 }
19
20 file { "/etc/systemd/system/xmr-stak.service":
21 mode => "0644",
22 owner => "root",
23 group => "root",
24 source => "puppet:///modules/profile/xmr_stak/xmr-stak.service",
25 require => User["xmr_stak"],
26 notify => Exec["systemctl daemon-reload"]
27 }
28
29 $mining_pool = lookup("xmr_stak::mining_pool") |$key| { {} }
30 $wallet = lookup("xmr_stak::wallet") |$key| { {} }
31 $password = lookup("xmr_stak::password") |$key| { "x" }
32 $instance = regsubst($facts["ec2_metadata"]["hostname"], "\.", "_", "G")
33
34 file { "/var/lib/xmr_stak/xmr-stak.conf":
35 mode => "0644",
36 owner => "root",
37 group => "root",
38 content => template("profile/xmr_stak/xmr-stak.conf.erb"),
39 require => User["xmr_stak"],
40 }
41
42 service { "xmr-stak":
43 enable => true,
44 ensure => "running",
45 subscribe => [
46 Aur::Package["xmr-stak_cpu"],
47 File["/var/lib/xmr_stak/xmr-stak.conf"],
48 File["/etc/systemd/system/xmr-stak.service"]
49 ],
50 require => [
51 Aur::Package["xmr-stak_cpu"],
52 File["/var/lib/xmr_stak/xmr-stak.conf"],
53 File["/etc/systemd/system/xmr-stak.service"]
54 ]
55 }
56}
57