Module: ChefUtils::DSL::Architecture

Extended by:
Architecture
Includes:
Internal
Included in:
ChefUtils, Architecture
Defined in:
lib/chef-utils/dsl/architecture.rb

Instance Method Summary collapse

Instance Method Details

#_32_bit?(node = __getnode) ⇒ Boolean

Determine if the current architecture is 32-bit.

Returns:

  • (Boolean)

Since:

  • 15.5



43
44
45
# File 'lib/chef-utils/dsl/architecture.rb', line 43

def _32_bit?(node = __getnode)
  !_64_bit?(node)
end

#_64_bit?(node = __getnode) ⇒ Boolean

Determine if the current architecture is 64-bit.

Returns:

  • (Boolean)

Since:

  • 15.5



32
33
34
35
# File 'lib/chef-utils/dsl/architecture.rb', line 32

def _64_bit?(node = __getnode)
  %w{amd64 x86_64 ppc64 ppc64le s390x ia64 sparc64 aarch64 arch64 arm64 sun4v sun4u}
    .include?(node["kernel"]["machine"])
end

#arm?(node = __getnode) ⇒ Boolean

Determine if the current architecture is arm

Returns:

  • (Boolean)

Since:

  • 15.10



113
114
115
# File 'lib/chef-utils/dsl/architecture.rb', line 113

def arm?(node = __getnode)
  %w{armv6l armv7l armhf aarch64 arm64 arch64}.include?(node["kernel"]["machine"])
end

#armhf?(node = __getnode) ⇒ Boolean

Determine if the current architecture is 32-bit ARM hard float.

Returns:

  • (Boolean)

Since:

  • 15.5



123
124
125
# File 'lib/chef-utils/dsl/architecture.rb', line 123

def armhf?(node = __getnode)
  %w{armv6l armv7l armhf}.include?(node["kernel"]["machine"])
end

#i386?(node = __getnode) ⇒ Boolean

Determine if the current architecture is i386.

Returns:

  • (Boolean)

Since:

  • 15.5



53
54
55
# File 'lib/chef-utils/dsl/architecture.rb', line 53

def i386?(node = __getnode)
  _32_bit?(node) && intel?(node)
end

#intel?(node = __getnode) ⇒ Boolean

Determine if the current architecture is Intel.

Returns:

  • (Boolean)

Since:

  • 15.5



63
64
65
# File 'lib/chef-utils/dsl/architecture.rb', line 63

def intel?(node = __getnode)
  %w{i86pc i386 x86_64 amd64 i686}.include?(node["kernel"]["machine"])
end

#powerpc?(node = __getnode) ⇒ Boolean

Determine if the current architecture is PowerPC.

Returns:

  • (Boolean)

Since:

  • 15.5



103
104
105
# File 'lib/chef-utils/dsl/architecture.rb', line 103

def powerpc?(node = __getnode)
  %w{powerpc}.include?(node["kernel"]["machine"])
end

#ppc64?(node = __getnode) ⇒ Boolean

Determine if the current architecture is PowerPC 64bit Big Endian.

Returns:

  • (Boolean)

Since:

  • 15.5



83
84
85
# File 'lib/chef-utils/dsl/architecture.rb', line 83

def ppc64?(node = __getnode)
  %w{ppc64}.include?(node["kernel"]["machine"])
end

#ppc64le?(node = __getnode) ⇒ Boolean

Determine if the current architecture is PowerPC 64bit Little Endian.

Returns:

  • (Boolean)

Since:

  • 15.5



93
94
95
# File 'lib/chef-utils/dsl/architecture.rb', line 93

def ppc64le?(node = __getnode)
  %w{ppc64le}.include?(node["kernel"]["machine"])
end

#s390?(node = __getnode) ⇒ Boolean

Determine if the current architecture is s390.

Returns:

  • (Boolean)

Since:

  • 15.5



143
144
145
# File 'lib/chef-utils/dsl/architecture.rb', line 143

def s390?(node = __getnode)
  %w{s390}.include?(node["kernel"]["machine"])
end

#s390x?(node = __getnode) ⇒ Boolean

Determine if the current architecture is s390x.

Returns:

  • (Boolean)

Since:

  • 15.5



133
134
135
# File 'lib/chef-utils/dsl/architecture.rb', line 133

def s390x?(node = __getnode)
  %w{s390x}.include?(node["kernel"]["machine"])
end

#sparc?(node = __getnode) ⇒ Boolean

Determine if the current architecture is SPARC.

Returns:

  • (Boolean)

Since:

  • 15.5



73
74
75
# File 'lib/chef-utils/dsl/architecture.rb', line 73

def sparc?(node = __getnode)
  %w{sun4u sun4v}.include?(node["kernel"]["machine"])
end