gcore 0.4.0__py3-none-any.whl → 0.5.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.

Files changed (125) hide show
  1. gcore/_base_client.py +9 -2
  2. gcore/_client.py +9 -0
  3. gcore/_constants.py +2 -2
  4. gcore/_models.py +8 -5
  5. gcore/_version.py +1 -1
  6. gcore/pagination.py +192 -1
  7. gcore/resources/__init__.py +14 -0
  8. gcore/resources/cloud/baremetal/servers.py +2 -2
  9. gcore/resources/cloud/gpu_baremetal_clusters/gpu_baremetal_clusters.py +2 -2
  10. gcore/resources/cloud/inference/deployments/deployments.py +66 -33
  11. gcore/resources/cloud/inference/deployments/logs.py +7 -7
  12. gcore/resources/cloud/inference/inference.py +5 -5
  13. gcore/resources/cloud/inference/models.py +16 -15
  14. gcore/resources/cloud/inference/registry_credentials.py +16 -16
  15. gcore/resources/cloud/inference/secrets.py +4 -5
  16. gcore/resources/cloud/instances/instances.py +2 -2
  17. gcore/resources/cloud/secrets.py +14 -224
  18. gcore/resources/cloud/tasks.py +30 -28
  19. gcore/resources/fastedge/__init__.py +103 -0
  20. gcore/resources/fastedge/apps/__init__.py +33 -0
  21. gcore/resources/fastedge/apps/apps.py +932 -0
  22. gcore/resources/fastedge/apps/logs.py +248 -0
  23. gcore/resources/fastedge/binaries.py +286 -0
  24. gcore/resources/fastedge/fastedge.py +327 -0
  25. gcore/resources/fastedge/kv_stores.py +523 -0
  26. gcore/resources/fastedge/secrets.py +687 -0
  27. gcore/resources/fastedge/statistics.py +347 -0
  28. gcore/resources/fastedge/templates.py +652 -0
  29. gcore/types/cloud/__init__.py +2 -28
  30. gcore/types/cloud/baremetal/server_create_params.py +1 -1
  31. gcore/types/cloud/gpu_baremetal_cluster_create_params.py +1 -1
  32. gcore/types/cloud/inference/__init__.py +12 -8
  33. gcore/types/cloud/inference/deployment_create_params.py +224 -7
  34. gcore/types/cloud/inference/deployment_update_params.py +24 -3
  35. gcore/types/cloud/inference/deployments/__init__.py +1 -0
  36. gcore/types/cloud/inference/{inference_log.py → deployments/inference_deployment_log.py} +3 -3
  37. gcore/types/cloud/inference/inference_deployment.py +266 -0
  38. gcore/types/cloud/inference/{inference_apikey_secret.py → inference_deployment_api_key.py} +2 -2
  39. gcore/types/cloud/inference/{mlcatalog_model_card.py → inference_model.py} +2 -2
  40. gcore/types/cloud/inference/{inference_registry_credential.py → inference_registry_credentials.py} +2 -2
  41. gcore/types/cloud/inference/{inference_registry_credential_full.py → inference_registry_credentials_create.py} +2 -2
  42. gcore/types/cloud/inference/inference_secret.py +10 -3
  43. gcore/types/cloud/inference/model_list_params.py +2 -4
  44. gcore/types/cloud/{container_probe.py → inference/probe.py} +9 -9
  45. gcore/types/cloud/{container_probe_config.py → inference/probe_config.py} +5 -5
  46. gcore/types/cloud/{container_probe_exec.py → inference/probe_exec.py} +3 -3
  47. gcore/types/cloud/{container_probe_http_get.py → inference/probe_http_get.py} +3 -3
  48. gcore/types/cloud/{container_probe_tcp_socket.py → inference/probe_tcp_socket.py} +3 -3
  49. gcore/types/cloud/inference/secret_create_params.py +10 -4
  50. gcore/types/cloud/inference/secret_replace_params.py +10 -4
  51. gcore/types/cloud/{region_capacity.py → inference_region_capacity.py} +10 -3
  52. gcore/types/cloud/{region_capacity_list.py → inference_region_capacity_list.py} +4 -4
  53. gcore/types/cloud/instance_create_params.py +1 -1
  54. gcore/types/cloud/task_list_params.py +15 -14
  55. gcore/types/fastedge/__init__.py +48 -0
  56. gcore/types/fastedge/app.py +81 -0
  57. gcore/types/fastedge/app_create_params.py +56 -0
  58. gcore/types/fastedge/app_list_params.py +50 -0
  59. gcore/types/fastedge/app_param.py +56 -0
  60. gcore/types/fastedge/app_replace_params.py +17 -0
  61. gcore/types/fastedge/app_short.py +60 -0
  62. gcore/types/fastedge/app_update_params.py +56 -0
  63. gcore/types/fastedge/apps/__init__.py +6 -0
  64. gcore/types/fastedge/apps/log.py +28 -0
  65. gcore/types/fastedge/apps/log_list_params.py +37 -0
  66. gcore/types/fastedge/binary.py +40 -0
  67. gcore/types/fastedge/binary_list_response.py +12 -0
  68. gcore/types/fastedge/binary_short.py +32 -0
  69. gcore/types/fastedge/call_status.py +24 -0
  70. gcore/types/fastedge/client.py +57 -0
  71. gcore/types/fastedge/duration_stats.py +30 -0
  72. gcore/types/fastedge/kv_store.py +33 -0
  73. gcore/types/fastedge/kv_store_create_params.py +23 -0
  74. gcore/types/fastedge/kv_store_get_response.py +10 -0
  75. gcore/types/fastedge/kv_store_list_params.py +12 -0
  76. gcore/types/fastedge/kv_store_list_response.py +15 -0
  77. gcore/types/fastedge/kv_store_replace_params.py +23 -0
  78. gcore/types/fastedge/kv_store_short.py +19 -0
  79. gcore/types/fastedge/kv_store_stats.py +26 -0
  80. gcore/types/fastedge/secret.py +29 -0
  81. gcore/types/fastedge/secret_create_params.py +27 -0
  82. gcore/types/fastedge/secret_create_response.py +12 -0
  83. gcore/types/fastedge/secret_delete_params.py +12 -0
  84. gcore/types/fastedge/secret_list_params.py +15 -0
  85. gcore/types/{cloud → fastedge}/secret_list_response.py +2 -6
  86. gcore/types/fastedge/secret_replace_params.py +27 -0
  87. gcore/types/fastedge/secret_short.py +21 -0
  88. gcore/types/fastedge/secret_update_params.py +27 -0
  89. gcore/types/fastedge/statistic_get_call_series_params.py +28 -0
  90. gcore/types/fastedge/statistic_get_call_series_response.py +12 -0
  91. gcore/types/fastedge/statistic_get_duration_series_params.py +28 -0
  92. gcore/types/fastedge/statistic_get_duration_series_response.py +12 -0
  93. gcore/types/fastedge/template.py +31 -0
  94. gcore/types/fastedge/template_create_params.py +30 -0
  95. gcore/types/fastedge/template_delete_params.py +12 -0
  96. gcore/types/fastedge/template_list_params.py +25 -0
  97. gcore/types/fastedge/template_parameter.py +22 -0
  98. gcore/types/fastedge/template_parameter_param.py +21 -0
  99. gcore/types/fastedge/template_replace_params.py +30 -0
  100. gcore/types/fastedge/template_short.py +27 -0
  101. {gcore-0.4.0.dist-info → gcore-0.5.0.dist-info}/METADATA +7 -5
  102. {gcore-0.4.0.dist-info → gcore-0.5.0.dist-info}/RECORD +104 -69
  103. gcore/types/cloud/aws_iam_data.py +0 -13
  104. gcore/types/cloud/aws_iam_data_param.py +0 -15
  105. gcore/types/cloud/capacity.py +0 -13
  106. gcore/types/cloud/container_probe_config_create_param.py +0 -17
  107. gcore/types/cloud/container_probe_create_param.py +0 -38
  108. gcore/types/cloud/container_probe_exec_create_param.py +0 -13
  109. gcore/types/cloud/container_probe_http_get_create_param.py +0 -25
  110. gcore/types/cloud/container_probe_tcp_socket_create_param.py +0 -12
  111. gcore/types/cloud/container_scale.py +0 -25
  112. gcore/types/cloud/container_scale_trigger_rate.py +0 -13
  113. gcore/types/cloud/container_scale_trigger_sqs.py +0 -33
  114. gcore/types/cloud/container_scale_trigger_threshold.py +0 -10
  115. gcore/types/cloud/container_scale_triggers.py +0 -36
  116. gcore/types/cloud/deploy_status.py +0 -13
  117. gcore/types/cloud/inference/container.py +0 -26
  118. gcore/types/cloud/inference/inference.py +0 -95
  119. gcore/types/cloud/inference/mlcatalog_order_by_choices.py +0 -7
  120. gcore/types/cloud/inference_probes.py +0 -19
  121. gcore/types/cloud/ingress_opts_out.py +0 -16
  122. gcore/types/cloud/ingress_opts_param.py +0 -18
  123. gcore/types/cloud/secret_create_params.py +0 -66
  124. {gcore-0.4.0.dist-info → gcore-0.5.0.dist-info}/WHEEL +0 -0
  125. {gcore-0.4.0.dist-info → gcore-0.5.0.dist-info}/licenses/LICENSE +0 -0
