Class: Iface::PrimaryFile

Inherits:
ConfigFile show all
Defined in:
lib/iface/config_file.rb

Overview

Represents a primary config file (not loopback, range or clone file)

These are files named like “ifcfg-eth0”.

Instance Attribute Summary collapse

Attributes inherited from ConfigFile

#device, #filename, #vars

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from ConfigFile

create, file_type_name, parse_filename

Constructor Details

#initialize(filename, device, range_num, clone_num, vars) ⇒ PrimaryFile

Returns a new instance of PrimaryFile.



76
77
78
79
80
81
82
# File 'lib/iface/config_file.rb', line 76

def initialize(filename, device, range_num, clone_num, vars)
  super
  return unless %w[static none].include?(vars['bootproto']) # RHEL6 uses "none"
  @ip_address = vars['ipaddr']
  @ipv6_address = vars['ipv6addr']
  @ipv6_secondaries = vars['ipv6addr_secondaries']&.split(/\s+/)
end

Instance Attribute Details

#ip_addressObject (readonly)

Returns the value of attribute ip_address.



70
71
72
# File 'lib/iface/config_file.rb', line 70

def ip_address
  @ip_address
end

#ipv6_addressObject (readonly)

Returns the value of attribute ipv6_address.



70
71
72
# File 'lib/iface/config_file.rb', line 70

def ipv6_address
  @ipv6_address
end

#ipv6_secondariesObject (readonly)

Returns the value of attribute ipv6_secondaries.



70
71
72
# File 'lib/iface/config_file.rb', line 70

def ipv6_secondaries
  @ipv6_secondaries
end

Class Method Details

.recognize?(device, range_num, clone_num, _vars) ⇒ Boolean

Returns:

  • (Boolean)


72
73
74
# File 'lib/iface/config_file.rb', line 72

def self.recognize?(device, range_num, clone_num, _vars)
  device != 'lo' && range_num.nil? && clone_num.nil?
end

Instance Method Details

#include?(ip) ⇒ Boolean

Returns:

  • (Boolean)


88
89
90
# File 'lib/iface/config_file.rb', line 88

def include?(ip)
  @ip_address == ip
end

#static?Boolean

Returns:

  • (Boolean)


84
85
86
# File 'lib/iface/config_file.rb', line 84

def static?
  !@ip_address.nil?
end