|
20 | 20 | devbox_write_file_params, |
21 | 21 | devbox_upload_file_params, |
22 | 22 | devbox_execute_sync_params, |
| 23 | + devbox_execute_async_params, |
23 | 24 | devbox_read_file_contents_params, |
24 | 25 | ) |
25 | 26 | from ..._types import NOT_GIVEN, Body, Query, Headers, NotGiven, FileTypes |
|
50 | 51 | from ...types.devbox_list_view import DevboxListView |
51 | 52 | from ...types.devbox_execution_detail_view import DevboxExecutionDetailView |
52 | 53 | from ...types.devbox_create_ssh_key_response import DevboxCreateSSHKeyResponse |
| 54 | +from ...types.devbox_async_execution_detail_view import DevboxAsyncExecutionDetailView |
53 | 55 |
|
54 | 56 | __all__ = ["DevboxesResource", "AsyncDevboxesResource"] |
55 | 57 |
|
@@ -269,6 +271,43 @@ def create_ssh_key( |
269 | 271 | cast_to=DevboxCreateSSHKeyResponse, |
270 | 272 | ) |
271 | 273 |
|
| 274 | + def execute_async( |
| 275 | + self, |
| 276 | + id: str, |
| 277 | + *, |
| 278 | + command: str | NotGiven = NOT_GIVEN, |
| 279 | + # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. |
| 280 | + # The extra values given here take precedence over values defined on the client or passed to this method. |
| 281 | + extra_headers: Headers | None = None, |
| 282 | + extra_query: Query | None = None, |
| 283 | + extra_body: Body | None = None, |
| 284 | + timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN, |
| 285 | + ) -> DevboxAsyncExecutionDetailView: |
| 286 | + """ |
| 287 | + Asynchronously execute a command on a devbox |
| 288 | +
|
| 289 | + Args: |
| 290 | + command: The command to execute on the Devbox. |
| 291 | +
|
| 292 | + extra_headers: Send extra headers |
| 293 | +
|
| 294 | + extra_query: Add additional query parameters to the request |
| 295 | +
|
| 296 | + extra_body: Add additional JSON properties to the request |
| 297 | +
|
| 298 | + timeout: Override the client-level default timeout for this request, in seconds |
| 299 | + """ |
| 300 | + if not id: |
| 301 | + raise ValueError(f"Expected a non-empty value for `id` but received {id!r}") |
| 302 | + return self._post( |
| 303 | + f"/v1/devboxes/{id}/execute_async", |
| 304 | + body=maybe_transform({"command": command}, devbox_execute_async_params.DevboxExecuteAsyncParams), |
| 305 | + options=make_request_options( |
| 306 | + extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout |
| 307 | + ), |
| 308 | + cast_to=DevboxAsyncExecutionDetailView, |
| 309 | + ) |
| 310 | + |
272 | 311 | def execute_sync( |
273 | 312 | self, |
274 | 313 | id: str, |
@@ -690,6 +729,45 @@ async def create_ssh_key( |
690 | 729 | cast_to=DevboxCreateSSHKeyResponse, |
691 | 730 | ) |
692 | 731 |
|
| 732 | + async def execute_async( |
| 733 | + self, |
| 734 | + id: str, |
| 735 | + *, |
| 736 | + command: str | NotGiven = NOT_GIVEN, |
| 737 | + # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. |
| 738 | + # The extra values given here take precedence over values defined on the client or passed to this method. |
| 739 | + extra_headers: Headers | None = None, |
| 740 | + extra_query: Query | None = None, |
| 741 | + extra_body: Body | None = None, |
| 742 | + timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN, |
| 743 | + ) -> DevboxAsyncExecutionDetailView: |
| 744 | + """ |
| 745 | + Asynchronously execute a command on a devbox |
| 746 | +
|
| 747 | + Args: |
| 748 | + command: The command to execute on the Devbox. |
| 749 | +
|
| 750 | + extra_headers: Send extra headers |
| 751 | +
|
| 752 | + extra_query: Add additional query parameters to the request |
| 753 | +
|
| 754 | + extra_body: Add additional JSON properties to the request |
| 755 | +
|
| 756 | + timeout: Override the client-level default timeout for this request, in seconds |
| 757 | + """ |
| 758 | + if not id: |
| 759 | + raise ValueError(f"Expected a non-empty value for `id` but received {id!r}") |
| 760 | + return await self._post( |
| 761 | + f"/v1/devboxes/{id}/execute_async", |
| 762 | + body=await async_maybe_transform( |
| 763 | + {"command": command}, devbox_execute_async_params.DevboxExecuteAsyncParams |
| 764 | + ), |
| 765 | + options=make_request_options( |
| 766 | + extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout |
| 767 | + ), |
| 768 | + cast_to=DevboxAsyncExecutionDetailView, |
| 769 | + ) |
| 770 | + |
693 | 771 | async def execute_sync( |
694 | 772 | self, |
695 | 773 | id: str, |
@@ -912,6 +990,9 @@ def __init__(self, devboxes: DevboxesResource) -> None: |
912 | 990 | self.create_ssh_key = to_raw_response_wrapper( |
913 | 991 | devboxes.create_ssh_key, |
914 | 992 | ) |
| 993 | + self.execute_async = to_raw_response_wrapper( |
| 994 | + devboxes.execute_async, |
| 995 | + ) |
915 | 996 | self.execute_sync = to_raw_response_wrapper( |
916 | 997 | devboxes.execute_sync, |
917 | 998 | ) |
@@ -953,6 +1034,9 @@ def __init__(self, devboxes: AsyncDevboxesResource) -> None: |
953 | 1034 | self.create_ssh_key = async_to_raw_response_wrapper( |
954 | 1035 | devboxes.create_ssh_key, |
955 | 1036 | ) |
| 1037 | + self.execute_async = async_to_raw_response_wrapper( |
| 1038 | + devboxes.execute_async, |
| 1039 | + ) |
956 | 1040 | self.execute_sync = async_to_raw_response_wrapper( |
957 | 1041 | devboxes.execute_sync, |
958 | 1042 | ) |
@@ -994,6 +1078,9 @@ def __init__(self, devboxes: DevboxesResource) -> None: |
994 | 1078 | self.create_ssh_key = to_streamed_response_wrapper( |
995 | 1079 | devboxes.create_ssh_key, |
996 | 1080 | ) |
| 1081 | + self.execute_async = to_streamed_response_wrapper( |
| 1082 | + devboxes.execute_async, |
| 1083 | + ) |
997 | 1084 | self.execute_sync = to_streamed_response_wrapper( |
998 | 1085 | devboxes.execute_sync, |
999 | 1086 | ) |
@@ -1035,6 +1122,9 @@ def __init__(self, devboxes: AsyncDevboxesResource) -> None: |
1035 | 1122 | self.create_ssh_key = async_to_streamed_response_wrapper( |
1036 | 1123 | devboxes.create_ssh_key, |
1037 | 1124 | ) |
| 1125 | + self.execute_async = async_to_streamed_response_wrapper( |
| 1126 | + devboxes.execute_async, |
| 1127 | + ) |
1038 | 1128 | self.execute_sync = async_to_streamed_response_wrapper( |
1039 | 1129 | devboxes.execute_sync, |
1040 | 1130 | ) |
|
0 commit comments