From d8248892141f1d8d16f46d6c4f92ff13294c0e64 Mon Sep 17 00:00:00 2001 From: Stephen Soltesz Date: Fri, 25 Jul 2008 21:02:56 +0000 Subject: [PATCH] Change all boot_state names based on new names, also add dependency of bootmanager on 5.0 version of PLCAPI. --- bootmanager.spec | 1 + source/BootManager.py | 38 +++++++++++++-------------- source/steps/ReadNodeConfiguration.py | 2 +- source/steps/WriteModprobeConfig.py | 2 +- 4 files changed, 21 insertions(+), 22 deletions(-) diff --git a/bootmanager.spec b/bootmanager.spec index aa3989c..ac77797 100644 --- a/bootmanager.spec +++ b/bootmanager.spec @@ -24,6 +24,7 @@ Source0: %{name}-%{version}.tar.gz BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root Requires: tar, gnupg, sharutils, bzip2, pypcilib +Requires: PLCAPI >= 5.0 AutoReqProv: no %define debug_package %{nil} diff --git a/source/BootManager.py b/source/BootManager.py index 2098c41..39b5d19 100755 --- a/source/BootManager.py +++ b/source/BootManager.py @@ -175,7 +175,7 @@ class BootManager: def _nodeNotInstalled(): # called by the _xxxState() functions below upon failure - self.VARS['BOOT_STATE']= 'dbg' + self.VARS['BOOT_STATE']= 'failboot' self.VARS['STATE_CHANGE_NOTIFY']= 1 self.VARS['STATE_CHANGE_NOTIFY_MESSAGE']= \ notify_messages.MSG_NODE_NOT_INSTALLED @@ -199,13 +199,13 @@ class BootManager: else: _nodeNotInstalled() - def _rinsRun(): + def _reinstallRun(): # implements the reinstall logic, which will check whether # the min. hardware requirements are met, install the # software, and upon correct installation will switch too # 'boot' state and chainboot into the production system if not CheckHardwareRequirements.Run( self.VARS, self.LOG ): - self.VARS['BOOT_STATE']= 'dbg' + self.VARS['BOOT_STATE']= 'failboot' raise BootManagerException, "Hardware requirements not met." # runinstaller @@ -224,16 +224,16 @@ class BootManager: def _newRun(): # implements the new install logic, which will first check # with the user whether it is ok to install on this - # machine, switch to 'rins' state and then invoke the rins - # logic. See rinsState logic comments for further + # machine, switch to 'reinstall' state and then invoke the reinstall + # logic. See reinstallState logic comments for further # details. if not ConfirmInstallWithUser.Run( self.VARS, self.LOG ): return 0 - self.VARS['BOOT_STATE']= 'rins' + self.VARS['BOOT_STATE']= 'reinstall' UpdateBootStateWithPLC.Run( self.VARS, self.LOG ) - _rinsRun() + _reinstallRun() - def _debugRun(state='dbg'): + def _debugRun(state='failboot'): # implements debug logic, which just starts the sshd # and just waits around self.VARS['BOOT_STATE']=state @@ -247,13 +247,12 @@ class BootManager: global NodeRunStates # setup state -> function hash table - NodeRunStates['new'] = _newRun - NodeRunStates['inst'] = _newRun - NodeRunStates['rins'] = _rinsRun + NodeRunStates['install'] = _newRun + NodeRunStates['reinstall'] = _reinstallRun NodeRunStates['boot'] = _bootRun - NodeRunStates['dbg'] = _bootRun # should always try to boot. - NodeRunStates['diag'] = lambda : _debugRun('diag') - NodeRunStates['disable'] = lambda : _debugRun('disable') + NodeRunStates['failboot'] = _bootRun # should always try to boot. + NodeRunStates['safeboot'] = lambda : _debugRun('safeboot') + NodeRunStates['disabled'] = lambda : _debugRun('disabled') success = 0 try: @@ -301,13 +300,12 @@ def main(argv): #utils.breakpoint ("Entering BootManager::main") global NodeRunStates - NodeRunStates = {'new':None, - 'inst':None, - 'rins':None, + NodeRunStates = {'install':None, + 'reinstall':None, 'boot':None, - 'diag':None, - 'disable':None, - 'dbg':None} + 'safeboot':None, + 'failboot':None + 'disabled':None, } # set to 1 if error occurred error= 0 diff --git a/source/steps/ReadNodeConfiguration.py b/source/steps/ReadNodeConfiguration.py index 95c8fd9..1734d70 100644 --- a/source/steps/ReadNodeConfiguration.py +++ b/source/steps/ReadNodeConfiguration.py @@ -631,7 +631,7 @@ def __parse_configuration_file( vars, log, file_contents ): if can_make_api_call: log.write( "Notifying contacts of problem.\n" ) - vars['BOOT_STATE']= 'dbg' + vars['BOOT_STATE']= 'failboot' vars['STATE_CHANGE_NOTIFY']= 1 vars['STATE_CHANGE_NOTIFY_MESSAGE']= \ notify_messages.MSG_HOSTNAME_NOT_RESOLVE diff --git a/source/steps/WriteModprobeConfig.py b/source/steps/WriteModprobeConfig.py index a9b0d2a..c0c8b2d 100644 --- a/source/steps/WriteModprobeConfig.py +++ b/source/steps/WriteModprobeConfig.py @@ -88,7 +88,7 @@ def Run( vars, log, filename = "/etc/modprobe.conf"): if eth_count == 0: log.write( "\nIt appears we don't have any network drivers. Aborting.\n" ) - vars['BOOT_STATE']= 'dbg' + vars['BOOT_STATE']= 'failboot' vars['STATE_CHANGE_NOTIFY']= 1 vars['STATE_CHANGE_NOTIFY_MESSAGE']= \ notify_messages.MSG_NO_DETECTED_NETWORK -- 2.43.0