aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README7
-rw-r--r--manifests/reboot_required_notify.pp20
2 files changed, 27 insertions, 0 deletions
diff --git a/README b/README
index 8e1dcba..a84b510 100644
--- a/README
+++ b/README
@@ -218,6 +218,13 @@ apt::proxy_client
This class adds the right configuration to apt to make it fetch packages via a
proxy. The variables $apt_proxy and $apt_proxy_port need to be set (see above).
+apt::reboot_required_notify
+---------------------------
+
+This class installs a daily cronjob that checks if a package upgrade
+requires the system to be rebooted; if so, cron sends a notification
+email to root.
+
apt::unattended_upgrades
------------------------
diff --git a/manifests/reboot_required_notify.pp b/manifests/reboot_required_notify.pp
new file mode 100644
index 0000000..3c6db79
--- /dev/null
+++ b/manifests/reboot_required_notify.pp
@@ -0,0 +1,20 @@
+class apt::reboot_required_notify {
+
+ # This package installs the script that created /var/run/reboot-required*.
+ # This script (/usr/share/update-notifier/notify-reboot-required) is
+ # triggered e.g. by kernel packages.
+ package { update-notifier-common:
+ ensure => installed,
+ }
+
+ # cron-apt defaults to run every night at 4 o'clock
+ # so we check if a reboot is required a bit later.
+ cron { 'apt_reboot_required_notify':
+ command => 'if [ -f /var/run/reboot-required ]; then echo "Reboot required\n" ; cat /var/run/reboot-required.pkgs ; fi',
+ user => root,
+ hour => 4,
+ minute => 20,
+ require => Package['update-notifier-common'],
+ }
+
+}