Defined Type: logrotate::rule

Defined in:
manifests/rule.pp

Overview

Defined type: logrotate::rule

Parameters:

  • filename (Stdlib::AbsolutePath) (defaults to: "${::logrotate::config_dir}/${title}")
  • template (String) (defaults to: 'logrotate/rule.conf.erb')
  • paths (Optional[Array[String]]) (defaults to: undef)
  • rotate_period (Optional[Pattern[/(hourly|daily|weekly|monthly)/]]) (defaults to: undef)
  • compress (Optional[Boolean]) (defaults to: undef)
  • compresscmd (Optional[String]) (defaults to: undef)
  • uncompresscmd (Optional[String]) (defaults to: undef)
  • compressext (Optional[String]) (defaults to: undef)
  • compressoptions (Optional[String]) (defaults to: undef)
  • copy (Optional[Boolean]) (defaults to: undef)
  • copytruncate (Optional[Boolean]) (defaults to: undef)
  • create (Optional[Boolean]) (defaults to: undef)
  • create_mode (Optional[String]) (defaults to: undef)
  • create_owner (Optional[String]) (defaults to: undef)
  • create_group (Optional[String]) (defaults to: undef)
  • createolddir (Optional[Boolean]) (defaults to: undef)
  • createolddir_mode (Optional[String]) (defaults to: undef)
  • createolddir_owner (Optional[String]) (defaults to: undef)
  • createolddir_group (Optional[String]) (defaults to: undef)
  • dateext (Optional[Boolean]) (defaults to: undef)
  • dateformat (Optional[String]) (defaults to: undef)
  • dateyesterday (Optional[Boolean]) (defaults to: undef)
  • delaycompress (Optional[Boolean]) (defaults to: undef)
  • extension (Optional[String]) (defaults to: undef)
  • addextension (Optional[String]) (defaults to: undef)
  • ifempty (Optional[Boolean]) (defaults to: undef)
  • include (Optional[String]) (defaults to: undef)
  • mail (Optional[String]) (defaults to: undef)
  • mailfirst (Optional[String]) (defaults to: undef)
  • maillast (Optional[String]) (defaults to: undef)
  • minage (Optional[Integer]) (defaults to: undef)
  • maxage (Optional[Integer]) (defaults to: undef)
  • maxsize (Optional[Integer]) (defaults to: undef)
  • minsize (Optional[Integer]) (defaults to: undef)
  • missingok (Optional[Boolean]) (defaults to: undef)
  • olddir (Optional[String]) (defaults to: undef)
  • postrotate (Optional[Array[String]]) (defaults to: undef)
  • prerotate (Optional[Array[String]]) (defaults to: undef)
  • firstaction (Optional[Array[String]]) (defaults to: undef)
  • lastaction (Optional[Array[String]]) (defaults to: undef)
  • preremove (Optional[Array[String]]) (defaults to: undef)
  • rotate (Optional[Integer]) (defaults to: undef)
  • renamecopy (Optional[Boolean]) (defaults to: undef)
  • size (Optional[Integer]) (defaults to: undef)
  • sharedscripts (Optional[Boolean]) (defaults to: undef)
  • shred (Optional[Boolean]) (defaults to: undef)
  • shredcycles (Optional[Integer]) (defaults to: undef)
  • start (Optional[Integer]) (defaults to: undef)
  • su (Optional[Boolean]) (defaults to: undef)
  • su_user (Optional[String]) (defaults to: undef)
  • su_group (Optional[String]) (defaults to: undef)


2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
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
# File 'manifests/rule.pp', line 2

define logrotate::rule (
  Stdlib::AbsolutePath $filename = "${::logrotate::config_dir}/${title}",
  String $template = 'logrotate/rule.conf.erb',
  Optional[Array[String]] $paths = undef,

  Optional[Pattern[/(hourly|daily|weekly|monthly)/]] $rotate_period = undef,
  Optional[Boolean] $compress = undef,
  Optional[String] $compresscmd = undef,
  Optional[String] $uncompresscmd = undef,
  Optional[String] $compressext = undef,
  Optional[String] $compressoptions = undef,
  Optional[Boolean] $copy = undef,
  Optional[Boolean] $copytruncate = undef,
  Optional[Boolean] $create = undef,
  Optional[String] $create_mode = undef,
  Optional[String] $create_owner = undef,
  Optional[String] $create_group = undef,
  Optional[Boolean] $createolddir = undef,
  Optional[String] $createolddir_mode = undef,
  Optional[String] $createolddir_owner = undef,
  Optional[String] $createolddir_group = undef,
  Optional[Boolean] $dateext = undef,
  Optional[String] $dateformat = undef,
  Optional[Boolean] $dateyesterday = undef,
  Optional[Boolean] $delaycompress = undef,
  Optional[String] $extension = undef,
  Optional[String] $addextension = undef,
  Optional[Boolean] $ifempty = undef,
  Optional[String] $include = undef,
  Optional[String] $mail = undef,
  Optional[String] $mailfirst = undef,
  Optional[String] $maillast = undef,
  Optional[Integer] $minage = undef,
  Optional[Integer] $maxage = undef,
  Optional[Integer] $maxsize = undef,
  Optional[Integer] $minsize = undef,
  Optional[Boolean] $missingok = undef,
  Optional[String] $olddir = undef,
  Optional[Array[String]] $postrotate = undef,
  Optional[Array[String]] $prerotate = undef,
  Optional[Array[String]] $firstaction = undef,
  Optional[Array[String]] $lastaction = undef,
  Optional[Array[String]] $preremove = undef,
  Optional[Integer] $rotate = undef,
  Optional[Boolean] $renamecopy = undef,
  Optional[Integer] $size = undef,
  Optional[Boolean] $sharedscripts = undef,
  Optional[Boolean] $shred = undef,
  Optional[Integer] $shredcycles = undef,
  Optional[Integer] $start = undef,
  Optional[Boolean] $su = undef,
  Optional[String] $su_user = undef,
  Optional[String] $su_group = undef,
) {
  $create_options = strip("${create_mode} ${create_owner} ${create_group}")

  $createolddir_options = strip(
    "${createolddir_mode} ${createolddir_owner} ${createolddir_group}"
  )

  $su_options = strip("${su_user} ${su_group}")

  file { $filename:
    ensure  => file,
    owner   => 'root',
    group   => 'root',
    mode    => '0644',
    content => template($template),
  }
}