gcore 0.9.0__py3-none-any.whl → 0.11.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 +26 -10
- gcore/resources/cloud/load_balancers/pools/members.py +34 -4
- 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/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 +4 -4
- 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/security/bgp_announces.py +15 -15
- 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 +1042 -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/__init__.py +14 -0
- gcore/resources/waap/custom_page_sets.py +40 -34
- gcore/resources/waap/domains/__init__.py +14 -28
- gcore/resources/waap/domains/advanced_rules.py +7 -10
- gcore/resources/waap/domains/{api_discovery/api_discovery.py → api_discovery.py} +292 -59
- gcore/resources/waap/domains/api_path_groups.py +5 -5
- gcore/resources/waap/domains/api_paths.py +28 -30
- gcore/resources/waap/domains/custom_rules.py +7 -10
- gcore/resources/waap/domains/domains.py +124 -68
- gcore/resources/waap/domains/firewall_rules.py +5 -7
- gcore/resources/waap/domains/insight_silences.py +34 -11
- gcore/resources/waap/domains/insights.py +43 -17
- gcore/resources/waap/domains/statistics.py +977 -0
- gcore/resources/waap/insights.py +233 -0
- gcore/resources/waap/ip_info/__init__.py +33 -0
- gcore/resources/waap/{ip_info.py → ip_info/ip_info.py} +149 -235
- gcore/resources/waap/ip_info/metrics.py +203 -0
- gcore/resources/waap/waap.py +40 -8
- 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/health_monitor.py +6 -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/{waap/domains/analytics → cloud/k8s/clusters/pools}/__init__.py +1 -1
- 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 +31 -7
- 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 +27 -4
- gcore/types/cloud/load_balancers/pool_update_params.py +27 -4
- gcore/types/cloud/load_balancers/pools/health_monitor_create_params.py +7 -2
- gcore/types/cloud/load_balancers/pools/member_add_params.py +20 -2
- 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/region.py +0 -3
- 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/__init__.py +1 -1
- gcore/types/security/{bgp_announce_change_params.py → bgp_announce_toggle_params.py} +2 -2
- 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/__init__.py +6 -54
- gcore/types/waap/custom_page_set_create_params.py +121 -14
- gcore/types/waap/custom_page_set_preview_params.py +11 -4
- gcore/types/waap/custom_page_set_update_params.py +122 -15
- gcore/types/waap/domain_list_params.py +2 -4
- gcore/types/waap/domain_update_params.py +1 -1
- gcore/types/waap/domains/__init__.py +28 -18
- gcore/types/waap/domains/advanced_rule_create_params.py +7 -4
- gcore/types/waap/domains/advanced_rule_list_params.py +1 -3
- gcore/types/waap/domains/advanced_rule_update_params.py +6 -3
- gcore/types/waap/domains/{api_discovery/scan_result_list_params.py → api_discovery_list_scan_results_params.py} +2 -2
- gcore/types/waap/domains/api_path_create_params.py +4 -3
- gcore/types/waap/domains/{api_path_group_list_response.py → api_path_group_list.py} +2 -2
- 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_list_params.py +1 -3
- 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 +19 -7
- gcore/types/waap/domains/insight_replace_params.py +3 -5
- gcore/types/waap/domains/insight_silence_list_params.py +17 -6
- gcore/types/waap/domains/setting_update_params.py +3 -2
- gcore/types/waap/domains/{analytics_list_ddos_attacks_params.py → statistic_get_ddos_attacks_params.py} +2 -2
- gcore/types/waap/domains/statistic_get_ddos_info_params.py +28 -0
- gcore/types/waap/domains/statistic_get_events_aggregated_params.py +33 -0
- gcore/types/waap/domains/statistic_get_requests_series_params.py +74 -0
- gcore/types/waap/domains/statistic_get_traffic_series_params.py +22 -0
- gcore/types/waap/domains/statistic_get_traffic_series_response.py +10 -0
- gcore/types/waap/{waap_advanced_rule.py → domains/waap_advanced_rule.py} +4 -3
- gcore/types/waap/domains/{api_discovery_get_settings_response.py → waap_api_discovery_settings.py} +2 -2
- gcore/types/waap/domains/{api_path_get_response.py → waap_api_path.py} +6 -6
- gcore/types/waap/domains/{api_discovery/scan_result_get_response.py → waap_api_scan_result.py} +5 -5
- gcore/types/waap/{waap_blocked_statistics.py → domains/waap_blocked_statistics.py} +1 -1
- gcore/types/waap/{waap_count_statistics.py → domains/waap_count_statistics.py} +1 -1
- gcore/types/waap/{waap_custom_rule.py → domains/waap_custom_rule.py} +5 -8
- gcore/types/waap/{waap_ddos_attack.py → domains/waap_ddos_attack.py} +1 -1
- gcore/types/waap/{waap_ddos_info.py → domains/waap_ddos_info.py} +1 -1
- gcore/types/waap/{waap_event_statistics.py → domains/waap_event_statistics.py} +1 -1
- gcore/types/waap/{waap_firewall_rule.py → domains/waap_firewall_rule.py} +4 -3
- gcore/types/waap/{waap_insight.py → domains/waap_insight.py} +4 -4
- gcore/types/waap/{waap_insight_silence.py → domains/waap_insight_silence.py} +1 -1
- gcore/types/waap/domains/waap_request_details.py +186 -0
- gcore/types/waap/{waap_request_summary.py → domains/waap_request_summary.py} +1 -1
- gcore/types/waap/domains/{api_discovery_scan_openapi_response.py → waap_task_id.py} +2 -2
- gcore/types/waap/{waap_traffic_metrics.py → domains/waap_traffic_metrics.py} +1 -1
- gcore/types/waap/insight_list_types_params.py +28 -0
- gcore/types/waap/ip_info/__init__.py +6 -0
- gcore/types/waap/{ip_info_get_counts_params.py → ip_info/metric_list_params.py} +2 -2
- gcore/types/waap/{waap_ip_info_counts.py → ip_info/waap_ip_info_counts.py} +1 -1
- gcore/types/waap/{ip_info_get_params.py → ip_info_get_ip_info_params.py} +2 -2
- gcore/types/waap/{waap_ip_info.py → ip_info_get_ip_info_response.py} +2 -2
- gcore/types/waap/ip_info_get_top_urls_response.py +12 -3
- gcore/types/waap/{ip_info_get_top_sessions_params.py → ip_info_get_top_user_sessions_params.py} +2 -2
- gcore/types/waap/{ip_info_get_top_sessions_response.py → ip_info_get_top_user_sessions_response.py} +2 -2
- gcore/types/waap/waap_custom_page_set.py +113 -13
- gcore/types/waap/waap_detailed_domain.py +2 -2
- gcore/types/waap/waap_insight_type.py +33 -0
- gcore/types/waap/waap_ip_ddos_info_model.py +3 -3
- gcore/types/waap/waap_rule_set.py +26 -3
- gcore/types/waap/waap_summary_domain.py +2 -2
- {gcore-0.9.0.dist-info → gcore-0.11.0.dist-info}/METADATA +7 -2
- {gcore-0.9.0.dist-info → gcore-0.11.0.dist-info}/RECORD +362 -281
- gcore/resources/waap/domains/analytics/__init__.py +0 -33
- gcore/resources/waap/domains/analytics/analytics.py +0 -676
- gcore/resources/waap/domains/analytics/requests.py +0 -378
- gcore/resources/waap/domains/api_discovery/__init__.py +0 -33
- gcore/resources/waap/domains/api_discovery/scan_results.py +0 -352
- gcore/resources/waap/domains/policies.py +0 -173
- 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/types/waap/domains/analytics/request_list_params.py +0 -53
- gcore/types/waap/domains/analytics_get_event_statistics_params.py +0 -34
- gcore/types/waap/domains/analytics_list_ddos_info_params.py +0 -31
- gcore/types/waap/domains/analytics_list_event_traffic_params.py +0 -26
- gcore/types/waap/domains/analytics_list_event_traffic_response.py +0 -10
- gcore/types/waap/domains/api_discovery/__init__.py +0 -7
- gcore/types/waap/domains/api_discovery/scan_result_list_response.py +0 -29
- gcore/types/waap/domains/api_discovery_update_settings_response.py +0 -36
- gcore/types/waap/domains/api_discovery_upload_openapi_response.py +0 -10
- gcore/types/waap/domains/api_path_create_response.py +0 -50
- gcore/types/waap/domains/api_path_list_response.py +0 -50
- gcore/types/waap/waap_block_csrf_page_data.py +0 -28
- gcore/types/waap/waap_block_csrf_page_data_param.py +0 -28
- gcore/types/waap/waap_block_page_data.py +0 -28
- gcore/types/waap/waap_block_page_data_param.py +0 -28
- gcore/types/waap/waap_captcha_page_data.py +0 -31
- gcore/types/waap/waap_captcha_page_data_param.py +0 -31
- gcore/types/waap/waap_common_tag.py +0 -16
- gcore/types/waap/waap_cookie_disabled_page_data.py +0 -18
- gcore/types/waap/waap_cookie_disabled_page_data_param.py +0 -18
- gcore/types/waap/waap_customer_rule_state.py +0 -7
- gcore/types/waap/waap_domain_policy.py +0 -29
- gcore/types/waap/waap_domain_status.py +0 -7
- gcore/types/waap/waap_handshake_page_data.py +0 -25
- gcore/types/waap/waap_handshake_page_data_param.py +0 -25
- gcore/types/waap/waap_insight_silence_sort_by.py +0 -9
- gcore/types/waap/waap_insight_sort_by.py +0 -20
- gcore/types/waap/waap_insight_status.py +0 -7
- gcore/types/waap/waap_javascript_disabled_page_data.py +0 -18
- gcore/types/waap/waap_javascript_disabled_page_data_param.py +0 -18
- gcore/types/waap/waap_network_details.py +0 -17
- gcore/types/waap/waap_page_type.py +0 -9
- gcore/types/waap/waap_paginated_custom_page_set.py +0 -22
- gcore/types/waap/waap_paginated_ddos_attack.py +0 -22
- gcore/types/waap/waap_paginated_ddos_info.py +0 -22
- gcore/types/waap/waap_paginated_request_summary.py +0 -22
- gcore/types/waap/waap_pattern_matched_tag.py +0 -37
- gcore/types/waap/waap_policy_action.py +0 -7
- gcore/types/waap/waap_request_details.py +0 -92
- gcore/types/waap/waap_request_organization.py +0 -13
- gcore/types/waap/waap_resolution.py +0 -7
- gcore/types/waap/waap_rule_action_type.py +0 -7
- gcore/types/waap/waap_top_url.py +0 -13
- gcore/types/waap/waap_traffic_type.py +0 -28
- gcore/types/waap/waap_user_agent_details.py +0 -40
- {gcore-0.9.0.dist-info → gcore-0.11.0.dist-info}/WHEEL +0 -0
- {gcore-0.9.0.dist-info → gcore-0.11.0.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
from typing import Dict, Optional
|
|
4
|
+
|
|
5
|
+
from ....._models import BaseModel
|
|
6
|
+
|
|
7
|
+
__all__ = ["K8sClusterPool"]
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class K8sClusterPool(BaseModel):
|
|
11
|
+
id: str
|
|
12
|
+
"""UUID of the cluster pool"""
|
|
13
|
+
|
|
14
|
+
auto_healing_enabled: bool
|
|
15
|
+
"""Indicates the status of auto healing"""
|
|
16
|
+
|
|
17
|
+
boot_volume_size: int
|
|
18
|
+
"""Size of the boot volume"""
|
|
19
|
+
|
|
20
|
+
boot_volume_type: str
|
|
21
|
+
"""Type of the boot volume"""
|
|
22
|
+
|
|
23
|
+
created_at: str
|
|
24
|
+
"""Date of function creation"""
|
|
25
|
+
|
|
26
|
+
crio_config: Dict[str, str]
|
|
27
|
+
"""Crio configuration for pool nodes"""
|
|
28
|
+
|
|
29
|
+
flavor_id: str
|
|
30
|
+
"""ID of the cluster pool flavor"""
|
|
31
|
+
|
|
32
|
+
is_public_ipv4: bool
|
|
33
|
+
"""Indicates if the pool is public"""
|
|
34
|
+
|
|
35
|
+
kubelet_config: Dict[str, str]
|
|
36
|
+
"""Kubelet configuration for pool nodes"""
|
|
37
|
+
|
|
38
|
+
labels: Dict[str, str]
|
|
39
|
+
"""Labels applied to the cluster pool"""
|
|
40
|
+
|
|
41
|
+
max_node_count: int
|
|
42
|
+
"""Maximum node count in the cluster pool"""
|
|
43
|
+
|
|
44
|
+
min_node_count: int
|
|
45
|
+
"""Minimum node count in the cluster pool"""
|
|
46
|
+
|
|
47
|
+
name: str
|
|
48
|
+
"""Name of the cluster pool"""
|
|
49
|
+
|
|
50
|
+
node_count: int
|
|
51
|
+
"""Node count in the cluster pool"""
|
|
52
|
+
|
|
53
|
+
status: str
|
|
54
|
+
"""Status of the cluster pool"""
|
|
55
|
+
|
|
56
|
+
taints: Dict[str, str]
|
|
57
|
+
"""Taints applied to the cluster pool"""
|
|
58
|
+
|
|
59
|
+
servergroup_id: Optional[str] = None
|
|
60
|
+
"""Server group ID"""
|
|
61
|
+
|
|
62
|
+
servergroup_name: Optional[str] = None
|
|
63
|
+
"""Server group name"""
|
|
64
|
+
|
|
65
|
+
servergroup_policy: Optional[str] = None
|
|
66
|
+
"""Anti-affinity, affinity or soft-anti-affinity server group policy"""
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
from typing import List
|
|
4
|
+
|
|
5
|
+
from ....._models import BaseModel
|
|
6
|
+
from .k8s_cluster_pool import K8sClusterPool
|
|
7
|
+
|
|
8
|
+
__all__ = ["K8sClusterPoolList"]
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class K8sClusterPoolList(BaseModel):
|
|
12
|
+
count: int
|
|
13
|
+
"""Number of objects"""
|
|
14
|
+
|
|
15
|
+
results: List[K8sClusterPool]
|
|
16
|
+
"""Objects"""
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
from typing_extensions import TypedDict
|
|
6
|
+
|
|
7
|
+
__all__ = ["NodeListParams"]
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class NodeListParams(TypedDict, total=False):
|
|
11
|
+
project_id: int
|
|
12
|
+
|
|
13
|
+
region_id: int
|
|
14
|
+
|
|
15
|
+
with_ddos: bool
|
|
16
|
+
"""Include DDoS profile information if set to true. Default is false."""
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
from typing import Dict, Optional
|
|
6
|
+
from typing_extensions import Literal, Required, TypedDict
|
|
7
|
+
|
|
8
|
+
__all__ = ["PoolCreateParams"]
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class PoolCreateParams(TypedDict, total=False):
|
|
12
|
+
project_id: int
|
|
13
|
+
|
|
14
|
+
region_id: int
|
|
15
|
+
|
|
16
|
+
flavor_id: Required[str]
|
|
17
|
+
"""Flavor ID"""
|
|
18
|
+
|
|
19
|
+
min_node_count: Required[int]
|
|
20
|
+
"""Minimum node count"""
|
|
21
|
+
|
|
22
|
+
name: Required[str]
|
|
23
|
+
"""Pool's name"""
|
|
24
|
+
|
|
25
|
+
auto_healing_enabled: Optional[bool]
|
|
26
|
+
"""Enable auto healing"""
|
|
27
|
+
|
|
28
|
+
boot_volume_size: Optional[int]
|
|
29
|
+
"""Boot volume size"""
|
|
30
|
+
|
|
31
|
+
boot_volume_type: Optional[Literal["cold", "ssd_hiiops", "ssd_local", "ssd_lowlatency", "standard", "ultra"]]
|
|
32
|
+
"""Boot volume type"""
|
|
33
|
+
|
|
34
|
+
crio_config: Optional[Dict[str, str]]
|
|
35
|
+
"""Cri-o configuration for pool nodes"""
|
|
36
|
+
|
|
37
|
+
is_public_ipv4: Optional[bool]
|
|
38
|
+
"""Enable public v4 address"""
|
|
39
|
+
|
|
40
|
+
kubelet_config: Optional[Dict[str, str]]
|
|
41
|
+
"""Kubelet configuration for pool nodes"""
|
|
42
|
+
|
|
43
|
+
labels: Optional[Dict[str, str]]
|
|
44
|
+
"""Labels applied to the cluster pool"""
|
|
45
|
+
|
|
46
|
+
max_node_count: Optional[int]
|
|
47
|
+
"""Maximum node count"""
|
|
48
|
+
|
|
49
|
+
servergroup_policy: Optional[Literal["affinity", "anti-affinity", "soft-anti-affinity"]]
|
|
50
|
+
"""Server group policy: anti-affinity, soft-anti-affinity or affinity"""
|
|
51
|
+
|
|
52
|
+
taints: Optional[Dict[str, str]]
|
|
53
|
+
"""Taints applied to the cluster pool"""
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
from typing_extensions import Required, TypedDict
|
|
6
|
+
|
|
7
|
+
__all__ = ["PoolResizeParams"]
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class PoolResizeParams(TypedDict, total=False):
|
|
11
|
+
project_id: int
|
|
12
|
+
|
|
13
|
+
region_id: int
|
|
14
|
+
|
|
15
|
+
cluster_name: Required[str]
|
|
16
|
+
|
|
17
|
+
node_count: Required[int]
|
|
18
|
+
"""Target node count"""
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
from typing import Dict, Optional
|
|
6
|
+
from typing_extensions import Required, TypedDict
|
|
7
|
+
|
|
8
|
+
__all__ = ["PoolUpdateParams"]
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class PoolUpdateParams(TypedDict, total=False):
|
|
12
|
+
project_id: int
|
|
13
|
+
|
|
14
|
+
region_id: int
|
|
15
|
+
|
|
16
|
+
cluster_name: Required[str]
|
|
17
|
+
|
|
18
|
+
auto_healing_enabled: Optional[bool]
|
|
19
|
+
"""Enable/disable auto healing"""
|
|
20
|
+
|
|
21
|
+
labels: Optional[Dict[str, str]]
|
|
22
|
+
"""Labels applied to the cluster pool"""
|
|
23
|
+
|
|
24
|
+
max_node_count: Optional[int]
|
|
25
|
+
"""Maximum node count"""
|
|
26
|
+
|
|
27
|
+
min_node_count: Optional[int]
|
|
28
|
+
"""Minimum node count"""
|
|
29
|
+
|
|
30
|
+
node_count: Optional[int]
|
|
31
|
+
"""Current node count"""
|
|
32
|
+
|
|
33
|
+
taints: Optional[Dict[str, str]]
|
|
34
|
+
"""Taints applied to the cluster pool"""
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
from typing_extensions import Required, TypedDict
|
|
6
|
+
|
|
7
|
+
__all__ = ["NodeListParams"]
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class NodeListParams(TypedDict, total=False):
|
|
11
|
+
project_id: int
|
|
12
|
+
|
|
13
|
+
region_id: int
|
|
14
|
+
|
|
15
|
+
cluster_name: Required[str]
|
|
16
|
+
|
|
17
|
+
with_ddos: bool
|
|
18
|
+
"""Include DDoS profile information if set to true. Default is false."""
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
from typing_extensions import TypedDict
|
|
6
|
+
|
|
7
|
+
__all__ = ["FlavorListParams"]
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class FlavorListParams(TypedDict, total=False):
|
|
11
|
+
project_id: int
|
|
12
|
+
|
|
13
|
+
region_id: int
|
|
14
|
+
|
|
15
|
+
exclude_gpu: bool
|
|
16
|
+
"""Set to false to include GPU flavors. Default is True."""
|
|
17
|
+
|
|
18
|
+
include_prices: bool
|
|
19
|
+
"""Set to true to include flavor prices. Default is False."""
|
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
from typing import Dict, List, Optional
|
|
4
|
+
from datetime import datetime
|
|
5
|
+
from typing_extensions import Literal
|
|
6
|
+
|
|
7
|
+
from ..logging import Logging
|
|
8
|
+
from ...._models import BaseModel
|
|
9
|
+
from .clusters.k8s_cluster_pool import K8sClusterPool
|
|
10
|
+
|
|
11
|
+
__all__ = [
|
|
12
|
+
"K8sCluster",
|
|
13
|
+
"Csi",
|
|
14
|
+
"CsiNfs",
|
|
15
|
+
"Authentication",
|
|
16
|
+
"AuthenticationOidc",
|
|
17
|
+
"Cni",
|
|
18
|
+
"CniCilium",
|
|
19
|
+
"DDOSProfile",
|
|
20
|
+
"DDOSProfileField",
|
|
21
|
+
]
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
class CsiNfs(BaseModel):
|
|
25
|
+
vast_enabled: bool
|
|
26
|
+
"""Indicates the status of VAST NFS integration"""
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
class Csi(BaseModel):
|
|
30
|
+
nfs: CsiNfs
|
|
31
|
+
"""NFS settings"""
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
class AuthenticationOidc(BaseModel):
|
|
35
|
+
client_id: Optional[str] = None
|
|
36
|
+
"""Client ID"""
|
|
37
|
+
|
|
38
|
+
groups_claim: Optional[str] = None
|
|
39
|
+
"""JWT claim to use as the user's group"""
|
|
40
|
+
|
|
41
|
+
groups_prefix: Optional[str] = None
|
|
42
|
+
"""Prefix prepended to group claims"""
|
|
43
|
+
|
|
44
|
+
issuer_url: Optional[str] = None
|
|
45
|
+
"""Issuer URL"""
|
|
46
|
+
|
|
47
|
+
required_claims: Optional[Dict[str, str]] = None
|
|
48
|
+
"""Key-value pairs that describe required claims in the token"""
|
|
49
|
+
|
|
50
|
+
signing_algs: Optional[
|
|
51
|
+
List[Literal["ES256", "ES384", "ES512", "PS256", "PS384", "PS512", "RS256", "RS384", "RS512"]]
|
|
52
|
+
] = None
|
|
53
|
+
"""Accepted signing algorithms"""
|
|
54
|
+
|
|
55
|
+
username_claim: Optional[str] = None
|
|
56
|
+
"""JWT claim to use as the user name"""
|
|
57
|
+
|
|
58
|
+
username_prefix: Optional[str] = None
|
|
59
|
+
"""Prefix prepended to username claims to prevent clashes"""
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
class Authentication(BaseModel):
|
|
63
|
+
kubeconfig_created_at: Optional[datetime] = None
|
|
64
|
+
"""Kubeconfig creation date"""
|
|
65
|
+
|
|
66
|
+
kubeconfig_expires_at: Optional[datetime] = None
|
|
67
|
+
"""Kubeconfig expiration date"""
|
|
68
|
+
|
|
69
|
+
oidc: Optional[AuthenticationOidc] = None
|
|
70
|
+
"""OIDC authentication settings"""
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
class CniCilium(BaseModel):
|
|
74
|
+
encryption: Optional[bool] = None
|
|
75
|
+
"""Wireguard encryption"""
|
|
76
|
+
|
|
77
|
+
hubble_relay: Optional[bool] = None
|
|
78
|
+
"""Hubble Relay"""
|
|
79
|
+
|
|
80
|
+
hubble_ui: Optional[bool] = None
|
|
81
|
+
"""Hubble UI"""
|
|
82
|
+
|
|
83
|
+
lb_acceleration: Optional[bool] = None
|
|
84
|
+
"""LoadBalancer acceleration"""
|
|
85
|
+
|
|
86
|
+
lb_mode: Optional[Literal["dsr", "hybrid", "snat"]] = None
|
|
87
|
+
"""LoadBalancer mode"""
|
|
88
|
+
|
|
89
|
+
mask_size: Optional[int] = None
|
|
90
|
+
"""Mask size for IPv4"""
|
|
91
|
+
|
|
92
|
+
mask_size_v6: Optional[int] = None
|
|
93
|
+
"""Mask size for IPv6"""
|
|
94
|
+
|
|
95
|
+
routing_mode: Optional[Literal["native", "tunnel"]] = None
|
|
96
|
+
"""Routing mode"""
|
|
97
|
+
|
|
98
|
+
tunnel: Optional[Literal["", "geneve", "vxlan"]] = None
|
|
99
|
+
"""CNI provider"""
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
class Cni(BaseModel):
|
|
103
|
+
cilium: Optional[CniCilium] = None
|
|
104
|
+
"""Cilium settings"""
|
|
105
|
+
|
|
106
|
+
provider: Optional[Literal["calico", "cilium"]] = None
|
|
107
|
+
"""CNI provider"""
|
|
108
|
+
|
|
109
|
+
|
|
110
|
+
class DDOSProfileField(BaseModel):
|
|
111
|
+
base_field: int
|
|
112
|
+
|
|
113
|
+
field_value: Optional[object] = None
|
|
114
|
+
"""Complex value. Only one of 'value' or '`field_value`' must be specified"""
|
|
115
|
+
|
|
116
|
+
value: Optional[str] = None
|
|
117
|
+
"""Basic value. Only one of 'value' or '`field_value`' must be specified"""
|
|
118
|
+
|
|
119
|
+
|
|
120
|
+
class DDOSProfile(BaseModel):
|
|
121
|
+
enabled: bool
|
|
122
|
+
"""Enable advanced DDoS protection"""
|
|
123
|
+
|
|
124
|
+
fields: Optional[List[DDOSProfileField]] = None
|
|
125
|
+
"""DDoS profile parameters"""
|
|
126
|
+
|
|
127
|
+
profile_template: Optional[int] = None
|
|
128
|
+
"""DDoS profile template ID"""
|
|
129
|
+
|
|
130
|
+
profile_template_name: Optional[str] = None
|
|
131
|
+
"""DDoS profile template name"""
|
|
132
|
+
|
|
133
|
+
|
|
134
|
+
class K8sCluster(BaseModel):
|
|
135
|
+
id: str
|
|
136
|
+
"""Cluster pool uuid"""
|
|
137
|
+
|
|
138
|
+
created_at: str
|
|
139
|
+
"""Function creation date"""
|
|
140
|
+
|
|
141
|
+
csi: Csi
|
|
142
|
+
"""Cluster CSI settings"""
|
|
143
|
+
|
|
144
|
+
is_public: bool
|
|
145
|
+
"""Cluster is public"""
|
|
146
|
+
|
|
147
|
+
keypair: str
|
|
148
|
+
"""Keypair"""
|
|
149
|
+
|
|
150
|
+
logging: Optional[Logging] = None
|
|
151
|
+
"""Logging configuration"""
|
|
152
|
+
|
|
153
|
+
name: str
|
|
154
|
+
"""Name"""
|
|
155
|
+
|
|
156
|
+
pools: List[K8sClusterPool]
|
|
157
|
+
"""pools"""
|
|
158
|
+
|
|
159
|
+
status: Literal["Deleting", "Provisioned", "Provisioning"]
|
|
160
|
+
"""Status"""
|
|
161
|
+
|
|
162
|
+
version: str
|
|
163
|
+
"""K8s version"""
|
|
164
|
+
|
|
165
|
+
authentication: Optional[Authentication] = None
|
|
166
|
+
"""Cluster authentication settings"""
|
|
167
|
+
|
|
168
|
+
autoscaler_config: Optional[Dict[str, str]] = None
|
|
169
|
+
"""
|
|
170
|
+
Cluster autoscaler configuration. It contains overrides to the default
|
|
171
|
+
cluster-autoscaler parameters provided by the platform.
|
|
172
|
+
"""
|
|
173
|
+
|
|
174
|
+
cni: Optional[Cni] = None
|
|
175
|
+
"""Cluster CNI settings"""
|
|
176
|
+
|
|
177
|
+
creator_task_id: Optional[str] = None
|
|
178
|
+
"""Task that created this entity"""
|
|
179
|
+
|
|
180
|
+
ddos_profile: Optional[DDOSProfile] = None
|
|
181
|
+
"""Advanced DDoS Protection profile"""
|
|
182
|
+
|
|
183
|
+
fixed_network: Optional[str] = None
|
|
184
|
+
"""Fixed network id"""
|
|
185
|
+
|
|
186
|
+
fixed_subnet: Optional[str] = None
|
|
187
|
+
"""Fixed subnet id"""
|
|
188
|
+
|
|
189
|
+
is_ipv6: Optional[bool] = None
|
|
190
|
+
"""Enable public v6 address"""
|
|
191
|
+
|
|
192
|
+
pods_ip_pool: Optional[str] = None
|
|
193
|
+
"""The IP pool for the pods"""
|
|
194
|
+
|
|
195
|
+
pods_ipv6_pool: Optional[str] = None
|
|
196
|
+
"""The IPv6 pool for the pods"""
|
|
197
|
+
|
|
198
|
+
services_ip_pool: Optional[str] = None
|
|
199
|
+
"""The IP pool for the services"""
|
|
200
|
+
|
|
201
|
+
services_ipv6_pool: Optional[str] = None
|
|
202
|
+
"""The IPv6 pool for the services"""
|
|
203
|
+
|
|
204
|
+
task_id: Optional[str] = None
|
|
205
|
+
"""The UUID of the active task that currently holds a lock on the resource.
|
|
206
|
+
|
|
207
|
+
This lock prevents concurrent modifications to ensure consistency. If `null`,
|
|
208
|
+
the resource is not locked.
|
|
209
|
+
"""
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
from ...._models import BaseModel
|
|
4
|
+
|
|
5
|
+
__all__ = ["K8sClusterCertificate"]
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class K8sClusterCertificate(BaseModel):
|
|
9
|
+
certificate: str
|
|
10
|
+
"""Cluster CA certificate"""
|
|
11
|
+
|
|
12
|
+
key: str
|
|
13
|
+
"""Cluster CA private key"""
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
from typing import Optional
|
|
4
|
+
from datetime import datetime
|
|
5
|
+
|
|
6
|
+
from ...._models import BaseModel
|
|
7
|
+
|
|
8
|
+
__all__ = ["K8sClusterKubeconfig"]
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class K8sClusterKubeconfig(BaseModel):
|
|
12
|
+
config: str
|
|
13
|
+
"""Cluster kubeconfig"""
|
|
14
|
+
|
|
15
|
+
created_at: Optional[datetime] = None
|
|
16
|
+
"""Kubeconfig creation date"""
|
|
17
|
+
|
|
18
|
+
expires_at: Optional[datetime] = None
|
|
19
|
+
"""Kubeconfig expiration date"""
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
from typing import List
|
|
4
|
+
|
|
5
|
+
from ...._models import BaseModel
|
|
6
|
+
from .k8s_cluster import K8sCluster
|
|
7
|
+
|
|
8
|
+
__all__ = ["K8sClusterList"]
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class K8sClusterList(BaseModel):
|
|
12
|
+
count: int
|
|
13
|
+
"""Number of objects"""
|
|
14
|
+
|
|
15
|
+
results: List[K8sCluster]
|
|
16
|
+
"""Objects"""
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
from ..._models import BaseModel
|
|
4
|
+
|
|
5
|
+
__all__ = ["K8sClusterVersion"]
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class K8sClusterVersion(BaseModel):
|
|
9
|
+
version: str
|
|
10
|
+
"""List of supported Kubernetes cluster versions"""
|
|
@@ -3,14 +3,14 @@
|
|
|
3
3
|
from typing import List
|
|
4
4
|
|
|
5
5
|
from ..._models import BaseModel
|
|
6
|
-
from .
|
|
6
|
+
from .k8s_cluster_version import K8sClusterVersion
|
|
7
7
|
|
|
8
|
-
__all__ = ["
|
|
8
|
+
__all__ = ["K8sClusterVersionList"]
|
|
9
9
|
|
|
10
10
|
|
|
11
|
-
class
|
|
11
|
+
class K8sClusterVersionList(BaseModel):
|
|
12
12
|
count: int
|
|
13
13
|
"""Number of objects"""
|
|
14
14
|
|
|
15
|
-
results: List[
|
|
15
|
+
results: List[K8sClusterVersion]
|
|
16
16
|
"""Objects"""
|
|
@@ -2,9 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
|
-
from typing import Dict,
|
|
5
|
+
from typing import Dict, Union, Iterable, Optional
|
|
6
6
|
from typing_extensions import Literal, Required, TypeAlias, TypedDict
|
|
7
7
|
|
|
8
|
+
from ..._types import SequenceNotStr
|
|
8
9
|
from .http_method import HTTPMethod
|
|
9
10
|
from .lb_algorithm import LbAlgorithm
|
|
10
11
|
from .lb_pool_protocol import LbPoolProtocol
|
|
@@ -147,7 +148,12 @@ class ListenerPoolHealthmonitor(TypedDict, total=False):
|
|
|
147
148
|
"""Health monitor type. Once health monitor is created, cannot be changed."""
|
|
148
149
|
|
|
149
150
|
expected_codes: Optional[str]
|
|
150
|
-
"""
|
|
151
|
+
"""Expected HTTP response codes.
|
|
152
|
+
|
|
153
|
+
Can be a single code or a range of codes. Can only be used together with `HTTP`
|
|
154
|
+
or `HTTPS` health monitor type. For example,
|
|
155
|
+
200,202,300-302,401,403,404,500-504. If not specified, the default is 200.
|
|
156
|
+
"""
|
|
151
157
|
|
|
152
158
|
http_method: Optional[HTTPMethod]
|
|
153
159
|
"""HTTP method.
|
|
@@ -155,7 +161,7 @@ class ListenerPoolHealthmonitor(TypedDict, total=False):
|
|
|
155
161
|
Can only be used together with `HTTP` or `HTTPS` health monitor type.
|
|
156
162
|
"""
|
|
157
163
|
|
|
158
|
-
max_retries_down:
|
|
164
|
+
max_retries_down: int
|
|
159
165
|
"""Number of failures before the member is switched to ERROR state."""
|
|
160
166
|
|
|
161
167
|
url_path: Optional[str]
|
|
@@ -210,8 +216,26 @@ class ListenerPoolMember(TypedDict, total=False):
|
|
|
210
216
|
Either `subnet_id` or `instance_id` should be provided
|
|
211
217
|
"""
|
|
212
218
|
|
|
213
|
-
weight:
|
|
214
|
-
"""Member weight.
|
|
219
|
+
weight: int
|
|
220
|
+
"""Member weight.
|
|
221
|
+
|
|
222
|
+
Valid values are 0 < `weight` <= 256, defaults to 1. Controls traffic
|
|
223
|
+
distribution based on the pool's load balancing algorithm:
|
|
224
|
+
|
|
225
|
+
- `ROUND_ROBIN`: Distributes connections to each member in turn according to
|
|
226
|
+
weights. Higher weight = more turns in the cycle. Example: weights 3 vs 1 =
|
|
227
|
+
~75% vs ~25% of requests.
|
|
228
|
+
- `LEAST_CONNECTIONS`: Sends new connections to the member with fewest active
|
|
229
|
+
connections, performing round-robin within groups of the same normalized load.
|
|
230
|
+
Higher weight = allowed to hold more simultaneous connections before being
|
|
231
|
+
considered 'more loaded'. Example: weights 2 vs 1 means 20 vs 10 active
|
|
232
|
+
connections is treated as balanced.
|
|
233
|
+
- `SOURCE_IP`: Routes clients consistently to the same member by hashing client
|
|
234
|
+
source IP; hash result is modulo total weight of running members. Higher
|
|
235
|
+
weight = more hash buckets, so more client IPs map to that member. Example:
|
|
236
|
+
weights 2 vs 1 = roughly two-thirds of distinct client IPs map to the
|
|
237
|
+
higher-weight member.
|
|
238
|
+
"""
|
|
215
239
|
|
|
216
240
|
|
|
217
241
|
class ListenerPoolSessionPersistence(TypedDict, total=False):
|
|
@@ -290,7 +314,7 @@ class Listener(TypedDict, total=False):
|
|
|
290
314
|
protocol_port: Required[int]
|
|
291
315
|
"""Protocol port"""
|
|
292
316
|
|
|
293
|
-
allowed_cidrs: Optional[
|
|
317
|
+
allowed_cidrs: Optional[SequenceNotStr[str]]
|
|
294
318
|
"""Network CIDRs from which service will be accessible"""
|
|
295
319
|
|
|
296
320
|
connection_limit: int
|
|
@@ -311,7 +335,7 @@ class Listener(TypedDict, total=False):
|
|
|
311
335
|
PROMETHEUS listener
|
|
312
336
|
"""
|
|
313
337
|
|
|
314
|
-
sni_secret_id:
|
|
338
|
+
sni_secret_id: SequenceNotStr[str]
|
|
315
339
|
"""
|
|
316
340
|
List of secrets IDs containing PKCS12 format certificate/key bundles for
|
|
317
341
|
`TERMINATED_HTTPS` or PROMETHEUS listeners
|
|
@@ -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__ = ["LoadBalancerListParams"]
|
|
9
10
|
|
|
10
11
|
|
|
@@ -39,7 +40,7 @@ class LoadBalancerListParams(TypedDict, total=False):
|
|
|
39
40
|
show_stats: bool
|
|
40
41
|
"""Show statistics"""
|
|
41
42
|
|
|
42
|
-
tag_key:
|
|
43
|
+
tag_key: SequenceNotStr[str]
|
|
43
44
|
"""Filter by tag keys."""
|
|
44
45
|
|
|
45
46
|
tag_key_value: str
|
|
@@ -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 Literal, Required, TypedDict
|
|
7
6
|
|
|
7
|
+
from ....._types import SequenceNotStr
|
|
8
|
+
|
|
8
9
|
__all__ = ["RuleCreateParams"]
|
|
9
10
|
|
|
10
11
|
|
|
@@ -46,5 +47,5 @@ class RuleCreateParams(TypedDict, total=False):
|
|
|
46
47
|
For example, the name of the cookie to evaluate.
|
|
47
48
|
"""
|
|
48
49
|
|
|
49
|
-
tags:
|
|
50
|
+
tags: SequenceNotStr[str]
|
|
50
51
|
"""A list of simple strings assigned to the l7 rule"""
|