You can workaround by creating a symlink to lava-android-test in /usr/bin/ that points to /usr/local/lava-android-test

Thanks
Sandeep

On Mon, Aug 8, 2016 at 5:05 AM, Neil Williams <neil.williams@linaro.org> wrote:
On 8 August 2016 at 11:59, Umamaheswara Rao Lankoti
<ulankoti@innominds.com> wrote:
> From: Neil Williams <neil.williams@linaro.org>
> Sent: Monday, August 8, 2016 4:20 PM
> To: Umamaheswara Rao Lankoti
> Cc: Lava Users Mailman list
> Subject: Re: [Lava-users] error - lava-android-test has not been installed
>
> On 8 August 2016 at 11:24, Umamaheswara Rao Lankoti
> <ulankoti@innominds.com> wrote:
>> Hi
>>
>>
>> I created algiz device type as :
>>
>>     client_type = fastboot
>>     fastboot_driver = fastboot
>>     adb_command = adb
>>     fastboot_command = fastboot
>>
>>
>> and algiz01 device as:
>>
>>     device_type = algiz
>>     adb_command = adb
>>     fastboot_command = fastboot
>>
>>
>> created job as below:
>>
>> ----------------------------------------------
>>
>> {
>>     "actions": [
>>         {
>>             "command": "lava_android_test_run",
>>             "parameters": {
>>                 "test_name": "ls /sdcard/"
>>             }
>>         },
>>         {
>>             "command": "submit_results",
>>             "parameters": {
>>                 "server": "http://192.168.100.84/RPC2/",
>>                 "stream": "/anonymous/ulankoti/"
>>             }
>>         }
>>     ],
>>     "device_type": "algiz",
>>     "health_check": false,
>>     "job_name": "test-job-run",
>>     "logging_level": "DEBUG",
>>     "timeout": 18000
>> }
>>
>> ----------------------------------------------
>>
>>
>> Below error is coming when the job run:
>>
>> --------------------------------------------------------------------
>>
>> Section 0
>> 0.0  <LAVA_DISPATCHER>2016-08-08 09:45:20 AM DEBUG: [ACTION-B] Single node
>> test! 0.1  <LAVA_DISPATCHER>2016-08-08 09:45:20 AM DEBUG: lmp modules
>> default init data is [] 0.2  <LAVA_DISPATCHER>2016-08-08 09:45:20 AM
>> DEBUG:
>> lmp modules final init data is [] 0.3  <LAVA_DISPATCHER>2016-08-08
>> 09:45:20
>> AM INFO: [ACTION-B] lava_android_test_run is started with {'timeout':
>> 18000,
>> u'test_name': u'ls /sdcard/'} 0.4  <LAVA_DISPATCHER>2016-08-08 09:45:20 AM
>> WARNING: pexpect timed out with status fail 0.5
>> <LAVA_DISPATCHER>2016-08-08
>> 09:45:20 AM DEBUG: finally status fail 0.6  <LAVA_DISPATCHER>2016-08-08
>> 09:45:20 AM WARNING: [ACTION-E] lava_android_test_run is finished with
>> error
>> (lava-android-test has not been installed).
>> Section 1
>> 1.0  ErrorMessage: lava-android-test has not been installed 1.1  Lava
>> failed
>> at action lava_android_test_run with error:lava-android-test has not been
>> installed
>> Section 2
>> 2.0  Traceback (most recent call last): 2.1   File
>> "/usr/lib/python2.7/dist-packages/lava_dispatcher/job.py", line 385, in
>> run
>> 2.2   action.run(**params) 2.3   File
>>
>> "/usr/lib/python2.7/dist-packages/lava_dispatcher/actions/lava_android_test.py",
>> line 57, in run 2.4   self.check_lava_android_test_installed() 2.5   File
>>
>> "/usr/lib/python2.7/dist-packages/lava_dispatcher/actions/lava_android_test.py",
>> line 34, in check_lava_android_test_installed 2.6   raise
>> OperationFailed('lava-android-test has not been installed') 2.7
>> OperationFailed: lava-android-test has not been installed
>>
>> ---------------------------------------------------------------------------------
>>
>>
>> I have installed lava-android-test on the host PC from
>> git.linaro.org/lava/lava-android-test.git
>>
>>
>> Device is attached to the host PC via usb and 'adb devices' lists the
>> device.
>
> All that the code is doing at that point is checking to see if
> 'lava-android-test' exists in the $PATH for root.
>
> rc = os.system('which lava-android-test')
>
> Run:
>
> $ which lava-android-test
> $ sudo which lava-android-test
>
> [Uma] Both commands returned "/usr/local/bin/lava-android-test" and
> /usr/local/bin is in $PATH defined for root as well as current user.

/usr/local/bin is *not* part of the $PATH as used by lava-dispatch
when launched by the scheduler (although /usr/local would be picked up
the the python interpreter, this isn't being called as python, it's
being called as a utility).

"installing" lava-android test does *not* mean python setup.py install
- that creates a pip type install which will never work and will only
break other python packages. There must not be any python modules
installed in /usr/local/lib and /usr/local/bin is not accessible to
the dispatcher deliberately to try and limit the damage caused by
broken installations.

> That may be a simple problem with the package that you built.

Debian packages will not put files into /usr/local/ by default - you
need to build a package from lava-android-test and install it that
way. It could also be that lava-android-test is broken and doesn't
build a working package. Sadly, lava-android-test is not maintained
the lava software team and I don't know of any official builds for it.

You need to build a genuine Debian package and install that. This is
just one of the reasons why lava-android-test is deprecated.

> lava-android-test is not part of the lava codebase itself and is
> deprecated. The LAVA V2 support for ADB does not use lava-android-test
> at all and we're working on that support for the next release 2016.9,
> including examples and documentation.
>
>>
>>
>> Still getting "lava-android-test has not been installed" error.
>>
>> Can someone help how to resolve this issue?
>>
>>
>>
>> thanks,
>>
>> uma..
>>
>>
>> _______________________________________________
>> Lava-users mailing list
>> Lava-users@lists.linaro.org
>> https://lists.linaro.org/mailman/listinfo/lava-users
>>
>
>
>
> --
>
> Neil Williams
> =============
> neil.williams@linaro.org
> http://www.linux.codehelp.co.uk/



--

Neil Williams
=============
neil.williams@linaro.org
http://www.linux.codehelp.co.uk/
_______________________________________________
Lava-users mailing list
Lava-users@lists.linaro.org
https://lists.linaro.org/mailman/listinfo/lava-users