this machine you agree to abide by the Debian Machines Usage Policies
<URL:http://www.debian.org/devel/dmup>.
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
<%=
def wrap(s, width=78)
- s.gsub(/(.{1,#{width}})(\s+|\Z)/, "\\1\n")
+ #s.gsub(/(.{1,#{width}})(\s+|\Z)/, "\\1\n ")
+ s.split("\n").map{ |x|
+ if (x.length > width) then
+ #x.gsub!(/(.{1,#{width}}) +(?=\S)/, "\\1\n ")
+ x.gsub!(/(.{1,#{width}})( +|\Z)/, "\\1\n ")
+ end
+ x
+ }.join("\n")+"\n"
end
def markup(l)
return l
end
+if scope.lookupvar('site::nodeinfo')['ldap'].has_key?('architecture')
+ arch = scope.lookupvar('site::nodeinfo')['ldap']['architecture'][0]
+else
+ arch = 'unknown'
+end
+
purp = ''
if scope.lookupvar('site::nodeinfo').has_key?('nameinfo')
- purp += wrap(scope.lookupvar('site::nodeinfo')['nameinfo']) + "\n\n"
+ purp += " " + wrap(scope.lookupvar('site::nodeinfo')['nameinfo']) + "\n"
end
ninfo = scope.lookupvar('site::nodeinfo')
-purp += 'Welcome to ' + fqdn
+extra = 'Welcome to ' + fqdn
if (scope.lookupvar('site::nodeinfo')['ldap'].has_key?('purpose'))
p = scope.lookupvar('site::nodeinfo')['ldap']['purpose'].clone()
- extra = ''
+ entries = ""
if p.delete('buildd')
- purp += ", the Debian "
- if scope.lookupvar('site::nodeinfo')['ldap'].has_key?('architecture')
- purp += scope.lookupvar('site::nodeinfo')['ldap']['architecture'][0]
- end
- purp += " build daemon"
+ entries += ", the Debian #{arch} build daemon"
end
-
- if p.delete('porterbox')
- purp += ", the Debian "
- if scope.lookupvar('site::nodeinfo')['ldap'].has_key?('architecture')
- purp += scope.lookupvar('site::nodeinfo')['ldap']['architecture'][0]
- end
- purp += " porterbox"
- extra += "\n"
- if classes.include?("porterbox")
- extra += "For an introduction to the porterbox 'schroot' tool, see:\n"
- extra += " <URL:http://dsa.debian.org/doc/schroot/>.\n"
- else
- extra += "See 'dchroot -l' or 'schroot -l' for a list of available chroots.\n"
- if scope.lookupvar('site::nodeinfo')['ldap'].has_key?('admin')
- extra += "Please contact #{ninfo['ldap']['admin'][0]} for install requests,\n"
- extra += "following the recommendations in <URL:http://dsa.debian.org/doc/install-req/>.\n"
- end
- end
+ if p.delete('porterbox') or classes.include?("porterbox")
+ entries += ", the Debian #{arch} porterbox"
end
if p.size() > 0
- purp += ", used for the following services:\n"
+ entries += (entries == "") ? ", " : ". Also"
+ entries +="used for the following services:\n"
scope.lookupvar('site::nodeinfo')['ldap']['purpose'].sort.each do |l|
l = markup(l)
- purp += "\t" + l + "\n"
+ entries += "\t#{l}\n"
end
else
- purp += ".\n"
+ entries += ".\n"
end
-
- purp += extra
+ extra += entries
else
- purp += ".\n"
+ extra += "."
end
-
-purp += "\n"
+purp += " " + wrap(extra) + "\n"
if (scope.lookupvar('site::nodeinfo')['ldap'].has_key?('physicalHost'))
if ninfo['ldap']['physicalHost'][0] =~ /ganeti/
else
phys_host = 'physical host'
end
- purp += wrap("This virtual server runs on the #{phys_host} #{ninfo['ldap']['physicalHost'][0]}, " +
+ purp += wrap(" This virtual server runs on the #{phys_host} #{ninfo['ldap']['physicalHost'][0]}, " +
"which is hosted at #{ninfo['hoster']['longname']}."
)
elsif scope.lookupvar('site::nodeinfo')['hoster']['name']
- purp += wrap("This server is hosted at #{ninfo['hoster']['longname']}.")
+ purp += wrap(" This server is hosted at #{ninfo['hoster']['longname']}.")
end
end
-if scope.lookupvar('::cluster').to_s != 'undefined'
- purp += "\nThis server is a node in ganeti cluster: "
+if scope.lookupvar('::cluster')
+ purp += "\n This server is a node in ganeti cluster: "
purp += scope.lookupvar('::cluster').to_s + ":\n"
- purp += "\t" + scope.lookupvar('::cluster_nodes').to_s.split.sort.map{ |x| x.split('.')[0] }.join(", ") + ".\n"
+ purp += "\t" + scope.lookupvar('::cluster_nodes').split.sort.map{ |x| x.split('.')[0] }.join(", ") + ".\n"
if @lsbmajdistrelease >= '7'
purp += ""
purp += "\tCurrently the master node is $(cat /var/lib/ganeti/ssconf_master_node).\n"
end
- #nodes = scope.lookupvar('::cluster_nodes').to_s.split.sort
+ #nodes = scope.lookupvar('::cluster_nodes').sort
#nodes.each do |node|
# purp += "\t" + node + "\n"
#end
if classes.include?("porterbox")
- purp += "\n Disk space on porter boxes is often limited. Please respect your fellow\n" +
- " porters by cleaning up after yourself by deleting schroots and source/build\n" +
- " trees in your $HOME, as soon as feasible. DSA reserves the right to recover\n" +
- " disk space as necessary.\n"
+ purp += "\n " + wrap("Disk space on porter boxes is often limited. Please respect your fellow porters by cleaning up after yourself and deleting schroots and source/build trees in your ~ as soon as feasible. DSA reserves the right to recover disk space as necessary. See <URL:http://dsa.debian.org/doc/schroot/> for a brief tutorial on using schroot. There may be chroots for architectures other than #{arch} available, please list available chroots to check.")
end
if ninfo['not-bacula-client'] then
- purp += "\n Note that this host is _NOT_ being backed up. If you care about your\n" +
- " data, run your own backups.\n"
+ purp += "\n " + wrap("Note that this host is _NOT_ being backed up. If you care about your data, run your own backups.")
end
if scope.lookupvar('site::nodeinfo').has_key?('footer')
- purp += "\n" + wrap(scope.lookupvar('site::nodeinfo')['footer']) + "\n"
+ purp += "\n" + wrap(scope.lookupvar('site::nodeinfo')['footer'])
end
purp
-%>
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
<% if @lsbmajdistrelease >= '7' -%>
EOD