Puppet Class: cronapt::configure
- Inherits:
- cronapt::params
- Defined in:
- manifests/configure.pp
Overview
Class: cronapt::configure
Configure the actions of cron-apt.
Parameters:
[*actions*] - list of cron-apt actions to enable.
[*mail*] - where to send email notifications.
[*mail_on*] - when to send email notifications.
Sample Usage:
class { 'cronapt::configure' :
actions => ['update', 'upgrade', 'notify'],
mail => 'root',
mail_on => 'error',
}
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 |
# File 'manifests/configure.pp', line 19
class cronapt::configure (
$actions = $cronapt::params::cron_actions,
$mail = $cronapt::params::cron_mail,
$mail_on = $cronapt::params::cron_mail_on
) inherits cronapt::params {
#
# Configure
#
$mail_on_value = $mail_on ? {
'error' => 'error',
'upgrade' => 'upgrade',
'changes' => 'changes',
'output' => 'output',
'always' => 'always',
default => 'always',
}
augeas { "cronapt-mail_config" :
context => "/files/etc/cron-apt/config",
changes => [
"set MAILON ${mail_on_value}",
"set MAILTO ${mail}",
],
require => Class["cronapt::install"],
}
#
# Actions
#
if ('update' in $actions) {
file { "/etc/cron-apt/action.d/0-update" :
ensure => "file",
source => "puppet:///modules/cronapt/update",
require => Class["cronapt::install"],
}
}
if ('download' in $actions) {
file { "/etc/cron-apt/action.d/3-download" :
ensure => "file",
source => "puppet:///modules/cronapt/download",
require => Class["cronapt::install"],
}
}
if ('upgrade' in $actions) {
file { "/etc/cron-apt/action.d/5-upgrade" :
ensure => "file",
source => "puppet:///modules/cronapt/upgrade",
require => Class["cronapt::install"],
}
}
if ('notify' in $actions) {
file { "/etc/cron-apt/action.d/9-notify" :
ensure => "file",
source => "puppet:///modules/cronapt/notify",
require => Class["cronapt::install"],
}
}
include cronapt::install
Class['cronapt::install'] -> Class['cronapt::configure']
}
|