[Avocado-devel] Avocado related questions

Cleber Rosa crosa at redhat.com
Tue Feb 26 19:14:29 UTC 2019



----- Original Message -----
> From: "Junchao Zhang" <zhangjckimi at gmail.com>
> To: "Lukáš Doktor" <ldoktor at redhat.com>
> Cc: avocado-devel at redhat.com
> Sent: Tuesday, February 26, 2019 1:38:40 PM
> Subject: Re: [Avocado-devel] Avocado related questions
> 
> Hi Lukas,
> 
> Here is some update:
> I replace the setuptools with a new one and reran "python setup.py
> install". I have attached the output below. Everything looks great. But
> after the installation, when I execute /mnt/us/avocado/scripts/avocado,
> there is still not options for valid subcommands:
> [root at kindle scripts]# python avocado run
> ***
> subcommands:
>   valid subcommands
> 
>   {}                    subcommand help
> 
> avocado: error: argument subcommand: invalid choice: 'run' (choose from )
> 

Hi Junchao,

Getting a bit more "under the hood", could you please open a Python interpreter
on your kindle system and execute:

   >>> import pkg_resources
   >>> pkg_resources.get_distribution('avocado-framework')

It should return something like:

   avocado-framework 68.0 (/tmp/venv/lib/python3.7/site-packages)

Then, in the directory given under parenthesis, there should be a directory
named after the "distribution" name, and ending in   In this case:

   /tmp/venv/lib/python3.7/site-packages/avocado_framework-68.0.dist-info

Can you please check if this directory exists, and if you have a content
similar to:

   $ ls /tmp/venv/lib/python3.7/site-packages/avocado_framework-68.0.dist-info
   entry_points.txt  INSTALLER  METADATA  RECORD  top_level.txt  WHEEL

Thanks,
- Cleber.

