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,12 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
|
-
from typing import Dict,
|
|
5
|
+
from typing import Dict, Iterable, Optional
|
|
6
6
|
from typing_extensions import Literal
|
|
7
7
|
|
|
8
8
|
import httpx
|
|
9
9
|
|
|
10
|
-
from ...._types import NOT_GIVEN, Body, Query, Headers, NoneType, NotGiven
|
|
10
|
+
from ...._types import NOT_GIVEN, Body, Query, Headers, NoneType, NotGiven, SequenceNotStr
|
|
11
11
|
from ...._utils import maybe_transform, async_maybe_transform
|
|
12
12
|
from ...._compat import cached_property
|
|
13
13
|
from ...._resource import SyncAPIResource, AsyncAPIResource
|
|
@@ -58,7 +58,7 @@ class SubnetsResource(SyncAPIResource):
|
|
|
58
58
|
name: str,
|
|
59
59
|
network_id: str,
|
|
60
60
|
connect_to_network_router: bool | NotGiven = NOT_GIVEN,
|
|
61
|
-
dns_nameservers: Optional[
|
|
61
|
+
dns_nameservers: Optional[SequenceNotStr[str]] | NotGiven = NOT_GIVEN,
|
|
62
62
|
enable_dhcp: bool | NotGiven = NOT_GIVEN,
|
|
63
63
|
gateway_ip: Optional[str] | NotGiven = NOT_GIVEN,
|
|
64
64
|
host_routes: Optional[Iterable[subnet_create_params.HostRoute]] | NotGiven = NOT_GIVEN,
|
|
@@ -148,13 +148,73 @@ class SubnetsResource(SyncAPIResource):
|
|
|
148
148
|
cast_to=TaskIDList,
|
|
149
149
|
)
|
|
150
150
|
|
|
151
|
+
def create_and_poll(
|
|
152
|
+
self,
|
|
153
|
+
*,
|
|
154
|
+
project_id: int | None = None,
|
|
155
|
+
region_id: int | None = None,
|
|
156
|
+
cidr: str,
|
|
157
|
+
name: str,
|
|
158
|
+
network_id: str,
|
|
159
|
+
connect_to_network_router: bool | NotGiven = NOT_GIVEN,
|
|
160
|
+
dns_nameservers: Optional[SequenceNotStr[str]] | NotGiven = NOT_GIVEN,
|
|
161
|
+
enable_dhcp: bool | NotGiven = NOT_GIVEN,
|
|
162
|
+
gateway_ip: Optional[str] | NotGiven = NOT_GIVEN,
|
|
163
|
+
host_routes: Optional[Iterable[subnet_create_params.HostRoute]] | NotGiven = NOT_GIVEN,
|
|
164
|
+
ip_version: IPVersion | NotGiven = NOT_GIVEN,
|
|
165
|
+
router_id_to_connect: Optional[str] | NotGiven = NOT_GIVEN,
|
|
166
|
+
tags: Dict[str, str] | NotGiven = NOT_GIVEN,
|
|
167
|
+
polling_interval_seconds: int | NotGiven = NOT_GIVEN,
|
|
168
|
+
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
169
|
+
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
170
|
+
extra_headers: Headers | None = None,
|
|
171
|
+
extra_query: Query | None = None,
|
|
172
|
+
extra_body: Body | None = None,
|
|
173
|
+
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
|
|
174
|
+
) -> Subnet:
|
|
175
|
+
"""Create subnet and poll for the result."""
|
|
176
|
+
response = self.create(
|
|
177
|
+
project_id=project_id,
|
|
178
|
+
region_id=region_id,
|
|
179
|
+
cidr=cidr,
|
|
180
|
+
name=name,
|
|
181
|
+
network_id=network_id,
|
|
182
|
+
connect_to_network_router=connect_to_network_router,
|
|
183
|
+
dns_nameservers=dns_nameservers,
|
|
184
|
+
enable_dhcp=enable_dhcp,
|
|
185
|
+
gateway_ip=gateway_ip,
|
|
186
|
+
host_routes=host_routes,
|
|
187
|
+
ip_version=ip_version,
|
|
188
|
+
router_id_to_connect=router_id_to_connect,
|
|
189
|
+
tags=tags,
|
|
190
|
+
extra_headers=extra_headers,
|
|
191
|
+
extra_query=extra_query,
|
|
192
|
+
extra_body=extra_body,
|
|
193
|
+
timeout=timeout,
|
|
194
|
+
)
|
|
195
|
+
if not response.tasks or len(response.tasks) != 1:
|
|
196
|
+
raise ValueError(f"Expected exactly one task to be created")
|
|
197
|
+
task = self._client.cloud.tasks.poll(
|
|
198
|
+
task_id=response.tasks[0],
|
|
199
|
+
extra_headers=extra_headers,
|
|
200
|
+
polling_interval_seconds=polling_interval_seconds,
|
|
201
|
+
)
|
|
202
|
+
if not task.created_resources or not task.created_resources.subnets or len(task.created_resources.subnets) != 1:
|
|
203
|
+
raise ValueError(f"Expected exactly one resource to be created in a task")
|
|
204
|
+
return self.get(
|
|
205
|
+
subnet_id=task.created_resources.subnets[0],
|
|
206
|
+
project_id=project_id,
|
|
207
|
+
region_id=region_id,
|
|
208
|
+
extra_headers=extra_headers,
|
|
209
|
+
)
|
|
210
|
+
|
|
151
211
|
def update(
|
|
152
212
|
self,
|
|
153
213
|
subnet_id: str,
|
|
154
214
|
*,
|
|
155
215
|
project_id: int | None = None,
|
|
156
216
|
region_id: int | None = None,
|
|
157
|
-
dns_nameservers: Optional[
|
|
217
|
+
dns_nameservers: Optional[SequenceNotStr[str]] | NotGiven = NOT_GIVEN,
|
|
158
218
|
enable_dhcp: Optional[bool] | NotGiven = NOT_GIVEN,
|
|
159
219
|
gateway_ip: Optional[str] | NotGiven = NOT_GIVEN,
|
|
160
220
|
host_routes: Optional[Iterable[subnet_update_params.HostRoute]] | NotGiven = NOT_GIVEN,
|
|
@@ -266,7 +326,7 @@ class SubnetsResource(SyncAPIResource):
|
|
|
266
326
|
"updated_at.desc",
|
|
267
327
|
]
|
|
268
328
|
| NotGiven = NOT_GIVEN,
|
|
269
|
-
tag_key:
|
|
329
|
+
tag_key: SequenceNotStr[str] | NotGiven = NOT_GIVEN,
|
|
270
330
|
tag_key_value: str | NotGiven = NOT_GIVEN,
|
|
271
331
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
272
332
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
@@ -454,7 +514,7 @@ class AsyncSubnetsResource(AsyncAPIResource):
|
|
|
454
514
|
name: str,
|
|
455
515
|
network_id: str,
|
|
456
516
|
connect_to_network_router: bool | NotGiven = NOT_GIVEN,
|
|
457
|
-
dns_nameservers: Optional[
|
|
517
|
+
dns_nameservers: Optional[SequenceNotStr[str]] | NotGiven = NOT_GIVEN,
|
|
458
518
|
enable_dhcp: bool | NotGiven = NOT_GIVEN,
|
|
459
519
|
gateway_ip: Optional[str] | NotGiven = NOT_GIVEN,
|
|
460
520
|
host_routes: Optional[Iterable[subnet_create_params.HostRoute]] | NotGiven = NOT_GIVEN,
|
|
@@ -544,13 +604,73 @@ class AsyncSubnetsResource(AsyncAPIResource):
|
|
|
544
604
|
cast_to=TaskIDList,
|
|
545
605
|
)
|
|
546
606
|
|
|
607
|
+
async def create_and_poll(
|
|
608
|
+
self,
|
|
609
|
+
*,
|
|
610
|
+
project_id: int | None = None,
|
|
611
|
+
region_id: int | None = None,
|
|
612
|
+
cidr: str,
|
|
613
|
+
name: str,
|
|
614
|
+
network_id: str,
|
|
615
|
+
connect_to_network_router: bool | NotGiven = NOT_GIVEN,
|
|
616
|
+
dns_nameservers: Optional[SequenceNotStr[str]] | NotGiven = NOT_GIVEN,
|
|
617
|
+
enable_dhcp: bool | NotGiven = NOT_GIVEN,
|
|
618
|
+
gateway_ip: Optional[str] | NotGiven = NOT_GIVEN,
|
|
619
|
+
host_routes: Optional[Iterable[subnet_create_params.HostRoute]] | NotGiven = NOT_GIVEN,
|
|
620
|
+
ip_version: IPVersion | NotGiven = NOT_GIVEN,
|
|
621
|
+
router_id_to_connect: Optional[str] | NotGiven = NOT_GIVEN,
|
|
622
|
+
tags: Dict[str, str] | NotGiven = NOT_GIVEN,
|
|
623
|
+
polling_interval_seconds: int | NotGiven = NOT_GIVEN,
|
|
624
|
+
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
625
|
+
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
626
|
+
extra_headers: Headers | None = None,
|
|
627
|
+
extra_query: Query | None = None,
|
|
628
|
+
extra_body: Body | None = None,
|
|
629
|
+
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
|
|
630
|
+
) -> Subnet:
|
|
631
|
+
"""Create subnet and poll for the result."""
|
|
632
|
+
response = await self.create(
|
|
633
|
+
project_id=project_id,
|
|
634
|
+
region_id=region_id,
|
|
635
|
+
cidr=cidr,
|
|
636
|
+
name=name,
|
|
637
|
+
network_id=network_id,
|
|
638
|
+
connect_to_network_router=connect_to_network_router,
|
|
639
|
+
dns_nameservers=dns_nameservers,
|
|
640
|
+
enable_dhcp=enable_dhcp,
|
|
641
|
+
gateway_ip=gateway_ip,
|
|
642
|
+
host_routes=host_routes,
|
|
643
|
+
ip_version=ip_version,
|
|
644
|
+
router_id_to_connect=router_id_to_connect,
|
|
645
|
+
tags=tags,
|
|
646
|
+
extra_headers=extra_headers,
|
|
647
|
+
extra_query=extra_query,
|
|
648
|
+
extra_body=extra_body,
|
|
649
|
+
timeout=timeout,
|
|
650
|
+
)
|
|
651
|
+
if not response.tasks or len(response.tasks) != 1:
|
|
652
|
+
raise ValueError(f"Expected exactly one task to be created")
|
|
653
|
+
task = await self._client.cloud.tasks.poll(
|
|
654
|
+
task_id=response.tasks[0],
|
|
655
|
+
extra_headers=extra_headers,
|
|
656
|
+
polling_interval_seconds=polling_interval_seconds,
|
|
657
|
+
)
|
|
658
|
+
if not task.created_resources or not task.created_resources.subnets or len(task.created_resources.subnets) != 1:
|
|
659
|
+
raise ValueError(f"Expected exactly one resource to be created in a task")
|
|
660
|
+
return await self.get(
|
|
661
|
+
subnet_id=task.created_resources.subnets[0],
|
|
662
|
+
project_id=project_id,
|
|
663
|
+
region_id=region_id,
|
|
664
|
+
extra_headers=extra_headers,
|
|
665
|
+
)
|
|
666
|
+
|
|
547
667
|
async def update(
|
|
548
668
|
self,
|
|
549
669
|
subnet_id: str,
|
|
550
670
|
*,
|
|
551
671
|
project_id: int | None = None,
|
|
552
672
|
region_id: int | None = None,
|
|
553
|
-
dns_nameservers: Optional[
|
|
673
|
+
dns_nameservers: Optional[SequenceNotStr[str]] | NotGiven = NOT_GIVEN,
|
|
554
674
|
enable_dhcp: Optional[bool] | NotGiven = NOT_GIVEN,
|
|
555
675
|
gateway_ip: Optional[str] | NotGiven = NOT_GIVEN,
|
|
556
676
|
host_routes: Optional[Iterable[subnet_update_params.HostRoute]] | NotGiven = NOT_GIVEN,
|
|
@@ -662,7 +782,7 @@ class AsyncSubnetsResource(AsyncAPIResource):
|
|
|
662
782
|
"updated_at.desc",
|
|
663
783
|
]
|
|
664
784
|
| NotGiven = NOT_GIVEN,
|
|
665
|
-
tag_key:
|
|
785
|
+
tag_key: SequenceNotStr[str] | NotGiven = NOT_GIVEN,
|
|
666
786
|
tag_key_value: str | NotGiven = NOT_GIVEN,
|
|
667
787
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
668
788
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
@@ -828,6 +948,9 @@ class SubnetsResourceWithRawResponse:
|
|
|
828
948
|
self.create = to_raw_response_wrapper(
|
|
829
949
|
subnets.create,
|
|
830
950
|
)
|
|
951
|
+
self.create_and_poll = to_raw_response_wrapper(
|
|
952
|
+
subnets.create_and_poll,
|
|
953
|
+
)
|
|
831
954
|
self.update = to_raw_response_wrapper(
|
|
832
955
|
subnets.update,
|
|
833
956
|
)
|
|
@@ -849,6 +972,9 @@ class AsyncSubnetsResourceWithRawResponse:
|
|
|
849
972
|
self.create = async_to_raw_response_wrapper(
|
|
850
973
|
subnets.create,
|
|
851
974
|
)
|
|
975
|
+
self.create_and_poll = async_to_raw_response_wrapper(
|
|
976
|
+
subnets.create_and_poll,
|
|
977
|
+
)
|
|
852
978
|
self.update = async_to_raw_response_wrapper(
|
|
853
979
|
subnets.update,
|
|
854
980
|
)
|
|
@@ -870,6 +996,9 @@ class SubnetsResourceWithStreamingResponse:
|
|
|
870
996
|
self.create = to_streamed_response_wrapper(
|
|
871
997
|
subnets.create,
|
|
872
998
|
)
|
|
999
|
+
self.create_and_poll = to_streamed_response_wrapper(
|
|
1000
|
+
subnets.create_and_poll,
|
|
1001
|
+
)
|
|
873
1002
|
self.update = to_streamed_response_wrapper(
|
|
874
1003
|
subnets.update,
|
|
875
1004
|
)
|
|
@@ -891,6 +1020,9 @@ class AsyncSubnetsResourceWithStreamingResponse:
|
|
|
891
1020
|
self.create = async_to_streamed_response_wrapper(
|
|
892
1021
|
subnets.create,
|
|
893
1022
|
)
|
|
1023
|
+
self.create_and_poll = async_to_streamed_response_wrapper(
|
|
1024
|
+
subnets.create_and_poll,
|
|
1025
|
+
)
|
|
894
1026
|
self.update = async_to_streamed_response_wrapper(
|
|
895
1027
|
subnets.update,
|
|
896
1028
|
)
|