summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--manifests/classes/lsb_release.pp16
1 files changed, 16 insertions, 0 deletions
diff --git a/manifests/classes/lsb_release.pp b/manifests/classes/lsb_release.pp
index 22717b0..fbea24b 100644
--- a/manifests/classes/lsb_release.pp
+++ b/manifests/classes/lsb_release.pp
@@ -4,6 +4,11 @@
# Copyright (C) 2007 David Schmitt <david@schmitt.edv-bus.at>
# See LICENSE for the full license granted to you.
+# Changelog:
+# 2007-08-26: micah <micah@riseup.net> reported, that lsb_release can report
+# nonsensical values for lsbdistcodename; assert_lsbdistcodename now
+# recognises "n/a" and acts accordingly
+
# This lightweight class only asserts that $lsbdistcodename is set.
# If the assertion fails, an error is printed on the server
#
@@ -16,6 +21,17 @@ class assert_lsbdistcodename {
err("Please install lsb_release or set facter_lsbdistcodename in the environment of $fqdn")
exec { "/bin/false # assert_lsbdistcodename": alias => assert_lsbdistcodename }
}
+ 'n/a': {
+ case $operatingsystem {
+ "Debian": {
+ err("lsb_release was unable to report your distcodename; This seems to indicate a broken apt/sources.list on $fqdn")
+ }
+ default: {
+ err("lsb_release was unable to report your distcodename; please set facter_lsbdistcodename in the environment of $fqdn")
+ }
+ }
+ exec { "/bin/false # assert_lsbdistcodename": alias => assert_lsbdistcodename }
+ }
default: {
exec { "/bin/true # assert_lsbdistcodename": alias => assert_lsbdistcodename }
exec { "/bin/true # require_lsbdistcodename": alias => require_lsbdistcodename }