summaryrefslogtreecommitdiffstats
path: root/lib/puppet/provider/confine/feature.rb
blob: b223b8b1130e766045054196d125e9541d4a00ed (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
require 'puppet/provider/confine'

class Puppet::Provider::Confine::Feature < Puppet::Provider::Confine
  def self.summarize(confines)
    confines.collect { |c| c.values }.flatten.uniq.find_all { |value| ! confines[0].pass?(value) }
  end

  # Is the named feature available?
  def pass?(value)
    Puppet.features.send(value.to_s + "?")
  end

  def message(value)
    "feature #{value} is missing"
  end
end