feat: add async pod snapshot support to Python SDK#563
feat: add async pod snapshot support to Python SDK#563AndyJCai wants to merge 1 commit intokubernetes-sigs:mainfrom
Conversation
Port GKE Pod Snapshot capabilities from the sync client to the async SDK: - AsyncSnapshotEngine with create/list/delete/delete_all operations - AsyncSandboxWithSnapshotSupport with suspend/resume/is_suspended - AsyncPodSnapshotSandboxClient with lazy CRD verification - Async utility functions for watch/wait operations - Fix pod name cache staleness on resume (sync + async) Made-with: Cursor
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: AndyJCai The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
✅ Deploy Preview for agent-sandbox canceled.
|
|
Hi @AndyJCai. Thanks for your PR. I'm waiting for a kubernetes-sigs member to verify that this patch is reasonable to test. If it is, they should reply with Regular contributors should join the org to skip this step. Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. |
Summary
Ports GKE Pod Snapshot capabilities from the sync client (
PodSnapshotSandboxClient) to the async SDK:AsyncSnapshotEngine— asynccreate,list,delete,delete_all,delete_manual_triggersAsyncSandboxWithSnapshotSupport— asyncsuspend(),resume(),is_suspended(),is_restored_from_snapshot(),terminate()AsyncPodSnapshotSandboxClient— subclass ofAsyncSandboxClientwith lazy CRD verification viaasyncio.Lockkubernetes_asynciowith properawait w.close()cleanupAlso fixes:
_resolve_pod_name()bypasses cache during pollingNone__aenter__CRD check fails