Open deeplow opened 2 years ago
I am getting a similar issue to https://github.com/freedomofpress/dangerzone/issues/152 but I think that is a consequence of this lack of failure handling.
In short, the instalation fails saying Error: payload does not match any of the supported image formats (oci, oci-archive, dir, docker-archive)
but nothing is communicated via the user interface. It only shows the following error:
After digging runnning the volume instalation command with --log-level debug
I saw this was related to full disk size and expanding it did solve the issue.
All went fine when I changed the root volume from 10GiB to 15GiB.
A way to reproduce this is to have a corrupt container image.
Actually, this is more what an corrupted installer failure looks like when running Dangerzone for the first time:
and then this screen:
This issue happened to my on the dev environment. It's not too concerning. I happened as a consequences of this other one https://github.com/freedomofpress/dangerzone/issues/380.
One other way that improper error handling bites us is when the container image is corrupted (possible only on dev environments).
How to reproduce:
tar
file (e.g. an empty file),gzip
it, and store it as share/container.tar.gz
, andThe user will not see an error in their screen, because we don't handle them:
Another dev has recently bumped into this issue (see https://github.com/freedomofpress/dangerzone/issues/883), which means we should prioritize it. After all, it's not that much work.
Adding it tentatively in the 0.8.0 milestone as a stretch goal.
The
install_container()
method returns false when it fails but none of its calls check the return value.This should also be passed on to the user interface so the user can see the issue.