-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add support for RAUC file parsing #132
base: master
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure if it is a bit too aggressive to already add RAUC support. It is not only about the file format but also about being able to document / test its usage. I'd expect minor differences in comparison with SWUpdate.
Some more open things
- Adding db migrations (as discussed in
aerich
cannot generate migrations #133) - Adjusting documentation
- Exposing image type in UI? Currently the type is stored but never used
- Squash the "[pre-commit.ci]" commit? Or is the idea not to run the code formatting tools and have a lot of those commits on main?
goosebit/updates/swdesc/rauc.py
Outdated
try: | ||
# specified as optional in the RAUC docs | ||
swdesc_attrs["version"] = semver.Version.parse(manifest["update"].get("version") + ".0") | ||
swdesc_attrs["compatibility"] = [{"hw_model": "default", "hw_revision": manifest["update"]["compatible"]}] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Having a hard-coded hw_model "default" means that only a single hardware (platform) is supported to be managed in goosebit. Seems very limiting.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I agree, but I wasn't seeing how multiple types of compatibility would be added in the manifest when looking at the docs. Possible I'm missing something, but my thought was that is someone ran into this specific issue we would need their manifest file for an example of how to do it.
b750b16
to
b624b53
Compare
|
b624b53
to
1c0054c
Compare
Allow parsing of RAUC files using `PySquashFsImage`. DB still needs migration.
Adds migration for DB to add new values.
4a48a30
to
ff3f48e
Compare
I think it is a good idea to support RAUC as long as we don’t have to completely refactor the application at this point. IMHO we should focus on making what we have production-ready and then go from there. |
I agree here. This was relatively easy to throw together, so if we don't want to add this right now I will leave as a draft for reference. |
Another thing I realized today: goosebit does log message parsing (to detect download progress / update status) - this also would require adjustments. However, the parsing ideally gets reduced to only extract the progress. |
Allow parsing of RAUC files using
PySquashFsImage
.Closes #131