-purp += 'Welcome to ' + fqdn
-if (nodeinfo['ldap'].has_key?('purpose'))
- if nodeinfo['ldap']['purpose'].include?('buildd')
- purp += ", the Debian "
- if nodeinfo['ldap'].has_key?('architecture')
- purp += nodeinfo['ldap']['architecture'][0]
- end
- purp += " build daemon\n"
- elsif nodeinfo['ldap']['purpose'].include?('porterbox')
- purp += ", the Debian "
- if nodeinfo['ldap'].has_key?('architecture')
- purp += nodeinfo['ldap']['architecture'][0]
- end
- purp += " porterbox\n"
- purp += "\n"
- purp += "See 'dchroot -l' for a list of available chroots.\n"
- if nodeinfo['ldap'].has_key?('admin')
- purp += "Please contact #{nodeinfo['ldap']['admin'][0]} for install requests,\n"
- purp += "following the recommendations in <URL:http://dsa.debian.org/doc/install-req/>.\n"
+ninfo = scope.lookupvar('deprecated::nodeinfo')
+
+extra = 'Welcome to ' + @fqdn
+if (scope.lookupvar('deprecated::nodeinfo')['ldap'].has_key?('purpose'))
+ p = scope.lookupvar('deprecated::nodeinfo')['ldap']['purpose'].clone()
+ entries = ""
+
+ if classes.include?("roles::buildd")
+ entries += ", the Debian #{arch} build daemon"
+ p.delete('buildd')
+ end
+ if classes.include?("roles::porterbox")
+ entries += ", the Debian #{arch} porterbox"
+ p.delete('porterbox')
+ end
+
+ if p.size() > 0
+ entries += (entries == "") ? ", " : ". Also "
+ entries +="used for the following services:\n"
+ scope.lookupvar('deprecated::nodeinfo')['ldap']['purpose'].sort.each do |l|
+ l = markup(l)
+ entries += "\t#{l}\n"