cyberdesk 2.0.0__py3-none-any.whl → 2.1.1__py3-none-any.whl

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.

Potentially problematic release.


This version of cyberdesk might be problematic. Click here for more details.

Files changed (33) hide show
  1. cyberdesk/__init__.py +1 -1
  2. cyberdesk/client.py +480 -25
  3. {cyberdesk-2.0.0.dist-info → cyberdesk-2.1.1.dist-info}/METADATA +1 -1
  4. {cyberdesk-2.0.0.dist-info → cyberdesk-2.1.1.dist-info}/RECORD +33 -16
  5. openapi_client/cyberdesk_cloud_client/api/machines/get_machine_pools_v1_machines_machine_id_pools_get.py +169 -0
  6. openapi_client/cyberdesk_cloud_client/api/machines/list_machines_v1_machines_get.py +53 -0
  7. openapi_client/cyberdesk_cloud_client/api/machines/update_machine_pools_v1_machines_machine_id_pools_put.py +190 -0
  8. openapi_client/cyberdesk_cloud_client/api/pools/__init__.py +1 -0
  9. openapi_client/cyberdesk_cloud_client/api/pools/add_machines_to_pool_v1_pools_pool_id_machines_post.py +186 -0
  10. openapi_client/cyberdesk_cloud_client/api/pools/create_pool_v1_pools_post.py +172 -0
  11. openapi_client/cyberdesk_cloud_client/api/pools/delete_pool_v1_pools_pool_id_delete.py +162 -0
  12. openapi_client/cyberdesk_cloud_client/api/pools/get_pool_v1_pools_pool_id_get.py +185 -0
  13. openapi_client/cyberdesk_cloud_client/api/pools/list_pools_v1_pools_get.py +186 -0
  14. openapi_client/cyberdesk_cloud_client/api/pools/remove_machines_from_pool_v1_pools_pool_id_machines_delete.py +184 -0
  15. openapi_client/cyberdesk_cloud_client/api/pools/update_pool_v1_pools_pool_id_patch.py +186 -0
  16. openapi_client/cyberdesk_cloud_client/api/runs/list_runs_v1_runs_get.py +53 -0
  17. openapi_client/cyberdesk_cloud_client/api/trajectories/list_trajectories_v1_trajectories_get.py +105 -0
  18. openapi_client/cyberdesk_cloud_client/api/workflows/list_workflows_v1_workflows_get.py +105 -0
  19. openapi_client/cyberdesk_cloud_client/models/__init__.py +14 -0
  20. openapi_client/cyberdesk_cloud_client/models/machine_pool_assignment.py +69 -0
  21. openapi_client/cyberdesk_cloud_client/models/machine_pool_update.py +69 -0
  22. openapi_client/cyberdesk_cloud_client/models/machine_response.py +46 -1
  23. openapi_client/cyberdesk_cloud_client/models/paginated_response_pool_response.py +97 -0
  24. openapi_client/cyberdesk_cloud_client/models/pool_create.py +82 -0
  25. openapi_client/cyberdesk_cloud_client/models/pool_response.py +137 -0
  26. openapi_client/cyberdesk_cloud_client/models/pool_update.py +92 -0
  27. openapi_client/cyberdesk_cloud_client/models/pool_with_machines.py +162 -0
  28. openapi_client/cyberdesk_cloud_client/models/run_bulk_create.py +40 -0
  29. openapi_client/cyberdesk_cloud_client/models/run_create.py +40 -0
  30. openapi_client/cyberdesk_cloud_client/models/run_response.py +39 -0
  31. {cyberdesk-2.0.0.dist-info → cyberdesk-2.1.1.dist-info}/WHEEL +0 -0
  32. {cyberdesk-2.0.0.dist-info → cyberdesk-2.1.1.dist-info}/licenses/LICENSE +0 -0
  33. {cyberdesk-2.0.0.dist-info → cyberdesk-2.1.1.dist-info}/top_level.txt +0 -0
@@ -23,12 +23,15 @@ class RunCreate:
23
23
  workflow_id (UUID):
24
24
  machine_id (Union[None, UUID, Unset]): Machine ID. If not provided, an available machine will be automatically
25
25
  selected.
26
+ pool_ids (Union[None, Unset, list[UUID]]): Pool IDs to filter available machines. Machine must belong to all of
27
+ these pools (intersection). Ignored when machine_id is provided.
26
28
  input_values (Union['RunCreateInputValuesType0', None, Unset]): Input values for workflow variables
27
29
  file_inputs (Union[None, Unset, list['FileInput']]): Files to upload to the machine
