FrontPage 

Fuego 1.0 wiki

Login or create account

FrontPage

This is the wiki for version 1.0 of the the Fuego test system.

NOTE: This site refers to an older version of Fuego (version 1.0)

Please see the Fuego Wiki for documentation and information about the latest version of Fuego

Introduction [edit section]

Fuego is a test framework specifically designed for embedded Linux testing.

It supports automated testing of embedded targets from a host system, as it's primary method of test execution.

The quick introduction to Fuego is that it consists of a host/target script engine, with a Jenkins front-end, and over 50 pre-packaged tests, installed in a docker container.

Intro presentation [edit section]

Tim Bird gave a talk introducing Fuego, at Embedded Linux Conference in April 2016, and LinuxCon Japan 2016. The slides were improved a bit for the talk in Japan, but there's only video for the ELC talk (not the LCJ talk). Therefore, here are links to the LCJ slides and the ELC video. The slides are close enough that you should be able to follow along.

The slides from LCJ are available here: Introduction-to-Fuego-LCJ-2016.pdf

And here is the video from ELC: YouTube video

You can find more presentations about Fuego on our Presentations page.

Quickstart [edit section]

Please see the Fuego Quickstart Guide for how to get up an running quickly in Fuego.

Where to download [edit section]

Code for the test framework is available in 2 git repositories:

To use Fuego, you only need to download the first one. It is downloadable with the command.

    git clone https://bitbucket.org/tbird20d/fuego.git

Documentation [edit section]

Resources [edit section]

Mailing list [edit section]

Fuego discussions are held on the fuego mailing list:

Note that this is a new list (as of September 2016). Previously, discussions about Fuego (and its predecessor JTA) were held on the ltsi-dev mailing list:

Vision [edit section]

The purpose of Fuego is to bring the benefits of open source to the testing process.

It can be summed up like this:

Do for testing
what open source has done for coding

There are numerous aspects of testing that are still done in an ad-hoc and company-specific way. Although there are open source test frameworks (such as Jenkins or LAVA), and open source test programs (such as cylictest, LTP, linuxbench, etc.), there are lots of aspects of Linux testing that are not shared.

The purpose of Fuego is to provide a test framework for testing embedded Linux, that is distributed and allows individuals and organizations to easily run their own tests, and at the same time allows people to share their tests and test results with each other.

Historically, test frameworks for embedded Linux have been difficult to set up, and difficult to extend. In cases where a test program was reasonably self-contained, the test system was not easy to to extend. Many Linux test systems are not easily applied in cross or embedded environments. Some very full frameworks are either not viewed as processor-neutral, and are difficult to set up, or are targeted at running tests on a dedicated group of boards or devices.

The vision of open source in general is one of sharing source code and capabilities, to expand the benefits to all participants in the ecosystem. The best way to achieve this is to have mechanisms to easily use the system, and easily share enhancements to the system, so that all participants can use and build on each others efforts.

The goal of Fuego is to provide a framework that any group can install and use themselves, while supporting important features like cross-compilation, host/target test execution, and easy test administration. Test administration consists of starting tests (both manually and automatically), viewing test results, and detecting regressions. Ease of use is critical, to allow testers to use tests that are otherwise difficult to individually set up, configure, and interpret the results from. It is also important to make it very easy to share tests (scripts, configuration, results parsing, and regression detection methods).

Some secondary goals of this project are the ability for 3rd parties to initiate or schedule tests on our hardware, and the ability to share our test results with others.

The use of Jenkins as the core of the test framework already supports many of the primary and secondary goals. The purpose of this project is to augment the Jenkins system to support embedded configurations of Linux, and to provide a place for centralized sharing of test configurations and collateral.

There is no such thing as a "Linux Test distribution". Fuego aims to be this. It intends to provide test programs, scripts to build, deploy and run them, and tools to analyze, track, and visualize test results.

For more details about a high-level vision of open source testing, please see OSS Test Vision.

Other Resources [edit section]

http://elinux.org/Fuego has some historical information about Fuego.

Presentations [edit section]

Fujitsu used the completed test framework, and reported their findings here:

Mitsubishi presented information about the LTSI test framework at Embedded Linux Conference Europe, 2015

Related systems [edit section]

See Other test systems for notes and comparisons

Things to do [edit section]

Looking for something to do on Fuego? See the Fuego To Do List

Help [edit section]

See Help for documentation about this wiki.

TBWiki engine 1.8.3 by Tim Bird