Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package yast2-installation for 
openSUSE:Factory checked in at 2021-06-01 10:33:48
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/yast2-installation (Old)
 and      /work/SRC/openSUSE:Factory/.yast2-installation.new.1898 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "yast2-installation"

Tue Jun  1 10:33:48 2021 rev:471 rq:896366 version:4.4.10

Changes:
--------
--- /work/SRC/openSUSE:Factory/yast2-installation/yast2-installation.changes    
2021-05-20 19:25:03.053944820 +0200
+++ 
/work/SRC/openSUSE:Factory/.yast2-installation.new.1898/yast2-installation.changes
  2021-06-01 10:34:04.156466499 +0200
@@ -1,0 +2,22 @@
+Mon May 31 08:43:52 UTC 2021 - Knut Anderssen <kanders...@suse.com>
+
+- Modify IP forwarding network configuration using the defaults
+  defined in the control file when selecting the role (bsc#1186280)
+- 4.4.10
+
+-------------------------------------------------------------------
+Mon May 24 11:20:46 UTC 2021 - Ladislav Slez??k <lsle...@suse.cz>
+
+- The InstallationData class has been moved to yast2-packager
+  (related to the previous fix, e.g. bsc#1180888)
+- 4.4.9
+
+-------------------------------------------------------------------
+Thu May 20 14:29:15 UTC 2021 - Ladislav Slez??k <lsle...@suse.cz>
+
+- Logging all available product information into directory
+  /var/log/YaST2/installation_info. This should help for evaluating
+  the cause of e.g. bsc#1180888, bsc#1180908, bsc#1178688.
+- 4.4.8
+
+-------------------------------------------------------------------

Old:
----
  yast2-installation-4.4.7.tar.bz2

New:
----
  yast2-installation-4.4.10.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ yast2-installation.spec ++++++
--- /var/tmp/diff_new_pack.9Xjp51/_old  2021-06-01 10:34:04.760467527 +0200
+++ /var/tmp/diff_new_pack.9Xjp51/_new  2021-06-01 10:34:04.760467527 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           yast2-installation
-Version:        4.4.7
+Version:        4.4.10
 Release:        0
 Summary:        YaST2 - Installation Parts
 License:        GPL-2.0-only
@@ -37,10 +37,10 @@
 BuildRequires:  yast2-devtools >= 3.1.10
 # For firewall widgets
 BuildRequires:  yast2-firewall
-# Dropped Yast::LanItems
-BuildRequires:  yast2-network >= 4.4.7
-# Y2Packager::MediumType
-BuildRequires:  yast2-packager >= 4.2.27
+# Y2Network::ProposalSettings #modify_defaults and #apply_defaults (forwarding 
configurable)
+BuildRequires:  yast2-network >= 4.4.12
+# Y2Packager::InstallationData
+BuildRequires:  yast2-packager >= 4.4.2
 # for AbortException and handle direct abort
 BuildRequires:  yast2-ruby-bindings >= 4.0.6
 # For selinux classes
@@ -70,18 +70,18 @@
 Requires:       pciutils
 # tar-gzip some system files and untar-ungzip them after the installation 
(FATE #300421, #120103)
 Requires:       tar
-# Yast2::FsSnapshotStore::IOError
-Requires:       yast2 >= 4.3.53
+# Installation::InstallationInfo
+Requires:       yast2 >= 4.4.4
 # CIOIgnore
 Requires:       yast2-bootloader
 Requires:       yast2-country >= 3.3.1
 # Language::GetLanguageItems and other API
 # Language::Set (handles downloading the translation extensions)
 Requires:       yast2-country-data >= 2.16.11
-# Dropped Yast::LanItems
-Requires:       yast2-network >= 4.4.7
-# Y2Packager::MediumType
-Requires:       yast2-packager >= 4.2.22
+# Y2Network::ProposalSettings #modify_defaults and #apply_defaults (forwarding 
configurable)
+Requires:       yast2-network >= 4.4.12
+# Y2Packager::InstallationData
+Requires:       yast2-packager >= 4.4.2
 # Pkg::ProvidePackage
 Requires:       yast2-pkg-bindings >= 3.1.33
 # Proxy settings for 2nd stage (bnc#764951)

++++++ yast2-installation-4.4.7.tar.bz2 -> yast2-installation-4.4.10.tar.bz2 
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-installation-4.4.7/bin/yupdate 
new/yast2-installation-4.4.10/bin/yupdate
--- old/yast2-installation-4.4.7/bin/yupdate    2021-05-18 17:00:33.000000000 
+0200
+++ new/yast2-installation-4.4.10/bin/yupdate   2021-05-31 15:51:47.000000000 
+0200
@@ -35,7 +35,7 @@
   class Version
     MAJOR = 0
     MINOR = 1
-    PATCH = 2
+    PATCH = 3
 
     STRING = "#{MAJOR}.#{MINOR}.#{PATCH}".freeze
   end
@@ -191,7 +191,11 @@
       "/usr/share/icons"
     ].freeze
 
