← Back to issue list

executor: add callbacks

View original Github issue

Metadata

Project
craft-parts
Number
#60
Type
pull request
State
merged
Author
cmatsuoka
Labels
—
Created
Updated
Closed

Current evaluation

Merged PR #60 (commit c411e2a7, merge 1ce62324) added the craft_parts/callbacks.py module enabling app-defined functions at executor lifecycle points; it shipped and was extended by later PRs like #1441.

Resolution: closed resolved

Reason: PR #60 by maintainer cmatsuoka was approved and merged into main as commit c411e2a7 (merge commit 1ce62324), adding craft_parts/callbacks.py with prologue/epilogue and pre/post-step hooks. The module persists at HEAD and was later extended (e836fdf8 integration tests, #448, #464, #1441), confirming the change landed.

Evaluated by: mr-cal-bot

No scores available.

Issue body

Callbacks are a mechanism to run application-specified functions at certain points of the lifecycle execution, such as before or after each step is processed, before the execution phase starts, or after the execution phase ends. 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
stealth/space-bunny-alpha — closed resolved Merged PR #60 (commit c411e2a7, merge 1ce62324) added the craft_parts/callbacks.py module enabling app-defined functions at executor lifecycle points; it shipped and was extended by later PRs like #1441.
stealth/space-bunny-alpha — closed resolved Merged PR #60 added executor lifecycle callbacks, allowing application-defined functions to run before or after steps and execution phases. Approved by two reviewers.
qwen/qwen3.6-35b-a3b — — 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.
qwen3.6-35b-a3b-mtp-q6 — — Merged addition of executor callbacks enabling application-specified functions to run at lifecycle points, including before and after each step and execution phase.

Update history

No update history recorded yet.

Related work

  • Related To: canonical/craft-parts#79 (confidence 90%)

    Follow-up merged PR adding integration tests for callbacks and renaming a method (e836fdf8).

  • Related To: canonical/craft-parts#1441 (confidence 80%)

    Later merged PR implementing mid-step callbacks, building on the framework introduced here.

Related issues

Issue Project State Summary Similarity
#66 executor: add part handler (1/2) craft-parts merged Merged in canonical/craft-parts#66 via 98f11c83, adding executor handling for part RUN actions: package fetching/unpacking, step-handler dispatch, and step-state generation.
72%
#59 executor: add the step handler craft-parts merged Merged to main via commit 878dd163, adding craft_parts/executor/step_handler.py (+823/-0, 6 files): built-in step actions, user-script execution, and a FIFO-based control API server ported from Snapcraft.
71%