mawson-rovers / hestia

Hestia is a space-ready heater & temperature measurement system developed by Mawson Rovers in Sydney. Its first mission will demonstrate a novel UTS heatsink design, aboard the Waratah Seed cubesat mission. It is due to launch on a SpaceX rocket in July 2024.
MIT License
1 stars 1 forks source link

Self-update script for Beaglebone software #65

Closed mryall-mawson closed 1 year ago

mryall-mawson commented 1 year ago

Going down to Tech Lab to do software updates is a bit of a pain, so we should add a self-update capability to the code which can pull new releases from GitHub.

mryall-mawson commented 1 year ago

Looking at using this self_update Rust module which seems to have some nice features.

mryall-mawson commented 1 year ago

This is done. Releases are created using package.sh script in the root of the project, then you need to create a release on GitHub manually and upload the tar.gz file from target/release/.

Running uts-update on the Beaglebone will trigger a self-update to pull down the latest release from GitHub, and systemd should restart all the services.

This update mechanism is designed for updating the binaries and webapp code. Other changes are intentionally not supported:

One minor issue with the update code is that it seems to require a description ("body") to be set for the release on GitHub otherwise it doesn't see it. So if uts-update is not picking up a new release, that may be the reason.