[tbot] Release 0.7.0

Stefano Babic sbabic at denx.de
Sat Mar 2 20:09:10 UTC 2019


On 08/02/19 13:04, Harald Seiler wrote:
> A new tbot version has been released!
> 0.7.0 contains the new build system among a few other improvements:
> == Added ==
> - Read commandline arguments from files:  You can now specify a file using
>   @filename and each line from that file will be interpreted as a commandline
>   argument.
> - A man-page: doc/tbot.1!
> - tbot.named_testcase: Define testcases with a different name in log-files
>   than the function name.  The motivation is to reduce name ambiguity
>   (e.g. `uboot.build` and `linux.build` would both be called `build` in the
>   log).  This also affects the testcases name when calling it from the
>   commandline (you have to use the new name).
> == Changed ==
> - The U-Boot build testcase has been completely rewritten.  You will need to
>   adapt you board config to work with the new version:
>   * The build-info no longer exists, instead you define a `UBootBuilder`.  Take
>     a look at the docs to see available options.
>   * The build attribute of your U-Boot machine must now be an **instance** of
>     your `UBootBuilder`, **not** the class itself.
>       Example of the new config:
>       from tbot.machine import board
>       from tbot.tc import uboot
>       class MyUBootBuilder(uboot.UBootBuilder):
>           name = "my-builder"
>           defconfig = "my_defconfig"
>           toolchain = "generic-armv7a-hf"
>       class MyUBootMachine(board.UBootMachine):
>           ...
>           build = MyUBootBuilder()
> == Fixed ==
> - `boot_to_shell` is no longer a public method of BoardLinux machines.

I updated to 0.7 - I have some questions:

- even running with checked-in boards and lab, I get errors due to
missing kconfig module:

tbot -b boards/mira.py -l labs/pollux.py interactive_uboot
tbot starting ...
Traceback (most recent call last):
  File "/home/stefano/.local/bin/tbot", line 12, in <module>
line 248, in main
    board = loader.load_module(pathlib.Path(args.board).resolve())
line 136, in load_module
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in
  File "/home/stefano/Projects/internal/tbot-denx/boards/mira.py", line
1, in <module>
    import denx
  File "/home/stefano/Projects/internal/tbot-denx/boards/denx.py", line
5, in <module>
    from tbot.tc import uboot, git, kconfig
ImportError: cannot import name 'kconfig'

- checking the code, it looks to me that boards and labs are much more
correlated together instead to be orthogonal. In fact, I forked "mira"
to let it running in my lab.

class Mira(denx.Board):
     name = "phymira"
     lab_name = "pollux"

Why the board must have the name of the lab ? I have expected that it is
only set into lab, that is lab_name = lh.lab_name (if we want to have it).


DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de

More information about the tbot mailing list