gcore 0.10.0__py3-none-any.whl → 0.12.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/_base_client.py +3 -3
- gcore/_client.py +18 -0
- gcore/_compat.py +48 -48
- gcore/_models.py +41 -41
- gcore/_types.py +35 -1
- gcore/_utils/__init__.py +9 -2
- gcore/_utils/_compat.py +45 -0
- gcore/_utils/_datetime_parse.py +136 -0
- gcore/_utils/_transform.py +11 -1
- gcore/_utils/_typing.py +6 -1
- gcore/_utils/_utils.py +0 -1
- gcore/_version.py +1 -1
- gcore/resources/__init__.py +28 -0
- gcore/resources/cloud/__init__.py +14 -0
- gcore/resources/cloud/audit_logs.py +3 -3
- gcore/resources/cloud/baremetal/images.py +3 -4
- gcore/resources/cloud/baremetal/servers.py +16 -4
- gcore/resources/cloud/cloud.py +32 -0
- gcore/resources/cloud/cost_reports.py +24 -16
- gcore/resources/cloud/file_shares/access_rules.py +2 -2
- gcore/resources/cloud/file_shares/file_shares.py +30 -14
- gcore/resources/cloud/floating_ips.py +196 -4
- gcore/resources/cloud/gpu_baremetal_clusters/flavors.py +1 -1
- gcore/resources/cloud/gpu_baremetal_clusters/gpu_baremetal_clusters.py +166 -190
- gcore/resources/cloud/gpu_baremetal_clusters/servers.py +268 -12
- gcore/resources/cloud/inference/__init__.py +14 -14
- gcore/resources/cloud/inference/applications/__init__.py +47 -0
- gcore/resources/cloud/inference/applications/applications.py +134 -0
- gcore/resources/cloud/inference/applications/deployments.py +649 -0
- gcore/resources/cloud/inference/applications/templates.py +238 -0
- gcore/resources/cloud/inference/deployments/deployments.py +41 -22
- gcore/resources/cloud/inference/inference.py +32 -32
- gcore/resources/cloud/inference/registry_credentials.py +8 -9
- gcore/resources/cloud/instances/images.py +4 -4
- gcore/resources/cloud/instances/instances.py +254 -4
- gcore/resources/cloud/instances/interfaces.py +544 -0
- gcore/resources/cloud/k8s/__init__.py +47 -0
- gcore/resources/cloud/k8s/clusters/__init__.py +47 -0
- gcore/resources/cloud/k8s/clusters/clusters.py +1391 -0
- gcore/resources/cloud/k8s/clusters/nodes.py +291 -0
- gcore/resources/cloud/k8s/clusters/pools/__init__.py +33 -0
- gcore/resources/cloud/k8s/clusters/pools/nodes.py +303 -0
- gcore/resources/cloud/k8s/clusters/pools/pools.py +870 -0
- gcore/resources/cloud/k8s/flavors.py +209 -0
- gcore/resources/cloud/k8s/k8s.py +233 -0
- gcore/resources/cloud/load_balancers/l7_policies/l7_policies.py +11 -12
- gcore/resources/cloud/load_balancers/l7_policies/rules.py +9 -10
- gcore/resources/cloud/load_balancers/listeners.py +18 -18
- gcore/resources/cloud/load_balancers/load_balancers.py +4 -4
- gcore/resources/cloud/load_balancers/pools/health_monitors.py +18 -6
- gcore/resources/cloud/load_balancers/pools/members.py +32 -2
- gcore/resources/cloud/load_balancers/pools/pools.py +32 -8
- gcore/resources/cloud/networks/networks.py +192 -4
- gcore/resources/cloud/networks/subnets.py +140 -8
- gcore/resources/cloud/reserved_fixed_ips/reserved_fixed_ips.py +608 -0
- gcore/resources/cloud/reserved_fixed_ips/vip.py +5 -7
- gcore/resources/cloud/security_groups/security_groups.py +6 -6
- gcore/resources/cloud/tasks.py +46 -46
- gcore/resources/cloud/users/role_assignments.py +5 -4
- gcore/resources/cloud/volumes.py +1125 -223
- gcore/resources/dns/__init__.py +75 -0
- gcore/resources/dns/dns.py +374 -0
- gcore/resources/dns/locations.py +288 -0
- gcore/resources/dns/metrics.py +214 -0
- gcore/resources/dns/pickers/__init__.py +33 -0
- gcore/resources/dns/pickers/pickers.py +167 -0
- gcore/resources/dns/pickers/presets.py +135 -0
- gcore/resources/dns/zones/__init__.py +47 -0
- gcore/resources/{cloud/inference/models.py → dns/zones/dnssec.py} +80 -122
- gcore/resources/dns/zones/rrsets.py +1005 -0
- gcore/resources/dns/zones/zones.py +1493 -0
- gcore/resources/storage/__init__.py +75 -0
- gcore/resources/storage/buckets/__init__.py +61 -0
- gcore/resources/storage/buckets/buckets.py +470 -0
- gcore/resources/storage/buckets/cors.py +265 -0
- gcore/resources/storage/buckets/lifecycle.py +276 -0
- gcore/resources/storage/buckets/policy.py +345 -0
- gcore/resources/storage/credentials.py +221 -0
- gcore/resources/storage/locations.py +190 -0
- gcore/resources/storage/statistics.py +364 -0
- gcore/resources/storage/storage.py +1046 -0
- gcore/resources/streaming/ai_tasks.py +56 -70
- gcore/resources/streaming/playlists.py +18 -18
- gcore/resources/streaming/quality_sets.py +8 -8
- gcore/resources/streaming/statistics.py +4 -122
- gcore/resources/streaming/streams/overlays.py +6 -6
- gcore/resources/streaming/streams/streams.py +40 -64
- gcore/resources/streaming/videos/subtitles.py +32 -30
- gcore/resources/streaming/videos/videos.py +78 -72
- gcore/resources/waap/domains/advanced_rules.py +2 -2
- gcore/resources/waap/domains/api_paths.py +13 -13
- gcore/resources/waap/domains/custom_rules.py +2 -2
- gcore/resources/waap/domains/domains.py +4 -4
- gcore/resources/waap/domains/firewall_rules.py +2 -2
- gcore/resources/waap/domains/insight_silences.py +6 -6
- gcore/resources/waap/domains/insights.py +7 -7
- gcore/resources/waap/domains/statistics.py +47 -47
- gcore/types/cloud/__init__.py +2 -4
- gcore/types/cloud/audit_log_list_params.py +2 -1
- gcore/types/cloud/baremetal/image_list_params.py +3 -2
- gcore/types/cloud/baremetal/server_create_params.py +8 -6
- gcore/types/cloud/baremetal/server_list_params.py +3 -2
- gcore/types/cloud/baremetal/server_rebuild_params.py +2 -0
- gcore/types/cloud/cost_report_get_aggregated_monthly_params.py +35 -31
- gcore/types/cloud/cost_report_get_aggregated_params.py +26 -25
- gcore/types/cloud/cost_report_get_detailed_params.py +26 -25
- gcore/types/cloud/ddos_profile.py +13 -7
- gcore/types/cloud/ddos_profile_field.py +21 -8
- gcore/types/cloud/ddos_profile_option_list.py +7 -6
- gcore/types/cloud/ddos_profile_status.py +2 -2
- gcore/types/cloud/ddos_profile_template.py +7 -3
- gcore/types/cloud/ddos_profile_template_field.py +12 -3
- gcore/types/cloud/file_share.py +2 -2
- gcore/types/cloud/file_share_create_params.py +12 -6
- gcore/types/cloud/floating_ip_list_params.py +3 -2
- gcore/types/cloud/gpu_baremetal_cluster.py +101 -74
- gcore/types/cloud/gpu_baremetal_cluster_create_params.py +76 -93
- gcore/types/cloud/gpu_baremetal_cluster_delete_params.py +17 -10
- gcore/types/cloud/gpu_baremetal_cluster_list_params.py +14 -3
- gcore/types/cloud/gpu_baremetal_cluster_rebuild_params.py +4 -2
- gcore/types/cloud/gpu_baremetal_clusters/__init__.py +6 -0
- gcore/types/cloud/gpu_baremetal_clusters/gpu_baremetal_cluster_server.py +74 -0
- gcore/types/cloud/{gpu_baremetal_cluster_server.py → gpu_baremetal_clusters/gpu_baremetal_cluster_server_v1.py} +10 -10
- gcore/types/cloud/gpu_baremetal_clusters/gpu_baremetal_cluster_server_v1_list.py +16 -0
- gcore/types/cloud/{gpu_baremetal_flavor.py → gpu_baremetal_clusters/gpu_baremetal_flavor.py} +1 -1
- gcore/types/cloud/{gpu_baremetal_flavor_list.py → gpu_baremetal_clusters/gpu_baremetal_flavor_list.py} +1 -1
- gcore/types/cloud/gpu_baremetal_clusters/server_list_params.py +75 -0
- gcore/types/cloud/inference/__init__.py +0 -5
- gcore/types/cloud/inference/applications/__init__.py +12 -0
- gcore/types/cloud/inference/applications/deployment_create_params.py +68 -0
- gcore/types/cloud/inference/applications/deployment_patch_params.py +62 -0
- gcore/types/cloud/inference/applications/inference_application_deployment.py +111 -0
- gcore/types/cloud/inference/applications/inference_application_deployment_list.py +16 -0
- gcore/types/cloud/inference/applications/inference_application_template.py +94 -0
- gcore/types/cloud/inference/applications/inference_application_template_list.py +16 -0
- gcore/types/cloud/inference/deployment_create_params.py +7 -6
- gcore/types/cloud/inference/deployment_update_params.py +7 -6
- gcore/types/cloud/instance_assign_security_group_params.py +4 -2
- gcore/types/cloud/instance_list_params.py +3 -2
- gcore/types/cloud/instance_unassign_security_group_params.py +4 -2
- gcore/types/cloud/instances/image_list_params.py +3 -2
- gcore/types/cloud/k8s/__init__.py +13 -0
- gcore/types/cloud/k8s/cluster_create_params.py +299 -0
- gcore/types/cloud/k8s/cluster_delete_params.py +16 -0
- gcore/types/cloud/k8s/cluster_update_params.py +203 -0
- gcore/types/cloud/k8s/cluster_upgrade_params.py +16 -0
- gcore/types/cloud/k8s/clusters/__init__.py +10 -0
- gcore/types/cloud/k8s/clusters/k8s_cluster_pool.py +66 -0
- gcore/types/cloud/k8s/clusters/k8s_cluster_pool_list.py +16 -0
- gcore/types/cloud/k8s/clusters/node_list_params.py +16 -0
- gcore/types/cloud/k8s/clusters/pool_create_params.py +53 -0
- gcore/types/cloud/k8s/clusters/pool_resize_params.py +18 -0
- gcore/types/cloud/k8s/clusters/pool_update_params.py +34 -0
- gcore/types/cloud/k8s/clusters/pools/__init__.py +5 -0
- gcore/types/cloud/k8s/clusters/pools/node_list_params.py +18 -0
- gcore/types/cloud/k8s/flavor_list_params.py +19 -0
- gcore/types/cloud/k8s/k8s_cluster.py +209 -0
- gcore/types/cloud/k8s/k8s_cluster_certificate.py +13 -0
- gcore/types/cloud/k8s/k8s_cluster_kubeconfig.py +19 -0
- gcore/types/cloud/k8s/k8s_cluster_list.py +16 -0
- gcore/types/cloud/k8s_cluster_version.py +10 -0
- gcore/types/cloud/{gpu_baremetal_cluster_server_list.py → k8s_cluster_version_list.py} +4 -4
- gcore/types/cloud/load_balancer_create_params.py +23 -4
- gcore/types/cloud/load_balancer_list_params.py +3 -2
- gcore/types/cloud/load_balancers/l7_policies/rule_create_params.py +3 -2
- gcore/types/cloud/load_balancers/l7_policies/rule_replace_params.py +3 -2
- gcore/types/cloud/load_balancers/l7_policy_create_params.py +3 -2
- gcore/types/cloud/load_balancers/l7_policy_replace_params.py +3 -2
- gcore/types/cloud/load_balancers/listener_create_params.py +4 -3
- gcore/types/cloud/load_balancers/listener_update_params.py +5 -3
- gcore/types/cloud/load_balancers/pool_create_params.py +19 -1
- gcore/types/cloud/load_balancers/pool_update_params.py +19 -1
- gcore/types/cloud/load_balancers/pools/member_add_params.py +19 -1
- gcore/types/cloud/member.py +19 -1
- gcore/types/cloud/network_list_params.py +3 -2
- gcore/types/cloud/networks/subnet_create_params.py +3 -2
- gcore/types/cloud/networks/subnet_list_params.py +3 -2
- gcore/types/cloud/networks/subnet_update_params.py +3 -2
- gcore/types/cloud/project.py +9 -9
- gcore/types/cloud/reserved_fixed_ips/vip_replace_connected_ports_params.py +3 -2
- gcore/types/cloud/reserved_fixed_ips/vip_update_connected_ports_params.py +3 -2
- gcore/types/cloud/security_group_create_params.py +4 -2
- gcore/types/cloud/security_group_list_params.py +3 -2
- gcore/types/cloud/task_id_list.py +8 -1
- gcore/types/cloud/task_list_params.py +23 -23
- gcore/types/cloud/usage_report_get_params.py +26 -25
- gcore/types/cloud/users/role_assignment.py +2 -1
- gcore/types/cloud/users/role_assignment_create_params.py +4 -2
- gcore/types/cloud/users/role_assignment_update_params.py +4 -2
- gcore/types/cloud/volume_list_params.py +3 -2
- gcore/types/dns/__init__.py +31 -0
- gcore/types/dns/dns_get_account_overview_response.py +21 -0
- gcore/types/dns/dns_label_name.py +13 -0
- gcore/types/dns/dns_location_translations.py +11 -0
- gcore/types/dns/dns_lookup_params.py +15 -0
- gcore/types/dns/dns_lookup_response.py +21 -0
- gcore/types/dns/dns_name_server.py +17 -0
- gcore/types/dns/location_list_continents_response.py +10 -0
- gcore/types/dns/location_list_countries_response.py +10 -0
- gcore/types/dns/location_list_regions_response.py +10 -0
- gcore/types/dns/location_list_response.py +16 -0
- gcore/types/dns/metric_list_params.py +24 -0
- gcore/types/dns/metric_list_response.py +7 -0
- gcore/types/dns/picker_list_response.py +10 -0
- gcore/types/dns/pickers/__init__.py +5 -0
- gcore/types/dns/pickers/preset_list_response.py +10 -0
- gcore/types/dns/zone_check_delegation_status_response.py +20 -0
- gcore/types/dns/zone_create_params.py +59 -0
- gcore/types/dns/zone_create_response.py +13 -0
- gcore/types/dns/zone_export_response.py +11 -0
- gcore/types/dns/zone_get_response.py +106 -0
- gcore/types/dns/zone_get_statistics_params.py +43 -0
- gcore/types/dns/zone_get_statistics_response.py +19 -0
- gcore/types/dns/zone_import_params.py +32 -0
- gcore/types/dns/zone_import_response.py +26 -0
- gcore/types/dns/zone_list_params.py +57 -0
- gcore/types/dns/zone_list_response.py +105 -0
- gcore/types/dns/zone_replace_params.py +61 -0
- gcore/types/dns/zones/__init__.py +15 -0
- gcore/types/dns/zones/dns_failover_log.py +19 -0
- gcore/types/dns/zones/dns_output_rrset.py +123 -0
- gcore/types/dns/zones/dnssec_get_response.py +38 -0
- gcore/types/dns/zones/dnssec_update_params.py +11 -0
- gcore/types/dns/zones/dnssec_update_response.py +38 -0
- gcore/types/dns/zones/rrset_create_params.py +82 -0
- gcore/types/dns/zones/rrset_get_failover_logs_params.py +21 -0
- gcore/types/dns/zones/rrset_get_failover_logs_response.py +15 -0
- gcore/types/dns/zones/rrset_list_params.py +21 -0
- gcore/types/dns/zones/rrset_list_response.py +14 -0
- gcore/types/dns/zones/rrset_replace_params.py +82 -0
- gcore/types/security/client_profile.py +1 -1
- gcore/types/security/profile_create_params.py +2 -2
- gcore/types/security/profile_recreate_params.py +2 -2
- gcore/types/security/profile_replace_params.py +2 -2
- gcore/types/storage/__init__.py +21 -0
- gcore/types/storage/bucket.py +15 -0
- gcore/types/storage/bucket_list_params.py +15 -0
- gcore/types/storage/buckets/__init__.py +9 -0
- gcore/types/storage/buckets/bucket_cors.py +18 -0
- gcore/types/storage/buckets/bucket_policy.py +7 -0
- gcore/types/storage/buckets/cor_create_params.py +17 -0
- gcore/types/storage/buckets/lifecycle_create_params.py +18 -0
- gcore/types/storage/buckets/policy_get_response.py +7 -0
- gcore/types/storage/credential_recreate_params.py +36 -0
- gcore/types/storage/location.py +24 -0
- gcore/types/storage/location_list_params.py +13 -0
- gcore/types/storage/statistic_get_usage_aggregated_params.py +24 -0
- gcore/types/storage/statistic_get_usage_series_params.py +38 -0
- gcore/types/storage/statistic_get_usage_series_response.py +12 -0
- gcore/types/storage/storage.py +101 -0
- gcore/types/storage/storage_create_params.py +44 -0
- gcore/types/storage/storage_list_params.py +39 -0
- gcore/types/storage/storage_restore_params.py +11 -0
- gcore/types/storage/storage_update_params.py +18 -0
- gcore/types/storage/usage_series.py +201 -0
- gcore/types/storage/usage_total.py +54 -0
- gcore/types/streaming/__init__.py +0 -4
- gcore/types/streaming/ai_contentmoderation_hardnudity.py +1 -1
- gcore/types/streaming/ai_contentmoderation_nsfw.py +1 -1
- gcore/types/streaming/ai_contentmoderation_softnudity.py +1 -1
- gcore/types/streaming/ai_contentmoderation_sport.py +1 -1
- gcore/types/streaming/ai_task.py +1 -5
- gcore/types/streaming/ai_task_create_params.py +2 -2
- gcore/types/streaming/ai_task_get_response.py +0 -46
- gcore/types/streaming/clip.py +2 -1
- gcore/types/streaming/create_video_param.py +13 -12
- gcore/types/streaming/max_stream_series.py +5 -5
- gcore/types/streaming/playlist.py +1 -1
- gcore/types/streaming/playlist_create_params.py +1 -1
- gcore/types/streaming/playlist_update_params.py +1 -1
- gcore/types/streaming/playlist_video.py +13 -12
- gcore/types/streaming/storage_series.py +5 -5
- gcore/types/streaming/stream.py +86 -49
- gcore/types/streaming/stream_create_clip_params.py +2 -1
- gcore/types/streaming/stream_create_params.py +9 -23
- gcore/types/streaming/stream_series.py +5 -5
- gcore/types/streaming/stream_update_params.py +9 -23
- gcore/types/streaming/video.py +53 -42
- gcore/types/streaming/video_update_params.py +13 -12
- gcore/types/streaming/vod_statistics_series.py +5 -5
- gcore/types/streaming/vod_total_stream_duration_series.py +3 -3
- gcore/types/waap/domain_list_params.py +1 -1
- gcore/types/waap/domain_update_params.py +1 -1
- gcore/types/waap/domains/advanced_rule_create_params.py +7 -4
- gcore/types/waap/domains/advanced_rule_update_params.py +6 -3
- gcore/types/waap/domains/api_path_create_params.py +4 -3
- gcore/types/waap/domains/api_path_list_params.py +3 -1
- gcore/types/waap/domains/api_path_update_params.py +5 -4
- gcore/types/waap/domains/custom_rule_create_params.py +13 -14
- gcore/types/waap/domains/custom_rule_update_params.py +12 -13
- gcore/types/waap/domains/firewall_rule_create_params.py +3 -2
- gcore/types/waap/domains/firewall_rule_update_params.py +2 -1
- gcore/types/waap/domains/insight_list_params.py +4 -2
- gcore/types/waap/domains/insight_replace_params.py +1 -1
- gcore/types/waap/domains/insight_silence_list_params.py +5 -3
- gcore/types/waap/domains/setting_update_params.py +3 -2
- gcore/types/waap/domains/statistic_get_ddos_info_params.py +6 -9
- gcore/types/waap/domains/statistic_get_events_aggregated_params.py +9 -10
- gcore/types/waap/domains/statistic_get_requests_series_params.py +8 -9
- gcore/types/waap/domains/statistic_get_traffic_series_params.py +6 -9
- gcore/types/waap/domains/waap_advanced_rule.py +3 -2
- gcore/types/waap/domains/waap_api_path.py +4 -4
- gcore/types/waap/domains/waap_api_scan_result.py +2 -2
- gcore/types/waap/domains/waap_custom_rule.py +4 -7
- gcore/types/waap/domains/waap_firewall_rule.py +3 -2
- gcore/types/waap/domains/waap_insight.py +1 -1
- gcore/types/waap/domains/waap_request_details.py +5 -4
- gcore/types/waap/waap_ip_ddos_info_model.py +3 -3
- gcore/types/waap/waap_rule_set.py +1 -1
- {gcore-0.10.0.dist-info → gcore-0.12.0.dist-info}/METADATA +7 -2
- {gcore-0.10.0.dist-info → gcore-0.12.0.dist-info}/RECORD +313 -193
- gcore/types/cloud/inference/inference_model.py +0 -65
- gcore/types/cloud/inference/inference_registry_credentials_create.py +0 -22
- gcore/types/cloud/inference/model_list_params.py +0 -21
- gcore/types/streaming/ai_contentmoderation_casm.py +0 -39
- gcore/types/streaming/ai_contentmoderation_weapon.py +0 -39
- gcore/types/streaming/meet_series.py +0 -23
- gcore/types/streaming/statistic_get_meet_series_params.py +0 -20
- {gcore-0.10.0.dist-info → gcore-0.12.0.dist-info}/WHEEL +0 -0
- {gcore-0.10.0.dist-info → gcore-0.12.0.dist-info}/licenses/LICENSE +0 -0
|
@@ -2,9 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
|
-
from typing import List
|
|
6
5
|
from typing_extensions import TypedDict
|
|
7
6
|
|
|
7
|
+
from ..._types import SequenceNotStr
|
|
8
|
+
|
|
8
9
|
__all__ = ["FloatingIPListParams"]
|
|
9
10
|
|
|
10
11
|
|
|
@@ -24,7 +25,7 @@ class FloatingIPListParams(TypedDict, total=False):
|
|
|
24
25
|
Offset value is used to exclude the first set of records from the result
|
|
25
26
|
"""
|
|
26
27
|
|
|
27
|
-
tag_key:
|
|
28
|
+
tag_key: SequenceNotStr[str]
|
|
28
29
|
"""Optional. Filter by tag keys. ?`tag_key`=key1&`tag_key`=key2"""
|
|
29
30
|
|
|
30
31
|
tag_key_value: str
|
|
@@ -1,78 +1,133 @@
|
|
|
1
1
|
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
2
|
|
|
3
|
-
from typing import List, Optional
|
|
4
|
-
from
|
|
3
|
+
from typing import List, Union, Optional
|
|
4
|
+
from datetime import datetime
|
|
5
|
+
from typing_extensions import Literal, Annotated, TypeAlias
|
|
5
6
|
|
|
6
7
|
from .tag import Tag
|
|
8
|
+
from ..._utils import PropertyInfo
|
|
7
9
|
from ..._models import BaseModel
|
|
8
|
-
from .gpu_baremetal_cluster_server import GPUBaremetalClusterServer
|
|
9
10
|
|
|
10
|
-
__all__ = [
|
|
11
|
+
__all__ = [
|
|
12
|
+
"GPUBaremetalCluster",
|
|
13
|
+
"ServersSettings",
|
|
14
|
+
"ServersSettingsInterface",
|
|
15
|
+
"ServersSettingsInterfaceExternalInterfaceOutputSerializer",
|
|
16
|
+
"ServersSettingsInterfaceSubnetInterfaceOutputSerializer",
|
|
17
|
+
"ServersSettingsInterfaceSubnetInterfaceOutputSerializerFloatingIP",
|
|
18
|
+
"ServersSettingsInterfaceAnySubnetInterfaceOutputSerializer",
|
|
19
|
+
"ServersSettingsInterfaceAnySubnetInterfaceOutputSerializerFloatingIP",
|
|
20
|
+
"ServersSettingsSecurityGroup",
|
|
21
|
+
]
|
|
11
22
|
|
|
12
23
|
|
|
13
|
-
class
|
|
14
|
-
|
|
15
|
-
"""
|
|
24
|
+
class ServersSettingsInterfaceExternalInterfaceOutputSerializer(BaseModel):
|
|
25
|
+
ip_family: Literal["dual", "ipv4", "ipv6"]
|
|
26
|
+
"""Which subnets should be selected: IPv4, IPv6, or use dual stack."""
|
|
27
|
+
|
|
28
|
+
name: Optional[str] = None
|
|
29
|
+
"""Interface name"""
|
|
30
|
+
|
|
31
|
+
type: Literal["external"]
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
class ServersSettingsInterfaceSubnetInterfaceOutputSerializerFloatingIP(BaseModel):
|
|
35
|
+
source: Literal["new"]
|
|
16
36
|
|
|
17
|
-
|
|
37
|
+
|
|
38
|
+
class ServersSettingsInterfaceSubnetInterfaceOutputSerializer(BaseModel):
|
|
39
|
+
floating_ip: Optional[ServersSettingsInterfaceSubnetInterfaceOutputSerializerFloatingIP] = None
|
|
40
|
+
"""Floating IP config for this subnet attachment"""
|
|
41
|
+
|
|
42
|
+
name: Optional[str] = None
|
|
43
|
+
"""Interface name"""
|
|
44
|
+
|
|
45
|
+
network_id: str
|
|
18
46
|
"""Network ID the subnet belongs to. Port will be plugged in this network"""
|
|
19
47
|
|
|
20
48
|
subnet_id: str
|
|
21
|
-
"""Port is assigned
|
|
49
|
+
"""Port is assigned an IP address from this subnet"""
|
|
22
50
|
|
|
23
|
-
type:
|
|
24
|
-
"""Network type"""
|
|
51
|
+
type: Literal["subnet"]
|
|
25
52
|
|
|
26
53
|
|
|
27
|
-
class
|
|
28
|
-
|
|
29
|
-
"""GPU Cluster ID"""
|
|
54
|
+
class ServersSettingsInterfaceAnySubnetInterfaceOutputSerializerFloatingIP(BaseModel):
|
|
55
|
+
source: Literal["new"]
|
|
30
56
|
|
|
31
|
-
cluster_name: str
|
|
32
|
-
"""GPU Cluster Name"""
|
|
33
57
|
|
|
34
|
-
|
|
35
|
-
|
|
58
|
+
class ServersSettingsInterfaceAnySubnetInterfaceOutputSerializer(BaseModel):
|
|
59
|
+
floating_ip: Optional[ServersSettingsInterfaceAnySubnetInterfaceOutputSerializerFloatingIP] = None
|
|
60
|
+
"""Floating IP config for this subnet attachment"""
|
|
36
61
|
|
|
37
|
-
|
|
38
|
-
"""
|
|
62
|
+
ip_address: Optional[str] = None
|
|
63
|
+
"""Fixed IP address"""
|
|
39
64
|
|
|
40
|
-
|
|
41
|
-
"""
|
|
65
|
+
ip_family: Literal["dual", "ipv4", "ipv6"]
|
|
66
|
+
"""Which subnets should be selected: IPv4, IPv6, or use dual stack"""
|
|
42
67
|
|
|
43
|
-
|
|
44
|
-
"""
|
|
68
|
+
name: Optional[str] = None
|
|
69
|
+
"""Interface name"""
|
|
45
70
|
|
|
46
|
-
|
|
47
|
-
"""
|
|
71
|
+
network_id: str
|
|
72
|
+
"""Network ID the subnet belongs to. Port will be plugged in this network"""
|
|
48
73
|
|
|
49
|
-
|
|
50
|
-
"""Image name"""
|
|
74
|
+
type: Literal["any_subnet"]
|
|
51
75
|
|
|
52
|
-
interfaces: Optional[List[Interface]] = None
|
|
53
|
-
"""Networks managed by user and associated with the cluster"""
|
|
54
76
|
|
|
55
|
-
|
|
56
|
-
|
|
77
|
+
ServersSettingsInterface: TypeAlias = Annotated[
|
|
78
|
+
Union[
|
|
79
|
+
ServersSettingsInterfaceExternalInterfaceOutputSerializer,
|
|
80
|
+
ServersSettingsInterfaceSubnetInterfaceOutputSerializer,
|
|
81
|
+
ServersSettingsInterfaceAnySubnetInterfaceOutputSerializer,
|
|
82
|
+
],
|
|
83
|
+
PropertyInfo(discriminator="type"),
|
|
84
|
+
]
|
|
57
85
|
|
|
58
|
-
This parameter is used to set a password for the "Admin" user on a Windows
|
|
59
|
-
instance, a default user or a new user on a Linux instance
|
|
60
|
-
"""
|
|
61
86
|
|
|
62
|
-
|
|
63
|
-
|
|
87
|
+
class ServersSettingsSecurityGroup(BaseModel):
|
|
88
|
+
name: str
|
|
89
|
+
"""Name."""
|
|
64
90
|
|
|
65
|
-
region: str
|
|
66
|
-
"""Region name"""
|
|
67
91
|
|
|
68
|
-
|
|
69
|
-
|
|
92
|
+
class ServersSettings(BaseModel):
|
|
93
|
+
interfaces: List[ServersSettingsInterface]
|
|
70
94
|
|
|
71
|
-
|
|
72
|
-
"""
|
|
95
|
+
security_groups: List[ServersSettingsSecurityGroup]
|
|
96
|
+
"""Security groups names"""
|
|
73
97
|
|
|
74
98
|
ssh_key_name: Optional[str] = None
|
|
75
|
-
"""
|
|
99
|
+
"""SSH key name"""
|
|
100
|
+
|
|
101
|
+
user_data: Optional[str] = None
|
|
102
|
+
"""Optional custom user data (Base64-encoded) Mutually exclusive with 'password'."""
|
|
103
|
+
|
|
104
|
+
|
|
105
|
+
class GPUBaremetalCluster(BaseModel):
|
|
106
|
+
id: str
|
|
107
|
+
"""Cluster unique identifier"""
|
|
108
|
+
|
|
109
|
+
created_at: datetime
|
|
110
|
+
"""Cluster creation date time"""
|
|
111
|
+
|
|
112
|
+
flavor: str
|
|
113
|
+
"""Cluster flavor name"""
|
|
114
|
+
|
|
115
|
+
managed_by: Literal["k8s", "user"]
|
|
116
|
+
"""User type managing the resource"""
|
|
117
|
+
|
|
118
|
+
name: str
|
|
119
|
+
"""Cluster name"""
|
|
120
|
+
|
|
121
|
+
servers_count: int
|
|
122
|
+
"""Cluster servers count"""
|
|
123
|
+
|
|
124
|
+
servers_ids: List[str]
|
|
125
|
+
"""List of cluster nodes"""
|
|
126
|
+
|
|
127
|
+
servers_settings: ServersSettings
|
|
128
|
+
|
|
129
|
+
status: Literal["active", "deleting", "error", "new", "resizing"]
|
|
130
|
+
"""Cluster status"""
|
|
76
131
|
|
|
77
132
|
tags: List[Tag]
|
|
78
133
|
"""List of key-value tags associated with the resource.
|
|
@@ -84,33 +139,5 @@ class GPUBaremetalCluster(BaseModel):
|
|
|
84
139
|
values.
|
|
85
140
|
"""
|
|
86
141
|
|
|
87
|
-
|
|
88
|
-
"""
|
|
89
|
-
|
|
90
|
-
task_status: Literal[
|
|
91
|
-
"CLUSTER_CLEAN_UP",
|
|
92
|
-
"CLUSTER_RESIZE",
|
|
93
|
-
"CLUSTER_RESUME",
|
|
94
|
-
"CLUSTER_SUSPEND",
|
|
95
|
-
"ERROR",
|
|
96
|
-
"FINISHED",
|
|
97
|
-
"IPU_SERVERS",
|
|
98
|
-
"NETWORK",
|
|
99
|
-
"POPLAR_SERVERS",
|
|
100
|
-
"POST_DEPLOY_SETUP",
|
|
101
|
-
"VIPU_CONTROLLER",
|
|
102
|
-
]
|
|
103
|
-
"""Task status"""
|
|
104
|
-
|
|
105
|
-
user_data: Optional[str] = None
|
|
106
|
-
"""String in base64 format.
|
|
107
|
-
|
|
108
|
-
Must not be passed together with 'username' or 'password'. Examples of the
|
|
109
|
-
`user_data`: https://cloudinit.readthedocs.io/en/latest/topics/examples.html
|
|
110
|
-
"""
|
|
111
|
-
|
|
112
|
-
username: Optional[str] = None
|
|
113
|
-
"""A name of a new user in the Linux instance.
|
|
114
|
-
|
|
115
|
-
It may be passed with a 'password' parameter
|
|
116
|
-
"""
|
|
142
|
+
updated_at: Optional[datetime] = None
|
|
143
|
+
"""Cluster update date time"""
|
|
@@ -2,61 +2,44 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
|
-
from typing import Dict, Union, Iterable
|
|
5
|
+
from typing import Dict, Union, Iterable
|
|
6
6
|
from typing_extensions import Literal, Required, TypeAlias, TypedDict
|
|
7
7
|
|
|
8
|
-
from .interface_ip_family import InterfaceIPFamily
|
|
9
|
-
|
|
10
8
|
__all__ = [
|
|
11
9
|
"GPUBaremetalClusterCreateParams",
|
|
12
|
-
"
|
|
13
|
-
"
|
|
14
|
-
"
|
|
15
|
-
"
|
|
16
|
-
"
|
|
17
|
-
"
|
|
18
|
-
"
|
|
10
|
+
"ServersSettings",
|
|
11
|
+
"ServersSettingsInterface",
|
|
12
|
+
"ServersSettingsInterfaceExternalInterfaceInputSerializer",
|
|
13
|
+
"ServersSettingsInterfaceSubnetInterfaceInputSerializer",
|
|
14
|
+
"ServersSettingsInterfaceSubnetInterfaceInputSerializerFloatingIP",
|
|
15
|
+
"ServersSettingsInterfaceAnySubnetInterfaceInputSerializer",
|
|
16
|
+
"ServersSettingsInterfaceAnySubnetInterfaceInputSerializerFloatingIP",
|
|
17
|
+
"ServersSettingsCredentials",
|
|
18
|
+
"ServersSettingsSecurityGroup",
|
|
19
19
|
]
|
|
20
20
|
|
|
21
21
|
|
|
22
22
|
class GPUBaremetalClusterCreateParams(TypedDict, total=False):
|
|
23
23
|
project_id: int
|
|
24
|
+
"""Project ID"""
|
|
24
25
|
|
|
25
26
|
region_id: int
|
|
27
|
+
"""Region ID"""
|
|
26
28
|
|
|
27
29
|
flavor: Required[str]
|
|
28
|
-
"""
|
|
30
|
+
"""Cluster flavor ID"""
|
|
29
31
|
|
|
30
32
|
image_id: Required[str]
|
|
31
|
-
"""
|
|
32
|
-
|
|
33
|
-
interfaces: Required[Iterable[Interface]]
|
|
34
|
-
"""A list of network interfaces for the server.
|
|
35
|
-
|
|
36
|
-
You can create one or more interfaces - private, public, or both.
|
|
37
|
-
"""
|
|
33
|
+
"""System image ID"""
|
|
38
34
|
|
|
39
35
|
name: Required[str]
|
|
40
|
-
"""
|
|
36
|
+
"""Cluster name"""
|
|
41
37
|
|
|
42
|
-
|
|
43
|
-
"""Number of servers
|
|
38
|
+
servers_count: Required[int]
|
|
39
|
+
"""Number of servers in the cluster"""
|
|
44
40
|
|
|
45
|
-
|
|
46
|
-
"""
|
|
47
|
-
|
|
48
|
-
This parameter is used to set a password for the "Admin" user on a Windows
|
|
49
|
-
instance, a default user or a new user on a Linux instance
|
|
50
|
-
"""
|
|
51
|
-
|
|
52
|
-
security_groups: Iterable[SecurityGroup]
|
|
53
|
-
"""Security group UUIDs"""
|
|
54
|
-
|
|
55
|
-
ssh_key_name: str
|
|
56
|
-
"""
|
|
57
|
-
Specifies the name of the SSH keypair, created via the
|
|
58
|
-
[/v1/`ssh_keys` endpoint](/docs/api-reference/cloud/ssh-keys/add-or-generate-ssh-key).
|
|
59
|
-
"""
|
|
41
|
+
servers_settings: Required[ServersSettings]
|
|
42
|
+
"""Configuration settings for the servers in the cluster"""
|
|
60
43
|
|
|
61
44
|
tags: Dict[str, str]
|
|
62
45
|
"""Key-value tags to associate with the resource.
|
|
@@ -68,96 +51,96 @@ class GPUBaremetalClusterCreateParams(TypedDict, total=False):
|
|
|
68
51
|
values.
|
|
69
52
|
"""
|
|
70
53
|
|
|
71
|
-
user_data: str
|
|
72
|
-
"""String in base64 format.
|
|
73
|
-
|
|
74
|
-
Must not be passed together with 'username' or 'password'. Examples of the
|
|
75
|
-
`user_data`: https://cloudinit.readthedocs.io/en/latest/topics/examples.html
|
|
76
|
-
"""
|
|
77
|
-
|
|
78
|
-
username: str
|
|
79
|
-
"""A name of a new user in the Linux instance.
|
|
80
|
-
|
|
81
|
-
It may be passed with a 'password' parameter
|
|
82
|
-
"""
|
|
83
|
-
|
|
84
54
|
|
|
85
|
-
class
|
|
55
|
+
class ServersSettingsInterfaceExternalInterfaceInputSerializer(TypedDict, total=False):
|
|
86
56
|
type: Required[Literal["external"]]
|
|
87
|
-
"""A public IP address will be assigned to the server."""
|
|
88
57
|
|
|
89
|
-
|
|
90
|
-
"""
|
|
58
|
+
ip_family: Literal["dual", "ipv4", "ipv6"]
|
|
59
|
+
"""Which subnets should be selected: IPv4, IPv6, or use dual stack."""
|
|
91
60
|
|
|
92
|
-
|
|
93
|
-
"""
|
|
94
|
-
|
|
95
|
-
ip_family: Optional[InterfaceIPFamily]
|
|
96
|
-
"""Specify `ipv4`, `ipv6`, or `dual` to enable both."""
|
|
61
|
+
name: str
|
|
62
|
+
"""Interface name"""
|
|
97
63
|
|
|
98
64
|
|
|
99
|
-
class
|
|
65
|
+
class ServersSettingsInterfaceSubnetInterfaceInputSerializerFloatingIP(TypedDict, total=False):
|
|
100
66
|
source: Required[Literal["new"]]
|
|
101
67
|
|
|
102
68
|
|
|
103
|
-
class
|
|
69
|
+
class ServersSettingsInterfaceSubnetInterfaceInputSerializer(TypedDict, total=False):
|
|
104
70
|
network_id: Required[str]
|
|
105
|
-
"""
|
|
71
|
+
"""Network ID the subnet belongs to. Port will be plugged in this network"""
|
|
106
72
|
|
|
107
73
|
subnet_id: Required[str]
|
|
108
|
-
"""
|
|
74
|
+
"""Port is assigned an IP address from this subnet"""
|
|
109
75
|
|
|
110
76
|
type: Required[Literal["subnet"]]
|
|
111
|
-
"""The instance will get an IP address from the selected network.
|
|
112
77
|
|
|
113
|
-
|
|
114
|
-
internet. Otherwise, it will only have a private IP within the network.
|
|
115
|
-
"""
|
|
116
|
-
|
|
117
|
-
floating_ip: InterfaceCreateGPUClusterSubnetInterfaceSerializerFloatingIP
|
|
78
|
+
floating_ip: ServersSettingsInterfaceSubnetInterfaceInputSerializerFloatingIP
|
|
118
79
|
"""Floating IP config for this subnet attachment"""
|
|
119
80
|
|
|
120
|
-
|
|
121
|
-
"""Interface name
|
|
122
|
-
|
|
123
|
-
Defaults to `null` and is returned as `null` in the API response if not set.
|
|
124
|
-
"""
|
|
81
|
+
name: str
|
|
82
|
+
"""Interface name"""
|
|
125
83
|
|
|
126
84
|
|
|
127
|
-
class
|
|
85
|
+
class ServersSettingsInterfaceAnySubnetInterfaceInputSerializerFloatingIP(TypedDict, total=False):
|
|
128
86
|
source: Required[Literal["new"]]
|
|
129
87
|
|
|
130
88
|
|
|
131
|
-
class
|
|
89
|
+
class ServersSettingsInterfaceAnySubnetInterfaceInputSerializer(TypedDict, total=False):
|
|
132
90
|
network_id: Required[str]
|
|
133
|
-
"""
|
|
91
|
+
"""Network ID the subnet belongs to. Port will be plugged in this network"""
|
|
134
92
|
|
|
135
93
|
type: Required[Literal["any_subnet"]]
|
|
136
|
-
"""Server will be attached to a subnet with the largest count of free IPs."""
|
|
137
94
|
|
|
138
|
-
floating_ip:
|
|
139
|
-
"""
|
|
95
|
+
floating_ip: ServersSettingsInterfaceAnySubnetInterfaceInputSerializerFloatingIP
|
|
96
|
+
"""Floating IP config for this subnet attachment"""
|
|
140
97
|
|
|
141
|
-
|
|
142
|
-
"""
|
|
98
|
+
ip_family: Literal["dual", "ipv4", "ipv6"]
|
|
99
|
+
"""Which subnets should be selected: IPv4, IPv6, or use dual stack"""
|
|
100
|
+
|
|
101
|
+
name: str
|
|
102
|
+
"""Interface name"""
|
|
143
103
|
|
|
144
|
-
Defaults to `null` and is returned as `null` in the API response if not set.
|
|
145
|
-
"""
|
|
146
104
|
|
|
147
|
-
|
|
148
|
-
|
|
105
|
+
ServersSettingsInterface: TypeAlias = Union[
|
|
106
|
+
ServersSettingsInterfaceExternalInterfaceInputSerializer,
|
|
107
|
+
ServersSettingsInterfaceSubnetInterfaceInputSerializer,
|
|
108
|
+
ServersSettingsInterfaceAnySubnetInterfaceInputSerializer,
|
|
109
|
+
]
|
|
149
110
|
|
|
150
|
-
ip_family: InterfaceIPFamily
|
|
151
|
-
"""Specify `ipv4`, `ipv6`, or `dual` to enable both."""
|
|
152
111
|
|
|
112
|
+
class ServersSettingsCredentials(TypedDict, total=False):
|
|
113
|
+
password: str
|
|
114
|
+
"""Used to set the password for the specified 'username' on Linux instances.
|
|
153
115
|
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
116
|
+
If 'username' is not provided, the password is applied to the default user of
|
|
117
|
+
the image. Mutually exclusive with '`user_data`' - only one can be specified.
|
|
118
|
+
"""
|
|
119
|
+
|
|
120
|
+
ssh_key_name: str
|
|
121
|
+
"""
|
|
122
|
+
Specifies the name of the SSH keypair, created via the
|
|
123
|
+
[/v1/`ssh_keys` endpoint](/docs/api-reference/cloud/ssh-keys/add-or-generate-ssh-key).
|
|
124
|
+
"""
|
|
125
|
+
|
|
126
|
+
username: str
|
|
127
|
+
"""The 'username' and 'password' fields create a new user on the system"""
|
|
159
128
|
|
|
160
129
|
|
|
161
|
-
class
|
|
130
|
+
class ServersSettingsSecurityGroup(TypedDict, total=False):
|
|
162
131
|
id: Required[str]
|
|
163
132
|
"""Resource ID"""
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
class ServersSettings(TypedDict, total=False):
|
|
136
|
+
interfaces: Required[Iterable[ServersSettingsInterface]]
|
|
137
|
+
"""Subnet IPs and floating IPs"""
|
|
138
|
+
|
|
139
|
+
credentials: ServersSettingsCredentials
|
|
140
|
+
"""Optional server access credentials"""
|
|
141
|
+
|
|
142
|
+
security_groups: Iterable[ServersSettingsSecurityGroup]
|
|
143
|
+
"""List of security groups UUIDs"""
|
|
144
|
+
|
|
145
|
+
user_data: str
|
|
146
|
+
"""Optional custom user data (Base64-encoded)"""
|
|
@@ -4,25 +4,32 @@ from __future__ import annotations
|
|
|
4
4
|
|
|
5
5
|
from typing_extensions import TypedDict
|
|
6
6
|
|
|
7
|
+
from ..._types import SequenceNotStr
|
|
8
|
+
|
|
7
9
|
__all__ = ["GPUBaremetalClusterDeleteParams"]
|
|
8
10
|
|
|
9
11
|
|
|
10
12
|
class GPUBaremetalClusterDeleteParams(TypedDict, total=False):
|
|
11
13
|
project_id: int
|
|
14
|
+
"""Project ID"""
|
|
12
15
|
|
|
13
16
|
region_id: int
|
|
17
|
+
"""Region ID"""
|
|
14
18
|
|
|
15
|
-
|
|
16
|
-
"""
|
|
17
|
-
|
|
18
|
-
|
|
19
|
+
all_floating_ips: bool
|
|
20
|
+
"""
|
|
21
|
+
Flag indicating whether the floating ips associated with server / cluster are
|
|
22
|
+
deleted
|
|
19
23
|
"""
|
|
20
24
|
|
|
21
|
-
|
|
22
|
-
"""
|
|
23
|
-
|
|
24
|
-
|
|
25
|
+
all_reserved_fixed_ips: bool
|
|
26
|
+
"""
|
|
27
|
+
Flag indicating whether the reserved fixed ips associated with server / cluster
|
|
28
|
+
are deleted
|
|
25
29
|
"""
|
|
26
30
|
|
|
27
|
-
|
|
28
|
-
"""
|
|
31
|
+
floating_ip_ids: SequenceNotStr[str]
|
|
32
|
+
"""Optional list of floating ips to be deleted"""
|
|
33
|
+
|
|
34
|
+
reserved_fixed_ip_ids: SequenceNotStr[str]
|
|
35
|
+
"""Optional list of reserved fixed ips to be deleted"""
|
|
@@ -2,18 +2,29 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
|
-
from
|
|
5
|
+
from typing import List
|
|
6
|
+
from typing_extensions import Literal, TypedDict
|
|
6
7
|
|
|
7
8
|
__all__ = ["GPUBaremetalClusterListParams"]
|
|
8
9
|
|
|
9
10
|
|
|
10
11
|
class GPUBaremetalClusterListParams(TypedDict, total=False):
|
|
11
12
|
project_id: int
|
|
13
|
+
"""Project ID"""
|
|
12
14
|
|
|
13
15
|
region_id: int
|
|
16
|
+
"""Region ID"""
|
|
14
17
|
|
|
15
18
|
limit: int
|
|
16
|
-
"""Limit
|
|
19
|
+
"""Limit of items on a single page"""
|
|
20
|
+
|
|
21
|
+
managed_by: List[Literal["k8s", "user"]]
|
|
22
|
+
"""Specifies the entity responsible for managing the resource.
|
|
23
|
+
|
|
24
|
+
- `user`: The resource (cluster) is created and maintained directly by the user.
|
|
25
|
+
- `k8s`: The resource is created and maintained automatically by Managed
|
|
26
|
+
Kubernetes service
|
|
27
|
+
"""
|
|
17
28
|
|
|
18
29
|
offset: int
|
|
19
|
-
"""Offset
|
|
30
|
+
"""Offset in results list"""
|
|
@@ -2,9 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
|
-
from typing import
|
|
5
|
+
from typing import Optional
|
|
6
6
|
from typing_extensions import Required, TypedDict
|
|
7
7
|
|
|
8
|
+
from ..._types import SequenceNotStr
|
|
9
|
+
|
|
8
10
|
__all__ = ["GPUBaremetalClusterRebuildParams"]
|
|
9
11
|
|
|
10
12
|
|
|
@@ -13,7 +15,7 @@ class GPUBaremetalClusterRebuildParams(TypedDict, total=False):
|
|
|
13
15
|
|
|
14
16
|
region_id: int
|
|
15
17
|
|
|
16
|
-
nodes: Required[
|
|
18
|
+
nodes: Required[SequenceNotStr[str]]
|
|
17
19
|
"""List of nodes uuids to be rebuild"""
|
|
18
20
|
|
|
19
21
|
image_id: Optional[str]
|
|
@@ -3,7 +3,13 @@
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
5
|
from .flavor_list_params import FlavorListParams as FlavorListParams
|
|
6
|
+
from .server_list_params import ServerListParams as ServerListParams
|
|
6
7
|
from .image_upload_params import ImageUploadParams as ImageUploadParams
|
|
8
|
+
from .gpu_baremetal_flavor import GPUBaremetalFlavor as GPUBaremetalFlavor
|
|
7
9
|
from .server_delete_params import ServerDeleteParams as ServerDeleteParams
|
|
10
|
+
from .gpu_baremetal_flavor_list import GPUBaremetalFlavorList as GPUBaremetalFlavorList
|
|
11
|
+
from .gpu_baremetal_cluster_server import GPUBaremetalClusterServer as GPUBaremetalClusterServer
|
|
8
12
|
from .server_attach_interface_params import ServerAttachInterfaceParams as ServerAttachInterfaceParams
|
|
9
13
|
from .server_detach_interface_params import ServerDetachInterfaceParams as ServerDetachInterfaceParams
|
|
14
|
+
from .gpu_baremetal_cluster_server_v1 import GPUBaremetalClusterServerV1 as GPUBaremetalClusterServerV1
|
|
15
|
+
from .gpu_baremetal_cluster_server_v1_list import GPUBaremetalClusterServerV1List as GPUBaremetalClusterServerV1List
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
from typing import List, Optional
|
|
4
|
+
from datetime import datetime
|
|
5
|
+
from typing_extensions import Literal
|
|
6
|
+
|
|
7
|
+
from ..tag import Tag
|
|
8
|
+
from ...._models import BaseModel
|
|
9
|
+
|
|
10
|
+
__all__ = ["GPUBaremetalClusterServer", "SecurityGroup"]
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class SecurityGroup(BaseModel):
|
|
14
|
+
name: str
|
|
15
|
+
"""Name."""
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
class GPUBaremetalClusterServer(BaseModel):
|
|
19
|
+
id: str
|
|
20
|
+
"""Server unique identifier"""
|
|
21
|
+
|
|
22
|
+
created_at: datetime
|
|
23
|
+
"""Server creation date and time"""
|
|
24
|
+
|
|
25
|
+
flavor: str
|
|
26
|
+
"""Unique flavor identifier"""
|
|
27
|
+
|
|
28
|
+
image_id: Optional[str] = None
|
|
29
|
+
"""Server's image UUID"""
|
|
30
|
+
|
|
31
|
+
ip_addresses: List[str]
|
|
32
|
+
"""List of IP addresses"""
|
|
33
|
+
|
|
34
|
+
name: str
|
|
35
|
+
"""Server's name generated using cluster's name"""
|
|
36
|
+
|
|
37
|
+
security_groups: List[SecurityGroup]
|
|
38
|
+
"""Security groups names"""
|
|
39
|
+
|
|
40
|
+
ssh_key_name: Optional[str] = None
|
|
41
|
+
"""SSH key pair assigned to the server"""
|
|
42
|
+
|
|
43
|
+
status: Literal[
|
|
44
|
+
"ACTIVE",
|
|
45
|
+
"BUILD",
|
|
46
|
+
"DELETED",
|
|
47
|
+
"ERROR",
|
|
48
|
+
"HARD_REBOOT",
|
|
49
|
+
"MIGRATING",
|
|
50
|
+
"PASSWORD",
|
|
51
|
+
"PAUSED",
|
|
52
|
+
"REBOOT",
|
|
53
|
+
"REBUILD",
|
|
54
|
+
"RESCUE",
|
|
55
|
+
"RESIZE",
|
|
56
|
+
"REVERT_RESIZE",
|
|
57
|
+
"SHELVED",
|
|
58
|
+
"SHELVED_OFFLOADED",
|
|
59
|
+
"SHUTOFF",
|
|
60
|
+
"SOFT_DELETED",
|
|
61
|
+
"SUSPENDED",
|
|
62
|
+
"UNKNOWN",
|
|
63
|
+
"VERIFY_RESIZE",
|
|
64
|
+
]
|
|
65
|
+
"""Current server status"""
|
|
66
|
+
|
|
67
|
+
tags: List[Tag]
|
|
68
|
+
"""User defined tags"""
|
|
69
|
+
|
|
70
|
+
task_id: Optional[str] = None
|
|
71
|
+
"""Identifier of the task currently modifying the GPU cluster"""
|
|
72
|
+
|
|
73
|
+
updated_at: datetime
|
|
74
|
+
"""Server update date and time"""
|