Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package yast2-network for openSUSE:Factory checked in at 2022-10-03 13:44:03 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/yast2-network (Old) and /work/SRC/openSUSE:Factory/.yast2-network.new.2275 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "yast2-network" Mon Oct 3 13:44:03 2022 rev:487 rq:1006981 version:4.5.8 Changes: -------- --- /work/SRC/openSUSE:Factory/yast2-network/yast2-network.changes 2022-09-17 20:10:14.937141110 +0200 +++ /work/SRC/openSUSE:Factory/.yast2-network.new.2275/yast2-network.changes 2022-10-03 13:44:06.145262369 +0200 @@ -1,0 +2,7 @@ +Thu Sep 29 09:15:47 UTC 2022 - Knut Anderssen <kanders...@suse.com> + +- Fixed issue when writing the NetworkManager config without a + gateway (bsc#1203866) +- 4.5.8 + +------------------------------------------------------------------- Old: ---- yast2-network-4.5.7.tar.bz2 New: ---- yast2-network-4.5.8.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ yast2-network.spec ++++++ --- /var/tmp/diff_new_pack.qJnl0w/_old 2022-10-03 13:44:06.813263839 +0200 +++ /var/tmp/diff_new_pack.qJnl0w/_new 2022-10-03 13:44:06.817263848 +0200 @@ -17,7 +17,7 @@ Name: yast2-network -Version: 4.5.7 +Version: 4.5.8 Release: 0 Summary: YaST2 - Network Configuration License: GPL-2.0-only ++++++ yast2-network-4.5.7.tar.bz2 -> yast2-network-4.5.8.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-network-4.5.7/package/yast2-network.changes new/yast2-network-4.5.8/package/yast2-network.changes --- old/yast2-network-4.5.7/package/yast2-network.changes 2022-09-16 12:40:20.000000000 +0200 +++ new/yast2-network-4.5.8/package/yast2-network.changes 2022-09-29 16:39:27.000000000 +0200 @@ -1,4 +1,11 @@ ------------------------------------------------------------------- +Thu Sep 29 09:15:47 UTC 2022 - Knut Anderssen <kanders...@suse.com> + +- Fixed issue when writing the NetworkManager config without a + gateway (bsc#1203866) +- 4.5.8 + +------------------------------------------------------------------- Fri Sep 16 08:23:21 UTC 2022 - Knut Anderssen <kanders...@suse.com> - Activate s390 devices before importing and reading the network diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-network-4.5.7/package/yast2-network.spec new/yast2-network-4.5.8/package/yast2-network.spec --- old/yast2-network-4.5.7/package/yast2-network.spec 2022-09-16 12:40:20.000000000 +0200 +++ new/yast2-network-4.5.8/package/yast2-network.spec 2022-09-29 16:39:27.000000000 +0200 @@ -17,7 +17,7 @@ Name: yast2-network -Version: 4.5.7 +Version: 4.5.8 Release: 0 Summary: YaST2 - Network Configuration License: GPL-2.0-only diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-network-4.5.7/src/lib/y2network/network_manager/connection_config_writers/base.rb new/yast2-network-4.5.8/src/lib/y2network/network_manager/connection_config_writers/base.rb --- old/yast2-network-4.5.7/src/lib/y2network/network_manager/connection_config_writers/base.rb 2022-09-16 12:40:20.000000000 +0200 +++ new/yast2-network-4.5.8/src/lib/y2network/network_manager/connection_config_writers/base.rb 2022-09-29 16:39:27.000000000 +0200 @@ -64,7 +64,7 @@ # # @param routes [<Array<Y2Network::Route>] routes associated with the connection def configure_routes(routes) - routes.select(&:default?).each { |r| configure_gateway(r) } + routes.select { |r| r.default? && r.gateway }.each { |r| configure_gateway(r) } end # @param route [Y2Network::Route] route to be written diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-network-4.5.7/test/y2network/network_manager/config_writer_test.rb new/yast2-network-4.5.8/test/y2network/network_manager/config_writer_test.rb --- old/yast2-network-4.5.7/test/y2network/network_manager/config_writer_test.rb 2022-09-16 12:40:20.000000000 +0200 +++ new/yast2-network-4.5.8/test/y2network/network_manager/config_writer_test.rb 2022-09-29 16:39:27.000000000 +0200 @@ -25,6 +25,9 @@ require "y2network/interface" require "y2network/interfaces_collection" require "y2network/boot_protocol" +require "y2network/route" +require "y2network/routing" +require "y2network/routing_table" require "cfa/nm_connection" describe Y2Network::NetworkManager::ConfigWriter do @@ -45,6 +48,7 @@ old_config.copy.tap do |cfg| cfg.add_or_update_connection_config(eth0_conn) cfg.dns = dns + cfg.routing = routing end end @@ -57,6 +61,22 @@ end end + let(:routes) { [] } + + let(:route) do + Y2Network::Route.new( + to: :default, + interface: eth0, + gateway: IPAddr.new("192.168.122.1") + ) + end + + let(:routing) do + Y2Network::Routing.new( + tables: [Y2Network::RoutingTable.new(routes)] + ) + end + let(:nameserver1) { IPAddr.new("192.168.1.1") } let(:nameserver2) { IPAddr.new("10.0.0.1") } let(:nameserver3) { IPAddr.new("2000:e1dd:f002:0120:0000:0000:0000:0001") } @@ -73,8 +93,15 @@ let(:ip) { Y2Network::ConnectionConfig::IPConfig.new(IPAddr.new("192.168.122.2")) } let(:eth0) { Y2Network::Interface.new("eth0") } - let(:conn_config_writer) do - instance_double(Y2Network::NetworkManager::ConnectionConfigWriter, write: nil) + let(:conn_config_writer) { Y2Network::NetworkManager::ConnectionConfigWriter.new } + + let(:file) do + CFA::NmConnection.new(File.join(DATA_PATH, "some_wifi.nmconnection")) + end + + before do + allow(CFA::NmConnection).to receive(:for).and_return(file) + allow(file).to receive(:save) end before do @@ -82,7 +109,6 @@ .and_return(conn_config_writer) allow(writer).to receive(:write_drivers) allow(writer).to receive(:write_hostname) - allow(writer).to receive(:write_routing) end it "writes connections configuration" do @@ -90,6 +116,31 @@ writer.write(config) end + context "when there is some route to be configured" do + let(:routes) { [route] } + + context "and it contains a gateway" do + it "writes the connection gateway" do + writer.write(config) + expect(file.ipv4["gateway"]).to eq("192.168.122.1") + end + end + + context "and it does not contain a gateway" do + let(:route) do + Y2Network::Route.new( + to: :default, + interface: eth0 + ) + end + + it "does not write any gateway" do + writer.write(config) + expect(file.ipv4["gateway"]).to be_nil + end + end + end + context "writes DNS configuration" do context "when a connection has static configuration" do let(:eth0_conn) do @@ -101,15 +152,6 @@ end end - let(:file) do - CFA::NmConnection.new(File.join(DATA_PATH, "some_wifi.nmconnection")) - end - - before do - allow(CFA::NmConnection).to receive(:for).and_return(file) - allow(file).to receive(:save) - end - it "includes DNS configuration in the configuration file" do writer.write(config) expect(file.ipv4["dns"]).to eq("#{nameserver1};#{nameserver2}") @@ -117,6 +159,5 @@ end end end - end end