-<% if @lsbmajdistrelease >= '7' -%>
+<%- if scope.call_function('versioncmp', [@lsbmajdistrelease, '8']) <= 0 -%>
#!/bin/bash
cat <<EOD
-<% end -%>
+<%- end -%>
This device is for authorized users only. All traffic on this device
is monitored and will be used as evidence for prosecutions. By using
this machine you agree to abide by the Debian Machines Usage Policies
-<URL:http://www.debian.org/devel/dmup>.
+<URL:https://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('deprecated::nodeinfo')['ldap'].has_key?('architecture')
+ arch = scope.lookupvar('deprecated::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"
+if scope.lookupvar('deprecated::nodeinfo').has_key?('nameinfo')
+ purp += " " + wrap(scope.lookupvar('deprecated::nodeinfo')['nameinfo']) + "\n"
end
-ninfo = scope.lookupvar('site::nodeinfo')
+ninfo = scope.lookupvar('deprecated::nodeinfo')
-purp += 'Welcome to ' + fqdn
-if (scope.lookupvar('site::nodeinfo')['ldap'].has_key?('purpose'))
- p = scope.lookupvar('site::nodeinfo')['ldap']['purpose'].clone()
- extra = ''
+extra = 'Welcome to ' + @fqdn
+if (scope.lookupvar('deprecated::nodeinfo')['ldap'].has_key?('purpose'))
+ p = scope.lookupvar('deprecated::nodeinfo')['ldap']['purpose'].clone()
+ 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"
+ if classes.include?("roles::buildd")
+ entries += ", the Debian #{arch} build daemon"
+ p.delete('buildd')
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 classes.include?("roles::porterbox")
+ entries += ", the Debian #{arch} porterbox"
+ p.delete('porterbox')
end
if p.size() > 0
- purp += ", used for the following services:\n"
- scope.lookupvar('site::nodeinfo')['ldap']['purpose'].sort.each do |l|
+ entries += (entries == "") ? ", " : ". Also "
+ entries +="used for the following services:\n"
+ scope.lookupvar('deprecated::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 += " " + wrap(extra) + "\n"
-purp += "\n"
-
-if (scope.lookupvar('site::nodeinfo')['ldap'].has_key?('physicalHost'))
+if (scope.lookupvar('deprecated::nodeinfo')['ldap'].has_key?('physicalHost'))
if ninfo['ldap']['physicalHost'][0] =~ /ganeti/
phys_host = 'cluster'
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']}.")
+elsif scope.lookupvar('deprecated::nodeinfo')['hoster']['name']
+ purp += wrap(" This server is hosted at #{ninfo['hoster']['longname']}.")
end
vms = []
-scope.lookupvar('site::allnodeinfo').keys.sort.each do |node|
- if scope.lookupvar('site::allnodeinfo')[node]['physicalHost'] and scope.lookupvar('site::allnodeinfo')[node]['physicalHost'].include?(fqdn)
+scope.lookupvar('deprecated::allnodeinfo').keys.sort.each do |node|
+ if scope.lookupvar('deprecated::allnodeinfo')[node]['physicalHost'] and scope.lookupvar('deprecated::allnodeinfo')[node]['physicalHost'].include?(@fqdn)
vms << node
end
end
purp += "\nThe following virtual machines run on this system:\n"
vms.each do |node|
purp += "\t- #{node}"
- if scope.lookupvar('site::allnodeinfo')[node]['purpose']
+ if scope.lookupvar('deprecated::allnodeinfo')[node]['purpose']
purp += ":\n"
- scope.lookupvar('site::allnodeinfo')[node]['purpose'].sort.each do |l|
+ scope.lookupvar('deprecated::allnodeinfo')[node]['purpose'].sort.each do |l|
l = markup(l)
purp += "\t " + l + "\n"
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
+ purp += ""
+ purp += "\tCurrently the master node is $(cat /var/lib/ganeti/ssconf_master_node).\n"
+ #nodes = scope.lookupvar('::cluster_nodes').sort
#nodes.each do |node|
# purp += "\t" + node + "\n"
#end
#nodes.reject{|node| node.eql?(fqdn)}.each do |node|
# purp += "\t" + node + "\n"
- # scope.lookupvar('site::allnodeinfo')[node]['ipHostNumber'].each do |ip|
+ # scope.lookupvar('deprecated::allnodeinfo')[node]['ipHostNumber'].each do |ip|
# purp += "\t\t" + ip + "\n"
# end
#end
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"
+if classes.include?("roles::porterbox")
+ 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:https://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 classes.include?("porterbox")
- purp += "\nPlease clean up any schroots after you are done using them. Please also\n" +
- "remove any build and source trees in your home directory once you no longer\n" +
- "need them. Disk space on porter machines often is scarce. If it becomes\n" +
- "necessary we will delete your entire home directory without warning, but this\n" +
- "really implies that you have been misusing resources. We would prefer this\n" +
- "not become necessary.\n" +
- " *** Clean up after yourself! ***\n"
+if classes.include?('bacula::not_a_client') then
+ 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"
+if scope.lookupvar('deprecated::nodeinfo').has_key?('footer')
+ purp += "\n" + wrap(scope.lookupvar('deprecated::nodeinfo')['footer'])
end
purp
-%>
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-<% if @lsbmajdistrelease >= '7' -%>
+<%- if scope.call_function('versioncmp', [@lsbmajdistrelease, '8']) <= 0 -%>
EOD
-<% end -%>
+<%- end -%>
<%
# vim:set et:
# vim:set sts=2 ts=2: