summaryrefslogtreecommitdiff
path: root/manifests
diff options
context:
space:
mode:
authorRaphaël Pinson <raphael.pinson@camptocamp.com>2013-01-08 17:39:19 +0100
committerRaphaël Pinson <raphael.pinson@camptocamp.com>2013-01-08 17:39:19 +0100
commit383692c50f0cf8e7b2a25951c31b916effac899d (patch)
tree68ba95abe534ce2286af64b5ee913fd010a8f936 /manifests
parent8c756b45ea391dd53a6f2d83a460e92d27caab96 (diff)
Add stock_since to augeas::lens
Diffstat (limited to 'manifests')
-rw-r--r--manifests/lens.pp50
1 files changed, 28 insertions, 22 deletions
diff --git a/manifests/lens.pp b/manifests/lens.pp
index ee85318..55dc9ae 100644
--- a/manifests/lens.pp
+++ b/manifests/lens.pp
@@ -10,12 +10,15 @@ Parameters:
- *ensure*: present/absent
- *lens_source*: the source for the lens
- *test_source*: optionally, the source for the test file.
+- *stock_since*: optionally, indicate in which version of Augeas
+ the lens became stock, so it will not be deployed above that version.
Example usage:
augeas::lens { 'networkmanager':
lens_source => 'puppet:///modules/networkmanager/lenses/networkmanager.aug',
test_source => 'puppet:///modules/networkmanager/lenses/test_networkmanager.aug',
+ stock_since => '1.0.0',
}
*/
@@ -23,36 +26,39 @@ Example usage:
define augeas::lens (
$lens_source,
$ensure=present,
- $test_source=false
+ $test_source=false,
+ $stock_since=false,
) {
- include augeas::base
+ if (!$stock_since or !versioncmp($::augeasversion, $stock_since)) {
+ include augeas::base
- $lens_dest = "${augeas::base::lens_dir}/${name}.aug"
- $test_dest = "${augeas::base::lens_dir}/tests/test_${name}.aug"
+ $lens_dest = "${augeas::base::lens_dir}/${name}.aug"
+ $test_dest = "${augeas::base::lens_dir}/tests/test_${name}.aug"
- file { $lens_dest:
- ensure => $ensure,
- source => $lens_source,
- }
-
- exec { "Typecheck lens ${name}":
- command => "augparse -I ${augeas::base::lens_dir} ${lens_dest} || (rm -f ${lens_dest} && exit 1)",
- refreshonly => true,
- subscribe => File[$lens_dest],
- }
-
- if $test_source {
- file { $test_dest:
+ file { $lens_dest:
ensure => $ensure,
- source => $test_source,
- notify => Exec["Test lens ${name}"],
+ source => $lens_source,
}
- exec { "Test lens ${name}":
- command => "augparse -I ${augeas::base::lens_dir} ${test_dest} || (rm -f ${lens_dest} && rm -f ${test_dest} && exit 1)",
+ exec { "Typecheck lens ${name}":
+ command => "augparse -I ${augeas::base::lens_dir} ${lens_dest} || (rm -f ${lens_dest} && exit 1)",
refreshonly => true,
- subscribe => File[$lens_dest, $test_dest],
+ subscribe => File[$lens_dest],
+ }
+
+ if $test_source {
+ file { $test_dest:
+ ensure => $ensure,
+ source => $test_source,
+ notify => Exec["Test lens ${name}"],
+ }
+
+ exec { "Test lens ${name}":
+ command => "augparse -I ${augeas::base::lens_dir} ${test_dest} || (rm -f ${lens_dest} && rm -f ${test_dest} && exit 1)",
+ refreshonly => true,
+ subscribe => File[$lens_dest, $test_dest],
+ }
}
}
}