]> git.donarmstrong.com Git - dsa-puppet.git/blobdiff - modules/motd/templates/motd.erb
spacing
[dsa-puppet.git] / modules / motd / templates / motd.erb
index 57b05e4c04522f5983fc44875bfd7889ea209d87..b371a901a86bdc1eb2d9e9e471f641a97a61a3a5 100644 (file)
@@ -1,3 +1,8 @@
+<% if @lsbmajdistrelease >= '7' -%>
+#!/bin/bash
+
+cat <<EOD
+<% 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
@@ -19,12 +24,12 @@ 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
+purp += ' Welcome to ' + fqdn
 if (scope.lookupvar('site::nodeinfo')['ldap'].has_key?('purpose'))
   p = scope.lookupvar('site::nodeinfo')['ldap']['purpose'].clone()
   extra = ''
@@ -44,10 +49,15 @@ if (scope.lookupvar('site::nodeinfo')['ldap'].has_key?('purpose'))
     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 <URL:http://dsa.debian.org/doc/install-req/>.\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
   end
 
@@ -69,11 +79,16 @@ 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]}, " +
+  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']}.")
+  purp += wrap(" This server is hosted at #{ninfo['hoster']['longname']}.")
 end
 
 
@@ -100,21 +115,39 @@ unless vms.empty?
 end
 
 
-if not scope.lookupvar('::cluster').to_s.empty?
-  purp += "\nThis server is a node in ganeti cluster: "
-  purp += scope.lookupvar('::cluster') + ".\n"
-  nodes = scope.lookupvar('::cluster_nodes').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
+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 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"
 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"
+end
 
 if scope.lookupvar('site::nodeinfo').has_key?('footer')
   purp += "\n" + wrap(scope.lookupvar('site::nodeinfo')['footer']) + "\n"
@@ -125,6 +158,9 @@ purp
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
+<% if @lsbmajdistrelease >= '7' -%>
+EOD
+<% end -%>
 <%
 # vim:set et:
 # vim:set sts=2 ts=2: