the latest OpenWISP 2020-12 release which was just released today includes the first version of the new Firmware Upgrader module, which at the time of writing supports only OpenWRT and provides the following features:
- Stores information of each upgrade operation which can be seen from the device page
- Automatic retries for recoverable failures (eg: firmware image upload issues because of intermittent internet connection)
- Performs a final check to find out if the upgrade completed successfully or not
- Prevents accidental repeated upgrades
- Single device upgrade
- Mass upgrades
- Possibility to divide firmware images in categories
- REST API
- Possibility of writing custom upgraders for other firmware OSes or for custom OpenWRT based firmwares
- Configurable timeouts
There's still work to do to improve this module, but at least the first version is now available in the official release and we can start collecting feedback.
I publish it here in the hope that it will be useful to some OpenWRT users.