Class: Y2Network::Wicked::ConfigReader
- Inherits:
-
ConfigReader
- Object
- ConfigReader
- Y2Network::Wicked::ConfigReader
- Includes:
- Yast::Logger
- Defined in:
- src/lib/y2network/wicked/config_reader.rb
Overview
This class reads the current configuration from /etc/sysconfig
files
Direct Known Subclasses
Constant Summary collapse
- SECTIONS =
[ :interfaces, :connections, :drivers, :routing, :dns, :hostname ].freeze
Instance Method Summary collapse
-
#read ⇒ IssuesResult
Network configuration.
-
#read_connections(config, issues_list) ⇒ Y2Network::Config
protected
Reads the connections.
-
#read_dns(config, _issues_list) ⇒ Y2Network::Config
protected
Reads the DNS information.
-
#read_drivers(config, _issues_list) ⇒ Y2Network::Config
protected
Reads the drivers.
-
#read_hostname(config, _issues_list) ⇒ Y2Network::Config
protected
Returns the Hostname configuration.
-
#read_interfaces(config, _issues_list) ⇒ Y2Network::Config
protected
Reads the network interfaces.
-
#read_routing(config, _issues_list) ⇒ Y2Network::Config
protected
Reads the routing information.
Methods inherited from ConfigReader
Constructor Details
This class inherits a constructor from Y2Network::ConfigReader
Instance Method Details
#read ⇒ IssuesResult
Returns Network configuration.
47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 |
# File 'src/lib/y2network/wicked/config_reader.rb', line 47 def read # NOTE: This code might be moved outside of the Sysconfig namespace, as it is generic. # NOTE: /etc/hosts cache - nothing to do with /etc/hostname Yast::Host.Read initial_config = Config.new(source: :wicked) issues_list = Y2Issues::List.new network_config = SECTIONS.reduce(initial_config) do |current_config, section| send("read_#{section}", current_config, issues_list) end log.info "Sysconfig reader result: #{network_config.inspect}" IssuesResult.new(network_config, issues_list) end |
#read_connections(config, issues_list) ⇒ Y2Network::Config (protected)
Reads the connections
82 83 84 85 86 87 88 89 90 91 92 |
# File 'src/lib/y2network/wicked/config_reader.rb', line 82 def read_connections(config, issues_list) connection_configs_reader = ConnectionConfigsReader.new(issues_list) connections = connection_configs_reader.connections(config.interfaces) missing_interfaces = find_missing_interfaces( connections, config.interfaces ) config.update( interfaces: config.interfaces + missing_interfaces, connections: connections ) end |
#read_dns(config, _issues_list) ⇒ Y2Network::Config (protected)
Reads the DNS information
123 124 125 |
# File 'src/lib/y2network/wicked/config_reader.rb', line 123 def read_dns(config, _issues_list) config.update(dns: Y2Network::Wicked::DNSReader.new.config) end |
#read_drivers(config, _issues_list) ⇒ Y2Network::Config (protected)
Reads the drivers
99 100 101 |
# File 'src/lib/y2network/wicked/config_reader.rb', line 99 def read_drivers(config, _issues_list) config.update(drivers: interfaces_reader.drivers) end |
#read_hostname(config, _issues_list) ⇒ Y2Network::Config (protected)
Returns the Hostname configuration
132 133 134 |
# File 'src/lib/y2network/wicked/config_reader.rb', line 132 def read_hostname(config, _issues_list) config.update(hostname: Y2Network::Wicked::HostnameReader.new.config) end |
#read_interfaces(config, _issues_list) ⇒ Y2Network::Config (protected)
Reads the network interfaces
70 71 72 73 74 75 |
# File 'src/lib/y2network/wicked/config_reader.rb', line 70 def read_interfaces(config, _issues_list) config.update( interfaces: interfaces_reader.interfaces, s390_devices: interfaces_reader.s390_devices ) end |
#read_routing(config, _issues_list) ⇒ Y2Network::Config (protected)
Reads the routing information
108 109 110 111 112 113 114 115 116 |
# File 'src/lib/y2network/wicked/config_reader.rb', line 108 def read_routing(config, _issues_list) routing_tables = find_routing_tables(config.interfaces) routing = Routing.new( tables: routing_tables, forward_ipv4: sysctl_config_file.forward_ipv4, forward_ipv6: sysctl_config_file.forward_ipv6 ) config.update(routing: routing) end |