module Motoko::Utils::PuppetDB
Public Class Methods
class_filter(klass)
click to toggle source
# File lib/motoko/utils/puppet_db.rb, line 6 def self.class_filter(klass) operator = '=' if klass =~ %r{\A/.*/\z} klass = klass[1..-2] operator = '~' end "certname in resources[certname] { type = 'Class' and title #{operator} '#{klass.split('::').map(&:capitalize).join('::')}' }" end
fact_filter(fact)
click to toggle source
# File lib/motoko/utils/puppet_db.rb, line 17 def self.fact_filter(fact) name, operator, value = fact.split(/([!<>]?=|[<>])/, 2) if operator == '=' && value =~ %r{\A/.*/\z} value = value[1..-2] operator = '~' end begin value = case value when 'true' then true when 'false' then false else Integer(value) end rescue ArgumentError value = "'#{value}'" end "certname in inventory[certname] { facts.#{name} #{operator} #{value} }" end
identity_filter(identity)
click to toggle source
# File lib/motoko/utils/puppet_db.rb, line 38 def self.identity_filter(identity) operator = '=' if identity =~ %r{\A/.*/\z} identity = identity[1..-2] operator = '~' end "certname #{operator} '#{identity}'" end