Test binary package system

This page describes a proposed system (as of October 2019) for storing and distributing test binary packages.

A test package (described at Test package system is used for transferring Fuego tests between systems, outside of Fuego's git repository. This is used with the Test server system.

One important aspect of this system is that it is intended to allow someone to run Fuego without a toolchain for their board. They also don't need to have fuego-core/tests installed.

to do [edit section]

Here is a list of things to do for this system:

How to create a binary package [edit section]

The following ftc command can be used to make a binary package using the toolchain for a particular board:
  $ ftc package-test <test> --binary -b <board> [-s spec]

This will place the resulting binary package in the file: /fuego-rw/cache/<toolchain>-<test>-binary-package.ftbp

So, as an example if you ran this command on the board 'local' with test "Functional.hello_world", you would end up creating the binary package: /fuego-rw/cache/x86_64-Functional.hello_world-binary-package.ftbp


Note, the old (direct) method still works:

  $ ftc run-test -b <board> -t <test> -p "pbdm"

schema for test binary package meta-data [edit section]

Here are fields that are needed in the meta-data:

Here are the fields that eventually got used:

{
    "board": "$NODE_NAME",
    "build_host": "$FUEGO_HOST",
    "fuego_core_version": "$FUEGO_CORE_VERSION",
    "fuego_version": "$FUEGO_VERSION",
    "schema_version": "1.0"
    "test_name": "$TESTDIR",
    "testsuite_version": "$TESTSUITE_VERSION",
    "timestamp": "$BUILD_TIMESTAMP",
    "toolchain:": "$TOOLCHAIN",
}

Missing fields:

contents of a test binary package [edit section]

Notes [edit section]

to run a test from the server without any prior test installation [edit section]