-    attr_reader :dir, :orig_dir
+    # @return [String] the original requested directory
+    attr_reader :orig_dir
+
+    # @return [String] expanded requested directory (i.e. symlink target)
+    attr_reader :dir
 
     # manage the OverlayFS for this directory
     # @param directory [String] the directory
@@ -204,7 +208,8 @@
 
     # create an OverlayFS overlay for this directory if it is not writable
     def create
-      return if File.writable?(dir)
+      # skip non-existing or already writable directories
+      return if !File.directory?(dir) || File.writable?(dir)
       msg "Adding overlay for #{orig_dir}..."
 
       FileUtils.mkdir_p(upperdir)
@@ -262,6 +267,7 @@
       OverlayFS.escape_path("workdir", dir)
     end
 
+    # path pointing to the original directory content
     def origdir
       OverlayFS.escape_path("original", dir)
     end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.4.7/package/yast2-installation.changes 
new/yast2-installation-4.4.10/package/yast2-installation.changes
--- old/yast2-installation-4.4.7/package/yast2-installation.changes     
2021-05-18 17:00:33.000000000 +0200
+++ new/yast2-installation-4.4.10/package/yast2-installation.changes    
2021-05-31 15:51:47.000000000 +0200
@@ -1,4 +1,26 @@
 -------------------------------------------------------------------
+Mon May 31 08:43:52 UTC 2021 - Knut Anderssen <kanders...@suse.com>
+
+- Modify IP forwarding network configuration using the defaults
+  defined in the control file when selecting the role (bsc#1186280)
+- 4.4.10
+
+-------------------------------------------------------------------
+Mon May 24 11:20:46 UTC 2021 - Ladislav Slez??k <lsle...@suse.cz>
+
+- The InstallationData class has been moved to yast2-packager
+  (related to the previous fix, e.g. bsc#1180888)
+- 4.4.9
+
+-------------------------------------------------------------------
+Thu May 20 14:29:15 UTC 2021 - Ladislav Slez??k <lsle...@suse.cz>
+
+- Logging all available product information into directory
+  /var/log/YaST2/installation_info. This should help for evaluating
+  the cause of e.g. bsc#1180888, bsc#1180908, bsc#1178688.
+- 4.4.8
+
+-------------------------------------------------------------------
 Tue May 18 12:39:25 UTC 2021 - Knut Anderssen <kanders...@suse.com>
 
 - Fallback to ncurses when a X display is not opened after 15
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.4.7/package/yast2-installation.spec 
new/yast2-installation-4.4.10/package/yast2-installation.spec
--- old/yast2-installation-4.4.7/package/yast2-installation.spec        
2021-05-18 17:00:33.000000000 +0200
+++ new/yast2-installation-4.4.10/package/yast2-installation.spec       
2021-05-31 15:51:47.000000000 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           yast2-installation
-Version:        4.4.7
+Version:        4.4.10
 Release:        0
 Summary:        YaST2 - Installation Parts
 License:        GPL-2.0-only
@@ -37,10 +37,10 @@
 BuildRequires:  yast2-devtools >= 3.1.10
 # For firewall widgets
 BuildRequires:  yast2-firewall
-# Dropped Yast::LanItems
-BuildRequires:  yast2-network >= 4.4.7
-# Y2Packager::MediumType
-BuildRequires:  yast2-packager >= 4.2.27
+# Y2Network::ProposalSettings #modify_defaults and #apply_defaults (forwarding 
configurable)
+BuildRequires:  yast2-network >= 4.4.12
+# Y2Packager::InstallationData
+BuildRequires:  yast2-packager >= 4.4.2
 # for AbortException and handle direct abort
 BuildRequires:  yast2-ruby-bindings >= 4.0.6
 # For selinux classes
@@ -70,18 +70,18 @@
 Requires:       pciutils
 # tar-gzip some system files and untar-ungzip them after the installation 
(FATE #300421, #120103)
 Requires:       tar
-# Yast2::FsSnapshotStore::IOError
-Requires:       yast2 >= 4.3.53
+# Installation::InstallationInfo
+Requires:       yast2 >= 4.4.4
 # CIOIgnore
 Requires:       yast2-bootloader
 Requires:       yast2-country >= 3.3.1
 # Language::GetLanguageItems and other API
 # Language::Set (handles downloading the translation extensions)
 Requires:       yast2-country-data >= 2.16.11
-# Dropped Yast::LanItems
-Requires:       yast2-network >= 4.4.7
-# Y2Packager::MediumType
-Requires:       yast2-packager >= 4.2.22
+# Y2Network::ProposalSettings #modify_defaults and #apply_defaults (forwarding 
configurable)
+Requires:       yast2-network >= 4.4.12
+# Y2Packager::InstallationData
+Requires:       yast2-packager >= 4.4.2
 # Pkg::ProvidePackage
 Requires:       yast2-pkg-bindings >= 3.1.33
 # Proxy settings for 2nd stage (bnc#764951)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.4.7/src/lib/installation/clients/inst_doit.rb 
new/yast2-installation-4.4.10/src/lib/installation/clients/inst_doit.rb
--- old/yast2-installation-4.4.7/src/lib/installation/clients/inst_doit.rb      
2021-05-18 17:00:33.000000000 +0200
+++ new/yast2-installation-4.4.10/src/lib/installation/clients/inst_doit.rb     
2021-05-31 15:51:47.000000000 +0200
@@ -19,6 +19,8 @@
 # current contact information at www.novell.com.
 # 
------------------------------------------------------------------------------
 
+require "installation/installation_info"
+
 module Yast
   # Asks user to really do the installation/update.
   class InstDoitClient < Client
@@ -64,6 +66,11 @@
           false,
           false
         )
