← Back to issue list

refactor: make shareable components abstract

View original Github issue

Metadata

Project
craft-actions
Number
#61
Type
pull request
State
merged
Author
bepri
Labels
—
Created
Updated
Closed

Current evaluation

Merged in canonical/craft-actions#61 as commit 43e7369, extracting reusable Rockcraft pack components into common modules for future Node-based Craft Actions.

Resolution: closed resolved

Reason: The PR was merged with three approvals and all CI checks passing, completing the extraction of shareable pack-action components into common modules.

Evaluated by: mr-cal-bot

No scores available.

Issue body

This PR prepares for the creation of other Node-based Craft Actions by refactoring the pieces of Rockcraft's pack action that seemed shareable out into "common" modules. I tried my best to keep the task focused and break up the commits, but frankly this was just a very loud PR. Sorry. I made a temporary repository with two CI runs to validate this: https://github.com/bepri/test-actions/actions The first run was the simplest case, just `rockcraft init` with a standard, optionless call to this action. The second run used an unmaintained base and customized many of the options.

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha — closed resolved Merged in canonical/craft-actions#61 as commit 43e7369, extracting reusable Rockcraft pack components into common modules for future Node-based Craft Actions.
stealth/space-bunny-alpha — closed resolved Merged in canonical/craft-actions#61 after 3 approvals and all CI checks passed; extracted reusable modules from Rockcraft’s pack action for future Node-based Craft Actions.
qwen/qwen3.6-35b-a3b — — Merged after three approvals and passing CI checks. Refactored Rockcraft's pack action into abstract, shareable common modules to support future Node-based Craft Actions, modifying 13 files with a net code reduction.
qwen3.6-35b-a3b-mtp-q6 — — Merged a refactor extracting shareable components from Rockcraft's pack action into abstract common modules. This prepares the codebase for future Node-based Craft Actions, with changes validated via external CI testing.

Update history

No update history recorded yet.

Related issues

Issue Project State Summary Similarity
#1 rockcraft-pack: new action initializing repository craft-actions merged Merged canonical/craft-actions#1, bootstrapping the craft-actions repo with the first action, rockcraft-pack, for building ROCKs with Rockcraft inside GitHub Workflows (+16326/-33 lines, 21 files).
74%
#73 refactor: make rockcraft-pack follow new call conventions craft-actions merged Merged PR #73 (bepri): refactored rockcraft-pack into new call conventions — per-tool actions at <tool>/<action>, tests/dists alongside actions, shared behaviour moved from _common/ to common/, mirroring canonical/starflow#155.
73%