> Thanks,
> Junchao
> 
> On Tue, Feb 26, 2019 at 9:47 AM Junchao Zhang <zhangjckimi at gmail.com> wrote:
> 
> > Hi Lukas,
> >
> > I am using Kindle which is armv7l. There is no "pip" on this server. What
> > I did is I directly copy the setuptools package from my x86_64 Ubuntu and
> > removed all the .pyc files in the package. The setuptools work fine on my
> > x86_64 server. We want to keep the system clean so probably cannot install
> > "pip" on the server. Do you have any solution for this situation?
> >
> > Thanks,
> > Junchao
> >
> > On Mon, Feb 25, 2019 at 11:51 PM Lukáš Doktor <ldoktor at redhat.com> wrote:
> >
> >> Dne 26. 02. 19 v 2:46 Junchao Zhang napsal(a):
> >> > HI Lukas,
> >> >
> >> > Thanks for your explanation. My situation is I am trying to use Avocado
> >> on my arm server.
> >> > When I ran 'python setup.py install', it had the following output:
> >> >
> >> > [root at kindle avocado]# python setup.py install
> >> > /mnt/us/testutils/python/lib/python2.7/distutils/dist.py:267:
> >> UserWarning: Unknown distribution option: 'entry_points'
> >> > /mnt/us/testutils/python/lib/python2.7/distutils/dist.py:267:
> >> UserWarning: Unknown distribution option: 'zip_safe'
> >> > /mnt/us/testutils/python/lib/python2.7/distutils/dist.py:267:
> >> UserWarning: Unknown distribution option: 'include_package_data'
> >> > /mnt/us/testutils/python/lib/python2.7/distutils/dist.py:267:
> >> UserWarning: Unknown distribution option: 'python_requires'
> >> > /mnt/us/testutils/python/lib/python2.7/distutils/dist.py:267:
> >> UserWarning: Unknown distribution option: 'install_requires'
> >> > /mnt/us/testutils/python/lib/python2.7/distutils/dist.py:267:
> >> UserWarning: Unknown distribution option: 'test_suite'
> >>
> >> Hello Kimi,
> >>
> >> this looks like old setuptools. What version are you using? Can you
> >> please provide the output of `pip list` to see the installed libraries?
> >> Also if `setuptools` is not listed, you should install it (or try updating
> >> it). Currently I'm using "setuptools==40.4.3".
> >>
> >> What could also help is knowing what distribution are you working on. I'm
> >> running avocado jobs on aarch64 on RHEL7 and RHEL8 and it works like a
> >> charm.
> >>
> >> Regards,
> >> Lukáš
> >>
> >> > running install
> >> > running build
> >> > running build_py
> >> > running build_scripts
> >> > running install_lib
> >> > running install_scripts
> >> > changing mode of /mnt/us/testutils/python/bin/avocado to 777
> >> > changing mode of /mnt/us/testutils/python/bin/avocado-rest-client to 777
> >> > running install_egg_info
> >> > Removing
> >> /mnt/us/testutils/python/lib/python2.7/site-packages/avocado_framework-68.0-py2.7.egg-info
> >> > Writing
> >> /mnt/us/testutils/python/lib/python2.7/site-packages/avocado_framework-68.0-py2.7.egg-info
> >> >
> >> >
> >> > And I still cannot see any subcommands when I directly executed the
> >> avocado file:
> >> > [root at kindle us]# python avocado_s
> >> > ******
> >> > subcommands:
> >> >   valid subcommands
> >> >
> >> >   {}                    subcommand help
> >> >
> >> >
> >> > Do you have any idea?
> >> >
> >> > Thanks,
> >> > Junchao
> >> >
> >> >
> >> > On Mon, Feb 25, 2019 at 2:53 AM Lukáš Doktor <ldoktor at redhat.com
> >> <mailto:ldoktor at redhat.com>> wrote:
> >> >
> >> >     Dne 22. 02. 19 v 18:09 Junchao Zhang napsal(a):
> >> >     > Dear avocado development team,
> >> >     >
> >> >     > My name is Kimi. Currently I am working on Linux development. Our
> >> team used Autotest before. Currently I am trying to use Avocado. It is
> >> really a great framework. I have some questions that hope you can help me
> >> with.
> >> >     >
> >> >     > 1. Since I do not want to do installation on our arm system, I
> >> tried to manually run avocado.
> >> >     > I copied the avocado script ~/.local/bin/avocado and added
> >> necessary packages on the device. Then I can successfully running "python
> >> SCRIPT_NAME". But looks like there is no subcommands options available.
> >> >     > subcommands:
> >> >     >   valid subcommands
> >> >     >
> >> >     >   {}                    subcommand help
> >> >     >
> >> >     > Did I miss something so that I can do "python SCRIPT_NAME run"?
> >> >     >
> >> >     > 2. When I tried avocado on my Ubuntu, it works fine. The only
> >> issue is there isn't any tests available when I run "Avocado list". I just
> >> followed the instructions on online doc.
> >> >     >
> >> >     > Hope to hear back from you soon!
> >> >     >
> >> >     > Thanks,
> >> >     > Junchao
> >> >
> >> >     Dear Kimi,
> >> >
> >> >     Avocado uses stevedore as a plugin system which uses setuptools
> >> entry points
> >> https://avocado-framework.readthedocs.io/en/latest/Plugins.html#registering-plugins
> >> to discover available plugins.
> >> >
> >> >     To setup Avocado for development you can simply clone the git repo
> >> to any location and use `python setup.py develop --user` (user means use
> >> "~/.local" and not "/usr") or simply by our `make develop` or `make link`
> >> makefile target (see `make help` for details), which creates "links" in
> >> "~/.local/lib". The difference in "install" vs. "develop" is that it won't
> >> copy the scripts, it simply tells python that this library is located in
> >> this directory, therefor any change in your cloned directory is propagated
> >> (apart from new/renamed entry-points which requires to re-execute "make
> >> develop").
> >> >
> >> >     Note the "develop" puts "avocado" binary to "~/.local/bin/avocado".
> >> Using it usually requires extending the PATH, or executing "python3
> >> scripts/avocado" from the cloned git location.
> >> >
> >> >     Last but not least, details on installing from git are here:
> >> https://avocado-framework.readthedocs.io/en/latest/GetStartedGuide.html#generic-installation-from-a-git-repository
> >> >
> >> >     Happy hacking,
> >> >     Lukáš
> >> >
> >> >     PS: Not sure what you require in your testing, there are two debts
> >> we have compare to Autotest and that is multi-host testing
> >> https://trello.com/c/AnoH6vhP/530-rfc-multiple-machine-support-for-tests
> >> and tests surviving host reboot
> >> https://trello.com/c/mzhpqQyx/1233-add-avocado-service-to-allow-reboot-between-test-communication-and-even-safer-funcatexit
> >> >
> >>
> >>
> >>
> 




More information about the Avocado-devel mailing list