This contains some small preparations for automated testing via CI and a final commit that implements this. Currently there are two simple test cases (only for BL/AL i.MX8MM):
- Check if U-Boot is running and the U-Boot version can be printed via the console.
- Check if the Linux console is available and the Linux version can be printed.
The test jobs are run on a special GitLab runner with the tag
test that is located on the test server. This runner uses the
labgrid-client container image to interface with the
labgrid-coordinator (also on the test server) and the
labgrid-exporters (on the RPi devices of the individual test stations).
To make sure all tools for testing are available, there is a build job for building a special test image (
image-ked-test) that is then deployed to the test station before running the test cases.
The test pipeline is only run when the CI variable
TESTING is set to
true. We can use this to create a scheduled (nightly) test pipeline that is run out of sync with regular pushes, etc. In the future we can also create different test sets to be run on different occasions.