rightscale-cookbooks / ephemeral_lvm

Configures available ephemeral devices on a cloud server
http://community.opscode.com/cookbooks/ephemeral_lvm
Other
13 stars 16 forks source link

NVMe devices detection on EC2 instances powered by Nitro hypervisor #72

Closed zvymazal closed 3 years ago

caryp commented 3 years ago

It seems there is one bug when there are not ephemeral devices found:

================================================================================ESC[0m
ESC[31mRecipe Compile Error in /var/chef/cache/cookbooks/renttrack/recipes/server_collapsed.rbESC[0m
================================================================================ESC[0m

ESC[0mNoMethodErrorESC[0m
-------------ESC[0m
undefined method `concat' for nil:NilClassESC[0m

ESC[0mCookbook Trace:ESC[0m
---------------ESC[0m
  /var/chef/cache/cookbooks/ephemeral_lvm/libraries/helper.rb:124:in `get_ephemeral_devices'
ESC[0m  /var/chef/cache/cookbooks/ephemeral_lvm/recipes/default.rb:34:in `from_file'
ESC[0m  /var/chef/cache/cookbooks/renttrack/recipes/server_collapsed.rb:26:in `from_file'ESC[0m

ESC[0mRelevant File Content:ESC[0m
----------------------ESC[0m
/var/chef/cache/cookbooks/ephemeral_lvm/libraries/helper.rb:
ESC[0m
ESC[0m117:            ephemeral_devices = gce_ephemeral_devices?(cloud, node)
ESC[0m118:          when 'ec2'
ESC[0m119:            ephemeral_devices = ec2_ephemeral_devices?(cloud, node)
ESC[0m120:          else
ESC[0m121:            Chef::Log.info 'No ephemeral disks found.'
ESC[0m122:          end
ESC[0m123:        end
ESC[0m124>>       ephemeral_devices.concat(node['ephemeral_lvm']['additonal_devices']).uniq
ESC[0m125:      end
ESC[0m126:
ESC[0m127:      # Fixes the device mapping on Xen hypervisors. When using Xen hypervisors, the devices are mapped from /dev/sdX to
ESC[0m128:      # /dev/xvdX. This method will identify if mapping is required (by checking the existence of unmapped device) and
ESC[0m129:      # map the devices accordingly.
ESC[0m130:      #
ESC[0m131:      # @param devices [Array<String>] list of devices to fix the mapping
ESC[0m132:      # @param node_block_devices [Array<String>] list of block devices currently attached to the server
ESC[0m133:      #
ESC[0m
ESC[0mSystem Info:ESC[0m
------------ESC[0m