+
+        # Log all information about the installation/update
+        ::Installation::InstallationInfo.instance.write(
+          Mode.update ? "Starting update" : "Starting installation"
+        )
       end
 
       @confirmed ? :next : :back
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.4.7/src/lib/installation/clients/installation.rb 
new/yast2-installation-4.4.10/src/lib/installation/clients/installation.rb
--- old/yast2-installation-4.4.7/src/lib/installation/clients/installation.rb   
2021-05-18 17:00:33.000000000 +0200
+++ new/yast2-installation-4.4.10/src/lib/installation/clients/installation.rb  
2021-05-31 15:51:47.000000000 +0200
@@ -30,6 +30,7 @@
 # $Id$
 
 require "ui/wizards/layout"
+require "y2packager/installation_data"
 
 module Yast
   class InstallationClient < Client
@@ -48,6 +49,9 @@
       Yast.import "ProductFeatures"
       Yast.import "ProductControl"
 
+      # register the installation data dump callback
+      Y2Packager::InstallationData.new.register_callback
+
       # log the inst-sys identification for easier debugging
       log_os_release
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.4.7/src/lib/installation/select_system_role.rb 
new/yast2-installation-4.4.10/src/lib/installation/select_system_role.rb
--- old/yast2-installation-4.4.7/src/lib/installation/select_system_role.rb     
2021-05-18 17:00:33.000000000 +0200
+++ new/yast2-installation-4.4.10/src/lib/installation/select_system_role.rb    
2021-05-31 15:51:47.000000000 +0200
@@ -22,6 +22,7 @@
 require "ui/text_helpers"
 require "installation/services"
 require "installation/system_role"
+require "y2network/proposal_settings"
 
 Yast.import "GetInstArgs"
 Yast.import "Packages"
@@ -227,7 +228,8 @@
 
       role = SystemRole.select(role_id)
       role.overlay_features
-      adapt_services(role)
+      role.adapt_services
+      role.adapt_network
 
       select_packages
     end
@@ -257,17 +259,6 @@
       Yast::Pkg.PkgSolve(false)
     end
 
-    # for given role sets in {::Installation::Services} list of services to 
enable
-    # according to its config. Do not use alone and use apply_role instead.
-    def adapt_services(role)
-      services = role["services"] || []
-
-      to_enable = services.map { |s| s["name"] }
-      log.info "enable for #{role.id} these services: #{to_enable.inspect}"
-
-      Installation::Services.enabled = to_enable
-    end
-
     # Return the list of defined roles
     #
     # @param [Boolean] refresh Refresh system roles cache
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.4.7/src/lib/installation/system_role.rb 
new/yast2-installation-4.4.10/src/lib/installation/system_role.rb
--- old/yast2-installation-4.4.7/src/lib/installation/system_role.rb    
2021-05-18 17:00:33.000000000 +0200
+++ new/yast2-installation-4.4.10/src/lib/installation/system_role.rb   
2021-05-31 15:51:47.000000000 +0200
@@ -1,5 +1,5 @@
 # encoding: utf-8
-
+#
 # 
