class resolvconf { $searchpath = $domain ? { 'int.foo.bar' => "int.foo.bar corp.foo.bar", 'corp.foo.bar' => "corp.foo.bar int.foo.bar", default => $domain, } $test = match('a') notice $test $nameservers = $network ? { $zurich => ['10.2.3.11', '10.1.2.18'], $bern => ['10.1.2.18', '10.2.3.11'], default => ['10.2.3.11', '10.1.2.18'], } file { "/etc/resolv.conf": path => "/etc/resolv.conf", mode => 0644, owner => root, group => root, content => template("resolv.conf.erb") } >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> # generic include call module Puppet::Parser::Functions newfunction(:match, :type => :rvalue) do |args| return args[0] end end