@@ -1,33 +0,0 @@
1
- # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
-
3
- from typing import Optional
4
-
5
- from ..._models import BaseModel
6
-
7
- __all__ = ["ContainerScaleTriggerSqs"]
8
-
9
-
10
- class ContainerScaleTriggerSqs(BaseModel):
11
- activation_queue_length: int
12
- """Number of messages for activation"""
13
-
14
- aws_endpoint: Optional[str] = None
15
- """Custom AWS endpoint"""
16
-
17
- aws_region: str
18
- """AWS region"""
19
-
20
- queue_length: int
21
- """Number of messages for one replica"""
22
-
23
- queue_url: str
24
- """SQS queue URL"""
25
-
26
- scale_on_delayed: bool
27
- """Scale on delayed messages"""
28
-
29
- scale_on_flight: bool
30
- """Scale on in-flight messages"""
31
-
32
- secret_name: str
33
- """Auth secret name"""
@@ -1,10 +0,0 @@
1
- # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
-
3
- from ..._models import BaseModel
4
-
5
- __all__ = ["ContainerScaleTriggerThreshold"]
6
-
7
-
8
- class ContainerScaleTriggerThreshold(BaseModel):
9
- threshold: int
10
- """Threshold value for the trigger in percentage"""
@@ -1,36 +0,0 @@
1
- # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
-
3
- from typing import Optional
4
-
5
- from ..._models import BaseModel
6
- from .container_scale_trigger_sqs import ContainerScaleTriggerSqs
7
- from .container_scale_trigger_rate import ContainerScaleTriggerRate
8
- from .container_scale_trigger_threshold import ContainerScaleTriggerThreshold
9
-
10
- __all__ = ["ContainerScaleTriggers"]
11
-
12
-
13
- class ContainerScaleTriggers(BaseModel):
14
- cpu: Optional[ContainerScaleTriggerThreshold] = None
15
- """CPU trigger configuration"""
16
-
17
- gpu_memory: Optional[ContainerScaleTriggerThreshold] = None
18
- """GPU memory trigger configuration.
19
-
20
- Calculated by `DCGM_FI_DEV_MEM_COPY_UTIL` metric
21
- """
22
-
23
- gpu_utilization: Optional[ContainerScaleTriggerThreshold] = None
24
- """GPU utilization trigger configuration.
25
-
26
- Calculated by `DCGM_FI_DEV_GPU_UTIL` metric
27
- """
28
-
29
- http: Optional[ContainerScaleTriggerRate] = None
30
- """HTTP trigger configuration"""
31
-
32
- memory: Optional[ContainerScaleTriggerThreshold] = None
33
- """Memory trigger configuration"""
34
-
35
- sqs: Optional[ContainerScaleTriggerSqs] = None
36
- """SQS trigger configuration"""
@@ -1,13 +0,0 @@
1
- # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
-
3
- from ..._models import BaseModel
4
-
5
- __all__ = ["DeployStatus"]
6
-
7
-
8
- class DeployStatus(BaseModel):
9
- ready: int
10
- """Number of ready instances"""
11
-
12
- total: int
13
- """Total number of instances"""
@@ -1,26 +0,0 @@
1
- # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
-
3
- from typing import Optional
4
-
5
- from ...._models import BaseModel
6
- from ..deploy_status import DeployStatus
7
- from ..container_scale import ContainerScale
8
-
9
- __all__ = ["Container"]
10
-
11
-
12
- class Container(BaseModel):
13
- address: Optional[str] = None
14
- """Address of the inference instance"""
15
-
16
- deploy_status: DeployStatus
17
- """Status of the containers deployment"""
18
-
19
- error_message: Optional[str] = None
20
- """Error message if the container deployment failed"""
21
-
22
- region_id: int
23
- """Region name for the container"""
24
-
25
- scale: ContainerScale
26
- """Scale for the container"""
@@ -1,95 +0,0 @@
1
- # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
-
3
- from typing import Dict, List, Optional
4
- from typing_extensions import Literal
5
-
6
- from ..logging import Logging
7
- from .container import Container
8
- from ...._models import BaseModel
9
- from ..inference_probes import InferenceProbes
10
- from ..ingress_opts_out import IngressOptsOut
11
-
12
- __all__ = ["Inference"]
13
-
14
-
15
- class Inference(BaseModel):
16
- address: Optional[str] = None
17
- """Address of the inference instance"""
18
-
19
- auth_enabled: bool
20
- """`true` if instance uses API key authentication.
21
-
22
- `"Authorization": "Bearer ****\\**"` or `"X-Api-Key": "****\\**"` header is required
23
- for the requests to the instance if enabled.
24
- """
25
-
26
- command: Optional[str] = None
27
- """Command to be executed when running a container from an image."""
28
-
29
- containers: List[Container]
30
- """List of containers for the inference instance"""
31
-
32
- created_at: Optional[str] = None
33
- """Inference instance creation date in ISO 8601 format."""
34
-
35
- credentials_name: str
36
- """Registry credentials name"""
37
-
38
- description: str
39
- """Inference instance description."""
40
-
41
- envs: Optional[Dict[str, str]] = None
42
- """Environment variables for the inference instance"""
43
-
44
- flavor_name: str
45
- """Flavor name for the inference instance"""
46
-
47
- image: str
48
- """Docker image for the inference instance.
49
-
50
- This field should contain the image name and tag in the format 'name:tag', e.g.,
51
- 'nginx:latest'. It defaults to Docker Hub as the image registry, but any
52
- accessible Docker image URL can be specified.
53
- """
54
-
55
- ingress_opts: Optional[IngressOptsOut] = None
56
- """Ingress options for the inference instance"""
57
-
58
- listening_port: int
59
- """Listening port for the inference instance."""
60
-
61
- logging: Optional[Logging] = None
62
- """Logging configuration for the inference instance"""
63
-
64
- name: str
65
- """Inference instance name."""
66
-
67
- probes: Optional[InferenceProbes] = None
68
- """Probes configured for all containers of the inference instance."""
69
-
70
- project_id: int
71
- """Project ID. If not provided, your default project ID will be used."""
72
-
73
- status: Literal["ACTIVE", "DELETING", "DEPLOYING", "DISABLED", "PARTIALLYDEPLOYED", "PENDING"]
74
- """Inference instance status. Value can be one of the following:
75
-
76
- - `DEPLOYING` - The instance is being deployed. Containers are not yet created.
77
- - `PARTIALLYDEPLOYED` - All containers have been created, but some may not be
78
- ready yet. Instances stuck in this state typically indicate either image being
79
- pulled, or a failure of some kind. In the latter case, the `error_message`
80
- field of the respective container object in the `containers` collection
81
- explains the failure reason.
82
- - `ACTIVE` - The instance is running and ready to accept requests.
83
- - `DISABLED` - The instance is disabled and not accepting any requests.
84
- - `PENDING` - The instance is running but scaled to zero. It will be
85
- automatically scaled up when a request is made.
86
- - `DELETING` - The instance is being deleted.
87
- """
88
-
89
- timeout: Optional[int] = None
90
- """
91
- Specifies the duration in seconds without any requests after which the
92
- containers will be downscaled to their minimum scale value as defined by
93
- `scale.min`. If set, this helps in optimizing resource usage by reducing the
94
- number of container instances during periods of inactivity.
95
- """
@@ -1,7 +0,0 @@
1
- # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
-
3
- from typing_extensions import Literal, TypeAlias
4
-
5
- __all__ = ["MlcatalogOrderByChoices"]
6
-
7
- MlcatalogOrderByChoices: TypeAlias = Literal["name.asc", "name.desc"]
@@ -1,19 +0,0 @@
1
- # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
-
3
- from typing import Optional
4
-
5
- from ..._models import BaseModel
6
- from .container_probe_config import ContainerProbeConfig
7
-
8
- __all__ = ["InferenceProbes"]
9
-
10
-
11
- class InferenceProbes(BaseModel):
12
- liveness_probe: Optional[ContainerProbeConfig] = None
13
- """Liveness probe configuration"""
14
-
15
- readiness_probe: Optional[ContainerProbeConfig] = None
16
- """Readiness probe configuration"""
17
-
18
- startup_probe: Optional[ContainerProbeConfig] = None
19
- """Startup probe configuration"""
@@ -1,16 +0,0 @@
1
- # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
-
3
- from ..._models import BaseModel
4
-
5
- __all__ = ["IngressOptsOut"]
6
-
7
-
8
- class IngressOptsOut(BaseModel):
9
- disable_response_buffering: bool
10
- """Disable response buffering if true.
11
-
12
- A client usually has a much slower connection and can not consume the response
13
- data as fast as it is produced by an upstream application. Ingress tries to
14
- buffer the whole response in order to release the upstream application as soon
15
- as possible.By default, the response buffering is enabled.
16
- """
@@ -1,18 +0,0 @@
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__ = ["IngressOptsParam"]
8
-
9
-
10
- class IngressOptsParam(TypedDict, total=False):
11
- disable_response_buffering: bool
12
- """Disable response buffering if true.
13
-
14
- A client usually has a much slower connection and can not consume the response
15
- data as fast as it is produced by an upstream application. Ingress tries to
16
- buffer the whole response in order to release the upstream application as soon
17
- as possible.By default, the response buffering is enabled.
18
- """
@@ -1,66 +0,0 @@
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
- __all__ = ["SecretCreateParams"]
9
-
10
-
11
- class SecretCreateParams(TypedDict, total=False):
12
- project_id: int
13
- """Project ID"""
14
-
15
- region_id: int
16
- """Region ID"""
17
-
18
- name: Required[str]
19
- """Secret name"""
20
-
21
- payload: Required[str]
22
- """Secret payload.
23
-
24
- For HTTPS-terminated load balancing, provide base64 encoded conents of a PKCS12
25
- file. The PKCS12 file is the combined TLS certificate, key, and intermediate
26
- certificate chain obtained from an external certificate authority. The file can
27
- be created via openssl, e.g.'openssl pkcs12 -export -inkey server.key -in
28
- server.crt -certfile ca-chain.crt -passout pass: -out server.p12'The key and
29
- certificate should be PEM-encoded, and the intermediate certificate chain should
30
- be multiple PEM-encoded certs concatenated together
31
- """
32
-
33
- payload_content_encoding: Required[Literal["base64"]]
34
- """The encoding used for the payload to be able to include it in the JSON request.
35
-
36
- Currently only base64 is supported
37
- """
38
-
39
- payload_content_type: Required[str]
40
- """The media type for the content of the payload"""
41
-
42
- secret_type: Required[Literal["certificate", "opaque", "passphrase", "private", "public", "symmetric"]]
43
- """Secret type.
44
-
45
- symmetric - Used for storing byte arrays such as keys suitable for symmetric
46
- encryption; public - Used for storing the public key of an asymmetric keypair;
47
- private - Used for storing the private key of an asymmetric keypair;
48
- passphrase - Used for storing plain text passphrases; certificate - Used for
49
- storing cryptographic certificates such as X.509 certificates; opaque - Used for
50
- backwards compatibility with previous versions of the API
51
- """
52
-
53
- algorithm: Optional[str]
54
- """Metadata provided by a user or system for informational purposes."""
55
-
56
- bit_length: Optional[int]
57
- """Metadata provided by a user or system for informational purposes.
58
-
59
- Value must be greater than zero.
60
- """
61
-
62
- expiration: Optional[str]
63
- """Datetime when the secret will expire."""
64
-
65
- mode: Optional[str]
66
- """Metadata provided by a user or system for informational purposes."""
File without changes