------------------------------------------------------------------------------
 # Copyright (c) 2017 SUSE LLC
 #
@@ -22,6 +22,7 @@
 require "yast"
 require "installation/services"
 require "installation/system_role_handlers_runner"
+require "y2network/proposal_settings"
 
 Yast.import "ProductControl"
 Yast.import "ProductFeatures"
@@ -166,6 +167,7 @@
 
         role["additional_dialogs"] = raw_role["additional_dialogs"]
         role["services"] = raw_role["services"] || []
+        role["network"] = raw_role["network"] || {}
         role["no_default"] = raw_role["no_default"] || false
 
         role
@@ -185,9 +187,7 @@
     #
     # @return [Array] the list of services to be enable
     def adapt_services
-      return [] if !self["services"]
-
-      to_enable = self["services"].map { |s| s["name"] }
+      to_enable = (self["services"] || []).map { |s| s["name"] }
 
       log.info "enable for #{id} these services: #{to_enable.inspect}"
 
@@ -212,5 +212,13 @@
       NON_OVERLAY_ATTRIBUTES.each { |a| features.delete(a) }
       Yast::ProductFeatures.SetOverlay(features)
     end
+
+    def adapt_network
+      settings = Y2Network::ProposalSettings.instance
+      network = Yast::ProductFeatures.GetSection("network")
+
+      settings.modify_defaults(network.merge(self["network"] || {}))
+      settings.apply_defaults
+    end
   end
 end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-installation-4.4.7/test/system_role_test.rb 
new/yast2-installation-4.4.10/test/system_role_test.rb
--- old/yast2-installation-4.4.7/test/system_role_test.rb       2021-05-18 
17:00:33.000000000 +0200
+++ new/yast2-installation-4.4.10/test/system_role_test.rb      2021-05-31 
15:51:47.000000000 +0200
@@ -3,6 +3,7 @@
 require_relative "./test_helper"
 require "installation/services"
 require "installation/system_role"
+require "y2network/proposal_settings"
 
 describe Installation::SystemRole do
   let(:system_roles) do
@@ -17,7 +18,13 @@
         "id"       => "role_two",
         "services" => [{ "name" => "service_one" }, { "name" => "service_two" 
}],
         "order"    => "100"
+      },
+      {
+        "id"      => "role_three",
+        "network" => { "ipv4_forward" => true, "ipv6_forward" => true },
+        "order"   => "50"
       }
+
     ]
   end
 
@@ -30,26 +37,27 @@
     it "returns the roles from the control file" do
       raw_roles = described_class.raw_roles
 
-      expect(raw_roles.size).to eql 2
+      expect(raw_roles.size).to eql 3
       expect(raw_roles.first["id"]).to eql "role_one"
     end
   end
 
   describe ".ids" do
     it "returns a list with all the role ids declared in the control file" do
-      expect(described_class.ids).to match_array(["role_one", "role_two"])
+      expect(described_class.ids).to match_array(["role_one", "role_two", 
"role_three"])
     end
   end
 
   describe ".all" do
     it "returns an array of SystemRole objects for all the declared roles " do
-      expect(described_class.all.size).to eql(2)
+      expect(described_class.all.size).to eql(3)
       expect(described_class.all.last.class).to eql(described_class)
     end
 
     it "returns array sorted by order" do
-      expect(described_class.all.first.id).to eql("role_two")
-      expect(described_class.all[1].id).to eql("role_one")
+      expect(described_class.all.first.id).to eql("role_three")
+      expect(described_class.all[1].id).to eql("role_two")
+      expect(described_class.all[2].id).to eql("role_one")
     end
   end
 
@@ -127,6 +135,28 @@
     end
   end
 
+  describe "#adapt_network" do
+    let(:settings) { Y2Network::ProposalSettings.instance }
+    let(:role) { described_class.find("role_three") }
+    before do
+      allow(Yast::ProductFeatures).to receive(:GetSection)
+      allow(Yast::ProductFeatures).to receive(:GetSection).with("network")
+        .and_return("ipv6_forward" => false)
+    end
+
+    it "modifies the network proposal settings with defaults from the control 
file" do
+      expect(settings).to receive(:modify_defaults)
+        .with("ipv4_forward" => true, "ipv6_forward" => true)
+
+      role.adapt_network
+    end
+
+    it "applies the network proposal settings defaults" do
+      expect(settings).to receive(:apply_defaults)
+      role.adapt_network
+    end
+  end
+
   describe "#overlay_features" do
     it "overlays the product features with the ones defined in the control 
file for this role" do
       role = described_class.find("role_one")

Reply via email to