Merge branch 'master' of git+ssh://puppet.debian.org/srv/puppet.debian.org/git/dsa...
[mirror/dsa-puppet.git] / modules / motd / templates / motd.erb
index ba8323a..777ce8f 100644 (file)
@@ -1,8 +1,8 @@
 
 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 device is for authorized users only.  All traffic on this device
 is monitored and will be used as evidence for prosecutions.  By using
-this this maching you agree to abide to the Debian Machines Usage Policies
-(http://www.debian.org/devel/dmup)
+this machine you agree to abide by the Debian Machines Usage Policies
+<URL:http://www.debian.org/devel/dmup>.
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
@@ -11,6 +11,16 @@ def wrap(s, width=78)
       s.gsub(/(.{1,#{width}})(\s+|\Z)/, "\\1\n")
 end
 
       s.gsub(/(.{1,#{width}})(\s+|\Z)/, "\\1\n")
 end
 
+def markup(l)
+  if l =~ /\[\[(\*|-)?(.*?)\]\]/
+    l = $2
+  end
+  if l =~ /\[\[(.*?)\|(.*?)\]\]/
+    l = $2
+  end
+  return l
+end
+
 purp = ''
 if nodeinfo.has_key?('nameinfo')
   purp += wrap(nodeinfo['nameinfo']) + "\n\n"
 purp = ''
 if nodeinfo.has_key?('nameinfo')
   purp += wrap(nodeinfo['nameinfo']) + "\n\n"
@@ -31,7 +41,7 @@ if (nodeinfo['ldap'].has_key?('purpose'))
     end
     purp += " porterbox\n"
     purp += "\n"
     end
     purp += " porterbox\n"
     purp += "\n"
-    purp += "See 'dchroot -l' for a list of available chroots.\n"
+    purp += "See 'dchroot -l' or 'schroot -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"
     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"
@@ -39,12 +49,7 @@ if (nodeinfo['ldap'].has_key?('purpose'))
   else
     purp += ", used for the following services:\n"
     nodeinfo['ldap']['purpose'].sort.each do |l|
   else
     purp += ", used for the following services:\n"
     nodeinfo['ldap']['purpose'].sort.each do |l|
-      if l =~ /\[\[(\*|-)?(.*?)\]\]/
-        l = $2
-      end
-      if l =~ /\[\[(.*?)\|(.*?)\]\]/
-        l = $2
-      end
+      l = markup(l)
       purp += "\t" + l + "\n"
     end
   end
       purp += "\t" + l + "\n"
     end
   end
@@ -56,6 +61,30 @@ if (nodeinfo['ldap'].has_key?('physicalHost'))
   purp += "\nThis virtual server runs on the physical host #{nodeinfo['ldap']['physicalHost'][0]}.\n"
 end
 
   purp += "\nThis virtual server runs on the physical host #{nodeinfo['ldap']['physicalHost'][0]}.\n"
 end
 
+
+vms = []
+allnodeinfo.keys.sort.each do |node|
+  if allnodeinfo[node]['physicalHost'] and 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 allnodeinfo[node]['purpose']
+      purp += ":\n"
+      allnodeinfo[node]['purpose'].sort.each do |l|
+        l = markup(l)
+        purp += "\t    " + l + "\n"
+      end
+    else
+      purp += "\n"
+    end
+  end
+end
+
+
 if nodeinfo.has_key?('footer')
   purp += "\n" + wrap(nodeinfo['footer']) + "\n"
 end
 if nodeinfo.has_key?('footer')
   purp += "\n" + wrap(nodeinfo['footer']) + "\n"
 end