← Back to issue list

parts: add craftctl support

View original Github issue

Metadata

Project
snapcraft
Number
#3677
Type
pull request
State
merged
Author
cmatsuoka
Labels
Created
Updated
Closed

Current evaluation

Merged following approval and passing CI. Implements a craftctl wrapper for craft-parts, defines project variables, and adds adopt-info to project configuration. Diff coverage is 84%.

Suggested action:

No scores available.

Issue body

Add craftctl wrapper to execute the craft-parts utility from the snapcraft snap, and define project variables that can be set using craftctl. Add `adopt-info` to project configuration. - [x] Have you followed the [guidelines for contributing](https://github.com/snapcore/snapcraft/blob/master/CONTRIBUTING.md)? - [x] 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`? ----- CRAFT-964

Evaluation history

Date Model Scores Action Summary
qwen/qwen3.6-35b-a3b Merged following approval and passing CI. Implements a craftctl wrapper for craft-parts, defines project variables, and adds adopt-info to project configuration. Diff coverage is 84%.
qwen3.6-35b-a3b-mtp-q6 Merged into snapcraft/7.0, implementing a craftctl wrapper for craft-parts, defining project variables, and adding adopt-info configuration. Codecov approved the merge despite a minor coverage decrease.
qwen3.6-35b-a3b-mtp-q6 Merged into snapcraft/7.0. Introduces a craftctl wrapper, project variables, and adopt-info configuration support. Despite a minor codecov coverage decrease, the changes were accepted and integrated.

Update history

No update history recorded yet.

Related issues

Issue Project State Summary Similarity
#19 parts: add craftctl support rockcraft merged Merged after reviewer approval. Updated craft-parts to 1.4.1 and enabled craftctl support in step overrides across 16 files. Changes totaled +145/-66 lines. All CI checks passed with no unresolved comments.
86%
#728 parts: update craft-parts and enable craftctl charmcraft merged Merged update to craft-parts 1.4.0, enabling craftctl support. Users can now invoke craftctl default in part scriptlets to execute overridden step handlers. Approved and passed CI checks.
81%
#188 docs: document craftctl and step environment craft-parts merged Merged following approval and passing CI checks. Documentation updated to detail valid craftctl commands and project variable handling. Changes include 137 additions and 4 deletions across three files.
78%
#3636 parts: integrate craft-parts (CRAFT-765) snapcraft merged Merged after reviewer approval and passing CI checks. Integrates craft-parts for part validation and lifecycle processing. Modifies 12 files, adding 369 lines and removing 20, fulfilling CRAFT-765.
75%
#190 craftctl: set variables from parts adopting metadata craft-parts merged Merged. Restricts craftctl variable assignment to the specified part during lifecycle creation, removing the need for an adopting part when project variables are undeclared. Approved, passed CI, and integrated. Author notes future refactoring for validation and scope adjustments.
75%
#5480 docs: migrate 'using craftctl' snapcraft merged Merged documentation migration for 'using craftctl' and updated Craft Parts dependency to align with upstream docs. Approved by three reviewers and passed all CI checks across multiple platforms.
74%
#75 ctl: add ctl protocol client (CRAFT-35) craft-parts merged Merged the ctl protocol client, adding the craft_parts.ctl module and partsctl CLI. Approved by two reviewers and passing CI, the change modifies 8 files (+513/-15) to enable scriptlets to run step handlers and set custom variables.
74%
#3 parts: add parts support (CRAFT-27) rockcraft merged Merged after approval. Integrates craft-parts to add initial parts processing support to Rockcraft. Changes span 11 files with 375 additions and 6 deletions. Zero unresolved comments and passing CI checks.
74%
#367 features: introduce craft-parts features craft-parts merged Successfully merged, introducing configurable features for craft-parts including an optional overlay feature to control action generation. Approved by reviewer, passed CI, and integrated after build retrigger.
72%
#25 parts: add PartsLifecycle support craft-application merged Merged into main following reviewer approval and passing CI. Adds PartsLifecycle support to the parts module, modifying 9 files with 100% test coverage. Addresses CRAFT-1752.
72%