feat: create new snapcraft-pack action
Metadata
Current evaluation
Merged a new snapcraft-pack GitHub Action for automated Snapcraft setup and packaging. Implements upstreamed workflows, cache key improvements, and path variable fixes. Approved by three reviewers, passed all CI checks. README documentation to follow.
Suggested action: —
No scores available.
Issue body
Adds a new action for setting up Snapcraft and then packing a snap, taking _huge_ inspiration from the existing Charmcraft one. The code is identical to Charmcraft other than the following points, which I will hopefully merge into the Charmcraft half soon after this lands:
- "Upstreamed" fetching a snap revision to a repo-private set of "common" workflows
- Rephrased some doc strings to be slightly less jargon-y and slightly more proper English
- Made the `path` variable for `snapcraft/pack` work
- Also hash the `snap/` directory for the cache key (I'm not adding this one to Charmcraft obviously)
Working use of the workflow on Snapcraft: https://github.com/canonical/snapcraft/pull/5898
Outstanding tasks:
- [ ] Add workflow docs to README
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Merged a new snapcraft-pack GitHub Action for automated Snapcraft setup and packaging. Implements upstreamed workflows, cache key improvements, and path variable fixes. Approved by three reviewers, passed all CI checks. README documentation to follow. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged a new snapcraft-pack GitHub Action for building snaps, adapted from Charmcraft. Includes cache key improvements, documentation fixes, and path support. The author force-pushed to clean history and address feedback before merging. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #307 ci: pack snap using craft-actions | imagecraft | merged | Merged. Updated CI pipeline to replace action-build with the craft-actions snapcraft pack action. Approved by two reviewers and passed CI checks. The change updates a single workflow file. | |
| #100 feat(snapcraft/pack): node-based rewrite | craft-actions | merged | Merged a node-based rewrite of the snapcraft/pack action. Resolves the Snapcraft 7 default command issue, adds .comp file support, and includes unit tests. Approved by two reviewers with all CI checks passing across multiple platforms. | |
| #4 snap: introduce initial snap packaging (CRAFT-578) | rockcraft | merged | Merged initial snap packaging implementation (CRAFT-578). Approved by one reviewer, passed CI checks, and added 86 lines across three files. | |
| #4794 feat: allow packing a directory | snapcraft | merged | Merged to restore snapcraft pack directory functionality after a snapcraft 8.2 regression. Approved by two reviewers, passed CI, and resolved issue #4769. |