feat: add opt-in fallback to FileKeyring
Metadata
Current evaluation
Merged PR #236 in commit 241ade9, adding opt-in FileKeyring fallback when SecretService is unavailable for file-based secret storage.
Resolution: closed resolved
Reason: The approved implementation was merged as commit 241ade9. It allows applications to opt into FileKeyring when the SecretService provider is unavailable, resolving CRAFT-3620.
Evaluated by: mr-cal-bot
No scores available.
Issue body
- [x] Have you followed the guidelines for contributing?
- [x] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
- [x] Have you successfully run `tox`?
Previously, we were falling back to `FileKeyring` if and only if `SecretService` provider was erroring out, not if it was not available at all.
This PR allows applications to opt-in for fallback to use a file to store secrets in a system without `SecretService` provider.
(CRAFT-3620)
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #236 in commit 241ade9, adding opt-in FileKeyring fallback when SecretService is unavailable for file-based secret storage. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged opt-in FileKeyring fallback so applications without a SecretService provider can store secrets in a file (CRAFT-3620). | |
| qwen/qwen3.6-35b-a3b | — | — | Merged: implements opt-in fallback to FileKeyring when SecretService is unavailable, not just erroring. Approved by two reviewers, passed CI, and modified 8 files (+145/-23). |
Update history
No update history recorded yet.
Related work
-
Related To:
canonical/snapcraft#4991
(confidence 90%)
A reviewer identified it as the motivating missing-SecretService scenario.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #119 feat: add file based backend as a fallback | craft-store | merged | Merged PR #119 added a file-based keyring fallback for headless systems, fixing #109 and #58 in commit 60699d1. |