Class: Iface::PrimaryFile
Overview
Represents a primary config file (not loopback, range or clone file)
These are files named like “ifcfg-eth0”.
Instance Attribute Summary
Attributes inherited from ConfigFile
#device, #filename, #vars
Class Method Summary
collapse
Instance Method Summary
collapse
Methods inherited from ConfigFile
create, file_type_name, #initialize, parse_filename, #to_s
Class Method Details
.recognize?(device, range_num, clone_num) ⇒ Boolean
77
78
79
|
# File 'lib/iface/config_file.rb', line 77
def self.recognize?(device, range_num, clone_num)
device != 'lo' && range_num.nil? && clone_num.nil?
end
|
Instance Method Details
#disable_nm ⇒ Object
119
120
121
|
# File 'lib/iface/config_file.rb', line 119
def disable_nm
@vars.disable_nm
end
|
#include?(ip) ⇒ Boolean
135
136
137
|
# File 'lib/iface/config_file.rb', line 135
def include?(ip)
ip_address == ip
end
|
#ip_address ⇒ Object
81
82
83
|
# File 'lib/iface/config_file.rb', line 81
def ip_address
@vars['ipaddr']
end
|
#ip_address=(new_ip) ⇒ Object
85
86
87
88
89
|
# File 'lib/iface/config_file.rb', line 85
def ip_address=(new_ip)
@vars['ipaddr'] = new_ip
make_static
disable_nm
end
|
#ipv6_address ⇒ Object
91
92
93
|
# File 'lib/iface/config_file.rb', line 91
def ipv6_address
@vars['ipv6addr']
end
|
#ipv6_address=(new_ip) ⇒ Object
95
96
97
98
99
|
# File 'lib/iface/config_file.rb', line 95
def ipv6_address=(new_ip)
@vars['ipv6addr'] = new_ip
make_static
disable_nm
end
|
#ipv6_secondaries ⇒ Object
101
102
103
|
# File 'lib/iface/config_file.rb', line 101
def ipv6_secondaries
@vars['ipv6addr_secondaries']&.split(/\s+/)
end
|
#ipv6_secondaries=(new_ips) ⇒ Object
105
106
107
108
109
|
# File 'lib/iface/config_file.rb', line 105
def ipv6_secondaries=(new_ips)
@vars['ipv6addr_secondaries'] = new_ips
make_static
disable_nm
end
|
#make_static ⇒ Object
115
116
117
|
# File 'lib/iface/config_file.rb', line 115
def make_static
@vars.make_static unless static?
end
|
#nm_controlled? ⇒ Boolean
123
124
125
|
# File 'lib/iface/config_file.rb', line 123
def nm_controlled?
@vars['nm_controlled'] == 'yes'
end
|
#static? ⇒ Boolean
131
132
133
|
# File 'lib/iface/config_file.rb', line 131
def static?
@vars['bootproto'] == 'none'
end
|
#use_ipv6 ⇒ Object
127
128
129
|
# File 'lib/iface/config_file.rb', line 127
def use_ipv6
@vars.use_ipv6
end
|
#value_set_class ⇒ Object
111
112
113
|
# File 'lib/iface/config_file.rb', line 111
def value_set_class
PrimaryInterface
end
|