AMDEPYC / AMDEPYC/sev-certify

sev-verify: Pass parameters to callable steps

オープン
#305 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る
enhancement
主要言語
Python
スター
3
フォーク
7
平均マージ
1日 21時間
マージ済み PR(30日)
8

説明

Follow-up from [PR #283](https://github.com/AMDEPYC/sev-certify/pull/283) - [(review thread from @DGonzalezVillal on `snphost_config_commit.py`)](https://github.com/AMDEPYC/sev-certify/pull/283#pullrequestreview-4986631251).

Callable steps are dispatched by name with no arguments other than the shared `StepContext`. This results in multiple function wrappers for the same function when called from a step. Enable passing parameters so functions may be called directly.

### Suggested Solution
- Add an optional `params: dict` (or similar) to the callable step definition (`BaseStep` / `Step.for_callable` in `sev_verify/models.py`).
- In `run_callable_step` (`sev_verify/runner.py`), pass those params to the handler - e.g. `fn(ctx, **params)` or via a field on `StepContext`, keeping the no-arg form working for existing handlers.

Then collapse the duplicated handlers into single parameterized functions, e.g.
one `verify_guest_report(ctx, *, report, expect_match_reported)`.

コントリビューションガイド

コントリビューションガイドを開く

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。