executor: add the step handler
Metadata
Current evaluation
Merged after two approvals and CI. Adds a step handler to the executor for built-in actions and user scripts, featuring a FIFO-based control API ported from Snapcraft. Added 823 lines across six files.
Suggested action: —
No scores available.
Issue body
The step handler takes care of the execution of a step, using either
a built-in set of actions to be taken, or executing a user-defined
script defined in the part specification. User-defined scripts may also
call the built-in handler for a step by invoking a control utility.
This class implements the built-in handlers and a FIFO-based mechanism
and API to be used by the external control utility to communicate with
the running instance.
The control API server is a direct port of the implementation used in
Snapcraft, and should be refactored later.
Signed-off-by: Claudio Matsuoka <claudio.matsuoka@canonical.com>
- [x] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
-----
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Merged after two approvals and CI. Adds a step handler to the executor for built-in actions and user scripts, featuring a FIFO-based control API ported from Snapcraft. Added 823 lines across six files. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged the executor step handler, enabling built-in actions or user-defined script execution via a FIFO-based control API ported from Snapcraft. Approved after minor discussion on return types, with future refactoring noted. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #66 executor: add part handler (1/2) | craft-parts | merged | Merged: executor part handler implementation. Adds package fetching, unpacking, step execution, and state generation. Approved by two reviewers, passed CI, and modified six files with 695 additions. | |
| #58 executor: add step handler errors | craft-parts | merged | Merged implementation of error classes for executor step handling. Approved by two reviewers, adding 128 lines across two files. The changes formalize step execution error handling and were signed off by maintainer cmatsuoka. | |
| #60 executor: add callbacks | craft-parts | merged | Executor callbacks merged. Approved by two reviewers and passing CI, the change adds 353 lines across five files to run application-specified functions at lifecycle points like before or after steps and execution phases. | |
| #135 executor: add overlay step handling (CRAFT-86) | craft-parts | merged | Merged. Adds overlay step handling to the executor, mounting the overlay stack during builds so parts with overlay visibility can access the filesystem for package installation and user scripts. Approved and passed CI. |