## ## THIS FILE IS UNDER PUPPET CONTROL. DON'T EDIT IT HERE. ## USE: git clone git+ssh://$USER@puppet.debian.org/srv/puppet.debian.org/git/dsa-puppet.git ## ## Format: ## domain: hostname[::port] options ## example: ## buildd.debian.org: raff.debian.org::587 byname <%= mxmatches = [ fqdn ] routes = [] extraroutes = [] if scope.lookupvar('site::nodeinfo')['mailrelay'] mxmatches << 'mailout.debian.org' extraroutes = [ "keyring.debian.org:\t\tkaufmann.debian.org" ] end mxregex = Regexp.new('^\d+\s+(.*)\.$') scope.lookupvar('site::allnodeinfo').keys.sort.each do |host| next unless scope.lookupvar('site::allnodeinfo')[host]['mXRecord'] scope.lookupvar('site::allnodeinfo')[host]['mXRecord'].each do |mx| mxmatch = mxregex.match(mx) if mxmatches.include?(mxmatch[1]) route = host + ":\t\t" + host if scope.lookupvar('site::localinfo').has_key?(host) and scope.lookupvar('site::localinfo')[host].has_key?('mail_port') and scope.lookupvar('site::localinfo')[host]['mail_port'].to_s != '' route += "::" + scope.lookupvar('site::localinfo')[host]['mail_port'].to_s end routes << route end end end routes << extraroutes routes.join("\n") %>