canonical / checkbox

Checkbox
https://checkbox.readthedocs.io
GNU General Public License v3.0
30 stars 47 forks source link

bluetooth/detect-output fails on UC24 #1228

Open plars opened 5 months ago

plars commented 5 months ago

Bug Description

bluetooth/detect-output fails on RPI with Ubuntu Core 24 images with the following output:

      rfkill: cannot open /dev/rfkill: Operation not permitted
rfkill: cannot open /dev/rfkill: Operation not permitted

BT hardware not available

The reason this fails seems to be because the bluetooth controller is not powered on before the test starts. If you power it on with something like sudo bluetoothctl power on then the test works fine. For fixing it, it should be sufficient to run this before it starts the test, however it needs to be run as root and the bluetooth/detect-output test currently runs as a normal user.

We didn't have this problem with older images because previously we used to install a tool called "pi-bluetooth" which set a lot of this up. One of the side effects of running the pi-bluetooth snap/deb is that the bluetooth controller would get powered on, but it no longer works on *24 systems, nor is it required now.

To Reproduce

Run the bluetooth tests on a rpi with ubuntu-core 24

Environment

UC24 Raspberry Pi any recent version of checkbox

Relevant log output

rfkill: cannot open /dev/rfkill: Operation not permitted
rfkill: cannot open /dev/rfkill: Operation not permitted

BT hardware not available


### Additional context

_No response_
syncronize-issues-to-jira[bot] commented 5 months ago

Thank you for reporting us your feedback!

The internal ticket has been created: https://warthogs.atlassian.net/browse/CHECKBOX-1437.

This message was autogenerated

baconYao commented 4 months ago

Same symptoms be observed on Baoshan Devices with UC22

Hook25 commented 1 week ago

I think the issue brought up by @baconYao is unrelated. I'm not sure if this is a Checkbox test issue or a provisioning issue. I see this in all core24 rpi envs, so I think it is pretty high prio. @plars do you think the test itself should power on bluetooth?

EDIT: I can confirm that adding _run sudo bluetoothctl power on to the job makes the test pass