runloop-api-client 0.1.0a16__tar.gz → 0.1.0a18__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- runloop_api_client-0.1.0a18/.release-please-manifest.json +3 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/CHANGELOG.md +19 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/PKG-INFO +1 -1
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/api.md +0 -2
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/pyproject.toml +1 -1
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/_version.py +1 -1
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/resources/devboxes/executions.py +1 -174
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/devbox_async_execution_detail_view.py +1 -1
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/devbox_execute_async_params.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/devboxes/__init__.py +0 -1
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/tests/api_resources/devboxes/test_executions.py +0 -191
- runloop_api_client-0.1.0a16/.release-please-manifest.json +0 -3
- runloop_api_client-0.1.0a16/src/runloop_api_client/resources/deployments.py +0 -488
- runloop_api_client-0.1.0a16/src/runloop_api_client/types/deployment_get_params.py +0 -15
- runloop_api_client-0.1.0a16/src/runloop_api_client/types/deployment_get_response.py +0 -59
- runloop_api_client-0.1.0a16/src/runloop_api_client/types/deployment_logs_response.py +0 -26
- runloop_api_client-0.1.0a16/src/runloop_api_client/types/deployment_redeploy_response.py +0 -50
- runloop_api_client-0.1.0a16/src/runloop_api_client/types/deployment_retrieve_response.py +0 -50
- runloop_api_client-0.1.0a16/src/runloop_api_client/types/deployment_tail_response.py +0 -26
- runloop_api_client-0.1.0a16/src/runloop_api_client/types/devbox_list_response.py +0 -17
- runloop_api_client-0.1.0a16/src/runloop_api_client/types/devbox_read_file_params.py +0 -12
- runloop_api_client-0.1.0a16/src/runloop_api_client/types/devboxes/devbox_async_execution_detail_view.py +0 -37
- runloop_api_client-0.1.0a16/src/runloop_api_client/types/devboxes/devbox_execution_detail_view.py +0 -21
- runloop_api_client-0.1.0a16/src/runloop_api_client/types/devboxes/execution_execute_async_params.py +0 -12
- runloop_api_client-0.1.0a16/src/runloop_api_client/types/functions/invocation_logs_response.py +0 -26
- runloop_api_client-0.1.0a16/tests/api_resources/test_deployments.py +0 -406
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/.gitignore +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/CONTRIBUTING.md +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/LICENSE +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/README.md +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/SECURITY.md +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/bin/check-release-environment +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/bin/publish-pypi +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/examples/.keep +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/mypy.ini +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/noxfile.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/release-please-config.json +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/requirements-dev.lock +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/requirements.lock +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop/lib/.keep +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/__init__.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/_base_client.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/_client.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/_compat.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/_constants.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/_exceptions.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/_files.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/_models.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/_qs.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/_resource.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/_response.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/_streaming.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/_types.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/_utils/__init__.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/_utils/_logs.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/_utils/_proxy.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/_utils/_reflection.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/_utils/_streams.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/_utils/_sync.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/_utils/_transform.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/_utils/_typing.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/_utils/_utils.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/lib/.keep +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/py.typed +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/resources/__init__.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/resources/blueprints.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/resources/devboxes/__init__.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/resources/devboxes/devboxes.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/resources/devboxes/logs.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/resources/functions/__init__.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/resources/functions/functions.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/resources/functions/invocations.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/resources/projects/__init__.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/resources/projects/logs.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/resources/projects/projects.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/__init__.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/blueprint_build_log.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/blueprint_build_logs_list_view.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/blueprint_build_parameters.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/blueprint_create_params.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/blueprint_list_params.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/blueprint_list_view.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/blueprint_preview_params.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/blueprint_preview_view.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/blueprint_view.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/code_mount_parameters.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/code_mount_parameters_param.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/devbox_create_params.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/devbox_create_ssh_key_response.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/devbox_execute_sync_params.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/devbox_execution_detail_view.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/devbox_list_params.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/devbox_list_view.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/devbox_read_file_contents_params.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/devbox_read_file_contents_response.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/devbox_upload_file_params.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/devbox_view.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/devbox_write_file_params.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/devboxes/devbox_logs_list_view.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/devboxes/execution_execute_sync_params.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/devboxes/execution_retrieve_params.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/function_invoke_async_params.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/function_invoke_sync_params.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/function_list_view.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/functions/__init__.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/functions/function_invocation_list_view.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/functions/invocation_list_params.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/project_list_view.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/projects/__init__.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/resource_size.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/shared/__init__.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/shared/function_invocation_execution_detail_view.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/src/runloop_api_client/types/shared/project_logs_view.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/tests/__init__.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/tests/api_resources/__init__.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/tests/api_resources/devboxes/__init__.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/tests/api_resources/devboxes/test_logs.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/tests/api_resources/functions/__init__.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/tests/api_resources/functions/test_invocations.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/tests/api_resources/projects/__init__.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/tests/api_resources/projects/test_logs.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/tests/api_resources/test_blueprints.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/tests/api_resources/test_devboxes.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/tests/api_resources/test_functions.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/tests/api_resources/test_projects.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/tests/conftest.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/tests/sample_file.txt +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/tests/test_client.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/tests/test_deepcopy.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/tests/test_extract_files.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/tests/test_files.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/tests/test_models.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/tests/test_qs.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/tests/test_required_args.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/tests/test_response.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/tests/test_streaming.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/tests/test_transform.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/tests/test_utils/test_proxy.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/tests/test_utils/test_typing.py +0 -0
- {runloop_api_client-0.1.0a16 → runloop_api_client-0.1.0a18}/tests/utils.py +0 -0
|
@@ -1,5 +1,24 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.1.0-alpha.18 (2024-08-28)
|
|
4
|
+
|
|
5
|
+
Full Changelog: [v0.1.0-alpha.17...v0.1.0-alpha.18](https://github.com/runloopai/api-client-python/compare/v0.1.0-alpha.17...v0.1.0-alpha.18)
|
|
6
|
+
|
|
7
|
+
### Features
|
|
8
|
+
|
|
9
|
+
* **api:** OpenAPI spec update via Stainless API ([#136](https://github.com/runloopai/api-client-python/issues/136)) ([ff032bf](https://github.com/runloopai/api-client-python/commit/ff032bfe0559d9057ff6c890349b5d002a60e6e6))
|
|
10
|
+
|
|
11
|
+
## 0.1.0-alpha.17 (2024-08-27)
|
|
12
|
+
|
|
13
|
+
Full Changelog: [v0.1.0-alpha.16...v0.1.0-alpha.17](https://github.com/runloopai/api-client-python/compare/v0.1.0-alpha.16...v0.1.0-alpha.17)
|
|
14
|
+
|
|
15
|
+
### Features
|
|
16
|
+
|
|
17
|
+
* **api:** OpenAPI spec update via Stainless API ([#130](https://github.com/runloopai/api-client-python/issues/130)) ([fc8ef2f](https://github.com/runloopai/api-client-python/commit/fc8ef2f0b7510d5f368b5d0a12be0fcca1079f14))
|
|
18
|
+
* **api:** OpenAPI spec update via Stainless API ([#132](https://github.com/runloopai/api-client-python/issues/132)) ([29725a4](https://github.com/runloopai/api-client-python/commit/29725a4d63e38ef1f12cd19ead545cbb33a9e338))
|
|
19
|
+
* **api:** OpenAPI spec update via Stainless API ([#133](https://github.com/runloopai/api-client-python/issues/133)) ([9e05c97](https://github.com/runloopai/api-client-python/commit/9e05c97d9bf083d4356b71a141c988422484e6f5))
|
|
20
|
+
* **api:** OpenAPI spec update via Stainless API ([#134](https://github.com/runloopai/api-client-python/issues/134)) ([4c3fd59](https://github.com/runloopai/api-client-python/commit/4c3fd59f4c2e4a0bd87b7539b6cc37979bd4594e))
|
|
21
|
+
|
|
3
22
|
## 0.1.0-alpha.16 (2024-08-26)
|
|
4
23
|
|
|
5
24
|
Full Changelog: [v0.1.0-alpha.15...v0.1.0-alpha.16](https://github.com/runloopai/api-client-python/compare/v0.1.0-alpha.15...v0.1.0-alpha.16)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: runloop_api_client
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.0a18
|
|
4
4
|
Summary: The official Python library for the runloop API
|
|
5
5
|
Project-URL: Homepage, https://github.com/runloopai/api-client-python
|
|
6
6
|
Project-URL: Repository, https://github.com/runloopai/api-client-python
|
|
@@ -89,10 +89,8 @@ Methods:
|
|
|
89
89
|
Methods:
|
|
90
90
|
|
|
91
91
|
- <code title="get /v1/devboxes/{id}/executions/{execution_id}">client.devboxes.executions.<a href="./src/runloop_api_client/resources/devboxes/executions.py">retrieve</a>(execution_id, \*, id, \*\*<a href="src/runloop_api_client/types/devboxes/execution_retrieve_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devbox_async_execution_detail_view.py">DevboxAsyncExecutionDetailView</a></code>
|
|
92
|
-
- <code title="post /v1/devboxes/{id}/executions/execute_async">client.devboxes.executions.<a href="./src/runloop_api_client/resources/devboxes/executions.py">execute_async</a>(id, \*\*<a href="src/runloop_api_client/types/devboxes/execution_execute_async_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devbox_async_execution_detail_view.py">DevboxAsyncExecutionDetailView</a></code>
|
|
93
92
|
- <code title="post /v1/devboxes/{id}/execute_sync">client.devboxes.executions.<a href="./src/runloop_api_client/resources/devboxes/executions.py">execute_sync</a>(id, \*\*<a href="src/runloop_api_client/types/devboxes/execution_execute_sync_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devbox_execution_detail_view.py">DevboxExecutionDetailView</a></code>
|
|
94
93
|
- <code title="post /v1/devboxes/{id}/executions/{execution_id}/kill">client.devboxes.executions.<a href="./src/runloop_api_client/resources/devboxes/executions.py">kill</a>(execution_id, \*, id) -> <a href="./src/runloop_api_client/types/devbox_async_execution_detail_view.py">DevboxAsyncExecutionDetailView</a></code>
|
|
95
|
-
- <code title="get /v1/devboxes/{id}/executions/{execution_id}/logs">client.devboxes.executions.<a href="./src/runloop_api_client/resources/devboxes/executions.py">logs</a>(execution_id, \*, id) -> <a href="./src/runloop_api_client/types/devboxes/devbox_logs_list_view.py">DevboxLogsListView</a></code>
|
|
96
94
|
|
|
97
95
|
# Functions
|
|
98
96
|
|
|
@@ -18,9 +18,8 @@ from ..._response import (
|
|
|
18
18
|
async_to_streamed_response_wrapper,
|
|
19
19
|
)
|
|
20
20
|
from ..._base_client import make_request_options
|
|
21
|
-
from ...types.devboxes import execution_retrieve_params, execution_execute_sync_params
|
|
21
|
+
from ...types.devboxes import execution_retrieve_params, execution_execute_sync_params
|
|
22
22
|
from ...types.devbox_execution_detail_view import DevboxExecutionDetailView
|
|
23
|
-
from ...types.devboxes.devbox_logs_list_view import DevboxLogsListView
|
|
24
23
|
from ...types.devbox_async_execution_detail_view import DevboxAsyncExecutionDetailView
|
|
25
24
|
|
|
26
25
|
__all__ = ["ExecutionsResource", "AsyncExecutionsResource"]
|
|
@@ -78,43 +77,6 @@ class ExecutionsResource(SyncAPIResource):
|
|
|
78
77
|
cast_to=DevboxAsyncExecutionDetailView,
|
|
79
78
|
)
|
|
80
79
|
|
|
81
|
-
def execute_async(
|
|
82
|
-
self,
|
|
83
|
-
id: str,
|
|
84
|
-
*,
|
|
85
|
-
command: str | NotGiven = NOT_GIVEN,
|
|
86
|
-
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
87
|
-
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
88
|
-
extra_headers: Headers | None = None,
|
|
89
|
-
extra_query: Query | None = None,
|
|
90
|
-
extra_body: Body | None = None,
|
|
91
|
-
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
|
|
92
|
-
) -> DevboxAsyncExecutionDetailView:
|
|
93
|
-
"""
|
|
94
|
-
Asynchronously execute a command on a devbox
|
|
95
|
-
|
|
96
|
-
Args:
|
|
97
|
-
command: The command to execute on the Devbox.
|
|
98
|
-
|
|
99
|
-
extra_headers: Send extra headers
|
|
100
|
-
|
|
101
|
-
extra_query: Add additional query parameters to the request
|
|
102
|
-
|
|
103
|
-
extra_body: Add additional JSON properties to the request
|
|
104
|
-
|
|
105
|
-
timeout: Override the client-level default timeout for this request, in seconds
|
|
106
|
-
"""
|
|
107
|
-
if not id:
|
|
108
|
-
raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
|
|
109
|
-
return self._post(
|
|
110
|
-
f"/v1/devboxes/{id}/executions/execute_async",
|
|
111
|
-
body=maybe_transform({"command": command}, execution_execute_async_params.ExecutionExecuteAsyncParams),
|
|
112
|
-
options=make_request_options(
|
|
113
|
-
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
|
114
|
-
),
|
|
115
|
-
cast_to=DevboxAsyncExecutionDetailView,
|
|
116
|
-
)
|
|
117
|
-
|
|
118
80
|
def execute_sync(
|
|
119
81
|
self,
|
|
120
82
|
id: str,
|
|
@@ -188,42 +150,6 @@ class ExecutionsResource(SyncAPIResource):
|
|
|
188
150
|
cast_to=DevboxAsyncExecutionDetailView,
|
|
189
151
|
)
|
|
190
152
|
|
|
191
|
-
def logs(
|
|
192
|
-
self,
|
|
193
|
-
execution_id: str,
|
|
194
|
-
*,
|
|
195
|
-
id: str,
|
|
196
|
-
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
197
|
-
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
198
|
-
extra_headers: Headers | None = None,
|
|
199
|
-
extra_query: Query | None = None,
|
|
200
|
-
extra_body: Body | None = None,
|
|
201
|
-
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
|
|
202
|
-
) -> DevboxLogsListView:
|
|
203
|
-
"""
|
|
204
|
-
Get all logs from a Devbox execution by id.
|
|
205
|
-
|
|
206
|
-
Args:
|
|
207
|
-
extra_headers: Send extra headers
|
|
208
|
-
|
|
209
|
-
extra_query: Add additional query parameters to the request
|
|
210
|
-
|
|
211
|
-
extra_body: Add additional JSON properties to the request
|
|
212
|
-
|
|
213
|
-
timeout: Override the client-level default timeout for this request, in seconds
|
|
214
|
-
"""
|
|
215
|
-
if not id:
|
|
216
|
-
raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
|
|
217
|
-
if not execution_id:
|
|
218
|
-
raise ValueError(f"Expected a non-empty value for `execution_id` but received {execution_id!r}")
|
|
219
|
-
return self._get(
|
|
220
|
-
f"/v1/devboxes/{id}/executions/{execution_id}/logs",
|
|
221
|
-
options=make_request_options(
|
|
222
|
-
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
|
223
|
-
),
|
|
224
|
-
cast_to=DevboxLogsListView,
|
|
225
|
-
)
|
|
226
|
-
|
|
227
153
|
|
|
228
154
|
class AsyncExecutionsResource(AsyncAPIResource):
|
|
229
155
|
@cached_property
|
|
@@ -279,45 +205,6 @@ class AsyncExecutionsResource(AsyncAPIResource):
|
|
|
279
205
|
cast_to=DevboxAsyncExecutionDetailView,
|
|
280
206
|
)
|
|
281
207
|
|
|
282
|
-
async def execute_async(
|
|
283
|
-
self,
|
|
284
|
-
id: str,
|
|
285
|
-
*,
|
|
286
|
-
command: str | NotGiven = NOT_GIVEN,
|
|
287
|
-
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
288
|
-
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
289
|
-
extra_headers: Headers | None = None,
|
|
290
|
-
extra_query: Query | None = None,
|
|
291
|
-
extra_body: Body | None = None,
|
|
292
|
-
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
|
|
293
|
-
) -> DevboxAsyncExecutionDetailView:
|
|
294
|
-
"""
|
|
295
|
-
Asynchronously execute a command on a devbox
|
|
296
|
-
|
|
297
|
-
Args:
|
|
298
|
-
command: The command to execute on the Devbox.
|
|
299
|
-
|
|
300
|
-
extra_headers: Send extra headers
|
|
301
|
-
|
|
302
|
-
extra_query: Add additional query parameters to the request
|
|
303
|
-
|
|
304
|
-
extra_body: Add additional JSON properties to the request
|
|
305
|
-
|
|
306
|
-
timeout: Override the client-level default timeout for this request, in seconds
|
|
307
|
-
"""
|
|
308
|
-
if not id:
|
|
309
|
-
raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
|
|
310
|
-
return await self._post(
|
|
311
|
-
f"/v1/devboxes/{id}/executions/execute_async",
|
|
312
|
-
body=await async_maybe_transform(
|
|
313
|
-
{"command": command}, execution_execute_async_params.ExecutionExecuteAsyncParams
|
|
314
|
-
),
|
|
315
|
-
options=make_request_options(
|
|
316
|
-
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
|
317
|
-
),
|
|
318
|
-
cast_to=DevboxAsyncExecutionDetailView,
|
|
319
|
-
)
|
|
320
|
-
|
|
321
208
|
async def execute_sync(
|
|
322
209
|
self,
|
|
323
210
|
id: str,
|
|
@@ -393,42 +280,6 @@ class AsyncExecutionsResource(AsyncAPIResource):
|
|
|
393
280
|
cast_to=DevboxAsyncExecutionDetailView,
|
|
394
281
|
)
|
|
395
282
|
|
|
396
|
-
async def logs(
|
|
397
|
-
self,
|
|
398
|
-
execution_id: str,
|
|
399
|
-
*,
|
|
400
|
-
id: str,
|
|
401
|
-
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
402
|
-
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
403
|
-
extra_headers: Headers | None = None,
|
|
404
|
-
extra_query: Query | None = None,
|
|
405
|
-
extra_body: Body | None = None,
|
|
406
|
-
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
|
|
407
|
-
) -> DevboxLogsListView:
|
|
408
|
-
"""
|
|
409
|
-
Get all logs from a Devbox execution by id.
|
|
410
|
-
|
|
411
|
-
Args:
|
|
412
|
-
extra_headers: Send extra headers
|
|
413
|
-
|
|
414
|
-
extra_query: Add additional query parameters to the request
|
|
415
|
-
|
|
416
|
-
extra_body: Add additional JSON properties to the request
|
|
417
|
-
|
|
418
|
-
timeout: Override the client-level default timeout for this request, in seconds
|
|
419
|
-
"""
|
|
420
|
-
if not id:
|
|
421
|
-
raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
|
|
422
|
-
if not execution_id:
|
|
423
|
-
raise ValueError(f"Expected a non-empty value for `execution_id` but received {execution_id!r}")
|
|
424
|
-
return await self._get(
|
|
425
|
-
f"/v1/devboxes/{id}/executions/{execution_id}/logs",
|
|
426
|
-
options=make_request_options(
|
|
427
|
-
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
|
428
|
-
),
|
|
429
|
-
cast_to=DevboxLogsListView,
|
|
430
|
-
)
|
|
431
|
-
|
|
432
283
|
|
|
433
284
|
class ExecutionsResourceWithRawResponse:
|
|
434
285
|
def __init__(self, executions: ExecutionsResource) -> None:
|
|
@@ -437,18 +288,12 @@ class ExecutionsResourceWithRawResponse:
|
|
|
437
288
|
self.retrieve = to_raw_response_wrapper(
|
|
438
289
|
executions.retrieve,
|
|
439
290
|
)
|
|
440
|
-
self.execute_async = to_raw_response_wrapper(
|
|
441
|
-
executions.execute_async,
|
|
442
|
-
)
|
|
443
291
|
self.execute_sync = to_raw_response_wrapper(
|
|
444
292
|
executions.execute_sync,
|
|
445
293
|
)
|
|
446
294
|
self.kill = to_raw_response_wrapper(
|
|
447
295
|
executions.kill,
|
|
448
296
|
)
|
|
449
|
-
self.logs = to_raw_response_wrapper(
|
|
450
|
-
executions.logs,
|
|
451
|
-
)
|
|
452
297
|
|
|
453
298
|
|
|
454
299
|
class AsyncExecutionsResourceWithRawResponse:
|
|
@@ -458,18 +303,12 @@ class AsyncExecutionsResourceWithRawResponse:
|
|
|
458
303
|
self.retrieve = async_to_raw_response_wrapper(
|
|
459
304
|
executions.retrieve,
|
|
460
305
|
)
|
|
461
|
-
self.execute_async = async_to_raw_response_wrapper(
|
|
462
|
-
executions.execute_async,
|
|
463
|
-
)
|
|
464
306
|
self.execute_sync = async_to_raw_response_wrapper(
|
|
465
307
|
executions.execute_sync,
|
|
466
308
|
)
|
|
467
309
|
self.kill = async_to_raw_response_wrapper(
|
|
468
310
|
executions.kill,
|
|
469
311
|
)
|
|
470
|
-
self.logs = async_to_raw_response_wrapper(
|
|
471
|
-
executions.logs,
|
|
472
|
-
)
|
|
473
312
|
|
|
474
313
|
|
|
475
314
|
class ExecutionsResourceWithStreamingResponse:
|
|
@@ -479,18 +318,12 @@ class ExecutionsResourceWithStreamingResponse:
|
|
|
479
318
|
self.retrieve = to_streamed_response_wrapper(
|
|
480
319
|
executions.retrieve,
|
|
481
320
|
)
|
|
482
|
-
self.execute_async = to_streamed_response_wrapper(
|
|
483
|
-
executions.execute_async,
|
|
484
|
-
)
|
|
485
321
|
self.execute_sync = to_streamed_response_wrapper(
|
|
486
322
|
executions.execute_sync,
|
|
487
323
|
)
|
|
488
324
|
self.kill = to_streamed_response_wrapper(
|
|
489
325
|
executions.kill,
|
|
490
326
|
)
|
|
491
|
-
self.logs = to_streamed_response_wrapper(
|
|
492
|
-
executions.logs,
|
|
493
|
-
)
|
|
494
327
|
|
|
495
328
|
|
|
496
329
|
class AsyncExecutionsResourceWithStreamingResponse:
|
|
@@ -500,15 +333,9 @@ class AsyncExecutionsResourceWithStreamingResponse:
|
|
|
500
333
|
self.retrieve = async_to_streamed_response_wrapper(
|
|
501
334
|
executions.retrieve,
|
|
502
335
|
)
|
|
503
|
-
self.execute_async = async_to_streamed_response_wrapper(
|
|
504
|
-
executions.execute_async,
|
|
505
|
-
)
|
|
506
336
|
self.execute_sync = async_to_streamed_response_wrapper(
|
|
507
337
|
executions.execute_sync,
|
|
508
338
|
)
|
|
509
339
|
self.kill = async_to_streamed_response_wrapper(
|
|
510
340
|
executions.kill,
|
|
511
341
|
)
|
|
512
|
-
self.logs = async_to_streamed_response_wrapper(
|
|
513
|
-
executions.logs,
|
|
514
|
-
)
|
|
@@ -21,7 +21,7 @@ class DevboxAsyncExecutionDetailView(BaseModel):
|
|
|
21
21
|
This field will remain unset until the execution has completed.
|
|
22
22
|
"""
|
|
23
23
|
|
|
24
|
-
status: Optional[Literal["running", "
|
|
24
|
+
status: Optional[Literal["running", "completed", "canceled"]] = None
|
|
25
25
|
"""Current status of the execution."""
|
|
26
26
|
|
|
27
27
|
stderr: Optional[str] = None
|
|
File without changes
|
|
@@ -5,4 +5,3 @@ from __future__ import annotations
|
|
|
5
5
|
from .devbox_logs_list_view import DevboxLogsListView as DevboxLogsListView
|
|
6
6
|
from .execution_retrieve_params import ExecutionRetrieveParams as ExecutionRetrieveParams
|
|
7
7
|
from .execution_execute_sync_params import ExecutionExecuteSyncParams as ExecutionExecuteSyncParams
|
|
8
|
-
from .execution_execute_async_params import ExecutionExecuteAsyncParams as ExecutionExecuteAsyncParams
|
|
@@ -10,9 +10,6 @@ import pytest
|
|
|
10
10
|
from tests.utils import assert_matches_type
|
|
11
11
|
from runloop_api_client import Runloop, AsyncRunloop
|
|
12
12
|
from runloop_api_client.types import DevboxExecutionDetailView, DevboxAsyncExecutionDetailView
|
|
13
|
-
from runloop_api_client.types.devboxes import (
|
|
14
|
-
DevboxLogsListView,
|
|
15
|
-
)
|
|
16
13
|
|
|
17
14
|
base_url = os.environ.get("TEST_API_BASE_URL", "http://127.0.0.1:4010")
|
|
18
15
|
|
|
@@ -77,52 +74,6 @@ class TestExecutions:
|
|
|
77
74
|
id="id",
|
|
78
75
|
)
|
|
79
76
|
|
|
80
|
-
@parametrize
|
|
81
|
-
def test_method_execute_async(self, client: Runloop) -> None:
|
|
82
|
-
execution = client.devboxes.executions.execute_async(
|
|
83
|
-
id="id",
|
|
84
|
-
)
|
|
85
|
-
assert_matches_type(DevboxAsyncExecutionDetailView, execution, path=["response"])
|
|
86
|
-
|
|
87
|
-
@parametrize
|
|
88
|
-
def test_method_execute_async_with_all_params(self, client: Runloop) -> None:
|
|
89
|
-
execution = client.devboxes.executions.execute_async(
|
|
90
|
-
id="id",
|
|
91
|
-
command="command",
|
|
92
|
-
)
|
|
93
|
-
assert_matches_type(DevboxAsyncExecutionDetailView, execution, path=["response"])
|
|
94
|
-
|
|
95
|
-
@parametrize
|
|
96
|
-
def test_raw_response_execute_async(self, client: Runloop) -> None:
|
|
97
|
-
response = client.devboxes.executions.with_raw_response.execute_async(
|
|
98
|
-
id="id",
|
|
99
|
-
)
|
|
100
|
-
|
|
101
|
-
assert response.is_closed is True
|
|
102
|
-
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
|
103
|
-
execution = response.parse()
|
|
104
|
-
assert_matches_type(DevboxAsyncExecutionDetailView, execution, path=["response"])
|
|
105
|
-
|
|
106
|
-
@parametrize
|
|
107
|
-
def test_streaming_response_execute_async(self, client: Runloop) -> None:
|
|
108
|
-
with client.devboxes.executions.with_streaming_response.execute_async(
|
|
109
|
-
id="id",
|
|
110
|
-
) as response:
|
|
111
|
-
assert not response.is_closed
|
|
112
|
-
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
|
113
|
-
|
|
114
|
-
execution = response.parse()
|
|
115
|
-
assert_matches_type(DevboxAsyncExecutionDetailView, execution, path=["response"])
|
|
116
|
-
|
|
117
|
-
assert cast(Any, response.is_closed) is True
|
|
118
|
-
|
|
119
|
-
@parametrize
|
|
120
|
-
def test_path_params_execute_async(self, client: Runloop) -> None:
|
|
121
|
-
with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"):
|
|
122
|
-
client.devboxes.executions.with_raw_response.execute_async(
|
|
123
|
-
id="",
|
|
124
|
-
)
|
|
125
|
-
|
|
126
77
|
@parametrize
|
|
127
78
|
def test_method_execute_sync(self, client: Runloop) -> None:
|
|
128
79
|
execution = client.devboxes.executions.execute_sync(
|
|
@@ -217,54 +168,6 @@ class TestExecutions:
|
|
|
217
168
|
id="id",
|
|
218
169
|
)
|
|
219
170
|
|
|
220
|
-
@parametrize
|
|
221
|
-
def test_method_logs(self, client: Runloop) -> None:
|
|
222
|
-
execution = client.devboxes.executions.logs(
|
|
223
|
-
execution_id="execution_id",
|
|
224
|
-
id="id",
|
|
225
|
-
)
|
|
226
|
-
assert_matches_type(DevboxLogsListView, execution, path=["response"])
|
|
227
|
-
|
|
228
|
-
@parametrize
|
|
229
|
-
def test_raw_response_logs(self, client: Runloop) -> None:
|
|
230
|
-
response = client.devboxes.executions.with_raw_response.logs(
|
|
231
|
-
execution_id="execution_id",
|
|
232
|
-
id="id",
|
|
233
|
-
)
|
|
234
|
-
|
|
235
|
-
assert response.is_closed is True
|
|
236
|
-
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
|
237
|
-
execution = response.parse()
|
|
238
|
-
assert_matches_type(DevboxLogsListView, execution, path=["response"])
|
|
239
|
-
|
|
240
|
-
@parametrize
|
|
241
|
-
def test_streaming_response_logs(self, client: Runloop) -> None:
|
|
242
|
-
with client.devboxes.executions.with_streaming_response.logs(
|
|
243
|
-
execution_id="execution_id",
|
|
244
|
-
id="id",
|
|
245
|
-
) as response:
|
|
246
|
-
assert not response.is_closed
|
|
247
|
-
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
|
248
|
-
|
|
249
|
-
execution = response.parse()
|
|
250
|
-
assert_matches_type(DevboxLogsListView, execution, path=["response"])
|
|
251
|
-
|
|
252
|
-
assert cast(Any, response.is_closed) is True
|
|
253
|
-
|
|
254
|
-
@parametrize
|
|
255
|
-
def test_path_params_logs(self, client: Runloop) -> None:
|
|
256
|
-
with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"):
|
|
257
|
-
client.devboxes.executions.with_raw_response.logs(
|
|
258
|
-
execution_id="execution_id",
|
|
259
|
-
id="",
|
|
260
|
-
)
|
|
261
|
-
|
|
262
|
-
with pytest.raises(ValueError, match=r"Expected a non-empty value for `execution_id` but received ''"):
|
|
263
|
-
client.devboxes.executions.with_raw_response.logs(
|
|
264
|
-
execution_id="",
|
|
265
|
-
id="id",
|
|
266
|
-
)
|
|
267
|
-
|
|
268
171
|
|
|
269
172
|
class TestAsyncExecutions:
|
|
270
173
|
parametrize = pytest.mark.parametrize("async_client", [False, True], indirect=True, ids=["loose", "strict"])
|
|
@@ -326,52 +229,6 @@ class TestAsyncExecutions:
|
|
|
326
229
|
id="id",
|
|
327
230
|
)
|
|
328
231
|
|
|
329
|
-
@parametrize
|
|
330
|
-
async def test_method_execute_async(self, async_client: AsyncRunloop) -> None:
|
|
331
|
-
execution = await async_client.devboxes.executions.execute_async(
|
|
332
|
-
id="id",
|
|
333
|
-
)
|
|
334
|
-
assert_matches_type(DevboxAsyncExecutionDetailView, execution, path=["response"])
|
|
335
|
-
|
|
336
|
-
@parametrize
|
|
337
|
-
async def test_method_execute_async_with_all_params(self, async_client: AsyncRunloop) -> None:
|
|
338
|
-
execution = await async_client.devboxes.executions.execute_async(
|
|
339
|
-
id="id",
|
|
340
|
-
command="command",
|
|
341
|
-
)
|
|
342
|
-
assert_matches_type(DevboxAsyncExecutionDetailView, execution, path=["response"])
|
|
343
|
-
|
|
344
|
-
@parametrize
|
|
345
|
-
async def test_raw_response_execute_async(self, async_client: AsyncRunloop) -> None:
|
|
346
|
-
response = await async_client.devboxes.executions.with_raw_response.execute_async(
|
|
347
|
-
id="id",
|
|
348
|
-
)
|
|
349
|
-
|
|
350
|
-
assert response.is_closed is True
|
|
351
|
-
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
|
352
|
-
execution = await response.parse()
|
|
353
|
-
assert_matches_type(DevboxAsyncExecutionDetailView, execution, path=["response"])
|
|
354
|
-
|
|
355
|
-
@parametrize
|
|
356
|
-
async def test_streaming_response_execute_async(self, async_client: AsyncRunloop) -> None:
|
|
357
|
-
async with async_client.devboxes.executions.with_streaming_response.execute_async(
|
|
358
|
-
id="id",
|
|
359
|
-
) as response:
|
|
360
|
-
assert not response.is_closed
|
|
361
|
-
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
|
362
|
-
|
|
363
|
-
execution = await response.parse()
|
|
364
|
-
assert_matches_type(DevboxAsyncExecutionDetailView, execution, path=["response"])
|
|
365
|
-
|
|
366
|
-
assert cast(Any, response.is_closed) is True
|
|
367
|
-
|
|
368
|
-
@parametrize
|
|
369
|
-
async def test_path_params_execute_async(self, async_client: AsyncRunloop) -> None:
|
|
370
|
-
with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"):
|
|
371
|
-
await async_client.devboxes.executions.with_raw_response.execute_async(
|
|
372
|
-
id="",
|
|
373
|
-
)
|
|
374
|
-
|
|
375
232
|
@parametrize
|
|
376
233
|
async def test_method_execute_sync(self, async_client: AsyncRunloop) -> None:
|
|
377
234
|
execution = await async_client.devboxes.executions.execute_sync(
|
|
@@ -465,51 +322,3 @@ class TestAsyncExecutions:
|
|
|
465
322
|
execution_id="",
|
|
466
323
|
id="id",
|
|
467
324
|
)
|
|
468
|
-
|
|
469
|
-
@parametrize
|
|
470
|
-
async def test_method_logs(self, async_client: AsyncRunloop) -> None:
|
|
471
|
-
execution = await async_client.devboxes.executions.logs(
|
|
472
|
-
execution_id="execution_id",
|
|
473
|
-
id="id",
|
|
474
|
-
)
|
|
475
|
-
assert_matches_type(DevboxLogsListView, execution, path=["response"])
|
|
476
|
-
|
|
477
|
-
@parametrize
|
|
478
|
-
async def test_raw_response_logs(self, async_client: AsyncRunloop) -> None:
|
|
479
|
-
response = await async_client.devboxes.executions.with_raw_response.logs(
|
|
480
|
-
execution_id="execution_id",
|
|
481
|
-
id="id",
|
|
482
|
-
)
|
|
483
|
-
|
|
484
|
-
assert response.is_closed is True
|
|
485
|
-
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
|
486
|
-
execution = await response.parse()
|
|
487
|
-
assert_matches_type(DevboxLogsListView, execution, path=["response"])
|
|
488
|
-
|
|
489
|
-
@parametrize
|
|
490
|
-
async def test_streaming_response_logs(self, async_client: AsyncRunloop) -> None:
|
|
491
|
-
async with async_client.devboxes.executions.with_streaming_response.logs(
|
|
492
|
-
execution_id="execution_id",
|
|
493
|
-
id="id",
|
|
494
|
-
) as response:
|
|
495
|
-
assert not response.is_closed
|
|
496
|
-
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
|
497
|
-
|
|
498
|
-
execution = await response.parse()
|
|
499
|
-
assert_matches_type(DevboxLogsListView, execution, path=["response"])
|
|
500
|
-
|
|
501
|
-
assert cast(Any, response.is_closed) is True
|
|
502
|
-
|
|
503
|
-
@parametrize
|
|
504
|
-
async def test_path_params_logs(self, async_client: AsyncRunloop) -> None:
|
|
505
|
-
with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"):
|
|
506
|
-
await async_client.devboxes.executions.with_raw_response.logs(
|
|
507
|
-
execution_id="execution_id",
|
|
508
|
-
id="",
|
|
509
|
-
)
|
|
510
|
-
|
|
511
|
-
with pytest.raises(ValueError, match=r"Expected a non-empty value for `execution_id` but received ''"):
|
|
512
|
-
await async_client.devboxes.executions.with_raw_response.logs(
|
|
513
|
-
execution_id="",
|
|
514
|
-
id="id",
|
|
515
|
-
)
|