This article is part of an ongoing series about how to earn specific Fedora badges. Learn more about the Science badge!
“Science”: What is it?
In short, the Science badge is part of a larger series of badges given to anyone who helps test the Fedora kernel using a set of Python scripts to test for important functionalities of the kernel in your system. Running these tests and uploading the logs to the Kernel Development Team helps improve the kernel by providing useful insight and feedback for the kernel team to analyze. All it takes is running a few scripts, uploading logs, and boom – a new badge!
How do I earn “Science”?
Earning Science requires you to clone a git repository, run a few scripts to test the Fedora kernel on your system, and upload the logs generated by the tests to the log tracker. This began with the Kernel Testing Initiative, pioneered by Fedora contributor Justin Forbes in early 2012.
The purpose of this initiative is to allow you, a user of Fedora, to run regression tests of the kernel in Fedora on your own system and provide an analytical report of the tests to the Fedora Kernel Team. These logs help act as “milestones” and “pointers” for how the Fedora kernel is running out in the real world. There are a lot of different architectures and environments, and this option allows users with all kinds of hardware to easily submit this info (and get a few badges for doing it)!
Clone the git repository
The first step you will need to do is clone the git repository where the kernel test scripts are hosted. To do that, open a terminal and run the following command (this require that you have
git already installed).
$ git clone https://git.fedorahosted.org/git/kernel-tests.git
Once you do this, the scripts will be in a new folder in whatever your present working directory is.
Run the scripts
Now that the scripts are on your system, you can now get started running your regression tests! In the terminal, you can run the default test by executing the script with no arguments.
You can follow the progress of the tests as the script executes. Once it finishes, a log file will automatically be generated in the
logs/ folder. This is the file you will need to get your badge.
If you’re feeling like being adventurous, there are a few other tests you can run.
The stress and performance tests execute a few additional tests in addition to the default tests to help provide more detailed information about your system and how it works with the kernel. Whenever I run kernel tests, I usually run the default set, the stress set, and the performance set. Be warned, the first two tests can take a long time to execute, so if you are planning to do work while the tests are running, you may want to make a cup of coffee instead.
To run the specific tests, you can use the
-t flag followed by the name of the test. For example, let’s say I want to run a performance test.
$ ./runtests.sh -t performance
Note that there is also a destructive test suite. As the name implies, this set of tests does contain some functions and tests that can potentially have devastating effects on your system. In an ideal case, this would not happen, but if the odds are not in your favor, this set of tests can leave you with a broken machine.
If you are running a system with Rawhide or have a spare computer that you don’t care for much, it can help to run the destructive tests on those machines. But it is not advised to run them on a system you depend on or actively use!
Upload your results
Once you finish running tests, it’s time to upload your logs. You can do so via the Kernel Logs app. Uploading the logs will require you to log into the site using your Fedora Account System username and password. After you log in, you will find the page that prompts you to upload new log files.
Upload any logs that were generated from the test or tests that you ran. As soon as you submit the log files, it will be registered in the system, and you will be awarded the badge automatically afterwards.
Congratulations, you have now earned the Science badge!