From 88055a1ef0d3d55fa0c11ca6286b904b71cd253e Mon Sep 17 00:00:00 2001
From: Adam Henry Lewenberg <adamhl@stanford.edu>
Date: Tue, 10 Apr 2018 14:53:32 -0700
Subject: [PATCH] motd.erb change

---
 NEWS                  |  2 ++
 templates/os/motd.erb | 15 ++++++++++-----
 2 files changed, 12 insertions(+), 5 deletions(-)

diff --git a/NEWS b/NEWS
index 3e465cb..79d0631 100644
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,7 @@
 unreleased (207x-xx-xx)
 
+    [os] motd.erb needs to handle case when there is no swap.
+
     [several] change 'crit "stuff"' to 'crit("stuff")' to make Puppet 5
     happy. [adamhl]
 
diff --git a/templates/os/motd.erb b/templates/os/motd.erb
index 77f8e49..fc9d031 100644
--- a/templates/os/motd.erb
+++ b/templates/os/motd.erb
@@ -33,12 +33,17 @@
     end
     memory = memory.gsub(/\s+/, '')
 
-    swap = @swapsize
-    if swap.match(/\./)
-      swap = swap.sub(/0+ /, ' ')
-      swap = swap.sub(/\. /, ' ')
+    # Not every server has a swap disk
+    if (@swapsize) then
+      swap = @swapsize
+      if swap.match(/\./)
+        swap = swap.sub(/0+ /, ' ')
+        swap = swap.sub(/\. /, ' ')
+      end
+      swap = swap.gsub(/\s+/, '')
+    else
+      swap = 'No'
     end
-    swap = swap.gsub(/\s+/, '')
 -%>
 <%= host %> - <%= os %>, <%= @architecture %>
 <%= @processorcount %>-core <%= processor %> (<%= product %>); <%= memory %> RAM, <%= swap %> swap
-- 
GitLab