This syntax looks good, what does Puppet say?

This commit is contained in:
Einar Lönn 2020-11-12 14:02:04 +01:00
parent 136bc747d1
commit abd28ec1d0

View file

@ -14,33 +14,44 @@ class eid::telegraf(String $version = "stable", Array $volumes = [], Array $port
notify => Sunet::Docker_run['telegraf'] notify => Sunet::Docker_run['telegraf']
} }
# Below not pretty but I'm piggy-backing on this class to add a secondary output to test the new influx2-server # Below not pretty but I'm piggy-backing on this class to add a secondary output to test the new influx2-server
if ($influx2_token != 'NOT_SET_IN_HIERA') { if ($influx2_token != 'NOT_SET_IN_HIERA') {
file { "/etc/telegraf/telegraf.conf.d/95-telegraf.conf": file { "/etc/telegraf/telegraf.conf.d/95-telegraf.conf":
ensure => file, ensure => file,
owner => 'root', owner => 'root',
group => 'root', group => 'root',
path => "/etc/telegraf/telegraf.conf.d/95-telegraf.conf", path => "/etc/telegraf/telegraf.conf.d/95-telegraf.conf",
mode => '0644', mode => '0644',
content => template('eid/telegraf/95-telegraf.conf.erb'), content => template('eid/telegraf/95-telegraf.conf.erb'),
} }
} }
eid_glob(["/etc/telegraf/telegraf.conf.d/*.conf"]).each |String $file| { eid_glob(["/etc/telegraf/telegraf.conf.d/*.conf"]).each |String $file| {
concat::fragment { $file: concat::fragment { $file:
target => "/etc/telegraf/telegraf.conf", target => "/etc/telegraf/telegraf.conf",
source => $file, source => $file,
} }
} }
$_volumes = flatten(["/dev/log:/dev/log","/var/log:/var/log","/etc/telegraf:/etc/telegraf","/var/run/utmp:/var/run/utmp:ro",$volumes]) $_volumes = flatten(["/dev/log:/dev/log","/var/log:/var/log","/etc/telegraf:/etc/telegraf","/var/run/utmp:/var/run/utmp:ro",$volumes])
sunet::docker_run {"telegraf": if ($influx2_token != 'NOT_SET_IN_HIERA') {
hostname => "${::fqdn}", sunet::docker_run {"telegraf":
image => "docker.sunet.se/eduid/telegraf", hostname => "${::fqdn}",
imagetag => $version, image => "docker.sunet.se/eduid/telegraf",
volumes => $_volumes, imagetag => "latest",
ports => $ports, volumes => $_volumes,
env => ["INFLUXDB2_TOKEN=$influxdb2_token","INFLUXDB2_ORG=$influxdb2_org","INFLUXDB2_BUCKET=$influxdb2_bucket"] ports => $ports,
} env => ["INFLUXDB2_TOKEN=$influxdb2_token","INFLUXDB2_ORG=$influxdb2_org","INFLUXDB2_BUCKET=$influxdb2_bucket"]
}
} else {
sunet::docker_run {"telegraf":
hostname => "${::fqdn}",
image => "docker.sunet.se/eduid/telegraf",
imagetag => $version,
volumes => $_volumes,
ports => $ports,
env => ["INFLUXDB2_TOKEN=$influxdb2_token","INFLUXDB2_ORG=$influxdb2_org","INFLUXDB2_BUCKET=$influxdb2_bucket"]
}
}
} }