diff --git a/README.rst b/README.rst index cf81661..4388045 100644 --- a/README.rst +++ b/README.rst @@ -25,9 +25,17 @@ Installs the ``logrotate`` package and service/timer/cron. Manages logrotate config and include dir. +``logrotate.install`` +--------------------- + +Installs the logrotate package and its dependencies. + ``logrotate.jobs`` ------------------ Create custom job for logrotate. +``logrotate.service`` +--------------------- +Manages the startup and running state of the logrotate service. diff --git a/logrotate/config.sls b/logrotate/config.sls index 68b1503..367666e 100644 --- a/logrotate/config.sls +++ b/logrotate/config.sls @@ -11,6 +11,12 @@ logrotate_config: - user: {{ salt['pillar.get']('logrotate:config:user', logrotate.user) }} - group: {{ salt['pillar.get']('logrotate:config:group', logrotate.group) }} - mode: {{ salt['pillar.get']('logrotate:config:mode', '644') }} - - require: - - pkg: logrotate + +logrotate_directory: + file.directory: + - name: {{ logrotate.include_dir }} + - user: {{ salt['pillar.get']('logrotate:config:user', logrotate.user) }} + - group: {{ salt['pillar.get']('logrotate:config:group', logrotate.group) }} + - mode: 755 + - makedirs: True diff --git a/logrotate/init.sls b/logrotate/init.sls index 73f8037..8e907f6 100644 --- a/logrotate/init.sls +++ b/logrotate/init.sls @@ -1,19 +1,7 @@ -{% from "logrotate/map.jinja" import logrotate with context %} - -logrotate: - pkg.installed: - - name: {{ logrotate.pkg|json }} - service.running: - - name: {{ logrotate.service }} - - enable: True - -logrotate_directory: - file.directory: - - name: {{ logrotate.include_dir }} - - user: {{ salt['pillar.get']('logrotate:config:user', logrotate.user) }} - - group: {{ salt['pillar.get']('logrotate:config:group', logrotate.group) }} - - mode: 755 - - makedirs: True - - require: - - pkg: logrotate +# -*- coding: utf-8 -*- +# vim: ft=sls +include: + - logrotate.install + - logrotate.config + - logrotate.service diff --git a/logrotate/install.sls b/logrotate/install.sls new file mode 100644 index 0000000..ffcc8c9 --- /dev/null +++ b/logrotate/install.sls @@ -0,0 +1,8 @@ +# -*- coding: utf-8 -*- +# vim: ft=sls + +{% from "logrotate/map.jinja" import logrotate with context %} + +logrotate-pkg: + pkg.installed: + - name: {{ logrotate.pkg }} diff --git a/logrotate/jobs.sls b/logrotate/jobs.sls index b122916..2b050bf 100644 --- a/logrotate/jobs.sls +++ b/logrotate/jobs.sls @@ -15,7 +15,7 @@ logrotate_{{key}}: - group: {{ salt['pillar.get']('logrotate:config:group', logrotate.group) }} - mode: {{ salt['pillar.get']('logrotate:config:mode', '644') }} - require: - - pkg: logrotate + - pkg: logrotate-pkg - context: {% if value is mapping %} path: {{ value.get('path', []) }} diff --git a/logrotate/service.sls b/logrotate/service.sls new file mode 100644 index 0000000..ae8a788 --- /dev/null +++ b/logrotate/service.sls @@ -0,0 +1,17 @@ +# -*- coding: utf-8 -*- +# vim: ft=sls + +{% from "logrotate/map.jinja" import logrotate with context %} + +include: + - logrotate.config + - logrotate.install + +logrotate: + service.running: + - name: {{ logrotate.service }} + - enable: True + - require: + - pkg: logrotate-pkg + - file: logrotate_config + - file: logrotate_directory