94 lines
2.1 KiB
Diff
94 lines
2.1 KiB
Diff
---
|
|
lib/facter/personality.rb | 21 ++++++++++++++++++
|
|
lib/facter/subfunction.rb | 61 ++++++++++++++++++++++++++++++++++++++++++++++
|
|
2 files changed, 82 insertions(+)
|
|
|
|
--- /dev/null
|
|
+++ b/lib/facter/personality.rb
|
|
@@ -0,0 +1,21 @@
|
|
+#
|
|
+# personality.rb
|
|
+#
|
|
+# This fact gives the personality of this node.
|
|
+#
|
|
+require 'facter/util/file_read'
|
|
+
|
|
+Facter.add('personality') do
|
|
+ confine :kernel => :linux
|
|
+
|
|
+ setcode do
|
|
+ if release = Facter::Util::FileRead.read('/etc/platform/platform.conf')
|
|
+ if match = release.match(/^nodetype\=(.*)/)
|
|
+ match[1]
|
|
+ end
|
|
+ end
|
|
+ end
|
|
+end
|
|
+
|
|
+# vim: set ts=2 sw=2 et :
|
|
+# encoding: utf-8
|
|
--- /dev/null
|
|
+++ b/lib/facter/subfunction.rb
|
|
@@ -0,0 +1,61 @@
|
|
+#
|
|
+# subfunction.rb
|
|
+#
|
|
+# This fact gives the subfunction of this node.
|
|
+#
|
|
+require 'facter/util/file_read'
|
|
+
|
|
+Facter.add('subfunction') do
|
|
+ confine :kernel => :linux
|
|
+
|
|
+ setcode do
|
|
+ if release = Facter::Util::FileRead.read('/etc/platform/platform.conf')
|
|
+ if match = release.match(/^subfunction\=(.*)/)
|
|
+ match[1]
|
|
+ end
|
|
+ end
|
|
+ end
|
|
+end
|
|
+
|
|
+Facter.add('is_compute_subfunction') do
|
|
+ confine :kernel => :linux
|
|
+
|
|
+ setcode do
|
|
+ if release = Facter::Util::FileRead.read('/etc/platform/platform.conf')
|
|
+ match = release.match(/^subfunction\=.*compute/) ? true : false
|
|
+ end
|
|
+ end
|
|
+end
|
|
+
|
|
+Facter.add('is_controller_subfunction') do
|
|
+ confine :kernel => :linux
|
|
+
|
|
+ setcode do
|
|
+ if release = Facter::Util::FileRead.read('/etc/platform/platform.conf')
|
|
+ match = release.match(/^subfunction\=.*controller/) ? true : false
|
|
+ end
|
|
+ end
|
|
+end
|
|
+
|
|
+Facter.add('is_storage_subfunction') do
|
|
+ confine :kernel => :linux
|
|
+
|
|
+ setcode do
|
|
+ if release = Facter::Util::FileRead.read('/etc/platform/platform.conf')
|
|
+ match = release.match(/^subfunction\=.*storage/) ? true : false
|
|
+ end
|
|
+ end
|
|
+end
|
|
+
|
|
+Facter.add('is_lowlatency_subfunction') do
|
|
+ confine :kernel => :linux
|
|
+
|
|
+ setcode do
|
|
+ if release = Facter::Util::FileRead.read('/etc/platform/platform.conf')
|
|
+ match = release.match(/^subfunction\=.*lowlatency/) ? true : false
|
|
+ end
|
|
+ end
|
|
+end
|
|
+
|
|
+# vim: set ts=2 sw=2 et :
|
|
+# encoding: utf-8
|