From a5953f4876734801790cf19ae76914ed89b5d80b Mon Sep 17 00:00:00 2001 From: Arvin Schnell Date: Tue, 8 May 2018 12:05:55 +0200 Subject: [PATCH] - disable mdadm auto assembly for installation --- package/yast2-installation.changes | 6 ++++++ package/yast2-installation.spec | 8 ++++---- src/lib/installation/clients/inst_system_analysis.rb | 12 ++++++++++++ test/lib/clients/inst_system_analysis_test.rb | 1 + 4 files changed, 23 insertions(+), 4 deletions(-) diff --git a/package/yast2-installation.changes b/package/yast2-installation.changes index fc6081365..3dbb6f748 100644 --- a/package/yast2-installation.changes +++ b/package/yast2-installation.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Tue May 08 12:04:00 CEST 2018 - aschnell@suse.com + +- disable mdadm auto assembly for installation (bsc#1090690) +- 4.0.58 + ------------------------------------------------------------------- Thu May 3 07:34:57 UTC 2018 - lslezak@suse.cz diff --git a/package/yast2-installation.spec b/package/yast2-installation.spec index 95059e460..3a2d1552f 100644 --- a/package/yast2-installation.spec +++ b/package/yast2-installation.spec @@ -16,7 +16,7 @@ # Name: yast2-installation -Version: 4.0.57 +Version: 4.0.58 Release: 0 BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -47,9 +47,9 @@ BuildRequires: yast2 >= 4.0.72 # Yast::Packages.check_remote_installation_packages BuildRequires: yast2-packager >= 4.0.9 -# Y2Storage::StorageManager#devices_for_installation? -BuildRequires: yast2-storage-ng >= 4.0.168 -Requires: yast2-storage-ng >= 4.0.168 +# Y2Storage::Inhibitors +BuildRequires: yast2-storage-ng >= 4.0.175 +Requires: yast2-storage-ng >= 4.0.175 # TextHelpers#div_with_direction Requires: yast2 >= 4.0.72 diff --git a/src/lib/installation/clients/inst_system_analysis.rb b/src/lib/installation/clients/inst_system_analysis.rb index b3cff1acd..1b697d64d 100644 --- a/src/lib/installation/clients/inst_system_analysis.rb +++ b/src/lib/installation/clients/inst_system_analysis.rb @@ -27,6 +27,7 @@ require "yast" require "y2storage" +require "y2storage/inhibitors" module Yast class InstSystemAnalysisClient < Client @@ -64,6 +65,7 @@ def main return :back if GetInstArgs.going_back @packager_initialized = false + @inhibitors = nil Wizard.SetContents(_("Analyzing the Computer"), Empty(), "", false, false) Wizard.SetTitleIcon("yast-controller") @@ -177,6 +179,8 @@ def ActionFireWire # @raise [AbortException] if an error is found and the installation must # be aborted because of such error def ActionHDDProbe + inhibit_storage + init_storage devicegraph = storage_manager.probed @@ -253,6 +257,14 @@ def FilesFromOlderSystems private + # Inhibit various storage features, e.g. MD RAID auto assembly + def inhibit_storage + return if @inhibitors + + @inhibitors = Y2Storage::Inhibitors.new + @inhibitors.inhibit + end + # Return the activate callbacks for libstorage-ng # # When running AutoYaST, it will use a different set of callbacks. diff --git a/test/lib/clients/inst_system_analysis_test.rb b/test/lib/clients/inst_system_analysis_test.rb index 79056f165..81dd0d737 100644 --- a/test/lib/clients/inst_system_analysis_test.rb +++ b/test/lib/clients/inst_system_analysis_test.rb @@ -47,6 +47,7 @@ it "uses default activation callbacks" do expect(storage).to receive(:activate).with(nil).and_return true + expect(Yast::Execute).to receive(:locally!).with("/sbin/udevadm", "control", "--property=ANACONDA=yes") client.ActionHDDProbe end