## ## 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: foobar.debian.org::587 byname <%= mxmatches = [ @fqdn ] routes = [] extraroutes = [] if scope.function_has_role(['mailrelay']) mxmatches << 'mailout.debian.org' mxmatches << 'INCOMING-MX' extraroutes = [ ] extraroutes << "www-master.debian.org:\t\twolkenstein.debian.org" extraroutes << "tracker.debian.org:\t\tticharich.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") %>