gcore 0.15.0__py3-none-any.whl → 0.17.0__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 gcore might be problematic. Click here for more details.
- gcore/_client.py +18 -8
- gcore/_version.py +1 -1
- gcore/resources/cdn/audit_log.py +4 -12
- gcore/resources/cdn/cdn.py +130 -39
- gcore/resources/cdn/certificates.py +16 -40
- gcore/resources/cdn/ip_ranges.py +4 -8
- gcore/resources/cdn/{logs/logs.py → logs.py} +13 -53
- gcore/resources/cdn/logs_uploader/configs.py +14 -42
- gcore/resources/cdn/logs_uploader/policies.py +14 -42
- gcore/resources/cdn/logs_uploader/targets.py +14 -42
- gcore/resources/cdn/metrics.py +2 -6
- gcore/resources/cdn/network_capacity.py +2 -6
- gcore/resources/cdn/origin_groups.py +12 -32
- gcore/resources/cdn/resources/resources.py +18 -46
- gcore/resources/cdn/resources/rules.py +12 -36
- gcore/resources/cdn/resources/shield.py +4 -12
- gcore/resources/cdn/rule_templates.py +12 -36
- gcore/resources/cdn/shields.py +2 -6
- gcore/resources/cdn/statistics.py +16 -40
- gcore/resources/cdn/trusted_ca_certificates.py +10 -30
- gcore/resources/cloud/audit_logs.py +2 -6
- gcore/resources/cloud/baremetal/flavors.py +2 -6
- gcore/resources/cloud/baremetal/images.py +2 -6
- gcore/resources/cloud/baremetal/servers.py +14 -18
- gcore/resources/cloud/billing_reservations.py +25 -208
- gcore/resources/cloud/cloud.py +18 -0
- gcore/resources/cloud/cost_reports.py +44 -62
- gcore/resources/cloud/file_shares/access_rules.py +6 -18
- gcore/resources/cloud/file_shares/file_shares.py +126 -42
- gcore/resources/cloud/floating_ips.py +22 -42
- gcore/resources/cloud/gpu_baremetal_clusters/flavors.py +2 -6
- gcore/resources/cloud/gpu_baremetal_clusters/gpu_baremetal_clusters.py +30 -54
- gcore/resources/cloud/gpu_baremetal_clusters/images.py +16 -24
- gcore/resources/cloud/gpu_baremetal_clusters/interfaces.py +2 -6
- gcore/resources/cloud/gpu_baremetal_clusters/servers.py +18 -42
- gcore/resources/cloud/inference/api_keys.py +10 -30
- gcore/resources/cloud/inference/applications/deployments.py +135 -155
- gcore/resources/cloud/inference/applications/templates.py +4 -12
- gcore/resources/cloud/inference/deployments/deployments.py +28 -48
- gcore/resources/cloud/inference/deployments/logs.py +2 -6
- gcore/resources/cloud/inference/flavors.py +4 -12
- gcore/resources/cloud/inference/inference.py +2 -6
- gcore/resources/cloud/inference/registry_credentials.py +10 -30
- gcore/resources/cloud/inference/secrets.py +10 -30
- gcore/resources/cloud/instances/flavors.py +2 -6
- gcore/resources/cloud/instances/images.py +24 -36
- gcore/resources/cloud/instances/instances.py +119 -94
- gcore/resources/cloud/instances/interfaces.py +18 -18
- gcore/resources/cloud/instances/metrics.py +2 -6
- gcore/resources/cloud/ip_ranges.py +2 -6
- gcore/resources/cloud/k8s/clusters/clusters.py +18 -54
- gcore/resources/cloud/k8s/clusters/nodes.py +4 -12
- gcore/resources/cloud/k8s/clusters/pools/nodes.py +4 -12
- gcore/resources/cloud/k8s/clusters/pools/pools.py +12 -36
- gcore/resources/cloud/k8s/flavors.py +2 -6
- gcore/resources/cloud/k8s/k8s.py +2 -6
- gcore/resources/cloud/load_balancers/flavors.py +2 -6
- gcore/resources/cloud/load_balancers/l7_policies/l7_policies.py +22 -30
- gcore/resources/cloud/load_balancers/l7_policies/rules.py +22 -30
- gcore/resources/cloud/load_balancers/listeners.py +38 -46
- gcore/resources/cloud/load_balancers/load_balancers.py +509 -521
- gcore/resources/cloud/load_balancers/metrics.py +8 -12
- gcore/resources/cloud/load_balancers/pools/health_monitors.py +4 -12
- gcore/resources/cloud/load_balancers/pools/members.py +4 -12
- gcore/resources/cloud/load_balancers/pools/pools.py +38 -46
- gcore/resources/cloud/load_balancers/statuses.py +10 -18
- gcore/resources/cloud/networks/networks.py +18 -30
- gcore/resources/cloud/networks/routers.py +14 -42
- gcore/resources/cloud/networks/subnets.py +14 -30
- gcore/resources/cloud/placement_groups.py +16 -24
- gcore/resources/cloud/projects.py +117 -129
- gcore/resources/cloud/quotas/quotas.py +6 -18
- gcore/resources/cloud/quotas/requests.py +8 -24
- gcore/resources/cloud/regions.py +4 -8
- gcore/resources/cloud/registries/artifacts.py +4 -12
- gcore/resources/cloud/registries/registries.py +10 -30
- gcore/resources/cloud/registries/repositories.py +4 -12
- gcore/resources/cloud/registries/tags.py +2 -6
- gcore/resources/cloud/registries/users.py +12 -36
- gcore/resources/cloud/reserved_fixed_ips/reserved_fixed_ips.py +28 -30
- gcore/resources/cloud/reserved_fixed_ips/vip.py +10 -30
- gcore/resources/cloud/secrets.py +12 -24
- gcore/resources/cloud/security_groups/rules.py +6 -18
- gcore/resources/cloud/security_groups/security_groups.py +14 -42
- gcore/resources/cloud/ssh_keys.py +10 -30
- gcore/resources/cloud/tasks.py +36 -33
- gcore/resources/cloud/usage_reports.py +18 -24
- gcore/resources/cloud/users/role_assignments.py +8 -24
- gcore/resources/cloud/volumes.py +47 -61
- gcore/resources/dns/dns.py +4 -8
- gcore/resources/dns/locations.py +8 -20
- gcore/resources/dns/metrics.py +2 -6
- gcore/resources/dns/pickers/pickers.py +2 -2
- gcore/resources/dns/pickers/presets.py +2 -6
- gcore/resources/dns/zones/dnssec.py +4 -12
- gcore/resources/dns/zones/rrsets.py +12 -36
- gcore/resources/dns/zones/zones.py +22 -58
- gcore/resources/fastedge/apps/apps.py +12 -28
- gcore/resources/fastedge/apps/logs.py +2 -6
- gcore/resources/fastedge/binaries.py +8 -24
- gcore/resources/fastedge/fastedge.py +2 -2
- gcore/resources/fastedge/kv_stores.py +10 -22
- gcore/resources/fastedge/secrets.py +12 -36
- gcore/resources/fastedge/statistics.py +4 -12
- gcore/resources/fastedge/templates.py +10 -30
- gcore/resources/iam/api_tokens.py +8 -24
- gcore/resources/iam/iam.py +2 -2
- gcore/resources/iam/users.py +10 -26
- gcore/resources/security/bgp_announces.py +4 -12
- gcore/resources/security/events.py +2 -6
- gcore/resources/security/profile_templates.py +2 -6
- gcore/resources/security/profiles.py +16 -40
- gcore/resources/storage/buckets/buckets.py +6 -18
- gcore/resources/storage/buckets/cors.py +4 -12
- gcore/resources/storage/buckets/lifecycle.py +4 -12
- gcore/resources/storage/buckets/policy.py +6 -18
- gcore/resources/storage/credentials.py +2 -6
- gcore/resources/storage/locations.py +2 -6
- gcore/resources/storage/statistics.py +4 -12
- gcore/resources/storage/storage.py +16 -48
- gcore/resources/streaming/ai_tasks.py +10 -18
- gcore/resources/streaming/broadcasts.py +12 -36
- gcore/resources/streaming/directories.py +10 -30
- gcore/resources/streaming/players.py +12 -28
- gcore/resources/streaming/playlists.py +12 -36
- gcore/resources/streaming/quality_sets.py +4 -12
- gcore/resources/streaming/restreams.py +10 -30
- gcore/resources/streaming/statistics.py +46 -138
- gcore/resources/streaming/streams/overlays.py +12 -36
- gcore/resources/streaming/streams/streams.py +20 -52
- gcore/resources/streaming/videos/subtitles.py +10 -30
- gcore/resources/streaming/videos/videos.py +16 -40
- gcore/resources/waap/advanced_rules.py +2 -6
- gcore/resources/waap/custom_page_sets.py +12 -36
- gcore/resources/waap/domains/advanced_rules.py +12 -36
- gcore/resources/waap/domains/api_discovery.py +12 -36
- gcore/resources/waap/domains/api_path_groups.py +2 -6
- gcore/resources/waap/domains/api_paths.py +10 -30
- gcore/resources/waap/domains/custom_rules.py +14 -42
- gcore/resources/waap/domains/domains.py +12 -32
- gcore/resources/waap/domains/firewall_rules.py +14 -42
- gcore/resources/waap/domains/insight_silences.py +10 -30
- gcore/resources/waap/domains/insights.py +6 -18
- gcore/resources/waap/domains/settings.py +4 -12
- gcore/resources/waap/domains/statistics.py +12 -36
- gcore/resources/waap/insights.py +2 -6
- gcore/resources/waap/ip_info/ip_info.py +16 -48
- gcore/resources/waap/ip_info/metrics.py +2 -6
- gcore/resources/waap/organizations.py +2 -6
- gcore/resources/waap/statistics.py +2 -6
- gcore/resources/waap/tags.py +2 -2
- gcore/resources/waap/waap.py +2 -2
- gcore/types/cdn/__init__.py +3 -0
- gcore/types/cdn/alibaba_regions.py +22 -0
- gcore/types/cdn/aws_regions.py +22 -0
- gcore/types/cdn/cdn_list_purge_statuses_response.py +10 -0
- gcore/types/cdn/cdn_resource.py +1 -1
- gcore/types/cdn/logs_aggregated_stats.py +1 -1
- gcore/types/cdn/resource_create_params.py +1 -1
- gcore/types/cdn/resource_replace_params.py +1 -1
- gcore/types/cdn/resource_update_params.py +1 -1
- gcore/types/cdn/resources/cdn_resource_rule.py +1 -1
- gcore/types/cdn/resources/rule_create_params.py +1 -1
- gcore/types/cdn/resources/rule_replace_params.py +1 -1
- gcore/types/cdn/resources/rule_update_params.py +1 -1
- gcore/types/cdn/rule_template.py +1 -1
- gcore/types/cdn/rule_template_create_params.py +1 -1
- gcore/types/cdn/rule_template_replace_params.py +1 -1
- gcore/types/cdn/rule_template_update_params.py +1 -1
- gcore/types/cloud/__init__.py +2 -1
- gcore/types/cloud/billing_reservation.py +52 -114
- gcore/types/cloud/billing_reservation_list_params.py +4 -42
- gcore/types/cloud/billing_reservations.py +16 -0
- gcore/types/cloud/cost_report_get_aggregated_params.py +2 -2
- gcore/types/cloud/cost_report_get_detailed_params.py +2 -2
- gcore/types/cloud/inference/applications/__init__.py +1 -1
- gcore/types/cloud/inference/applications/{deployment_patch_params.py → deployment_update_params.py} +2 -2
- gcore/types/cloud/instance_list_params.py +1 -1
- gcore/types/cloud/instance_update_params.py +31 -3
- gcore/types/cloud/load_balancer_create_params.py +1 -1
- gcore/types/cloud/load_balancer_listener_detail.py +1 -1
- gcore/types/cloud/load_balancers/listener_create_params.py +1 -1
- gcore/types/cloud/load_balancers/listener_list_params.py +1 -1
- gcore/types/cloud/load_balancers/pool_create_params.py +1 -1
- gcore/types/cloud/load_balancers/pool_list_params.py +1 -1
- gcore/types/cloud/{project_replace_params.py → project_update_params.py} +2 -2
- gcore/types/cloud/task_list_params.py +3 -3
- gcore/types/cloud/usage_report_get_params.py +2 -2
- gcore/types/security/profile_create_params.py +2 -2
- {gcore-0.15.0.dist-info → gcore-0.17.0.dist-info}/METADATA +2 -2
- {gcore-0.15.0.dist-info → gcore-0.17.0.dist-info}/RECORD +193 -195
- gcore/resources/cdn/logs/__init__.py +0 -33
- gcore/resources/cdn/logs/settings.py +0 -1081
- gcore/types/cdn/logs/__init__.py +0 -7
- gcore/types/cdn/logs/log_settings.py +0 -172
- gcore/types/cdn/logs/setting_create_params.py +0 -200
- gcore/types/cdn/logs/setting_update_params.py +0 -200
- {gcore-0.15.0.dist-info → gcore-0.17.0.dist-info}/WHEEL +0 -0
- {gcore-0.15.0.dist-info → gcore-0.17.0.dist-info}/licenses/LICENSE +0 -0
|
@@ -105,9 +105,7 @@ class FloatingIPsResource(SyncAPIResource):
|
|
|
105
105
|
if region_id is None:
|
|
106
106
|
region_id = self._client._get_cloud_region_id_path_param()
|
|
107
107
|
return self._post(
|
|
108
|
-
f"/cloud/v1/floatingips/{project_id}/{region_id}"
|
|
109
|
-
if self._client._base_url_overridden
|
|
110
|
-
else f"https://api.gcore.com//cloud/v1/floatingips/{project_id}/{region_id}",
|
|
108
|
+
f"/cloud/v1/floatingips/{project_id}/{region_id}",
|
|
111
109
|
body=maybe_transform(
|
|
112
110
|
{
|
|
113
111
|
"fixed_ip_address": fixed_ip_address,
|
|
@@ -183,9 +181,7 @@ class FloatingIPsResource(SyncAPIResource):
|
|
|
183
181
|
if not floating_ip_id:
|
|
184
182
|
raise ValueError(f"Expected a non-empty value for `floating_ip_id` but received {floating_ip_id!r}")
|
|
185
183
|
return self._patch(
|
|
186
|
-
f"/cloud/v1/floatingips/{project_id}/{region_id}/{floating_ip_id}"
|
|
187
|
-
if self._client._base_url_overridden
|
|
188
|
-
else f"https://api.gcore.com//cloud/v1/floatingips/{project_id}/{region_id}/{floating_ip_id}",
|
|
184
|
+
f"/cloud/v1/floatingips/{project_id}/{region_id}/{floating_ip_id}",
|
|
189
185
|
body=maybe_transform({"tags": tags}, floating_ip_update_params.FloatingIPUpdateParams),
|
|
190
186
|
options=make_request_options(
|
|
191
187
|
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
|
@@ -239,9 +235,7 @@ class FloatingIPsResource(SyncAPIResource):
|
|
|
239
235
|
if region_id is None:
|
|
240
236
|
region_id = self._client._get_cloud_region_id_path_param()
|
|
241
237
|
return self._get_api_list(
|
|
242
|
-
f"/cloud/v1/floatingips/{project_id}/{region_id}"
|
|
243
|
-
if self._client._base_url_overridden
|
|
244
|
-
else f"https://api.gcore.com//cloud/v1/floatingips/{project_id}/{region_id}",
|
|
238
|
+
f"/cloud/v1/floatingips/{project_id}/{region_id}",
|
|
245
239
|
page=SyncOffsetPage[FloatingIPDetailed],
|
|
246
240
|
options=make_request_options(
|
|
247
241
|
extra_headers=extra_headers,
|
|
@@ -299,9 +293,7 @@ class FloatingIPsResource(SyncAPIResource):
|
|
|
299
293
|
if not floating_ip_id:
|
|
300
294
|
raise ValueError(f"Expected a non-empty value for `floating_ip_id` but received {floating_ip_id!r}")
|
|
301
295
|
return self._delete(
|
|
302
|
-
f"/cloud/v1/floatingips/{project_id}/{region_id}/{floating_ip_id}"
|
|
303
|
-
if self._client._base_url_overridden
|
|
304
|
-
else f"https://api.gcore.com//cloud/v1/floatingips/{project_id}/{region_id}/{floating_ip_id}",
|
|
296
|
+
f"/cloud/v1/floatingips/{project_id}/{region_id}/{floating_ip_id}",
|
|
305
297
|
options=make_request_options(
|
|
306
298
|
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
|
307
299
|
),
|
|
@@ -346,9 +338,7 @@ class FloatingIPsResource(SyncAPIResource):
|
|
|
346
338
|
if not floating_ip_id:
|
|
347
339
|
raise ValueError(f"Expected a non-empty value for `floating_ip_id` but received {floating_ip_id!r}")
|
|
348
340
|
return self._post(
|
|
349
|
-
f"/cloud/v1/floatingips/{project_id}/{region_id}/{floating_ip_id}/assign"
|
|
350
|
-
if self._client._base_url_overridden
|
|
351
|
-
else f"https://api.gcore.com//cloud/v1/floatingips/{project_id}/{region_id}/{floating_ip_id}/assign",
|
|
341
|
+
f"/cloud/v1/floatingips/{project_id}/{region_id}/{floating_ip_id}/assign",
|
|
352
342
|
body=maybe_transform(
|
|
353
343
|
{
|
|
354
344
|
"port_id": port_id,
|
|
@@ -400,9 +390,7 @@ class FloatingIPsResource(SyncAPIResource):
|
|
|
400
390
|
if not floating_ip_id:
|
|
401
391
|
raise ValueError(f"Expected a non-empty value for `floating_ip_id` but received {floating_ip_id!r}")
|
|
402
392
|
return self._get(
|
|
403
|
-
f"/cloud/v1/floatingips/{project_id}/{region_id}/{floating_ip_id}"
|
|
404
|
-
if self._client._base_url_overridden
|
|
405
|
-
else f"https://api.gcore.com//cloud/v1/floatingips/{project_id}/{region_id}/{floating_ip_id}",
|
|
393
|
+
f"/cloud/v1/floatingips/{project_id}/{region_id}/{floating_ip_id}",
|
|
406
394
|
options=make_request_options(
|
|
407
395
|
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
|
408
396
|
),
|
|
@@ -441,9 +429,7 @@ class FloatingIPsResource(SyncAPIResource):
|
|
|
441
429
|
if not floating_ip_id:
|
|
442
430
|
raise ValueError(f"Expected a non-empty value for `floating_ip_id` but received {floating_ip_id!r}")
|
|
443
431
|
return self._post(
|
|
444
|
-
f"/cloud/v1/floatingips/{project_id}/{region_id}/{floating_ip_id}/unassign"
|
|
445
|
-
if self._client._base_url_overridden
|
|
446
|
-
else f"https://api.gcore.com//cloud/v1/floatingips/{project_id}/{region_id}/{floating_ip_id}/unassign",
|
|
432
|
+
f"/cloud/v1/floatingips/{project_id}/{region_id}/{floating_ip_id}/unassign",
|
|
447
433
|
options=make_request_options(
|
|
448
434
|
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
|
449
435
|
),
|
|
@@ -459,6 +445,7 @@ class FloatingIPsResource(SyncAPIResource):
|
|
|
459
445
|
port_id: Optional[str] | Omit = omit,
|
|
460
446
|
tags: Dict[str, str] | Omit = omit,
|
|
461
447
|
polling_interval_seconds: int | Omit = omit,
|
|
448
|
+
polling_timeout_seconds: int | Omit = omit,
|
|
462
449
|
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
|
|
463
450
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
464
451
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
@@ -486,6 +473,7 @@ class FloatingIPsResource(SyncAPIResource):
|
|
|
486
473
|
task_id=response.tasks[0],
|
|
487
474
|
extra_headers=extra_headers,
|
|
488
475
|
polling_interval_seconds=polling_interval_seconds,
|
|
476
|
+
polling_timeout_seconds=polling_timeout_seconds,
|
|
489
477
|
)
|
|
490
478
|
if task.created_resources is None or task.created_resources.floatingips is None:
|
|
491
479
|
raise ValueError("Task completed but created_resources or floatingips is missing")
|
|
@@ -507,6 +495,7 @@ class FloatingIPsResource(SyncAPIResource):
|
|
|
507
495
|
project_id: int | None = None,
|
|
508
496
|
region_id: int | None = None,
|
|
509
497
|
polling_interval_seconds: int | Omit = omit,
|
|
498
|
+
polling_timeout_seconds: int | Omit = omit,
|
|
510
499
|
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
|
|
511
500
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
512
501
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
@@ -532,6 +521,7 @@ class FloatingIPsResource(SyncAPIResource):
|
|
|
532
521
|
task_id=response.tasks[0],
|
|
533
522
|
extra_headers=extra_headers,
|
|
534
523
|
polling_interval_seconds=polling_interval_seconds,
|
|
524
|
+
polling_timeout_seconds=polling_timeout_seconds,
|
|
535
525
|
)
|
|
536
526
|
|
|
537
527
|
|
|
@@ -608,9 +598,7 @@ class AsyncFloatingIPsResource(AsyncAPIResource):
|
|
|
608
598
|
if region_id is None:
|
|
609
599
|
region_id = self._client._get_cloud_region_id_path_param()
|
|
610
600
|
return await self._post(
|
|
611
|
-
f"/cloud/v1/floatingips/{project_id}/{region_id}"
|
|
612
|
-
if self._client._base_url_overridden
|
|
613
|
-
else f"https://api.gcore.com//cloud/v1/floatingips/{project_id}/{region_id}",
|
|
601
|
+
f"/cloud/v1/floatingips/{project_id}/{region_id}",
|
|
614
602
|
body=await async_maybe_transform(
|
|
615
603
|
{
|
|
616
604
|
"fixed_ip_address": fixed_ip_address,
|
|
@@ -686,9 +674,7 @@ class AsyncFloatingIPsResource(AsyncAPIResource):
|
|
|
686
674
|
if not floating_ip_id:
|
|
687
675
|
raise ValueError(f"Expected a non-empty value for `floating_ip_id` but received {floating_ip_id!r}")
|
|
688
676
|
return await self._patch(
|
|
689
|
-
f"/cloud/v1/floatingips/{project_id}/{region_id}/{floating_ip_id}"
|
|
690
|
-
if self._client._base_url_overridden
|
|
691
|
-
else f"https://api.gcore.com//cloud/v1/floatingips/{project_id}/{region_id}/{floating_ip_id}",
|
|
677
|
+
f"/cloud/v1/floatingips/{project_id}/{region_id}/{floating_ip_id}",
|
|
692
678
|
body=await async_maybe_transform({"tags": tags}, floating_ip_update_params.FloatingIPUpdateParams),
|
|
693
679
|
options=make_request_options(
|
|
694
680
|
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
|
@@ -742,9 +728,7 @@ class AsyncFloatingIPsResource(AsyncAPIResource):
|
|
|
742
728
|
if region_id is None:
|
|
743
729
|
region_id = self._client._get_cloud_region_id_path_param()
|
|
744
730
|
return self._get_api_list(
|
|
745
|
-
f"/cloud/v1/floatingips/{project_id}/{region_id}"
|
|
746
|
-
if self._client._base_url_overridden
|
|
747
|
-
else f"https://api.gcore.com//cloud/v1/floatingips/{project_id}/{region_id}",
|
|
731
|
+
f"/cloud/v1/floatingips/{project_id}/{region_id}",
|
|
748
732
|
page=AsyncOffsetPage[FloatingIPDetailed],
|
|
749
733
|
options=make_request_options(
|
|
750
734
|
extra_headers=extra_headers,
|
|
@@ -802,9 +786,7 @@ class AsyncFloatingIPsResource(AsyncAPIResource):
|
|
|
802
786
|
if not floating_ip_id:
|
|
803
787
|
raise ValueError(f"Expected a non-empty value for `floating_ip_id` but received {floating_ip_id!r}")
|
|
804
788
|
return await self._delete(
|
|
805
|
-
f"/cloud/v1/floatingips/{project_id}/{region_id}/{floating_ip_id}"
|
|
806
|
-
if self._client._base_url_overridden
|
|
807
|
-
else f"https://api.gcore.com//cloud/v1/floatingips/{project_id}/{region_id}/{floating_ip_id}",
|
|
789
|
+
f"/cloud/v1/floatingips/{project_id}/{region_id}/{floating_ip_id}",
|
|
808
790
|
options=make_request_options(
|
|
809
791
|
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
|
810
792
|
),
|
|
@@ -849,9 +831,7 @@ class AsyncFloatingIPsResource(AsyncAPIResource):
|
|
|
849
831
|
if not floating_ip_id:
|
|
850
832
|
raise ValueError(f"Expected a non-empty value for `floating_ip_id` but received {floating_ip_id!r}")
|
|
851
833
|
return await self._post(
|
|
852
|
-
f"/cloud/v1/floatingips/{project_id}/{region_id}/{floating_ip_id}/assign"
|
|
853
|
-
if self._client._base_url_overridden
|
|
854
|
-
else f"https://api.gcore.com//cloud/v1/floatingips/{project_id}/{region_id}/{floating_ip_id}/assign",
|
|
834
|
+
f"/cloud/v1/floatingips/{project_id}/{region_id}/{floating_ip_id}/assign",
|
|
855
835
|
body=await async_maybe_transform(
|
|
856
836
|
{
|
|
857
837
|
"port_id": port_id,
|
|
@@ -903,9 +883,7 @@ class AsyncFloatingIPsResource(AsyncAPIResource):
|
|
|
903
883
|
if not floating_ip_id:
|
|
904
884
|
raise ValueError(f"Expected a non-empty value for `floating_ip_id` but received {floating_ip_id!r}")
|
|
905
885
|
return await self._get(
|
|
906
|
-
f"/cloud/v1/floatingips/{project_id}/{region_id}/{floating_ip_id}"
|
|
907
|
-
if self._client._base_url_overridden
|
|
908
|
-
else f"https://api.gcore.com//cloud/v1/floatingips/{project_id}/{region_id}/{floating_ip_id}",
|
|
886
|
+
f"/cloud/v1/floatingips/{project_id}/{region_id}/{floating_ip_id}",
|
|
909
887
|
options=make_request_options(
|
|
910
888
|
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
|
911
889
|
),
|
|
@@ -944,9 +922,7 @@ class AsyncFloatingIPsResource(AsyncAPIResource):
|
|
|
944
922
|
if not floating_ip_id:
|
|
945
923
|
raise ValueError(f"Expected a non-empty value for `floating_ip_id` but received {floating_ip_id!r}")
|
|
946
924
|
return await self._post(
|
|
947
|
-
f"/cloud/v1/floatingips/{project_id}/{region_id}/{floating_ip_id}/unassign"
|
|
948
|
-
if self._client._base_url_overridden
|
|
949
|
-
else f"https://api.gcore.com//cloud/v1/floatingips/{project_id}/{region_id}/{floating_ip_id}/unassign",
|
|
925
|
+
f"/cloud/v1/floatingips/{project_id}/{region_id}/{floating_ip_id}/unassign",
|
|
950
926
|
options=make_request_options(
|
|
951
927
|
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
|
952
928
|
),
|
|
@@ -962,6 +938,7 @@ class AsyncFloatingIPsResource(AsyncAPIResource):
|
|
|
962
938
|
port_id: Optional[str] | Omit = omit,
|
|
963
939
|
tags: Dict[str, str] | Omit = omit,
|
|
964
940
|
polling_interval_seconds: int | Omit = omit,
|
|
941
|
+
polling_timeout_seconds: int | Omit = omit,
|
|
965
942
|
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
|
|
966
943
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
967
944
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
@@ -989,6 +966,7 @@ class AsyncFloatingIPsResource(AsyncAPIResource):
|
|
|
989
966
|
task_id=response.tasks[0],
|
|
990
967
|
extra_headers=extra_headers,
|
|
991
968
|
polling_interval_seconds=polling_interval_seconds,
|
|
969
|
+
polling_timeout_seconds=polling_timeout_seconds,
|
|
992
970
|
)
|
|
993
971
|
if task.created_resources is None or task.created_resources.floatingips is None:
|
|
994
972
|
raise ValueError("Task completed but created_resources or floatingips is missing")
|
|
@@ -1010,6 +988,7 @@ class AsyncFloatingIPsResource(AsyncAPIResource):
|
|
|
1010
988
|
project_id: int | None = None,
|
|
1011
989
|
region_id: int | None = None,
|
|
1012
990
|
polling_interval_seconds: int | Omit = omit,
|
|
991
|
+
polling_timeout_seconds: int | Omit = omit,
|
|
1013
992
|
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
|
|
1014
993
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
1015
994
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
@@ -1035,6 +1014,7 @@ class AsyncFloatingIPsResource(AsyncAPIResource):
|
|
|
1035
1014
|
task_id=response.tasks[0],
|
|
1036
1015
|
extra_headers=extra_headers,
|
|
1037
1016
|
polling_interval_seconds=polling_interval_seconds,
|
|
1017
|
+
polling_timeout_seconds=polling_timeout_seconds,
|
|
1038
1018
|
)
|
|
1039
1019
|
|
|
1040
1020
|
|
|
@@ -80,9 +80,7 @@ class FlavorsResource(SyncAPIResource):
|
|
|
80
80
|
if region_id is None:
|
|
81
81
|
region_id = self._client._get_cloud_region_id_path_param()
|
|
82
82
|
return self._get(
|
|
83
|
-
f"/cloud/v3/gpu/baremetal/{project_id}/{region_id}/flavors"
|
|
84
|
-
if self._client._base_url_overridden
|
|
85
|
-
else f"https://api.gcore.com//cloud/v3/gpu/baremetal/{project_id}/{region_id}/flavors",
|
|
83
|
+
f"/cloud/v3/gpu/baremetal/{project_id}/{region_id}/flavors",
|
|
86
84
|
options=make_request_options(
|
|
87
85
|
extra_headers=extra_headers,
|
|
88
86
|
extra_query=extra_query,
|
|
@@ -159,9 +157,7 @@ class AsyncFlavorsResource(AsyncAPIResource):
|
|
|
159
157
|
if region_id is None:
|
|
160
158
|
region_id = self._client._get_cloud_region_id_path_param()
|
|
161
159
|
return await self._get(
|
|
162
|
-
f"/cloud/v3/gpu/baremetal/{project_id}/{region_id}/flavors"
|
|
163
|
-
if self._client._base_url_overridden
|
|
164
|
-
else f"https://api.gcore.com//cloud/v3/gpu/baremetal/{project_id}/{region_id}/flavors",
|
|
160
|
+
f"/cloud/v3/gpu/baremetal/{project_id}/{region_id}/flavors",
|
|
165
161
|
options=make_request_options(
|
|
166
162
|
extra_headers=extra_headers,
|
|
167
163
|
extra_query=extra_query,
|
|
@@ -158,9 +158,7 @@ class GPUBaremetalClustersResource(SyncAPIResource):
|
|
|
158
158
|
if region_id is None:
|
|
159
159
|
region_id = self._client._get_cloud_region_id_path_param()
|
|
160
160
|
return self._post(
|
|
161
|
-
f"/cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters"
|
|
162
|
-
if self._client._base_url_overridden
|
|
163
|
-
else f"https://api.gcore.com//cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters",
|
|
161
|
+
f"/cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters",
|
|
164
162
|
body=maybe_transform(
|
|
165
163
|
{
|
|
166
164
|
"flavor": flavor,
|
|
@@ -224,9 +222,7 @@ class GPUBaremetalClustersResource(SyncAPIResource):
|
|
|
224
222
|
if region_id is None:
|
|
225
223
|
region_id = self._client._get_cloud_region_id_path_param()
|
|
226
224
|
return self._get_api_list(
|
|
227
|
-
f"/cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters"
|
|
228
|
-
if self._client._base_url_overridden
|
|
229
|
-
else f"https://api.gcore.com//cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters",
|
|
225
|
+
f"/cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters",
|
|
230
226
|
page=SyncOffsetPage[GPUBaremetalCluster],
|
|
231
227
|
options=make_request_options(
|
|
232
228
|
extra_headers=extra_headers,
|
|
@@ -297,9 +293,7 @@ class GPUBaremetalClustersResource(SyncAPIResource):
|
|
|
297
293
|
if not cluster_id:
|
|
298
294
|
raise ValueError(f"Expected a non-empty value for `cluster_id` but received {cluster_id!r}")
|
|
299
295
|
return self._delete(
|
|
300
|
-
f"/cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters/{cluster_id}"
|
|
301
|
-
if self._client._base_url_overridden
|
|
302
|
-
else f"https://api.gcore.com//cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters/{cluster_id}",
|
|
296
|
+
f"/cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters/{cluster_id}",
|
|
303
297
|
options=make_request_options(
|
|
304
298
|
extra_headers=extra_headers,
|
|
305
299
|
extra_query=extra_query,
|
|
@@ -384,9 +378,7 @@ class GPUBaremetalClustersResource(SyncAPIResource):
|
|
|
384
378
|
if not cluster_id:
|
|
385
379
|
raise ValueError(f"Expected a non-empty value for `cluster_id` but received {cluster_id!r}")
|
|
386
380
|
return self._post(
|
|
387
|
-
f"/cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters/{cluster_id}/action"
|
|
388
|
-
if self._client._base_url_overridden
|
|
389
|
-
else f"https://api.gcore.com//cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters/{cluster_id}/action",
|
|
381
|
+
f"/cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters/{cluster_id}/action",
|
|
390
382
|
body=maybe_transform(
|
|
391
383
|
{
|
|
392
384
|
"action": action,
|
|
@@ -438,9 +430,7 @@ class GPUBaremetalClustersResource(SyncAPIResource):
|
|
|
438
430
|
if not cluster_id:
|
|
439
431
|
raise ValueError(f"Expected a non-empty value for `cluster_id` but received {cluster_id!r}")
|
|
440
432
|
return self._get(
|
|
441
|
-
f"/cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters/{cluster_id}"
|
|
442
|
-
if self._client._base_url_overridden
|
|
443
|
-
else f"https://api.gcore.com//cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters/{cluster_id}",
|
|
433
|
+
f"/cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters/{cluster_id}",
|
|
444
434
|
options=make_request_options(
|
|
445
435
|
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
|
446
436
|
),
|
|
@@ -479,9 +469,7 @@ class GPUBaremetalClustersResource(SyncAPIResource):
|
|
|
479
469
|
if not cluster_id:
|
|
480
470
|
raise ValueError(f"Expected a non-empty value for `cluster_id` but received {cluster_id!r}")
|
|
481
471
|
return self._post(
|
|
482
|
-
f"/cloud/v2/ai/clusters/{project_id}/{region_id}/{cluster_id}/powercycle"
|
|
483
|
-
if self._client._base_url_overridden
|
|
484
|
-
else f"https://api.gcore.com//cloud/v2/ai/clusters/{project_id}/{region_id}/{cluster_id}/powercycle",
|
|
472
|
+
f"/cloud/v2/ai/clusters/{project_id}/{region_id}/{cluster_id}/powercycle",
|
|
485
473
|
options=make_request_options(
|
|
486
474
|
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
|
487
475
|
),
|
|
@@ -520,9 +508,7 @@ class GPUBaremetalClustersResource(SyncAPIResource):
|
|
|
520
508
|
if not cluster_id:
|
|
521
509
|
raise ValueError(f"Expected a non-empty value for `cluster_id` but received {cluster_id!r}")
|
|
522
510
|
return self._post(
|
|
523
|
-
f"/cloud/v2/ai/clusters/{project_id}/{region_id}/{cluster_id}/reboot"
|
|
524
|
-
if self._client._base_url_overridden
|
|
525
|
-
else f"https://api.gcore.com//cloud/v2/ai/clusters/{project_id}/{region_id}/{cluster_id}/reboot",
|
|
511
|
+
f"/cloud/v2/ai/clusters/{project_id}/{region_id}/{cluster_id}/reboot",
|
|
526
512
|
options=make_request_options(
|
|
527
513
|
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
|
528
514
|
),
|
|
@@ -574,9 +560,7 @@ class GPUBaremetalClustersResource(SyncAPIResource):
|
|
|
574
560
|
if not cluster_id:
|
|
575
561
|
raise ValueError(f"Expected a non-empty value for `cluster_id` but received {cluster_id!r}")
|
|
576
562
|
return self._post(
|
|
577
|
-
f"/cloud/v1/ai/clusters/gpu/{project_id}/{region_id}/{cluster_id}/rebuild"
|
|
578
|
-
if self._client._base_url_overridden
|
|
579
|
-
else f"https://api.gcore.com//cloud/v1/ai/clusters/gpu/{project_id}/{region_id}/{cluster_id}/rebuild",
|
|
563
|
+
f"/cloud/v1/ai/clusters/gpu/{project_id}/{region_id}/{cluster_id}/rebuild",
|
|
580
564
|
body=maybe_transform(
|
|
581
565
|
{
|
|
582
566
|
"nodes": nodes,
|
|
@@ -628,9 +612,7 @@ class GPUBaremetalClustersResource(SyncAPIResource):
|
|
|
628
612
|
if not cluster_id:
|
|
629
613
|
raise ValueError(f"Expected a non-empty value for `cluster_id` but received {cluster_id!r}")
|
|
630
614
|
return self._post(
|
|
631
|
-
f"/cloud/v1/ai/clusters/gpu/{project_id}/{region_id}/{cluster_id}/resize"
|
|
632
|
-
if self._client._base_url_overridden
|
|
633
|
-
else f"https://api.gcore.com//cloud/v1/ai/clusters/gpu/{project_id}/{region_id}/{cluster_id}/resize",
|
|
615
|
+
f"/cloud/v1/ai/clusters/gpu/{project_id}/{region_id}/{cluster_id}/resize",
|
|
634
616
|
body=maybe_transform(
|
|
635
617
|
{"instances_count": instances_count},
|
|
636
618
|
gpu_baremetal_cluster_resize_params.GPUBaremetalClusterResizeParams,
|
|
@@ -653,6 +635,7 @@ class GPUBaremetalClustersResource(SyncAPIResource):
|
|
|
653
635
|
servers_settings: gpu_baremetal_cluster_create_params.ServersSettings,
|
|
654
636
|
tags: Dict[str, str] | Omit = omit,
|
|
655
637
|
polling_interval_seconds: int | Omit = omit,
|
|
638
|
+
polling_timeout_seconds: int | Omit = omit,
|
|
656
639
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
657
640
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
658
641
|
extra_headers: Headers | None = None,
|
|
@@ -685,6 +668,7 @@ class GPUBaremetalClustersResource(SyncAPIResource):
|
|
|
685
668
|
extra_query=extra_query,
|
|
686
669
|
extra_body=extra_body,
|
|
687
670
|
polling_interval_seconds=polling_interval_seconds,
|
|
671
|
+
polling_timeout_seconds=polling_timeout_seconds,
|
|
688
672
|
)
|
|
689
673
|
if not task.created_resources or not task.created_resources.ai_clusters:
|
|
690
674
|
raise ValueError("No cluster was created")
|
|
@@ -709,6 +693,7 @@ class GPUBaremetalClustersResource(SyncAPIResource):
|
|
|
709
693
|
image_id: Optional[str] | Omit = omit,
|
|
710
694
|
user_data: Optional[str] | Omit = omit,
|
|
711
695
|
polling_interval_seconds: int | Omit = omit,
|
|
696
|
+
polling_timeout_seconds: int | Omit = omit,
|
|
712
697
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
713
698
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
714
699
|
extra_headers: Headers | None = None,
|
|
@@ -739,6 +724,7 @@ class GPUBaremetalClustersResource(SyncAPIResource):
|
|
|
739
724
|
extra_query=extra_query,
|
|
740
725
|
extra_body=extra_body,
|
|
741
726
|
polling_interval_seconds=polling_interval_seconds,
|
|
727
|
+
polling_timeout_seconds=polling_timeout_seconds,
|
|
742
728
|
)
|
|
743
729
|
return self.get( # pyright: ignore[reportDeprecated]
|
|
744
730
|
cluster_id=cluster_id,
|
|
@@ -758,6 +744,7 @@ class GPUBaremetalClustersResource(SyncAPIResource):
|
|
|
758
744
|
region_id: int | None = None,
|
|
759
745
|
instances_count: int,
|
|
760
746
|
polling_interval_seconds: int | Omit = omit,
|
|
747
|
+
polling_timeout_seconds: int | Omit = omit,
|
|
761
748
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
762
749
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
763
750
|
extra_headers: Headers | None = None,
|
|
@@ -786,6 +773,7 @@ class GPUBaremetalClustersResource(SyncAPIResource):
|
|
|
786
773
|
extra_query=extra_query,
|
|
787
774
|
extra_body=extra_body,
|
|
788
775
|
polling_interval_seconds=polling_interval_seconds,
|
|
776
|
+
polling_timeout_seconds=polling_timeout_seconds,
|
|
789
777
|
)
|
|
790
778
|
return self.get( # pyright: ignore[reportDeprecated]
|
|
791
779
|
cluster_id=cluster_id,
|
|
@@ -889,9 +877,7 @@ class AsyncGPUBaremetalClustersResource(AsyncAPIResource):
|
|
|
889
877
|
if region_id is None:
|
|
890
878
|
region_id = self._client._get_cloud_region_id_path_param()
|
|
891
879
|
return await self._post(
|
|
892
|
-
f"/cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters"
|
|
893
|
-
if self._client._base_url_overridden
|
|
894
|
-
else f"https://api.gcore.com//cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters",
|
|
880
|
+
f"/cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters",
|
|
895
881
|
body=await async_maybe_transform(
|
|
896
882
|
{
|
|
897
883
|
"flavor": flavor,
|
|
@@ -955,9 +941,7 @@ class AsyncGPUBaremetalClustersResource(AsyncAPIResource):
|
|
|
955
941
|
if region_id is None:
|
|
956
942
|
region_id = self._client._get_cloud_region_id_path_param()
|
|
957
943
|
return self._get_api_list(
|
|
958
|
-
f"/cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters"
|
|
959
|
-
if self._client._base_url_overridden
|
|
960
|
-
else f"https://api.gcore.com//cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters",
|
|
944
|
+
f"/cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters",
|
|
961
945
|
page=AsyncOffsetPage[GPUBaremetalCluster],
|
|
962
946
|
options=make_request_options(
|
|
963
947
|
extra_headers=extra_headers,
|
|
@@ -1028,9 +1012,7 @@ class AsyncGPUBaremetalClustersResource(AsyncAPIResource):
|
|
|
1028
1012
|
if not cluster_id:
|
|
1029
1013
|
raise ValueError(f"Expected a non-empty value for `cluster_id` but received {cluster_id!r}")
|
|
1030
1014
|
return await self._delete(
|
|
1031
|
-
f"/cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters/{cluster_id}"
|
|
1032
|
-
if self._client._base_url_overridden
|
|
1033
|
-
else f"https://api.gcore.com//cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters/{cluster_id}",
|
|
1015
|
+
f"/cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters/{cluster_id}",
|
|
1034
1016
|
options=make_request_options(
|
|
1035
1017
|
extra_headers=extra_headers,
|
|
1036
1018
|
extra_query=extra_query,
|
|
@@ -1115,9 +1097,7 @@ class AsyncGPUBaremetalClustersResource(AsyncAPIResource):
|
|
|
1115
1097
|
if not cluster_id:
|
|
1116
1098
|
raise ValueError(f"Expected a non-empty value for `cluster_id` but received {cluster_id!r}")
|
|
1117
1099
|
return await self._post(
|
|
1118
|
-
f"/cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters/{cluster_id}/action"
|
|
1119
|
-
if self._client._base_url_overridden
|
|
1120
|
-
else f"https://api.gcore.com//cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters/{cluster_id}/action",
|
|
1100
|
+
f"/cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters/{cluster_id}/action",
|
|
1121
1101
|
body=await async_maybe_transform(
|
|
1122
1102
|
{
|
|
1123
1103
|
"action": action,
|
|
@@ -1169,9 +1149,7 @@ class AsyncGPUBaremetalClustersResource(AsyncAPIResource):
|
|
|
1169
1149
|
if not cluster_id:
|
|
1170
1150
|
raise ValueError(f"Expected a non-empty value for `cluster_id` but received {cluster_id!r}")
|
|
1171
1151
|
return await self._get(
|
|
1172
|
-
f"/cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters/{cluster_id}"
|
|
1173
|
-
if self._client._base_url_overridden
|
|
1174
|
-
else f"https://api.gcore.com//cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters/{cluster_id}",
|
|
1152
|
+
f"/cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters/{cluster_id}",
|
|
1175
1153
|
options=make_request_options(
|
|
1176
1154
|
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
|
1177
1155
|
),
|
|
@@ -1210,9 +1188,7 @@ class AsyncGPUBaremetalClustersResource(AsyncAPIResource):
|
|
|
1210
1188
|
if not cluster_id:
|
|
1211
1189
|
raise ValueError(f"Expected a non-empty value for `cluster_id` but received {cluster_id!r}")
|
|
1212
1190
|
return await self._post(
|
|
1213
|
-
f"/cloud/v2/ai/clusters/{project_id}/{region_id}/{cluster_id}/powercycle"
|
|
1214
|
-
if self._client._base_url_overridden
|
|
1215
|
-
else f"https://api.gcore.com//cloud/v2/ai/clusters/{project_id}/{region_id}/{cluster_id}/powercycle",
|
|
1191
|
+
f"/cloud/v2/ai/clusters/{project_id}/{region_id}/{cluster_id}/powercycle",
|
|
1216
1192
|
options=make_request_options(
|
|
1217
1193
|
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
|
1218
1194
|
),
|
|
@@ -1251,9 +1227,7 @@ class AsyncGPUBaremetalClustersResource(AsyncAPIResource):
|
|
|
1251
1227
|
if not cluster_id:
|
|
1252
1228
|
raise ValueError(f"Expected a non-empty value for `cluster_id` but received {cluster_id!r}")
|
|
1253
1229
|
return await self._post(
|
|
1254
|
-
f"/cloud/v2/ai/clusters/{project_id}/{region_id}/{cluster_id}/reboot"
|
|
1255
|
-
if self._client._base_url_overridden
|
|
1256
|
-
else f"https://api.gcore.com//cloud/v2/ai/clusters/{project_id}/{region_id}/{cluster_id}/reboot",
|
|
1230
|
+
f"/cloud/v2/ai/clusters/{project_id}/{region_id}/{cluster_id}/reboot",
|
|
1257
1231
|
options=make_request_options(
|
|
1258
1232
|
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
|
1259
1233
|
),
|
|
@@ -1305,9 +1279,7 @@ class AsyncGPUBaremetalClustersResource(AsyncAPIResource):
|
|
|
1305
1279
|
if not cluster_id:
|
|
1306
1280
|
raise ValueError(f"Expected a non-empty value for `cluster_id` but received {cluster_id!r}")
|
|
1307
1281
|
return await self._post(
|
|
1308
|
-
f"/cloud/v1/ai/clusters/gpu/{project_id}/{region_id}/{cluster_id}/rebuild"
|
|
1309
|
-
if self._client._base_url_overridden
|
|
1310
|
-
else f"https://api.gcore.com//cloud/v1/ai/clusters/gpu/{project_id}/{region_id}/{cluster_id}/rebuild",
|
|
1282
|
+
f"/cloud/v1/ai/clusters/gpu/{project_id}/{region_id}/{cluster_id}/rebuild",
|
|
1311
1283
|
body=await async_maybe_transform(
|
|
1312
1284
|
{
|
|
1313
1285
|
"nodes": nodes,
|
|
@@ -1359,9 +1331,7 @@ class AsyncGPUBaremetalClustersResource(AsyncAPIResource):
|
|
|
1359
1331
|
if not cluster_id:
|
|
1360
1332
|
raise ValueError(f"Expected a non-empty value for `cluster_id` but received {cluster_id!r}")
|
|
1361
1333
|
return await self._post(
|
|
1362
|
-
f"/cloud/v1/ai/clusters/gpu/{project_id}/{region_id}/{cluster_id}/resize"
|
|
1363
|
-
if self._client._base_url_overridden
|
|
1364
|
-
else f"https://api.gcore.com//cloud/v1/ai/clusters/gpu/{project_id}/{region_id}/{cluster_id}/resize",
|
|
1334
|
+
f"/cloud/v1/ai/clusters/gpu/{project_id}/{region_id}/{cluster_id}/resize",
|
|
1365
1335
|
body=await async_maybe_transform(
|
|
1366
1336
|
{"instances_count": instances_count},
|
|
1367
1337
|
gpu_baremetal_cluster_resize_params.GPUBaremetalClusterResizeParams,
|
|
@@ -1384,6 +1354,7 @@ class AsyncGPUBaremetalClustersResource(AsyncAPIResource):
|
|
|
1384
1354
|
servers_settings: gpu_baremetal_cluster_create_params.ServersSettings,
|
|
1385
1355
|
tags: Dict[str, str] | Omit = omit,
|
|
1386
1356
|
polling_interval_seconds: int | Omit = omit,
|
|
1357
|
+
polling_timeout_seconds: int | Omit = omit,
|
|
1387
1358
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
1388
1359
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
1389
1360
|
extra_headers: Headers | None = None,
|
|
@@ -1416,6 +1387,7 @@ class AsyncGPUBaremetalClustersResource(AsyncAPIResource):
|
|
|
1416
1387
|
extra_query=extra_query,
|
|
1417
1388
|
extra_body=extra_body,
|
|
1418
1389
|
polling_interval_seconds=polling_interval_seconds,
|
|
1390
|
+
polling_timeout_seconds=polling_timeout_seconds,
|
|
1419
1391
|
)
|
|
1420
1392
|
if not task.created_resources or not task.created_resources.ai_clusters:
|
|
1421
1393
|
raise ValueError("No cluster was created")
|
|
@@ -1440,6 +1412,7 @@ class AsyncGPUBaremetalClustersResource(AsyncAPIResource):
|
|
|
1440
1412
|
image_id: Optional[str] | Omit = omit,
|
|
1441
1413
|
user_data: Optional[str] | Omit = omit,
|
|
1442
1414
|
polling_interval_seconds: int | Omit = omit,
|
|
1415
|
+
polling_timeout_seconds: int | Omit = omit,
|
|
1443
1416
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
1444
1417
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
1445
1418
|
extra_headers: Headers | None = None,
|
|
@@ -1470,6 +1443,7 @@ class AsyncGPUBaremetalClustersResource(AsyncAPIResource):
|
|
|
1470
1443
|
extra_query=extra_query,
|
|
1471
1444
|
extra_body=extra_body,
|
|
1472
1445
|
polling_interval_seconds=polling_interval_seconds,
|
|
1446
|
+
polling_timeout_seconds=polling_timeout_seconds,
|
|
1473
1447
|
)
|
|
1474
1448
|
return await self.get( # pyright: ignore[reportDeprecated]
|
|
1475
1449
|
cluster_id=cluster_id,
|
|
@@ -1489,6 +1463,7 @@ class AsyncGPUBaremetalClustersResource(AsyncAPIResource):
|
|
|
1489
1463
|
region_id: int | None = None,
|
|
1490
1464
|
instances_count: int,
|
|
1491
1465
|
polling_interval_seconds: int | Omit = omit,
|
|
1466
|
+
polling_timeout_seconds: int | Omit = omit,
|
|
1492
1467
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
1493
1468
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
1494
1469
|
extra_headers: Headers | None = None,
|
|
@@ -1517,6 +1492,7 @@ class AsyncGPUBaremetalClustersResource(AsyncAPIResource):
|
|
|
1517
1492
|
extra_query=extra_query,
|
|
1518
1493
|
extra_body=extra_body,
|
|
1519
1494
|
polling_interval_seconds=polling_interval_seconds,
|
|
1495
|
+
polling_timeout_seconds=polling_timeout_seconds,
|
|
1520
1496
|
)
|
|
1521
1497
|
return await self.get( # pyright: ignore[reportDeprecated]
|
|
1522
1498
|
cluster_id=cluster_id,
|