dependencies are not installed before executing the tests

Bug #1212589 reported by Milosz Wasilewski
16
This bug affects 2 people
Affects Status Importance Assigned to Milestone
LAVA Dispatcher
Fix Released
High
Senthil Kumaran S

Bug Description

Dependency packages are not installed before the test execution starts. Here is the example of the failed test:
http://validation.linaro.org/scheduler/job/67199/log_file#L_41_370

The test definition contains proper dependency listing:

metadata:
    name: nohz-test
    format: "Lava-Test-Shell Test Definition 1.0"
    version: 1.0
    description: "Run nohz test on Ubuntu."

install:
    deps:
        - wget

run:
    steps:
        - 'wget http://people.linaro.org/~anders.roxell/nohz-test-cpuset.sh'
        - './nohz-test-cpuset.sh'

parse:
    pattern: "^(?P<test_case_id>.+):Result:\\s+(?P<result>.+)"
    fixupdict: {
            "PASS": "pass",
            "FAIL": "fail"
    }

According to the log, wget is not installed and test fails.

Related branches

Alan Bennett (akbennett)
Changed in lava-dispatcher:
assignee: nobody → Senthil Kumaran S (stylesen)
Changed in lava-dispatcher:
status: New → Confirmed
importance: Undecided → High
summary: - dependencies are not installed before executong the tests
+ dependencies are not installed before executing the tests
Changed in lava-dispatcher:
status: Confirmed → In Progress
Revision history for this message
Senthil Kumaran S (stylesen) wrote :

From the following job runs we could see the installation script gets created and also the installation step is executed. But the problem is resolving ports.ubuntu.com from the pandaboards.

http://validation.linaro.org/scheduler/job/67856
http://validation.linaro.org/scheduler/job/67857

Do have a look at the following lines from the above jobs:

http://validation.linaro.org/scheduler/job/67857/log_file#L_35_348
http://validation.linaro.org/scheduler/job/67856/log_file#L_33_343

This will be solved once we know the root cause of why the repo urls are not getting resolved. Will ping matty-hart sometime tomorrow and get this revealed.

Revision history for this message
Neil Williams (codehelp) wrote : Re: [Bug 1212589] Re: dependencies are not installed before executing the tests

On Mon, 19 Aug 2013 10:59:16 -0000
Senthil Kumaran S <email address hidden> wrote:

> >From the following job runs we could see the installation script gets
> created and also the installation step is executed. But the problem is
> resolving ports.ubuntu.com from the pandaboards.

The pandaboard is not raising a network interface. I've seen this
problem on pandas, the master image explicitly raises the network
interface but the test does not even try. What's needed is for the
dispatcher code processing the job to realise that the
appearance of install: deps: in the YAML requires that ifconfig eth0 up
is executed (or at least that we check for a usable network and
then try to raise one) before the install command is attempted.
Currently, we're relying on the board automatically raising the network
interface in the test image (when it doesn't have to in the master).

Explicitly raising the interface and then manually installing works
fine. The pandas can resolve ports.ubuntu.com and the rest of the sites
they need - as long as the network interface is raised first.

The current code appears to assume that every test image would
automatically raise a network interface upon boot with no intervention
from LAVA. IMHO, that's the bug here.

--

Neil Williams
=============
http://www.linux.codehelp.co.uk/

Revision history for this message
Neil Williams (codehelp) wrote :

On Mon, 19 Aug 2013 10:59:16 -0000
Senthil Kumaran S <email address hidden> wrote:

> >From the following job runs we could see the installation script gets
> created and also the installation step is executed. But the problem is
> resolving ports.ubuntu.com from the pandaboards.

KVMs are also affected by this issue.
install:
   deps:

fails as there is no usable network interface immediately after booting into the test image.

--

Neil Williams
=============
http://www.linux.codehelp.co.uk/

Revision history for this message
Milosz Wasilewski (mwasilew) wrote :

On 19 August 2013 12:20, Neil Williams <email address hidden> wrote:
> On Mon, 19 Aug 2013 10:59:16 -0000
> Senthil Kumaran S <email address hidden> wrote:
>
>> >From the following job runs we could see the installation script gets
>> created and also the installation step is executed. But the problem is
>> resolving ports.ubuntu.com from the pandaboards.
>
> KVMs are also affected by this issue.
> install:
> deps:
>
> fails as there is no usable network interface immediately after booting
> into the test image.
>

How about arndale?
http://validation.linaro.org/scheduler/job/67185

I checked the log and I don't see the attempt to install wget.
http://validation.linaro.org/scheduler/job/67185/log_file#L_27_403

Revision history for this message
Neil Williams (codehelp) wrote :

The bug arises because the test image doesn't bring up a usable network interface at boot *and* the test definition relies upon having a network interface at boot due to the use of install: deps: - this is an error in the test image as this would work fine with the master image.

After discussion on IRC, this bug needs to be redone as:

"Output a clear error message in the job file when install: deps: is used in the YAML but the test image does not raise a network interface at boot"

The error message concerned needs to clearly attribute the problem to the combination of the supplied YAML and the supplied test image - the two are, essentially, incompatible.

Revision history for this message
Senthil Kumaran S (stylesen) wrote :

Based on IRC discussion as given above I made a fix which is available in lp:~stylesen/lava-dispatcher/fix-bug-1212589

Revision history for this message
Senthil Kumaran S (stylesen) wrote :

Fix committed at r653

Changed in lava-dispatcher:
milestone: none → 2013.08
status: In Progress → Fix Committed
Neil Williams (codehelp)
Changed in lava-dispatcher:
status: Fix Committed → Confirmed
Revision history for this message
Neil Williams (codehelp) wrote :

The fix is not working correctly - it is disabling dependency installation in test images which previously worked.

http://multinode.validation.linaro.org/scheduler/job/2379/log_file

https://staging.validation.linaro.org/scheduler/job/95/log_file

In the case of the KVM, this is probably due to the lack of bridging - I was going to re-open the bug but will need to re-test in a bridged KVM.

Changed in lava-dispatcher:
status: Confirmed → Fix Committed
Changed in lava-dispatcher:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.