[Avocado-devel] [RFC PATCH 4/4] tests/acceptance: Test U-Boot/Linux from Armbian 20.08 on Orange Pi PC

Philippe Mathieu-Daudé philmd at redhat.com
Sun Oct 25 20:17:04 UTC 2020


Cc'ing avocado-devel@

On 10/26/20 12:35 AM, Niek Linnenbank wrote:
> On Sun, Oct 25, 2020 at 3:17 AM Bin Meng <bmeng.cn at gmail.com 
> <mailto:bmeng.cn at gmail.com>> wrote:
>     On Sun, Oct 25, 2020 at 5:01 AM Niek Linnenbank
>     <nieklinnenbank at gmail.com <mailto:nieklinnenbank at gmail.com>> wrote:
...
>      > After applying that change, all Orange Pi tests run successfully:
>      >
>      > $ AVOCADO_ALLOW_LARGE_STORAGE=yes ARMBIAN_ARTIFACTS_CACHED=yes
>     avocado --show=app,console run -t machine:orangepi-pc
>     tests/acceptance/boot_linux_console.py
> 
>     This command does not work for me.
> 
>     Traceback (most recent call last):
>        File "/usr/local/bin/avocado", line 5, in <module>
>          from avocado.core.main import main
>        File "/usr/local/lib/python3.8/dist-packages/avocado/core/main.py",
>     line 22, in <module>
>          from avocado.core import data_dir
>        File
>     "/usr/local/lib/python3.8/dist-packages/avocado/core/data_dir.py",
>     line 39, in <module>
>          from .output import LOG_JOB, LOG_UI
>        File "/usr/local/lib/python3.8/dist-packages/avocado/core/output.py",
>     line 27, in <module>
>          from .settings import settings
>        File
>     "/usr/local/lib/python3.8/dist-packages/avocado/core/settings.py",
>     line 625, in <module>
>          settings = Settings()  # pylint: disable-msg=invalid-name
>        File
>     "/usr/local/lib/python3.8/dist-packages/avocado/core/settings.py",
>     line 274, in __init__
>          self._prepare_base_dirs()
>        File
>     "/usr/local/lib/python3.8/dist-packages/avocado/core/settings.py",
>     line 315, in _prepare_base_dirs
>          self._config_path_pkg = resource_filename('avocado',
>     config_pkg_base)
>        File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py",
>     line 1145, in resource_filename
>          return get_provider(package_or_requirement).get_resource_filename(
>        File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py",
>     line 365, in get_provider
>          return _find_adapter(_provider_factories, loader)(module)
>        File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py",
>     line 1393, in __init__
>          self.module_path = os.path.dirname(getattr(module, '__file__', ''))
>        File "/usr/lib/python3.8/posixpath.py", line 152, in dirname
>          p = os.fspath(p)
>     TypeError: expected str, bytes or os.PathLike object, not NoneType
> 
>     I haven't got a command to work on testing only a single target. Any
>     hint? Thanks!
> 
> 
> That error is new to me, I have not seen it before. From the stacktrace, 
> it looks like that avocado is trying to read its own configuration / 
> settings file (from settings.py).
> Later on there is a type conversion error for NoneType. Perhaps the 
> avocado files for your user have somehow got corrupted?
> You could try to remove them from your home directory and/or re-install 
> avocado as well and start out fresh.
> I assume that at least 'avocado --help'  should work without generating 
> this error.
> 
> Also it may be useful to know that it looks like you need to run avocado 
> from within the new 'build' directory that the new meson build system 
> now creates.
> If not running from the 'build' directory, I'm getting this printed on 
> my machine:
>    CANCEL: No QEMU binary defined or found in the build tree
> 
> So once your avocado is working without the type error you could try this:
> 
> 1) cd build
> 2) AVOCADO_ALLOW_LARGE_STORAGE=yes ARMBIAN_ARTIFACTS_CACHED=yes avocado 
> --show=app,console run -t machine:orangepi-pc 
> tests/acceptance/boot_linux_console.py
> 
> Alternatively, if you can't get avocado to run anything, you could also 
> just run the Armbian image (or any other image) directly via 
> qemu-system-arm:
> 
>    $ build/arm-softmmu/qemu-system-arm -M orangepi-pc -nographic -nic 
> user -sd Armbian_20.08.1_Orangepipc_bionic_current_5.8.5.img
>    U-Boot SPL 2020.04-armbian (Sep 02 2020 - 10:16:13 +0200)
>    DRAM: 1024 MiB
>    ...
>    Autoboot in 1 seconds, press <Space> to stop
>    => setenv extraargs 'console=ttyS0,115200'
>    => boot
>    ...
>    Uncompressing Linux... done, booting the kernel.
>    Loading, please wait...
>    starting version 237
> 
> Also see the file docs/system/arm/orangepi.rst with some additional 
> information and documentation.
> 
> Hope this helps & regards,
> 
> Niek




More information about the Avocado-devel mailing list