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 purp = '' if scope.lookupvar('site::nodeinfo').has_key?('nameinfo') purp += wrap(scope.lookupvar('site::nodeinfo')['nameinfo']) + "\n\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') purp += ", the Debian " if scope.lookupvar('site::nodeinfo')['ldap'].has_key?('architecture') purp += scope.lookupvar('site::nodeinfo')['ldap']['architecture'][0] end purp += " 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" 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 .\n" end end if p.size() > 0 purp += ", used for the following services:\n" scope.lookupvar('site::nodeinfo')['ldap']['purpose'].sort.each do |l| l = markup(l) purp += "\t" + l + "\n" end else purp += ".\n" end purp += extra else purp += ".\n" end purp += "\n" if (scope.lookupvar('site::nodeinfo')['ldap'].has_key?('physicalHost')) purp += wrap("This virtual server runs on the physical 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') purp += "\nThis server is a node in ganeti cluster: " purp += scope.lookupvar('::cluster') + ".\n" Puppet::Parser::Functions.function('hiera_array') scope.function_hiera_array('nodes').each do |node| purp += "\t" + node + "\n" end end if scope.lookupvar('site::nodeinfo').has_key?('footer') purp += "\n" + wrap(scope.lookupvar('site::nodeinfo')['footer']) + "\n" end purp -%> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% <% # vim:set et: # vim:set sts=2 ts=2: # vim:set shiftwidth=2: -%>