Native support for HawkBit DDI
We would like to have native support for HawkBit DDI APIs to allow SysOTA to update without having to use rauc-hawkbit-updater
in the loop. A lot of the logic can be shared between the existing NetOTA implementation and the ongoing work on the go-hawkbit library.
At minimum, we should be better than the existing C code at:
- Not needing a quirk to delay the reboot after programing the slots
- Reporting success or failure only when the update transaction is over, not immediately after writing the slots
- Having a provisioning story that's better than dropping a config file (bonus)
Doing this correctly will also force some re-organization of what SysOTA configuration looks like. The NetOTA and HawkBit configuration sections should be mutually exclusive. The sysotactl status
command should be able to display HawkBit configuration details.
The reboot quirk should be kept as-is as other software may rely on it this year.