Hello community,

here is the log from the commit of package yast2-installation for 
openSUSE:Factory checked in at 2019-09-23 13:16:56
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/yast2-installation (Old)
 and      /work/SRC/openSUSE:Factory/.yast2-installation.new.7948 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "yast2-installation"

Mon Sep 23 13:16:56 2019 rev:432 rq:732211 version:4.2.14

Changes:
--------
--- /work/SRC/openSUSE:Factory/yast2-installation/yast2-installation.changes    
2019-09-11 10:16:08.607542404 +0200
+++ 
/work/SRC/openSUSE:Factory/.yast2-installation.new.7948/yast2-installation.changes
  2019-09-23 13:16:57.577109883 +0200
@@ -1,0 +2,12 @@
+Fri Sep 20 13:39:18 UTC 2019 - Ladislav Slezák <[email protected]>
+
+- Support for the online installation medium (jsc#SLE-7214)
+- 4.2.14
+
+-------------------------------------------------------------------
+Wed Sep 11 13:17:21 UTC 2019 - Steffen Winterfeldt <[email protected]>
+
+- do NOT remove /mnt/run, it's a mounted directory (bsc#1149011)
+- 4.2.13
+
+-------------------------------------------------------------------

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

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

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

Other differences:
------------------
++++++ yast2-installation.spec ++++++
--- /var/tmp/diff_new_pack.RikRiQ/_old  2019-09-23 13:16:58.045109799 +0200
+++ /var/tmp/diff_new_pack.RikRiQ/_new  2019-09-23 13:16:58.049109798 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           yast2-installation
-Version:        4.2.12
+Version:        4.2.14
 Release:        0
 Summary:        YaST2 - Installation Parts
 License:        GPL-2.0-only
@@ -36,10 +36,10 @@
 BuildRequires:  yast2-xml
 BuildRequires:  rubygem(%{rb_default_ruby_abi}:rspec)
 BuildRequires:  rubygem(%{rb_default_ruby_abi}:yast-rake)
-# Yast::Execute.stdout
-BuildRequires:  yast2 >= 4.1.42
-# Y2Packager::KnownRepositories
-BuildRequires:  yast2-packager >= 4.1.27
+# Y2Packager::ProductControlProduct
+BuildRequires:  yast2 >= 4.2.22
+# Y2Packager::MediumType
+BuildRequires:  yast2-packager >= 4.2.27
 # Y2Storage::Inhibitors including systemd masking
 BuildRequires:  yast2-storage-ng >= 4.0.194
 ## y2remote based version
@@ -67,8 +67,8 @@
 Requires:       yast2-country-data >= 2.16.11
 # Pkg::ProvidePackage
 Requires:       yast2-pkg-bindings >= 3.1.33
-# Y2Packager::KnownRepositories
-Requires:       yast2-packager >= 4.1.27
+# Y2Packager::MediumType
+Requires:       yast2-packager >= 4.2.22
 # use in startup scripts
 Requires:       initviocons
 # Proxy settings for 2nd stage (bnc#764951)
@@ -76,8 +76,8 @@
 # Systemd default target and services. This version supports
 # writing settings in the first installation stage.
 Requires:       yast2-services-manager >= 3.2.1
-# Y2Packager::Product.forced_base_product
-Requires:       yast2 >= 4.2.17
+# Y2Packager::ProductControlProduct
+Requires:       yast2 >= 4.2.22
 Requires:       yast2-network >= 4.0.13
 # for AbortException and handle direct abort
 Requires:       yast2-ruby-bindings >= 4.0.6

++++++ yast2-installation-4.2.12.tar.bz2 -> yast2-installation-4.2.14.tar.bz2 
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-installation-4.2.12/doc/SELF_UPDATE.md 
new/yast2-installation-4.2.14/doc/SELF_UPDATE.md
--- old/yast2-installation-4.2.12/doc/SELF_UPDATE.md    2019-08-28 
13:44:54.000000000 +0200
+++ new/yast2-installation-4.2.14/doc/SELF_UPDATE.md    2019-09-20 
17:04:45.000000000 +0200
@@ -5,6 +5,16 @@
 installation even after the media has been released. Check
 [FATE#319716](https://fate.suse.com/319716) for a more in-depth rationale.
 
+### :information_source: Note
+
+The self update feature is removed from the updated SLE Service Pack media
+(the updated media released after the initial SP release), these media already
+contain the updated installer and the included updates could conflict with
+the self updates.
+
+If you need to patch the installer on these updated media you have to use
+a driver update disk (DUD).
+
 ## Disabling Updates
 
 Starting in SUSE Linux Enterprise 12 SP3, self-update is enabled by default.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.2.12/package/yast2-installation.changes 
new/yast2-installation-4.2.14/package/yast2-installation.changes
--- old/yast2-installation-4.2.12/package/yast2-installation.changes    
2019-08-28 13:44:54.000000000 +0200
+++ new/yast2-installation-4.2.14/package/yast2-installation.changes    
2019-09-20 17:04:45.000000000 +0200
@@ -1,4 +1,16 @@
 -------------------------------------------------------------------
+Fri Sep 20 13:39:18 UTC 2019 - Ladislav Slezák <[email protected]>
+
+- Support for the online installation medium (jsc#SLE-7214)
+- 4.2.14
+
+-------------------------------------------------------------------
+Wed Sep 11 13:17:21 UTC 2019 - Steffen Winterfeldt <[email protected]>
+
+- do NOT remove /mnt/run, it's a mounted directory (bsc#1149011)
+- 4.2.13
+
+-------------------------------------------------------------------
 Wed Aug 28 11:08:18 CEST 2019 - [email protected]
 
 - Set X-SuSE-YaST-AutoInstResource in desktop file (bsc#144894).
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.2.12/package/yast2-installation.spec 
new/yast2-installation-4.2.14/package/yast2-installation.spec
--- old/yast2-installation-4.2.12/package/yast2-installation.spec       
2019-08-28 13:44:54.000000000 +0200
+++ new/yast2-installation-4.2.14/package/yast2-installation.spec       
2019-09-20 17:04:45.000000000 +0200
@@ -16,7 +16,7 @@
 #
 
 Name:           yast2-installation
-Version:        4.2.12
+Version:        4.2.14
 Release:        0
 Group:          System/YaST
 License:        GPL-2.0-only
@@ -35,10 +35,10 @@
 BuildRequires:  yast2-xml
 BuildRequires:  rubygem(%{rb_default_ruby_abi}:rspec)
 BuildRequires:  rubygem(%{rb_default_ruby_abi}:yast-rake)
-# Yast::Execute.stdout
-BuildRequires:  yast2 >= 4.1.42
-# Y2Packager::KnownRepositories
-BuildRequires:  yast2-packager >= 4.1.27
+# Y2Packager::ProductControlProduct
+BuildRequires:  yast2 >= 4.2.22
+# Y2Packager::MediumType
+BuildRequires:  yast2-packager >= 4.2.27
 # Y2Storage::Inhibitors including systemd masking
 BuildRequires:  yast2-storage-ng >= 4.0.194
 ## y2remote based version
@@ -66,8 +66,8 @@
 Requires:       yast2-country-data >= 2.16.11
 # Pkg::ProvidePackage
 Requires:       yast2-pkg-bindings >= 3.1.33
-# Y2Packager::KnownRepositories
-Requires:       yast2-packager >= 4.1.27
+# Y2Packager::MediumType
+Requires:       yast2-packager >= 4.2.22
 # use in startup scripts
 Requires:       initviocons
 # Proxy settings for 2nd stage (bnc#764951)
@@ -75,8 +75,8 @@
 # Systemd default target and services. This version supports
 # writing settings in the first installation stage.
 Requires:       yast2-services-manager >= 3.2.1
-# Y2Packager::Product.forced_base_product
-Requires:       yast2 >= 4.2.17
+# Y2Packager::ProductControlProduct
+Requires:       yast2 >= 4.2.22
 Requires:       yast2-network >= 4.0.13
 # for AbortException and handle direct abort
 Requires:       yast2-ruby-bindings >= 4.0.6
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.2.12/src/lib/installation/clients/inst_complex_welcome.rb
 
new/yast2-installation-4.2.14/src/lib/installation/clients/inst_complex_welcome.rb
--- 
old/yast2-installation-4.2.12/src/lib/installation/clients/inst_complex_welcome.rb
  2019-08-28 13:44:54.000000000 +0200
+++ 
new/yast2-installation-4.2.14/src/lib/installation/clients/inst_complex_welcome.rb
  2019-09-20 17:04:45.000000000 +0200
@@ -19,11 +19,15 @@
 # current contact information at www.novell.com.
 # 
------------------------------------------------------------------------------
 
-require "yaml"
 require "fileutils"
+require "pp"
+require "yaml"
 require "yast"
+
 require "installation/dialogs/complex_welcome"
+require "y2packager/medium_type"
 require "y2packager/product"
+require "y2packager/product_control_product"
 
 Yast.import "Console"
 Yast.import "FileUtils"
@@ -73,6 +77,8 @@
         next unless result
 
         return result if !available_products? || result != :next
+        # in the online installation the workflow is merged after registering 
the system
+        return result if Y2Packager::MediumType.online?
         return merge_and_run_workflow
       end
     end
@@ -149,8 +155,9 @@
     # list because the dialog will not show the license (we do not know which 
product we are
     # upgrading yet) nor the product selector (as you cannot change the 
product during upgrade).
     #
-    # @return [Array<Y2Packager::Product>] List of available base products; if 
any, a list
-    # containing only the forced base product; empty list in update mode.
+    # @return 
[Array<Y2Packager::Product>,Array<Y2Packager::ProductControlProduct] List of
+    #    available base products; if any, a list containing only the forced 
base product;
+    #    empty list in update mode.
     def products
       return @products if @products
 
@@ -161,9 +168,22 @@
 
     # Returns all available base products
     #
-    # @return [Array<Y2Packager::Product>] List of available base products
+    # @return [Array<Y2Packager::Product>, 
Array<Y2Packager::ProductControlProduct>] List of available base products
     def available_base_products
-      @available_base_products ||= Y2Packager::Product.available_base_products
+      return @available_base_products if @available_base_products
+
+      if Y2Packager::MediumType.online?
+        # read the products from the control.xml
+        @available_base_products = Y2Packager::ProductControlProduct.products
+        log.info "Found base products in the control.xml: 
#{@available_base_products.pretty_inspect}"
+
+        # we cannot continue, the control.xml in the installer is invalid
+        raise "control.xml does not define any base products!" if 
@available_base_products.empty?
+      else
+        @available_base_products = Y2Packager::Product.available_base_products
+      end
+
+      @available_base_products
     end
 
     # Determine whether some product is available or not
@@ -177,7 +197,11 @@
     #
     # @return [Y2Packager::Product] Selected base product
     def selected_product
-      Y2Packager::Product.selected_base
+      if Y2Packager::MediumType.online?
+        Y2Packager::ProductControlProduct.selected
+      else
+        Y2Packager::Product.selected_base
+      end
     end
 
     # Buttons to disable according to GetInstArgs
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.2.12/src/lib/installation/clients/pre_umount_finish.rb 
new/yast2-installation-4.2.14/src/lib/installation/clients/pre_umount_finish.rb
--- 
old/yast2-installation-4.2.12/src/lib/installation/clients/pre_umount_finish.rb 
    2019-08-28 13:44:54.000000000 +0200
+++ 
new/yast2-installation-4.2.14/src/lib/installation/clients/pre_umount_finish.rb 
    2019-09-20 17:04:45.000000000 +0200
@@ -53,11 +53,6 @@
       # See FATE #303396
       HandleSecondStageRequired()
 
-      # Remove content of /run which has been created by the pre/post
-      # install scripts while RPM installation and not needed anymore.
-      # (bnc#1071745)
-      SCR.Execute(path(".target.bash"), "/usr/bin/rm -rf /run/*")
-
       # Release all sources, they might be still mounted
       Pkg.SourceReleaseAll
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.2.12/src/lib/installation/widgets/product_selector.rb 
new/yast2-installation-4.2.14/src/lib/installation/widgets/product_selector.rb
--- 
old/yast2-installation-4.2.12/src/lib/installation/widgets/product_selector.rb  
    2019-08-28 13:44:54.000000000 +0200
+++ 
new/yast2-installation-4.2.14/src/lib/installation/widgets/product_selector.rb  
    2019-09-20 17:04:45.000000000 +0200
@@ -1,4 +1,7 @@
 require "yast"
+
+require "y2packager/product_control_product"
+
 Yast.import "Pkg"
 Yast.import "Popup"
 Yast.import "AddOnProduct"
@@ -17,7 +20,7 @@
       # @param skip_validation [Boolean] Skip value validation
       def initialize(products, skip_validation: false)
         @products = products
-        @items = products.map { |p| [p.name, p.label] }
+        @items = products.map { |p| [item_id(p), p.label] }
         @skip_validation = skip_validation
         textdomain "installation"
       end
@@ -35,26 +38,30 @@
         disable if registered?
         return unless selected
 
-        self.value = selected.name
+        self.value = item_id(selected)
       end
 
       def store
         log.info "Selected product: #{value}"
-        @product = products.find { |p| p.name == value }
+        @product = products.find { |p| item_id(p) == value }
         log.info "Found product: #{@product}"
 
         return unless @product
 
-        # reset both YaST and user selection (when going back or any products
-        # selected by YaST in the previous steps)
-        Yast::Pkg.PkgApplReset
-        Yast::Pkg.PkgReset
-        @product.select
-
-        # Reselecting existing add-on-products for installation again
-        Yast::AddOnProduct.selected_installation_products.each do |product|
-          log.info "Reselecting add-on product #{product} for installation"
-          Yast::Pkg.ResolvableInstall(product, :product, "")
+        if @product.is_a?(Y2Packager::ProductControlProduct)
+          Y2Packager::ProductControlProduct.selected = @product
+        else
+          # reset both YaST and user selection (when going back or any products
+          # selected by YaST in the previous steps)
+          Yast::Pkg.PkgApplReset
+          Yast::Pkg.PkgReset
+          @product.select
+
+          # Reselecting existing add-on-products for installation again
+          Yast::AddOnProduct.selected_installation_products.each do |product|
+            log.info "Reselecting add-on product #{product} for installation"
+            Yast::Pkg.ResolvableInstall(product, :product, "")
+          end
         end
       end
 
@@ -79,6 +86,10 @@
       rescue LoadError
         false
       end
+
+      def item_id(prod)
+        "#{prod.name}-#{prod.version}-#{prod.arch}"
+      end
     end
   end
 end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.2.12/test/lib/clients/inst_complex_welcome_test.rb 
new/yast2-installation-4.2.14/test/lib/clients/inst_complex_welcome_test.rb
--- old/yast2-installation-4.2.12/test/lib/clients/inst_complex_welcome_test.rb 
2019-08-28 13:44:54.000000000 +0200
+++ new/yast2-installation-4.2.14/test/lib/clients/inst_complex_welcome_test.rb 
2019-09-20 17:04:45.000000000 +0200
@@ -69,6 +69,7 @@
     allow(Y2Packager::Product).to receive(:selected_base).and_return(product)
     allow(Y2Packager::Product).to 
receive(:available_base_products).and_return(products)
     allow(Y2Packager::Product).to 
receive(:forced_base_product).and_return(forced_base_product)
+    allow(Y2Packager::MediumType).to receive(:online?).and_return(false)
   end
 
   describe "#main" do
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.2.12/test/lib/clients/pre_umount_finish_test.rb 
new/yast2-installation-4.2.14/test/lib/clients/pre_umount_finish_test.rb
--- old/yast2-installation-4.2.12/test/lib/clients/pre_umount_finish_test.rb    
2019-08-28 13:44:54.000000000 +0200
+++ new/yast2-installation-4.2.14/test/lib/clients/pre_umount_finish_test.rb    
2019-09-20 17:04:45.000000000 +0200
@@ -19,12 +19,6 @@
       subject.write
     end
 
-    it "removes content in /run" do
-      expect(Yast::SCR).to receive(:Execute).with(anything, /rm .*\/run/)
-
-      subject.write
-    end
-
     it "beeps if a bootmessage is available" do
       expect(Yast::Misc).to receive(:boot_msg).and_return("bootmessage")
       expect(Yast::SCR).to receive(:Execute).with(anything, /\/bin\/echo -e /)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.2.12/test/widgets/product_selector_test.rb 
new/yast2-installation-4.2.14/test/widgets/product_selector_test.rb
--- old/yast2-installation-4.2.12/test/widgets/product_selector_test.rb 
2019-08-28 13:44:54.000000000 +0200
+++ new/yast2-installation-4.2.14/test/widgets/product_selector_test.rb 
2019-09-20 17:04:45.000000000 +0200
@@ -6,8 +6,8 @@
 require "installation/widgets/product_selector"
 
 describe ::Installation::Widgets::ProductSelector do
-  let(:product1) { Y2Packager::Product.new(name: "test1", display_name: "Test 
1") }
-  let(:product2) { Y2Packager::Product.new(name: "test2", display_name: "Test 
2") }
+  let(:product1) { Y2Packager::Product.new(name: "test1", display_name: "Test 
1", version: "15", arch: "x86_64") }
+  let(:product2) { Y2Packager::Product.new(name: "test2", display_name: "Test 
2", version: "15", arch: "x86_64") }
   subject { described_class.new([product1, product2]) }
 
   include_examples "CWM::RadioButtons"
@@ -60,7 +60,7 @@
       allow(Yast::AddOnProduct).to receive(:selected_installation_products)
         .and_return(["add-on-product"])
       # mock selecting the first product
-      allow(subject).to receive(:value).and_return("test1")
+      allow(subject).to receive(:value).and_return("test1-15-x86_64")
     end
 
     it "resets previous package configuration" do


Reply via email to