Handle unavailable registry more gracefully #2256
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR makes a few changes to the registry controller implementation to attempt to handle an unavailable registry (e.g. invalid signature) more gracefully.
Instead of throwing when the registry fails to update or populate, we return
SnapsRegistryStatus.Unavailable
. This status is meant to indicate to theSnapController
that we can't currently access the latest registry and thus our data might be out of date. For Snaps that don't require allowlisting, this shouldn't be a problem and they will still be installable. If a user is trying to install a Snap that does require allowlisting they are now greeted with a slightly better error message.