28
30
  """
29
31
 
30
32
  workflow_id: UUID
31
33
  machine_id: Union[None, UUID, Unset] = UNSET
34
+ pool_ids: Union[None, Unset, list[UUID]] = UNSET
32
35
  input_values: Union["RunCreateInputValuesType0", None, Unset] = UNSET
33
36
  file_inputs: Union[None, Unset, list["FileInput"]] = UNSET
34
37
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
@@ -46,6 +49,18 @@ class RunCreate:
46
49
  else:
47
50
  machine_id = self.machine_id
48
51
 
52
+ pool_ids: Union[None, Unset, list[str]]
53
+ if isinstance(self.pool_ids, Unset):
54
+ pool_ids = UNSET
55
+ elif isinstance(self.pool_ids, list):
56
+ pool_ids = []
57
+ for pool_ids_type_0_item_data in self.pool_ids:
58
+ pool_ids_type_0_item = str(pool_ids_type_0_item_data)
59
+ pool_ids.append(pool_ids_type_0_item)
60
+
61
+ else:
62
+ pool_ids = self.pool_ids
63
+
49
64
  input_values: Union[None, Unset, dict[str, Any]]
50
65
  if isinstance(self.input_values, Unset):
51
66
  input_values = UNSET
@@ -75,6 +90,8 @@ class RunCreate:
75
90
  )
76
91
  if machine_id is not UNSET:
77
92
  field_dict["machine_id"] = machine_id
93
+ if pool_ids is not UNSET:
94
+ field_dict["pool_ids"] = pool_ids
78
95
  if input_values is not UNSET:
79
96
  field_dict["input_values"] = input_values
80
97
  if file_inputs is not UNSET:
@@ -107,6 +124,28 @@ class RunCreate:
107
124
 
108
125
  machine_id = _parse_machine_id(d.pop("machine_id", UNSET))
109
126
 
127
+ def _parse_pool_ids(data: object) -> Union[None, Unset, list[UUID]]:
128
+ if data is None:
129
+ return data
130
+ if isinstance(data, Unset):
131
+ return data
132
+ try:
133
+ if not isinstance(data, list):
134
+ raise TypeError()
135
+ pool_ids_type_0 = []
136
+ _pool_ids_type_0 = data
137
+ for pool_ids_type_0_item_data in _pool_ids_type_0:
138
+ pool_ids_type_0_item = UUID(pool_ids_type_0_item_data)
139
+
140
+ pool_ids_type_0.append(pool_ids_type_0_item)
141
+
142
+ return pool_ids_type_0
143
+ except: # noqa: E722
144
+ pass
145
+ return cast(Union[None, Unset, list[UUID]], data)
146
+
147
+ pool_ids = _parse_pool_ids(d.pop("pool_ids", UNSET))
148
+
110
149
  def _parse_input_values(data: object) -> Union["RunCreateInputValuesType0", None, Unset]:
111
150
  if data is None:
112
151
  return data
@@ -149,6 +188,7 @@ class RunCreate:
149
188
  run_create = cls(
150
189
  workflow_id=workflow_id,
151
190
  machine_id=machine_id,
191
+ pool_ids=pool_ids,
152
192
  input_values=input_values,
153
193
  file_inputs=file_inputs,
154
194
  )
@@ -37,6 +37,7 @@ class RunResponse:
37
37
  created_at (datetime.datetime):
38
38
  user_id (Union[None, UUID, Unset]):
39
39
  organization_id (Union[None, Unset, str]):
40
+ pool_ids (Union[None, Unset, list[UUID]]):
40
41
  """
41
42
 
42
43
  workflow_id: UUID
@@ -52,6 +53,7 @@ class RunResponse:
52
53
  created_at: datetime.datetime
53
54
  user_id: Union[None, UUID, Unset] = UNSET
54
55
  organization_id: Union[None, Unset, str] = UNSET
56
+ pool_ids: Union[None, Unset, list[UUID]] = UNSET
55
57
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
56
58
 
57
59
  def to_dict(self) -> dict[str, Any]:
@@ -129,6 +131,18 @@ class RunResponse:
129
131
  else:
130
132
  organization_id = self.organization_id
131
133
 
134
+ pool_ids: Union[None, Unset, list[str]]
135
+ if isinstance(self.pool_ids, Unset):
136
+ pool_ids = UNSET
137
+ elif isinstance(self.pool_ids, list):
138
+ pool_ids = []
139
+ for pool_ids_type_0_item_data in self.pool_ids:
140
+ pool_ids_type_0_item = str(pool_ids_type_0_item_data)
141
+ pool_ids.append(pool_ids_type_0_item)
142
+
143
+ else:
144
+ pool_ids = self.pool_ids
145
+
132
146
  field_dict: dict[str, Any] = {}
133
147
  field_dict.update(self.additional_properties)
134
148
  field_dict.update(
@@ -150,6 +164,8 @@ class RunResponse:
150
164
  field_dict["user_id"] = user_id
151
165
  if organization_id is not UNSET:
152
166
  field_dict["organization_id"] = organization_id
167
+ if pool_ids is not UNSET:
168
+ field_dict["pool_ids"] = pool_ids
153
169
 
154
170
  return field_dict
155
171
 
@@ -306,6 +322,28 @@ class RunResponse:
306
322
 
307
323
  organization_id = _parse_organization_id(d.pop("organization_id", UNSET))
308
324
 
325
+ def _parse_pool_ids(data: object) -> Union[None, Unset, list[UUID]]:
326
+ if data is None:
327
+ return data
328
+ if isinstance(data, Unset):
329
+ return data
330
+ try:
331
+ if not isinstance(data, list):
332
+ raise TypeError()
333
+ pool_ids_type_0 = []
334
+ _pool_ids_type_0 = data
335
+ for pool_ids_type_0_item_data in _pool_ids_type_0:
336
+ pool_ids_type_0_item = UUID(pool_ids_type_0_item_data)
337
+
338
+ pool_ids_type_0.append(pool_ids_type_0_item)
339
+
340
+ return pool_ids_type_0
341
+ except: # noqa: E722
342
+ pass
343
+ return cast(Union[None, Unset, list[UUID]], data)
344
+
345
+ pool_ids = _parse_pool_ids(d.pop("pool_ids", UNSET))
346
+
309
347
  run_response = cls(
310
348
  workflow_id=workflow_id,
311
349
  machine_id=machine_id,
@@ -320,6 +358,7 @@ class RunResponse:
320
358
  created_at=created_at,
321
359
  user_id=user_id,
322
360
  organization_id=organization_id,
361
+ pool_ids=pool_ids,
323
362
  )
324
363
 
325
364
  run_response.additional_properties = d