repo: key management refactor
Metadata
Current evaluation
Merged a key management refactor that decouples logic into a new AptKeyManager class. Enforces 40-character key IDs, updates schema validation, and adjusts asset search paths. Approved, passed CI, and increased test coverage by 0.10%.
Suggested action: —
No scores available.
Issue body
- Decouple key management from _deb.Ubuntu, introducing a new
apt_key_manager.AptKeyManager class.
- Improve unit test coverage of key management.
- Pivot to enforcing the 40-character key ID. Update the
schema and package repository validation checks to
enforce this. Update the spread tests to comply.
- Update the key asset search to require matching keys to
be found in snap/keys/12345678.asc, where 12345678 is
the first eight characters of the key ID. Update the
schema and package repository validation checks to
enforce this. Update the spread tests to comply.
This functionality should finalize key management for the
stabilization of package-repositories, with the exception of
a related change to ensure all key assets are used.
Signed-off-by: Chris Patterson <chris.patterson@canonical.com>
- [ ] Have you followed the [guidelines for contributing](https://github.com/snapcore/snapcraft/blob/master/CONTRIBUTING.md)?
- [ ] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
- [ ] Have you successfully run `./runtests.sh static`?
- [ ] Have you successfully run `./runtests.sh tests/unit`?
-----
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Merged a key management refactor that decouples logic into a new AptKeyManager class. Enforces 40-character key IDs, updates schema validation, and adjusts asset search paths. Approved, passed CI, and increased test coverage by 0.10%. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | PR #3359 merged, refactoring key management into AptKeyManager and decoupling it from _deb.Ubuntu. It enforces 40-character key IDs, updates schema validation, and improves test coverage. The changes finalize package-repositories key management. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged a key management refactor decoupling logic into AptKeyManager, enforcing 40-character key IDs, and updating validation. This finalizes package-repositories stabilization and increases test coverage by 0.10%. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #29 repo: replace "apt-key" with "gpg" to handle keys | craft-archives | merged | Merged update replacing the deprecated apt-key command with gpg for repository key management. Adds integration tests, removes an obsolete mock, and resolves CRAFT-1626. Approved by reviewers, passed CI checks, and increased test coverage by 0.03%. | |
| #255 refactor: remove unnecessary local loading of apt public key | fetch-service | merged | Merged following approval and passing CI. Removes unnecessary local apt public key loading since the key is now provided via inspector configuration. Rebased on main before merge. |