gcore 0.1.0a1__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/__init__.py +84 -0
- gcore/_base_client.py +1943 -0
- gcore/_client.py +484 -0
- gcore/_compat.py +219 -0
- gcore/_constants.py +16 -0
- gcore/_exceptions.py +108 -0
- gcore/_files.py +123 -0
- gcore/_models.py +803 -0
- gcore/_qs.py +150 -0
- gcore/_resource.py +43 -0
- gcore/_response.py +830 -0
- gcore/_streaming.py +333 -0
- gcore/_types.py +217 -0
- gcore/_utils/__init__.py +57 -0
- gcore/_utils/_logs.py +25 -0
- gcore/_utils/_proxy.py +62 -0
- gcore/_utils/_reflection.py +42 -0
- gcore/_utils/_streams.py +12 -0
- gcore/_utils/_sync.py +86 -0
- gcore/_utils/_transform.py +447 -0
- gcore/_utils/_typing.py +151 -0
- gcore/_utils/_utils.py +422 -0
- gcore/_version.py +4 -0
- gcore/lib/.keep +4 -0
- gcore/lib/polling.py +19 -0
- gcore/pagination.py +70 -0
- gcore/py.typed +0 -0
- gcore/resources/__init__.py +19 -0
- gcore/resources/cloud/__init__.py +327 -0
- gcore/resources/cloud/baremetal/__init__.py +61 -0
- gcore/resources/cloud/baremetal/baremetal.py +166 -0
- gcore/resources/cloud/baremetal/flavors.py +371 -0
- gcore/resources/cloud/baremetal/images.py +238 -0
- gcore/resources/cloud/baremetal/servers.py +808 -0
- gcore/resources/cloud/billing_reservations.py +362 -0
- gcore/resources/cloud/cloud.py +774 -0
- gcore/resources/cloud/file_shares/__init__.py +33 -0
- gcore/resources/cloud/file_shares/access_rules.py +434 -0
- gcore/resources/cloud/file_shares/file_shares.py +994 -0
- gcore/resources/cloud/floating_ips.py +765 -0
- gcore/resources/cloud/gpu_baremetal_clusters/__init__.py +75 -0
- gcore/resources/cloud/gpu_baremetal_clusters/flavors.py +211 -0
- gcore/resources/cloud/gpu_baremetal_clusters/gpu_baremetal_clusters.py +1143 -0
- gcore/resources/cloud/gpu_baremetal_clusters/images.py +581 -0
- gcore/resources/cloud/gpu_baremetal_clusters/interfaces.py +175 -0
- gcore/resources/cloud/gpu_baremetal_clusters/servers.py +1098 -0
- gcore/resources/cloud/inference/__init__.py +89 -0
- gcore/resources/cloud/inference/deployments/__init__.py +33 -0
- gcore/resources/cloud/inference/deployments/deployments.py +1187 -0
- gcore/resources/cloud/inference/deployments/logs.py +235 -0
- gcore/resources/cloud/inference/flavors.py +280 -0
- gcore/resources/cloud/inference/inference.py +295 -0
- gcore/resources/cloud/inference/models.py +289 -0
- gcore/resources/cloud/inference/registry_credentials.py +649 -0
- gcore/resources/cloud/inference/secrets.py +629 -0
- gcore/resources/cloud/instances/__init__.py +75 -0
- gcore/resources/cloud/instances/flavors.py +449 -0
- gcore/resources/cloud/instances/images.py +987 -0
- gcore/resources/cloud/instances/instances.py +2349 -0
- gcore/resources/cloud/instances/interfaces.py +797 -0
- gcore/resources/cloud/instances/metrics.py +217 -0
- gcore/resources/cloud/ip_ranges.py +135 -0
- gcore/resources/cloud/load_balancers/__init__.py +103 -0
- gcore/resources/cloud/load_balancers/flavors.py +193 -0
- gcore/resources/cloud/load_balancers/l7_policies/__init__.py +33 -0
- gcore/resources/cloud/load_balancers/l7_policies/l7_policies.py +738 -0
- gcore/resources/cloud/load_balancers/l7_policies/rules.py +722 -0
- gcore/resources/cloud/load_balancers/listeners.py +788 -0
- gcore/resources/cloud/load_balancers/load_balancers.py +1237 -0
- gcore/resources/cloud/load_balancers/metrics.py +205 -0
- gcore/resources/cloud/load_balancers/pools/__init__.py +47 -0
- gcore/resources/cloud/load_balancers/pools/health_monitors.py +352 -0
- gcore/resources/cloud/load_balancers/pools/members.py +353 -0
- gcore/resources/cloud/load_balancers/pools/pools.py +872 -0
- gcore/resources/cloud/load_balancers/statuses.py +260 -0
- gcore/resources/cloud/networks/__init__.py +47 -0
- gcore/resources/cloud/networks/networks.py +715 -0
- gcore/resources/cloud/networks/routers.py +875 -0
- gcore/resources/cloud/networks/subnets.py +865 -0
- gcore/resources/cloud/placement_groups.py +465 -0
- gcore/resources/cloud/projects.py +608 -0
- gcore/resources/cloud/quotas/__init__.py +33 -0
- gcore/resources/cloud/quotas/quotas.py +335 -0
- gcore/resources/cloud/quotas/requests.py +482 -0
- gcore/resources/cloud/regions.py +328 -0
- gcore/resources/cloud/registries/__init__.py +75 -0
- gcore/resources/cloud/registries/artifacts.py +277 -0
- gcore/resources/cloud/registries/registries.py +688 -0
- gcore/resources/cloud/registries/repositories.py +265 -0
- gcore/resources/cloud/registries/tags.py +190 -0
- gcore/resources/cloud/registries/users.py +701 -0
- gcore/resources/cloud/reserved_fixed_ips/__init__.py +33 -0
- gcore/resources/cloud/reserved_fixed_ips/reserved_fixed_ips.py +965 -0
- gcore/resources/cloud/reserved_fixed_ips/vip.py +577 -0
- gcore/resources/cloud/secrets.py +797 -0
- gcore/resources/cloud/security_groups/__init__.py +33 -0
- gcore/resources/cloud/security_groups/rules.py +626 -0
- gcore/resources/cloud/security_groups/security_groups.py +863 -0
- gcore/resources/cloud/ssh_keys.py +635 -0
- gcore/resources/cloud/tasks.py +699 -0
- gcore/resources/cloud/users/__init__.py +33 -0
- gcore/resources/cloud/users/role_assignments.py +533 -0
- gcore/resources/cloud/users/users.py +102 -0
- gcore/resources/cloud/volumes.py +1710 -0
- gcore/types/__init__.py +3 -0
- gcore/types/cloud/__init__.py +199 -0
- gcore/types/cloud/allowed_address_pairs.py +15 -0
- gcore/types/cloud/aws_iam_data.py +13 -0
- gcore/types/cloud/aws_iam_data_param.py +15 -0
- gcore/types/cloud/baremetal/__init__.py +13 -0
- gcore/types/cloud/baremetal/baremetal_fixed_address.py +30 -0
- gcore/types/cloud/baremetal/baremetal_floating_address.py +15 -0
- gcore/types/cloud/baremetal/baremetal_server.py +178 -0
- gcore/types/cloud/baremetal/flavor_list_params.py +35 -0
- gcore/types/cloud/baremetal/flavor_list_suitable_params.py +22 -0
- gcore/types/cloud/baremetal/image_list_params.py +33 -0
- gcore/types/cloud/baremetal/server_create_params.py +370 -0
- gcore/types/cloud/baremetal/server_list_params.py +114 -0
- gcore/types/cloud/baremetal/server_rebuild_params.py +23 -0
- gcore/types/cloud/baremetal_flavor.py +58 -0
- gcore/types/cloud/baremetal_flavor_list.py +16 -0
- gcore/types/cloud/billing_reservation.py +153 -0
- gcore/types/cloud/billing_reservation_list_params.py +54 -0
- gcore/types/cloud/blackhole_port.py +66 -0
- gcore/types/cloud/capacity.py +13 -0
- gcore/types/cloud/console.py +18 -0
- gcore/types/cloud/container_probe.py +36 -0
- gcore/types/cloud/container_probe_config.py +16 -0
- gcore/types/cloud/container_probe_config_create_param.py +18 -0
- gcore/types/cloud/container_probe_create_param.py +38 -0
- gcore/types/cloud/container_probe_exec.py +12 -0
- gcore/types/cloud/container_probe_exec_create_param.py +13 -0
- gcore/types/cloud/container_probe_http_get.py +26 -0
- gcore/types/cloud/container_probe_http_get_create_param.py +25 -0
- gcore/types/cloud/container_probe_tcp_socket.py +10 -0
- gcore/types/cloud/container_probe_tcp_socket_create_param.py +12 -0
- gcore/types/cloud/container_scale.py +25 -0
- gcore/types/cloud/container_scale_trigger_rate.py +13 -0
- gcore/types/cloud/container_scale_trigger_sqs.py +33 -0
- gcore/types/cloud/container_scale_trigger_threshold.py +10 -0
- gcore/types/cloud/container_scale_triggers.py +36 -0
- gcore/types/cloud/ddos_profile.py +33 -0
- gcore/types/cloud/ddos_profile_field.py +31 -0
- gcore/types/cloud/ddos_profile_option_list.py +15 -0
- gcore/types/cloud/ddos_profile_status.py +13 -0
- gcore/types/cloud/ddos_profile_template.py +18 -0
- gcore/types/cloud/ddos_profile_template_field.py +23 -0
- gcore/types/cloud/deploy_status.py +13 -0
- gcore/types/cloud/file_share.py +111 -0
- gcore/types/cloud/file_share_create_params.py +104 -0
- gcore/types/cloud/file_share_list_params.py +24 -0
- gcore/types/cloud/file_share_resize_params.py +18 -0
- gcore/types/cloud/file_share_update_params.py +18 -0
- gcore/types/cloud/file_shares/__init__.py +7 -0
- gcore/types/cloud/file_shares/access_rule.py +21 -0
- gcore/types/cloud/file_shares/access_rule_create_params.py +21 -0
- gcore/types/cloud/file_shares/access_rule_list.py +16 -0
- gcore/types/cloud/fixed_address.py +38 -0
- gcore/types/cloud/fixed_address_short.py +24 -0
- gcore/types/cloud/flavor_hardware_description.py +27 -0
- gcore/types/cloud/floating_address.py +15 -0
- gcore/types/cloud/floating_ip.py +77 -0
- gcore/types/cloud/floating_ip_assign_params.py +20 -0
- gcore/types/cloud/floating_ip_create_params.py +40 -0
- gcore/types/cloud/floating_ip_detailed.py +222 -0
- gcore/types/cloud/floating_ip_list_params.py +35 -0
- gcore/types/cloud/floating_ip_status.py +7 -0
- gcore/types/cloud/gpu_baremetal_cluster.py +116 -0
- gcore/types/cloud/gpu_baremetal_cluster_create_params.py +135 -0
- gcore/types/cloud/gpu_baremetal_cluster_delete_params.py +28 -0
- gcore/types/cloud/gpu_baremetal_cluster_list_params.py +19 -0
- gcore/types/cloud/gpu_baremetal_cluster_rebuild_params.py +26 -0
- gcore/types/cloud/gpu_baremetal_cluster_resize_params.py +16 -0
- gcore/types/cloud/gpu_baremetal_cluster_server.py +200 -0
- gcore/types/cloud/gpu_baremetal_cluster_server_list.py +16 -0
- gcore/types/cloud/gpu_baremetal_clusters/__init__.py +9 -0
- gcore/types/cloud/gpu_baremetal_clusters/flavor_list_params.py +21 -0
- gcore/types/cloud/gpu_baremetal_clusters/image_upload_params.py +58 -0
- gcore/types/cloud/gpu_baremetal_clusters/server_attach_interface_params.py +253 -0
- gcore/types/cloud/gpu_baremetal_clusters/server_delete_params.py +21 -0
- gcore/types/cloud/gpu_baremetal_clusters/server_detach_interface_params.py +19 -0
- gcore/types/cloud/gpu_baremetal_flavor.py +133 -0
- gcore/types/cloud/gpu_baremetal_flavor_list.py +16 -0
- gcore/types/cloud/gpu_image.py +70 -0
- gcore/types/cloud/gpu_image_list.py +16 -0
- gcore/types/cloud/health_monitor.py +48 -0
- gcore/types/cloud/health_monitor_status.py +22 -0
- gcore/types/cloud/http_method.py +7 -0
- gcore/types/cloud/image.py +100 -0
- gcore/types/cloud/image_list.py +16 -0
- gcore/types/cloud/inference/__init__.py +25 -0
- gcore/types/cloud/inference/container.py +26 -0
- gcore/types/cloud/inference/deployment_create_params.py +222 -0
- gcore/types/cloud/inference/deployment_list_params.py +21 -0
- gcore/types/cloud/inference/deployment_update_params.py +215 -0
- gcore/types/cloud/inference/deployments/__init__.py +5 -0
- gcore/types/cloud/inference/deployments/log_list_params.py +28 -0
- gcore/types/cloud/inference/flavor_list_params.py +18 -0
- gcore/types/cloud/inference/inference.py +95 -0
- gcore/types/cloud/inference/inference_apikey_secret.py +15 -0
- gcore/types/cloud/inference/inference_flavor.py +34 -0
- gcore/types/cloud/inference/inference_log.py +21 -0
- gcore/types/cloud/inference/inference_registry_credential.py +19 -0
- gcore/types/cloud/inference/inference_registry_credential_full.py +22 -0
- gcore/types/cloud/inference/inference_secret.py +17 -0
- gcore/types/cloud/inference/mlcatalog_model_card.py +65 -0
- gcore/types/cloud/inference/mlcatalog_order_by_choices.py +7 -0
- gcore/types/cloud/inference/model_list_params.py +23 -0
- gcore/types/cloud/inference/registry_credential_create_params.py +24 -0
- gcore/types/cloud/inference/registry_credential_list_params.py +21 -0
- gcore/types/cloud/inference/registry_credential_replace_params.py +21 -0
- gcore/types/cloud/inference/secret_create_params.py +23 -0
- gcore/types/cloud/inference/secret_list_params.py +21 -0
- gcore/types/cloud/inference/secret_replace_params.py +20 -0
- gcore/types/cloud/inference_probes.py +19 -0
- gcore/types/cloud/ingress_opts_out.py +16 -0
- gcore/types/cloud/ingress_opts_param.py +18 -0
- gcore/types/cloud/instance.py +296 -0
- gcore/types/cloud/instance_action_params.py +32 -0
- gcore/types/cloud/instance_add_to_placement_group_params.py +16 -0
- gcore/types/cloud/instance_assign_security_group_params.py +28 -0
- gcore/types/cloud/instance_create_params.py +622 -0
- gcore/types/cloud/instance_delete_params.py +33 -0
- gcore/types/cloud/instance_get_console_params.py +16 -0
- gcore/types/cloud/instance_interface.py +40 -0
- gcore/types/cloud/instance_isolation.py +12 -0
- gcore/types/cloud/instance_list.py +16 -0
- gcore/types/cloud/instance_list_params.py +146 -0
- gcore/types/cloud/instance_metrics_time_unit.py +7 -0
- gcore/types/cloud/instance_resize_params.py +16 -0
- gcore/types/cloud/instance_unassign_security_group_params.py +28 -0
- gcore/types/cloud/instance_update_params.py +18 -0
- gcore/types/cloud/instances/__init__.py +19 -0
- gcore/types/cloud/instances/flavor_list_for_resize_params.py +16 -0
- gcore/types/cloud/instances/flavor_list_params.py +25 -0
- gcore/types/cloud/instances/flavor_list_suitable_params.py +56 -0
- gcore/types/cloud/instances/image_create_from_volume_params.py +53 -0
- gcore/types/cloud/instances/image_get_params.py +16 -0
- gcore/types/cloud/instances/image_list_params.py +33 -0
- gcore/types/cloud/instances/image_update_params.py +43 -0
- gcore/types/cloud/instances/image_upload_params.py +62 -0
- gcore/types/cloud/instances/instance_flavor.py +49 -0
- gcore/types/cloud/instances/instance_flavor_list.py +16 -0
- gcore/types/cloud/instances/interface_attach_params.py +253 -0
- gcore/types/cloud/instances/interface_detach_params.py +19 -0
- gcore/types/cloud/instances/metric_list_params.py +23 -0
- gcore/types/cloud/instances/metrics.py +52 -0
- gcore/types/cloud/instances/metrics_list.py +16 -0
- gcore/types/cloud/interface_ip_family.py +7 -0
- gcore/types/cloud/ip_assignment.py +13 -0
- gcore/types/cloud/ip_ranges.py +12 -0
- gcore/types/cloud/ip_version.py +7 -0
- gcore/types/cloud/laas_index_retention_policy.py +12 -0
- gcore/types/cloud/laas_index_retention_policy_param.py +13 -0
- gcore/types/cloud/lb_algorithm.py +7 -0
- gcore/types/cloud/lb_health_monitor_type.py +7 -0
- gcore/types/cloud/lb_listener_protocol.py +7 -0
- gcore/types/cloud/lb_pool_protocol.py +7 -0
- gcore/types/cloud/lb_session_persistence_type.py +7 -0
- gcore/types/cloud/listener_status.py +27 -0
- gcore/types/cloud/load_balancer.py +144 -0
- gcore/types/cloud/load_balancer_create_params.py +327 -0
- gcore/types/cloud/load_balancer_failover_params.py +16 -0
- gcore/types/cloud/load_balancer_flavor_detail.py +40 -0
- gcore/types/cloud/load_balancer_flavor_list.py +16 -0
- gcore/types/cloud/load_balancer_get_params.py +19 -0
- gcore/types/cloud/load_balancer_instance_role.py +7 -0
- gcore/types/cloud/load_balancer_l7_policy.py +86 -0
- gcore/types/cloud/load_balancer_l7_policy_list.py +16 -0
- gcore/types/cloud/load_balancer_l7_rule.py +72 -0
- gcore/types/cloud/load_balancer_l7_rule_list.py +16 -0
- gcore/types/cloud/load_balancer_list_params.py +53 -0
- gcore/types/cloud/load_balancer_listener_detail.py +97 -0
- gcore/types/cloud/load_balancer_listener_list.py +16 -0
- gcore/types/cloud/load_balancer_member_connectivity.py +7 -0
- gcore/types/cloud/load_balancer_metrics.py +32 -0
- gcore/types/cloud/load_balancer_metrics_list.py +16 -0
- gcore/types/cloud/load_balancer_operating_status.py +7 -0
- gcore/types/cloud/load_balancer_pool.py +87 -0
- gcore/types/cloud/load_balancer_pool_list.py +16 -0
- gcore/types/cloud/load_balancer_resize_params.py +16 -0
- gcore/types/cloud/load_balancer_statistics.py +22 -0
- gcore/types/cloud/load_balancer_status.py +38 -0
- gcore/types/cloud/load_balancer_status_list.py +16 -0
- gcore/types/cloud/load_balancer_update_params.py +43 -0
- gcore/types/cloud/load_balancers/__init__.py +15 -0
- gcore/types/cloud/load_balancers/flavor_list_params.py +16 -0
- gcore/types/cloud/load_balancers/l7_policies/__init__.py +6 -0
- gcore/types/cloud/load_balancers/l7_policies/rule_create_params.py +50 -0
- gcore/types/cloud/load_balancers/l7_policies/rule_replace_params.py +43 -0
- gcore/types/cloud/load_balancers/l7_policy_create_params.py +54 -0
- gcore/types/cloud/load_balancers/l7_policy_replace_params.py +51 -0
- gcore/types/cloud/load_balancers/listener_create_params.py +72 -0
- gcore/types/cloud/load_balancers/listener_get_params.py +16 -0
- gcore/types/cloud/load_balancers/listener_list_params.py +19 -0
- gcore/types/cloud/load_balancers/listener_update_params.py +55 -0
- gcore/types/cloud/load_balancers/metric_list_params.py +21 -0
- gcore/types/cloud/load_balancers/pool_create_params.py +141 -0
- gcore/types/cloud/load_balancers/pool_list_params.py +25 -0
- gcore/types/cloud/load_balancers/pool_update_params.py +139 -0
- gcore/types/cloud/load_balancers/pools/__init__.py +6 -0
- gcore/types/cloud/load_balancers/pools/health_monitor_create_params.py +49 -0
- gcore/types/cloud/load_balancers/pools/member_add_params.py +44 -0
- gcore/types/cloud/logging.py +22 -0
- gcore/types/cloud/member.py +47 -0
- gcore/types/cloud/member_status.py +24 -0
- gcore/types/cloud/network.py +79 -0
- gcore/types/cloud/network_create_params.py +34 -0
- gcore/types/cloud/network_details.py +79 -0
- gcore/types/cloud/network_interface.py +78 -0
- gcore/types/cloud/network_interface_list.py +16 -0
- gcore/types/cloud/network_list_params.py +36 -0
- gcore/types/cloud/network_update_params.py +16 -0
- gcore/types/cloud/networks/__init__.py +14 -0
- gcore/types/cloud/networks/router.py +83 -0
- gcore/types/cloud/networks/router_attach_subnet_params.py +24 -0
- gcore/types/cloud/networks/router_create_params.py +75 -0
- gcore/types/cloud/networks/router_detach_subnet_params.py +16 -0
- gcore/types/cloud/networks/router_list.py +16 -0
- gcore/types/cloud/networks/router_list_params.py +19 -0
- gcore/types/cloud/networks/router_update_params.py +45 -0
- gcore/types/cloud/networks/subnet_create_params.py +82 -0
- gcore/types/cloud/networks/subnet_list_params.py +58 -0
- gcore/types/cloud/networks/subnet_update_params.py +47 -0
- gcore/types/cloud/placement_group.py +41 -0
- gcore/types/cloud/placement_group_create_params.py +19 -0
- gcore/types/cloud/placement_group_list.py +16 -0
- gcore/types/cloud/pool_status.py +31 -0
- gcore/types/cloud/project.py +47 -0
- gcore/types/cloud/project_create_params.py +22 -0
- gcore/types/cloud/project_list_params.py +27 -0
- gcore/types/cloud/project_replace_params.py +18 -0
- gcore/types/cloud/provisioning_status.py +9 -0
- gcore/types/cloud/quota_get_all_response.py +340 -0
- gcore/types/cloud/quota_get_by_region_response.py +288 -0
- gcore/types/cloud/quota_get_global_response.py +51 -0
- gcore/types/cloud/quotas/__init__.py +8 -0
- gcore/types/cloud/quotas/request_create_params.py +193 -0
- gcore/types/cloud/quotas/request_get_response.py +205 -0
- gcore/types/cloud/quotas/request_list_params.py +22 -0
- gcore/types/cloud/quotas/request_list_response.py +205 -0
- gcore/types/cloud/region.py +101 -0
- gcore/types/cloud/region_capacity.py +16 -0
- gcore/types/cloud/region_capacity_list.py +16 -0
- gcore/types/cloud/region_get_params.py +18 -0
- gcore/types/cloud/region_list_params.py +31 -0
- gcore/types/cloud/registries/__init__.py +14 -0
- gcore/types/cloud/registries/registry_artifact.py +35 -0
- gcore/types/cloud/registries/registry_artifact_list.py +16 -0
- gcore/types/cloud/registries/registry_repository.py +30 -0
- gcore/types/cloud/registries/registry_repository_list.py +16 -0
- gcore/types/cloud/registries/registry_user.py +28 -0
- gcore/types/cloud/registries/registry_user_created.py +31 -0
- gcore/types/cloud/registries/registry_user_list.py +16 -0
- gcore/types/cloud/registries/user_create_multiple_params.py +36 -0
- gcore/types/cloud/registries/user_create_params.py +30 -0
- gcore/types/cloud/registries/user_update_params.py +21 -0
- gcore/types/cloud/registry.py +33 -0
- gcore/types/cloud/registry_create_params.py +24 -0
- gcore/types/cloud/registry_list.py +16 -0
- gcore/types/cloud/registry_resize_params.py +16 -0
- gcore/types/cloud/registry_tag.py +27 -0
- gcore/types/cloud/reserved_fixed_ip.py +98 -0
- gcore/types/cloud/reserved_fixed_ip_create_params.py +107 -0
- gcore/types/cloud/reserved_fixed_ip_list_params.py +47 -0
- gcore/types/cloud/reserved_fixed_ips/__init__.py +12 -0
- gcore/types/cloud/reserved_fixed_ips/candidate_port.py +26 -0
- gcore/types/cloud/reserved_fixed_ips/candidate_port_list.py +16 -0
- gcore/types/cloud/reserved_fixed_ips/connected_port.py +26 -0
- gcore/types/cloud/reserved_fixed_ips/connected_port_list.py +16 -0
- gcore/types/cloud/reserved_fixed_ips/ip_with_subnet.py +17 -0
- gcore/types/cloud/reserved_fixed_ips/vip_replace_connected_ports_params.py +17 -0
- gcore/types/cloud/reserved_fixed_ips/vip_toggle_params.py +16 -0
- gcore/types/cloud/reserved_fixed_ips/vip_update_connected_ports_params.py +17 -0
- gcore/types/cloud/route.py +16 -0
- gcore/types/cloud/secret.py +64 -0
- gcore/types/cloud/secret_create_params.py +66 -0
- gcore/types/cloud/secret_list_response.py +16 -0
- gcore/types/cloud/secret_upload_tls_certificate_params.py +39 -0
- gcore/types/cloud/security_group.py +45 -0
- gcore/types/cloud/security_group_copy_params.py +16 -0
- gcore/types/cloud/security_group_create_params.py +94 -0
- gcore/types/cloud/security_group_list_params.py +30 -0
- gcore/types/cloud/security_group_rule.py +83 -0
- gcore/types/cloud/security_group_update_params.py +83 -0
- gcore/types/cloud/security_groups/__init__.py +6 -0
- gcore/types/cloud/security_groups/rule_create_params.py +65 -0
- gcore/types/cloud/security_groups/rule_replace_params.py +72 -0
- gcore/types/cloud/session_persistence.py +22 -0
- gcore/types/cloud/ssh_key.py +39 -0
- gcore/types/cloud/ssh_key_create_params.py +31 -0
- gcore/types/cloud/ssh_key_created.py +53 -0
- gcore/types/cloud/ssh_key_list_params.py +21 -0
- gcore/types/cloud/ssh_key_update_params.py +15 -0
- gcore/types/cloud/subnet.py +87 -0
- gcore/types/cloud/tag.py +16 -0
- gcore/types/cloud/tag_update_map_param.py +10 -0
- gcore/types/cloud/task.py +191 -0
- gcore/types/cloud/task_acknowledge_all_params.py +16 -0
- gcore/types/cloud/task_id_list.py +12 -0
- gcore/types/cloud/task_list_params.py +104 -0
- gcore/types/cloud/users/__init__.py +9 -0
- gcore/types/cloud/users/role_assignment.py +33 -0
- gcore/types/cloud/users/role_assignment_create_params.py +22 -0
- gcore/types/cloud/users/role_assignment_list_params.py +25 -0
- gcore/types/cloud/users/role_assignment_update_delete.py +10 -0
- gcore/types/cloud/users/role_assignment_update_params.py +22 -0
- gcore/types/cloud/volume.py +141 -0
- gcore/types/cloud/volume_attach_to_instance_params.py +21 -0
- gcore/types/cloud/volume_change_type_params.py +18 -0
- gcore/types/cloud/volume_create_params.py +176 -0
- gcore/types/cloud/volume_delete_params.py +18 -0
- gcore/types/cloud/volume_detach_from_instance_params.py +18 -0
- gcore/types/cloud/volume_list_params.py +56 -0
- gcore/types/cloud/volume_resize_params.py +18 -0
- gcore/types/cloud/volume_update_params.py +18 -0
- gcore-0.1.0a1.dist-info/METADATA +485 -0
- gcore-0.1.0a1.dist-info/RECORD +420 -0
- gcore-0.1.0a1.dist-info/WHEEL +4 -0
- gcore-0.1.0a1.dist-info/licenses/LICENSE +201 -0
|
@@ -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__ = ["GPUBaremetalClusterListParams"]
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class GPUBaremetalClusterListParams(TypedDict, total=False):
|
|
11
|
+
project_id: int
|
|
12
|
+
|
|
13
|
+
region_id: int
|
|
14
|
+
|
|
15
|
+
limit: int
|
|
16
|
+
"""Limit the number of returned clusters"""
|
|
17
|
+
|
|
18
|
+
offset: int
|
|
19
|
+
"""Offset value is used to exclude the first set of records from the result"""
|
|
@@ -0,0 +1,26 @@
|
|
|
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 List, Optional
|
|
6
|
+
from typing_extensions import Required, TypedDict
|
|
7
|
+
|
|
8
|
+
__all__ = ["GPUBaremetalClusterRebuildParams"]
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class GPUBaremetalClusterRebuildParams(TypedDict, total=False):
|
|
12
|
+
project_id: int
|
|
13
|
+
|
|
14
|
+
region_id: int
|
|
15
|
+
|
|
16
|
+
nodes: Required[List[str]]
|
|
17
|
+
"""List of nodes uuids to be rebuild"""
|
|
18
|
+
|
|
19
|
+
image_id: Optional[str]
|
|
20
|
+
"""AI GPU image ID"""
|
|
21
|
+
|
|
22
|
+
user_data: Optional[str]
|
|
23
|
+
"""
|
|
24
|
+
String in base64 format.Examples of the user_data:
|
|
25
|
+
https://cloudinit.readthedocs.io/en/latest/topics/examples.html
|
|
26
|
+
"""
|
|
@@ -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 Required, TypedDict
|
|
6
|
+
|
|
7
|
+
__all__ = ["GPUBaremetalClusterResizeParams"]
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class GPUBaremetalClusterResizeParams(TypedDict, total=False):
|
|
11
|
+
project_id: int
|
|
12
|
+
|
|
13
|
+
region_id: int
|
|
14
|
+
|
|
15
|
+
instances_count: Required[int]
|
|
16
|
+
"""Resized (total) number of instances"""
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
from typing import Dict, List, Union, Optional
|
|
4
|
+
from datetime import datetime
|
|
5
|
+
from typing_extensions import Literal, TypeAlias
|
|
6
|
+
|
|
7
|
+
from .tag import Tag
|
|
8
|
+
from ..._models import BaseModel
|
|
9
|
+
from .ddos_profile import DDOSProfile
|
|
10
|
+
from .fixed_address import FixedAddress
|
|
11
|
+
from .blackhole_port import BlackholePort
|
|
12
|
+
from .floating_address import FloatingAddress
|
|
13
|
+
from .instance_isolation import InstanceIsolation
|
|
14
|
+
from .fixed_address_short import FixedAddressShort
|
|
15
|
+
|
|
16
|
+
__all__ = [
|
|
17
|
+
"GPUBaremetalClusterServer",
|
|
18
|
+
"Address",
|
|
19
|
+
"FixedIPAssignment",
|
|
20
|
+
"Flavor",
|
|
21
|
+
"FlavorHardwareDescription",
|
|
22
|
+
"SecurityGroup",
|
|
23
|
+
]
|
|
24
|
+
|
|
25
|
+
Address: TypeAlias = Union[FloatingAddress, FixedAddressShort, FixedAddress]
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
class FixedIPAssignment(BaseModel):
|
|
29
|
+
external: bool
|
|
30
|
+
"""Is network external"""
|
|
31
|
+
|
|
32
|
+
ip_address: str
|
|
33
|
+
"""Ip address"""
|
|
34
|
+
|
|
35
|
+
subnet_id: str
|
|
36
|
+
"""Interface subnet id"""
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
class FlavorHardwareDescription(BaseModel):
|
|
40
|
+
cpu: str
|
|
41
|
+
"""Human-readable CPU description"""
|
|
42
|
+
|
|
43
|
+
disk: str
|
|
44
|
+
"""Human-readable disk description"""
|
|
45
|
+
|
|
46
|
+
gpu: str
|
|
47
|
+
"""Human-readable GPU description"""
|
|
48
|
+
|
|
49
|
+
license: str
|
|
50
|
+
"""If the flavor is licensed, this field contains the license type"""
|
|
51
|
+
|
|
52
|
+
network: str
|
|
53
|
+
"""Human-readable NIC description"""
|
|
54
|
+
|
|
55
|
+
ram: str
|
|
56
|
+
"""Human-readable RAM description"""
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
class Flavor(BaseModel):
|
|
60
|
+
architecture: str
|
|
61
|
+
"""CPU architecture"""
|
|
62
|
+
|
|
63
|
+
flavor_id: str
|
|
64
|
+
"""Flavor ID is the same as name"""
|
|
65
|
+
|
|
66
|
+
flavor_name: str
|
|
67
|
+
"""Flavor name"""
|
|
68
|
+
|
|
69
|
+
hardware_description: FlavorHardwareDescription
|
|
70
|
+
"""Additional hardware description"""
|
|
71
|
+
|
|
72
|
+
os_type: str
|
|
73
|
+
"""Operating system"""
|
|
74
|
+
|
|
75
|
+
ram: int
|
|
76
|
+
"""RAM size in MiB"""
|
|
77
|
+
|
|
78
|
+
resource_class: str
|
|
79
|
+
"""Flavor resource class for mapping to hardware capacity"""
|
|
80
|
+
|
|
81
|
+
vcpus: int
|
|
82
|
+
"""Virtual CPU count. For bare metal flavors, it's a physical CPU count"""
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
class SecurityGroup(BaseModel):
|
|
86
|
+
name: str
|
|
87
|
+
"""Name."""
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
class GPUBaremetalClusterServer(BaseModel):
|
|
91
|
+
id: str
|
|
92
|
+
"""GPU server ID"""
|
|
93
|
+
|
|
94
|
+
addresses: Dict[str, List[Address]]
|
|
95
|
+
"""Map of network_name to list of addresses in that network"""
|
|
96
|
+
|
|
97
|
+
blackhole_ports: List[BlackholePort]
|
|
98
|
+
"""IP addresses of the instances that are blackholed by DDoS mitigation system"""
|
|
99
|
+
|
|
100
|
+
created_at: datetime
|
|
101
|
+
"""Datetime when GPU server was created"""
|
|
102
|
+
|
|
103
|
+
creator_task_id: Optional[str] = None
|
|
104
|
+
"""Task that created this entity"""
|
|
105
|
+
|
|
106
|
+
ddos_profile: Optional[DDOSProfile] = None
|
|
107
|
+
"""Advanced DDoS protection profile.
|
|
108
|
+
|
|
109
|
+
It is always `null` if query parameter `with_ddos=true` is not set.
|
|
110
|
+
"""
|
|
111
|
+
|
|
112
|
+
fixed_ip_assignments: Optional[List[FixedIPAssignment]] = None
|
|
113
|
+
"""Fixed IP assigned to instance"""
|
|
114
|
+
|
|
115
|
+
flavor: Flavor
|
|
116
|
+
"""Flavor"""
|
|
117
|
+
|
|
118
|
+
instance_description: Optional[str] = None
|
|
119
|
+
"""Instance description"""
|
|
120
|
+
|
|
121
|
+
instance_isolation: Optional[InstanceIsolation] = None
|
|
122
|
+
"""Instance isolation information"""
|
|
123
|
+
|
|
124
|
+
name: str
|
|
125
|
+
"""GPU server name"""
|
|
126
|
+
|
|
127
|
+
project_id: int
|
|
128
|
+
"""Project ID"""
|
|
129
|
+
|
|
130
|
+
region: str
|
|
131
|
+
"""Region name"""
|
|
132
|
+
|
|
133
|
+
region_id: int
|
|
134
|
+
"""Region ID"""
|
|
135
|
+
|
|
136
|
+
security_groups: List[SecurityGroup]
|
|
137
|
+
"""Security groups"""
|
|
138
|
+
|
|
139
|
+
ssh_key_name: Optional[str] = None
|
|
140
|
+
"""SSH key name assigned to instance"""
|
|
141
|
+
|
|
142
|
+
status: Literal[
|
|
143
|
+
"ACTIVE",
|
|
144
|
+
"BUILD",
|
|
145
|
+
"DELETED",
|
|
146
|
+
"ERROR",
|
|
147
|
+
"HARD_REBOOT",
|
|
148
|
+
"MIGRATING",
|
|
149
|
+
"PASSWORD",
|
|
150
|
+
"PAUSED",
|
|
151
|
+
"REBOOT",
|
|
152
|
+
"REBUILD",
|
|
153
|
+
"RESCUE",
|
|
154
|
+
"RESIZE",
|
|
155
|
+
"REVERT_RESIZE",
|
|
156
|
+
"SHELVED",
|
|
157
|
+
"SHELVED_OFFLOADED",
|
|
158
|
+
"SHUTOFF",
|
|
159
|
+
"SOFT_DELETED",
|
|
160
|
+
"SUSPENDED",
|
|
161
|
+
"UNKNOWN",
|
|
162
|
+
"VERIFY_RESIZE",
|
|
163
|
+
]
|
|
164
|
+
"""Instance status"""
|
|
165
|
+
|
|
166
|
+
tags: List[Tag]
|
|
167
|
+
"""List of key-value tags associated with the resource.
|
|
168
|
+
|
|
169
|
+
A tag is a key-value pair that can be associated with a resource, enabling
|
|
170
|
+
efficient filtering and grouping for better organization and management. Some
|
|
171
|
+
tags are read-only and cannot be modified by the user. Tags are also integrated
|
|
172
|
+
with cost reports, allowing cost data to be filtered based on tag keys or
|
|
173
|
+
values.
|
|
174
|
+
"""
|
|
175
|
+
|
|
176
|
+
task_id: Optional[str] = None
|
|
177
|
+
"""The UUID of the active task that currently holds a lock on the resource.
|
|
178
|
+
|
|
179
|
+
This lock prevents concurrent modifications to ensure consistency. If `null`,
|
|
180
|
+
the resource is not locked.
|
|
181
|
+
"""
|
|
182
|
+
|
|
183
|
+
task_state: Optional[str] = None
|
|
184
|
+
"""Task state"""
|
|
185
|
+
|
|
186
|
+
vm_state: Literal[
|
|
187
|
+
"active",
|
|
188
|
+
"building",
|
|
189
|
+
"deleted",
|
|
190
|
+
"error",
|
|
191
|
+
"paused",
|
|
192
|
+
"rescued",
|
|
193
|
+
"resized",
|
|
194
|
+
"shelved",
|
|
195
|
+
"shelved_offloaded",
|
|
196
|
+
"soft-deleted",
|
|
197
|
+
"stopped",
|
|
198
|
+
"suspended",
|
|
199
|
+
]
|
|
200
|
+
"""Virtual machine state (active)"""
|
|
@@ -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 .gpu_baremetal_cluster_server import GPUBaremetalClusterServer
|
|
7
|
+
|
|
8
|
+
__all__ = ["GPUBaremetalClusterServerList"]
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class GPUBaremetalClusterServerList(BaseModel):
|
|
12
|
+
count: int
|
|
13
|
+
"""Number of objects"""
|
|
14
|
+
|
|
15
|
+
results: List[GPUBaremetalClusterServer]
|
|
16
|
+
"""Objects"""
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
from .flavor_list_params import FlavorListParams as FlavorListParams
|
|
6
|
+
from .image_upload_params import ImageUploadParams as ImageUploadParams
|
|
7
|
+
from .server_delete_params import ServerDeleteParams as ServerDeleteParams
|
|
8
|
+
from .server_attach_interface_params import ServerAttachInterfaceParams as ServerAttachInterfaceParams
|
|
9
|
+
from .server_detach_interface_params import ServerDetachInterfaceParams as ServerDetachInterfaceParams
|
|
@@ -0,0 +1,21 @@
|
|
|
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
|
+
"""Project ID"""
|
|
13
|
+
|
|
14
|
+
region_id: int
|
|
15
|
+
"""Region ID"""
|
|
16
|
+
|
|
17
|
+
hide_disabled: bool
|
|
18
|
+
"""Set to `true` to remove the disabled flavors from the response."""
|
|
19
|
+
|
|
20
|
+
include_prices: bool
|
|
21
|
+
"""Set to `true` if the response should include flavor prices."""
|
|
@@ -0,0 +1,58 @@
|
|
|
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 Optional
|
|
6
|
+
from typing_extensions import Literal, Required, TypedDict
|
|
7
|
+
|
|
8
|
+
from ..tag_update_map_param import TagUpdateMapParam
|
|
9
|
+
|
|
10
|
+
__all__ = ["ImageUploadParams"]
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class ImageUploadParams(TypedDict, total=False):
|
|
14
|
+
project_id: int
|
|
15
|
+
"""Project ID"""
|
|
16
|
+
|
|
17
|
+
region_id: int
|
|
18
|
+
"""Region ID"""
|
|
19
|
+
|
|
20
|
+
name: Required[str]
|
|
21
|
+
"""Image name"""
|
|
22
|
+
|
|
23
|
+
url: Required[str]
|
|
24
|
+
"""Image URL"""
|
|
25
|
+
|
|
26
|
+
architecture: Optional[Literal["aarch64", "x86_64"]]
|
|
27
|
+
"""Image architecture type: aarch64, x86_64"""
|
|
28
|
+
|
|
29
|
+
cow_format: bool
|
|
30
|
+
"""
|
|
31
|
+
When True, image cannot be deleted unless all volumes, created from it, are
|
|
32
|
+
deleted.
|
|
33
|
+
"""
|
|
34
|
+
|
|
35
|
+
hw_firmware_type: Optional[Literal["bios", "uefi"]]
|
|
36
|
+
"""Specifies the type of firmware with which to boot the guest."""
|
|
37
|
+
|
|
38
|
+
os_distro: Optional[str]
|
|
39
|
+
"""OS Distribution, i.e. Debian, CentOS, Ubuntu, CoreOS etc."""
|
|
40
|
+
|
|
41
|
+
os_type: Optional[Literal["linux", "windows"]]
|
|
42
|
+
"""The operating system installed on the image. Linux by default"""
|
|
43
|
+
|
|
44
|
+
os_version: Optional[str]
|
|
45
|
+
"""OS version, i.e. 19.04 (for Ubuntu) or 9.4 for Debian"""
|
|
46
|
+
|
|
47
|
+
ssh_key: Literal["allow", "deny", "required"]
|
|
48
|
+
"""Permission to use a ssh key in instances"""
|
|
49
|
+
|
|
50
|
+
tags: TagUpdateMapParam
|
|
51
|
+
"""Key-value tags to associate with the resource.
|
|
52
|
+
|
|
53
|
+
A tag is a key-value pair that can be associated with a resource, enabling
|
|
54
|
+
efficient filtering and grouping for better organization and management. Some
|
|
55
|
+
tags are read-only and cannot be modified by the user. Tags are also integrated
|
|
56
|
+
with cost reports, allowing cost data to be filtered based on tag keys or
|
|
57
|
+
values.
|
|
58
|
+
"""
|
|
@@ -0,0 +1,253 @@
|
|
|
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 Union, Iterable, Optional
|
|
6
|
+
from typing_extensions import Literal, Required, TypeAlias, TypedDict
|
|
7
|
+
|
|
8
|
+
__all__ = [
|
|
9
|
+
"ServerAttachInterfaceParams",
|
|
10
|
+
"NewInterfaceExternalExtendSchemaWithDDOS",
|
|
11
|
+
"NewInterfaceExternalExtendSchemaWithDDOSDDOSProfile",
|
|
12
|
+
"NewInterfaceExternalExtendSchemaWithDdosddosProfileField",
|
|
13
|
+
"NewInterfaceExternalExtendSchemaWithDDOSSecurityGroup",
|
|
14
|
+
"NewInterfaceSpecificSubnetSchema",
|
|
15
|
+
"NewInterfaceSpecificSubnetSchemaDDOSProfile",
|
|
16
|
+
"NewInterfaceSpecificSubnetSchemaDDOSProfileField",
|
|
17
|
+
"NewInterfaceSpecificSubnetSchemaSecurityGroup",
|
|
18
|
+
"NewInterfaceAnySubnetSchema",
|
|
19
|
+
"NewInterfaceAnySubnetSchemaDDOSProfile",
|
|
20
|
+
"NewInterfaceAnySubnetSchemaDDOSProfileField",
|
|
21
|
+
"NewInterfaceAnySubnetSchemaSecurityGroup",
|
|
22
|
+
"NewInterfaceReservedFixedIPSchema",
|
|
23
|
+
"NewInterfaceReservedFixedIPSchemaDDOSProfile",
|
|
24
|
+
"NewInterfaceReservedFixedIPSchemaDDOSProfileField",
|
|
25
|
+
"NewInterfaceReservedFixedIPSchemaSecurityGroup",
|
|
26
|
+
]
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
class NewInterfaceExternalExtendSchemaWithDDOS(TypedDict, total=False):
|
|
30
|
+
project_id: int
|
|
31
|
+
|
|
32
|
+
region_id: int
|
|
33
|
+
|
|
34
|
+
ddos_profile: NewInterfaceExternalExtendSchemaWithDDOSDDOSProfile
|
|
35
|
+
"""Advanced DDoS protection."""
|
|
36
|
+
|
|
37
|
+
interface_name: str
|
|
38
|
+
"""Interface name"""
|
|
39
|
+
|
|
40
|
+
ip_family: Literal["dual", "ipv4", "ipv6"]
|
|
41
|
+
"""Which subnets should be selected: IPv4, IPv6 or use dual stack."""
|
|
42
|
+
|
|
43
|
+
port_group: int
|
|
44
|
+
"""Each group will be added to the separate trunk."""
|
|
45
|
+
|
|
46
|
+
security_groups: Iterable[NewInterfaceExternalExtendSchemaWithDDOSSecurityGroup]
|
|
47
|
+
"""List of security group IDs"""
|
|
48
|
+
|
|
49
|
+
type: str
|
|
50
|
+
"""Must be 'external'. Union tag"""
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
class NewInterfaceExternalExtendSchemaWithDdosddosProfileField(TypedDict, total=False):
|
|
54
|
+
base_field: Optional[int]
|
|
55
|
+
"""ID of DDoS profile field"""
|
|
56
|
+
|
|
57
|
+
field_name: Optional[str]
|
|
58
|
+
"""Name of DDoS profile field"""
|
|
59
|
+
|
|
60
|
+
field_value: object
|
|
61
|
+
"""Complex value. Only one of 'value' or 'field_value' must be specified."""
|
|
62
|
+
|
|
63
|
+
value: Optional[str]
|
|
64
|
+
"""Basic type value. Only one of 'value' or 'field_value' must be specified."""
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
class NewInterfaceExternalExtendSchemaWithDDOSDDOSProfile(TypedDict, total=False):
|
|
68
|
+
profile_template: Required[int]
|
|
69
|
+
"""DDoS profile template ID."""
|
|
70
|
+
|
|
71
|
+
fields: Iterable[NewInterfaceExternalExtendSchemaWithDdosddosProfileField]
|
|
72
|
+
"""Protection parameters."""
|
|
73
|
+
|
|
74
|
+
profile_template_name: str
|
|
75
|
+
"""DDoS profile template name."""
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
class NewInterfaceExternalExtendSchemaWithDDOSSecurityGroup(TypedDict, total=False):
|
|
79
|
+
id: Required[str]
|
|
80
|
+
"""Resource ID"""
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
class NewInterfaceSpecificSubnetSchema(TypedDict, total=False):
|
|
84
|
+
project_id: int
|
|
85
|
+
|
|
86
|
+
region_id: int
|
|
87
|
+
|
|
88
|
+
subnet_id: Required[str]
|
|
89
|
+
"""Port will get an IP address from this subnet"""
|
|
90
|
+
|
|
91
|
+
ddos_profile: NewInterfaceSpecificSubnetSchemaDDOSProfile
|
|
92
|
+
"""Advanced DDoS protection."""
|
|
93
|
+
|
|
94
|
+
interface_name: str
|
|
95
|
+
"""Interface name"""
|
|
96
|
+
|
|
97
|
+
port_group: int
|
|
98
|
+
"""Each group will be added to the separate trunk."""
|
|
99
|
+
|
|
100
|
+
security_groups: Iterable[NewInterfaceSpecificSubnetSchemaSecurityGroup]
|
|
101
|
+
"""List of security group IDs"""
|
|
102
|
+
|
|
103
|
+
type: str
|
|
104
|
+
"""Must be 'subnet'"""
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
class NewInterfaceSpecificSubnetSchemaDDOSProfileField(TypedDict, total=False):
|
|
108
|
+
base_field: Optional[int]
|
|
109
|
+
"""ID of DDoS profile field"""
|
|
110
|
+
|
|
111
|
+
field_name: Optional[str]
|
|
112
|
+
"""Name of DDoS profile field"""
|
|
113
|
+
|
|
114
|
+
field_value: object
|
|
115
|
+
"""Complex value. Only one of 'value' or 'field_value' must be specified."""
|
|
116
|
+
|
|
117
|
+
value: Optional[str]
|
|
118
|
+
"""Basic type value. Only one of 'value' or 'field_value' must be specified."""
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
class NewInterfaceSpecificSubnetSchemaDDOSProfile(TypedDict, total=False):
|
|
122
|
+
profile_template: Required[int]
|
|
123
|
+
"""DDoS profile template ID."""
|
|
124
|
+
|
|
125
|
+
fields: Iterable[NewInterfaceSpecificSubnetSchemaDDOSProfileField]
|
|
126
|
+
"""Protection parameters."""
|
|
127
|
+
|
|
128
|
+
profile_template_name: str
|
|
129
|
+
"""DDoS profile template name."""
|
|
130
|
+
|
|
131
|
+
|
|
132
|
+
class NewInterfaceSpecificSubnetSchemaSecurityGroup(TypedDict, total=False):
|
|
133
|
+
id: Required[str]
|
|
134
|
+
"""Resource ID"""
|
|
135
|
+
|
|
136
|
+
|
|
137
|
+
class NewInterfaceAnySubnetSchema(TypedDict, total=False):
|
|
138
|
+
project_id: int
|
|
139
|
+
|
|
140
|
+
region_id: int
|
|
141
|
+
|
|
142
|
+
network_id: Required[str]
|
|
143
|
+
"""Port will get an IP address in this network subnet"""
|
|
144
|
+
|
|
145
|
+
ddos_profile: NewInterfaceAnySubnetSchemaDDOSProfile
|
|
146
|
+
"""Advanced DDoS protection."""
|
|
147
|
+
|
|
148
|
+
interface_name: str
|
|
149
|
+
"""Interface name"""
|
|
150
|
+
|
|
151
|
+
ip_family: Literal["dual", "ipv4", "ipv6"]
|
|
152
|
+
"""Which subnets should be selected: IPv4, IPv6 or use dual stack."""
|
|
153
|
+
|
|
154
|
+
port_group: int
|
|
155
|
+
"""Each group will be added to the separate trunk."""
|
|
156
|
+
|
|
157
|
+
security_groups: Iterable[NewInterfaceAnySubnetSchemaSecurityGroup]
|
|
158
|
+
"""List of security group IDs"""
|
|
159
|
+
|
|
160
|
+
type: str
|
|
161
|
+
"""Must be 'any_subnet'"""
|
|
162
|
+
|
|
163
|
+
|
|
164
|
+
class NewInterfaceAnySubnetSchemaDDOSProfileField(TypedDict, total=False):
|
|
165
|
+
base_field: Optional[int]
|
|
166
|
+
"""ID of DDoS profile field"""
|
|
167
|
+
|
|
168
|
+
field_name: Optional[str]
|
|
169
|
+
"""Name of DDoS profile field"""
|
|
170
|
+
|
|
171
|
+
field_value: object
|
|
172
|
+
"""Complex value. Only one of 'value' or 'field_value' must be specified."""
|
|
173
|
+
|
|
174
|
+
value: Optional[str]
|
|
175
|
+
"""Basic type value. Only one of 'value' or 'field_value' must be specified."""
|
|
176
|
+
|
|
177
|
+
|
|
178
|
+
class NewInterfaceAnySubnetSchemaDDOSProfile(TypedDict, total=False):
|
|
179
|
+
profile_template: Required[int]
|
|
180
|
+
"""DDoS profile template ID."""
|
|
181
|
+
|
|
182
|
+
fields: Iterable[NewInterfaceAnySubnetSchemaDDOSProfileField]
|
|
183
|
+
"""Protection parameters."""
|
|
184
|
+
|
|
185
|
+
profile_template_name: str
|
|
186
|
+
"""DDoS profile template name."""
|
|
187
|
+
|
|
188
|
+
|
|
189
|
+
class NewInterfaceAnySubnetSchemaSecurityGroup(TypedDict, total=False):
|
|
190
|
+
id: Required[str]
|
|
191
|
+
"""Resource ID"""
|
|
192
|
+
|
|
193
|
+
|
|
194
|
+
class NewInterfaceReservedFixedIPSchema(TypedDict, total=False):
|
|
195
|
+
project_id: int
|
|
196
|
+
|
|
197
|
+
region_id: int
|
|
198
|
+
|
|
199
|
+
port_id: Required[str]
|
|
200
|
+
"""Port ID"""
|
|
201
|
+
|
|
202
|
+
ddos_profile: NewInterfaceReservedFixedIPSchemaDDOSProfile
|
|
203
|
+
"""Advanced DDoS protection."""
|
|
204
|
+
|
|
205
|
+
interface_name: str
|
|
206
|
+
"""Interface name"""
|
|
207
|
+
|
|
208
|
+
port_group: int
|
|
209
|
+
"""Each group will be added to the separate trunk."""
|
|
210
|
+
|
|
211
|
+
security_groups: Iterable[NewInterfaceReservedFixedIPSchemaSecurityGroup]
|
|
212
|
+
"""List of security group IDs"""
|
|
213
|
+
|
|
214
|
+
type: str
|
|
215
|
+
"""Must be 'reserved_fixed_ip'. Union tag"""
|
|
216
|
+
|
|
217
|
+
|
|
218
|
+
class NewInterfaceReservedFixedIPSchemaDDOSProfileField(TypedDict, total=False):
|
|
219
|
+
base_field: Optional[int]
|
|
220
|
+
"""ID of DDoS profile field"""
|
|
221
|
+
|
|
222
|
+
field_name: Optional[str]
|
|
223
|
+
"""Name of DDoS profile field"""
|
|
224
|
+
|
|
225
|
+
field_value: object
|
|
226
|
+
"""Complex value. Only one of 'value' or 'field_value' must be specified."""
|
|
227
|
+
|
|
228
|
+
value: Optional[str]
|
|
229
|
+
"""Basic type value. Only one of 'value' or 'field_value' must be specified."""
|
|
230
|
+
|
|
231
|
+
|
|
232
|
+
class NewInterfaceReservedFixedIPSchemaDDOSProfile(TypedDict, total=False):
|
|
233
|
+
profile_template: Required[int]
|
|
234
|
+
"""DDoS profile template ID."""
|
|
235
|
+
|
|
236
|
+
fields: Iterable[NewInterfaceReservedFixedIPSchemaDDOSProfileField]
|
|
237
|
+
"""Protection parameters."""
|
|
238
|
+
|
|
239
|
+
profile_template_name: str
|
|
240
|
+
"""DDoS profile template name."""
|
|
241
|
+
|
|
242
|
+
|
|
243
|
+
class NewInterfaceReservedFixedIPSchemaSecurityGroup(TypedDict, total=False):
|
|
244
|
+
id: Required[str]
|
|
245
|
+
"""Resource ID"""
|
|
246
|
+
|
|
247
|
+
|
|
248
|
+
ServerAttachInterfaceParams: TypeAlias = Union[
|
|
249
|
+
NewInterfaceExternalExtendSchemaWithDDOS,
|
|
250
|
+
NewInterfaceSpecificSubnetSchema,
|
|
251
|
+
NewInterfaceAnySubnetSchema,
|
|
252
|
+
NewInterfaceReservedFixedIPSchema,
|
|
253
|
+
]
|
|
@@ -0,0 +1,21 @@
|
|
|
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__ = ["ServerDeleteParams"]
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class ServerDeleteParams(TypedDict, total=False):
|
|
11
|
+
project_id: int
|
|
12
|
+
|
|
13
|
+
region_id: int
|
|
14
|
+
|
|
15
|
+
cluster_id: Required[str]
|
|
16
|
+
|
|
17
|
+
delete_floatings: bool
|
|
18
|
+
"""Set False if you do not want to delete assigned floating IPs.
|
|
19
|
+
|
|
20
|
+
By default, it's True.
|
|
21
|
+
"""
|
|
@@ -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 Required, TypedDict
|
|
6
|
+
|
|
7
|
+
__all__ = ["ServerDetachInterfaceParams"]
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class ServerDetachInterfaceParams(TypedDict, total=False):
|
|
11
|
+
project_id: int
|
|
12
|
+
|
|
13
|
+
region_id: int
|
|
14
|
+
|
|
15
|
+
ip_address: Required[str]
|
|
16
|
+
"""IP address"""
|
|
17
|
+
|
|
18
|
+
port_id: Required[str]
|
|
19
|
+
"""ID of the port"""
|