sanity-check-manual manual
critical
- Image Types:
- basesdk-amd64 / fixedfunction-armhf / fixedfunction-arm64 / fixedfunction-amd64 / hmi-armhf / hmi-arm64 / hmi-amd64 / sdk-amd64
- Image Deployment:
- APT, OSTree
- Type:
- sanity
Description
This test checks that the system bus is up, that a user session is created and that a graphical interface is successfully running in the system, as well as other similar basic services so that a stable and reliable environment can be confirmed before futher tests are executed. Basic functionality: services.
Pre Conditions
- Clone the tests repository from another computer (Note that the branch being tested may change depending on the release, please make sure to clone the correct branch for the release in question):
- Copy the test directory sanity to the target device:
- Log into the target device:
- A second system with a terminal and git available on it is required in order to run the above steps.
- This test must be executed before other tests and even before installing other packages in the image, so the script to execute this test should be fetched from a different machine.
- Since the Apertis image runs sshd by default, you can easily copy this file using the scp utility from the second machine, for this you will need the Apertis image IP, which you can find running the ip command from Apertis:
- Alternatively, you can copy the apertis-tests directory in other ways, for example by using an external storage device, manually mounting the device and copying the folder. It is recommended and expected that you use scp from a second machine.
- Once the apertis-tests folder is available in the Apertis image, follow the execution steps.
- Make sure that no USB memory stick is plugged into the target before starting the test, it will otherwise fail. If you are booting from an USB stick, an error `Failed to start usbmount@dev-sda1.service` will appear which is expected.
$ git clone --branch apertis/v2025 https://gitlab.apertis.org/tests/sanity.git
$ DUT_IP=<device-ip>
$ scp -r sanity user@$DUT_IP:
$ ssh user@$DUT_IP
$ ip addr
Execution Steps
- # Enter test directory:
- # Execute the following command:
$ cd sanity
$ sudo ./sanity-check
Expected
The command should report no failure and its output should be something like this at the end:
+ grep -E ^NAME=("?)Apertis\1$ /etc/os-release
NAME="Apertis"
+ grep -E ^ID=("?)apertis\1$ /etc/os-release
ID=apertis
+ id -u user
+ [ -S /run/user/1000/wayland-0 ]
+ systemctl list-units --failed --no-legend --no-pager --plain
+ [ -n ]
+ set +x
# Sanity check successful
Notes
- IMPORTANT: If this test fails for an image, NO further tests should be executed on that image until the issue is triaged, since this invalidates all test results.
- This test must be executed in an image before running either automated or manual tests.
- This test must be executed on a system with its rootfs on an eMMC storage and not on a USB device. Using a rootfs from a USB device can lead to failures like the systemd service 'usbmount@dev-sda1.service' failing to start since /dev/sda1 is already mounted at /boot/efi.