<% if @lsbmajdistrelease >= '7' -%> #!/bin/bash cat < 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 . %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% <%= def wrap(s, width=78) s.gsub(/(.{1,#{width}})(\s+|\Z)/, "\\1\n ") end def markup(l) l = l.gsub(/\[\[(.*?)\|(.*?)\]\]/, '\2') l = l.gsub(/\[\[(\*|-)?(.*?)\]\]/, '\2') 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" end ninfo = scope.lookupvar('site::nodeinfo') purp += ' Welcome to ' + fqdn if (scope.lookupvar('site::nodeinfo')['ldap'].has_key?('purpose')) p = scope.lookupvar('site::nodeinfo')['ldap']['purpose'].clone() extra = '' if p.delete('buildd') extra += ", the Debian #{arch} build daemon." end if p.delete('porterbox') or classes.include?("porterbox") extra += ", the Debian #{arch} porterbox. See\n"+ extra += " for a brief schroot tutorial." end if p.size() > 0 extra += (extra == "") ? ", " : " Also" extra +="used for the following services:\n" scope.lookupvar('site::nodeinfo')['ldap']['purpose'].sort.each do |l| l = markup(l) extra += "\t#{l}\n" end else extra += ".\n" end purp += extra else purp += ".\n" end purp += "\n" if (scope.lookupvar('site::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]}, " + "which is hosted at #{ninfo['hoster']['longname']}." ) elsif scope.lookupvar('site::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) vms << node end end unless vms.empty? purp += "\nThe following virtual machines run on this system:\n" vms.each do |node| purp += "\t- #{node}" if scope.lookupvar('site::allnodeinfo')[node]['purpose'] purp += ":\n" scope.lookupvar('site::allnodeinfo')[node]['purpose'].sort.each do |l| l = markup(l) purp += "\t " + l + "\n" end else purp += "\n" end end end if scope.lookupvar('::cluster').to_s != 'undefined' 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" 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.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| # purp += "\t\t" + ip + "\n" # end #end end if classes.include?("porterbox") purp += "\n" + wrap("Disk space on porter boxes is often limited. Please respect your fellow porters by cleaning up after yourself by deleting schroots and source/build trees in your $HOME, as soon as feasible. DSA reserves the right to recover disk space as necessary.") + "\n" end if ninfo['not-bacula-client'] then purp += "\n" + wrap("Note that this host is _NOT_ being backed up. If you care about your data, run your own backups.") + "\n" end if scope.lookupvar('site::nodeinfo').has_key?('footer') purp += "\n" + wrap(scope.lookupvar('site::nodeinfo')['footer']) + "\n" end purp -%> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% <% if @lsbmajdistrelease >= '7' -%> EOD <% end -%> <% # vim:set et: # vim:set sts=2 ts=2: # vim:set shiftwidth=2: -%>