summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGavin Reynolds <gavin@chef.io>2019-02-07 14:59:11 +0100
committerGavin Reynolds <gavin@chef.io>2019-03-04 22:42:57 +0100
commita777a110abbd8e63b9568cd37eb6fe3df75a8977 (patch)
tree53ed8050eb26c95baa8ace88ab8c9fde1f2a08fb
parent88af7519a99993dd6afbd19e61cd804cd67151fa (diff)
downloadchef-a777a110abbd8e63b9568cd37eb6fe3df75a8977.tar.gz
Ensure that a new blank line `\n\n` is added when appending a new mount point for AIX.
Add existing mount to enable spec Signed-off-by: Gavin Reynolds <gavin@chef.io>
-rw-r--r--lib/chef/provider/mount/aix.rb2
-rw-r--r--spec/unit/provider/mount/aix_spec.rb10
2 files changed, 10 insertions, 2 deletions
diff --git a/lib/chef/provider/mount/aix.rb b/lib/chef/provider/mount/aix.rb
index 70aab35d8f..2d7fc1d9c3 100644
--- a/lib/chef/provider/mount/aix.rb
+++ b/lib/chef/provider/mount/aix.rb
@@ -164,7 +164,7 @@ class Chef
disable_fs
end
::File.open("/etc/filesystems", "a") do |fstab|
- fstab.puts("\n#{@new_resource.mount_point}:")
+ fstab.puts("\n\n#{@new_resource.mount_point}:")
if network_device?
device_details = device_fstab.split(":")
fstab.puts("\tdev\t\t= #{device_details[1]}")
diff --git a/spec/unit/provider/mount/aix_spec.rb b/spec/unit/provider/mount/aix_spec.rb
index e1cc140855..8af22368ea 100644
--- a/spec/unit/provider/mount/aix_spec.rb
+++ b/spec/unit/provider/mount/aix_spec.rb
@@ -202,12 +202,20 @@ describe Chef::Provider::Mount::Aix do
it "should enable mount if it is mounted and not enabled" do
@new_resource.options("nodev,rw")
stub_mounted_enabled(@provider, @mounted_output, "")
+ # Add existing mount to test enable action appends additional mount with seperating blank line
filesystems = StringIO.new
+ filesystems.puts <<~ETCFILESYSTEMS
+ /tmp/abc:
+ dev = /dev/sdz2
+ vfs = jfs2
+ mount = true
+ options = rw
+ ETCFILESYSTEMS
allow(::File).to receive(:open).with("/etc/filesystems", "a").and_yield(filesystems)
@provider.run_action(:enable)
- expect(filesystems.string).to match(%r{^/tmp/foo:\n\tdev\t\t= /dev/sdz1\n\tvfs\t\t= jfs2\n\tmount\t\t= false\n\toptions\t\t= nodev,rw\n$})
+ expect(filesystems.string).to match(%r{^\n\n/tmp/foo:\n\tdev\t\t= /dev/sdz1\n\tvfs\t\t= jfs2\n\tmount\t\t= false\n\toptions\t\t= nodev,rw\n$})
end
it "should not enable mount if it is mounted and already enabled and mount options are unchanged" do