mypydantic.models.autoscaling_plans

  1# Model Generated: Thu Mar  2 21:56:16 2023
  2
  3from __future__ import annotations
  4
  5from datetime import datetime
  6from typing import Dict, List, Literal, Optional, Sequence, Union
  7
  8from pydantic import Field
  9
 10from mypydantic.models.base_model import BaseModel
 11
 12
 13class TagFilterModel(BaseModel):
 14    key: Optional[str] = Field(default=None, alias="Key")
 15    values: Optional[Sequence[str]] = Field(default=None, alias="Values")
 16
 17
 18class ResponseMetadataModel(BaseModel):
 19    request_id: str = Field(alias="RequestId")
 20    host_id: str = Field(alias="HostId")
 21    http_status_code: int = Field(alias="HTTPStatusCode")
 22    http_headers: Dict[str, str] = Field(alias="HTTPHeaders")
 23    retry_attempts: int = Field(alias="RetryAttempts")
 24
 25
 26class MetricDimensionModel(BaseModel):
 27    name: str = Field(alias="Name")
 28    value: str = Field(alias="Value")
 29
 30
 31class DatapointModel(BaseModel):
 32    timestamp: Optional[datetime] = Field(default=None, alias="Timestamp")
 33    value: Optional[float] = Field(default=None, alias="Value")
 34
 35
 36class DeleteScalingPlanRequestModel(BaseModel):
 37    scaling_plan_name: str = Field(alias="ScalingPlanName")
 38    scaling_plan_version: int = Field(alias="ScalingPlanVersion")
 39
 40
 41class PaginatorConfigModel(BaseModel):
 42    max_items: Optional[int] = Field(default=None, alias="MaxItems")
 43    page_size: Optional[int] = Field(default=None, alias="PageSize")
 44    starting_token: Optional[str] = Field(default=None, alias="StartingToken")
 45
 46
 47class DescribeScalingPlanResourcesRequestModel(BaseModel):
 48    scaling_plan_name: str = Field(alias="ScalingPlanName")
 49    scaling_plan_version: int = Field(alias="ScalingPlanVersion")
 50    max_results: Optional[int] = Field(default=None, alias="MaxResults")
 51    next_token: Optional[str] = Field(default=None, alias="NextToken")
 52
 53
 54class GetScalingPlanResourceForecastDataRequestModel(BaseModel):
 55    scaling_plan_name: str = Field(alias="ScalingPlanName")
 56    scaling_plan_version: int = Field(alias="ScalingPlanVersion")
 57    service_namespace: Literal["autoscaling", "dynamodb", "ec2", "ecs", "rds"] = Field(
 58        alias="ServiceNamespace"
 59    )
 60    resource_id: str = Field(alias="ResourceId")
 61    scalable_dimension: Literal[
 62        "autoscaling:autoScalingGroup:DesiredCapacity",
 63        "dynamodb:index:ReadCapacityUnits",
 64        "dynamodb:index:WriteCapacityUnits",
 65        "dynamodb:table:ReadCapacityUnits",
 66        "dynamodb:table:WriteCapacityUnits",
 67        "ec2:spot-fleet-request:TargetCapacity",
 68        "ecs:service:DesiredCount",
 69        "rds:cluster:ReadReplicaCount",
 70    ] = Field(alias="ScalableDimension")
 71    forecast_data_type: Literal[
 72        "CapacityForecast",
 73        "LoadForecast",
 74        "ScheduledActionMaxCapacity",
 75        "ScheduledActionMinCapacity",
 76    ] = Field(alias="ForecastDataType")
 77    start_time: Union[datetime, str] = Field(alias="StartTime")
 78    end_time: Union[datetime, str] = Field(alias="EndTime")
 79
 80
 81class PredefinedLoadMetricSpecificationModel(BaseModel):
 82    predefined_load_metric_type: Literal[
 83        "ALBTargetGroupRequestCount",
 84        "ASGTotalCPUUtilization",
 85        "ASGTotalNetworkIn",
 86        "ASGTotalNetworkOut",
 87    ] = Field(alias="PredefinedLoadMetricType")
 88    resource_label: Optional[str] = Field(default=None, alias="ResourceLabel")
 89
 90
 91class PredefinedScalingMetricSpecificationModel(BaseModel):
 92    predefined_scaling_metric_type: Literal[
 93        "ALBRequestCountPerTarget",
 94        "ASGAverageCPUUtilization",
 95        "ASGAverageNetworkIn",
 96        "ASGAverageNetworkOut",
 97        "DynamoDBReadCapacityUtilization",
 98        "DynamoDBWriteCapacityUtilization",
 99        "EC2SpotFleetRequestAverageCPUUtilization",
100        "EC2SpotFleetRequestAverageNetworkIn",
101        "EC2SpotFleetRequestAverageNetworkOut",
102        "ECSServiceAverageCPUUtilization",
103        "ECSServiceAverageMemoryUtilization",
104        "RDSReaderAverageCPUUtilization",
105        "RDSReaderAverageDatabaseConnections",
106    ] = Field(alias="PredefinedScalingMetricType")
107    resource_label: Optional[str] = Field(default=None, alias="ResourceLabel")
108
109
110class ApplicationSourceModel(BaseModel):
111    cloud_formation_stack_arn: Optional[str] = Field(
112        default=None, alias="CloudFormationStackARN"
113    )
114    tag_filters: Optional[Sequence[TagFilterModel]] = Field(
115        default=None, alias="TagFilters"
116    )
117
118
119class CreateScalingPlanResponseModel(BaseModel):
120    scaling_plan_version: int = Field(alias="ScalingPlanVersion")
121    response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata")
122
123
124class CustomizedLoadMetricSpecificationModel(BaseModel):
125    metric_name: str = Field(alias="MetricName")
126    namespace: str = Field(alias="Namespace")
127    statistic: Literal["Average", "Maximum", "Minimum", "SampleCount", "Sum"] = Field(
128        alias="Statistic"
129    )
130    dimensions: Optional[Sequence[MetricDimensionModel]] = Field(
131        default=None, alias="Dimensions"
132    )
133    unit: Optional[str] = Field(default=None, alias="Unit")
134
135
136class CustomizedScalingMetricSpecificationModel(BaseModel):
137    metric_name: str = Field(alias="MetricName")
138    namespace: str = Field(alias="Namespace")
139    statistic: Literal["Average", "Maximum", "Minimum", "SampleCount", "Sum"] = Field(
140        alias="Statistic"
141    )
142    dimensions: Optional[Sequence[MetricDimensionModel]] = Field(
143        default=None, alias="Dimensions"
144    )
145    unit: Optional[str] = Field(default=None, alias="Unit")
146
147
148class GetScalingPlanResourceForecastDataResponseModel(BaseModel):
149    datapoints: List[DatapointModel] = Field(alias="Datapoints")
150    response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata")
151
152
153class DescribeScalingPlanResourcesRequestDescribeScalingPlanResourcesPaginateModel(
154    BaseModel
155):
156    scaling_plan_name: str = Field(alias="ScalingPlanName")
157    scaling_plan_version: int = Field(alias="ScalingPlanVersion")
158    pagination_config: Optional[PaginatorConfigModel] = Field(
159        default=None, alias="PaginationConfig"
160    )
161
162
163class DescribeScalingPlansRequestDescribeScalingPlansPaginateModel(BaseModel):
164    scaling_plan_names: Optional[Sequence[str]] = Field(
165        default=None, alias="ScalingPlanNames"
166    )
167    scaling_plan_version: Optional[int] = Field(
168        default=None, alias="ScalingPlanVersion"
169    )
170    application_sources: Optional[Sequence[ApplicationSourceModel]] = Field(
171        default=None, alias="ApplicationSources"
172    )
173    pagination_config: Optional[PaginatorConfigModel] = Field(
174        default=None, alias="PaginationConfig"
175    )
176
177
178class DescribeScalingPlansRequestModel(BaseModel):
179    scaling_plan_names: Optional[Sequence[str]] = Field(
180        default=None, alias="ScalingPlanNames"
181    )
182    scaling_plan_version: Optional[int] = Field(
183        default=None, alias="ScalingPlanVersion"
184    )
185    application_sources: Optional[Sequence[ApplicationSourceModel]] = Field(
186        default=None, alias="ApplicationSources"
187    )
188    max_results: Optional[int] = Field(default=None, alias="MaxResults")
189    next_token: Optional[str] = Field(default=None, alias="NextToken")
190
191
192class TargetTrackingConfigurationModel(BaseModel):
193    target_value: float = Field(alias="TargetValue")
194    predefined_scaling_metric_specification: Optional[
195        PredefinedScalingMetricSpecificationModel
196    ] = Field(default=None, alias="PredefinedScalingMetricSpecification")
197    customized_scaling_metric_specification: Optional[
198        CustomizedScalingMetricSpecificationModel
199    ] = Field(default=None, alias="CustomizedScalingMetricSpecification")
200    disable_scale_in: Optional[bool] = Field(default=None, alias="DisableScaleIn")
201    scale_out_cooldown: Optional[int] = Field(default=None, alias="ScaleOutCooldown")
202    scale_in_cooldown: Optional[int] = Field(default=None, alias="ScaleInCooldown")
203    estimated_instance_warmup: Optional[int] = Field(
204        default=None, alias="EstimatedInstanceWarmup"
205    )
206
207
208class ScalingInstructionModel(BaseModel):
209    service_namespace: Literal["autoscaling", "dynamodb", "ec2", "ecs", "rds"] = Field(
210        alias="ServiceNamespace"
211    )
212    resource_id: str = Field(alias="ResourceId")
213    scalable_dimension: Literal[
214        "autoscaling:autoScalingGroup:DesiredCapacity",
215        "dynamodb:index:ReadCapacityUnits",
216        "dynamodb:index:WriteCapacityUnits",
217        "dynamodb:table:ReadCapacityUnits",
218        "dynamodb:table:WriteCapacityUnits",
219        "ec2:spot-fleet-request:TargetCapacity",
220        "ecs:service:DesiredCount",
221        "rds:cluster:ReadReplicaCount",
222    ] = Field(alias="ScalableDimension")
223    min_capacity: int = Field(alias="MinCapacity")
224    max_capacity: int = Field(alias="MaxCapacity")
225    target_tracking_configurations: Sequence[TargetTrackingConfigurationModel] = Field(
226        alias="TargetTrackingConfigurations"
227    )
228    predefined_load_metric_specification: Optional[
229        PredefinedLoadMetricSpecificationModel
230    ] = Field(default=None, alias="PredefinedLoadMetricSpecification")
231    customized_load_metric_specification: Optional[
232        CustomizedLoadMetricSpecificationModel
233    ] = Field(default=None, alias="CustomizedLoadMetricSpecification")
234    scheduled_action_buffer_time: Optional[int] = Field(
235        default=None, alias="ScheduledActionBufferTime"
236    )
237    predictive_scaling_max_capacity_behavior: Optional[
238        Literal[
239            "SetForecastCapacityToMaxCapacity",
240            "SetMaxCapacityAboveForecastCapacity",
241            "SetMaxCapacityToForecastCapacity",
242        ]
243    ] = Field(default=None, alias="PredictiveScalingMaxCapacityBehavior")
244    predictive_scaling_max_capacity_buffer: Optional[int] = Field(
245        default=None, alias="PredictiveScalingMaxCapacityBuffer"
246    )
247    predictive_scaling_mode: Optional[
248        Literal["ForecastAndScale", "ForecastOnly"]
249    ] = Field(default=None, alias="PredictiveScalingMode")
250    scaling_policy_update_behavior: Optional[
251        Literal["KeepExternalPolicies", "ReplaceExternalPolicies"]
252    ] = Field(default=None, alias="ScalingPolicyUpdateBehavior")
253    disable_dynamic_scaling: Optional[bool] = Field(
254        default=None, alias="DisableDynamicScaling"
255    )
256
257
258class ScalingPolicyModel(BaseModel):
259    policy_name: str = Field(alias="PolicyName")
260    policy_type: Literal["TargetTrackingScaling"] = Field(alias="PolicyType")
261    target_tracking_configuration: Optional[TargetTrackingConfigurationModel] = Field(
262        default=None, alias="TargetTrackingConfiguration"
263    )
264
265
266class CreateScalingPlanRequestModel(BaseModel):
267    scaling_plan_name: str = Field(alias="ScalingPlanName")
268    application_source: ApplicationSourceModel = Field(alias="ApplicationSource")
269    scaling_instructions: Sequence[ScalingInstructionModel] = Field(
270        alias="ScalingInstructions"
271    )
272
273
274class ScalingPlanModel(BaseModel):
275    scaling_plan_name: str = Field(alias="ScalingPlanName")
276    scaling_plan_version: int = Field(alias="ScalingPlanVersion")
277    application_source: ApplicationSourceModel = Field(alias="ApplicationSource")
278    scaling_instructions: List[ScalingInstructionModel] = Field(
279        alias="ScalingInstructions"
280    )
281    status_code: Literal[
282        "Active",
283        "ActiveWithProblems",
284        "CreationFailed",
285        "CreationInProgress",
286        "DeletionFailed",
287        "DeletionInProgress",
288        "UpdateFailed",
289        "UpdateInProgress",
290    ] = Field(alias="StatusCode")
291    status_message: Optional[str] = Field(default=None, alias="StatusMessage")
292    status_start_time: Optional[datetime] = Field(default=None, alias="StatusStartTime")
293    creation_time: Optional[datetime] = Field(default=None, alias="CreationTime")
294
295
296class UpdateScalingPlanRequestModel(BaseModel):
297    scaling_plan_name: str = Field(alias="ScalingPlanName")
298    scaling_plan_version: int = Field(alias="ScalingPlanVersion")
299    application_source: Optional[ApplicationSourceModel] = Field(
300        default=None, alias="ApplicationSource"
301    )
302    scaling_instructions: Optional[Sequence[ScalingInstructionModel]] = Field(
303        default=None, alias="ScalingInstructions"
304    )
305
306
307class ScalingPlanResourceModel(BaseModel):
308    scaling_plan_name: str = Field(alias="ScalingPlanName")
309    scaling_plan_version: int = Field(alias="ScalingPlanVersion")
310    service_namespace: Literal["autoscaling", "dynamodb", "ec2", "ecs", "rds"] = Field(
311        alias="ServiceNamespace"
312    )
313    resource_id: str = Field(alias="ResourceId")
314    scalable_dimension: Literal[
315        "autoscaling:autoScalingGroup:DesiredCapacity",
316        "dynamodb:index:ReadCapacityUnits",
317        "dynamodb:index:WriteCapacityUnits",
318        "dynamodb:table:ReadCapacityUnits",
319        "dynamodb:table:WriteCapacityUnits",
320        "ec2:spot-fleet-request:TargetCapacity",
321        "ecs:service:DesiredCount",
322        "rds:cluster:ReadReplicaCount",
323    ] = Field(alias="ScalableDimension")
324    scaling_status_code: Literal["Active", "Inactive", "PartiallyActive"] = Field(
325        alias="ScalingStatusCode"
326    )
327    scaling_policies: Optional[List[ScalingPolicyModel]] = Field(
328        default=None, alias="ScalingPolicies"
329    )
330    scaling_status_message: Optional[str] = Field(
331        default=None, alias="ScalingStatusMessage"
332    )
333
334
335class DescribeScalingPlansResponseModel(BaseModel):
336    scaling_plans: List[ScalingPlanModel] = Field(alias="ScalingPlans")
337    next_token: str = Field(alias="NextToken")
338    response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata")
339
340
341class DescribeScalingPlanResourcesResponseModel(BaseModel):
342    scaling_plan_resources: List[ScalingPlanResourceModel] = Field(
343        alias="ScalingPlanResources"
344    )
345    next_token: str = Field(alias="NextToken")
346    response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata")
class TagFilterModel(mypydantic.models.base_model.BaseModel):
14class TagFilterModel(BaseModel):
15    key: Optional[str] = Field(default=None, alias="Key")
16    values: Optional[Sequence[str]] = Field(default=None, alias="Values")
Inherited Members
mypydantic.models.base_model.BaseModel
BaseModel
Config
pydantic.main.BaseModel
dict
json
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class ResponseMetadataModel(mypydantic.models.base_model.BaseModel):
19class ResponseMetadataModel(BaseModel):
20    request_id: str = Field(alias="RequestId")
21    host_id: str = Field(alias="HostId")
22    http_status_code: int = Field(alias="HTTPStatusCode")
23    http_headers: Dict[str, str] = Field(alias="HTTPHeaders")
24    retry_attempts: int = Field(alias="RetryAttempts")
Inherited Members
mypydantic.models.base_model.BaseModel
BaseModel
Config
pydantic.main.BaseModel
dict
json
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class MetricDimensionModel(mypydantic.models.base_model.BaseModel):
27class MetricDimensionModel(BaseModel):
28    name: str = Field(alias="Name")
29    value: str = Field(alias="Value")
Inherited Members
mypydantic.models.base_model.BaseModel
BaseModel
Config
pydantic.main.BaseModel
dict
json
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class DatapointModel(mypydantic.models.base_model.BaseModel):
32class DatapointModel(BaseModel):
33    timestamp: Optional[datetime] = Field(default=None, alias="Timestamp")
34    value: Optional[float] = Field(default=None, alias="Value")
Inherited Members
mypydantic.models.base_model.BaseModel
BaseModel
Config
pydantic.main.BaseModel
dict
json
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class DeleteScalingPlanRequestModel(mypydantic.models.base_model.BaseModel):
37class DeleteScalingPlanRequestModel(BaseModel):
38    scaling_plan_name: str = Field(alias="ScalingPlanName")
39    scaling_plan_version: int = Field(alias="ScalingPlanVersion")
Inherited Members
mypydantic.models.base_model.BaseModel
BaseModel
Config
pydantic.main.BaseModel
dict
json
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class PaginatorConfigModel(mypydantic.models.base_model.BaseModel):
42class PaginatorConfigModel(BaseModel):
43    max_items: Optional[int] = Field(default=None, alias="MaxItems")
44    page_size: Optional[int] = Field(default=None, alias="PageSize")
45    starting_token: Optional[str] = Field(default=None, alias="StartingToken")
Inherited Members
mypydantic.models.base_model.BaseModel
BaseModel
Config
pydantic.main.BaseModel
dict
json
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class DescribeScalingPlanResourcesRequestModel(mypydantic.models.base_model.BaseModel):
48class DescribeScalingPlanResourcesRequestModel(BaseModel):
49    scaling_plan_name: str = Field(alias="ScalingPlanName")
50    scaling_plan_version: int = Field(alias="ScalingPlanVersion")
51    max_results: Optional[int] = Field(default=None, alias="MaxResults")
52    next_token: Optional[str] = Field(default=None, alias="NextToken")
Inherited Members
mypydantic.models.base_model.BaseModel
BaseModel
Config
pydantic.main.BaseModel
dict
json
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class GetScalingPlanResourceForecastDataRequestModel(mypydantic.models.base_model.BaseModel):
55class GetScalingPlanResourceForecastDataRequestModel(BaseModel):
56    scaling_plan_name: str = Field(alias="ScalingPlanName")
57    scaling_plan_version: int = Field(alias="ScalingPlanVersion")
58    service_namespace: Literal["autoscaling", "dynamodb", "ec2", "ecs", "rds"] = Field(
59        alias="ServiceNamespace"
60    )
61    resource_id: str = Field(alias="ResourceId")
62    scalable_dimension: Literal[
63        "autoscaling:autoScalingGroup:DesiredCapacity",
64        "dynamodb:index:ReadCapacityUnits",
65        "dynamodb:index:WriteCapacityUnits",
66        "dynamodb:table:ReadCapacityUnits",
67        "dynamodb:table:WriteCapacityUnits",
68        "ec2:spot-fleet-request:TargetCapacity",
69        "ecs:service:DesiredCount",
70        "rds:cluster:ReadReplicaCount",
71    ] = Field(alias="ScalableDimension")
72    forecast_data_type: Literal[
73        "CapacityForecast",
74        "LoadForecast",
75        "ScheduledActionMaxCapacity",
76        "ScheduledActionMinCapacity",
77    ] = Field(alias="ForecastDataType")
78    start_time: Union[datetime, str] = Field(alias="StartTime")
79    end_time: Union[datetime, str] = Field(alias="EndTime")
Inherited Members
mypydantic.models.base_model.BaseModel
BaseModel
Config
pydantic.main.BaseModel
dict
json
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class PredefinedLoadMetricSpecificationModel(mypydantic.models.base_model.BaseModel):
82class PredefinedLoadMetricSpecificationModel(BaseModel):
83    predefined_load_metric_type: Literal[
84        "ALBTargetGroupRequestCount",
85        "ASGTotalCPUUtilization",
86        "ASGTotalNetworkIn",
87        "ASGTotalNetworkOut",
88    ] = Field(alias="PredefinedLoadMetricType")
89    resource_label: Optional[str] = Field(default=None, alias="ResourceLabel")
Inherited Members
mypydantic.models.base_model.BaseModel
BaseModel
Config
pydantic.main.BaseModel
dict
json
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class PredefinedScalingMetricSpecificationModel(mypydantic.models.base_model.BaseModel):
 92class PredefinedScalingMetricSpecificationModel(BaseModel):
 93    predefined_scaling_metric_type: Literal[
 94        "ALBRequestCountPerTarget",
 95        "ASGAverageCPUUtilization",
 96        "ASGAverageNetworkIn",
 97        "ASGAverageNetworkOut",
 98        "DynamoDBReadCapacityUtilization",
 99        "DynamoDBWriteCapacityUtilization",
100        "EC2SpotFleetRequestAverageCPUUtilization",
101        "EC2SpotFleetRequestAverageNetworkIn",
102        "EC2SpotFleetRequestAverageNetworkOut",
103        "ECSServiceAverageCPUUtilization",
104        "ECSServiceAverageMemoryUtilization",
105        "RDSReaderAverageCPUUtilization",
106        "RDSReaderAverageDatabaseConnections",
107    ] = Field(alias="PredefinedScalingMetricType")
108    resource_label: Optional[str] = Field(default=None, alias="ResourceLabel")
Inherited Members
mypydantic.models.base_model.BaseModel
BaseModel
Config
pydantic.main.BaseModel
dict
json
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class ApplicationSourceModel(mypydantic.models.base_model.BaseModel):
111class ApplicationSourceModel(BaseModel):
112    cloud_formation_stack_arn: Optional[str] = Field(
113        default=None, alias="CloudFormationStackARN"
114    )
115    tag_filters: Optional[Sequence[TagFilterModel]] = Field(
116        default=None, alias="TagFilters"
117    )
Inherited Members
mypydantic.models.base_model.BaseModel
BaseModel
Config
pydantic.main.BaseModel
dict
json
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class CreateScalingPlanResponseModel(mypydantic.models.base_model.BaseModel):
120class CreateScalingPlanResponseModel(BaseModel):
121    scaling_plan_version: int = Field(alias="ScalingPlanVersion")
122    response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata")
Inherited Members
mypydantic.models.base_model.BaseModel
BaseModel
Config
pydantic.main.BaseModel
dict
json
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class CustomizedLoadMetricSpecificationModel(mypydantic.models.base_model.BaseModel):
125class CustomizedLoadMetricSpecificationModel(BaseModel):
126    metric_name: str = Field(alias="MetricName")
127    namespace: str = Field(alias="Namespace")
128    statistic: Literal["Average", "Maximum", "Minimum", "SampleCount", "Sum"] = Field(
129        alias="Statistic"
130    )
131    dimensions: Optional[Sequence[MetricDimensionModel]] = Field(
132        default=None, alias="Dimensions"
133    )
134    unit: Optional[str] = Field(default=None, alias="Unit")
Inherited Members
mypydantic.models.base_model.BaseModel
BaseModel
Config
pydantic.main.BaseModel
dict
json
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class CustomizedScalingMetricSpecificationModel(mypydantic.models.base_model.BaseModel):
137class CustomizedScalingMetricSpecificationModel(BaseModel):
138    metric_name: str = Field(alias="MetricName")
139    namespace: str = Field(alias="Namespace")
140    statistic: Literal["Average", "Maximum", "Minimum", "SampleCount", "Sum"] = Field(
141        alias="Statistic"
142    )
143    dimensions: Optional[Sequence[MetricDimensionModel]] = Field(
144        default=None, alias="Dimensions"
145    )
146    unit: Optional[str] = Field(default=None, alias="Unit")
Inherited Members
mypydantic.models.base_model.BaseModel
BaseModel
Config
pydantic.main.BaseModel
dict
json
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class GetScalingPlanResourceForecastDataResponseModel(mypydantic.models.base_model.BaseModel):
149class GetScalingPlanResourceForecastDataResponseModel(BaseModel):
150    datapoints: List[DatapointModel] = Field(alias="Datapoints")
151    response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata")
Inherited Members
mypydantic.models.base_model.BaseModel
BaseModel
Config
pydantic.main.BaseModel
dict
json
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class DescribeScalingPlanResourcesRequestDescribeScalingPlanResourcesPaginateModel(mypydantic.models.base_model.BaseModel):
154class DescribeScalingPlanResourcesRequestDescribeScalingPlanResourcesPaginateModel(
155    BaseModel
156):
157    scaling_plan_name: str = Field(alias="ScalingPlanName")
158    scaling_plan_version: int = Field(alias="ScalingPlanVersion")
159    pagination_config: Optional[PaginatorConfigModel] = Field(
160        default=None, alias="PaginationConfig"
161    )
Inherited Members
mypydantic.models.base_model.BaseModel
BaseModel
Config
pydantic.main.BaseModel
dict
json
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class DescribeScalingPlansRequestDescribeScalingPlansPaginateModel(mypydantic.models.base_model.BaseModel):
164class DescribeScalingPlansRequestDescribeScalingPlansPaginateModel(BaseModel):
165    scaling_plan_names: Optional[Sequence[str]] = Field(
166        default=None, alias="ScalingPlanNames"
167    )
168    scaling_plan_version: Optional[int] = Field(
169        default=None, alias="ScalingPlanVersion"
170    )
171    application_sources: Optional[Sequence[ApplicationSourceModel]] = Field(
172        default=None, alias="ApplicationSources"
173    )
174    pagination_config: Optional[PaginatorConfigModel] = Field(
175        default=None, alias="PaginationConfig"
176    )
Inherited Members
mypydantic.models.base_model.BaseModel
BaseModel
Config
pydantic.main.BaseModel
dict
json
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class DescribeScalingPlansRequestModel(mypydantic.models.base_model.BaseModel):
179class DescribeScalingPlansRequestModel(BaseModel):
180    scaling_plan_names: Optional[Sequence[str]] = Field(
181        default=None, alias="ScalingPlanNames"
182    )
183    scaling_plan_version: Optional[int] = Field(
184        default=None, alias="ScalingPlanVersion"
185    )
186    application_sources: Optional[Sequence[ApplicationSourceModel]] = Field(
187        default=None, alias="ApplicationSources"
188    )
189    max_results: Optional[int] = Field(default=None, alias="MaxResults")
190    next_token: Optional[str] = Field(default=None, alias="NextToken")
Inherited Members
mypydantic.models.base_model.BaseModel
BaseModel
Config
pydantic.main.BaseModel
dict
json
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class TargetTrackingConfigurationModel(mypydantic.models.base_model.BaseModel):
193class TargetTrackingConfigurationModel(BaseModel):
194    target_value: float = Field(alias="TargetValue")
195    predefined_scaling_metric_specification: Optional[
196        PredefinedScalingMetricSpecificationModel
197    ] = Field(default=None, alias="PredefinedScalingMetricSpecification")
198    customized_scaling_metric_specification: Optional[
199        CustomizedScalingMetricSpecificationModel
200    ] = Field(default=None, alias="CustomizedScalingMetricSpecification")
201    disable_scale_in: Optional[bool] = Field(default=None, alias="DisableScaleIn")
202    scale_out_cooldown: Optional[int] = Field(default=None, alias="ScaleOutCooldown")
203    scale_in_cooldown: Optional[int] = Field(default=None, alias="ScaleInCooldown")
204    estimated_instance_warmup: Optional[int] = Field(
205        default=None, alias="EstimatedInstanceWarmup"
206    )
Inherited Members
mypydantic.models.base_model.BaseModel
BaseModel
Config
pydantic.main.BaseModel
dict
json
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class ScalingInstructionModel(mypydantic.models.base_model.BaseModel):
209class ScalingInstructionModel(BaseModel):
210    service_namespace: Literal["autoscaling", "dynamodb", "ec2", "ecs", "rds"] = Field(
211        alias="ServiceNamespace"
212    )
213    resource_id: str = Field(alias="ResourceId")
214    scalable_dimension: Literal[
215        "autoscaling:autoScalingGroup:DesiredCapacity",
216        "dynamodb:index:ReadCapacityUnits",
217        "dynamodb:index:WriteCapacityUnits",
218        "dynamodb:table:ReadCapacityUnits",
219        "dynamodb:table:WriteCapacityUnits",
220        "ec2:spot-fleet-request:TargetCapacity",
221        "ecs:service:DesiredCount",
222        "rds:cluster:ReadReplicaCount",
223    ] = Field(alias="ScalableDimension")
224    min_capacity: int = Field(alias="MinCapacity")
225    max_capacity: int = Field(alias="MaxCapacity")
226    target_tracking_configurations: Sequence[TargetTrackingConfigurationModel] = Field(
227        alias="TargetTrackingConfigurations"
228    )
229    predefined_load_metric_specification: Optional[
230        PredefinedLoadMetricSpecificationModel
231    ] = Field(default=None, alias="PredefinedLoadMetricSpecification")
232    customized_load_metric_specification: Optional[
233        CustomizedLoadMetricSpecificationModel
234    ] = Field(default=None, alias="CustomizedLoadMetricSpecification")
235    scheduled_action_buffer_time: Optional[int] = Field(
236        default=None, alias="ScheduledActionBufferTime"
237    )
238    predictive_scaling_max_capacity_behavior: Optional[
239        Literal[
240            "SetForecastCapacityToMaxCapacity",
241            "SetMaxCapacityAboveForecastCapacity",
242            "SetMaxCapacityToForecastCapacity",
243        ]
244    ] = Field(default=None, alias="PredictiveScalingMaxCapacityBehavior")
245    predictive_scaling_max_capacity_buffer: Optional[int] = Field(
246        default=None, alias="PredictiveScalingMaxCapacityBuffer"
247    )
248    predictive_scaling_mode: Optional[
249        Literal["ForecastAndScale", "ForecastOnly"]
250    ] = Field(default=None, alias="PredictiveScalingMode")
251    scaling_policy_update_behavior: Optional[
252        Literal["KeepExternalPolicies", "ReplaceExternalPolicies"]
253    ] = Field(default=None, alias="ScalingPolicyUpdateBehavior")
254    disable_dynamic_scaling: Optional[bool] = Field(
255        default=None, alias="DisableDynamicScaling"
256    )
Inherited Members
mypydantic.models.base_model.BaseModel
BaseModel
Config
pydantic.main.BaseModel
dict
json
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class ScalingPolicyModel(mypydantic.models.base_model.BaseModel):
259class ScalingPolicyModel(BaseModel):
260    policy_name: str = Field(alias="PolicyName")
261    policy_type: Literal["TargetTrackingScaling"] = Field(alias="PolicyType")
262    target_tracking_configuration: Optional[TargetTrackingConfigurationModel] = Field(
263        default=None, alias="TargetTrackingConfiguration"
264    )
Inherited Members
mypydantic.models.base_model.BaseModel
BaseModel
Config
pydantic.main.BaseModel
dict
json
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class CreateScalingPlanRequestModel(mypydantic.models.base_model.BaseModel):
267class CreateScalingPlanRequestModel(BaseModel):
268    scaling_plan_name: str = Field(alias="ScalingPlanName")
269    application_source: ApplicationSourceModel = Field(alias="ApplicationSource")
270    scaling_instructions: Sequence[ScalingInstructionModel] = Field(
271        alias="ScalingInstructions"
272    )
Inherited Members
mypydantic.models.base_model.BaseModel
BaseModel
Config
pydantic.main.BaseModel
dict
json
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class ScalingPlanModel(mypydantic.models.base_model.BaseModel):
275class ScalingPlanModel(BaseModel):
276    scaling_plan_name: str = Field(alias="ScalingPlanName")
277    scaling_plan_version: int = Field(alias="ScalingPlanVersion")
278    application_source: ApplicationSourceModel = Field(alias="ApplicationSource")
279    scaling_instructions: List[ScalingInstructionModel] = Field(
280        alias="ScalingInstructions"
281    )
282    status_code: Literal[
283        "Active",
284        "ActiveWithProblems",
285        "CreationFailed",
286        "CreationInProgress",
287        "DeletionFailed",
288        "DeletionInProgress",
289        "UpdateFailed",
290        "UpdateInProgress",
291    ] = Field(alias="StatusCode")
292    status_message: Optional[str] = Field(default=None, alias="StatusMessage")
293    status_start_time: Optional[datetime] = Field(default=None, alias="StatusStartTime")
294    creation_time: Optional[datetime] = Field(default=None, alias="CreationTime")
Inherited Members
mypydantic.models.base_model.BaseModel
BaseModel
Config
pydantic.main.BaseModel
dict
json
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class UpdateScalingPlanRequestModel(mypydantic.models.base_model.BaseModel):
297class UpdateScalingPlanRequestModel(BaseModel):
298    scaling_plan_name: str = Field(alias="ScalingPlanName")
299    scaling_plan_version: int = Field(alias="ScalingPlanVersion")
300    application_source: Optional[ApplicationSourceModel] = Field(
301        default=None, alias="ApplicationSource"
302    )
303    scaling_instructions: Optional[Sequence[ScalingInstructionModel]] = Field(
304        default=None, alias="ScalingInstructions"
305    )
Inherited Members
mypydantic.models.base_model.BaseModel
BaseModel
Config
pydantic.main.BaseModel
dict
json
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class ScalingPlanResourceModel(mypydantic.models.base_model.BaseModel):
308class ScalingPlanResourceModel(BaseModel):
309    scaling_plan_name: str = Field(alias="ScalingPlanName")
310    scaling_plan_version: int = Field(alias="ScalingPlanVersion")
311    service_namespace: Literal["autoscaling", "dynamodb", "ec2", "ecs", "rds"] = Field(
312        alias="ServiceNamespace"
313    )
314    resource_id: str = Field(alias="ResourceId")
315    scalable_dimension: Literal[
316        "autoscaling:autoScalingGroup:DesiredCapacity",
317        "dynamodb:index:ReadCapacityUnits",
318        "dynamodb:index:WriteCapacityUnits",
319        "dynamodb:table:ReadCapacityUnits",
320        "dynamodb:table:WriteCapacityUnits",
321        "ec2:spot-fleet-request:TargetCapacity",
322        "ecs:service:DesiredCount",
323        "rds:cluster:ReadReplicaCount",
324    ] = Field(alias="ScalableDimension")
325    scaling_status_code: Literal["Active", "Inactive", "PartiallyActive"] = Field(
326        alias="ScalingStatusCode"
327    )
328    scaling_policies: Optional[List[ScalingPolicyModel]] = Field(
329        default=None, alias="ScalingPolicies"
330    )
331    scaling_status_message: Optional[str] = Field(
332        default=None, alias="ScalingStatusMessage"
333    )
Inherited Members
mypydantic.models.base_model.BaseModel
BaseModel
Config
pydantic.main.BaseModel
dict
json
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class DescribeScalingPlansResponseModel(mypydantic.models.base_model.BaseModel):
336class DescribeScalingPlansResponseModel(BaseModel):
337    scaling_plans: List[ScalingPlanModel] = Field(alias="ScalingPlans")
338    next_token: str = Field(alias="NextToken")
339    response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata")
Inherited Members
mypydantic.models.base_model.BaseModel
BaseModel
Config
pydantic.main.BaseModel
dict
json
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class DescribeScalingPlanResourcesResponseModel(mypydantic.models.base_model.BaseModel):
342class DescribeScalingPlanResourcesResponseModel(BaseModel):
343    scaling_plan_resources: List[ScalingPlanResourceModel] = Field(
344        alias="ScalingPlanResources"
345    )
346    next_token: str = Field(alias="NextToken")
347    response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata")
Inherited Members
mypydantic.models.base_model.BaseModel
BaseModel
Config
pydantic.main.BaseModel
dict
json
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs