Affects Version/s: None
Fix Version/s: None
Days in progress:0
Step 2 (SSH into..) of our "Prepare a Raspberry Pi device" during onboarding looks quick and easy.
However it has shown to cause significant friction because you need to attach a keyboard and monitor in order to set up the networking (at least if wireless) and SSH. This entails physical connections as well as reading docs on what commands to run and make sure they work (on a separate system from what you are configuring).
It is possible to pre-configure networking (wifi) and SSH in the image itself, and this ticket is about making this improvement. The steps are fairly simple and described here: https://hub.mender.io/t/configuring-ssh-uart-and-wifi-access-on-mender-enabled-raspbian-images/2707
These steps will be further simplified after supporting headless setup (
MEN-4117), as we can use the Raspberry Pi official instructions:
In order to make the steps even easier, portable and error-proof during onboarding we can put them in a script and reference how to run it. The on-boarding workflow would be 1) Flash (converted) image 2) Re-insert SD card in laptop 3) Run script, which will change these configurations on the SD card.
- A script that configures a (converted) RPi image to enable SSH and sets wifi configuration (optionally - some cases may want wired)
- The script has a "bootstrap" mode to create an overlay with the necessary files
- It can be used if running mender-convert locally
- Asks for wifi credentials interactively (for simplicity and hiding password from CLI history)
- It is tested with an acceptance test in mender-convert (for Linux only)
- The script has a "deploy" mode to call the previous one, and then move the generated files to the rootfs of a mounted SD card
- It will be used on pre-converted images (for example while on-boarding)
- Tested only manually during our on-boarding weekly testing.
- Script is hosted somewhere for download so it can easily be download and run in one command invocation
- Script supports running on Linux (minimum: Ubuntu) distributions and (ideally) Macintosh (the workstation/laptop used for the SD card flashing)
- Onboarding documentation Step 2, referenced in the beginning is updated to use the script