summaryrefslogtreecommitdiff
path: root/manifests
diff options
context:
space:
mode:
authorRaphaël Pinson <raphael.pinson@camptocamp.com>2012-03-23 23:15:23 +0100
committerRaphaël Pinson <raphael.pinson@camptocamp.com>2012-03-23 23:15:23 +0100
commitc7c9cd66f71599d399a7dc9046e5d31e4ec899ef (patch)
tree8aafc4a3381655b275f64ef6dade67944479f95a /manifests
parent762dffd677cd8b167a65c0a7595a48530c4cd091 (diff)
Add augeas::lens definition
Diffstat (limited to 'manifests')
-rw-r--r--manifests/lens.pp56
1 files changed, 56 insertions, 0 deletions
diff --git a/manifests/lens.pp b/manifests/lens.pp
new file mode 100644
index 0000000..b40f220
--- /dev/null
+++ b/manifests/lens.pp
@@ -0,0 +1,56 @@
+define augeas::lens (
+ $ensure=present,
+ $lens_dir,
+ $lens_file='',
+ $test_file=''
+) {
+
+ $lenses_dir = "/usr/share/augeas/lenses"
+
+ file { "${lenses_dir}/tests":
+ ensure => directory
+ }
+
+# $lens_file_source = $lens_file ? {
+# '' => $lens_dir ? {
+# '' => fail "Cannot determine lens file for ${name}",
+# default => "${lens_dir}/${name}.aug"
+# },
+# default => $lens_file
+# }
+
+
+ $lens_file_source = "${lens_dir}/${name}.aug"
+ $lens_file_dest = "${lenses_dir}/${name}.aug"
+
+# $test_file_source = $test_file ? {
+# '' => $lens_dir ? {
+# '' => fail "Cannot determine test file for ${name}",
+# default => "${lens_dir}/tests/test_${name}.aug"
+# },
+# default => $test_file
+# }
+
+ $test_file_source = "${lens_dir}/tests/test_${name}.aug"
+ $test_file_dest = "${lenses_dir}/tests/test_${name}.aug"
+
+ file { "${lens_file_dest}":
+ ensure => $ensure,
+ source => $lens_file_source,
+ }
+
+ file { "${test_file_dest}":
+ ensure => $ensure,
+ source => $test_file_source,
+ }
+
+ exec { "Typecheck lens":
+ command => "augparse -I ${lenses_dir} ${lens_file_dest} || (rm -f ${lens_file_dest} && exit 1)",
+ require => File["${lens_file_dest}"]
+ }
+
+ exec { "Test lens":
+ command => "augparse -I ${lenses_dir} ${test_file_dest} || (rm -f ${lens_file_dest} && rm -f ${test_file_dest} && exit 1)",
+ require => File["${lens_file_dest}", "${test_file_dest}"]
+ }
+}