Bug 852241 - Watchdog never starts if power configuration is not present
Summary: Watchdog never starts if power configuration is not present
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Beaker
Classification: Retired
Component: lab controller
Version: 0.9
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Nick Coghlan
QA Contact:
URL:
Whiteboard: Provisioning
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2012-08-28 01:11 UTC by Raymond Mancy
Modified: 2015-05-04 02:13 UTC (History)
6 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2013-01-29 01:57:16 UTC
Embargoed:


Attachments (Terms of Use)

Description Raymond Mancy 2012-08-28 01:11:14 UTC
Description of problem:

Watchdog does not start for system where no power config is present

Version-Release number of selected component (if applicable):


How reproducible:
Everytime

Steps to Reproduce:
1. Start a job with a system that has no power config present
2. Watchdog never starts
3.
  
Actual results:

External watchdog expires recipe

Expected results:

Job runs as per normal

Additional info:

We allow systems to not have power configurations. There are real world cases
where not having a power configuration is wanted (i.e machine is under desk and we just want to switch it on and off).

The problem is that the watchdog is tied to the provision process on the LC via the power handler, and we do not bother having the LC handlea power action if we have no power config. This is probably the correct behaviour. 

Perhaps though what we should be doing is calling the model.auto_cmd_handler directly from mode.power_action if there is no power config present.

Comment 2 Dan Callaghan 2012-08-28 03:32:25 UTC
I think the recipe should start (that is, enter Running state and have a watchdog kill time defined) once the machine reaches Anaconda %pre. But you're right, until then the recipe will remain Waiting with no watchdog kill time. This was my oversight in commit 56c72d19 for bug 835373.

Comment 3 Raymond Mancy 2012-08-28 04:09:11 UTC
AFAICT the %pre will not cause it to enter a Running state as it explicitly tests whether the task is already running before it extends it (and does not if it isn't).  In fact perhaps this is the most logical place to have the start being recorded, although it looks we've gone out of our way not to do that, and I'm sure there is a good reason why.

Comment 4 Nick Coghlan 2012-10-17 04:39:38 UTC
Bulk reassignment of issues as Bill has moved to another team.

Comment 5 Dan Callaghan 2012-10-25 04:25:55 UTC
When provisioning a recipe we only issue a reboot if the system supports power control. We should just add an else: branch on there which starts the recipe immediately if there's no power control.

Comment 6 Raymond Mancy 2013-01-29 01:57:16 UTC
This is now happening thanks to the install_start() method that is called from %pre


Note You need to log in before you can comment on or make changes to this bug.