Skip to content

runsc: introduce programmatic Go client with pause, resume, and state - #16628

Open
zkoopmans wants to merge 1 commit into
google:masterfrom
zkoopmans:runsc-client
Open

zkoopmans wants to merge 1 commit into
google:masterfrom
zkoopmans:runsc-client

Conversation

@zkoopmans

Copy link
Copy Markdown
Contributor

Add the runsc/client package, providing a programmatic Go API to interact with gVisor sandboxes and containers without spawning runsc subprocesses.

This initial foundation PR introduces:

  • Client configuration and root directory management (New, NewFromRootDir, RootDir, Config).
  • Core container lookup operations: Load, List, State, and Spec.
  • Container lifecycle operations: Pause and Resume.
  • Dogfoods the new client in runsc/cmd for pause, resume, and state commands.
  • Exports //runsc/client into the synthetic go branch via //:gopath.

Future follow-up PRs will build incrementally on this foundation to add:

  1. Kill and Delete operations.
  2. Checkpoint and Wait operations.
  3. Restore operation and integration/performance benchmarks.

Add the runsc/client package, providing a programmatic Go API to interact
with gVisor sandboxes and containers without spawning runsc subprocesses.

This initial foundation CL introduces:
- Client configuration and root directory management.
- Core lookup operations: Load, List, State, and Spec.
- Container lifecycle operations: Pause and Resume.
- Dogfoods the new client in runsc/cmd for pause, resume, and state commands.
- Exports //runsc/client into the synthetic go branch via //:gopath.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant