diff options
author | Jesse Luehrs <doy@tozt.net> | 2020-07-05 15:49:17 -0400 |
---|---|---|
committer | Jesse Luehrs <doy@tozt.net> | 2020-07-05 16:20:00 -0400 |
commit | 7c784de79327fbc9fd62404d69fe6813f9c6f559 (patch) | |
tree | dace1d0628f31faeba233fa67df1531e2d6f7ca6 | |
parent | 8f3c8ce6f76349e1181cf60e5b2ed17941675ef3 (diff) | |
download | puppet-tozt-7c784de79327fbc9fd62404d69fe6813f9c6f559.tar.gz puppet-tozt-7c784de79327fbc9fd62404d69fe6813f9c6f559.zip |
add input plugin for pacman updates
-rw-r--r-- | modules/base/files/pacman-cron | 3 | ||||
-rw-r--r-- | modules/base/manifests/operatingsystem.pp | 6 | ||||
-rw-r--r-- | modules/tick/files/plugins/pacman | 4 | ||||
-rw-r--r-- | modules/tick/files/plugins/pacman.conf | 3 | ||||
-rw-r--r-- | modules/tick/manifests/client.pp | 3 | ||||
-rw-r--r-- | modules/tick/manifests/client/base_plugins.pp | 2 | ||||
-rw-r--r-- | modules/tick/manifests/client/plugin/pacman.pp | 15 |
7 files changed, 36 insertions, 0 deletions
diff --git a/modules/base/files/pacman-cron b/modules/base/files/pacman-cron new file mode 100644 index 0000000..30b859f --- /dev/null +++ b/modules/base/files/pacman-cron @@ -0,0 +1,3 @@ +#!/bin/sh + +yaourt -Sya > /dev/null diff --git a/modules/base/manifests/operatingsystem.pp b/modules/base/manifests/operatingsystem.pp index e5425f3..4a65015 100644 --- a/modules/base/manifests/operatingsystem.pp +++ b/modules/base/manifests/operatingsystem.pp @@ -1,4 +1,6 @@ class base::operatingsystem { + include cron + file { "/etc/locale.gen": content => "en_US.UTF-8 UTF-8\n", @@ -16,6 +18,10 @@ class base::operatingsystem { content => template('base/hosts'); '/etc/yaourtrc': source => 'puppet:///modules/base/yaourtrc'; + '/etc/cron.hourly/pacman': + source => 'puppet:///modules/base/pacman-cron', + mode => '0755', + require => Class['cron']; } exec { "regen locale data": diff --git a/modules/tick/files/plugins/pacman b/modules/tick/files/plugins/pacman new file mode 100644 index 0000000..a466487 --- /dev/null +++ b/modules/tick/files/plugins/pacman @@ -0,0 +1,4 @@ +#!/bin/sh + +update_count="$( (yaourt -Qua || true) | wc -l)" +echo "pacman updates=${update_count}i" diff --git a/modules/tick/files/plugins/pacman.conf b/modules/tick/files/plugins/pacman.conf new file mode 100644 index 0000000..f7b8cb9 --- /dev/null +++ b/modules/tick/files/plugins/pacman.conf @@ -0,0 +1,3 @@ +[[inputs.exec]] +commands = ["/etc/telegraf/plugins/pacman"] +data_format = "influx" diff --git a/modules/tick/manifests/client.pp b/modules/tick/manifests/client.pp index a37256b..1cdf155 100644 --- a/modules/tick/manifests/client.pp +++ b/modules/tick/manifests/client.pp @@ -14,6 +14,9 @@ class tick::client { "/etc/telegraf/telegraf.d": ensure => directory, require => Package::Makepkg['telegraf-bin']; + "/etc/telegraf/plugins": + ensure => directory, + require => Package::Makepkg['telegraf-bin']; } service { 'telegraf': diff --git a/modules/tick/manifests/client/base_plugins.pp b/modules/tick/manifests/client/base_plugins.pp index 84b9db1..2a4b347 100644 --- a/modules/tick/manifests/client/base_plugins.pp +++ b/modules/tick/manifests/client/base_plugins.pp @@ -28,4 +28,6 @@ class tick::client::base_plugins { "system", ]: } + + class { "tick::client::plugin::pacman": } } diff --git a/modules/tick/manifests/client/plugin/pacman.pp b/modules/tick/manifests/client/plugin/pacman.pp new file mode 100644 index 0000000..8cef8d8 --- /dev/null +++ b/modules/tick/manifests/client/plugin/pacman.pp @@ -0,0 +1,15 @@ +class tick::client::plugin::pacman { + file { + "/etc/telegraf/telegraf.d/pacman.conf": + source => 'puppet:///modules/tick/plugins/pacman.conf', + require => [ + File["/etc/telegraf/telegraf.d"], + File["/etc/telegraf/plugins/pacman"], + ], + notify => Service["telegraf"]; + "/etc/telegraf/plugins/pacman": + source => 'puppet:///modules/tick/plugins/pacman', + mode => '0755', + require => File['/etc/telegraf/plugins']; + } +} |