diff options
-rw-r--r-- | chef-utils/lib/chef-utils/dsl/architecture.rb | 6 | ||||
-rw-r--r-- | chef-utils/spec/unit/dsl/architecture_spec.rb | 11 |
2 files changed, 14 insertions, 3 deletions
diff --git a/chef-utils/lib/chef-utils/dsl/architecture.rb b/chef-utils/lib/chef-utils/dsl/architecture.rb index e78e80f416..1d1cd643b7 100644 --- a/chef-utils/lib/chef-utils/dsl/architecture.rb +++ b/chef-utils/lib/chef-utils/dsl/architecture.rb @@ -110,17 +110,17 @@ module ChefUtils # @return [Boolean] # def arm?(node = __getnode) - %w{armhf aarch64 arm64 arch64}.include?(node["kernel"]["machine"]) + %w{armv6l armv7l armhf aarch64 arm64 arch64}.include?(node["kernel"]["machine"]) end - # Determine if the current architecture is 32-bit ARM. + # Determine if the current architecture is 32-bit ARM hard float. # # @since 15.5 # # @return [Boolean] # def armhf?(node = __getnode) - %w{armhf}.include?(node["kernel"]["machine"]) + %w{armv6l armv7l armhf}.include?(node["kernel"]["machine"]) end # Determine if the current architecture is s390x. diff --git a/chef-utils/spec/unit/dsl/architecture_spec.rb b/chef-utils/spec/unit/dsl/architecture_spec.rb index 18045935a1..0334b08835 100644 --- a/chef-utils/spec/unit/dsl/architecture_spec.rb +++ b/chef-utils/spec/unit/dsl/architecture_spec.rb @@ -131,6 +131,17 @@ RSpec.describe ChefUtils::DSL::Architecture do arch_reports_true_for(:armhf?, :_32_bit?, :arm?) end + context "on armv6l" do + let(:arch) { "armhf" } + + arch_reports_true_for(:armhf?, :_32_bit?, :arm?) + end + context "on armv7l" do + let(:arch) { "armhf" } + + arch_reports_true_for(:armhf?, :_32_bit?, :arm?) + end + context "on s390" do let(:arch) { "s390" } |