While testing #758 I had a similar experience to #707 when specifying a bogus container image name:
This results in a brief "Http failure response for [...]/api/deploy/create: 400 Bad Request" when you hit the "Install" button:
journalctl -u aquarium just says:
Dec 21 07:52:40 node1 uvicorn[1446]: INFO: 2021-12-21 07:52:40 -- mgr -- Attempt to create a new deployment.
Dec 21 07:52:42 node1 uvicorn[1446]: ERROR: 2021-12-21 07:52:42 -- create -- Unable to create deployment: pre-checks failed:
Dec 21 07:52:42 node1 uvicorn[1446]: ERROR: 2021-12-21 07:52:42 -- mgr -- Error creating a new deployment: Pre-checks failed, unable to create.
The debug log isn't really any more enlightening:
DEBUG: 2021-12-21 07:56:18 -- deploy -- Create new deployment.
INFO: 2021-12-21 07:56:18 -- mgr -- Attempt to create a new deployment.
DEBUG: 2021-12-21 07:56:18 -- create -- Preflight checks: registry='registry.opensuse.org' image='filesystems/ceph/master/.../this-does-not-exist' secure=True
DEBUG: 2021-12-21 07:56:18 -- connectionpool -- Starting new HTTPS connection (1): registry.opensuse.org:443
DEBUG: 2021-12-21 07:56:19 -- connectionpool -- https://registry.opensuse.org:443 "GET /v2/ HTTP/1.1" 200 2
ERROR: 2021-12-21 07:56:19 -- create -- Unable to create deployment: pre-checks failed:
ERROR: 2021-12-21 07:56:19 -- mgr -- Error creating a new deployment: Pre-checks failed, unable to create.
Looking at registry_check() in src/gravel/controllers/containers.py, there seems to be plenty of good error messages attached to the various exceptions that are raised, but these don't seem to make it back into the log file, or to the UI.
Also, semi-related: should we really be splitting the Image URL into "Image registry URL" and "Image Name" in the UI? Wouldn't it be more intuitive to just have the image URL as a single field?
While testing #758 I had a similar experience to #707 when specifying a bogus container image name:
This results in a brief "Http failure response for [...]/api/deploy/create: 400 Bad Request" when you hit the "Install" button:
journalctl -u aquarium
just says:The debug log isn't really any more enlightening:
Looking at
registry_check()
in src/gravel/controllers/containers.py, there seems to be plenty of good error messages attached to the various exceptions that are raised, but these don't seem to make it back into the log file, or to the UI.Also, semi-related: should we really be splitting the Image URL into "Image registry URL" and "Image Name" in the UI? Wouldn't it be more intuitive to just have the image URL as a single field?