diff options
author | Jan Dittberner <jandd@cacert.org> | 2019-08-13 12:17:48 +0200 |
---|---|---|
committer | Jan Dittberner <jandd@cacert.org> | 2019-08-13 12:17:48 +0200 |
commit | 5ec12c8fbdb6fbfc163ea9197be4489d3c76721e (patch) | |
tree | df471c8431d8c5e232eaf293541c3cd41b2ddd1c /sitemodules | |
parent | d69ce91bacfe333aef72d1fcbb7b36cb30cf3019 (diff) | |
download | cacert-puppet-5ec12c8fbdb6fbfc163ea9197be4489d3c76721e.tar.gz cacert-puppet-5ec12c8fbdb6fbfc163ea9197be4489d3c76721e.tar.xz cacert-puppet-5ec12c8fbdb6fbfc163ea9197be4489d3c76721e.zip |
Define a postrun command for puppet runs
Diffstat (limited to 'sitemodules')
-rw-r--r-- | sitemodules/profiles/files/base/etckeeper_post_command.sh | 8 | ||||
-rw-r--r-- | sitemodules/profiles/manifests/base.pp | 23 |
2 files changed, 31 insertions, 0 deletions
diff --git a/sitemodules/profiles/files/base/etckeeper_post_command.sh b/sitemodules/profiles/files/base/etckeeper_post_command.sh new file mode 100644 index 0000000..ec10155 --- /dev/null +++ b/sitemodules/profiles/files/base/etckeeper_post_command.sh @@ -0,0 +1,8 @@ +#!/bin/sh +set -e + +if etckeeper unclean; then + if ! etckeeper commit "saving uncommitted changes in /etc after puppet run"; then + echo "warning: etckeeper failed to commit changes in /etc using $VCS" >&2 + fi +fi diff --git a/sitemodules/profiles/manifests/base.pp b/sitemodules/profiles/manifests/base.pp index 69e369f..2a7aad2 100644 --- a/sitemodules/profiles/manifests/base.pp +++ b/sitemodules/profiles/manifests/base.pp @@ -237,4 +237,27 @@ class profiles::base ( ensure => absent, } } + + package { 'etckeeper': + ensure => installed, + } + file { '/etc/etckeeper/post-puppet.d': + ensure => directory, + owner => 'root', + group => 'root', + mode => '0755', + require => Package['etckeeper'], + } + file { '/etc/etckeeper/post-puppet.d/50uncommitted-changes': + ensure => file, + owner => 'root', + group => 'root', + mode => '0755', + source => 'puppet://modules/profiles/base/etckeeper_post_command.sh', + } + + augeas { 'set_puppet_postrun_command': + context => '/etc/puppetlabs/puppet/puppet.conf', + changes => 'set main/postrun_command "etckeeper post-puppet"', + } } |