diff --git a/Cargo.toml b/Cargo.toml index 0dd088e064fb..b56883d39f10 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,13 +1,13 @@ [workspace] resolver = "2" exclude = [ + "examples/webassembly", "examples/examples", - "examples/lambda", "examples/test-utils", - "examples/webassembly", "examples/cross_service", - "tests/no-default-features", - "tests/webassembly" + "examples/lambda", + "tests/webassembly", + "tests/no-default-features" ] members = [ "sdk/accessanalyzer", diff --git a/aws-models/compute-optimizer.json b/aws-models/compute-optimizer.json index 6e23f9014511..3af0e8d94303 100644 --- a/aws-models/compute-optimizer.json +++ b/aws-models/compute-optimizer.json @@ -2328,7 +2328,7 @@ "values": { "target": "com.amazonaws.computeoptimizer#FilterValues", "traits": { - "smithy.api#documentation": "

\n The value of the filter.\n

\n

The valid values for this parameter are as follows:

\n " + "smithy.api#documentation": "

\n The value of the filter.\n

\n

The valid values for this parameter are as follows:

\n " } } }, @@ -9361,7 +9361,7 @@ "lookBackPeriod": { "target": "com.amazonaws.computeoptimizer#LookBackPeriodPreference", "traits": { - "smithy.api#documentation": "

\n The preference to control the number of days the utilization metrics of the Amazon Web Services resource are analyzed. \n When this preference isn't specified, we use the default value DAYS_14.\n

\n \n

You can only set this preference for the Amazon EC2 instance and Auto Scaling group resource types.

\n
" + "smithy.api#documentation": "

\n The preference to control the number of days the utilization metrics of the Amazon Web Services resource are analyzed. \n When this preference isn't specified, we use the default value DAYS_14.\n

\n

You can only set this preference for the Amazon EC2 instance and Auto Scaling group resource types.\n

\n \n \n " } }, "utilizationPreferences": { diff --git a/aws-models/config-service.json b/aws-models/config-service.json index 9e4f4565fdc6..ef795d66e788 100644 --- a/aws-models/config-service.json +++ b/aws-models/config-service.json @@ -8689,7 +8689,7 @@ "min": 1, "max": 64 }, - "smithy.api#pattern": "\\S" + "smithy.api#pattern": "^[A-Za-z0-9-_]+$" } }, "com.amazonaws.configservice#OrganizationConfigRuleNames": { diff --git a/aws-models/ec2.json b/aws-models/ec2.json index 0bccdf6c9708..7e0de0da2b23 100644 --- a/aws-models/ec2.json +++ b/aws-models/ec2.json @@ -2303,6 +2303,9 @@ { "target": "com.amazonaws.ec2#CreateCapacityReservation" }, + { + "target": "com.amazonaws.ec2#CreateCapacityReservationBySplitting" + }, { "target": "com.amazonaws.ec2#CreateCapacityReservationFleet" }, @@ -3809,6 +3812,9 @@ { "target": "com.amazonaws.ec2#MoveByoipCidrToIpam" }, + { + "target": "com.amazonaws.ec2#MoveCapacityReservationInstances" + }, { "target": "com.amazonaws.ec2#ProvisionByoipCidr" }, @@ -5353,7 +5359,7 @@ "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "DestinationPrefixListId", - "smithy.api#documentation": "

The prefix of the Amazon Web Service.

", + "smithy.api#documentation": "

The prefix of the Amazon Web Services service.

", "smithy.api#xmlName": "destinationPrefixListId" } }, @@ -13908,6 +13914,94 @@ "smithy.api#documentation": "

Creates a new Capacity Reservation with the specified attributes.

\n

Capacity Reservations enable you to reserve capacity for your Amazon EC2 instances in a specific Availability Zone for any duration. This \n\t\t\tgives you the flexibility to selectively add capacity reservations and still get the Regional RI discounts for that usage. \n\t\t\tBy creating Capacity Reservations, you ensure that you always have access to Amazon EC2 capacity when you need it, for as long as you need it. \n\t\t\tFor more information, see Capacity Reservations in the Amazon EC2 User Guide.

\n

Your request to create a Capacity Reservation could fail if Amazon EC2 does not have sufficient capacity to\n\t\t\tfulfill the request. If your request fails due to Amazon EC2 capacity constraints, either try\n\t\t\tagain at a later time, try in a different Availability Zone, or request a smaller\n\t\t\tcapacity reservation. If your application is flexible across instance types and sizes,\n\t\t\ttry to create a Capacity Reservation with different instance attributes.

\n

Your request could also fail if the requested quantity exceeds your On-Demand Instance\n\t\t\tlimit for the selected instance type. If your request fails due to limit constraints,\n\t\t\tincrease your On-Demand Instance limit for the required instance type and try again. For\n\t\t\tmore information about increasing your instance limits, see Amazon EC2 Service\n\t\t\t\tQuotas in the Amazon EC2 User Guide.

" } }, + "com.amazonaws.ec2#CreateCapacityReservationBySplitting": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateCapacityReservationBySplittingRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CreateCapacityReservationBySplittingResult" + }, + "traits": { + "smithy.api#documentation": "

\n\t\t\tCreate a new Capacity Reservation by splitting the available capacity of the source Capacity Reservation. The new Capacity Reservation will have the same attributes as the source Capacity Reservation except for tags. The source Capacity Reservation must be active and owned by your Amazon Web Services account.\n\t\t

" + } + }, + "com.amazonaws.ec2#CreateCapacityReservationBySplittingRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.

", + "smithy.api#idempotencyToken": {} + } + }, + "SourceCapacityReservationId": { + "target": "com.amazonaws.ec2#CapacityReservationId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

\n\t\t\tThe ID of the Capacity Reservation from which you want to split the available capacity. \n\t\t

", + "smithy.api#required": {} + } + }, + "InstanceCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

\n\t\t\tThe number of instances to split from the source Capacity Reservation.\n\t\t

", + "smithy.api#required": {} + } + }, + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", + "traits": { + "smithy.api#documentation": "

\n\t\t\tThe tags to apply to the new Capacity Reservation.\n\t\t

", + "smithy.api#xmlName": "TagSpecification" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#CreateCapacityReservationBySplittingResult": { + "type": "structure", + "members": { + "SourceCapacityReservation": { + "target": "com.amazonaws.ec2#CapacityReservation", + "traits": { + "aws.protocols#ec2QueryName": "SourceCapacityReservation", + "smithy.api#documentation": "

\n\t\t\tInformation about the source Capacity Reservation.\n\t\t

", + "smithy.api#xmlName": "sourceCapacityReservation" + } + }, + "DestinationCapacityReservation": { + "target": "com.amazonaws.ec2#CapacityReservation", + "traits": { + "aws.protocols#ec2QueryName": "DestinationCapacityReservation", + "smithy.api#documentation": "

\n\t\t\tInformation about the destination Capacity Reservation.\n\t\t

", + "smithy.api#xmlName": "destinationCapacityReservation" + } + }, + "InstanceCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "InstanceCount", + "smithy.api#documentation": "

\n\t\t\tThe number of instances in the new Capacity Reservation. The number of instances in the source Capacity Reservation was reduced by this amount.\n\t\t

", + "smithy.api#xmlName": "instanceCount" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.ec2#CreateCapacityReservationFleet": { "type": "operation", "input": { @@ -17609,7 +17703,7 @@ "AwsService": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The Amazon Web Service. Currently not supported.

" + "smithy.api#documentation": "

The Amazon Web Services service. Currently not supported.

" } }, "Permission": { @@ -27131,7 +27225,7 @@ "target": "com.amazonaws.ec2#DescribeAddressTransfersResult" }, "traits": { - "smithy.api#documentation": "

Describes an Elastic IP address transfer. For more information, see Transfer Elastic IP addresses in the Amazon VPC User Guide.

\n

When you transfer an Elastic IP address, there is a two-step handshake\n between the source and transfer Amazon Web Services accounts. When the source account starts the transfer,\n the transfer account has seven days to accept the Elastic IP address\n transfer. During those seven days, the source account can view the\n pending transfer by using this action. After seven days, the\n transfer expires and ownership of the Elastic IP\n address returns to the source\n account. Accepted transfers are visible to the source account for three days\n after the transfers have been accepted.

", + "smithy.api#documentation": "

Describes an Elastic IP address transfer. For more information, see Transfer Elastic IP addresses in the Amazon VPC User Guide.

\n

When you transfer an Elastic IP address, there is a two-step handshake\n between the source and transfer Amazon Web Services accounts. When the source account starts the transfer,\n the transfer account has seven days to accept the Elastic IP address\n transfer. During those seven days, the source account can view the\n pending transfer by using this action. After seven days, the\n transfer expires and ownership of the Elastic IP\n address returns to the source\n account. Accepted transfers are visible to the source account for 14 days\n after the transfers have been accepted.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", @@ -35524,7 +35618,7 @@ "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#documentation": "

One or more filters.

\n ", "smithy.api#xmlName": "Filter" } }, @@ -35695,7 +35789,7 @@ "target": "com.amazonaws.ec2#FilterList", "traits": { "aws.protocols#ec2QueryName": "Filter", - "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#documentation": "

One or more filters.

\n ", "smithy.api#xmlName": "filter" } }, @@ -36716,7 +36810,7 @@ "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#documentation": "

The filters.

\n ", "smithy.api#xmlName": "Filter" } }, @@ -74906,7 +75000,7 @@ "target": "com.amazonaws.ec2#ModifyCapacityReservationResult" }, "traits": { - "smithy.api#documentation": "

Modifies a Capacity Reservation's capacity and the conditions under which it is to be released. You\n\t\t\tcannot change a Capacity Reservation's instance type, EBS optimization, instance store settings,\n\t\t\tplatform, Availability Zone, or instance eligibility. If you need to modify any of these\n\t\t\tattributes, we recommend that you cancel the Capacity Reservation, and then create a new one with\n\t\t\tthe required attributes.

" + "smithy.api#documentation": "

Modifies a Capacity Reservation's capacity, instance eligibility, and the conditions under which it is to be released. You\n\t\t can't modify a Capacity Reservation's instance type, EBS optimization, platform, instance store settings, Availability Zone, or\n\t\t tenancy. If you need to modify any of these attributes, we recommend that you cancel the Capacity Reservation, and then create a new one with\n\t\t the required attributes. For more information, see Modify an active Capacity Reservation.

" } }, "com.amazonaws.ec2#ModifyCapacityReservationFleet": { @@ -75023,6 +75117,12 @@ "traits": { "smithy.api#documentation": "

Reserved for future use.

" } + }, + "InstanceMatchCriteria": { + "target": "com.amazonaws.ec2#InstanceMatchCriteria", + "traits": { + "smithy.api#documentation": "

\n\t\t\tThe matching criteria (instance eligibility) that you want to use in the modified Capacity Reservation. If you change the instance eligibility of an existing Capacity Reservation from targeted to open, \n\t\t\tany running instances that match the attributes of the Capacity Reservation, have the CapacityReservationPreference set to open, and \n\t\t\tare not yet running in the Capacity Reservation, will automatically use the modified Capacity Reservation.\n\t\t

\n

To modify the instance eligibility, the Capacity Reservation must be completely idle (zero usage).

" + } } }, "traits": { @@ -80481,6 +80581,95 @@ "smithy.api#output": {} } }, + "com.amazonaws.ec2#MoveCapacityReservationInstances": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#MoveCapacityReservationInstancesRequest" + }, + "output": { + "target": "com.amazonaws.ec2#MoveCapacityReservationInstancesResult" + }, + "traits": { + "smithy.api#documentation": "

Move available capacity from a source Capacity Reservation to a destination Capacity Reservation. The source Capacity Reservation and the destination Capacity Reservation must be active, owned by your Amazon Web Services account, and share the following:\n\t\t

\n " + } + }, + "com.amazonaws.ec2#MoveCapacityReservationInstancesRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.

", + "smithy.api#idempotencyToken": {} + } + }, + "SourceCapacityReservationId": { + "target": "com.amazonaws.ec2#CapacityReservationId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

\n\t\t\tThe ID of the Capacity Reservation from which you want to move capacity.\n\t\t

", + "smithy.api#required": {} + } + }, + "DestinationCapacityReservationId": { + "target": "com.amazonaws.ec2#CapacityReservationId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

\n\t\t\tThe ID of the Capacity Reservation that you want to move capacity into.\n\t\t

", + "smithy.api#required": {} + } + }, + "InstanceCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The number of instances that you want to move from the source Capacity Reservation.\n\t\t

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#MoveCapacityReservationInstancesResult": { + "type": "structure", + "members": { + "SourceCapacityReservation": { + "target": "com.amazonaws.ec2#CapacityReservation", + "traits": { + "aws.protocols#ec2QueryName": "SourceCapacityReservation", + "smithy.api#documentation": "

\n\t\t\tInformation about the source Capacity Reservation.\n\t\t

", + "smithy.api#xmlName": "sourceCapacityReservation" + } + }, + "DestinationCapacityReservation": { + "target": "com.amazonaws.ec2#CapacityReservation", + "traits": { + "aws.protocols#ec2QueryName": "DestinationCapacityReservation", + "smithy.api#documentation": "

\n\t\t\tInformation about the destination Capacity Reservation.\n\t\t

", + "smithy.api#xmlName": "destinationCapacityReservation" + } + }, + "InstanceCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "InstanceCount", + "smithy.api#documentation": "

\n\t\t\tThe number of instances that were moved from the source Capacity Reservation to the destination Capacity Reservation.\n\t\t

", + "smithy.api#xmlName": "instanceCount" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.ec2#MoveStatus": { "type": "enum", "members": { @@ -82378,7 +82567,7 @@ "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "AwsService", - "smithy.api#documentation": "

The Amazon Web Service.

", + "smithy.api#documentation": "

The Amazon Web Services service.

", "smithy.api#xmlName": "awsService" } }, @@ -84607,7 +84796,7 @@ "target": "com.amazonaws.ec2#ValueStringList", "traits": { "aws.protocols#ec2QueryName": "CidrSet", - "smithy.api#documentation": "

The IP address range of the Amazon Web Service.

", + "smithy.api#documentation": "

The IP address range of the Amazon Web Services service.

", "smithy.api#xmlName": "cidrSet" } }, @@ -92290,7 +92479,7 @@ "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "DestinationPrefixListId", - "smithy.api#documentation": "

The prefix of the Amazon Web Service.

", + "smithy.api#documentation": "

The prefix of the Amazon Web Services service.

", "smithy.api#xmlName": "destinationPrefixListId" } }, diff --git a/aws-models/eks.json b/aws-models/eks.json index c488213e7345..c699f3042d45 100644 --- a/aws-models/eks.json +++ b/aws-models/eks.json @@ -115,6 +115,18 @@ "traits": { "smithy.api#enumValue": "AL2023_ARM_64_STANDARD" } + }, + "AL2023_x86_64_NEURON": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AL2023_x86_64_NEURON" + } + }, + "AL2023_x86_64_NVIDIA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AL2023_x86_64_NVIDIA" + } } } }, diff --git a/aws-models/groundstation.json b/aws-models/groundstation.json index fbdf8a486098..fe43bbc8705d 100644 --- a/aws-models/groundstation.json +++ b/aws-models/groundstation.json @@ -4979,7 +4979,7 @@ } }, "traits": { - "smithy.api#documentation": "

\n Ephemeris data in Orbit Ephemeris Message (OEM) format.\n

\n

\n Position, velocity, and acceleration units must be represented in km, km/s, and\n km/s**2, respectively, in ephemeris data lines. Covariance matrix line units must be\n represented in km**2 if computed from two positions, km**2/s if computed from one\n position and one velocity, and km**2/s**2 if computed from two velocities. Consult section\n 7.7.2 of The Consultative Committee for Space Data Systems (CCSDS)\n Recommended Standard for Orbit Data Messages\n for more information.\n

" + "smithy.api#documentation": "

\n Ephemeris data in Orbit Ephemeris Message (OEM) format.\n

\n

\n AWS Ground Station processes OEM Customer Provided Ephemerides according to the CCSDS standard with some extra restrictions. OEM files should be in KVN format. For more detail about the OEM format that AWS Ground Station supports, see OEM ephemeris format in the AWS Ground Station user guide.\n

" } }, "com.amazonaws.groundstation#PaginationMaxResults": { diff --git a/aws-models/medialive.json b/aws-models/medialive.json index 2a9c638ff472..68272e15e526 100644 --- a/aws-models/medialive.json +++ b/aws-models/medialive.json @@ -22357,6 +22357,18 @@ "smithy.api#documentation": "Multiplex Output Settings" } }, + "com.amazonaws.medialive#MultiplexPacketIdentifiersMapping": { + "type": "map", + "key": { + "target": "com.amazonaws.medialive#__string" + }, + "value": { + "target": "com.amazonaws.medialive#MultiplexProgramPacketIdentifiersMap" + }, + "traits": { + "smithy.api#documentation": "Placeholder documentation for MultiplexPacketIdentifiersMapping" + } + }, "com.amazonaws.medialive#MultiplexProgram": { "type": "structure", "members": { @@ -22502,6 +22514,30 @@ "traits": { "smithy.api#jsonName": "videoPid" } + }, + "AribCaptionsPid": { + "target": "com.amazonaws.medialive#__integer", + "traits": { + "smithy.api#jsonName": "aribCaptionsPid" + } + }, + "DvbTeletextPids": { + "target": "com.amazonaws.medialive#__listOf__integer", + "traits": { + "smithy.api#jsonName": "dvbTeletextPids" + } + }, + "EcmPid": { + "target": "com.amazonaws.medialive#__integer", + "traits": { + "smithy.api#jsonName": "ecmPid" + } + }, + "Smpte2038Pid": { + "target": "com.amazonaws.medialive#__integer", + "traits": { + "smithy.api#jsonName": "smpte2038Pid" + } } }, "traits": { @@ -30512,6 +30548,12 @@ "smithy.api#documentation": "Name of the multiplex.", "smithy.api#jsonName": "name" } + }, + "PacketIdentifiersMapping": { + "target": "com.amazonaws.medialive#MultiplexPacketIdentifiersMapping", + "traits": { + "smithy.api#jsonName": "packetIdentifiersMapping" + } } }, "traits": { diff --git a/aws-models/sagemaker.json b/aws-models/sagemaker.json index 313708d397c9..de2ae390a3f2 100644 --- a/aws-models/sagemaker.json +++ b/aws-models/sagemaker.json @@ -3064,7 +3064,7 @@ "target": "com.amazonaws.sagemaker#AutoMLAlgorithms", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The selection of algorithms trained on your dataset to generate the model candidates for\n an Autopilot job.

\n ", + "smithy.api#documentation": "

The selection of algorithms trained on your dataset to generate the model candidates for\n an Autopilot job.

\n ", "smithy.api#required": {} } } @@ -3198,7 +3198,7 @@ "AlgorithmsConfig": { "target": "com.amazonaws.sagemaker#AutoMLAlgorithmsConfig", "traits": { - "smithy.api#documentation": "

Stores the configuration information for the selection of algorithms trained on tabular data.

\n

The list of available algorithms to choose from depends on the training mode set in\n \n TabularJobConfig.Mode\n .

\n \n

For the list of all algorithms per problem type and training mode, see \n AutoMLAlgorithmConfig.

\n

For more information on each algorithm, see the Algorithm support section in Autopilot developer guide.

" + "smithy.api#documentation": "

Stores the configuration information for the selection of algorithms trained on tabular\n data.

\n

The list of available algorithms to choose from depends on the training mode set in\n \n TabularJobConfig.Mode\n .

\n \n

For the list of all algorithms per problem type and training mode, see \n AutoMLAlgorithmConfig.

\n

For more information on each algorithm, see the Algorithm support section in Autopilot developer guide.

" } } }, @@ -3307,6 +3307,20 @@ } } }, + "com.amazonaws.sagemaker#AutoMLComputeConfig": { + "type": "structure", + "members": { + "EmrServerlessComputeConfig": { + "target": "com.amazonaws.sagemaker#EmrServerlessComputeConfig", + "traits": { + "smithy.api#documentation": "

The configuration for using EMR Serverless\n to run the AutoML job V2.

\n

To allow your AutoML job V2 to automatically initiate a remote job on EMR Serverless\n when additional compute resources are needed to process large datasets, you need to provide\n an EmrServerlessComputeConfig object, which includes an\n ExecutionRoleARN attribute, to the AutoMLComputeConfig of the\n AutoML job V2 input request.

\n

By seamlessly transitioning to EMR Serverless when required, the AutoML job can handle\n datasets that would otherwise exceed the initially provisioned resources, without any\n manual intervention from you.

\n

EMR Serverless is available for the tabular and time series problem types. We\n recommend setting up this option for tabular datasets larger than 5 GB and time series\n datasets larger than 30 GB.

" + } + } + }, + "traits": { + "smithy.api#documentation": "\n

This data type is intended for use exclusively by SageMaker Canvas and cannot be used in\n other contexts at the moment.

\n
\n

Specifies the compute configuration for an AutoML job V2.

" + } + }, "com.amazonaws.sagemaker#AutoMLContainerDefinition": { "type": "structure", "members": { @@ -4183,7 +4197,7 @@ "target": "com.amazonaws.sagemaker#S3Uri", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The Amazon S3 output path. Must be 128 characters or less.

", + "smithy.api#documentation": "

The Amazon S3 output path. Must be 512 characters or less.

", "smithy.api#required": {} } } @@ -5067,7 +5081,7 @@ "AlgorithmsConfig": { "target": "com.amazonaws.sagemaker#AutoMLAlgorithmsConfig", "traits": { - "smithy.api#documentation": "

Your Autopilot job trains a default set of algorithms on your dataset. For tabular and\n time-series data, you can customize the algorithm list by selecting a subset of algorithms\n for your problem type.

\n

\n AlgorithmsConfig stores the customized selection of algorithms to train on\n your data.

\n " + "smithy.api#documentation": "

Your Autopilot job trains a default set of algorithms on your dataset. For tabular and\n time-series data, you can customize the algorithm list by selecting a subset of algorithms\n for your problem type.

\n

\n AlgorithmsConfig stores the customized selection of algorithms to train on\n your data.

\n " } } }, @@ -5254,6 +5268,12 @@ "traits": { "smithy.api#documentation": "

The generative AI settings for the SageMaker Canvas application.

" } + }, + "EmrServerlessSettings": { + "target": "com.amazonaws.sagemaker#EmrServerlessSettings", + "traits": { + "smithy.api#documentation": "

The settings for running Amazon EMR Serverless data processing jobs in SageMaker Canvas.

" + } } }, "traits": { @@ -8919,7 +8939,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates an Autopilot job also referred to as Autopilot experiment or AutoML job.

\n \n

We recommend using the new versions CreateAutoMLJobV2 and DescribeAutoMLJobV2, which offer backward compatibility.

\n

\n CreateAutoMLJobV2 can manage tabular problem types identical to those of\n its previous version CreateAutoMLJob, as well as time-series forecasting,\n non-tabular problem types such as image or text classification, and text generation\n (LLMs fine-tuning).

\n

Find guidelines about how to migrate a CreateAutoMLJob to\n CreateAutoMLJobV2 in Migrate a CreateAutoMLJob to CreateAutoMLJobV2.

\n
\n

You can find the best-performing model after you run an AutoML job by calling DescribeAutoMLJobV2 (recommended) or DescribeAutoMLJob.

" + "smithy.api#documentation": "

Creates an Autopilot job also referred to as Autopilot experiment or AutoML job.

\n

An AutoML job in SageMaker is a fully automated process that allows you to build machine\n learning models with minimal effort and machine learning expertise. When initiating an\n AutoML job, you provide your data and optionally specify parameters tailored to your use\n case. SageMaker then automates the entire model development lifecycle, including data\n preprocessing, model training, tuning, and evaluation. AutoML jobs are designed to simplify\n and accelerate the model building process by automating various tasks and exploring\n different combinations of machine learning algorithms, data preprocessing techniques, and\n hyperparameter values. The output of an AutoML job comprises one or more trained models\n ready for deployment and inference. Additionally, SageMaker AutoML jobs generate a candidate\n model leaderboard, allowing you to select the best-performing model for deployment.

\n

For more information about AutoML jobs, see https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-automate-model-development.html\n in the SageMaker developer guide.

\n \n

We recommend using the new versions CreateAutoMLJobV2 and DescribeAutoMLJobV2, which offer backward compatibility.

\n

\n CreateAutoMLJobV2 can manage tabular problem types identical to those of\n its previous version CreateAutoMLJob, as well as time-series forecasting,\n non-tabular problem types such as image or text classification, and text generation\n (LLMs fine-tuning).

\n

Find guidelines about how to migrate a CreateAutoMLJob to\n CreateAutoMLJobV2 in Migrate a CreateAutoMLJob to CreateAutoMLJobV2.

\n
\n

You can find the best-performing model after you run an AutoML job by calling DescribeAutoMLJobV2 (recommended) or DescribeAutoMLJob.

" } }, "com.amazonaws.sagemaker#CreateAutoMLJobRequest": { @@ -9031,7 +9051,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates an Autopilot job also referred to as Autopilot experiment or AutoML job V2.

\n \n

\n CreateAutoMLJobV2 and DescribeAutoMLJobV2 are new versions of CreateAutoMLJob\n and DescribeAutoMLJob which offer backward compatibility.

\n

\n CreateAutoMLJobV2 can manage tabular problem types identical to those of\n its previous version CreateAutoMLJob, as well as time-series forecasting,\n non-tabular problem types such as image or text classification, and text generation\n (LLMs fine-tuning).

\n

Find guidelines about how to migrate a CreateAutoMLJob to\n CreateAutoMLJobV2 in Migrate a CreateAutoMLJob to CreateAutoMLJobV2.

\n
\n

For the list of available problem types supported by CreateAutoMLJobV2, see\n AutoMLProblemTypeConfig.

\n

You can find the best-performing model after you run an AutoML job V2 by calling DescribeAutoMLJobV2.

" + "smithy.api#documentation": "

Creates an Autopilot job also referred to as Autopilot experiment or AutoML job V2.

\n

An AutoML job in SageMaker is a fully automated process that allows you to build machine\n learning models with minimal effort and machine learning expertise. When initiating an\n AutoML job, you provide your data and optionally specify parameters tailored to your use\n case. SageMaker then automates the entire model development lifecycle, including data\n preprocessing, model training, tuning, and evaluation. AutoML jobs are designed to simplify\n and accelerate the model building process by automating various tasks and exploring\n different combinations of machine learning algorithms, data preprocessing techniques, and\n hyperparameter values. The output of an AutoML job comprises one or more trained models\n ready for deployment and inference. Additionally, SageMaker AutoML jobs generate a candidate\n model leaderboard, allowing you to select the best-performing model for deployment.

\n

For more information about AutoML jobs, see https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-automate-model-development.html\n in the SageMaker developer guide.

\n

AutoML jobs V2 support various problem types such as regression, binary, and multiclass\n classification with tabular data, text and image classification, time-series forecasting,\n and fine-tuning of large language models (LLMs) for text generation.

\n \n

\n CreateAutoMLJobV2 and DescribeAutoMLJobV2 are new versions of CreateAutoMLJob\n and DescribeAutoMLJob which offer backward compatibility.

\n

\n CreateAutoMLJobV2 can manage tabular problem types identical to those of\n its previous version CreateAutoMLJob, as well as time-series forecasting,\n non-tabular problem types such as image or text classification, and text generation\n (LLMs fine-tuning).

\n

Find guidelines about how to migrate a CreateAutoMLJob to\n CreateAutoMLJobV2 in Migrate a CreateAutoMLJob to CreateAutoMLJobV2.

\n
\n

For the list of available problem types supported by CreateAutoMLJobV2, see\n AutoMLProblemTypeConfig.

\n

You can find the best-performing model after you run an AutoML job V2 by calling DescribeAutoMLJobV2.

" } }, "com.amazonaws.sagemaker#CreateAutoMLJobV2Request": { @@ -9106,6 +9126,12 @@ "traits": { "smithy.api#documentation": "

This structure specifies how to split the data into train and validation\n datasets.

\n

The validation and training datasets must contain the same headers. For jobs created by\n calling CreateAutoMLJob, the validation dataset must be less than 2 GB in\n size.

\n \n

This attribute must not be set for the time-series forecasting problem type, as Autopilot\n automatically splits the input dataset into training and validation sets.

\n
" } + }, + "AutoMLComputeConfig": { + "target": "com.amazonaws.sagemaker#AutoMLComputeConfig", + "traits": { + "smithy.api#documentation": "

Specifies the compute configuration for the AutoML job V2.

" + } } }, "traits": { @@ -18103,6 +18129,12 @@ "traits": { "smithy.api#documentation": "

Returns the security configuration for traffic encryption or Amazon VPC\n settings.

" } + }, + "AutoMLComputeConfig": { + "target": "com.amazonaws.sagemaker#AutoMLComputeConfig", + "traits": { + "smithy.api#documentation": "

The compute configuration used for the AutoML job V2.

" + } } }, "traits": { @@ -27157,6 +27189,42 @@ "smithy.api#pattern": "^\\d+$" } }, + "com.amazonaws.sagemaker#EmrServerlessComputeConfig": { + "type": "structure", + "members": { + "ExecutionRoleARN": { + "target": "com.amazonaws.sagemaker#RoleArn", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ARN of the IAM role granting the AutoML job V2 the necessary\n permissions access policies to list, connect to, or manage EMR Serverless jobs. For\n detailed information about the required permissions of this role, see \"How to configure\n AutoML to initiate a remote job on EMR Serverless for large datasets\" in Create a regression or classification job for tabular data using the AutoML API\n or Create an AutoML job for time-series forecasting using the API.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "\n

This data type is intended for use exclusively by SageMaker Canvas and cannot be used in\n other contexts at the moment.

\n
\n

Specifies the compute configuration for the EMR Serverless job.

" + } + }, + "com.amazonaws.sagemaker#EmrServerlessSettings": { + "type": "structure", + "members": { + "ExecutionRoleArn": { + "target": "com.amazonaws.sagemaker#RoleArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon Web Services IAM role that is assumed for\n running Amazon EMR Serverless jobs in SageMaker Canvas. This role should have the necessary\n permissions to read and write data attached and a trust relationship with\n EMR Serverless.

" + } + }, + "Status": { + "target": "com.amazonaws.sagemaker#FeatureStatus", + "traits": { + "smithy.api#documentation": "

Describes whether Amazon EMR Serverless job capabilities are enabled or disabled in the SageMaker\n Canvas application.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The settings for running Amazon EMR Serverless jobs in SageMaker Canvas.

" + } + }, "com.amazonaws.sagemaker#EmrSettings": { "type": "structure", "members": { @@ -44313,6 +44381,12 @@ "traits": { "smithy.api#enumValue": "Projects" } + }, + "INFERENCE_OPTIMIZATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "InferenceOptimization" + } } } }, @@ -52155,9 +52229,7 @@ "LocalPath": { "target": "com.amazonaws.sagemaker#ProcessingLocalPath", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The local path of a directory where you want Amazon SageMaker to upload its contents to Amazon S3. \n LocalPath is an absolute path to a directory containing output files. \n This directory will be created by the platform and exist when your container's \n entrypoint is invoked.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The local path of a directory where you want Amazon SageMaker to upload its contents to Amazon S3. \n LocalPath is an absolute path to a directory containing output files. \n This directory will be created by the platform and exist when your container's \n entrypoint is invoked.

" } }, "S3UploadMode": { @@ -52340,7 +52412,7 @@ "InferenceAmiVersion": { "target": "com.amazonaws.sagemaker#ProductionVariantInferenceAmiVersion", "traits": { - "smithy.api#documentation": "

Specifies an option from a collection of preconfigured Amazon Machine Image (AMI)\n images. Each image is configured by Amazon Web Services with a set of software and driver\n versions. Amazon Web Services optimizes these configurations for different machine\n learning workloads.

\n

By selecting an AMI version, you can ensure that your inference environment is\n compatible with specific software requirements, such as CUDA driver versions, Linux\n kernel versions, or Amazon Web Services Neuron driver versions.

" + "smithy.api#documentation": "

Specifies an option from a collection of preconfigured Amazon Machine Image (AMI)\n images. Each image is configured by Amazon Web Services with a set of software and driver\n versions. Amazon Web Services optimizes these configurations for different machine\n learning workloads.

\n

By selecting an AMI version, you can ensure that your inference environment is\n compatible with specific software requirements, such as CUDA driver versions, Linux\n kernel versions, or Amazon Web Services Neuron driver versions.

\n

The AMI version names, and their configurations, are the following:

\n
\n
al2-ami-sagemaker-inference-gpu-2
\n
\n \n
\n
" } } }, diff --git a/examples/examples/auto-scaling/Cargo.toml b/examples/examples/auto-scaling/Cargo.toml index 30e9c3b1bc63..6747c3320ef2 100644 --- a/examples/examples/auto-scaling/Cargo.toml +++ b/examples/examples/auto-scaling/Cargo.toml @@ -12,7 +12,7 @@ tracing = "0.1.37" tokio-stream = "0.1.14" aws-config= { version = "1.5.5", path = "../../../sdk/aws-config", features = ["behavior-version-latest"] } aws-sdk-autoscaling= { version = "1.40.0", path = "../../../sdk/autoscaling" } -aws-sdk-ec2= { version = "1.64.0", path = "../../../sdk/ec2" } +aws-sdk-ec2= { version = "1.65.0", path = "../../../sdk/ec2" } aws-types= { version = "1.3.3", path = "../../../sdk/aws-types" } [dependencies.tokio] diff --git a/examples/examples/config/Cargo.toml b/examples/examples/config/Cargo.toml index 87084e891a1c..d5ee6a06d2d4 100644 --- a/examples/examples/config/Cargo.toml +++ b/examples/examples/config/Cargo.toml @@ -8,7 +8,7 @@ publish = false [dependencies] aws-config= { version = "1.5.5", path = "../../../sdk/aws-config", features = ["behavior-version-latest"] } -aws-sdk-config= { version = "1.38.0", path = "../../../sdk/config" } +aws-sdk-config= { version = "1.39.0", path = "../../../sdk/config" } [dependencies.tokio] version = "1.20.1" diff --git a/examples/examples/ebs/Cargo.toml b/examples/examples/ebs/Cargo.toml index 2a7a25828bf0..4cb8f03e6d2e 100644 --- a/examples/examples/ebs/Cargo.toml +++ b/examples/examples/ebs/Cargo.toml @@ -11,7 +11,7 @@ base64 = "0.13.0" sha2 = "0.9.5" aws-config= { version = "1.5.5", path = "../../../sdk/aws-config", features = ["behavior-version-latest"] } aws-sdk-ebs= { version = "1.37.0", path = "../../../sdk/ebs" } -aws-sdk-ec2= { version = "1.64.0", path = "../../../sdk/ec2" } +aws-sdk-ec2= { version = "1.65.0", path = "../../../sdk/ec2" } [dependencies.tokio] version = "1.20.1" diff --git a/examples/examples/ec2/Cargo.toml b/examples/examples/ec2/Cargo.toml index 8954420a3d87..b80f3843a19c 100644 --- a/examples/examples/ec2/Cargo.toml +++ b/examples/examples/ec2/Cargo.toml @@ -15,7 +15,7 @@ aws-smithy-runtime-api= { version = "1.7.2", path = "../../../sdk/aws-smithy-run aws-sdk-ssm= { version = "1.42.0", path = "../../../sdk/ssm" } aws-smithy-async= { version = "1.2.1", path = "../../../sdk/aws-smithy-async" } aws-config= { version = "1.5.5", path = "../../../sdk/aws-config", features = ["behavior-version-latest"] } -aws-sdk-ec2= { version = "1.64.0", path = "../../../sdk/ec2" } +aws-sdk-ec2= { version = "1.65.0", path = "../../../sdk/ec2" } aws-types= { version = "1.3.3", path = "../../../sdk/aws-types" } [dependencies.tokio] diff --git a/examples/examples/eks/Cargo.toml b/examples/examples/eks/Cargo.toml index 567476a4a48b..0cd0477de200 100644 --- a/examples/examples/eks/Cargo.toml +++ b/examples/examples/eks/Cargo.toml @@ -8,7 +8,7 @@ publish = false [dependencies] aws-config= { version = "1.5.5", path = "../../../sdk/aws-config", features = ["behavior-version-latest"] } -aws-sdk-eks= { version = "1.43.0", path = "../../../sdk/eks" } +aws-sdk-eks= { version = "1.44.0", path = "../../../sdk/eks" } aws-types= { version = "1.3.3", path = "../../../sdk/aws-types" } [dependencies.tokio] diff --git a/examples/examples/lambda/Cargo.toml b/examples/examples/lambda/Cargo.toml index 8abfc5cd8a0b..085fd1a6a578 100644 --- a/examples/examples/lambda/Cargo.toml +++ b/examples/examples/lambda/Cargo.toml @@ -12,7 +12,7 @@ anyhow = "1.0.71" lambda_runtime = "0.8.0" serde = "1.0.164" aws-config= { version = "1.5.5", path = "../../../sdk/aws-config", features = ["behavior-version-latest"] } -aws-sdk-ec2= { version = "1.64.0", path = "../../../sdk/ec2" } +aws-sdk-ec2= { version = "1.65.0", path = "../../../sdk/ec2" } aws-sdk-iam= { version = "1.39.0", path = "../../../sdk/iam" } aws-sdk-lambda= { version = "1.38.0", path = "../../../sdk/lambda" } aws-sdk-s3= { version = "1.43.0", path = "../../../sdk/s3" } diff --git a/examples/examples/medialive/Cargo.toml b/examples/examples/medialive/Cargo.toml index 61d4ddda77f1..b154f89a727e 100644 --- a/examples/examples/medialive/Cargo.toml +++ b/examples/examples/medialive/Cargo.toml @@ -8,7 +8,7 @@ publish = false [dependencies] aws-config= { version = "1.5.5", path = "../../../sdk/aws-config", features = ["behavior-version-latest"] } -aws-sdk-medialive= { version = "1.44.0", path = "../../../sdk/medialive" } +aws-sdk-medialive= { version = "1.45.0", path = "../../../sdk/medialive" } [dependencies.tokio] version = "1.20.1" diff --git a/examples/examples/sagemaker/Cargo.toml b/examples/examples/sagemaker/Cargo.toml index e6330773ec27..159a578572cb 100644 --- a/examples/examples/sagemaker/Cargo.toml +++ b/examples/examples/sagemaker/Cargo.toml @@ -9,7 +9,7 @@ publish = false [dependencies] thiserror = "1.0" aws-config= { version = "1.5.5", path = "../../../sdk/aws-config", features = ["behavior-version-latest"] } -aws-sdk-sagemaker= { version = "1.63.0", path = "../../../sdk/sagemaker" } +aws-sdk-sagemaker= { version = "1.64.0", path = "../../../sdk/sagemaker" } aws-smithy-types-convert= { version = "0.60.8", path = "../../../sdk/aws-smithy-types-convert", features = ["convert-chrono"] } [dependencies.clap] diff --git a/examples/lambda/calculator/Cargo.toml b/examples/lambda/calculator/Cargo.toml index f34e90bc6288..0b926f310946 100644 --- a/examples/lambda/calculator/Cargo.toml +++ b/examples/lambda/calculator/Cargo.toml @@ -14,7 +14,7 @@ serde_json = "1.0.94" anyhow = "1.0.71" serde = "1.0.164" aws-config= { version = "1.5.5", path = "../../../sdk/aws-config" } -aws-sdk-ec2= { version = "1.64.0", path = "../../../sdk/ec2" } +aws-sdk-ec2= { version = "1.65.0", path = "../../../sdk/ec2" } aws-sdk-lambda= { version = "1.38.0", path = "../../../sdk/lambda" } aws-sdk-s3= { version = "1.43.0", path = "../../../sdk/s3" } diff --git a/sdk/computeoptimizer/Cargo.toml b/sdk/computeoptimizer/Cargo.toml index fcffafb18324..b6ce90480351 100644 --- a/sdk/computeoptimizer/Cargo.toml +++ b/sdk/computeoptimizer/Cargo.toml @@ -1,7 +1,7 @@ # Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. [package] name = "aws-sdk-computeoptimizer" -version = "1.38.0" +version = "1.38.1" authors = ["AWS Rust SDK Team ", "Russell Cohen "] description = "AWS SDK for AWS Compute Optimizer" edition = "2021" diff --git a/sdk/computeoptimizer/README.md b/sdk/computeoptimizer/README.md index 5c7bfa64a03a..fc74d9cc09c1 100644 --- a/sdk/computeoptimizer/README.md +++ b/sdk/computeoptimizer/README.md @@ -14,7 +14,7 @@ your project, add the following to your **Cargo.toml** file: ```toml [dependencies] aws-config = { version = "1.1.7", features = ["behavior-version-latest"] } -aws-sdk-computeoptimizer = "1.38.0" +aws-sdk-computeoptimizer = "1.38.1" tokio = { version = "1", features = ["full"] } ``` diff --git a/sdk/computeoptimizer/src/client/put_recommendation_preferences.rs b/sdk/computeoptimizer/src/client/put_recommendation_preferences.rs index cab8daeae3df..8fd7a98f14bb 100644 --- a/sdk/computeoptimizer/src/client/put_recommendation_preferences.rs +++ b/sdk/computeoptimizer/src/client/put_recommendation_preferences.rs @@ -8,7 +8,7 @@ impl super::Client { /// - [`enhanced_infrastructure_metrics(EnhancedInfrastructureMetrics)`](crate::operation::put_recommendation_preferences::builders::PutRecommendationPreferencesFluentBuilder::enhanced_infrastructure_metrics) / [`set_enhanced_infrastructure_metrics(Option)`](crate::operation::put_recommendation_preferences::builders::PutRecommendationPreferencesFluentBuilder::set_enhanced_infrastructure_metrics):
required: **false**

The status of the enhanced infrastructure metrics recommendation preference to create or update.

Specify the Active status to activate the preference, or specify Inactive to deactivate the preference.

For more information, see Enhanced infrastructure metrics in the Compute Optimizer User Guide.


/// - [`inferred_workload_types(InferredWorkloadTypesPreference)`](crate::operation::put_recommendation_preferences::builders::PutRecommendationPreferencesFluentBuilder::inferred_workload_types) / [`set_inferred_workload_types(Option)`](crate::operation::put_recommendation_preferences::builders::PutRecommendationPreferencesFluentBuilder::set_inferred_workload_types):
required: **false**

The status of the inferred workload types recommendation preference to create or update.

The inferred workload type feature is active by default. To deactivate it, create a recommendation preference.

Specify the Inactive status to deactivate the feature, or specify Active to activate it.

For more information, see Inferred workload types in the Compute Optimizer User Guide.


/// - [`external_metrics_preference(ExternalMetricsPreference)`](crate::operation::put_recommendation_preferences::builders::PutRecommendationPreferencesFluentBuilder::external_metrics_preference) / [`set_external_metrics_preference(Option)`](crate::operation::put_recommendation_preferences::builders::PutRecommendationPreferencesFluentBuilder::set_external_metrics_preference):
required: **false**

The provider of the external metrics recommendation preference to create or update.

Specify a valid provider in the source field to activate the preference. To delete this preference, see the DeleteRecommendationPreferences action.

This preference can only be set for the Ec2Instance resource type.

For more information, see External metrics ingestion in the Compute Optimizer User Guide.


- /// - [`look_back_period(LookBackPeriodPreference)`](crate::operation::put_recommendation_preferences::builders::PutRecommendationPreferencesFluentBuilder::look_back_period) / [`set_look_back_period(Option)`](crate::operation::put_recommendation_preferences::builders::PutRecommendationPreferencesFluentBuilder::set_look_back_period):
required: **false**

The preference to control the number of days the utilization metrics of the Amazon Web Services resource are analyzed. When this preference isn't specified, we use the default value DAYS_14.

You can only set this preference for the Amazon EC2 instance and Auto Scaling group resource types.


+ /// - [`look_back_period(LookBackPeriodPreference)`](crate::operation::put_recommendation_preferences::builders::PutRecommendationPreferencesFluentBuilder::look_back_period) / [`set_look_back_period(Option)`](crate::operation::put_recommendation_preferences::builders::PutRecommendationPreferencesFluentBuilder::set_look_back_period):
required: **false**

The preference to control the number of days the utilization metrics of the Amazon Web Services resource are analyzed. When this preference isn't specified, we use the default value DAYS_14.

You can only set this preference for the Amazon EC2 instance and Auto Scaling group resource types.

  • Amazon EC2 instance lookback preferences can be set at the organization, account, and resource levels.

  • Auto Scaling group lookback preferences can only be set at the resource level.


/// - [`utilization_preferences(UtilizationPreference)`](crate::operation::put_recommendation_preferences::builders::PutRecommendationPreferencesFluentBuilder::utilization_preferences) / [`set_utilization_preferences(Option>)`](crate::operation::put_recommendation_preferences::builders::PutRecommendationPreferencesFluentBuilder::set_utilization_preferences):
required: **false**

The preference to control the resource’s CPU utilization threshold, CPU utilization headroom, and memory utilization headroom. When this preference isn't specified, we use the following default values.

CPU utilization:

  • P99_5 for threshold

  • PERCENT_20 for headroom

Memory utilization:

  • PERCENT_20 for headroom

  • You can only set CPU and memory utilization preferences for the Amazon EC2 instance resource type.

  • The threshold setting isn’t available for memory utilization.


/// - [`preferred_resources(PreferredResource)`](crate::operation::put_recommendation_preferences::builders::PutRecommendationPreferencesFluentBuilder::preferred_resources) / [`set_preferred_resources(Option>)`](crate::operation::put_recommendation_preferences::builders::PutRecommendationPreferencesFluentBuilder::set_preferred_resources):
required: **false**

The preference to control which resource type values are considered when generating rightsizing recommendations. You can specify this preference as a combination of include and exclude lists. You must specify either an includeList or excludeList. If the preference is an empty set of resource type values, an error occurs.

You can only set this preference for the Amazon EC2 instance and Auto Scaling group resource types.


/// - [`savings_estimation_mode(SavingsEstimationMode)`](crate::operation::put_recommendation_preferences::builders::PutRecommendationPreferencesFluentBuilder::savings_estimation_mode) / [`set_savings_estimation_mode(Option)`](crate::operation::put_recommendation_preferences::builders::PutRecommendationPreferencesFluentBuilder::set_savings_estimation_mode):
required: **false**

The status of the savings estimation mode preference to create or update.

Specify the AfterDiscounts status to activate the preference, or specify BeforeDiscounts to deactivate the preference.

Only the account manager or delegated administrator of your organization can activate this preference.

For more information, see Savings estimation mode in the Compute Optimizer User Guide.


diff --git a/sdk/computeoptimizer/src/lib.rs b/sdk/computeoptimizer/src/lib.rs index 1ff22ca711d1..f97835aebc67 100644 --- a/sdk/computeoptimizer/src/lib.rs +++ b/sdk/computeoptimizer/src/lib.rs @@ -31,7 +31,7 @@ //! ```toml //! [dependencies] //! aws-config = { version = "1.1.7", features = ["behavior-version-latest"] } -//! aws-sdk-computeoptimizer = "1.38.0" +//! aws-sdk-computeoptimizer = "1.38.1" //! tokio = { version = "1", features = ["full"] } //! ``` //! diff --git a/sdk/computeoptimizer/src/operation/put_recommendation_preferences/_put_recommendation_preferences_input.rs b/sdk/computeoptimizer/src/operation/put_recommendation_preferences/_put_recommendation_preferences_input.rs index 427a5f6ef78e..d1e3816c89af 100644 --- a/sdk/computeoptimizer/src/operation/put_recommendation_preferences/_put_recommendation_preferences_input.rs +++ b/sdk/computeoptimizer/src/operation/put_recommendation_preferences/_put_recommendation_preferences_input.rs @@ -26,8 +26,14 @@ pub struct PutRecommendationPreferencesInput { ///

This preference can only be set for the Ec2Instance resource type.

///

For more information, see External metrics ingestion in the Compute Optimizer User Guide.

pub external_metrics_preference: ::std::option::Option, - ///

The preference to control the number of days the utilization metrics of the Amazon Web Services resource are analyzed. When this preference isn't specified, we use the default value DAYS_14.

- ///

You can only set this preference for the Amazon EC2 instance and Auto Scaling group resource types.

+ ///

The preference to control the number of days the utilization metrics of the Amazon Web Services resource are analyzed. When this preference isn't specified, we use the default value DAYS_14.

+ ///

You can only set this preference for the Amazon EC2 instance and Auto Scaling group resource types.

+ ///
    + ///
  • + ///

    Amazon EC2 instance lookback preferences can be set at the organization, account, and resource levels.

  • + ///
  • + ///

    Auto Scaling group lookback preferences can only be set at the resource level.

  • + ///
///
pub look_back_period: ::std::option::Option, ///

The preference to control the resource’s CPU utilization threshold, CPU utilization headroom, and memory utilization headroom. When this preference isn't specified, we use the following default values.

@@ -95,8 +101,14 @@ impl PutRecommendationPreferencesInput { pub fn external_metrics_preference(&self) -> ::std::option::Option<&crate::types::ExternalMetricsPreference> { self.external_metrics_preference.as_ref() } - ///

The preference to control the number of days the utilization metrics of the Amazon Web Services resource are analyzed. When this preference isn't specified, we use the default value DAYS_14.

- ///

You can only set this preference for the Amazon EC2 instance and Auto Scaling group resource types.

+ ///

The preference to control the number of days the utilization metrics of the Amazon Web Services resource are analyzed. When this preference isn't specified, we use the default value DAYS_14.

+ ///

You can only set this preference for the Amazon EC2 instance and Auto Scaling group resource types.

+ ///
    + ///
  • + ///

    Amazon EC2 instance lookback preferences can be set at the organization, account, and resource levels.

  • + ///
  • + ///

    Auto Scaling group lookback preferences can only be set at the resource level.

  • + ///
///
pub fn look_back_period(&self) -> ::std::option::Option<&crate::types::LookBackPeriodPreference> { self.look_back_period.as_ref() @@ -274,22 +286,40 @@ impl PutRecommendationPreferencesInputBuilder { pub fn get_external_metrics_preference(&self) -> &::std::option::Option { &self.external_metrics_preference } - ///

The preference to control the number of days the utilization metrics of the Amazon Web Services resource are analyzed. When this preference isn't specified, we use the default value DAYS_14.

- ///

You can only set this preference for the Amazon EC2 instance and Auto Scaling group resource types.

+ ///

The preference to control the number of days the utilization metrics of the Amazon Web Services resource are analyzed. When this preference isn't specified, we use the default value DAYS_14.

+ ///

You can only set this preference for the Amazon EC2 instance and Auto Scaling group resource types.

+ ///
    + ///
  • + ///

    Amazon EC2 instance lookback preferences can be set at the organization, account, and resource levels.

  • + ///
  • + ///

    Auto Scaling group lookback preferences can only be set at the resource level.

  • + ///
///
pub fn look_back_period(mut self, input: crate::types::LookBackPeriodPreference) -> Self { self.look_back_period = ::std::option::Option::Some(input); self } - ///

The preference to control the number of days the utilization metrics of the Amazon Web Services resource are analyzed. When this preference isn't specified, we use the default value DAYS_14.

- ///

You can only set this preference for the Amazon EC2 instance and Auto Scaling group resource types.

+ ///

The preference to control the number of days the utilization metrics of the Amazon Web Services resource are analyzed. When this preference isn't specified, we use the default value DAYS_14.

+ ///

You can only set this preference for the Amazon EC2 instance and Auto Scaling group resource types.

+ ///
    + ///
  • + ///

    Amazon EC2 instance lookback preferences can be set at the organization, account, and resource levels.

  • + ///
  • + ///

    Auto Scaling group lookback preferences can only be set at the resource level.

  • + ///
///
pub fn set_look_back_period(mut self, input: ::std::option::Option) -> Self { self.look_back_period = input; self } - ///

The preference to control the number of days the utilization metrics of the Amazon Web Services resource are analyzed. When this preference isn't specified, we use the default value DAYS_14.

- ///

You can only set this preference for the Amazon EC2 instance and Auto Scaling group resource types.

+ ///

The preference to control the number of days the utilization metrics of the Amazon Web Services resource are analyzed. When this preference isn't specified, we use the default value DAYS_14.

+ ///

You can only set this preference for the Amazon EC2 instance and Auto Scaling group resource types.

+ ///
    + ///
  • + ///

    Amazon EC2 instance lookback preferences can be set at the organization, account, and resource levels.

  • + ///
  • + ///

    Auto Scaling group lookback preferences can only be set at the resource level.

  • + ///
///
pub fn get_look_back_period(&self) -> &::std::option::Option { &self.look_back_period diff --git a/sdk/computeoptimizer/src/operation/put_recommendation_preferences/builders.rs b/sdk/computeoptimizer/src/operation/put_recommendation_preferences/builders.rs index 969ddc613b7f..553dde8a0756 100644 --- a/sdk/computeoptimizer/src/operation/put_recommendation_preferences/builders.rs +++ b/sdk/computeoptimizer/src/operation/put_recommendation_preferences/builders.rs @@ -218,22 +218,40 @@ impl PutRecommendationPreferencesFluentBuilder { pub fn get_external_metrics_preference(&self) -> &::std::option::Option { self.inner.get_external_metrics_preference() } - ///

The preference to control the number of days the utilization metrics of the Amazon Web Services resource are analyzed. When this preference isn't specified, we use the default value DAYS_14.

- ///

You can only set this preference for the Amazon EC2 instance and Auto Scaling group resource types.

+ ///

The preference to control the number of days the utilization metrics of the Amazon Web Services resource are analyzed. When this preference isn't specified, we use the default value DAYS_14.

+ ///

You can only set this preference for the Amazon EC2 instance and Auto Scaling group resource types.

+ ///
    + ///
  • + ///

    Amazon EC2 instance lookback preferences can be set at the organization, account, and resource levels.

  • + ///
  • + ///

    Auto Scaling group lookback preferences can only be set at the resource level.

  • + ///
///
pub fn look_back_period(mut self, input: crate::types::LookBackPeriodPreference) -> Self { self.inner = self.inner.look_back_period(input); self } - ///

The preference to control the number of days the utilization metrics of the Amazon Web Services resource are analyzed. When this preference isn't specified, we use the default value DAYS_14.

- ///

You can only set this preference for the Amazon EC2 instance and Auto Scaling group resource types.

+ ///

The preference to control the number of days the utilization metrics of the Amazon Web Services resource are analyzed. When this preference isn't specified, we use the default value DAYS_14.

+ ///

You can only set this preference for the Amazon EC2 instance and Auto Scaling group resource types.

+ ///
    + ///
  • + ///

    Amazon EC2 instance lookback preferences can be set at the organization, account, and resource levels.

  • + ///
  • + ///

    Auto Scaling group lookback preferences can only be set at the resource level.

  • + ///
///
pub fn set_look_back_period(mut self, input: ::std::option::Option) -> Self { self.inner = self.inner.set_look_back_period(input); self } - ///

The preference to control the number of days the utilization metrics of the Amazon Web Services resource are analyzed. When this preference isn't specified, we use the default value DAYS_14.

- ///

You can only set this preference for the Amazon EC2 instance and Auto Scaling group resource types.

+ ///

The preference to control the number of days the utilization metrics of the Amazon Web Services resource are analyzed. When this preference isn't specified, we use the default value DAYS_14.

+ ///

You can only set this preference for the Amazon EC2 instance and Auto Scaling group resource types.

+ ///
    + ///
  • + ///

    Amazon EC2 instance lookback preferences can be set at the organization, account, and resource levels.

  • + ///
  • + ///

    Auto Scaling group lookback preferences can only be set at the resource level.

  • + ///
///
pub fn get_look_back_period(&self) -> &::std::option::Option { self.inner.get_look_back_period() diff --git a/sdk/computeoptimizer/src/types/_ecs_service_recommendation_filter.rs b/sdk/computeoptimizer/src/types/_ecs_service_recommendation_filter.rs index 3046d259d1f7..3b62e0799215 100644 --- a/sdk/computeoptimizer/src/types/_ecs_service_recommendation_filter.rs +++ b/sdk/computeoptimizer/src/types/_ecs_service_recommendation_filter.rs @@ -15,7 +15,7 @@ pub struct EcsServiceRecommendationFilter { ///

The valid values for this parameter are as follows:

///
    ///
  • - ///

    If you specify the name parameter as Finding, specify Optimized, NotOptimized, or Unavailable.

  • + ///

    If you specify the name parameter as Finding, specify Optimized, Underprovisioned, or Overprovisioned.

    ///
  • ///

    If you specify the name parameter as FindingReasonCode, specify CPUUnderprovisioned, CPUOverprovisioned, MemoryUnderprovisioned, or MemoryOverprovisioned.

  • ///
@@ -35,7 +35,7 @@ impl EcsServiceRecommendationFilter { ///

The valid values for this parameter are as follows:

///
    ///
  • - ///

    If you specify the name parameter as Finding, specify Optimized, NotOptimized, or Unavailable.

  • + ///

    If you specify the name parameter as Finding, specify Optimized, Underprovisioned, or Overprovisioned.

    ///
  • ///

    If you specify the name parameter as FindingReasonCode, specify CPUUnderprovisioned, CPUOverprovisioned, MemoryUnderprovisioned, or MemoryOverprovisioned.

  • ///
@@ -97,7 +97,7 @@ impl EcsServiceRecommendationFilterBuilder { ///

The valid values for this parameter are as follows:

///
    ///
  • - ///

    If you specify the name parameter as Finding, specify Optimized, NotOptimized, or Unavailable.

  • + ///

    If you specify the name parameter as Finding, specify Optimized, Underprovisioned, or Overprovisioned.

    ///
  • ///

    If you specify the name parameter as FindingReasonCode, specify CPUUnderprovisioned, CPUOverprovisioned, MemoryUnderprovisioned, or MemoryOverprovisioned.

  • ///
@@ -111,7 +111,7 @@ impl EcsServiceRecommendationFilterBuilder { ///

The valid values for this parameter are as follows:

///
    ///
  • - ///

    If you specify the name parameter as Finding, specify Optimized, NotOptimized, or Unavailable.

  • + ///

    If you specify the name parameter as Finding, specify Optimized, Underprovisioned, or Overprovisioned.

    ///
  • ///

    If you specify the name parameter as FindingReasonCode, specify CPUUnderprovisioned, CPUOverprovisioned, MemoryUnderprovisioned, or MemoryOverprovisioned.

  • ///
@@ -123,7 +123,7 @@ impl EcsServiceRecommendationFilterBuilder { ///

The valid values for this parameter are as follows:

///
    ///
  • - ///

    If you specify the name parameter as Finding, specify Optimized, NotOptimized, or Unavailable.

  • + ///

    If you specify the name parameter as Finding, specify Optimized, Underprovisioned, or Overprovisioned.

    ///
  • ///

    If you specify the name parameter as FindingReasonCode, specify CPUUnderprovisioned, CPUOverprovisioned, MemoryUnderprovisioned, or MemoryOverprovisioned.

  • ///
diff --git a/sdk/config/Cargo.toml b/sdk/config/Cargo.toml index fa7c90dee9df..385216005e7d 100644 --- a/sdk/config/Cargo.toml +++ b/sdk/config/Cargo.toml @@ -1,7 +1,7 @@ # Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. [package] name = "aws-sdk-config" -version = "1.38.0" +version = "1.39.0" authors = ["AWS Rust SDK Team ", "Russell Cohen "] description = "AWS SDK for AWS Config" edition = "2021" diff --git a/sdk/config/README.md b/sdk/config/README.md index 24e5ca950231..43c99ee97579 100644 --- a/sdk/config/README.md +++ b/sdk/config/README.md @@ -16,7 +16,7 @@ your project, add the following to your **Cargo.toml** file: ```toml [dependencies] aws-config = { version = "1.1.7", features = ["behavior-version-latest"] } -aws-sdk-config = "1.38.0" +aws-sdk-config = "1.39.0" tokio = { version = "1", features = ["full"] } ``` diff --git a/sdk/config/src/lib.rs b/sdk/config/src/lib.rs index 34337f2c2773..0af8577bc1d0 100644 --- a/sdk/config/src/lib.rs +++ b/sdk/config/src/lib.rs @@ -33,7 +33,7 @@ //! ```toml //! [dependencies] //! aws-config = { version = "1.1.7", features = ["behavior-version-latest"] } -//! aws-sdk-config = "1.38.0" +//! aws-sdk-config = "1.39.0" //! tokio = { version = "1", features = ["full"] } //! ``` //! diff --git a/sdk/ec2/Cargo.toml b/sdk/ec2/Cargo.toml index 84ee49464d63..9a012ef05281 100644 --- a/sdk/ec2/Cargo.toml +++ b/sdk/ec2/Cargo.toml @@ -1,7 +1,7 @@ # Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. [package] name = "aws-sdk-ec2" -version = "1.64.0" +version = "1.65.0" authors = ["AWS Rust SDK Team ", "Russell Cohen "] description = "AWS SDK for Amazon Elastic Compute Cloud" edition = "2021" diff --git a/sdk/ec2/README.md b/sdk/ec2/README.md index ae2ac148d073..46892619a47f 100644 --- a/sdk/ec2/README.md +++ b/sdk/ec2/README.md @@ -14,7 +14,7 @@ your project, add the following to your **Cargo.toml** file: ```toml [dependencies] aws-config = { version = "1.1.7", features = ["behavior-version-latest"] } -aws-sdk-ec2 = "1.64.0" +aws-sdk-ec2 = "1.65.0" tokio = { version = "1", features = ["full"] } ``` diff --git a/sdk/ec2/src/client.rs b/sdk/ec2/src/client.rs index 1f09ba97c326..3368d4f33ab2 100644 --- a/sdk/ec2/src/client.rs +++ b/sdk/ec2/src/client.rs @@ -456,6 +456,8 @@ mod copy_snapshot; mod create_capacity_reservation; +mod create_capacity_reservation_by_splitting; + mod create_capacity_reservation_fleet; mod create_carrier_gateway; @@ -1487,6 +1489,8 @@ mod move_address_to_vpc; mod move_byoip_cidr_to_ipam; +mod move_capacity_reservation_instances; + mod provision_byoip_cidr; mod provision_ipam_byoasn; diff --git a/sdk/ec2/src/client/create_capacity_reservation_by_splitting.rs b/sdk/ec2/src/client/create_capacity_reservation_by_splitting.rs new file mode 100644 index 000000000000..0dbcccc61978 --- /dev/null +++ b/sdk/ec2/src/client/create_capacity_reservation_by_splitting.rs @@ -0,0 +1,23 @@ +// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. +impl super::Client { + /// Constructs a fluent builder for the [`CreateCapacityReservationBySplitting`](crate::operation::create_capacity_reservation_by_splitting::builders::CreateCapacityReservationBySplittingFluentBuilder) operation. + /// + /// - The fluent builder is configurable: + /// - [`dry_run(bool)`](crate::operation::create_capacity_reservation_by_splitting::builders::CreateCapacityReservationBySplittingFluentBuilder::dry_run) / [`set_dry_run(Option)`](crate::operation::create_capacity_reservation_by_splitting::builders::CreateCapacityReservationBySplittingFluentBuilder::set_dry_run):
required: **false**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.


+ /// - [`client_token(impl Into)`](crate::operation::create_capacity_reservation_by_splitting::builders::CreateCapacityReservationBySplittingFluentBuilder::client_token) / [`set_client_token(Option)`](crate::operation::create_capacity_reservation_by_splitting::builders::CreateCapacityReservationBySplittingFluentBuilder::set_client_token):
required: **false**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.


+ /// - [`source_capacity_reservation_id(impl Into)`](crate::operation::create_capacity_reservation_by_splitting::builders::CreateCapacityReservationBySplittingFluentBuilder::source_capacity_reservation_id) / [`set_source_capacity_reservation_id(Option)`](crate::operation::create_capacity_reservation_by_splitting::builders::CreateCapacityReservationBySplittingFluentBuilder::set_source_capacity_reservation_id):
required: **true**

The ID of the Capacity Reservation from which you want to split the available capacity.


+ /// - [`instance_count(i32)`](crate::operation::create_capacity_reservation_by_splitting::builders::CreateCapacityReservationBySplittingFluentBuilder::instance_count) / [`set_instance_count(Option)`](crate::operation::create_capacity_reservation_by_splitting::builders::CreateCapacityReservationBySplittingFluentBuilder::set_instance_count):
required: **true**

The number of instances to split from the source Capacity Reservation.


+ /// - [`tag_specifications(TagSpecification)`](crate::operation::create_capacity_reservation_by_splitting::builders::CreateCapacityReservationBySplittingFluentBuilder::tag_specifications) / [`set_tag_specifications(Option>)`](crate::operation::create_capacity_reservation_by_splitting::builders::CreateCapacityReservationBySplittingFluentBuilder::set_tag_specifications):
required: **false**

The tags to apply to the new Capacity Reservation.


+ /// - On success, responds with [`CreateCapacityReservationBySplittingOutput`](crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingOutput) with field(s): + /// - [`source_capacity_reservation(Option)`](crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingOutput::source_capacity_reservation):

Information about the source Capacity Reservation.

+ /// - [`destination_capacity_reservation(Option)`](crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingOutput::destination_capacity_reservation):

Information about the destination Capacity Reservation.

+ /// - [`instance_count(Option)`](crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingOutput::instance_count):

The number of instances in the new Capacity Reservation. The number of instances in the source Capacity Reservation was reduced by this amount.

+ /// - On failure, responds with [`SdkError`](crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingError) + pub fn create_capacity_reservation_by_splitting( + &self, + ) -> crate::operation::create_capacity_reservation_by_splitting::builders::CreateCapacityReservationBySplittingFluentBuilder { + crate::operation::create_capacity_reservation_by_splitting::builders::CreateCapacityReservationBySplittingFluentBuilder::new( + self.handle.clone(), + ) + } +} diff --git a/sdk/ec2/src/client/create_network_interface_permission.rs b/sdk/ec2/src/client/create_network_interface_permission.rs index d29b09a482bf..5f95c34588b4 100644 --- a/sdk/ec2/src/client/create_network_interface_permission.rs +++ b/sdk/ec2/src/client/create_network_interface_permission.rs @@ -5,7 +5,7 @@ impl super::Client { /// - The fluent builder is configurable: /// - [`network_interface_id(impl Into)`](crate::operation::create_network_interface_permission::builders::CreateNetworkInterfacePermissionFluentBuilder::network_interface_id) / [`set_network_interface_id(Option)`](crate::operation::create_network_interface_permission::builders::CreateNetworkInterfacePermissionFluentBuilder::set_network_interface_id):
required: **true**

The ID of the network interface.


/// - [`aws_account_id(impl Into)`](crate::operation::create_network_interface_permission::builders::CreateNetworkInterfacePermissionFluentBuilder::aws_account_id) / [`set_aws_account_id(Option)`](crate::operation::create_network_interface_permission::builders::CreateNetworkInterfacePermissionFluentBuilder::set_aws_account_id):
required: **false**

The Amazon Web Services account ID.


- /// - [`aws_service(impl Into)`](crate::operation::create_network_interface_permission::builders::CreateNetworkInterfacePermissionFluentBuilder::aws_service) / [`set_aws_service(Option)`](crate::operation::create_network_interface_permission::builders::CreateNetworkInterfacePermissionFluentBuilder::set_aws_service):
required: **false**

The Amazon Web Service. Currently not supported.


+ /// - [`aws_service(impl Into)`](crate::operation::create_network_interface_permission::builders::CreateNetworkInterfacePermissionFluentBuilder::aws_service) / [`set_aws_service(Option)`](crate::operation::create_network_interface_permission::builders::CreateNetworkInterfacePermissionFluentBuilder::set_aws_service):
required: **false**

The Amazon Web Services service. Currently not supported.


/// - [`permission(InterfacePermissionType)`](crate::operation::create_network_interface_permission::builders::CreateNetworkInterfacePermissionFluentBuilder::permission) / [`set_permission(Option)`](crate::operation::create_network_interface_permission::builders::CreateNetworkInterfacePermissionFluentBuilder::set_permission):
required: **true**

The type of permission to grant.


/// - [`dry_run(bool)`](crate::operation::create_network_interface_permission::builders::CreateNetworkInterfacePermissionFluentBuilder::dry_run) / [`set_dry_run(Option)`](crate::operation::create_network_interface_permission::builders::CreateNetworkInterfacePermissionFluentBuilder::set_dry_run):
required: **false**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.


/// - On success, responds with [`CreateNetworkInterfacePermissionOutput`](crate::operation::create_network_interface_permission::CreateNetworkInterfacePermissionOutput) with field(s): diff --git a/sdk/ec2/src/client/describe_network_interface_permissions.rs b/sdk/ec2/src/client/describe_network_interface_permissions.rs index 38586b4f0ea0..8f5569dff5f1 100644 --- a/sdk/ec2/src/client/describe_network_interface_permissions.rs +++ b/sdk/ec2/src/client/describe_network_interface_permissions.rs @@ -5,7 +5,7 @@ impl super::Client { /// /// - The fluent builder is configurable: /// - [`network_interface_permission_ids(impl Into)`](crate::operation::describe_network_interface_permissions::builders::DescribeNetworkInterfacePermissionsFluentBuilder::network_interface_permission_ids) / [`set_network_interface_permission_ids(Option>)`](crate::operation::describe_network_interface_permissions::builders::DescribeNetworkInterfacePermissionsFluentBuilder::set_network_interface_permission_ids):
required: **false**

The network interface permission IDs.


- /// - [`filters(Filter)`](crate::operation::describe_network_interface_permissions::builders::DescribeNetworkInterfacePermissionsFluentBuilder::filters) / [`set_filters(Option>)`](crate::operation::describe_network_interface_permissions::builders::DescribeNetworkInterfacePermissionsFluentBuilder::set_filters):
required: **false**

One or more filters.

  • network-interface-permission.network-interface-permission-id - The ID of the permission.

  • network-interface-permission.network-interface-id - The ID of the network interface.

  • network-interface-permission.aws-account-id - The Amazon Web Services account ID.

  • network-interface-permission.aws-service - The Amazon Web Service.

  • network-interface-permission.permission - The type of permission (INSTANCE-ATTACH | EIP-ASSOCIATE).


+ /// - [`filters(Filter)`](crate::operation::describe_network_interface_permissions::builders::DescribeNetworkInterfacePermissionsFluentBuilder::filters) / [`set_filters(Option>)`](crate::operation::describe_network_interface_permissions::builders::DescribeNetworkInterfacePermissionsFluentBuilder::set_filters):
required: **false**

One or more filters.

  • network-interface-permission.network-interface-permission-id - The ID of the permission.

  • network-interface-permission.network-interface-id - The ID of the network interface.

  • network-interface-permission.aws-account-id - The Amazon Web Services account ID.

  • network-interface-permission.aws-service - The Amazon Web Services service.

  • network-interface-permission.permission - The type of permission (INSTANCE-ATTACH | EIP-ASSOCIATE).


/// - [`next_token(impl Into)`](crate::operation::describe_network_interface_permissions::builders::DescribeNetworkInterfacePermissionsFluentBuilder::next_token) / [`set_next_token(Option)`](crate::operation::describe_network_interface_permissions::builders::DescribeNetworkInterfacePermissionsFluentBuilder::set_next_token):
required: **false**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.


/// - [`max_results(i32)`](crate::operation::describe_network_interface_permissions::builders::DescribeNetworkInterfacePermissionsFluentBuilder::max_results) / [`set_max_results(Option)`](crate::operation::describe_network_interface_permissions::builders::DescribeNetworkInterfacePermissionsFluentBuilder::set_max_results):
required: **false**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. If this parameter is not specified, up to 50 results are returned by default. For more information, see Pagination.


/// - On success, responds with [`DescribeNetworkInterfacePermissionsOutput`](crate::operation::describe_network_interface_permissions::DescribeNetworkInterfacePermissionsOutput) with field(s): diff --git a/sdk/ec2/src/client/describe_network_interfaces.rs b/sdk/ec2/src/client/describe_network_interfaces.rs index 6f47eff165f5..5387c1f77a2b 100644 --- a/sdk/ec2/src/client/describe_network_interfaces.rs +++ b/sdk/ec2/src/client/describe_network_interfaces.rs @@ -4,7 +4,7 @@ impl super::Client { /// This operation supports pagination; See [`into_paginator()`](crate::operation::describe_network_interfaces::builders::DescribeNetworkInterfacesFluentBuilder::into_paginator). /// /// - The fluent builder is configurable: - /// - [`filters(Filter)`](crate::operation::describe_network_interfaces::builders::DescribeNetworkInterfacesFluentBuilder::filters) / [`set_filters(Option>)`](crate::operation::describe_network_interfaces::builders::DescribeNetworkInterfacesFluentBuilder::set_filters):
required: **false**

One or more filters.

  • association.allocation-id - The allocation ID returned when you allocated the Elastic IP address (IPv4) for your network interface.

  • association.association-id - The association ID returned when the network interface was associated with an IPv4 address.

  • addresses.association.owner-id - The owner ID of the addresses associated with the network interface.

  • addresses.association.public-ip - The association ID returned when the network interface was associated with the Elastic IP address (IPv4).

  • addresses.primary - Whether the private IPv4 address is the primary IP address associated with the network interface.

  • addresses.private-ip-address - The private IPv4 addresses associated with the network interface.

  • association.ip-owner-id - The owner of the Elastic IP address (IPv4) associated with the network interface.

  • association.public-ip - The address of the Elastic IP address (IPv4) bound to the network interface.

  • association.public-dns-name - The public DNS name for the network interface (IPv4).

  • attachment.attach-time - The time that the network interface was attached to an instance.

  • attachment.attachment-id - The ID of the interface attachment.

  • attachment.delete-on-termination - Indicates whether the attachment is deleted when an instance is terminated.

  • attachment.device-index - The device index to which the network interface is attached.

  • attachment.instance-id - The ID of the instance to which the network interface is attached.

  • attachment.instance-owner-id - The owner ID of the instance to which the network interface is attached.

  • attachment.status - The status of the attachment (attaching | attached | detaching | detached).

  • availability-zone - The Availability Zone of the network interface.

  • description - The description of the network interface.

  • group-id - The ID of a security group associated with the network interface.

  • ipv6-addresses.ipv6-address - An IPv6 address associated with the network interface.

  • interface-type - The type of network interface (api_gateway_managed | aws_codestar_connections_managed | branch | ec2_instance_connect_endpoint | efa | efs | gateway_load_balancer | gateway_load_balancer_endpoint | global_accelerator_managed | interface | iot_rules_managed | lambda | load_balancer | nat_gateway | network_load_balancer | quicksight | transit_gateway | trunk | vpc_endpoint).

  • mac-address - The MAC address of the network interface.

  • network-interface-id - The ID of the network interface.

  • owner-id - The Amazon Web Services account ID of the network interface owner.

  • private-dns-name - The private DNS name of the network interface (IPv4).

  • private-ip-address - The private IPv4 address or addresses of the network interface.

  • requester-id - The alias or Amazon Web Services account ID of the principal or service that created the network interface.

  • requester-managed - Indicates whether the network interface is being managed by an Amazon Web Service (for example, Amazon Web Services Management Console, Auto Scaling, and so on).

  • source-dest-check - Indicates whether the network interface performs source/destination checking. A value of true means checking is enabled, and false means checking is disabled. The value must be false for the network interface to perform network address translation (NAT) in your VPC.

  • status - The status of the network interface. If the network interface is not attached to an instance, the status is available; if a network interface is attached to an instance the status is in-use.

  • subnet-id - The ID of the subnet for the network interface.

  • tag: - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • vpc-id - The ID of the VPC for the network interface.


+ /// - [`filters(Filter)`](crate::operation::describe_network_interfaces::builders::DescribeNetworkInterfacesFluentBuilder::filters) / [`set_filters(Option>)`](crate::operation::describe_network_interfaces::builders::DescribeNetworkInterfacesFluentBuilder::set_filters):
required: **false**

One or more filters.

  • association.allocation-id - The allocation ID returned when you allocated the Elastic IP address (IPv4) for your network interface.

  • association.association-id - The association ID returned when the network interface was associated with an IPv4 address.

  • addresses.association.owner-id - The owner ID of the addresses associated with the network interface.

  • addresses.association.public-ip - The association ID returned when the network interface was associated with the Elastic IP address (IPv4).

  • addresses.primary - Whether the private IPv4 address is the primary IP address associated with the network interface.

  • addresses.private-ip-address - The private IPv4 addresses associated with the network interface.

  • association.ip-owner-id - The owner of the Elastic IP address (IPv4) associated with the network interface.

  • association.public-ip - The address of the Elastic IP address (IPv4) bound to the network interface.

  • association.public-dns-name - The public DNS name for the network interface (IPv4).

  • attachment.attach-time - The time that the network interface was attached to an instance.

  • attachment.attachment-id - The ID of the interface attachment.

  • attachment.delete-on-termination - Indicates whether the attachment is deleted when an instance is terminated.

  • attachment.device-index - The device index to which the network interface is attached.

  • attachment.instance-id - The ID of the instance to which the network interface is attached.

  • attachment.instance-owner-id - The owner ID of the instance to which the network interface is attached.

  • attachment.status - The status of the attachment (attaching | attached | detaching | detached).

  • availability-zone - The Availability Zone of the network interface.

  • description - The description of the network interface.

  • group-id - The ID of a security group associated with the network interface.

  • ipv6-addresses.ipv6-address - An IPv6 address associated with the network interface.

  • interface-type - The type of network interface (api_gateway_managed | aws_codestar_connections_managed | branch | ec2_instance_connect_endpoint | efa | efs | gateway_load_balancer | gateway_load_balancer_endpoint | global_accelerator_managed | interface | iot_rules_managed | lambda | load_balancer | nat_gateway | network_load_balancer | quicksight | transit_gateway | trunk | vpc_endpoint).

  • mac-address - The MAC address of the network interface.

  • network-interface-id - The ID of the network interface.

  • owner-id - The Amazon Web Services account ID of the network interface owner.

  • private-dns-name - The private DNS name of the network interface (IPv4).

  • private-ip-address - The private IPv4 address or addresses of the network interface.

  • requester-id - The alias or Amazon Web Services account ID of the principal or service that created the network interface.

  • requester-managed - Indicates whether the network interface is being managed by an Amazon Web Services service (for example, Amazon Web Services Management Console, Auto Scaling, and so on).

  • source-dest-check - Indicates whether the network interface performs source/destination checking. A value of true means checking is enabled, and false means checking is disabled. The value must be false for the network interface to perform network address translation (NAT) in your VPC.

  • status - The status of the network interface. If the network interface is not attached to an instance, the status is available; if a network interface is attached to an instance the status is in-use.

  • subnet-id - The ID of the subnet for the network interface.

  • tag: - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • vpc-id - The ID of the VPC for the network interface.


/// - [`dry_run(bool)`](crate::operation::describe_network_interfaces::builders::DescribeNetworkInterfacesFluentBuilder::dry_run) / [`set_dry_run(Option)`](crate::operation::describe_network_interfaces::builders::DescribeNetworkInterfacesFluentBuilder::set_dry_run):
required: **false**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.


/// - [`network_interface_ids(impl Into)`](crate::operation::describe_network_interfaces::builders::DescribeNetworkInterfacesFluentBuilder::network_interface_ids) / [`set_network_interface_ids(Option>)`](crate::operation::describe_network_interfaces::builders::DescribeNetworkInterfacesFluentBuilder::set_network_interface_ids):
required: **false**

The network interface IDs.

Default: Describes all your network interfaces.


/// - [`next_token(impl Into)`](crate::operation::describe_network_interfaces::builders::DescribeNetworkInterfacesFluentBuilder::next_token) / [`set_next_token(Option)`](crate::operation::describe_network_interfaces::builders::DescribeNetworkInterfacesFluentBuilder::set_next_token):
required: **false**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.


diff --git a/sdk/ec2/src/client/describe_route_tables.rs b/sdk/ec2/src/client/describe_route_tables.rs index 0074323d261b..7667dbdba0c0 100644 --- a/sdk/ec2/src/client/describe_route_tables.rs +++ b/sdk/ec2/src/client/describe_route_tables.rs @@ -4,7 +4,7 @@ impl super::Client { /// This operation supports pagination; See [`into_paginator()`](crate::operation::describe_route_tables::builders::DescribeRouteTablesFluentBuilder::into_paginator). /// /// - The fluent builder is configurable: - /// - [`filters(Filter)`](crate::operation::describe_route_tables::builders::DescribeRouteTablesFluentBuilder::filters) / [`set_filters(Option>)`](crate::operation::describe_route_tables::builders::DescribeRouteTablesFluentBuilder::set_filters):
required: **false**

The filters.

  • association.gateway-id - The ID of the gateway involved in the association.

  • association.route-table-association-id - The ID of an association ID for the route table.

  • association.route-table-id - The ID of the route table involved in the association.

  • association.subnet-id - The ID of the subnet involved in the association.

  • association.main - Indicates whether the route table is the main route table for the VPC (true | false). Route tables that do not have an association ID are not returned in the response.

  • owner-id - The ID of the Amazon Web Services account that owns the route table.

  • route-table-id - The ID of the route table.

  • route.destination-cidr-block - The IPv4 CIDR range specified in a route in the table.

  • route.destination-ipv6-cidr-block - The IPv6 CIDR range specified in a route in the route table.

  • route.destination-prefix-list-id - The ID (prefix) of the Amazon Web Service specified in a route in the table.

  • route.egress-only-internet-gateway-id - The ID of an egress-only Internet gateway specified in a route in the route table.

  • route.gateway-id - The ID of a gateway specified in a route in the table.

  • route.instance-id - The ID of an instance specified in a route in the table.

  • route.nat-gateway-id - The ID of a NAT gateway.

  • route.transit-gateway-id - The ID of a transit gateway.

  • route.origin - Describes how the route was created. CreateRouteTable indicates that the route was automatically created when the route table was created; CreateRoute indicates that the route was manually added to the route table; EnableVgwRoutePropagation indicates that the route was propagated by route propagation.

  • route.state - The state of a route in the route table (active | blackhole). The blackhole state indicates that the route's target isn't available (for example, the specified gateway isn't attached to the VPC, the specified NAT instance has been terminated, and so on).

  • route.vpc-peering-connection-id - The ID of a VPC peering connection specified in a route in the table.

  • tag: - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • vpc-id - The ID of the VPC for the route table.


+ /// - [`filters(Filter)`](crate::operation::describe_route_tables::builders::DescribeRouteTablesFluentBuilder::filters) / [`set_filters(Option>)`](crate::operation::describe_route_tables::builders::DescribeRouteTablesFluentBuilder::set_filters):
required: **false**

The filters.

  • association.gateway-id - The ID of the gateway involved in the association.

  • association.route-table-association-id - The ID of an association ID for the route table.

  • association.route-table-id - The ID of the route table involved in the association.

  • association.subnet-id - The ID of the subnet involved in the association.

  • association.main - Indicates whether the route table is the main route table for the VPC (true | false). Route tables that do not have an association ID are not returned in the response.

  • owner-id - The ID of the Amazon Web Services account that owns the route table.

  • route-table-id - The ID of the route table.

  • route.destination-cidr-block - The IPv4 CIDR range specified in a route in the table.

  • route.destination-ipv6-cidr-block - The IPv6 CIDR range specified in a route in the route table.

  • route.destination-prefix-list-id - The ID (prefix) of the Amazon Web Services service specified in a route in the table.

  • route.egress-only-internet-gateway-id - The ID of an egress-only Internet gateway specified in a route in the route table.

  • route.gateway-id - The ID of a gateway specified in a route in the table.

  • route.instance-id - The ID of an instance specified in a route in the table.

  • route.nat-gateway-id - The ID of a NAT gateway.

  • route.transit-gateway-id - The ID of a transit gateway.

  • route.origin - Describes how the route was created. CreateRouteTable indicates that the route was automatically created when the route table was created; CreateRoute indicates that the route was manually added to the route table; EnableVgwRoutePropagation indicates that the route was propagated by route propagation.

  • route.state - The state of a route in the route table (active | blackhole). The blackhole state indicates that the route's target isn't available (for example, the specified gateway isn't attached to the VPC, the specified NAT instance has been terminated, and so on).

  • route.vpc-peering-connection-id - The ID of a VPC peering connection specified in a route in the table.

  • tag: - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • vpc-id - The ID of the VPC for the route table.


/// - [`dry_run(bool)`](crate::operation::describe_route_tables::builders::DescribeRouteTablesFluentBuilder::dry_run) / [`set_dry_run(Option)`](crate::operation::describe_route_tables::builders::DescribeRouteTablesFluentBuilder::set_dry_run):
required: **false**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.


/// - [`route_table_ids(impl Into)`](crate::operation::describe_route_tables::builders::DescribeRouteTablesFluentBuilder::route_table_ids) / [`set_route_table_ids(Option>)`](crate::operation::describe_route_tables::builders::DescribeRouteTablesFluentBuilder::set_route_table_ids):
required: **false**

The IDs of the route tables.


/// - [`next_token(impl Into)`](crate::operation::describe_route_tables::builders::DescribeRouteTablesFluentBuilder::next_token) / [`set_next_token(Option)`](crate::operation::describe_route_tables::builders::DescribeRouteTablesFluentBuilder::set_next_token):
required: **false**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.


diff --git a/sdk/ec2/src/client/modify_capacity_reservation.rs b/sdk/ec2/src/client/modify_capacity_reservation.rs index 6e7aaac0f3bf..2ab6e0ef0f36 100644 --- a/sdk/ec2/src/client/modify_capacity_reservation.rs +++ b/sdk/ec2/src/client/modify_capacity_reservation.rs @@ -10,6 +10,7 @@ impl super::Client { /// - [`accept(bool)`](crate::operation::modify_capacity_reservation::builders::ModifyCapacityReservationFluentBuilder::accept) / [`set_accept(Option)`](crate::operation::modify_capacity_reservation::builders::ModifyCapacityReservationFluentBuilder::set_accept):
required: **false**

Reserved. Capacity Reservations you have created are accepted by default.


/// - [`dry_run(bool)`](crate::operation::modify_capacity_reservation::builders::ModifyCapacityReservationFluentBuilder::dry_run) / [`set_dry_run(Option)`](crate::operation::modify_capacity_reservation::builders::ModifyCapacityReservationFluentBuilder::set_dry_run):
required: **false**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.


/// - [`additional_info(impl Into)`](crate::operation::modify_capacity_reservation::builders::ModifyCapacityReservationFluentBuilder::additional_info) / [`set_additional_info(Option)`](crate::operation::modify_capacity_reservation::builders::ModifyCapacityReservationFluentBuilder::set_additional_info):
required: **false**

Reserved for future use.


+ /// - [`instance_match_criteria(InstanceMatchCriteria)`](crate::operation::modify_capacity_reservation::builders::ModifyCapacityReservationFluentBuilder::instance_match_criteria) / [`set_instance_match_criteria(Option)`](crate::operation::modify_capacity_reservation::builders::ModifyCapacityReservationFluentBuilder::set_instance_match_criteria):
required: **false**

The matching criteria (instance eligibility) that you want to use in the modified Capacity Reservation. If you change the instance eligibility of an existing Capacity Reservation from targeted to open, any running instances that match the attributes of the Capacity Reservation, have the CapacityReservationPreference set to open, and are not yet running in the Capacity Reservation, will automatically use the modified Capacity Reservation.

To modify the instance eligibility, the Capacity Reservation must be completely idle (zero usage).


/// - On success, responds with [`ModifyCapacityReservationOutput`](crate::operation::modify_capacity_reservation::ModifyCapacityReservationOutput) with field(s): /// - [`r#return(Option)`](crate::operation::modify_capacity_reservation::ModifyCapacityReservationOutput::return):

Returns true if the request succeeds; otherwise, it returns an error.

/// - On failure, responds with [`SdkError`](crate::operation::modify_capacity_reservation::ModifyCapacityReservationError) diff --git a/sdk/ec2/src/client/move_capacity_reservation_instances.rs b/sdk/ec2/src/client/move_capacity_reservation_instances.rs new file mode 100644 index 000000000000..1ad270143d26 --- /dev/null +++ b/sdk/ec2/src/client/move_capacity_reservation_instances.rs @@ -0,0 +1,21 @@ +// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. +impl super::Client { + /// Constructs a fluent builder for the [`MoveCapacityReservationInstances`](crate::operation::move_capacity_reservation_instances::builders::MoveCapacityReservationInstancesFluentBuilder) operation. + /// + /// - The fluent builder is configurable: + /// - [`dry_run(bool)`](crate::operation::move_capacity_reservation_instances::builders::MoveCapacityReservationInstancesFluentBuilder::dry_run) / [`set_dry_run(Option)`](crate::operation::move_capacity_reservation_instances::builders::MoveCapacityReservationInstancesFluentBuilder::set_dry_run):
required: **false**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.


+ /// - [`client_token(impl Into)`](crate::operation::move_capacity_reservation_instances::builders::MoveCapacityReservationInstancesFluentBuilder::client_token) / [`set_client_token(Option)`](crate::operation::move_capacity_reservation_instances::builders::MoveCapacityReservationInstancesFluentBuilder::set_client_token):
required: **false**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.


+ /// - [`source_capacity_reservation_id(impl Into)`](crate::operation::move_capacity_reservation_instances::builders::MoveCapacityReservationInstancesFluentBuilder::source_capacity_reservation_id) / [`set_source_capacity_reservation_id(Option)`](crate::operation::move_capacity_reservation_instances::builders::MoveCapacityReservationInstancesFluentBuilder::set_source_capacity_reservation_id):
required: **true**

The ID of the Capacity Reservation from which you want to move capacity.


+ /// - [`destination_capacity_reservation_id(impl Into)`](crate::operation::move_capacity_reservation_instances::builders::MoveCapacityReservationInstancesFluentBuilder::destination_capacity_reservation_id) / [`set_destination_capacity_reservation_id(Option)`](crate::operation::move_capacity_reservation_instances::builders::MoveCapacityReservationInstancesFluentBuilder::set_destination_capacity_reservation_id):
required: **true**

The ID of the Capacity Reservation that you want to move capacity into.


+ /// - [`instance_count(i32)`](crate::operation::move_capacity_reservation_instances::builders::MoveCapacityReservationInstancesFluentBuilder::instance_count) / [`set_instance_count(Option)`](crate::operation::move_capacity_reservation_instances::builders::MoveCapacityReservationInstancesFluentBuilder::set_instance_count):
required: **true**

The number of instances that you want to move from the source Capacity Reservation.


+ /// - On success, responds with [`MoveCapacityReservationInstancesOutput`](crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesOutput) with field(s): + /// - [`source_capacity_reservation(Option)`](crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesOutput::source_capacity_reservation):

Information about the source Capacity Reservation.

+ /// - [`destination_capacity_reservation(Option)`](crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesOutput::destination_capacity_reservation):

Information about the destination Capacity Reservation.

+ /// - [`instance_count(Option)`](crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesOutput::instance_count):

The number of instances that were moved from the source Capacity Reservation to the destination Capacity Reservation.

+ /// - On failure, responds with [`SdkError`](crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesError) + pub fn move_capacity_reservation_instances( + &self, + ) -> crate::operation::move_capacity_reservation_instances::builders::MoveCapacityReservationInstancesFluentBuilder { + crate::operation::move_capacity_reservation_instances::builders::MoveCapacityReservationInstancesFluentBuilder::new(self.handle.clone()) + } +} diff --git a/sdk/ec2/src/error_meta.rs b/sdk/ec2/src/error_meta.rs index 14d1413f9df1..ef79856305e6 100644 --- a/sdk/ec2/src/error_meta.rs +++ b/sdk/ec2/src/error_meta.rs @@ -1488,6 +1488,40 @@ impl From + From< + ::aws_smithy_runtime_api::client::result::SdkError< + crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingError, + R, + >, + > for Error +where + R: Send + Sync + std::fmt::Debug + 'static, +{ + fn from( + err: ::aws_smithy_runtime_api::client::result::SdkError< + crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingError, + R, + >, + ) -> Self { + match err { + ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()), + _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled { + meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(), + source: err.into(), + }), + } + } +} +impl From for Error { + fn from(err: crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingError) -> Self { + match err { + crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingError::Unhandled(inner) => { + Error::Unhandled(inner) + } + } + } +} impl From< ::aws_smithy_runtime_api::client::result::SdkError< @@ -14859,6 +14893,38 @@ impl From f } } } +impl + From< + ::aws_smithy_runtime_api::client::result::SdkError< + crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesError, + R, + >, + > for Error +where + R: Send + Sync + std::fmt::Debug + 'static, +{ + fn from( + err: ::aws_smithy_runtime_api::client::result::SdkError< + crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesError, + R, + >, + ) -> Self { + match err { + ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()), + _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled { + meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(), + source: err.into(), + }), + } + } +} +impl From for Error { + fn from(err: crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesError) -> Self { + match err { + crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesError::Unhandled(inner) => Error::Unhandled(inner), + } + } +} impl From<::aws_smithy_runtime_api::client::result::SdkError> for Error where R: Send + Sync + std::fmt::Debug + 'static, diff --git a/sdk/ec2/src/lib.rs b/sdk/ec2/src/lib.rs index dc56437adbb2..c9c20065f9df 100644 --- a/sdk/ec2/src/lib.rs +++ b/sdk/ec2/src/lib.rs @@ -31,7 +31,7 @@ //! ```toml //! [dependencies] //! aws-config = { version = "1.1.7", features = ["behavior-version-latest"] } -//! aws-sdk-ec2 = "1.64.0" +//! aws-sdk-ec2 = "1.65.0" //! tokio = { version = "1", features = ["full"] } //! ``` //! diff --git a/sdk/ec2/src/operation.rs b/sdk/ec2/src/operation.rs index ec1bf17660b3..389783ebfef9 100644 --- a/sdk/ec2/src/operation.rs +++ b/sdk/ec2/src/operation.rs @@ -169,6 +169,9 @@ pub mod copy_snapshot; /// Types for the `CreateCapacityReservation` operation. pub mod create_capacity_reservation; +/// Types for the `CreateCapacityReservationBySplitting` operation. +pub mod create_capacity_reservation_by_splitting; + /// Types for the `CreateCapacityReservationFleet` operation. pub mod create_capacity_reservation_fleet; @@ -1675,6 +1678,9 @@ pub mod move_address_to_vpc; /// Types for the `MoveByoipCidrToIpam` operation. pub mod move_byoip_cidr_to_ipam; +/// Types for the `MoveCapacityReservationInstances` operation. +pub mod move_capacity_reservation_instances; + /// Types for the `ProvisionByoipCidr` operation. pub mod provision_byoip_cidr; diff --git a/sdk/ec2/src/operation/create_capacity_reservation_by_splitting.rs b/sdk/ec2/src/operation/create_capacity_reservation_by_splitting.rs new file mode 100644 index 000000000000..569548f5e858 --- /dev/null +++ b/sdk/ec2/src/operation/create_capacity_reservation_by_splitting.rs @@ -0,0 +1,364 @@ +// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. +/// Orchestration and serialization glue logic for `CreateCapacityReservationBySplitting`. +#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)] +#[non_exhaustive] +pub struct CreateCapacityReservationBySplitting; +impl CreateCapacityReservationBySplitting { + /// Creates a new `CreateCapacityReservationBySplitting` + pub fn new() -> Self { + Self + } + pub(crate) async fn orchestrate( + runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins, + input: crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingInput, + ) -> ::std::result::Result< + crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingOutput, + ::aws_smithy_runtime_api::client::result::SdkError< + crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingError, + ::aws_smithy_runtime_api::client::orchestrator::HttpResponse, + >, + > { + let map_err = |err: ::aws_smithy_runtime_api::client::result::SdkError< + ::aws_smithy_runtime_api::client::interceptors::context::Error, + ::aws_smithy_runtime_api::client::orchestrator::HttpResponse, + >| { + err.map_service_error(|err| { + err.downcast::() + .expect("correct error type") + }) + }; + let context = Self::orchestrate_with_stop_point(runtime_plugins, input, ::aws_smithy_runtime::client::orchestrator::StopPoint::None) + .await + .map_err(map_err)?; + let output = context.finalize().map_err(map_err)?; + ::std::result::Result::Ok( + output + .downcast::() + .expect("correct output type"), + ) + } + + pub(crate) async fn orchestrate_with_stop_point( + runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins, + input: crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingInput, + stop_point: ::aws_smithy_runtime::client::orchestrator::StopPoint, + ) -> ::std::result::Result< + ::aws_smithy_runtime_api::client::interceptors::context::InterceptorContext, + ::aws_smithy_runtime_api::client::result::SdkError< + ::aws_smithy_runtime_api::client::interceptors::context::Error, + ::aws_smithy_runtime_api::client::orchestrator::HttpResponse, + >, + > { + let input = ::aws_smithy_runtime_api::client::interceptors::context::Input::erase(input); + ::aws_smithy_runtime::client::orchestrator::invoke_with_stop_point( + "ec2", + "CreateCapacityReservationBySplitting", + input, + runtime_plugins, + stop_point, + ) + .await + } + + pub(crate) fn operation_runtime_plugins( + client_runtime_plugins: ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins, + client_config: &crate::config::Config, + config_override: ::std::option::Option, + ) -> ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins { + let mut runtime_plugins = client_runtime_plugins.with_operation_plugin(Self::new()); + runtime_plugins = runtime_plugins + .with_operation_plugin(crate::client_idempotency_token::IdempotencyTokenRuntimePlugin::new( + |token_provider, input| { + let input: &mut crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingInput = + input.downcast_mut().expect("correct type"); + if input.client_token.is_none() { + input.client_token = ::std::option::Option::Some(token_provider.make_idempotency_token()); + } + }, + )) + .with_client_plugin(crate::auth_plugin::DefaultAuthOptionsPlugin::new(vec![ + ::aws_runtime::auth::sigv4::SCHEME_ID, + ])); + if let ::std::option::Option::Some(config_override) = config_override { + for plugin in config_override.runtime_plugins.iter().cloned() { + runtime_plugins = runtime_plugins.with_operation_plugin(plugin); + } + runtime_plugins = runtime_plugins.with_operation_plugin(crate::config::ConfigOverrideRuntimePlugin::new( + config_override, + client_config.config.clone(), + &client_config.runtime_components, + )); + } + runtime_plugins + } +} +impl ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugin for CreateCapacityReservationBySplitting { + fn config(&self) -> ::std::option::Option<::aws_smithy_types::config_bag::FrozenLayer> { + let mut cfg = ::aws_smithy_types::config_bag::Layer::new("CreateCapacityReservationBySplitting"); + + cfg.store_put(::aws_smithy_runtime_api::client::ser_de::SharedRequestSerializer::new( + CreateCapacityReservationBySplittingRequestSerializer, + )); + cfg.store_put(::aws_smithy_runtime_api::client::ser_de::SharedResponseDeserializer::new( + CreateCapacityReservationBySplittingResponseDeserializer, + )); + + cfg.store_put(::aws_smithy_runtime_api::client::auth::AuthSchemeOptionResolverParams::new( + ::aws_smithy_runtime_api::client::auth::static_resolver::StaticAuthSchemeOptionResolverParams::new(), + )); + + cfg.store_put(::aws_smithy_runtime_api::client::orchestrator::Metadata::new( + "CreateCapacityReservationBySplitting", + "ec2", + )); + let mut signing_options = ::aws_runtime::auth::SigningOptions::default(); + signing_options.double_uri_encode = true; + signing_options.content_sha256_header = false; + signing_options.normalize_uri_path = true; + signing_options.payload_override = None; + + cfg.store_put(::aws_runtime::auth::SigV4OperationSigningConfig { + signing_options, + ..::std::default::Default::default() + }); + + ::std::option::Option::Some(cfg.freeze()) + } + + fn runtime_components( + &self, + _: &::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder, + ) -> ::std::borrow::Cow<'_, ::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder> { + #[allow(unused_mut)] + let mut rcb = ::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder::new("CreateCapacityReservationBySplitting") + .with_interceptor(::aws_smithy_runtime::client::stalled_stream_protection::StalledStreamProtectionInterceptor::default()) + .with_interceptor(CreateCapacityReservationBySplittingEndpointParamsInterceptor) + .with_retry_classifier(::aws_smithy_runtime::client::retries::classifiers::TransientErrorClassifier::< + crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingError, + >::new()) + .with_retry_classifier(::aws_smithy_runtime::client::retries::classifiers::ModeledAsRetryableClassifier::< + crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingError, + >::new()) + .with_retry_classifier(::aws_runtime::retries::classifiers::AwsErrorCodeClassifier::< + crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingError, + >::new()); + + ::std::borrow::Cow::Owned(rcb) + } +} + +#[derive(Debug)] +struct CreateCapacityReservationBySplittingResponseDeserializer; +impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for CreateCapacityReservationBySplittingResponseDeserializer { + fn deserialize_nonstreaming( + &self, + response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse, + ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError { + let (success, status) = (response.status().is_success(), response.status().as_u16()); + let headers = response.headers(); + let body = response.body().bytes().expect("body loaded"); + #[allow(unused_mut)] + let mut force_error = false; + ::tracing::debug!(request_id = ?::aws_types::request_id::RequestId::request_id(response)); + let parse_result = if !success && status != 200 || force_error { + crate::protocol_serde::shape_create_capacity_reservation_by_splitting::de_create_capacity_reservation_by_splitting_http_error( + status, headers, body, + ) + } else { + crate::protocol_serde::shape_create_capacity_reservation_by_splitting::de_create_capacity_reservation_by_splitting_http_response( + status, headers, body, + ) + }; + crate::protocol_serde::type_erase_result(parse_result) + } +} +#[derive(Debug)] +struct CreateCapacityReservationBySplittingRequestSerializer; +impl ::aws_smithy_runtime_api::client::ser_de::SerializeRequest for CreateCapacityReservationBySplittingRequestSerializer { + #[allow(unused_mut, clippy::let_and_return, clippy::needless_borrow, clippy::useless_conversion)] + fn serialize_input( + &self, + input: ::aws_smithy_runtime_api::client::interceptors::context::Input, + _cfg: &mut ::aws_smithy_types::config_bag::ConfigBag, + ) -> ::std::result::Result<::aws_smithy_runtime_api::client::orchestrator::HttpRequest, ::aws_smithy_runtime_api::box_error::BoxError> { + let input = input + .downcast::() + .expect("correct type"); + let _header_serialization_settings = _cfg + .load::() + .cloned() + .unwrap_or_default(); + let mut request_builder = { + fn uri_base( + _input: &crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingInput, + output: &mut ::std::string::String, + ) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::BuildError> { + use ::std::fmt::Write as _; + ::std::write!(output, "/").expect("formatting should succeed"); + ::std::result::Result::Ok(()) + } + #[allow(clippy::unnecessary_wraps)] + fn update_http_builder( + input: &crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingInput, + builder: ::http::request::Builder, + ) -> ::std::result::Result<::http::request::Builder, ::aws_smithy_types::error::operation::BuildError> { + let mut uri = ::std::string::String::new(); + uri_base(input, &mut uri)?; + ::std::result::Result::Ok(builder.method("POST").uri(uri)) + } + let mut builder = update_http_builder(&input, ::http::request::Builder::new())?; + builder = _header_serialization_settings.set_default_header(builder, ::http::header::CONTENT_TYPE, "application/x-www-form-urlencoded"); + builder + }; + let body = ::aws_smithy_types::body::SdkBody::from(crate::protocol_serde::shape_create_capacity_reservation_by_splitting_input::ser_create_capacity_reservation_by_splitting_input_input_input(&input)?); + if let Some(content_length) = body.content_length() { + let content_length = content_length.to_string(); + request_builder = _header_serialization_settings.set_default_header(request_builder, ::http::header::CONTENT_LENGTH, &content_length); + } + ::std::result::Result::Ok(request_builder.body(body).expect("valid request").try_into().unwrap()) + } +} +#[derive(Debug)] +struct CreateCapacityReservationBySplittingEndpointParamsInterceptor; + +impl ::aws_smithy_runtime_api::client::interceptors::Intercept for CreateCapacityReservationBySplittingEndpointParamsInterceptor { + fn name(&self) -> &'static str { + "CreateCapacityReservationBySplittingEndpointParamsInterceptor" + } + + fn read_before_execution( + &self, + context: &::aws_smithy_runtime_api::client::interceptors::context::BeforeSerializationInterceptorContextRef< + '_, + ::aws_smithy_runtime_api::client::interceptors::context::Input, + ::aws_smithy_runtime_api::client::interceptors::context::Output, + ::aws_smithy_runtime_api::client::interceptors::context::Error, + >, + cfg: &mut ::aws_smithy_types::config_bag::ConfigBag, + ) -> ::std::result::Result<(), ::aws_smithy_runtime_api::box_error::BoxError> { + let _input = context + .input() + .downcast_ref::() + .ok_or("failed to downcast to CreateCapacityReservationBySplittingInput")?; + + let params = crate::config::endpoint::Params::builder() + .set_region(cfg.load::<::aws_types::region::Region>().map(|r| r.as_ref().to_owned())) + .set_use_dual_stack(cfg.load::<::aws_types::endpoint_config::UseDualStack>().map(|ty| ty.0)) + .set_use_fips(cfg.load::<::aws_types::endpoint_config::UseFips>().map(|ty| ty.0)) + .set_endpoint(cfg.load::<::aws_types::endpoint_config::EndpointUrl>().map(|ty| ty.0.clone())) + .build() + .map_err(|err| { + ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err) + })?; + cfg.interceptor_state() + .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params)); + ::std::result::Result::Ok(()) + } +} + +// The get_* functions below are generated from JMESPath expressions in the +// operationContextParams trait. They target the operation's input shape. + +/// Error type for the `CreateCapacityReservationBySplittingError` operation. +#[non_exhaustive] +#[derive(::std::fmt::Debug)] +pub enum CreateCapacityReservationBySplittingError { + /// An unexpected error occurred (e.g., invalid JSON returned by the service or an unknown error code). + #[deprecated(note = "Matching `Unhandled` directly is not forwards compatible. Instead, match using a \ + variable wildcard pattern and check `.code()`: + \ +    `err if err.code() == Some(\"SpecificExceptionCode\") => { /* handle the error */ }` + \ + See [`ProvideErrorMetadata`](#impl-ProvideErrorMetadata-for-CreateCapacityReservationBySplittingError) for what information is available for the error.")] + Unhandled(crate::error::sealed_unhandled::Unhandled), +} +impl CreateCapacityReservationBySplittingError { + /// Creates the `CreateCapacityReservationBySplittingError::Unhandled` variant from any error type. + pub fn unhandled( + err: impl ::std::convert::Into<::std::boxed::Box>, + ) -> Self { + Self::Unhandled(crate::error::sealed_unhandled::Unhandled { + source: err.into(), + meta: ::std::default::Default::default(), + }) + } + + /// Creates the `CreateCapacityReservationBySplittingError::Unhandled` variant from an [`ErrorMetadata`](::aws_smithy_types::error::ErrorMetadata). + pub fn generic(err: ::aws_smithy_types::error::ErrorMetadata) -> Self { + Self::Unhandled(crate::error::sealed_unhandled::Unhandled { + source: err.clone().into(), + meta: err, + }) + } + /// + /// Returns error metadata, which includes the error code, message, + /// request ID, and potentially additional information. + /// + pub fn meta(&self) -> &::aws_smithy_types::error::ErrorMetadata { + match self { + Self::Unhandled(e) => &e.meta, + } + } +} +impl ::std::error::Error for CreateCapacityReservationBySplittingError { + fn source(&self) -> ::std::option::Option<&(dyn ::std::error::Error + 'static)> { + match self { + Self::Unhandled(_inner) => ::std::option::Option::Some(&*_inner.source), + } + } +} +impl ::std::fmt::Display for CreateCapacityReservationBySplittingError { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + match self { + Self::Unhandled(_inner) => { + if let ::std::option::Option::Some(code) = ::aws_smithy_types::error::metadata::ProvideErrorMetadata::code(self) { + write!(f, "unhandled error ({code})") + } else { + f.write_str("unhandled error") + } + } + } + } +} +impl ::aws_smithy_types::retry::ProvideErrorKind for CreateCapacityReservationBySplittingError { + fn code(&self) -> ::std::option::Option<&str> { + ::aws_smithy_types::error::metadata::ProvideErrorMetadata::code(self) + } + fn retryable_error_kind(&self) -> ::std::option::Option<::aws_smithy_types::retry::ErrorKind> { + ::std::option::Option::None + } +} +impl ::aws_smithy_types::error::metadata::ProvideErrorMetadata for CreateCapacityReservationBySplittingError { + fn meta(&self) -> &::aws_smithy_types::error::ErrorMetadata { + match self { + Self::Unhandled(_inner) => &_inner.meta, + } + } +} +impl ::aws_smithy_runtime_api::client::result::CreateUnhandledError for CreateCapacityReservationBySplittingError { + fn create_unhandled_error( + source: ::std::boxed::Box, + meta: ::std::option::Option<::aws_smithy_types::error::ErrorMetadata>, + ) -> Self { + Self::Unhandled(crate::error::sealed_unhandled::Unhandled { + source, + meta: meta.unwrap_or_default(), + }) + } +} +impl ::aws_types::request_id::RequestId for crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingError { + fn request_id(&self) -> Option<&str> { + self.meta().request_id() + } +} + +pub use crate::operation::create_capacity_reservation_by_splitting::_create_capacity_reservation_by_splitting_output::CreateCapacityReservationBySplittingOutput; + +pub use crate::operation::create_capacity_reservation_by_splitting::_create_capacity_reservation_by_splitting_input::CreateCapacityReservationBySplittingInput; + +mod _create_capacity_reservation_by_splitting_input; + +mod _create_capacity_reservation_by_splitting_output; + +/// Builders +pub mod builders; diff --git a/sdk/ec2/src/operation/create_capacity_reservation_by_splitting/_create_capacity_reservation_by_splitting_input.rs b/sdk/ec2/src/operation/create_capacity_reservation_by_splitting/_create_capacity_reservation_by_splitting_input.rs new file mode 100644 index 000000000000..512366891e52 --- /dev/null +++ b/sdk/ec2/src/operation/create_capacity_reservation_by_splitting/_create_capacity_reservation_by_splitting_input.rs @@ -0,0 +1,154 @@ +// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. +#[allow(missing_docs)] // documentation missing in model +#[non_exhaustive] +#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)] +pub struct CreateCapacityReservationBySplittingInput { + ///

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

+ pub dry_run: ::std::option::Option, + ///

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.

+ pub client_token: ::std::option::Option<::std::string::String>, + ///

The ID of the Capacity Reservation from which you want to split the available capacity.

+ pub source_capacity_reservation_id: ::std::option::Option<::std::string::String>, + ///

The number of instances to split from the source Capacity Reservation.

+ pub instance_count: ::std::option::Option, + ///

The tags to apply to the new Capacity Reservation.

+ pub tag_specifications: ::std::option::Option<::std::vec::Vec>, +} +impl CreateCapacityReservationBySplittingInput { + ///

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

+ pub fn dry_run(&self) -> ::std::option::Option { + self.dry_run + } + ///

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.

+ pub fn client_token(&self) -> ::std::option::Option<&str> { + self.client_token.as_deref() + } + ///

The ID of the Capacity Reservation from which you want to split the available capacity.

+ pub fn source_capacity_reservation_id(&self) -> ::std::option::Option<&str> { + self.source_capacity_reservation_id.as_deref() + } + ///

The number of instances to split from the source Capacity Reservation.

+ pub fn instance_count(&self) -> ::std::option::Option { + self.instance_count + } + ///

The tags to apply to the new Capacity Reservation.

+ /// + /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.tag_specifications.is_none()`. + pub fn tag_specifications(&self) -> &[crate::types::TagSpecification] { + self.tag_specifications.as_deref().unwrap_or_default() + } +} +impl CreateCapacityReservationBySplittingInput { + /// Creates a new builder-style object to manufacture [`CreateCapacityReservationBySplittingInput`](crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingInput). + pub fn builder() -> crate::operation::create_capacity_reservation_by_splitting::builders::CreateCapacityReservationBySplittingInputBuilder { + crate::operation::create_capacity_reservation_by_splitting::builders::CreateCapacityReservationBySplittingInputBuilder::default() + } +} + +/// A builder for [`CreateCapacityReservationBySplittingInput`](crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingInput). +#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)] +#[non_exhaustive] +pub struct CreateCapacityReservationBySplittingInputBuilder { + pub(crate) dry_run: ::std::option::Option, + pub(crate) client_token: ::std::option::Option<::std::string::String>, + pub(crate) source_capacity_reservation_id: ::std::option::Option<::std::string::String>, + pub(crate) instance_count: ::std::option::Option, + pub(crate) tag_specifications: ::std::option::Option<::std::vec::Vec>, +} +impl CreateCapacityReservationBySplittingInputBuilder { + ///

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

+ pub fn dry_run(mut self, input: bool) -> Self { + self.dry_run = ::std::option::Option::Some(input); + self + } + ///

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

+ pub fn set_dry_run(mut self, input: ::std::option::Option) -> Self { + self.dry_run = input; + self + } + ///

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

+ pub fn get_dry_run(&self) -> &::std::option::Option { + &self.dry_run + } + ///

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.

+ pub fn client_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self { + self.client_token = ::std::option::Option::Some(input.into()); + self + } + ///

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.

+ pub fn set_client_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self { + self.client_token = input; + self + } + ///

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.

+ pub fn get_client_token(&self) -> &::std::option::Option<::std::string::String> { + &self.client_token + } + ///

The ID of the Capacity Reservation from which you want to split the available capacity.

+ /// This field is required. + pub fn source_capacity_reservation_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self { + self.source_capacity_reservation_id = ::std::option::Option::Some(input.into()); + self + } + ///

The ID of the Capacity Reservation from which you want to split the available capacity.

+ pub fn set_source_capacity_reservation_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self { + self.source_capacity_reservation_id = input; + self + } + ///

The ID of the Capacity Reservation from which you want to split the available capacity.

+ pub fn get_source_capacity_reservation_id(&self) -> &::std::option::Option<::std::string::String> { + &self.source_capacity_reservation_id + } + ///

The number of instances to split from the source Capacity Reservation.

+ /// This field is required. + pub fn instance_count(mut self, input: i32) -> Self { + self.instance_count = ::std::option::Option::Some(input); + self + } + ///

The number of instances to split from the source Capacity Reservation.

+ pub fn set_instance_count(mut self, input: ::std::option::Option) -> Self { + self.instance_count = input; + self + } + ///

The number of instances to split from the source Capacity Reservation.

+ pub fn get_instance_count(&self) -> &::std::option::Option { + &self.instance_count + } + /// Appends an item to `tag_specifications`. + /// + /// To override the contents of this collection use [`set_tag_specifications`](Self::set_tag_specifications). + /// + ///

The tags to apply to the new Capacity Reservation.

+ pub fn tag_specifications(mut self, input: crate::types::TagSpecification) -> Self { + let mut v = self.tag_specifications.unwrap_or_default(); + v.push(input); + self.tag_specifications = ::std::option::Option::Some(v); + self + } + ///

The tags to apply to the new Capacity Reservation.

+ pub fn set_tag_specifications(mut self, input: ::std::option::Option<::std::vec::Vec>) -> Self { + self.tag_specifications = input; + self + } + ///

The tags to apply to the new Capacity Reservation.

+ pub fn get_tag_specifications(&self) -> &::std::option::Option<::std::vec::Vec> { + &self.tag_specifications + } + /// Consumes the builder and constructs a [`CreateCapacityReservationBySplittingInput`](crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingInput). + pub fn build( + self, + ) -> ::std::result::Result< + crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingInput, + ::aws_smithy_types::error::operation::BuildError, + > { + ::std::result::Result::Ok( + crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingInput { + dry_run: self.dry_run, + client_token: self.client_token, + source_capacity_reservation_id: self.source_capacity_reservation_id, + instance_count: self.instance_count, + tag_specifications: self.tag_specifications, + }, + ) + } +} diff --git a/sdk/ec2/src/operation/create_capacity_reservation_by_splitting/_create_capacity_reservation_by_splitting_output.rs b/sdk/ec2/src/operation/create_capacity_reservation_by_splitting/_create_capacity_reservation_by_splitting_output.rs new file mode 100644 index 000000000000..e1d4e7beffd8 --- /dev/null +++ b/sdk/ec2/src/operation/create_capacity_reservation_by_splitting/_create_capacity_reservation_by_splitting_output.rs @@ -0,0 +1,110 @@ +// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. +#[allow(missing_docs)] // documentation missing in model +#[non_exhaustive] +#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)] +pub struct CreateCapacityReservationBySplittingOutput { + ///

Information about the source Capacity Reservation.

+ pub source_capacity_reservation: ::std::option::Option, + ///

Information about the destination Capacity Reservation.

+ pub destination_capacity_reservation: ::std::option::Option, + ///

The number of instances in the new Capacity Reservation. The number of instances in the source Capacity Reservation was reduced by this amount.

+ pub instance_count: ::std::option::Option, + _request_id: Option, +} +impl CreateCapacityReservationBySplittingOutput { + ///

Information about the source Capacity Reservation.

+ pub fn source_capacity_reservation(&self) -> ::std::option::Option<&crate::types::CapacityReservation> { + self.source_capacity_reservation.as_ref() + } + ///

Information about the destination Capacity Reservation.

+ pub fn destination_capacity_reservation(&self) -> ::std::option::Option<&crate::types::CapacityReservation> { + self.destination_capacity_reservation.as_ref() + } + ///

The number of instances in the new Capacity Reservation. The number of instances in the source Capacity Reservation was reduced by this amount.

+ pub fn instance_count(&self) -> ::std::option::Option { + self.instance_count + } +} +impl ::aws_types::request_id::RequestId for CreateCapacityReservationBySplittingOutput { + fn request_id(&self) -> Option<&str> { + self._request_id.as_deref() + } +} +impl CreateCapacityReservationBySplittingOutput { + /// Creates a new builder-style object to manufacture [`CreateCapacityReservationBySplittingOutput`](crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingOutput). + pub fn builder() -> crate::operation::create_capacity_reservation_by_splitting::builders::CreateCapacityReservationBySplittingOutputBuilder { + crate::operation::create_capacity_reservation_by_splitting::builders::CreateCapacityReservationBySplittingOutputBuilder::default() + } +} + +/// A builder for [`CreateCapacityReservationBySplittingOutput`](crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingOutput). +#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)] +#[non_exhaustive] +pub struct CreateCapacityReservationBySplittingOutputBuilder { + pub(crate) source_capacity_reservation: ::std::option::Option, + pub(crate) destination_capacity_reservation: ::std::option::Option, + pub(crate) instance_count: ::std::option::Option, + _request_id: Option, +} +impl CreateCapacityReservationBySplittingOutputBuilder { + ///

Information about the source Capacity Reservation.

+ pub fn source_capacity_reservation(mut self, input: crate::types::CapacityReservation) -> Self { + self.source_capacity_reservation = ::std::option::Option::Some(input); + self + } + ///

Information about the source Capacity Reservation.

+ pub fn set_source_capacity_reservation(mut self, input: ::std::option::Option) -> Self { + self.source_capacity_reservation = input; + self + } + ///

Information about the source Capacity Reservation.

+ pub fn get_source_capacity_reservation(&self) -> &::std::option::Option { + &self.source_capacity_reservation + } + ///

Information about the destination Capacity Reservation.

+ pub fn destination_capacity_reservation(mut self, input: crate::types::CapacityReservation) -> Self { + self.destination_capacity_reservation = ::std::option::Option::Some(input); + self + } + ///

Information about the destination Capacity Reservation.

+ pub fn set_destination_capacity_reservation(mut self, input: ::std::option::Option) -> Self { + self.destination_capacity_reservation = input; + self + } + ///

Information about the destination Capacity Reservation.

+ pub fn get_destination_capacity_reservation(&self) -> &::std::option::Option { + &self.destination_capacity_reservation + } + ///

The number of instances in the new Capacity Reservation. The number of instances in the source Capacity Reservation was reduced by this amount.

+ pub fn instance_count(mut self, input: i32) -> Self { + self.instance_count = ::std::option::Option::Some(input); + self + } + ///

The number of instances in the new Capacity Reservation. The number of instances in the source Capacity Reservation was reduced by this amount.

+ pub fn set_instance_count(mut self, input: ::std::option::Option) -> Self { + self.instance_count = input; + self + } + ///

The number of instances in the new Capacity Reservation. The number of instances in the source Capacity Reservation was reduced by this amount.

+ pub fn get_instance_count(&self) -> &::std::option::Option { + &self.instance_count + } + pub(crate) fn _request_id(mut self, request_id: impl Into) -> Self { + self._request_id = Some(request_id.into()); + self + } + + pub(crate) fn _set_request_id(&mut self, request_id: Option) -> &mut Self { + self._request_id = request_id; + self + } + /// Consumes the builder and constructs a [`CreateCapacityReservationBySplittingOutput`](crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingOutput). + pub fn build(self) -> crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingOutput { + crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingOutput { + source_capacity_reservation: self.source_capacity_reservation, + destination_capacity_reservation: self.destination_capacity_reservation, + instance_count: self.instance_count, + _request_id: self._request_id, + } + } +} diff --git a/sdk/ec2/src/operation/create_capacity_reservation_by_splitting/builders.rs b/sdk/ec2/src/operation/create_capacity_reservation_by_splitting/builders.rs new file mode 100644 index 000000000000..02b78803c254 --- /dev/null +++ b/sdk/ec2/src/operation/create_capacity_reservation_by_splitting/builders.rs @@ -0,0 +1,189 @@ +// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. +pub use crate::operation::create_capacity_reservation_by_splitting::_create_capacity_reservation_by_splitting_output::CreateCapacityReservationBySplittingOutputBuilder; + +pub use crate::operation::create_capacity_reservation_by_splitting::_create_capacity_reservation_by_splitting_input::CreateCapacityReservationBySplittingInputBuilder; + +impl crate::operation::create_capacity_reservation_by_splitting::builders::CreateCapacityReservationBySplittingInputBuilder { + /// Sends a request with this input using the given client. + pub async fn send_with( + self, + client: &crate::Client, + ) -> ::std::result::Result< + crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingOutput, + ::aws_smithy_runtime_api::client::result::SdkError< + crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingError, + ::aws_smithy_runtime_api::client::orchestrator::HttpResponse, + >, + > { + let mut fluent_builder = client.create_capacity_reservation_by_splitting(); + fluent_builder.inner = self; + fluent_builder.send().await + } +} +/// Fluent builder constructing a request to `CreateCapacityReservationBySplitting`. +/// +///

Create a new Capacity Reservation by splitting the available capacity of the source Capacity Reservation. The new Capacity Reservation will have the same attributes as the source Capacity Reservation except for tags. The source Capacity Reservation must be active and owned by your Amazon Web Services account.

+#[derive(::std::clone::Clone, ::std::fmt::Debug)] +pub struct CreateCapacityReservationBySplittingFluentBuilder { + handle: ::std::sync::Arc, + inner: crate::operation::create_capacity_reservation_by_splitting::builders::CreateCapacityReservationBySplittingInputBuilder, + config_override: ::std::option::Option, +} +impl + crate::client::customize::internal::CustomizableSend< + crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingOutput, + crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingError, + > for CreateCapacityReservationBySplittingFluentBuilder +{ + fn send( + self, + config_override: crate::config::Builder, + ) -> crate::client::customize::internal::BoxFuture< + crate::client::customize::internal::SendResult< + crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingOutput, + crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingError, + >, + > { + ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await }) + } +} +impl CreateCapacityReservationBySplittingFluentBuilder { + /// Creates a new `CreateCapacityReservationBySplittingFluentBuilder`. + pub(crate) fn new(handle: ::std::sync::Arc) -> Self { + Self { + handle, + inner: ::std::default::Default::default(), + config_override: ::std::option::Option::None, + } + } + /// Access the CreateCapacityReservationBySplitting as a reference. + pub fn as_input( + &self, + ) -> &crate::operation::create_capacity_reservation_by_splitting::builders::CreateCapacityReservationBySplittingInputBuilder { + &self.inner + } + /// Sends the request and returns the response. + /// + /// If an error occurs, an `SdkError` will be returned with additional details that + /// can be matched against. + /// + /// By default, any retryable failures will be retried twice. Retry behavior + /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be + /// set when configuring the client. + pub async fn send( + self, + ) -> ::std::result::Result< + crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingOutput, + ::aws_smithy_runtime_api::client::result::SdkError< + crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingError, + ::aws_smithy_runtime_api::client::orchestrator::HttpResponse, + >, + > { + let input = self + .inner + .build() + .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?; + let runtime_plugins = + crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplitting::operation_runtime_plugins( + self.handle.runtime_plugins.clone(), + &self.handle.conf, + self.config_override, + ); + crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplitting::orchestrate(&runtime_plugins, input).await + } + + /// Consumes this builder, creating a customizable operation that can be modified before being sent. + pub fn customize( + self, + ) -> crate::client::customize::CustomizableOperation< + crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingOutput, + crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingError, + Self, + > { + crate::client::customize::CustomizableOperation::new(self) + } + pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into) -> Self { + self.set_config_override(::std::option::Option::Some(config_override.into())); + self + } + + pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option) -> &mut Self { + self.config_override = config_override; + self + } + ///

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

+ pub fn dry_run(mut self, input: bool) -> Self { + self.inner = self.inner.dry_run(input); + self + } + ///

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

+ pub fn set_dry_run(mut self, input: ::std::option::Option) -> Self { + self.inner = self.inner.set_dry_run(input); + self + } + ///

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

+ pub fn get_dry_run(&self) -> &::std::option::Option { + self.inner.get_dry_run() + } + ///

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.

+ pub fn client_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self { + self.inner = self.inner.client_token(input.into()); + self + } + ///

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.

+ pub fn set_client_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self { + self.inner = self.inner.set_client_token(input); + self + } + ///

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.

+ pub fn get_client_token(&self) -> &::std::option::Option<::std::string::String> { + self.inner.get_client_token() + } + ///

The ID of the Capacity Reservation from which you want to split the available capacity.

+ pub fn source_capacity_reservation_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self { + self.inner = self.inner.source_capacity_reservation_id(input.into()); + self + } + ///

The ID of the Capacity Reservation from which you want to split the available capacity.

+ pub fn set_source_capacity_reservation_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self { + self.inner = self.inner.set_source_capacity_reservation_id(input); + self + } + ///

The ID of the Capacity Reservation from which you want to split the available capacity.

+ pub fn get_source_capacity_reservation_id(&self) -> &::std::option::Option<::std::string::String> { + self.inner.get_source_capacity_reservation_id() + } + ///

The number of instances to split from the source Capacity Reservation.

+ pub fn instance_count(mut self, input: i32) -> Self { + self.inner = self.inner.instance_count(input); + self + } + ///

The number of instances to split from the source Capacity Reservation.

+ pub fn set_instance_count(mut self, input: ::std::option::Option) -> Self { + self.inner = self.inner.set_instance_count(input); + self + } + ///

The number of instances to split from the source Capacity Reservation.

+ pub fn get_instance_count(&self) -> &::std::option::Option { + self.inner.get_instance_count() + } + /// + /// Appends an item to `TagSpecifications`. + /// + /// To override the contents of this collection use [`set_tag_specifications`](Self::set_tag_specifications). + /// + ///

The tags to apply to the new Capacity Reservation.

+ pub fn tag_specifications(mut self, input: crate::types::TagSpecification) -> Self { + self.inner = self.inner.tag_specifications(input); + self + } + ///

The tags to apply to the new Capacity Reservation.

+ pub fn set_tag_specifications(mut self, input: ::std::option::Option<::std::vec::Vec>) -> Self { + self.inner = self.inner.set_tag_specifications(input); + self + } + ///

The tags to apply to the new Capacity Reservation.

+ pub fn get_tag_specifications(&self) -> &::std::option::Option<::std::vec::Vec> { + self.inner.get_tag_specifications() + } +} diff --git a/sdk/ec2/src/operation/create_network_interface_permission/_create_network_interface_permission_input.rs b/sdk/ec2/src/operation/create_network_interface_permission/_create_network_interface_permission_input.rs index 14f2ebda6378..1a6d47400c7a 100644 --- a/sdk/ec2/src/operation/create_network_interface_permission/_create_network_interface_permission_input.rs +++ b/sdk/ec2/src/operation/create_network_interface_permission/_create_network_interface_permission_input.rs @@ -8,7 +8,7 @@ pub struct CreateNetworkInterfacePermissionInput { pub network_interface_id: ::std::option::Option<::std::string::String>, ///

The Amazon Web Services account ID.

pub aws_account_id: ::std::option::Option<::std::string::String>, - ///

The Amazon Web Service. Currently not supported.

+ ///

The Amazon Web Services service. Currently not supported.

pub aws_service: ::std::option::Option<::std::string::String>, ///

The type of permission to grant.

pub permission: ::std::option::Option, @@ -24,7 +24,7 @@ impl CreateNetworkInterfacePermissionInput { pub fn aws_account_id(&self) -> ::std::option::Option<&str> { self.aws_account_id.as_deref() } - ///

The Amazon Web Service. Currently not supported.

+ ///

The Amazon Web Services service. Currently not supported.

pub fn aws_service(&self) -> ::std::option::Option<&str> { self.aws_service.as_deref() } @@ -84,17 +84,17 @@ impl CreateNetworkInterfacePermissionInputBuilder { pub fn get_aws_account_id(&self) -> &::std::option::Option<::std::string::String> { &self.aws_account_id } - ///

The Amazon Web Service. Currently not supported.

+ ///

The Amazon Web Services service. Currently not supported.

pub fn aws_service(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self { self.aws_service = ::std::option::Option::Some(input.into()); self } - ///

The Amazon Web Service. Currently not supported.

+ ///

The Amazon Web Services service. Currently not supported.

pub fn set_aws_service(mut self, input: ::std::option::Option<::std::string::String>) -> Self { self.aws_service = input; self } - ///

The Amazon Web Service. Currently not supported.

+ ///

The Amazon Web Services service. Currently not supported.

pub fn get_aws_service(&self) -> &::std::option::Option<::std::string::String> { &self.aws_service } diff --git a/sdk/ec2/src/operation/create_network_interface_permission/builders.rs b/sdk/ec2/src/operation/create_network_interface_permission/builders.rs index 37d9b33ec72f..d3dccc033663 100644 --- a/sdk/ec2/src/operation/create_network_interface_permission/builders.rs +++ b/sdk/ec2/src/operation/create_network_interface_permission/builders.rs @@ -137,17 +137,17 @@ impl CreateNetworkInterfacePermissionFluentBuilder { pub fn get_aws_account_id(&self) -> &::std::option::Option<::std::string::String> { self.inner.get_aws_account_id() } - ///

The Amazon Web Service. Currently not supported.

+ ///

The Amazon Web Services service. Currently not supported.

pub fn aws_service(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self { self.inner = self.inner.aws_service(input.into()); self } - ///

The Amazon Web Service. Currently not supported.

+ ///

The Amazon Web Services service. Currently not supported.

pub fn set_aws_service(mut self, input: ::std::option::Option<::std::string::String>) -> Self { self.inner = self.inner.set_aws_service(input); self } - ///

The Amazon Web Service. Currently not supported.

+ ///

The Amazon Web Services service. Currently not supported.

pub fn get_aws_service(&self) -> &::std::option::Option<::std::string::String> { self.inner.get_aws_service() } diff --git a/sdk/ec2/src/operation/describe_address_transfers/builders.rs b/sdk/ec2/src/operation/describe_address_transfers/builders.rs index a7ddc95a2d2c..016d46b46620 100644 --- a/sdk/ec2/src/operation/describe_address_transfers/builders.rs +++ b/sdk/ec2/src/operation/describe_address_transfers/builders.rs @@ -23,7 +23,7 @@ impl crate::operation::describe_address_transfers::builders::DescribeAddressTran /// Fluent builder constructing a request to `DescribeAddressTransfers`. /// ///

Describes an Elastic IP address transfer. For more information, see Transfer Elastic IP addresses in the Amazon VPC User Guide.

-///

When you transfer an Elastic IP address, there is a two-step handshake between the source and transfer Amazon Web Services accounts. When the source account starts the transfer, the transfer account has seven days to accept the Elastic IP address transfer. During those seven days, the source account can view the pending transfer by using this action. After seven days, the transfer expires and ownership of the Elastic IP address returns to the source account. Accepted transfers are visible to the source account for three days after the transfers have been accepted.

+///

When you transfer an Elastic IP address, there is a two-step handshake between the source and transfer Amazon Web Services accounts. When the source account starts the transfer, the transfer account has seven days to accept the Elastic IP address transfer. During those seven days, the source account can view the pending transfer by using this action. After seven days, the transfer expires and ownership of the Elastic IP address returns to the source account. Accepted transfers are visible to the source account for 14 days after the transfers have been accepted.

#[derive(::std::clone::Clone, ::std::fmt::Debug)] pub struct DescribeAddressTransfersFluentBuilder { handle: ::std::sync::Arc, diff --git a/sdk/ec2/src/operation/describe_network_interface_permissions/_describe_network_interface_permissions_input.rs b/sdk/ec2/src/operation/describe_network_interface_permissions/_describe_network_interface_permissions_input.rs index 1d2f2195b27d..b9d8690b05fb 100644 --- a/sdk/ec2/src/operation/describe_network_interface_permissions/_describe_network_interface_permissions_input.rs +++ b/sdk/ec2/src/operation/describe_network_interface_permissions/_describe_network_interface_permissions_input.rs @@ -15,7 +15,7 @@ pub struct DescribeNetworkInterfacePermissionsInput { ///
  • ///

    network-interface-permission.aws-account-id - The Amazon Web Services account ID.

  • ///
  • - ///

    network-interface-permission.aws-service - The Amazon Web Service.

  • + ///

    network-interface-permission.aws-service - The Amazon Web Services service.

    ///
  • ///

    network-interface-permission.permission - The type of permission (INSTANCE-ATTACH | EIP-ASSOCIATE).

  • /// @@ -41,7 +41,7 @@ impl DescribeNetworkInterfacePermissionsInput { ///
  • ///

    network-interface-permission.aws-account-id - The Amazon Web Services account ID.

  • ///
  • - ///

    network-interface-permission.aws-service - The Amazon Web Service.

  • + ///

    network-interface-permission.aws-service - The Amazon Web Services service.

    ///
  • ///

    network-interface-permission.permission - The type of permission (INSTANCE-ATTACH | EIP-ASSOCIATE).

  • /// @@ -109,7 +109,7 @@ impl DescribeNetworkInterfacePermissionsInputBuilder { ///
  • ///

    network-interface-permission.aws-account-id - The Amazon Web Services account ID.

  • ///
  • - ///

    network-interface-permission.aws-service - The Amazon Web Service.

  • + ///

    network-interface-permission.aws-service - The Amazon Web Services service.

    ///
  • ///

    network-interface-permission.permission - The type of permission (INSTANCE-ATTACH | EIP-ASSOCIATE).

  • /// @@ -128,7 +128,7 @@ impl DescribeNetworkInterfacePermissionsInputBuilder { ///
  • ///

    network-interface-permission.aws-account-id - The Amazon Web Services account ID.

  • ///
  • - ///

    network-interface-permission.aws-service - The Amazon Web Service.

  • + ///

    network-interface-permission.aws-service - The Amazon Web Services service.

    ///
  • ///

    network-interface-permission.permission - The type of permission (INSTANCE-ATTACH | EIP-ASSOCIATE).

  • /// @@ -145,7 +145,7 @@ impl DescribeNetworkInterfacePermissionsInputBuilder { ///
  • ///

    network-interface-permission.aws-account-id - The Amazon Web Services account ID.

  • ///
  • - ///

    network-interface-permission.aws-service - The Amazon Web Service.

  • + ///

    network-interface-permission.aws-service - The Amazon Web Services service.

    ///
  • ///

    network-interface-permission.permission - The type of permission (INSTANCE-ATTACH | EIP-ASSOCIATE).

  • /// diff --git a/sdk/ec2/src/operation/describe_network_interface_permissions/builders.rs b/sdk/ec2/src/operation/describe_network_interface_permissions/builders.rs index 6fd91d7cde3e..1133f3079844 100644 --- a/sdk/ec2/src/operation/describe_network_interface_permissions/builders.rs +++ b/sdk/ec2/src/operation/describe_network_interface_permissions/builders.rs @@ -151,7 +151,7 @@ impl DescribeNetworkInterfacePermissionsFluentBuilder { ///
  • ///

    network-interface-permission.aws-account-id - The Amazon Web Services account ID.

  • ///
  • - ///

    network-interface-permission.aws-service - The Amazon Web Service.

  • + ///

    network-interface-permission.aws-service - The Amazon Web Services service.

    ///
  • ///

    network-interface-permission.permission - The type of permission (INSTANCE-ATTACH | EIP-ASSOCIATE).

  • /// @@ -168,7 +168,7 @@ impl DescribeNetworkInterfacePermissionsFluentBuilder { ///
  • ///

    network-interface-permission.aws-account-id - The Amazon Web Services account ID.

  • ///
  • - ///

    network-interface-permission.aws-service - The Amazon Web Service.

  • + ///

    network-interface-permission.aws-service - The Amazon Web Services service.

    ///
  • ///

    network-interface-permission.permission - The type of permission (INSTANCE-ATTACH | EIP-ASSOCIATE).

  • /// @@ -185,7 +185,7 @@ impl DescribeNetworkInterfacePermissionsFluentBuilder { ///
  • ///

    network-interface-permission.aws-account-id - The Amazon Web Services account ID.

  • ///
  • - ///

    network-interface-permission.aws-service - The Amazon Web Service.

  • + ///

    network-interface-permission.aws-service - The Amazon Web Services service.

    ///
  • ///

    network-interface-permission.permission - The type of permission (INSTANCE-ATTACH | EIP-ASSOCIATE).

  • /// diff --git a/sdk/ec2/src/operation/describe_network_interfaces/_describe_network_interfaces_input.rs b/sdk/ec2/src/operation/describe_network_interfaces/_describe_network_interfaces_input.rs index 65e84fe15dc7..97a3853dde89 100644 --- a/sdk/ec2/src/operation/describe_network_interfaces/_describe_network_interfaces_input.rs +++ b/sdk/ec2/src/operation/describe_network_interfaces/_describe_network_interfaces_input.rs @@ -61,7 +61,7 @@ pub struct DescribeNetworkInterfacesInput { ///
  • ///

    requester-id - The alias or Amazon Web Services account ID of the principal or service that created the network interface.

  • ///
  • - ///

    requester-managed - Indicates whether the network interface is being managed by an Amazon Web Service (for example, Amazon Web Services Management Console, Auto Scaling, and so on).

  • + ///

    requester-managed - Indicates whether the network interface is being managed by an Amazon Web Services service (for example, Amazon Web Services Management Console, Auto Scaling, and so on).

    ///
  • ///

    source-dest-check - Indicates whether the network interface performs source/destination checking. A value of true means checking is enabled, and false means checking is disabled. The value must be false for the network interface to perform network address translation (NAT) in your VPC.

  • ///
  • @@ -150,7 +150,7 @@ impl DescribeNetworkInterfacesInput { ///
  • ///

    requester-id - The alias or Amazon Web Services account ID of the principal or service that created the network interface.

  • ///
  • - ///

    requester-managed - Indicates whether the network interface is being managed by an Amazon Web Service (for example, Amazon Web Services Management Console, Auto Scaling, and so on).

  • + ///

    requester-managed - Indicates whether the network interface is being managed by an Amazon Web Services service (for example, Amazon Web Services Management Console, Auto Scaling, and so on).

    ///
  • ///

    source-dest-check - Indicates whether the network interface performs source/destination checking. A value of true means checking is enabled, and false means checking is disabled. The value must be false for the network interface to perform network address translation (NAT) in your VPC.

  • ///
  • @@ -274,7 +274,7 @@ impl DescribeNetworkInterfacesInputBuilder { ///
  • ///

    requester-id - The alias or Amazon Web Services account ID of the principal or service that created the network interface.

  • ///
  • - ///

    requester-managed - Indicates whether the network interface is being managed by an Amazon Web Service (for example, Amazon Web Services Management Console, Auto Scaling, and so on).

  • + ///

    requester-managed - Indicates whether the network interface is being managed by an Amazon Web Services service (for example, Amazon Web Services Management Console, Auto Scaling, and so on).

    ///
  • ///

    source-dest-check - Indicates whether the network interface performs source/destination checking. A value of true means checking is enabled, and false means checking is disabled. The value must be false for the network interface to perform network address translation (NAT) in your VPC.

  • ///
  • @@ -357,7 +357,7 @@ impl DescribeNetworkInterfacesInputBuilder { ///
  • ///

    requester-id - The alias or Amazon Web Services account ID of the principal or service that created the network interface.

  • ///
  • - ///

    requester-managed - Indicates whether the network interface is being managed by an Amazon Web Service (for example, Amazon Web Services Management Console, Auto Scaling, and so on).

  • + ///

    requester-managed - Indicates whether the network interface is being managed by an Amazon Web Services service (for example, Amazon Web Services Management Console, Auto Scaling, and so on).

    ///
  • ///

    source-dest-check - Indicates whether the network interface performs source/destination checking. A value of true means checking is enabled, and false means checking is disabled. The value must be false for the network interface to perform network address translation (NAT) in your VPC.

  • ///
  • @@ -438,7 +438,7 @@ impl DescribeNetworkInterfacesInputBuilder { ///
  • ///

    requester-id - The alias or Amazon Web Services account ID of the principal or service that created the network interface.

  • ///
  • - ///

    requester-managed - Indicates whether the network interface is being managed by an Amazon Web Service (for example, Amazon Web Services Management Console, Auto Scaling, and so on).

  • + ///

    requester-managed - Indicates whether the network interface is being managed by an Amazon Web Services service (for example, Amazon Web Services Management Console, Auto Scaling, and so on).

    ///
  • ///

    source-dest-check - Indicates whether the network interface performs source/destination checking. A value of true means checking is enabled, and false means checking is disabled. The value must be false for the network interface to perform network address translation (NAT) in your VPC.

  • ///
  • diff --git a/sdk/ec2/src/operation/describe_network_interfaces/builders.rs b/sdk/ec2/src/operation/describe_network_interfaces/builders.rs index 5ebaf8c62f73..111a21f06f92 100644 --- a/sdk/ec2/src/operation/describe_network_interfaces/builders.rs +++ b/sdk/ec2/src/operation/describe_network_interfaces/builders.rs @@ -179,7 +179,7 @@ impl DescribeNetworkInterfacesFluentBuilder { ///
  • ///

    requester-id - The alias or Amazon Web Services account ID of the principal or service that created the network interface.

  • ///
  • - ///

    requester-managed - Indicates whether the network interface is being managed by an Amazon Web Service (for example, Amazon Web Services Management Console, Auto Scaling, and so on).

  • + ///

    requester-managed - Indicates whether the network interface is being managed by an Amazon Web Services service (for example, Amazon Web Services Management Console, Auto Scaling, and so on).

    ///
  • ///

    source-dest-check - Indicates whether the network interface performs source/destination checking. A value of true means checking is enabled, and false means checking is disabled. The value must be false for the network interface to perform network address translation (NAT) in your VPC.

  • ///
  • @@ -260,7 +260,7 @@ impl DescribeNetworkInterfacesFluentBuilder { ///
  • ///

    requester-id - The alias or Amazon Web Services account ID of the principal or service that created the network interface.

  • ///
  • - ///

    requester-managed - Indicates whether the network interface is being managed by an Amazon Web Service (for example, Amazon Web Services Management Console, Auto Scaling, and so on).

  • + ///

    requester-managed - Indicates whether the network interface is being managed by an Amazon Web Services service (for example, Amazon Web Services Management Console, Auto Scaling, and so on).

    ///
  • ///

    source-dest-check - Indicates whether the network interface performs source/destination checking. A value of true means checking is enabled, and false means checking is disabled. The value must be false for the network interface to perform network address translation (NAT) in your VPC.

  • ///
  • @@ -341,7 +341,7 @@ impl DescribeNetworkInterfacesFluentBuilder { ///
  • ///

    requester-id - The alias or Amazon Web Services account ID of the principal or service that created the network interface.

  • ///
  • - ///

    requester-managed - Indicates whether the network interface is being managed by an Amazon Web Service (for example, Amazon Web Services Management Console, Auto Scaling, and so on).

  • + ///

    requester-managed - Indicates whether the network interface is being managed by an Amazon Web Services service (for example, Amazon Web Services Management Console, Auto Scaling, and so on).

    ///
  • ///

    source-dest-check - Indicates whether the network interface performs source/destination checking. A value of true means checking is enabled, and false means checking is disabled. The value must be false for the network interface to perform network address translation (NAT) in your VPC.

  • ///
  • diff --git a/sdk/ec2/src/operation/describe_route_tables/_describe_route_tables_input.rs b/sdk/ec2/src/operation/describe_route_tables/_describe_route_tables_input.rs index 4fb0e0f01986..f01ba0e4b806 100644 --- a/sdk/ec2/src/operation/describe_route_tables/_describe_route_tables_input.rs +++ b/sdk/ec2/src/operation/describe_route_tables/_describe_route_tables_input.rs @@ -24,7 +24,7 @@ pub struct DescribeRouteTablesInput { ///
  • ///

    route.destination-ipv6-cidr-block - The IPv6 CIDR range specified in a route in the route table.

  • ///
  • - ///

    route.destination-prefix-list-id - The ID (prefix) of the Amazon Web Service specified in a route in the table.

  • + ///

    route.destination-prefix-list-id - The ID (prefix) of the Amazon Web Services service specified in a route in the table.

    ///
  • ///

    route.egress-only-internet-gateway-id - The ID of an egress-only Internet gateway specified in a route in the route table.

  • ///
  • @@ -86,7 +86,7 @@ impl DescribeRouteTablesInput { ///
  • ///

    route.destination-ipv6-cidr-block - The IPv6 CIDR range specified in a route in the route table.

  • ///
  • - ///

    route.destination-prefix-list-id - The ID (prefix) of the Amazon Web Service specified in a route in the table.

  • + ///

    route.destination-prefix-list-id - The ID (prefix) of the Amazon Web Services service specified in a route in the table.

    ///
  • ///

    route.egress-only-internet-gateway-id - The ID of an egress-only Internet gateway specified in a route in the route table.

  • ///
  • @@ -183,7 +183,7 @@ impl DescribeRouteTablesInputBuilder { ///
  • ///

    route.destination-ipv6-cidr-block - The IPv6 CIDR range specified in a route in the route table.

  • ///
  • - ///

    route.destination-prefix-list-id - The ID (prefix) of the Amazon Web Service specified in a route in the table.

  • + ///

    route.destination-prefix-list-id - The ID (prefix) of the Amazon Web Services service specified in a route in the table.

    ///
  • ///

    route.egress-only-internet-gateway-id - The ID of an egress-only Internet gateway specified in a route in the route table.

  • ///
  • @@ -240,7 +240,7 @@ impl DescribeRouteTablesInputBuilder { ///
  • ///

    route.destination-ipv6-cidr-block - The IPv6 CIDR range specified in a route in the route table.

  • ///
  • - ///

    route.destination-prefix-list-id - The ID (prefix) of the Amazon Web Service specified in a route in the table.

  • + ///

    route.destination-prefix-list-id - The ID (prefix) of the Amazon Web Services service specified in a route in the table.

    ///
  • ///

    route.egress-only-internet-gateway-id - The ID of an egress-only Internet gateway specified in a route in the route table.

  • ///
  • @@ -295,7 +295,7 @@ impl DescribeRouteTablesInputBuilder { ///
  • ///

    route.destination-ipv6-cidr-block - The IPv6 CIDR range specified in a route in the route table.

  • ///
  • - ///

    route.destination-prefix-list-id - The ID (prefix) of the Amazon Web Service specified in a route in the table.

  • + ///

    route.destination-prefix-list-id - The ID (prefix) of the Amazon Web Services service specified in a route in the table.

    ///
  • ///

    route.egress-only-internet-gateway-id - The ID of an egress-only Internet gateway specified in a route in the route table.

  • ///
  • diff --git a/sdk/ec2/src/operation/describe_route_tables/builders.rs b/sdk/ec2/src/operation/describe_route_tables/builders.rs index 68815089b793..da6030c5c2c1 100644 --- a/sdk/ec2/src/operation/describe_route_tables/builders.rs +++ b/sdk/ec2/src/operation/describe_route_tables/builders.rs @@ -142,7 +142,7 @@ impl DescribeRouteTablesFluentBuilder { ///
  • ///

    route.destination-ipv6-cidr-block - The IPv6 CIDR range specified in a route in the route table.

  • ///
  • - ///

    route.destination-prefix-list-id - The ID (prefix) of the Amazon Web Service specified in a route in the table.

  • + ///

    route.destination-prefix-list-id - The ID (prefix) of the Amazon Web Services service specified in a route in the table.

    ///
  • ///

    route.egress-only-internet-gateway-id - The ID of an egress-only Internet gateway specified in a route in the route table.

  • ///
  • @@ -197,7 +197,7 @@ impl DescribeRouteTablesFluentBuilder { ///
  • ///

    route.destination-ipv6-cidr-block - The IPv6 CIDR range specified in a route in the route table.

  • ///
  • - ///

    route.destination-prefix-list-id - The ID (prefix) of the Amazon Web Service specified in a route in the table.

  • + ///

    route.destination-prefix-list-id - The ID (prefix) of the Amazon Web Services service specified in a route in the table.

    ///
  • ///

    route.egress-only-internet-gateway-id - The ID of an egress-only Internet gateway specified in a route in the route table.

  • ///
  • @@ -252,7 +252,7 @@ impl DescribeRouteTablesFluentBuilder { ///
  • ///

    route.destination-ipv6-cidr-block - The IPv6 CIDR range specified in a route in the route table.

  • ///
  • - ///

    route.destination-prefix-list-id - The ID (prefix) of the Amazon Web Service specified in a route in the table.

  • + ///

    route.destination-prefix-list-id - The ID (prefix) of the Amazon Web Services service specified in a route in the table.

    ///
  • ///

    route.egress-only-internet-gateway-id - The ID of an egress-only Internet gateway specified in a route in the route table.

  • ///
  • diff --git a/sdk/ec2/src/operation/modify_capacity_reservation/_modify_capacity_reservation_input.rs b/sdk/ec2/src/operation/modify_capacity_reservation/_modify_capacity_reservation_input.rs index ef30ba820938..e08165ed41e9 100644 --- a/sdk/ec2/src/operation/modify_capacity_reservation/_modify_capacity_reservation_input.rs +++ b/sdk/ec2/src/operation/modify_capacity_reservation/_modify_capacity_reservation_input.rs @@ -25,6 +25,9 @@ pub struct ModifyCapacityReservationInput { pub dry_run: ::std::option::Option, ///

    Reserved for future use.

    pub additional_info: ::std::option::Option<::std::string::String>, + ///

    The matching criteria (instance eligibility) that you want to use in the modified Capacity Reservation. If you change the instance eligibility of an existing Capacity Reservation from targeted to open, any running instances that match the attributes of the Capacity Reservation, have the CapacityReservationPreference set to open, and are not yet running in the Capacity Reservation, will automatically use the modified Capacity Reservation.

    + ///

    To modify the instance eligibility, the Capacity Reservation must be completely idle (zero usage).

    + pub instance_match_criteria: ::std::option::Option, } impl ModifyCapacityReservationInput { ///

    The ID of the Capacity Reservation.

    @@ -63,6 +66,11 @@ impl ModifyCapacityReservationInput { pub fn additional_info(&self) -> ::std::option::Option<&str> { self.additional_info.as_deref() } + ///

    The matching criteria (instance eligibility) that you want to use in the modified Capacity Reservation. If you change the instance eligibility of an existing Capacity Reservation from targeted to open, any running instances that match the attributes of the Capacity Reservation, have the CapacityReservationPreference set to open, and are not yet running in the Capacity Reservation, will automatically use the modified Capacity Reservation.

    + ///

    To modify the instance eligibility, the Capacity Reservation must be completely idle (zero usage).

    + pub fn instance_match_criteria(&self) -> ::std::option::Option<&crate::types::InstanceMatchCriteria> { + self.instance_match_criteria.as_ref() + } } impl ModifyCapacityReservationInput { /// Creates a new builder-style object to manufacture [`ModifyCapacityReservationInput`](crate::operation::modify_capacity_reservation::ModifyCapacityReservationInput). @@ -82,6 +90,7 @@ pub struct ModifyCapacityReservationInputBuilder { pub(crate) accept: ::std::option::Option, pub(crate) dry_run: ::std::option::Option, pub(crate) additional_info: ::std::option::Option<::std::string::String>, + pub(crate) instance_match_criteria: ::std::option::Option, } impl ModifyCapacityReservationInputBuilder { ///

    The ID of the Capacity Reservation.

    @@ -207,6 +216,23 @@ impl ModifyCapacityReservationInputBuilder { pub fn get_additional_info(&self) -> &::std::option::Option<::std::string::String> { &self.additional_info } + ///

    The matching criteria (instance eligibility) that you want to use in the modified Capacity Reservation. If you change the instance eligibility of an existing Capacity Reservation from targeted to open, any running instances that match the attributes of the Capacity Reservation, have the CapacityReservationPreference set to open, and are not yet running in the Capacity Reservation, will automatically use the modified Capacity Reservation.

    + ///

    To modify the instance eligibility, the Capacity Reservation must be completely idle (zero usage).

    + pub fn instance_match_criteria(mut self, input: crate::types::InstanceMatchCriteria) -> Self { + self.instance_match_criteria = ::std::option::Option::Some(input); + self + } + ///

    The matching criteria (instance eligibility) that you want to use in the modified Capacity Reservation. If you change the instance eligibility of an existing Capacity Reservation from targeted to open, any running instances that match the attributes of the Capacity Reservation, have the CapacityReservationPreference set to open, and are not yet running in the Capacity Reservation, will automatically use the modified Capacity Reservation.

    + ///

    To modify the instance eligibility, the Capacity Reservation must be completely idle (zero usage).

    + pub fn set_instance_match_criteria(mut self, input: ::std::option::Option) -> Self { + self.instance_match_criteria = input; + self + } + ///

    The matching criteria (instance eligibility) that you want to use in the modified Capacity Reservation. If you change the instance eligibility of an existing Capacity Reservation from targeted to open, any running instances that match the attributes of the Capacity Reservation, have the CapacityReservationPreference set to open, and are not yet running in the Capacity Reservation, will automatically use the modified Capacity Reservation.

    + ///

    To modify the instance eligibility, the Capacity Reservation must be completely idle (zero usage).

    + pub fn get_instance_match_criteria(&self) -> &::std::option::Option { + &self.instance_match_criteria + } /// Consumes the builder and constructs a [`ModifyCapacityReservationInput`](crate::operation::modify_capacity_reservation::ModifyCapacityReservationInput). pub fn build( self, @@ -222,6 +248,7 @@ impl ModifyCapacityReservationInputBuilder { accept: self.accept, dry_run: self.dry_run, additional_info: self.additional_info, + instance_match_criteria: self.instance_match_criteria, }) } } diff --git a/sdk/ec2/src/operation/modify_capacity_reservation/builders.rs b/sdk/ec2/src/operation/modify_capacity_reservation/builders.rs index 0d47812889b4..ef6fbfb38dce 100644 --- a/sdk/ec2/src/operation/modify_capacity_reservation/builders.rs +++ b/sdk/ec2/src/operation/modify_capacity_reservation/builders.rs @@ -22,7 +22,7 @@ impl crate::operation::modify_capacity_reservation::builders::ModifyCapacityRese } /// Fluent builder constructing a request to `ModifyCapacityReservation`. /// -///

    Modifies a Capacity Reservation's capacity and the conditions under which it is to be released. You cannot change a Capacity Reservation's instance type, EBS optimization, instance store settings, platform, Availability Zone, or instance eligibility. If you need to modify any of these attributes, we recommend that you cancel the Capacity Reservation, and then create a new one with the required attributes.

    +///

    Modifies a Capacity Reservation's capacity, instance eligibility, and the conditions under which it is to be released. You can't modify a Capacity Reservation's instance type, EBS optimization, platform, instance store settings, Availability Zone, or tenancy. If you need to modify any of these attributes, we recommend that you cancel the Capacity Reservation, and then create a new one with the required attributes. For more information, see Modify an active Capacity Reservation.

    #[derive(::std::clone::Clone, ::std::fmt::Debug)] pub struct ModifyCapacityReservationFluentBuilder { handle: ::std::sync::Arc, @@ -230,4 +230,21 @@ impl ModifyCapacityReservationFluentBuilder { pub fn get_additional_info(&self) -> &::std::option::Option<::std::string::String> { self.inner.get_additional_info() } + ///

    The matching criteria (instance eligibility) that you want to use in the modified Capacity Reservation. If you change the instance eligibility of an existing Capacity Reservation from targeted to open, any running instances that match the attributes of the Capacity Reservation, have the CapacityReservationPreference set to open, and are not yet running in the Capacity Reservation, will automatically use the modified Capacity Reservation.

    + ///

    To modify the instance eligibility, the Capacity Reservation must be completely idle (zero usage).

    + pub fn instance_match_criteria(mut self, input: crate::types::InstanceMatchCriteria) -> Self { + self.inner = self.inner.instance_match_criteria(input); + self + } + ///

    The matching criteria (instance eligibility) that you want to use in the modified Capacity Reservation. If you change the instance eligibility of an existing Capacity Reservation from targeted to open, any running instances that match the attributes of the Capacity Reservation, have the CapacityReservationPreference set to open, and are not yet running in the Capacity Reservation, will automatically use the modified Capacity Reservation.

    + ///

    To modify the instance eligibility, the Capacity Reservation must be completely idle (zero usage).

    + pub fn set_instance_match_criteria(mut self, input: ::std::option::Option) -> Self { + self.inner = self.inner.set_instance_match_criteria(input); + self + } + ///

    The matching criteria (instance eligibility) that you want to use in the modified Capacity Reservation. If you change the instance eligibility of an existing Capacity Reservation from targeted to open, any running instances that match the attributes of the Capacity Reservation, have the CapacityReservationPreference set to open, and are not yet running in the Capacity Reservation, will automatically use the modified Capacity Reservation.

    + ///

    To modify the instance eligibility, the Capacity Reservation must be completely idle (zero usage).

    + pub fn get_instance_match_criteria(&self) -> &::std::option::Option { + self.inner.get_instance_match_criteria() + } } diff --git a/sdk/ec2/src/operation/move_capacity_reservation_instances.rs b/sdk/ec2/src/operation/move_capacity_reservation_instances.rs new file mode 100644 index 000000000000..c7bb524846eb --- /dev/null +++ b/sdk/ec2/src/operation/move_capacity_reservation_instances.rs @@ -0,0 +1,366 @@ +// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. +/// Orchestration and serialization glue logic for `MoveCapacityReservationInstances`. +#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)] +#[non_exhaustive] +pub struct MoveCapacityReservationInstances; +impl MoveCapacityReservationInstances { + /// Creates a new `MoveCapacityReservationInstances` + pub fn new() -> Self { + Self + } + pub(crate) async fn orchestrate( + runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins, + input: crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesInput, + ) -> ::std::result::Result< + crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesOutput, + ::aws_smithy_runtime_api::client::result::SdkError< + crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesError, + ::aws_smithy_runtime_api::client::orchestrator::HttpResponse, + >, + > { + let map_err = |err: ::aws_smithy_runtime_api::client::result::SdkError< + ::aws_smithy_runtime_api::client::interceptors::context::Error, + ::aws_smithy_runtime_api::client::orchestrator::HttpResponse, + >| { + err.map_service_error(|err| { + err.downcast::() + .expect("correct error type") + }) + }; + let context = Self::orchestrate_with_stop_point(runtime_plugins, input, ::aws_smithy_runtime::client::orchestrator::StopPoint::None) + .await + .map_err(map_err)?; + let output = context.finalize().map_err(map_err)?; + ::std::result::Result::Ok( + output + .downcast::() + .expect("correct output type"), + ) + } + + pub(crate) async fn orchestrate_with_stop_point( + runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins, + input: crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesInput, + stop_point: ::aws_smithy_runtime::client::orchestrator::StopPoint, + ) -> ::std::result::Result< + ::aws_smithy_runtime_api::client::interceptors::context::InterceptorContext, + ::aws_smithy_runtime_api::client::result::SdkError< + ::aws_smithy_runtime_api::client::interceptors::context::Error, + ::aws_smithy_runtime_api::client::orchestrator::HttpResponse, + >, + > { + let input = ::aws_smithy_runtime_api::client::interceptors::context::Input::erase(input); + ::aws_smithy_runtime::client::orchestrator::invoke_with_stop_point( + "ec2", + "MoveCapacityReservationInstances", + input, + runtime_plugins, + stop_point, + ) + .await + } + + pub(crate) fn operation_runtime_plugins( + client_runtime_plugins: ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins, + client_config: &crate::config::Config, + config_override: ::std::option::Option, + ) -> ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins { + let mut runtime_plugins = client_runtime_plugins.with_operation_plugin(Self::new()); + runtime_plugins = runtime_plugins + .with_operation_plugin(crate::client_idempotency_token::IdempotencyTokenRuntimePlugin::new( + |token_provider, input| { + let input: &mut crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesInput = + input.downcast_mut().expect("correct type"); + if input.client_token.is_none() { + input.client_token = ::std::option::Option::Some(token_provider.make_idempotency_token()); + } + }, + )) + .with_client_plugin(crate::auth_plugin::DefaultAuthOptionsPlugin::new(vec![ + ::aws_runtime::auth::sigv4::SCHEME_ID, + ])); + if let ::std::option::Option::Some(config_override) = config_override { + for plugin in config_override.runtime_plugins.iter().cloned() { + runtime_plugins = runtime_plugins.with_operation_plugin(plugin); + } + runtime_plugins = runtime_plugins.with_operation_plugin(crate::config::ConfigOverrideRuntimePlugin::new( + config_override, + client_config.config.clone(), + &client_config.runtime_components, + )); + } + runtime_plugins + } +} +impl ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugin for MoveCapacityReservationInstances { + fn config(&self) -> ::std::option::Option<::aws_smithy_types::config_bag::FrozenLayer> { + let mut cfg = ::aws_smithy_types::config_bag::Layer::new("MoveCapacityReservationInstances"); + + cfg.store_put(::aws_smithy_runtime_api::client::ser_de::SharedRequestSerializer::new( + MoveCapacityReservationInstancesRequestSerializer, + )); + cfg.store_put(::aws_smithy_runtime_api::client::ser_de::SharedResponseDeserializer::new( + MoveCapacityReservationInstancesResponseDeserializer, + )); + + cfg.store_put(::aws_smithy_runtime_api::client::auth::AuthSchemeOptionResolverParams::new( + ::aws_smithy_runtime_api::client::auth::static_resolver::StaticAuthSchemeOptionResolverParams::new(), + )); + + cfg.store_put(::aws_smithy_runtime_api::client::orchestrator::Metadata::new( + "MoveCapacityReservationInstances", + "ec2", + )); + let mut signing_options = ::aws_runtime::auth::SigningOptions::default(); + signing_options.double_uri_encode = true; + signing_options.content_sha256_header = false; + signing_options.normalize_uri_path = true; + signing_options.payload_override = None; + + cfg.store_put(::aws_runtime::auth::SigV4OperationSigningConfig { + signing_options, + ..::std::default::Default::default() + }); + + ::std::option::Option::Some(cfg.freeze()) + } + + fn runtime_components( + &self, + _: &::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder, + ) -> ::std::borrow::Cow<'_, ::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder> { + #[allow(unused_mut)] + let mut rcb = ::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder::new("MoveCapacityReservationInstances") + .with_interceptor(::aws_smithy_runtime::client::stalled_stream_protection::StalledStreamProtectionInterceptor::default()) + .with_interceptor(MoveCapacityReservationInstancesEndpointParamsInterceptor) + .with_retry_classifier(::aws_smithy_runtime::client::retries::classifiers::TransientErrorClassifier::< + crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesError, + >::new()) + .with_retry_classifier(::aws_smithy_runtime::client::retries::classifiers::ModeledAsRetryableClassifier::< + crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesError, + >::new()) + .with_retry_classifier(::aws_runtime::retries::classifiers::AwsErrorCodeClassifier::< + crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesError, + >::new()); + + ::std::borrow::Cow::Owned(rcb) + } +} + +#[derive(Debug)] +struct MoveCapacityReservationInstancesResponseDeserializer; +impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for MoveCapacityReservationInstancesResponseDeserializer { + fn deserialize_nonstreaming( + &self, + response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse, + ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError { + let (success, status) = (response.status().is_success(), response.status().as_u16()); + let headers = response.headers(); + let body = response.body().bytes().expect("body loaded"); + #[allow(unused_mut)] + let mut force_error = false; + ::tracing::debug!(request_id = ?::aws_types::request_id::RequestId::request_id(response)); + let parse_result = if !success && status != 200 || force_error { + crate::protocol_serde::shape_move_capacity_reservation_instances::de_move_capacity_reservation_instances_http_error(status, headers, body) + } else { + crate::protocol_serde::shape_move_capacity_reservation_instances::de_move_capacity_reservation_instances_http_response( + status, headers, body, + ) + }; + crate::protocol_serde::type_erase_result(parse_result) + } +} +#[derive(Debug)] +struct MoveCapacityReservationInstancesRequestSerializer; +impl ::aws_smithy_runtime_api::client::ser_de::SerializeRequest for MoveCapacityReservationInstancesRequestSerializer { + #[allow(unused_mut, clippy::let_and_return, clippy::needless_borrow, clippy::useless_conversion)] + fn serialize_input( + &self, + input: ::aws_smithy_runtime_api::client::interceptors::context::Input, + _cfg: &mut ::aws_smithy_types::config_bag::ConfigBag, + ) -> ::std::result::Result<::aws_smithy_runtime_api::client::orchestrator::HttpRequest, ::aws_smithy_runtime_api::box_error::BoxError> { + let input = input + .downcast::() + .expect("correct type"); + let _header_serialization_settings = _cfg + .load::() + .cloned() + .unwrap_or_default(); + let mut request_builder = { + fn uri_base( + _input: &crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesInput, + output: &mut ::std::string::String, + ) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::BuildError> { + use ::std::fmt::Write as _; + ::std::write!(output, "/").expect("formatting should succeed"); + ::std::result::Result::Ok(()) + } + #[allow(clippy::unnecessary_wraps)] + fn update_http_builder( + input: &crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesInput, + builder: ::http::request::Builder, + ) -> ::std::result::Result<::http::request::Builder, ::aws_smithy_types::error::operation::BuildError> { + let mut uri = ::std::string::String::new(); + uri_base(input, &mut uri)?; + ::std::result::Result::Ok(builder.method("POST").uri(uri)) + } + let mut builder = update_http_builder(&input, ::http::request::Builder::new())?; + builder = _header_serialization_settings.set_default_header(builder, ::http::header::CONTENT_TYPE, "application/x-www-form-urlencoded"); + builder + }; + let body = ::aws_smithy_types::body::SdkBody::from( + crate::protocol_serde::shape_move_capacity_reservation_instances_input::ser_move_capacity_reservation_instances_input_input_input( + &input, + )?, + ); + if let Some(content_length) = body.content_length() { + let content_length = content_length.to_string(); + request_builder = _header_serialization_settings.set_default_header(request_builder, ::http::header::CONTENT_LENGTH, &content_length); + } + ::std::result::Result::Ok(request_builder.body(body).expect("valid request").try_into().unwrap()) + } +} +#[derive(Debug)] +struct MoveCapacityReservationInstancesEndpointParamsInterceptor; + +impl ::aws_smithy_runtime_api::client::interceptors::Intercept for MoveCapacityReservationInstancesEndpointParamsInterceptor { + fn name(&self) -> &'static str { + "MoveCapacityReservationInstancesEndpointParamsInterceptor" + } + + fn read_before_execution( + &self, + context: &::aws_smithy_runtime_api::client::interceptors::context::BeforeSerializationInterceptorContextRef< + '_, + ::aws_smithy_runtime_api::client::interceptors::context::Input, + ::aws_smithy_runtime_api::client::interceptors::context::Output, + ::aws_smithy_runtime_api::client::interceptors::context::Error, + >, + cfg: &mut ::aws_smithy_types::config_bag::ConfigBag, + ) -> ::std::result::Result<(), ::aws_smithy_runtime_api::box_error::BoxError> { + let _input = context + .input() + .downcast_ref::() + .ok_or("failed to downcast to MoveCapacityReservationInstancesInput")?; + + let params = crate::config::endpoint::Params::builder() + .set_region(cfg.load::<::aws_types::region::Region>().map(|r| r.as_ref().to_owned())) + .set_use_dual_stack(cfg.load::<::aws_types::endpoint_config::UseDualStack>().map(|ty| ty.0)) + .set_use_fips(cfg.load::<::aws_types::endpoint_config::UseFips>().map(|ty| ty.0)) + .set_endpoint(cfg.load::<::aws_types::endpoint_config::EndpointUrl>().map(|ty| ty.0.clone())) + .build() + .map_err(|err| { + ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err) + })?; + cfg.interceptor_state() + .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params)); + ::std::result::Result::Ok(()) + } +} + +// The get_* functions below are generated from JMESPath expressions in the +// operationContextParams trait. They target the operation's input shape. + +/// Error type for the `MoveCapacityReservationInstancesError` operation. +#[non_exhaustive] +#[derive(::std::fmt::Debug)] +pub enum MoveCapacityReservationInstancesError { + /// An unexpected error occurred (e.g., invalid JSON returned by the service or an unknown error code). + #[deprecated(note = "Matching `Unhandled` directly is not forwards compatible. Instead, match using a \ + variable wildcard pattern and check `.code()`: + \ +    `err if err.code() == Some(\"SpecificExceptionCode\") => { /* handle the error */ }` + \ + See [`ProvideErrorMetadata`](#impl-ProvideErrorMetadata-for-MoveCapacityReservationInstancesError) for what information is available for the error.")] + Unhandled(crate::error::sealed_unhandled::Unhandled), +} +impl MoveCapacityReservationInstancesError { + /// Creates the `MoveCapacityReservationInstancesError::Unhandled` variant from any error type. + pub fn unhandled( + err: impl ::std::convert::Into<::std::boxed::Box>, + ) -> Self { + Self::Unhandled(crate::error::sealed_unhandled::Unhandled { + source: err.into(), + meta: ::std::default::Default::default(), + }) + } + + /// Creates the `MoveCapacityReservationInstancesError::Unhandled` variant from an [`ErrorMetadata`](::aws_smithy_types::error::ErrorMetadata). + pub fn generic(err: ::aws_smithy_types::error::ErrorMetadata) -> Self { + Self::Unhandled(crate::error::sealed_unhandled::Unhandled { + source: err.clone().into(), + meta: err, + }) + } + /// + /// Returns error metadata, which includes the error code, message, + /// request ID, and potentially additional information. + /// + pub fn meta(&self) -> &::aws_smithy_types::error::ErrorMetadata { + match self { + Self::Unhandled(e) => &e.meta, + } + } +} +impl ::std::error::Error for MoveCapacityReservationInstancesError { + fn source(&self) -> ::std::option::Option<&(dyn ::std::error::Error + 'static)> { + match self { + Self::Unhandled(_inner) => ::std::option::Option::Some(&*_inner.source), + } + } +} +impl ::std::fmt::Display for MoveCapacityReservationInstancesError { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + match self { + Self::Unhandled(_inner) => { + if let ::std::option::Option::Some(code) = ::aws_smithy_types::error::metadata::ProvideErrorMetadata::code(self) { + write!(f, "unhandled error ({code})") + } else { + f.write_str("unhandled error") + } + } + } + } +} +impl ::aws_smithy_types::retry::ProvideErrorKind for MoveCapacityReservationInstancesError { + fn code(&self) -> ::std::option::Option<&str> { + ::aws_smithy_types::error::metadata::ProvideErrorMetadata::code(self) + } + fn retryable_error_kind(&self) -> ::std::option::Option<::aws_smithy_types::retry::ErrorKind> { + ::std::option::Option::None + } +} +impl ::aws_smithy_types::error::metadata::ProvideErrorMetadata for MoveCapacityReservationInstancesError { + fn meta(&self) -> &::aws_smithy_types::error::ErrorMetadata { + match self { + Self::Unhandled(_inner) => &_inner.meta, + } + } +} +impl ::aws_smithy_runtime_api::client::result::CreateUnhandledError for MoveCapacityReservationInstancesError { + fn create_unhandled_error( + source: ::std::boxed::Box, + meta: ::std::option::Option<::aws_smithy_types::error::ErrorMetadata>, + ) -> Self { + Self::Unhandled(crate::error::sealed_unhandled::Unhandled { + source, + meta: meta.unwrap_or_default(), + }) + } +} +impl ::aws_types::request_id::RequestId for crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesError { + fn request_id(&self) -> Option<&str> { + self.meta().request_id() + } +} + +pub use crate::operation::move_capacity_reservation_instances::_move_capacity_reservation_instances_output::MoveCapacityReservationInstancesOutput; + +pub use crate::operation::move_capacity_reservation_instances::_move_capacity_reservation_instances_input::MoveCapacityReservationInstancesInput; + +mod _move_capacity_reservation_instances_input; + +mod _move_capacity_reservation_instances_output; + +/// Builders +pub mod builders; diff --git a/sdk/ec2/src/operation/move_capacity_reservation_instances/_move_capacity_reservation_instances_input.rs b/sdk/ec2/src/operation/move_capacity_reservation_instances/_move_capacity_reservation_instances_input.rs new file mode 100644 index 000000000000..1ac61efefaed --- /dev/null +++ b/sdk/ec2/src/operation/move_capacity_reservation_instances/_move_capacity_reservation_instances_input.rs @@ -0,0 +1,147 @@ +// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. +#[allow(missing_docs)] // documentation missing in model +#[non_exhaustive] +#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)] +pub struct MoveCapacityReservationInstancesInput { + ///

    Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

    + pub dry_run: ::std::option::Option, + ///

    Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.

    + pub client_token: ::std::option::Option<::std::string::String>, + ///

    The ID of the Capacity Reservation from which you want to move capacity.

    + pub source_capacity_reservation_id: ::std::option::Option<::std::string::String>, + ///

    The ID of the Capacity Reservation that you want to move capacity into.

    + pub destination_capacity_reservation_id: ::std::option::Option<::std::string::String>, + ///

    The number of instances that you want to move from the source Capacity Reservation.

    + pub instance_count: ::std::option::Option, +} +impl MoveCapacityReservationInstancesInput { + ///

    Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

    + pub fn dry_run(&self) -> ::std::option::Option { + self.dry_run + } + ///

    Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.

    + pub fn client_token(&self) -> ::std::option::Option<&str> { + self.client_token.as_deref() + } + ///

    The ID of the Capacity Reservation from which you want to move capacity.

    + pub fn source_capacity_reservation_id(&self) -> ::std::option::Option<&str> { + self.source_capacity_reservation_id.as_deref() + } + ///

    The ID of the Capacity Reservation that you want to move capacity into.

    + pub fn destination_capacity_reservation_id(&self) -> ::std::option::Option<&str> { + self.destination_capacity_reservation_id.as_deref() + } + ///

    The number of instances that you want to move from the source Capacity Reservation.

    + pub fn instance_count(&self) -> ::std::option::Option { + self.instance_count + } +} +impl MoveCapacityReservationInstancesInput { + /// Creates a new builder-style object to manufacture [`MoveCapacityReservationInstancesInput`](crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesInput). + pub fn builder() -> crate::operation::move_capacity_reservation_instances::builders::MoveCapacityReservationInstancesInputBuilder { + crate::operation::move_capacity_reservation_instances::builders::MoveCapacityReservationInstancesInputBuilder::default() + } +} + +/// A builder for [`MoveCapacityReservationInstancesInput`](crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesInput). +#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)] +#[non_exhaustive] +pub struct MoveCapacityReservationInstancesInputBuilder { + pub(crate) dry_run: ::std::option::Option, + pub(crate) client_token: ::std::option::Option<::std::string::String>, + pub(crate) source_capacity_reservation_id: ::std::option::Option<::std::string::String>, + pub(crate) destination_capacity_reservation_id: ::std::option::Option<::std::string::String>, + pub(crate) instance_count: ::std::option::Option, +} +impl MoveCapacityReservationInstancesInputBuilder { + ///

    Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

    + pub fn dry_run(mut self, input: bool) -> Self { + self.dry_run = ::std::option::Option::Some(input); + self + } + ///

    Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

    + pub fn set_dry_run(mut self, input: ::std::option::Option) -> Self { + self.dry_run = input; + self + } + ///

    Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

    + pub fn get_dry_run(&self) -> &::std::option::Option { + &self.dry_run + } + ///

    Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.

    + pub fn client_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self { + self.client_token = ::std::option::Option::Some(input.into()); + self + } + ///

    Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.

    + pub fn set_client_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self { + self.client_token = input; + self + } + ///

    Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.

    + pub fn get_client_token(&self) -> &::std::option::Option<::std::string::String> { + &self.client_token + } + ///

    The ID of the Capacity Reservation from which you want to move capacity.

    + /// This field is required. + pub fn source_capacity_reservation_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self { + self.source_capacity_reservation_id = ::std::option::Option::Some(input.into()); + self + } + ///

    The ID of the Capacity Reservation from which you want to move capacity.

    + pub fn set_source_capacity_reservation_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self { + self.source_capacity_reservation_id = input; + self + } + ///

    The ID of the Capacity Reservation from which you want to move capacity.

    + pub fn get_source_capacity_reservation_id(&self) -> &::std::option::Option<::std::string::String> { + &self.source_capacity_reservation_id + } + ///

    The ID of the Capacity Reservation that you want to move capacity into.

    + /// This field is required. + pub fn destination_capacity_reservation_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self { + self.destination_capacity_reservation_id = ::std::option::Option::Some(input.into()); + self + } + ///

    The ID of the Capacity Reservation that you want to move capacity into.

    + pub fn set_destination_capacity_reservation_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self { + self.destination_capacity_reservation_id = input; + self + } + ///

    The ID of the Capacity Reservation that you want to move capacity into.

    + pub fn get_destination_capacity_reservation_id(&self) -> &::std::option::Option<::std::string::String> { + &self.destination_capacity_reservation_id + } + ///

    The number of instances that you want to move from the source Capacity Reservation.

    + /// This field is required. + pub fn instance_count(mut self, input: i32) -> Self { + self.instance_count = ::std::option::Option::Some(input); + self + } + ///

    The number of instances that you want to move from the source Capacity Reservation.

    + pub fn set_instance_count(mut self, input: ::std::option::Option) -> Self { + self.instance_count = input; + self + } + ///

    The number of instances that you want to move from the source Capacity Reservation.

    + pub fn get_instance_count(&self) -> &::std::option::Option { + &self.instance_count + } + /// Consumes the builder and constructs a [`MoveCapacityReservationInstancesInput`](crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesInput). + pub fn build( + self, + ) -> ::std::result::Result< + crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesInput, + ::aws_smithy_types::error::operation::BuildError, + > { + ::std::result::Result::Ok( + crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesInput { + dry_run: self.dry_run, + client_token: self.client_token, + source_capacity_reservation_id: self.source_capacity_reservation_id, + destination_capacity_reservation_id: self.destination_capacity_reservation_id, + instance_count: self.instance_count, + }, + ) + } +} diff --git a/sdk/ec2/src/operation/move_capacity_reservation_instances/_move_capacity_reservation_instances_output.rs b/sdk/ec2/src/operation/move_capacity_reservation_instances/_move_capacity_reservation_instances_output.rs new file mode 100644 index 000000000000..0bc123a7d77a --- /dev/null +++ b/sdk/ec2/src/operation/move_capacity_reservation_instances/_move_capacity_reservation_instances_output.rs @@ -0,0 +1,110 @@ +// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. +#[allow(missing_docs)] // documentation missing in model +#[non_exhaustive] +#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)] +pub struct MoveCapacityReservationInstancesOutput { + ///

    Information about the source Capacity Reservation.

    + pub source_capacity_reservation: ::std::option::Option, + ///

    Information about the destination Capacity Reservation.

    + pub destination_capacity_reservation: ::std::option::Option, + ///

    The number of instances that were moved from the source Capacity Reservation to the destination Capacity Reservation.

    + pub instance_count: ::std::option::Option, + _request_id: Option, +} +impl MoveCapacityReservationInstancesOutput { + ///

    Information about the source Capacity Reservation.

    + pub fn source_capacity_reservation(&self) -> ::std::option::Option<&crate::types::CapacityReservation> { + self.source_capacity_reservation.as_ref() + } + ///

    Information about the destination Capacity Reservation.

    + pub fn destination_capacity_reservation(&self) -> ::std::option::Option<&crate::types::CapacityReservation> { + self.destination_capacity_reservation.as_ref() + } + ///

    The number of instances that were moved from the source Capacity Reservation to the destination Capacity Reservation.

    + pub fn instance_count(&self) -> ::std::option::Option { + self.instance_count + } +} +impl ::aws_types::request_id::RequestId for MoveCapacityReservationInstancesOutput { + fn request_id(&self) -> Option<&str> { + self._request_id.as_deref() + } +} +impl MoveCapacityReservationInstancesOutput { + /// Creates a new builder-style object to manufacture [`MoveCapacityReservationInstancesOutput`](crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesOutput). + pub fn builder() -> crate::operation::move_capacity_reservation_instances::builders::MoveCapacityReservationInstancesOutputBuilder { + crate::operation::move_capacity_reservation_instances::builders::MoveCapacityReservationInstancesOutputBuilder::default() + } +} + +/// A builder for [`MoveCapacityReservationInstancesOutput`](crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesOutput). +#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)] +#[non_exhaustive] +pub struct MoveCapacityReservationInstancesOutputBuilder { + pub(crate) source_capacity_reservation: ::std::option::Option, + pub(crate) destination_capacity_reservation: ::std::option::Option, + pub(crate) instance_count: ::std::option::Option, + _request_id: Option, +} +impl MoveCapacityReservationInstancesOutputBuilder { + ///

    Information about the source Capacity Reservation.

    + pub fn source_capacity_reservation(mut self, input: crate::types::CapacityReservation) -> Self { + self.source_capacity_reservation = ::std::option::Option::Some(input); + self + } + ///

    Information about the source Capacity Reservation.

    + pub fn set_source_capacity_reservation(mut self, input: ::std::option::Option) -> Self { + self.source_capacity_reservation = input; + self + } + ///

    Information about the source Capacity Reservation.

    + pub fn get_source_capacity_reservation(&self) -> &::std::option::Option { + &self.source_capacity_reservation + } + ///

    Information about the destination Capacity Reservation.

    + pub fn destination_capacity_reservation(mut self, input: crate::types::CapacityReservation) -> Self { + self.destination_capacity_reservation = ::std::option::Option::Some(input); + self + } + ///

    Information about the destination Capacity Reservation.

    + pub fn set_destination_capacity_reservation(mut self, input: ::std::option::Option) -> Self { + self.destination_capacity_reservation = input; + self + } + ///

    Information about the destination Capacity Reservation.

    + pub fn get_destination_capacity_reservation(&self) -> &::std::option::Option { + &self.destination_capacity_reservation + } + ///

    The number of instances that were moved from the source Capacity Reservation to the destination Capacity Reservation.

    + pub fn instance_count(mut self, input: i32) -> Self { + self.instance_count = ::std::option::Option::Some(input); + self + } + ///

    The number of instances that were moved from the source Capacity Reservation to the destination Capacity Reservation.

    + pub fn set_instance_count(mut self, input: ::std::option::Option) -> Self { + self.instance_count = input; + self + } + ///

    The number of instances that were moved from the source Capacity Reservation to the destination Capacity Reservation.

    + pub fn get_instance_count(&self) -> &::std::option::Option { + &self.instance_count + } + pub(crate) fn _request_id(mut self, request_id: impl Into) -> Self { + self._request_id = Some(request_id.into()); + self + } + + pub(crate) fn _set_request_id(&mut self, request_id: Option) -> &mut Self { + self._request_id = request_id; + self + } + /// Consumes the builder and constructs a [`MoveCapacityReservationInstancesOutput`](crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesOutput). + pub fn build(self) -> crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesOutput { + crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesOutput { + source_capacity_reservation: self.source_capacity_reservation, + destination_capacity_reservation: self.destination_capacity_reservation, + instance_count: self.instance_count, + _request_id: self._request_id, + } + } +} diff --git a/sdk/ec2/src/operation/move_capacity_reservation_instances/builders.rs b/sdk/ec2/src/operation/move_capacity_reservation_instances/builders.rs new file mode 100644 index 000000000000..b666a9388655 --- /dev/null +++ b/sdk/ec2/src/operation/move_capacity_reservation_instances/builders.rs @@ -0,0 +1,195 @@ +// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. +pub use crate::operation::move_capacity_reservation_instances::_move_capacity_reservation_instances_output::MoveCapacityReservationInstancesOutputBuilder; + +pub use crate::operation::move_capacity_reservation_instances::_move_capacity_reservation_instances_input::MoveCapacityReservationInstancesInputBuilder; + +impl crate::operation::move_capacity_reservation_instances::builders::MoveCapacityReservationInstancesInputBuilder { + /// Sends a request with this input using the given client. + pub async fn send_with( + self, + client: &crate::Client, + ) -> ::std::result::Result< + crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesOutput, + ::aws_smithy_runtime_api::client::result::SdkError< + crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesError, + ::aws_smithy_runtime_api::client::orchestrator::HttpResponse, + >, + > { + let mut fluent_builder = client.move_capacity_reservation_instances(); + fluent_builder.inner = self; + fluent_builder.send().await + } +} +/// Fluent builder constructing a request to `MoveCapacityReservationInstances`. +/// +///

    Move available capacity from a source Capacity Reservation to a destination Capacity Reservation. The source Capacity Reservation and the destination Capacity Reservation must be active, owned by your Amazon Web Services account, and share the following:

    +///
      +///
    • +///

      Instance type

    • +///
    • +///

      Platform

    • +///
    • +///

      Availability Zone

    • +///
    • +///

      Tenancy

    • +///
    • +///

      Placement group

    • +///
    • +///

      Capacity Reservation end time - At specific time or Manually.

    • +///
    +#[derive(::std::clone::Clone, ::std::fmt::Debug)] +pub struct MoveCapacityReservationInstancesFluentBuilder { + handle: ::std::sync::Arc, + inner: crate::operation::move_capacity_reservation_instances::builders::MoveCapacityReservationInstancesInputBuilder, + config_override: ::std::option::Option, +} +impl + crate::client::customize::internal::CustomizableSend< + crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesOutput, + crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesError, + > for MoveCapacityReservationInstancesFluentBuilder +{ + fn send( + self, + config_override: crate::config::Builder, + ) -> crate::client::customize::internal::BoxFuture< + crate::client::customize::internal::SendResult< + crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesOutput, + crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesError, + >, + > { + ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await }) + } +} +impl MoveCapacityReservationInstancesFluentBuilder { + /// Creates a new `MoveCapacityReservationInstancesFluentBuilder`. + pub(crate) fn new(handle: ::std::sync::Arc) -> Self { + Self { + handle, + inner: ::std::default::Default::default(), + config_override: ::std::option::Option::None, + } + } + /// Access the MoveCapacityReservationInstances as a reference. + pub fn as_input(&self) -> &crate::operation::move_capacity_reservation_instances::builders::MoveCapacityReservationInstancesInputBuilder { + &self.inner + } + /// Sends the request and returns the response. + /// + /// If an error occurs, an `SdkError` will be returned with additional details that + /// can be matched against. + /// + /// By default, any retryable failures will be retried twice. Retry behavior + /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be + /// set when configuring the client. + pub async fn send( + self, + ) -> ::std::result::Result< + crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesOutput, + ::aws_smithy_runtime_api::client::result::SdkError< + crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesError, + ::aws_smithy_runtime_api::client::orchestrator::HttpResponse, + >, + > { + let input = self + .inner + .build() + .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?; + let runtime_plugins = crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstances::operation_runtime_plugins( + self.handle.runtime_plugins.clone(), + &self.handle.conf, + self.config_override, + ); + crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstances::orchestrate(&runtime_plugins, input).await + } + + /// Consumes this builder, creating a customizable operation that can be modified before being sent. + pub fn customize( + self, + ) -> crate::client::customize::CustomizableOperation< + crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesOutput, + crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesError, + Self, + > { + crate::client::customize::CustomizableOperation::new(self) + } + pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into) -> Self { + self.set_config_override(::std::option::Option::Some(config_override.into())); + self + } + + pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option) -> &mut Self { + self.config_override = config_override; + self + } + ///

    Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

    + pub fn dry_run(mut self, input: bool) -> Self { + self.inner = self.inner.dry_run(input); + self + } + ///

    Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

    + pub fn set_dry_run(mut self, input: ::std::option::Option) -> Self { + self.inner = self.inner.set_dry_run(input); + self + } + ///

    Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

    + pub fn get_dry_run(&self) -> &::std::option::Option { + self.inner.get_dry_run() + } + ///

    Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.

    + pub fn client_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self { + self.inner = self.inner.client_token(input.into()); + self + } + ///

    Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.

    + pub fn set_client_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self { + self.inner = self.inner.set_client_token(input); + self + } + ///

    Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.

    + pub fn get_client_token(&self) -> &::std::option::Option<::std::string::String> { + self.inner.get_client_token() + } + ///

    The ID of the Capacity Reservation from which you want to move capacity.

    + pub fn source_capacity_reservation_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self { + self.inner = self.inner.source_capacity_reservation_id(input.into()); + self + } + ///

    The ID of the Capacity Reservation from which you want to move capacity.

    + pub fn set_source_capacity_reservation_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self { + self.inner = self.inner.set_source_capacity_reservation_id(input); + self + } + ///

    The ID of the Capacity Reservation from which you want to move capacity.

    + pub fn get_source_capacity_reservation_id(&self) -> &::std::option::Option<::std::string::String> { + self.inner.get_source_capacity_reservation_id() + } + ///

    The ID of the Capacity Reservation that you want to move capacity into.

    + pub fn destination_capacity_reservation_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self { + self.inner = self.inner.destination_capacity_reservation_id(input.into()); + self + } + ///

    The ID of the Capacity Reservation that you want to move capacity into.

    + pub fn set_destination_capacity_reservation_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self { + self.inner = self.inner.set_destination_capacity_reservation_id(input); + self + } + ///

    The ID of the Capacity Reservation that you want to move capacity into.

    + pub fn get_destination_capacity_reservation_id(&self) -> &::std::option::Option<::std::string::String> { + self.inner.get_destination_capacity_reservation_id() + } + ///

    The number of instances that you want to move from the source Capacity Reservation.

    + pub fn instance_count(mut self, input: i32) -> Self { + self.inner = self.inner.instance_count(input); + self + } + ///

    The number of instances that you want to move from the source Capacity Reservation.

    + pub fn set_instance_count(mut self, input: ::std::option::Option) -> Self { + self.inner = self.inner.set_instance_count(input); + self + } + ///

    The number of instances that you want to move from the source Capacity Reservation.

    + pub fn get_instance_count(&self) -> &::std::option::Option { + self.inner.get_instance_count() + } +} diff --git a/sdk/ec2/src/protocol_serde.rs b/sdk/ec2/src/protocol_serde.rs index 33ed6497cc18..26361179731a 100644 --- a/sdk/ec2/src/protocol_serde.rs +++ b/sdk/ec2/src/protocol_serde.rs @@ -245,6 +245,10 @@ pub(crate) mod shape_copy_snapshot_input; pub(crate) mod shape_create_capacity_reservation; +pub(crate) mod shape_create_capacity_reservation_by_splitting; + +pub(crate) mod shape_create_capacity_reservation_by_splitting_input; + pub(crate) mod shape_create_capacity_reservation_fleet; pub(crate) mod shape_create_capacity_reservation_fleet_input; @@ -2255,6 +2259,10 @@ pub(crate) mod shape_move_byoip_cidr_to_ipam; pub(crate) mod shape_move_byoip_cidr_to_ipam_input; +pub(crate) mod shape_move_capacity_reservation_instances; + +pub(crate) mod shape_move_capacity_reservation_instances_input; + pub(crate) mod shape_provision_byoip_cidr; pub(crate) mod shape_provision_byoip_cidr_input; diff --git a/sdk/ec2/src/protocol_serde/shape_create_capacity_reservation_by_splitting.rs b/sdk/ec2/src/protocol_serde/shape_create_capacity_reservation_by_splitting.rs new file mode 100644 index 000000000000..3e7ed25193cb --- /dev/null +++ b/sdk/ec2/src/protocol_serde/shape_create_capacity_reservation_by_splitting.rs @@ -0,0 +1,103 @@ +// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. +#[allow(clippy::unnecessary_wraps)] +pub fn de_create_capacity_reservation_by_splitting_http_error( + _response_status: u16, + _response_headers: &::aws_smithy_runtime_api::http::Headers, + _response_body: &[u8], +) -> std::result::Result< + crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingOutput, + crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingError, +> { + #[allow(unused_mut)] + let mut generic_builder = crate::protocol_serde::parse_http_error_metadata(_response_status, _response_headers, _response_body) + .map_err(crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingError::unhandled)?; + generic_builder = ::aws_types::request_id::apply_request_id(generic_builder, _response_headers); + let generic = generic_builder.build(); + Err(crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingError::generic(generic)) +} + +#[allow(clippy::unnecessary_wraps)] +pub fn de_create_capacity_reservation_by_splitting_http_response( + _response_status: u16, + _response_headers: &::aws_smithy_runtime_api::http::Headers, + _response_body: &[u8], +) -> std::result::Result< + crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingOutput, + crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingError, +> { + Ok({ + #[allow(unused_mut)] + let mut output = + crate::operation::create_capacity_reservation_by_splitting::builders::CreateCapacityReservationBySplittingOutputBuilder::default(); + output = crate::protocol_serde::shape_create_capacity_reservation_by_splitting::de_create_capacity_reservation_by_splitting( + _response_body, + output, + ) + .map_err(crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingError::unhandled)?; + output._set_request_id(::aws_types::request_id::RequestId::request_id(_response_headers).map(str::to_string)); + output.build() + }) +} + +#[allow(unused_mut)] +pub fn de_create_capacity_reservation_by_splitting( + inp: &[u8], + mut builder: crate::operation::create_capacity_reservation_by_splitting::builders::CreateCapacityReservationBySplittingOutputBuilder, +) -> Result< + crate::operation::create_capacity_reservation_by_splitting::builders::CreateCapacityReservationBySplittingOutputBuilder, + ::aws_smithy_xml::decode::XmlDecodeError, +> { + let mut doc = ::aws_smithy_xml::decode::Document::try_from(inp)?; + + #[allow(unused_mut)] + let mut decoder = doc.root_element()?; + #[allow(unused_variables)] + let start_el = decoder.start_el(); + if !(start_el.matches("CreateCapacityReservationBySplittingResponse")) { + return Err(::aws_smithy_xml::decode::XmlDecodeError::custom(format!( + "invalid root, expected CreateCapacityReservationBySplittingResponse got {:?}", + start_el + ))); + } + while let Some(mut tag) = decoder.next_tag() { + match tag.start_el() { + s if s.matches("sourceCapacityReservation") /* SourceCapacityReservation com.amazonaws.ec2.synthetic#CreateCapacityReservationBySplittingOutput$SourceCapacityReservation */ => { + let var_1 = + Some( + crate::protocol_serde::shape_capacity_reservation::de_capacity_reservation(&mut tag) + ? + ) + ; + builder = builder.set_source_capacity_reservation(var_1); + } + , + s if s.matches("destinationCapacityReservation") /* DestinationCapacityReservation com.amazonaws.ec2.synthetic#CreateCapacityReservationBySplittingOutput$DestinationCapacityReservation */ => { + let var_2 = + Some( + crate::protocol_serde::shape_capacity_reservation::de_capacity_reservation(&mut tag) + ? + ) + ; + builder = builder.set_destination_capacity_reservation(var_2); + } + , + s if s.matches("instanceCount") /* InstanceCount com.amazonaws.ec2.synthetic#CreateCapacityReservationBySplittingOutput$InstanceCount */ => { + let var_3 = + Some( + { + ::parse_smithy_primitive( + ::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref() + ) + .map_err(|_|::aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `com.amazonaws.ec2#Integer`)")) + } + ? + ) + ; + builder = builder.set_instance_count(var_3); + } + , + _ => {} + } + } + Ok(builder) +} diff --git a/sdk/ec2/src/protocol_serde/shape_create_capacity_reservation_by_splitting_input.rs b/sdk/ec2/src/protocol_serde/shape_create_capacity_reservation_by_splitting_input.rs new file mode 100644 index 000000000000..c0ffd3e3721c --- /dev/null +++ b/sdk/ec2/src/protocol_serde/shape_create_capacity_reservation_by_splitting_input.rs @@ -0,0 +1,46 @@ +// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. +pub fn ser_create_capacity_reservation_by_splitting_input_input_input( + input: &crate::operation::create_capacity_reservation_by_splitting::CreateCapacityReservationBySplittingInput, +) -> Result<::aws_smithy_types::body::SdkBody, ::aws_smithy_types::error::operation::SerializationError> { + let mut out = String::new(); + #[allow(unused_mut)] + let mut writer = ::aws_smithy_query::QueryWriter::new(&mut out, "CreateCapacityReservationBySplitting", "2016-11-15"); + #[allow(unused_mut)] + let mut scope_1 = writer.prefix("DryRun"); + if let Some(var_2) = &input.dry_run { + scope_1.boolean(*var_2); + } + #[allow(unused_mut)] + let mut scope_3 = writer.prefix("ClientToken"); + if let Some(var_4) = &input.client_token { + scope_3.string(var_4); + } + #[allow(unused_mut)] + let mut scope_5 = writer.prefix("SourceCapacityReservationId"); + if let Some(var_6) = &input.source_capacity_reservation_id { + scope_5.string(var_6); + } + #[allow(unused_mut)] + let mut scope_7 = writer.prefix("InstanceCount"); + if let Some(var_8) = &input.instance_count { + scope_7.number( + #[allow(clippy::useless_conversion)] + ::aws_smithy_types::Number::NegInt((*var_8).into()), + ); + } + #[allow(unused_mut)] + let mut scope_9 = writer.prefix("TagSpecification"); + if let Some(var_10) = &input.tag_specifications { + if !var_10.is_empty() { + let mut list_12 = scope_9.start_list(true, Some("item")); + for item_11 in var_10 { + #[allow(unused_mut)] + let mut entry_13 = list_12.entry(); + crate::protocol_serde::shape_tag_specification::ser_tag_specification(entry_13, item_11)?; + } + list_12.finish(); + } + } + writer.finish(); + Ok(::aws_smithy_types::body::SdkBody::from(out)) +} diff --git a/sdk/ec2/src/protocol_serde/shape_modify_capacity_reservation_input.rs b/sdk/ec2/src/protocol_serde/shape_modify_capacity_reservation_input.rs index 8563fb1d8d4a..c1385b925a72 100644 --- a/sdk/ec2/src/protocol_serde/shape_modify_capacity_reservation_input.rs +++ b/sdk/ec2/src/protocol_serde/shape_modify_capacity_reservation_input.rs @@ -43,6 +43,11 @@ pub fn ser_modify_capacity_reservation_input_input_input( if let Some(var_14) = &input.additional_info { scope_13.string(var_14); } + #[allow(unused_mut)] + let mut scope_15 = writer.prefix("InstanceMatchCriteria"); + if let Some(var_16) = &input.instance_match_criteria { + scope_15.string(var_16.as_str()); + } writer.finish(); Ok(::aws_smithy_types::body::SdkBody::from(out)) } diff --git a/sdk/ec2/src/protocol_serde/shape_move_capacity_reservation_instances.rs b/sdk/ec2/src/protocol_serde/shape_move_capacity_reservation_instances.rs new file mode 100644 index 000000000000..52f74a1e626d --- /dev/null +++ b/sdk/ec2/src/protocol_serde/shape_move_capacity_reservation_instances.rs @@ -0,0 +1,99 @@ +// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. +#[allow(clippy::unnecessary_wraps)] +pub fn de_move_capacity_reservation_instances_http_error( + _response_status: u16, + _response_headers: &::aws_smithy_runtime_api::http::Headers, + _response_body: &[u8], +) -> std::result::Result< + crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesOutput, + crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesError, +> { + #[allow(unused_mut)] + let mut generic_builder = crate::protocol_serde::parse_http_error_metadata(_response_status, _response_headers, _response_body) + .map_err(crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesError::unhandled)?; + generic_builder = ::aws_types::request_id::apply_request_id(generic_builder, _response_headers); + let generic = generic_builder.build(); + Err(crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesError::generic(generic)) +} + +#[allow(clippy::unnecessary_wraps)] +pub fn de_move_capacity_reservation_instances_http_response( + _response_status: u16, + _response_headers: &::aws_smithy_runtime_api::http::Headers, + _response_body: &[u8], +) -> std::result::Result< + crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesOutput, + crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesError, +> { + Ok({ + #[allow(unused_mut)] + let mut output = crate::operation::move_capacity_reservation_instances::builders::MoveCapacityReservationInstancesOutputBuilder::default(); + output = crate::protocol_serde::shape_move_capacity_reservation_instances::de_move_capacity_reservation_instances(_response_body, output) + .map_err(crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesError::unhandled)?; + output._set_request_id(::aws_types::request_id::RequestId::request_id(_response_headers).map(str::to_string)); + output.build() + }) +} + +#[allow(unused_mut)] +pub fn de_move_capacity_reservation_instances( + inp: &[u8], + mut builder: crate::operation::move_capacity_reservation_instances::builders::MoveCapacityReservationInstancesOutputBuilder, +) -> Result< + crate::operation::move_capacity_reservation_instances::builders::MoveCapacityReservationInstancesOutputBuilder, + ::aws_smithy_xml::decode::XmlDecodeError, +> { + let mut doc = ::aws_smithy_xml::decode::Document::try_from(inp)?; + + #[allow(unused_mut)] + let mut decoder = doc.root_element()?; + #[allow(unused_variables)] + let start_el = decoder.start_el(); + if !(start_el.matches("MoveCapacityReservationInstancesResponse")) { + return Err(::aws_smithy_xml::decode::XmlDecodeError::custom(format!( + "invalid root, expected MoveCapacityReservationInstancesResponse got {:?}", + start_el + ))); + } + while let Some(mut tag) = decoder.next_tag() { + match tag.start_el() { + s if s.matches("sourceCapacityReservation") /* SourceCapacityReservation com.amazonaws.ec2.synthetic#MoveCapacityReservationInstancesOutput$SourceCapacityReservation */ => { + let var_1 = + Some( + crate::protocol_serde::shape_capacity_reservation::de_capacity_reservation(&mut tag) + ? + ) + ; + builder = builder.set_source_capacity_reservation(var_1); + } + , + s if s.matches("destinationCapacityReservation") /* DestinationCapacityReservation com.amazonaws.ec2.synthetic#MoveCapacityReservationInstancesOutput$DestinationCapacityReservation */ => { + let var_2 = + Some( + crate::protocol_serde::shape_capacity_reservation::de_capacity_reservation(&mut tag) + ? + ) + ; + builder = builder.set_destination_capacity_reservation(var_2); + } + , + s if s.matches("instanceCount") /* InstanceCount com.amazonaws.ec2.synthetic#MoveCapacityReservationInstancesOutput$InstanceCount */ => { + let var_3 = + Some( + { + ::parse_smithy_primitive( + ::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref() + ) + .map_err(|_|::aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `com.amazonaws.ec2#Integer`)")) + } + ? + ) + ; + builder = builder.set_instance_count(var_3); + } + , + _ => {} + } + } + Ok(builder) +} diff --git a/sdk/ec2/src/protocol_serde/shape_move_capacity_reservation_instances_input.rs b/sdk/ec2/src/protocol_serde/shape_move_capacity_reservation_instances_input.rs new file mode 100644 index 000000000000..3616ad50452b --- /dev/null +++ b/sdk/ec2/src/protocol_serde/shape_move_capacity_reservation_instances_input.rs @@ -0,0 +1,38 @@ +// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. +pub fn ser_move_capacity_reservation_instances_input_input_input( + input: &crate::operation::move_capacity_reservation_instances::MoveCapacityReservationInstancesInput, +) -> Result<::aws_smithy_types::body::SdkBody, ::aws_smithy_types::error::operation::SerializationError> { + let mut out = String::new(); + #[allow(unused_mut)] + let mut writer = ::aws_smithy_query::QueryWriter::new(&mut out, "MoveCapacityReservationInstances", "2016-11-15"); + #[allow(unused_mut)] + let mut scope_1 = writer.prefix("DryRun"); + if let Some(var_2) = &input.dry_run { + scope_1.boolean(*var_2); + } + #[allow(unused_mut)] + let mut scope_3 = writer.prefix("ClientToken"); + if let Some(var_4) = &input.client_token { + scope_3.string(var_4); + } + #[allow(unused_mut)] + let mut scope_5 = writer.prefix("SourceCapacityReservationId"); + if let Some(var_6) = &input.source_capacity_reservation_id { + scope_5.string(var_6); + } + #[allow(unused_mut)] + let mut scope_7 = writer.prefix("DestinationCapacityReservationId"); + if let Some(var_8) = &input.destination_capacity_reservation_id { + scope_7.string(var_8); + } + #[allow(unused_mut)] + let mut scope_9 = writer.prefix("InstanceCount"); + if let Some(var_10) = &input.instance_count { + scope_9.number( + #[allow(clippy::useless_conversion)] + ::aws_smithy_types::Number::NegInt((*var_10).into()), + ); + } + writer.finish(); + Ok(::aws_smithy_types::body::SdkBody::from(out)) +} diff --git a/sdk/ec2/src/types/_analysis_route_table_route.rs b/sdk/ec2/src/types/_analysis_route_table_route.rs index 8c3a547c6091..a502ac04065f 100644 --- a/sdk/ec2/src/types/_analysis_route_table_route.rs +++ b/sdk/ec2/src/types/_analysis_route_table_route.rs @@ -6,7 +6,7 @@ pub struct AnalysisRouteTableRoute { ///

    The destination IPv4 address, in CIDR notation.

    pub destination_cidr: ::std::option::Option<::std::string::String>, - ///

    The prefix of the Amazon Web Service.

    + ///

    The prefix of the Amazon Web Services service.

    pub destination_prefix_list_id: ::std::option::Option<::std::string::String>, ///

    The ID of an egress-only internet gateway.

    pub egress_only_internet_gateway_id: ::std::option::Option<::std::string::String>, @@ -52,7 +52,7 @@ impl AnalysisRouteTableRoute { pub fn destination_cidr(&self) -> ::std::option::Option<&str> { self.destination_cidr.as_deref() } - ///

    The prefix of the Amazon Web Service.

    + ///

    The prefix of the Amazon Web Services service.

    pub fn destination_prefix_list_id(&self) -> ::std::option::Option<&str> { self.destination_prefix_list_id.as_deref() } @@ -160,17 +160,17 @@ impl AnalysisRouteTableRouteBuilder { pub fn get_destination_cidr(&self) -> &::std::option::Option<::std::string::String> { &self.destination_cidr } - ///

    The prefix of the Amazon Web Service.

    + ///

    The prefix of the Amazon Web Services service.

    pub fn destination_prefix_list_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self { self.destination_prefix_list_id = ::std::option::Option::Some(input.into()); self } - ///

    The prefix of the Amazon Web Service.

    + ///

    The prefix of the Amazon Web Services service.

    pub fn set_destination_prefix_list_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self { self.destination_prefix_list_id = input; self } - ///

    The prefix of the Amazon Web Service.

    + ///

    The prefix of the Amazon Web Services service.

    pub fn get_destination_prefix_list_id(&self) -> &::std::option::Option<::std::string::String> { &self.destination_prefix_list_id } diff --git a/sdk/ec2/src/types/_network_interface_permission.rs b/sdk/ec2/src/types/_network_interface_permission.rs index 1b119bbab051..c3c36ec8a17d 100644 --- a/sdk/ec2/src/types/_network_interface_permission.rs +++ b/sdk/ec2/src/types/_network_interface_permission.rs @@ -10,7 +10,7 @@ pub struct NetworkInterfacePermission { pub network_interface_id: ::std::option::Option<::std::string::String>, ///

    The Amazon Web Services account ID.

    pub aws_account_id: ::std::option::Option<::std::string::String>, - ///

    The Amazon Web Service.

    + ///

    The Amazon Web Services service.

    pub aws_service: ::std::option::Option<::std::string::String>, ///

    The type of permission.

    pub permission: ::std::option::Option, @@ -30,7 +30,7 @@ impl NetworkInterfacePermission { pub fn aws_account_id(&self) -> ::std::option::Option<&str> { self.aws_account_id.as_deref() } - ///

    The Amazon Web Service.

    + ///

    The Amazon Web Services service.

    pub fn aws_service(&self) -> ::std::option::Option<&str> { self.aws_service.as_deref() } @@ -104,17 +104,17 @@ impl NetworkInterfacePermissionBuilder { pub fn get_aws_account_id(&self) -> &::std::option::Option<::std::string::String> { &self.aws_account_id } - ///

    The Amazon Web Service.

    + ///

    The Amazon Web Services service.

    pub fn aws_service(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self { self.aws_service = ::std::option::Option::Some(input.into()); self } - ///

    The Amazon Web Service.

    + ///

    The Amazon Web Services service.

    pub fn set_aws_service(mut self, input: ::std::option::Option<::std::string::String>) -> Self { self.aws_service = input; self } - ///

    The Amazon Web Service.

    + ///

    The Amazon Web Services service.

    pub fn get_aws_service(&self) -> &::std::option::Option<::std::string::String> { &self.aws_service } diff --git a/sdk/ec2/src/types/_prefix_list.rs b/sdk/ec2/src/types/_prefix_list.rs index 1c4a07ad7f7b..1390b7550da5 100644 --- a/sdk/ec2/src/types/_prefix_list.rs +++ b/sdk/ec2/src/types/_prefix_list.rs @@ -4,7 +4,7 @@ #[non_exhaustive] #[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)] pub struct PrefixList { - ///

    The IP address range of the Amazon Web Service.

    + ///

    The IP address range of the Amazon Web Services service.

    pub cidrs: ::std::option::Option<::std::vec::Vec<::std::string::String>>, ///

    The ID of the prefix.

    pub prefix_list_id: ::std::option::Option<::std::string::String>, @@ -12,7 +12,7 @@ pub struct PrefixList { pub prefix_list_name: ::std::option::Option<::std::string::String>, } impl PrefixList { - ///

    The IP address range of the Amazon Web Service.

    + ///

    The IP address range of the Amazon Web Services service.

    /// /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.cidrs.is_none()`. pub fn cidrs(&self) -> &[::std::string::String] { @@ -47,19 +47,19 @@ impl PrefixListBuilder { /// /// To override the contents of this collection use [`set_cidrs`](Self::set_cidrs). /// - ///

    The IP address range of the Amazon Web Service.

    + ///

    The IP address range of the Amazon Web Services service.

    pub fn cidrs(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self { let mut v = self.cidrs.unwrap_or_default(); v.push(input.into()); self.cidrs = ::std::option::Option::Some(v); self } - ///

    The IP address range of the Amazon Web Service.

    + ///

    The IP address range of the Amazon Web Services service.

    pub fn set_cidrs(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self { self.cidrs = input; self } - ///

    The IP address range of the Amazon Web Service.

    + ///

    The IP address range of the Amazon Web Services service.

    pub fn get_cidrs(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> { &self.cidrs } diff --git a/sdk/ec2/src/types/_route.rs b/sdk/ec2/src/types/_route.rs index b4c90309d976..39ce55275477 100644 --- a/sdk/ec2/src/types/_route.rs +++ b/sdk/ec2/src/types/_route.rs @@ -8,7 +8,7 @@ pub struct Route { pub destination_cidr_block: ::std::option::Option<::std::string::String>, ///

    The IPv6 CIDR block used for the destination match.

    pub destination_ipv6_cidr_block: ::std::option::Option<::std::string::String>, - ///

    The prefix of the Amazon Web Service.

    + ///

    The prefix of the Amazon Web Services service.

    pub destination_prefix_list_id: ::std::option::Option<::std::string::String>, ///

    The ID of the egress-only internet gateway.

    pub egress_only_internet_gateway_id: ::std::option::Option<::std::string::String>, @@ -54,7 +54,7 @@ impl Route { pub fn destination_ipv6_cidr_block(&self) -> ::std::option::Option<&str> { self.destination_ipv6_cidr_block.as_deref() } - ///

    The prefix of the Amazon Web Service.

    + ///

    The prefix of the Amazon Web Services service.

    pub fn destination_prefix_list_id(&self) -> ::std::option::Option<&str> { self.destination_prefix_list_id.as_deref() } @@ -176,17 +176,17 @@ impl RouteBuilder { pub fn get_destination_ipv6_cidr_block(&self) -> &::std::option::Option<::std::string::String> { &self.destination_ipv6_cidr_block } - ///

    The prefix of the Amazon Web Service.

    + ///

    The prefix of the Amazon Web Services service.

    pub fn destination_prefix_list_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self { self.destination_prefix_list_id = ::std::option::Option::Some(input.into()); self } - ///

    The prefix of the Amazon Web Service.

    + ///

    The prefix of the Amazon Web Services service.

    pub fn set_destination_prefix_list_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self { self.destination_prefix_list_id = input; self } - ///

    The prefix of the Amazon Web Service.

    + ///

    The prefix of the Amazon Web Services service.

    pub fn get_destination_prefix_list_id(&self) -> &::std::option::Option<::std::string::String> { &self.destination_prefix_list_id } diff --git a/sdk/ec2/src/waiters/network_interface_available.rs b/sdk/ec2/src/waiters/network_interface_available.rs index fb0d8f118fab..ae77b6521298 100644 --- a/sdk/ec2/src/waiters/network_interface_available.rs +++ b/sdk/ec2/src/waiters/network_interface_available.rs @@ -145,7 +145,7 @@ impl NetworkInterfaceAvailableFluentBuilder { ///
  • ///

    requester-id - The alias or Amazon Web Services account ID of the principal or service that created the network interface.

  • ///
  • - ///

    requester-managed - Indicates whether the network interface is being managed by an Amazon Web Service (for example, Amazon Web Services Management Console, Auto Scaling, and so on).

  • + ///

    requester-managed - Indicates whether the network interface is being managed by an Amazon Web Services service (for example, Amazon Web Services Management Console, Auto Scaling, and so on).

    ///
  • ///

    source-dest-check - Indicates whether the network interface performs source/destination checking. A value of true means checking is enabled, and false means checking is disabled. The value must be false for the network interface to perform network address translation (NAT) in your VPC.

  • ///
  • @@ -226,7 +226,7 @@ impl NetworkInterfaceAvailableFluentBuilder { ///
  • ///

    requester-id - The alias or Amazon Web Services account ID of the principal or service that created the network interface.

  • ///
  • - ///

    requester-managed - Indicates whether the network interface is being managed by an Amazon Web Service (for example, Amazon Web Services Management Console, Auto Scaling, and so on).

  • + ///

    requester-managed - Indicates whether the network interface is being managed by an Amazon Web Services service (for example, Amazon Web Services Management Console, Auto Scaling, and so on).

    ///
  • ///

    source-dest-check - Indicates whether the network interface performs source/destination checking. A value of true means checking is enabled, and false means checking is disabled. The value must be false for the network interface to perform network address translation (NAT) in your VPC.

  • ///
  • @@ -307,7 +307,7 @@ impl NetworkInterfaceAvailableFluentBuilder { ///
  • ///

    requester-id - The alias or Amazon Web Services account ID of the principal or service that created the network interface.

  • ///
  • - ///

    requester-managed - Indicates whether the network interface is being managed by an Amazon Web Service (for example, Amazon Web Services Management Console, Auto Scaling, and so on).

  • + ///

    requester-managed - Indicates whether the network interface is being managed by an Amazon Web Services service (for example, Amazon Web Services Management Console, Auto Scaling, and so on).

    ///
  • ///

    source-dest-check - Indicates whether the network interface performs source/destination checking. A value of true means checking is enabled, and false means checking is disabled. The value must be false for the network interface to perform network address translation (NAT) in your VPC.

  • ///
  • diff --git a/sdk/eks/Cargo.toml b/sdk/eks/Cargo.toml index 25e3b7137421..c053d596f31a 100644 --- a/sdk/eks/Cargo.toml +++ b/sdk/eks/Cargo.toml @@ -1,7 +1,7 @@ # Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. [package] name = "aws-sdk-eks" -version = "1.43.0" +version = "1.44.0" authors = ["AWS Rust SDK Team ", "Russell Cohen "] description = "AWS SDK for Amazon Elastic Kubernetes Service" edition = "2021" diff --git a/sdk/eks/README.md b/sdk/eks/README.md index 67260afd1779..bc0bb843af39 100644 --- a/sdk/eks/README.md +++ b/sdk/eks/README.md @@ -16,7 +16,7 @@ your project, add the following to your **Cargo.toml** file: ```toml [dependencies] aws-config = { version = "1.1.7", features = ["behavior-version-latest"] } -aws-sdk-eks = "1.43.0" +aws-sdk-eks = "1.44.0" tokio = { version = "1", features = ["full"] } ``` diff --git a/sdk/eks/src/lib.rs b/sdk/eks/src/lib.rs index af7960edcd41..213abc3d0704 100644 --- a/sdk/eks/src/lib.rs +++ b/sdk/eks/src/lib.rs @@ -33,7 +33,7 @@ //! ```toml //! [dependencies] //! aws-config = { version = "1.1.7", features = ["behavior-version-latest"] } -//! aws-sdk-eks = "1.43.0" +//! aws-sdk-eks = "1.44.0" //! tokio = { version = "1", features = ["full"] } //! ``` //! diff --git a/sdk/eks/src/types/_ami_types.rs b/sdk/eks/src/types/_ami_types.rs index da50be886e74..f0ed580152bb 100644 --- a/sdk/eks/src/types/_ami_types.rs +++ b/sdk/eks/src/types/_ami_types.rs @@ -13,6 +13,8 @@ /// # let amitypes = unimplemented!(); /// match amitypes { /// AmiTypes::Al2023Arm64Standard => { /* ... */ }, +/// AmiTypes::Al2023X8664Neuron => { /* ... */ }, +/// AmiTypes::Al2023X8664Nvidia => { /* ... */ }, /// AmiTypes::Al2023X8664Standard => { /* ... */ }, /// AmiTypes::Al2Arm64 => { /* ... */ }, /// AmiTypes::Al2X8664 => { /* ... */ }, @@ -56,6 +58,10 @@ pub enum AmiTypes { #[allow(missing_docs)] // documentation missing in model Al2023Arm64Standard, #[allow(missing_docs)] // documentation missing in model + Al2023X8664Neuron, + #[allow(missing_docs)] // documentation missing in model + Al2023X8664Nvidia, + #[allow(missing_docs)] // documentation missing in model Al2023X8664Standard, #[allow(missing_docs)] // documentation missing in model Al2Arm64, @@ -89,6 +95,8 @@ impl ::std::convert::From<&str> for AmiTypes { fn from(s: &str) -> Self { match s { "AL2023_ARM_64_STANDARD" => AmiTypes::Al2023Arm64Standard, + "AL2023_x86_64_NEURON" => AmiTypes::Al2023X8664Neuron, + "AL2023_x86_64_NVIDIA" => AmiTypes::Al2023X8664Nvidia, "AL2023_x86_64_STANDARD" => AmiTypes::Al2023X8664Standard, "AL2_ARM_64" => AmiTypes::Al2Arm64, "AL2_x86_64" => AmiTypes::Al2X8664, @@ -118,6 +126,8 @@ impl AmiTypes { pub fn as_str(&self) -> &str { match self { AmiTypes::Al2023Arm64Standard => "AL2023_ARM_64_STANDARD", + AmiTypes::Al2023X8664Neuron => "AL2023_x86_64_NEURON", + AmiTypes::Al2023X8664Nvidia => "AL2023_x86_64_NVIDIA", AmiTypes::Al2023X8664Standard => "AL2023_x86_64_STANDARD", AmiTypes::Al2Arm64 => "AL2_ARM_64", AmiTypes::Al2X8664 => "AL2_x86_64", @@ -138,6 +148,8 @@ impl AmiTypes { pub const fn values() -> &'static [&'static str] { &[ "AL2023_ARM_64_STANDARD", + "AL2023_x86_64_NEURON", + "AL2023_x86_64_NVIDIA", "AL2023_x86_64_STANDARD", "AL2_ARM_64", "AL2_x86_64", @@ -175,6 +187,8 @@ impl ::std::fmt::Display for AmiTypes { fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result { match self { AmiTypes::Al2023Arm64Standard => write!(f, "AL2023_ARM_64_STANDARD"), + AmiTypes::Al2023X8664Neuron => write!(f, "AL2023_x86_64_NEURON"), + AmiTypes::Al2023X8664Nvidia => write!(f, "AL2023_x86_64_NVIDIA"), AmiTypes::Al2023X8664Standard => write!(f, "AL2023_x86_64_STANDARD"), AmiTypes::Al2Arm64 => write!(f, "AL2_ARM_64"), AmiTypes::Al2X8664 => write!(f, "AL2_x86_64"), diff --git a/sdk/groundstation/Cargo.toml b/sdk/groundstation/Cargo.toml index 15cc8ca7d684..eab128a98ef0 100644 --- a/sdk/groundstation/Cargo.toml +++ b/sdk/groundstation/Cargo.toml @@ -1,7 +1,7 @@ # Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. [package] name = "aws-sdk-groundstation" -version = "1.38.0" +version = "1.38.1" authors = ["AWS Rust SDK Team ", "Russell Cohen "] description = "AWS SDK for AWS Ground Station" edition = "2021" diff --git a/sdk/groundstation/README.md b/sdk/groundstation/README.md index 1d5e3d06d255..e573656afa11 100644 --- a/sdk/groundstation/README.md +++ b/sdk/groundstation/README.md @@ -14,7 +14,7 @@ your project, add the following to your **Cargo.toml** file: ```toml [dependencies] aws-config = { version = "1.1.7", features = ["behavior-version-latest"] } -aws-sdk-groundstation = "1.38.0" +aws-sdk-groundstation = "1.38.1" tokio = { version = "1", features = ["full"] } ``` diff --git a/sdk/groundstation/src/lib.rs b/sdk/groundstation/src/lib.rs index efe843b94671..3748fea35eea 100644 --- a/sdk/groundstation/src/lib.rs +++ b/sdk/groundstation/src/lib.rs @@ -31,7 +31,7 @@ //! ```toml //! [dependencies] //! aws-config = { version = "1.1.7", features = ["behavior-version-latest"] } -//! aws-sdk-groundstation = "1.38.0" +//! aws-sdk-groundstation = "1.38.1" //! tokio = { version = "1", features = ["full"] } //! ``` //! diff --git a/sdk/groundstation/src/types/_ephemeris_data.rs b/sdk/groundstation/src/types/_ephemeris_data.rs index 190801c5bec5..5071c923862a 100644 --- a/sdk/groundstation/src/types/_ephemeris_data.rs +++ b/sdk/groundstation/src/types/_ephemeris_data.rs @@ -5,7 +5,7 @@ #[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)] pub enum EphemerisData { ///

    Ephemeris data in Orbit Ephemeris Message (OEM) format.

    - ///

    Position, velocity, and acceleration units must be represented in km, km/s, and km/s**2, respectively, in ephemeris data lines. Covariance matrix line units must be represented in km**2 if computed from two positions, km**2/s if computed from one position and one velocity, and km**2/s**2 if computed from two velocities. Consult section 7.7.2 of The Consultative Committee for Space Data Systems (CCSDS) Recommended Standard for Orbit Data Messages for more information.

    + ///

    AWS Ground Station processes OEM Customer Provided Ephemerides according to the CCSDS standard with some extra restrictions. OEM files should be in KVN format. For more detail about the OEM format that AWS Ground Station supports, see OEM ephemeris format in the AWS Ground Station user guide.

    Oem(crate::types::OemEphemeris), ///

    Two-line element set (TLE) ephemeris.

    Tle(crate::types::TleEphemeris), diff --git a/sdk/groundstation/src/types/_oem_ephemeris.rs b/sdk/groundstation/src/types/_oem_ephemeris.rs index 638baa69d035..0cdf503689cb 100644 --- a/sdk/groundstation/src/types/_oem_ephemeris.rs +++ b/sdk/groundstation/src/types/_oem_ephemeris.rs @@ -1,7 +1,7 @@ // Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. ///

    Ephemeris data in Orbit Ephemeris Message (OEM) format.

    -///

    Position, velocity, and acceleration units must be represented in km, km/s, and km/s**2, respectively, in ephemeris data lines. Covariance matrix line units must be represented in km**2 if computed from two positions, km**2/s if computed from one position and one velocity, and km**2/s**2 if computed from two velocities. Consult section 7.7.2 of The Consultative Committee for Space Data Systems (CCSDS) Recommended Standard for Orbit Data Messages for more information.

    +///

    AWS Ground Station processes OEM Customer Provided Ephemerides according to the CCSDS standard with some extra restrictions. OEM files should be in KVN format. For more detail about the OEM format that AWS Ground Station supports, see OEM ephemeris format in the AWS Ground Station user guide.

    #[non_exhaustive] #[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)] pub struct OemEphemeris { diff --git a/sdk/medialive/Cargo.toml b/sdk/medialive/Cargo.toml index cd2310b53f7e..715f2d74bc79 100644 --- a/sdk/medialive/Cargo.toml +++ b/sdk/medialive/Cargo.toml @@ -1,7 +1,7 @@ # Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. [package] name = "aws-sdk-medialive" -version = "1.44.0" +version = "1.45.0" authors = ["AWS Rust SDK Team ", "Russell Cohen "] description = "AWS SDK for AWS Elemental MediaLive" edition = "2021" diff --git a/sdk/medialive/README.md b/sdk/medialive/README.md index a0fb5d6f013b..1a952a9d2f1e 100644 --- a/sdk/medialive/README.md +++ b/sdk/medialive/README.md @@ -14,7 +14,7 @@ your project, add the following to your **Cargo.toml** file: ```toml [dependencies] aws-config = { version = "1.1.7", features = ["behavior-version-latest"] } -aws-sdk-medialive = "1.44.0" +aws-sdk-medialive = "1.45.0" tokio = { version = "1", features = ["full"] } ``` diff --git a/sdk/medialive/src/client/update_multiplex.rs b/sdk/medialive/src/client/update_multiplex.rs index 1a6ad518df7c..04c772bc4a41 100644 --- a/sdk/medialive/src/client/update_multiplex.rs +++ b/sdk/medialive/src/client/update_multiplex.rs @@ -6,6 +6,7 @@ impl super::Client { /// - [`multiplex_id(impl Into)`](crate::operation::update_multiplex::builders::UpdateMultiplexFluentBuilder::multiplex_id) / [`set_multiplex_id(Option)`](crate::operation::update_multiplex::builders::UpdateMultiplexFluentBuilder::set_multiplex_id):
    required: **true**
    ID of the multiplex to update.
    /// - [`multiplex_settings(MultiplexSettings)`](crate::operation::update_multiplex::builders::UpdateMultiplexFluentBuilder::multiplex_settings) / [`set_multiplex_settings(Option)`](crate::operation::update_multiplex::builders::UpdateMultiplexFluentBuilder::set_multiplex_settings):
    required: **false**
    The new settings for a multiplex.
    /// - [`name(impl Into)`](crate::operation::update_multiplex::builders::UpdateMultiplexFluentBuilder::name) / [`set_name(Option)`](crate::operation::update_multiplex::builders::UpdateMultiplexFluentBuilder::set_name):
    required: **false**
    Name of the multiplex.
    + /// - [`packet_identifiers_mapping(impl Into, MultiplexProgramPacketIdentifiersMap)`](crate::operation::update_multiplex::builders::UpdateMultiplexFluentBuilder::packet_identifiers_mapping) / [`set_packet_identifiers_mapping(Option>)`](crate::operation::update_multiplex::builders::UpdateMultiplexFluentBuilder::set_packet_identifiers_mapping):
    required: **false**
    Placeholder documentation for MultiplexPacketIdentifiersMapping
    /// - On success, responds with [`UpdateMultiplexOutput`](crate::operation::update_multiplex::UpdateMultiplexOutput) with field(s): /// - [`multiplex(Option)`](crate::operation::update_multiplex::UpdateMultiplexOutput::multiplex): The updated multiplex. /// - On failure, responds with [`SdkError`](crate::operation::update_multiplex::UpdateMultiplexError) diff --git a/sdk/medialive/src/lib.rs b/sdk/medialive/src/lib.rs index c7c81b3a26b1..5a73450ea94e 100644 --- a/sdk/medialive/src/lib.rs +++ b/sdk/medialive/src/lib.rs @@ -31,7 +31,7 @@ //! ```toml //! [dependencies] //! aws-config = { version = "1.1.7", features = ["behavior-version-latest"] } -//! aws-sdk-medialive = "1.44.0" +//! aws-sdk-medialive = "1.45.0" //! tokio = { version = "1", features = ["full"] } //! ``` //! diff --git a/sdk/medialive/src/operation/update_multiplex/_update_multiplex_input.rs b/sdk/medialive/src/operation/update_multiplex/_update_multiplex_input.rs index 133bfc3135dc..32866c058ed7 100644 --- a/sdk/medialive/src/operation/update_multiplex/_update_multiplex_input.rs +++ b/sdk/medialive/src/operation/update_multiplex/_update_multiplex_input.rs @@ -10,6 +10,9 @@ pub struct UpdateMultiplexInput { pub multiplex_settings: ::std::option::Option, /// Name of the multiplex. pub name: ::std::option::Option<::std::string::String>, + /// Placeholder documentation for MultiplexPacketIdentifiersMapping + pub packet_identifiers_mapping: + ::std::option::Option<::std::collections::HashMap<::std::string::String, crate::types::MultiplexProgramPacketIdentifiersMap>>, } impl UpdateMultiplexInput { /// ID of the multiplex to update. @@ -24,6 +27,12 @@ impl UpdateMultiplexInput { pub fn name(&self) -> ::std::option::Option<&str> { self.name.as_deref() } + /// Placeholder documentation for MultiplexPacketIdentifiersMapping + pub fn packet_identifiers_mapping( + &self, + ) -> ::std::option::Option<&::std::collections::HashMap<::std::string::String, crate::types::MultiplexProgramPacketIdentifiersMap>> { + self.packet_identifiers_mapping.as_ref() + } } impl UpdateMultiplexInput { /// Creates a new builder-style object to manufacture [`UpdateMultiplexInput`](crate::operation::update_multiplex::UpdateMultiplexInput). @@ -39,6 +48,8 @@ pub struct UpdateMultiplexInputBuilder { pub(crate) multiplex_id: ::std::option::Option<::std::string::String>, pub(crate) multiplex_settings: ::std::option::Option, pub(crate) name: ::std::option::Option<::std::string::String>, + pub(crate) packet_identifiers_mapping: + ::std::option::Option<::std::collections::HashMap<::std::string::String, crate::types::MultiplexProgramPacketIdentifiersMap>>, } impl UpdateMultiplexInputBuilder { /// ID of the multiplex to update. @@ -84,6 +95,35 @@ impl UpdateMultiplexInputBuilder { pub fn get_name(&self) -> &::std::option::Option<::std::string::String> { &self.name } + /// Adds a key-value pair to `packet_identifiers_mapping`. + /// + /// To override the contents of this collection use [`set_packet_identifiers_mapping`](Self::set_packet_identifiers_mapping). + /// + /// Placeholder documentation for MultiplexPacketIdentifiersMapping + pub fn packet_identifiers_mapping( + mut self, + k: impl ::std::convert::Into<::std::string::String>, + v: crate::types::MultiplexProgramPacketIdentifiersMap, + ) -> Self { + let mut hash_map = self.packet_identifiers_mapping.unwrap_or_default(); + hash_map.insert(k.into(), v); + self.packet_identifiers_mapping = ::std::option::Option::Some(hash_map); + self + } + /// Placeholder documentation for MultiplexPacketIdentifiersMapping + pub fn set_packet_identifiers_mapping( + mut self, + input: ::std::option::Option<::std::collections::HashMap<::std::string::String, crate::types::MultiplexProgramPacketIdentifiersMap>>, + ) -> Self { + self.packet_identifiers_mapping = input; + self + } + /// Placeholder documentation for MultiplexPacketIdentifiersMapping + pub fn get_packet_identifiers_mapping( + &self, + ) -> &::std::option::Option<::std::collections::HashMap<::std::string::String, crate::types::MultiplexProgramPacketIdentifiersMap>> { + &self.packet_identifiers_mapping + } /// Consumes the builder and constructs a [`UpdateMultiplexInput`](crate::operation::update_multiplex::UpdateMultiplexInput). pub fn build( self, @@ -92,6 +132,7 @@ impl UpdateMultiplexInputBuilder { multiplex_id: self.multiplex_id, multiplex_settings: self.multiplex_settings, name: self.name, + packet_identifiers_mapping: self.packet_identifiers_mapping, }) } } diff --git a/sdk/medialive/src/operation/update_multiplex/builders.rs b/sdk/medialive/src/operation/update_multiplex/builders.rs index a5f678b197b9..5e9eca1096c0 100644 --- a/sdk/medialive/src/operation/update_multiplex/builders.rs +++ b/sdk/medialive/src/operation/update_multiplex/builders.rs @@ -150,4 +150,32 @@ impl UpdateMultiplexFluentBuilder { pub fn get_name(&self) -> &::std::option::Option<::std::string::String> { self.inner.get_name() } + /// + /// Adds a key-value pair to `PacketIdentifiersMapping`. + /// + /// To override the contents of this collection use [`set_packet_identifiers_mapping`](Self::set_packet_identifiers_mapping). + /// + /// Placeholder documentation for MultiplexPacketIdentifiersMapping + pub fn packet_identifiers_mapping( + mut self, + k: impl ::std::convert::Into<::std::string::String>, + v: crate::types::MultiplexProgramPacketIdentifiersMap, + ) -> Self { + self.inner = self.inner.packet_identifiers_mapping(k.into(), v); + self + } + /// Placeholder documentation for MultiplexPacketIdentifiersMapping + pub fn set_packet_identifiers_mapping( + mut self, + input: ::std::option::Option<::std::collections::HashMap<::std::string::String, crate::types::MultiplexProgramPacketIdentifiersMap>>, + ) -> Self { + self.inner = self.inner.set_packet_identifiers_mapping(input); + self + } + /// Placeholder documentation for MultiplexPacketIdentifiersMapping + pub fn get_packet_identifiers_mapping( + &self, + ) -> &::std::option::Option<::std::collections::HashMap<::std::string::String, crate::types::MultiplexProgramPacketIdentifiersMap>> { + self.inner.get_packet_identifiers_mapping() + } } diff --git a/sdk/medialive/src/protocol_serde/shape_multiplex_program_packet_identifiers_map.rs b/sdk/medialive/src/protocol_serde/shape_multiplex_program_packet_identifiers_map.rs index 4fec4ca30dc5..81b0da3c8ab2 100644 --- a/sdk/medialive/src/protocol_serde/shape_multiplex_program_packet_identifiers_map.rs +++ b/sdk/medialive/src/protocol_serde/shape_multiplex_program_packet_identifiers_map.rs @@ -89,6 +89,30 @@ where .transpose()?, ); } + "aribCaptionsPid" => { + builder = builder.set_arib_captions_pid( + ::aws_smithy_json::deserialize::token::expect_number_or_null(tokens.next())? + .map(i32::try_from) + .transpose()?, + ); + } + "dvbTeletextPids" => { + builder = builder.set_dvb_teletext_pids(crate::protocol_serde::shape_list_of_integer::de_list_of_integer(tokens)?); + } + "ecmPid" => { + builder = builder.set_ecm_pid( + ::aws_smithy_json::deserialize::token::expect_number_or_null(tokens.next())? + .map(i32::try_from) + .transpose()?, + ); + } + "smpte2038Pid" => { + builder = builder.set_smpte2038_pid( + ::aws_smithy_json::deserialize::token::expect_number_or_null(tokens.next())? + .map(i32::try_from) + .transpose()?, + ); + } _ => ::aws_smithy_json::deserialize::token::skip_value(tokens)?, }, other => { @@ -106,3 +130,142 @@ where )), } } + +pub fn ser_multiplex_program_packet_identifiers_map( + object: &mut ::aws_smithy_json::serialize::JsonObjectWriter, + input: &crate::types::MultiplexProgramPacketIdentifiersMap, +) -> Result<(), ::aws_smithy_types::error::operation::SerializationError> { + if let Some(var_1) = &input.audio_pids { + let mut array_2 = object.key("audioPids").start_array(); + for item_3 in var_1 { + { + array_2.value().number( + #[allow(clippy::useless_conversion)] + ::aws_smithy_types::Number::NegInt((*item_3).into()), + ); + } + } + array_2.finish(); + } + if let Some(var_4) = &input.dvb_sub_pids { + let mut array_5 = object.key("dvbSubPids").start_array(); + for item_6 in var_4 { + { + array_5.value().number( + #[allow(clippy::useless_conversion)] + ::aws_smithy_types::Number::NegInt((*item_6).into()), + ); + } + } + array_5.finish(); + } + if let Some(var_7) = &input.dvb_teletext_pid { + object.key("dvbTeletextPid").number( + #[allow(clippy::useless_conversion)] + ::aws_smithy_types::Number::NegInt((*var_7).into()), + ); + } + if let Some(var_8) = &input.etv_platform_pid { + object.key("etvPlatformPid").number( + #[allow(clippy::useless_conversion)] + ::aws_smithy_types::Number::NegInt((*var_8).into()), + ); + } + if let Some(var_9) = &input.etv_signal_pid { + object.key("etvSignalPid").number( + #[allow(clippy::useless_conversion)] + ::aws_smithy_types::Number::NegInt((*var_9).into()), + ); + } + if let Some(var_10) = &input.klv_data_pids { + let mut array_11 = object.key("klvDataPids").start_array(); + for item_12 in var_10 { + { + array_11.value().number( + #[allow(clippy::useless_conversion)] + ::aws_smithy_types::Number::NegInt((*item_12).into()), + ); + } + } + array_11.finish(); + } + if let Some(var_13) = &input.pcr_pid { + object.key("pcrPid").number( + #[allow(clippy::useless_conversion)] + ::aws_smithy_types::Number::NegInt((*var_13).into()), + ); + } + if let Some(var_14) = &input.pmt_pid { + object.key("pmtPid").number( + #[allow(clippy::useless_conversion)] + ::aws_smithy_types::Number::NegInt((*var_14).into()), + ); + } + if let Some(var_15) = &input.private_metadata_pid { + object.key("privateMetadataPid").number( + #[allow(clippy::useless_conversion)] + ::aws_smithy_types::Number::NegInt((*var_15).into()), + ); + } + if let Some(var_16) = &input.scte27_pids { + let mut array_17 = object.key("scte27Pids").start_array(); + for item_18 in var_16 { + { + array_17.value().number( + #[allow(clippy::useless_conversion)] + ::aws_smithy_types::Number::NegInt((*item_18).into()), + ); + } + } + array_17.finish(); + } + if let Some(var_19) = &input.scte35_pid { + object.key("scte35Pid").number( + #[allow(clippy::useless_conversion)] + ::aws_smithy_types::Number::NegInt((*var_19).into()), + ); + } + if let Some(var_20) = &input.timed_metadata_pid { + object.key("timedMetadataPid").number( + #[allow(clippy::useless_conversion)] + ::aws_smithy_types::Number::NegInt((*var_20).into()), + ); + } + if let Some(var_21) = &input.video_pid { + object.key("videoPid").number( + #[allow(clippy::useless_conversion)] + ::aws_smithy_types::Number::NegInt((*var_21).into()), + ); + } + if let Some(var_22) = &input.arib_captions_pid { + object.key("aribCaptionsPid").number( + #[allow(clippy::useless_conversion)] + ::aws_smithy_types::Number::NegInt((*var_22).into()), + ); + } + if let Some(var_23) = &input.dvb_teletext_pids { + let mut array_24 = object.key("dvbTeletextPids").start_array(); + for item_25 in var_23 { + { + array_24.value().number( + #[allow(clippy::useless_conversion)] + ::aws_smithy_types::Number::NegInt((*item_25).into()), + ); + } + } + array_24.finish(); + } + if let Some(var_26) = &input.ecm_pid { + object.key("ecmPid").number( + #[allow(clippy::useless_conversion)] + ::aws_smithy_types::Number::NegInt((*var_26).into()), + ); + } + if let Some(var_27) = &input.smpte2038_pid { + object.key("smpte2038Pid").number( + #[allow(clippy::useless_conversion)] + ::aws_smithy_types::Number::NegInt((*var_27).into()), + ); + } + Ok(()) +} diff --git a/sdk/medialive/src/protocol_serde/shape_update_multiplex_input.rs b/sdk/medialive/src/protocol_serde/shape_update_multiplex_input.rs index 2321c6cbb712..90c9e8a9a429 100644 --- a/sdk/medialive/src/protocol_serde/shape_update_multiplex_input.rs +++ b/sdk/medialive/src/protocol_serde/shape_update_multiplex_input.rs @@ -12,5 +12,21 @@ pub fn ser_update_multiplex_input_input( if let Some(var_3) = &input.name { object.key("name").string(var_3.as_str()); } + if let Some(var_4) = &input.packet_identifiers_mapping { + #[allow(unused_mut)] + let mut object_5 = object.key("packetIdentifiersMapping").start_object(); + for (key_6, value_7) in var_4 { + { + #[allow(unused_mut)] + let mut object_8 = object_5.key(key_6.as_str()).start_object(); + crate::protocol_serde::shape_multiplex_program_packet_identifiers_map::ser_multiplex_program_packet_identifiers_map( + &mut object_8, + value_7, + )?; + object_8.finish(); + } + } + object_5.finish(); + } Ok(()) } diff --git a/sdk/medialive/src/types/_multiplex_program_packet_identifiers_map.rs b/sdk/medialive/src/types/_multiplex_program_packet_identifiers_map.rs index 6d5e2aecf909..d45cc043b013 100644 --- a/sdk/medialive/src/types/_multiplex_program_packet_identifiers_map.rs +++ b/sdk/medialive/src/types/_multiplex_program_packet_identifiers_map.rs @@ -30,6 +30,14 @@ pub struct MultiplexProgramPacketIdentifiersMap { pub timed_metadata_pid: ::std::option::Option, /// Placeholder documentation for __integer pub video_pid: ::std::option::Option, + /// Placeholder documentation for __integer + pub arib_captions_pid: ::std::option::Option, + /// Placeholder documentation for __listOf__integer + pub dvb_teletext_pids: ::std::option::Option<::std::vec::Vec>, + /// Placeholder documentation for __integer + pub ecm_pid: ::std::option::Option, + /// Placeholder documentation for __integer + pub smpte2038_pid: ::std::option::Option, } impl MultiplexProgramPacketIdentifiersMap { /// Placeholder documentation for __listOf__integer @@ -92,6 +100,24 @@ impl MultiplexProgramPacketIdentifiersMap { pub fn video_pid(&self) -> ::std::option::Option { self.video_pid } + /// Placeholder documentation for __integer + pub fn arib_captions_pid(&self) -> ::std::option::Option { + self.arib_captions_pid + } + /// Placeholder documentation for __listOf__integer + /// + /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.dvb_teletext_pids.is_none()`. + pub fn dvb_teletext_pids(&self) -> &[i32] { + self.dvb_teletext_pids.as_deref().unwrap_or_default() + } + /// Placeholder documentation for __integer + pub fn ecm_pid(&self) -> ::std::option::Option { + self.ecm_pid + } + /// Placeholder documentation for __integer + pub fn smpte2038_pid(&self) -> ::std::option::Option { + self.smpte2038_pid + } } impl MultiplexProgramPacketIdentifiersMap { /// Creates a new builder-style object to manufacture [`MultiplexProgramPacketIdentifiersMap`](crate::types::MultiplexProgramPacketIdentifiersMap). @@ -117,6 +143,10 @@ pub struct MultiplexProgramPacketIdentifiersMapBuilder { pub(crate) scte35_pid: ::std::option::Option, pub(crate) timed_metadata_pid: ::std::option::Option, pub(crate) video_pid: ::std::option::Option, + pub(crate) arib_captions_pid: ::std::option::Option, + pub(crate) dvb_teletext_pids: ::std::option::Option<::std::vec::Vec>, + pub(crate) ecm_pid: ::std::option::Option, + pub(crate) smpte2038_pid: ::std::option::Option, } impl MultiplexProgramPacketIdentifiersMapBuilder { /// Appends an item to `audio_pids`. @@ -325,6 +355,68 @@ impl MultiplexProgramPacketIdentifiersMapBuilder { pub fn get_video_pid(&self) -> &::std::option::Option { &self.video_pid } + /// Placeholder documentation for __integer + pub fn arib_captions_pid(mut self, input: i32) -> Self { + self.arib_captions_pid = ::std::option::Option::Some(input); + self + } + /// Placeholder documentation for __integer + pub fn set_arib_captions_pid(mut self, input: ::std::option::Option) -> Self { + self.arib_captions_pid = input; + self + } + /// Placeholder documentation for __integer + pub fn get_arib_captions_pid(&self) -> &::std::option::Option { + &self.arib_captions_pid + } + /// Appends an item to `dvb_teletext_pids`. + /// + /// To override the contents of this collection use [`set_dvb_teletext_pids`](Self::set_dvb_teletext_pids). + /// + /// Placeholder documentation for __listOf__integer + pub fn dvb_teletext_pids(mut self, input: i32) -> Self { + let mut v = self.dvb_teletext_pids.unwrap_or_default(); + v.push(input); + self.dvb_teletext_pids = ::std::option::Option::Some(v); + self + } + /// Placeholder documentation for __listOf__integer + pub fn set_dvb_teletext_pids(mut self, input: ::std::option::Option<::std::vec::Vec>) -> Self { + self.dvb_teletext_pids = input; + self + } + /// Placeholder documentation for __listOf__integer + pub fn get_dvb_teletext_pids(&self) -> &::std::option::Option<::std::vec::Vec> { + &self.dvb_teletext_pids + } + /// Placeholder documentation for __integer + pub fn ecm_pid(mut self, input: i32) -> Self { + self.ecm_pid = ::std::option::Option::Some(input); + self + } + /// Placeholder documentation for __integer + pub fn set_ecm_pid(mut self, input: ::std::option::Option) -> Self { + self.ecm_pid = input; + self + } + /// Placeholder documentation for __integer + pub fn get_ecm_pid(&self) -> &::std::option::Option { + &self.ecm_pid + } + /// Placeholder documentation for __integer + pub fn smpte2038_pid(mut self, input: i32) -> Self { + self.smpte2038_pid = ::std::option::Option::Some(input); + self + } + /// Placeholder documentation for __integer + pub fn set_smpte2038_pid(mut self, input: ::std::option::Option) -> Self { + self.smpte2038_pid = input; + self + } + /// Placeholder documentation for __integer + pub fn get_smpte2038_pid(&self) -> &::std::option::Option { + &self.smpte2038_pid + } /// Consumes the builder and constructs a [`MultiplexProgramPacketIdentifiersMap`](crate::types::MultiplexProgramPacketIdentifiersMap). pub fn build(self) -> crate::types::MultiplexProgramPacketIdentifiersMap { crate::types::MultiplexProgramPacketIdentifiersMap { @@ -341,6 +433,10 @@ impl MultiplexProgramPacketIdentifiersMapBuilder { scte35_pid: self.scte35_pid, timed_metadata_pid: self.timed_metadata_pid, video_pid: self.video_pid, + arib_captions_pid: self.arib_captions_pid, + dvb_teletext_pids: self.dvb_teletext_pids, + ecm_pid: self.ecm_pid, + smpte2038_pid: self.smpte2038_pid, } } } diff --git a/sdk/sagemaker/Cargo.toml b/sdk/sagemaker/Cargo.toml index 27c8d849a4da..a16c1edfd58c 100644 --- a/sdk/sagemaker/Cargo.toml +++ b/sdk/sagemaker/Cargo.toml @@ -1,7 +1,7 @@ # Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. [package] name = "aws-sdk-sagemaker" -version = "1.63.0" +version = "1.64.0" authors = ["AWS Rust SDK Team ", "Russell Cohen "] description = "AWS SDK for Amazon SageMaker Service" edition = "2021" diff --git a/sdk/sagemaker/README.md b/sdk/sagemaker/README.md index cd1db00a68f5..ce9e7ef224c8 100644 --- a/sdk/sagemaker/README.md +++ b/sdk/sagemaker/README.md @@ -18,7 +18,7 @@ your project, add the following to your **Cargo.toml** file: ```toml [dependencies] aws-config = { version = "1.1.7", features = ["behavior-version-latest"] } -aws-sdk-sagemaker = "1.63.0" +aws-sdk-sagemaker = "1.64.0" tokio = { version = "1", features = ["full"] } ``` diff --git a/sdk/sagemaker/src/client/create_auto_ml_job_v2.rs b/sdk/sagemaker/src/client/create_auto_ml_job_v2.rs index 613595d4153c..f4e7cc8c5c7e 100644 --- a/sdk/sagemaker/src/client/create_auto_ml_job_v2.rs +++ b/sdk/sagemaker/src/client/create_auto_ml_job_v2.rs @@ -13,6 +13,7 @@ impl super::Client { /// - [`auto_ml_job_objective(AutoMlJobObjective)`](crate::operation::create_auto_ml_job_v2::builders::CreateAutoMLJobV2FluentBuilder::auto_ml_job_objective) / [`set_auto_ml_job_objective(Option)`](crate::operation::create_auto_ml_job_v2::builders::CreateAutoMLJobV2FluentBuilder::set_auto_ml_job_objective):
    required: **false**

    Specifies a metric to minimize or maximize as the objective of a job. If not specified, the default objective metric depends on the problem type. For the list of default values per problem type, see AutoMLJobObjective.

    • For tabular problem types: You must either provide both the AutoMLJobObjective and indicate the type of supervised learning problem in AutoMLProblemTypeConfig (TabularJobConfig.ProblemType), or none at all.

    • For text generation problem types (LLMs fine-tuning): Fine-tuning language models in Autopilot does not require setting the AutoMLJobObjective field. Autopilot fine-tunes LLMs without requiring multiple candidates to be trained and evaluated. Instead, using your dataset, Autopilot directly fine-tunes your target model to enhance a default objective metric, the cross-entropy loss. After fine-tuning a language model, you can evaluate the quality of its generated text using different metrics. For a list of the available metrics, see Metrics for fine-tuning LLMs in Autopilot.


    /// - [`model_deploy_config(ModelDeployConfig)`](crate::operation::create_auto_ml_job_v2::builders::CreateAutoMLJobV2FluentBuilder::model_deploy_config) / [`set_model_deploy_config(Option)`](crate::operation::create_auto_ml_job_v2::builders::CreateAutoMLJobV2FluentBuilder::set_model_deploy_config):
    required: **false**

    Specifies how to generate the endpoint name for an automatic one-click Autopilot model deployment.


    /// - [`data_split_config(AutoMlDataSplitConfig)`](crate::operation::create_auto_ml_job_v2::builders::CreateAutoMLJobV2FluentBuilder::data_split_config) / [`set_data_split_config(Option)`](crate::operation::create_auto_ml_job_v2::builders::CreateAutoMLJobV2FluentBuilder::set_data_split_config):
    required: **false**

    This structure specifies how to split the data into train and validation datasets.

    The validation and training datasets must contain the same headers. For jobs created by calling CreateAutoMLJob, the validation dataset must be less than 2 GB in size.

    This attribute must not be set for the time-series forecasting problem type, as Autopilot automatically splits the input dataset into training and validation sets.


    + /// - [`auto_ml_compute_config(AutoMlComputeConfig)`](crate::operation::create_auto_ml_job_v2::builders::CreateAutoMLJobV2FluentBuilder::auto_ml_compute_config) / [`set_auto_ml_compute_config(Option)`](crate::operation::create_auto_ml_job_v2::builders::CreateAutoMLJobV2FluentBuilder::set_auto_ml_compute_config):
    required: **false**

    Specifies the compute configuration for the AutoML job V2.


    /// - On success, responds with [`CreateAutoMlJobV2Output`](crate::operation::create_auto_ml_job_v2::CreateAutoMlJobV2Output) with field(s): /// - [`auto_ml_job_arn(Option)`](crate::operation::create_auto_ml_job_v2::CreateAutoMlJobV2Output::auto_ml_job_arn):

    The unique ARN assigned to the AutoMLJob when it is created.

    /// - On failure, responds with [`SdkError`](crate::operation::create_auto_ml_job_v2::CreateAutoMLJobV2Error) diff --git a/sdk/sagemaker/src/client/describe_auto_ml_job_v2.rs b/sdk/sagemaker/src/client/describe_auto_ml_job_v2.rs index 8d3c06fe4d68..908fb131acb6 100644 --- a/sdk/sagemaker/src/client/describe_auto_ml_job_v2.rs +++ b/sdk/sagemaker/src/client/describe_auto_ml_job_v2.rs @@ -27,6 +27,7 @@ impl super::Client { /// - [`model_deploy_result(Option)`](crate::operation::describe_auto_ml_job_v2::DescribeAutoMlJobV2Output::model_deploy_result):

    Provides information about endpoint for the model deployment.

    /// - [`data_split_config(Option)`](crate::operation::describe_auto_ml_job_v2::DescribeAutoMlJobV2Output::data_split_config):

    Returns the configuration settings of how the data are split into train and validation datasets.

    /// - [`security_config(Option)`](crate::operation::describe_auto_ml_job_v2::DescribeAutoMlJobV2Output::security_config):

    Returns the security configuration for traffic encryption or Amazon VPC settings.

    + /// - [`auto_ml_compute_config(Option)`](crate::operation::describe_auto_ml_job_v2::DescribeAutoMlJobV2Output::auto_ml_compute_config):

    The compute configuration used for the AutoML job V2.

    /// - On failure, responds with [`SdkError`](crate::operation::describe_auto_ml_job_v2::DescribeAutoMLJobV2Error) pub fn describe_auto_ml_job_v2(&self) -> crate::operation::describe_auto_ml_job_v2::builders::DescribeAutoMLJobV2FluentBuilder { crate::operation::describe_auto_ml_job_v2::builders::DescribeAutoMLJobV2FluentBuilder::new(self.handle.clone()) diff --git a/sdk/sagemaker/src/lib.rs b/sdk/sagemaker/src/lib.rs index 9837800f1039..a281fab00ef8 100644 --- a/sdk/sagemaker/src/lib.rs +++ b/sdk/sagemaker/src/lib.rs @@ -35,7 +35,7 @@ //! ```toml //! [dependencies] //! aws-config = { version = "1.1.7", features = ["behavior-version-latest"] } -//! aws-sdk-sagemaker = "1.63.0" +//! aws-sdk-sagemaker = "1.64.0" //! tokio = { version = "1", features = ["full"] } //! ``` //! diff --git a/sdk/sagemaker/src/operation/create_auto_ml_job/builders.rs b/sdk/sagemaker/src/operation/create_auto_ml_job/builders.rs index ee7b106ed5fa..6448ec39bfe7 100644 --- a/sdk/sagemaker/src/operation/create_auto_ml_job/builders.rs +++ b/sdk/sagemaker/src/operation/create_auto_ml_job/builders.rs @@ -22,7 +22,9 @@ impl crate::operation::create_auto_ml_job::builders::CreateAutoMlJobInputBuilder } /// Fluent builder constructing a request to `CreateAutoMLJob`. /// -///

    Creates an Autopilot job also referred to as Autopilot experiment or AutoML job.

    +///

    Creates an Autopilot job also referred to as Autopilot experiment or AutoML job.

    +///

    An AutoML job in SageMaker is a fully automated process that allows you to build machine learning models with minimal effort and machine learning expertise. When initiating an AutoML job, you provide your data and optionally specify parameters tailored to your use case. SageMaker then automates the entire model development lifecycle, including data preprocessing, model training, tuning, and evaluation. AutoML jobs are designed to simplify and accelerate the model building process by automating various tasks and exploring different combinations of machine learning algorithms, data preprocessing techniques, and hyperparameter values. The output of an AutoML job comprises one or more trained models ready for deployment and inference. Additionally, SageMaker AutoML jobs generate a candidate model leaderboard, allowing you to select the best-performing model for deployment.

    +///

    For more information about AutoML jobs, see https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-automate-model-development.html in the SageMaker developer guide.

    ///

    We recommend using the new versions CreateAutoMLJobV2 and DescribeAutoMLJobV2, which offer backward compatibility.

    ///

    CreateAutoMLJobV2 can manage tabular problem types identical to those of its previous version CreateAutoMLJob, as well as time-series forecasting, non-tabular problem types such as image or text classification, and text generation (LLMs fine-tuning).

    ///

    Find guidelines about how to migrate a CreateAutoMLJob to CreateAutoMLJobV2 in Migrate a CreateAutoMLJob to CreateAutoMLJobV2.

    diff --git a/sdk/sagemaker/src/operation/create_auto_ml_job_v2/_create_auto_ml_job_v2_input.rs b/sdk/sagemaker/src/operation/create_auto_ml_job_v2/_create_auto_ml_job_v2_input.rs index ecd2298961eb..4624986aad6b 100644 --- a/sdk/sagemaker/src/operation/create_auto_ml_job_v2/_create_auto_ml_job_v2_input.rs +++ b/sdk/sagemaker/src/operation/create_auto_ml_job_v2/_create_auto_ml_job_v2_input.rs @@ -45,6 +45,8 @@ pub struct CreateAutoMlJobV2Input { ///

    This attribute must not be set for the time-series forecasting problem type, as Autopilot automatically splits the input dataset into training and validation sets.

    ///
    pub data_split_config: ::std::option::Option, + ///

    Specifies the compute configuration for the AutoML job V2.

    + pub auto_ml_compute_config: ::std::option::Option, } impl CreateAutoMlJobV2Input { ///

    Identifies an Autopilot job. The name must be unique to your account and is case insensitive.

    @@ -113,6 +115,10 @@ impl CreateAutoMlJobV2Input { pub fn data_split_config(&self) -> ::std::option::Option<&crate::types::AutoMlDataSplitConfig> { self.data_split_config.as_ref() } + ///

    Specifies the compute configuration for the AutoML job V2.

    + pub fn auto_ml_compute_config(&self) -> ::std::option::Option<&crate::types::AutoMlComputeConfig> { + self.auto_ml_compute_config.as_ref() + } } impl CreateAutoMlJobV2Input { /// Creates a new builder-style object to manufacture [`CreateAutoMlJobV2Input`](crate::operation::create_auto_ml_job_v2::CreateAutoMlJobV2Input). @@ -135,6 +141,7 @@ pub struct CreateAutoMlJobV2InputBuilder { pub(crate) auto_ml_job_objective: ::std::option::Option, pub(crate) model_deploy_config: ::std::option::Option, pub(crate) data_split_config: ::std::option::Option, + pub(crate) auto_ml_compute_config: ::std::option::Option, } impl CreateAutoMlJobV2InputBuilder { ///

    Identifies an Autopilot job. The name must be unique to your account and is case insensitive.

    @@ -359,6 +366,20 @@ impl CreateAutoMlJobV2InputBuilder { pub fn get_data_split_config(&self) -> &::std::option::Option { &self.data_split_config } + ///

    Specifies the compute configuration for the AutoML job V2.

    + pub fn auto_ml_compute_config(mut self, input: crate::types::AutoMlComputeConfig) -> Self { + self.auto_ml_compute_config = ::std::option::Option::Some(input); + self + } + ///

    Specifies the compute configuration for the AutoML job V2.

    + pub fn set_auto_ml_compute_config(mut self, input: ::std::option::Option) -> Self { + self.auto_ml_compute_config = input; + self + } + ///

    Specifies the compute configuration for the AutoML job V2.

    + pub fn get_auto_ml_compute_config(&self) -> &::std::option::Option { + &self.auto_ml_compute_config + } /// Consumes the builder and constructs a [`CreateAutoMlJobV2Input`](crate::operation::create_auto_ml_job_v2::CreateAutoMlJobV2Input). pub fn build( self, @@ -375,6 +396,7 @@ impl CreateAutoMlJobV2InputBuilder { auto_ml_job_objective: self.auto_ml_job_objective, model_deploy_config: self.model_deploy_config, data_split_config: self.data_split_config, + auto_ml_compute_config: self.auto_ml_compute_config, }) } } diff --git a/sdk/sagemaker/src/operation/create_auto_ml_job_v2/builders.rs b/sdk/sagemaker/src/operation/create_auto_ml_job_v2/builders.rs index db98e2c2076e..028402fa5a9c 100644 --- a/sdk/sagemaker/src/operation/create_auto_ml_job_v2/builders.rs +++ b/sdk/sagemaker/src/operation/create_auto_ml_job_v2/builders.rs @@ -22,7 +22,10 @@ impl crate::operation::create_auto_ml_job_v2::builders::CreateAutoMlJobV2InputBu } /// Fluent builder constructing a request to `CreateAutoMLJobV2`. /// -///

    Creates an Autopilot job also referred to as Autopilot experiment or AutoML job V2.

    +///

    Creates an Autopilot job also referred to as Autopilot experiment or AutoML job V2.

    +///

    An AutoML job in SageMaker is a fully automated process that allows you to build machine learning models with minimal effort and machine learning expertise. When initiating an AutoML job, you provide your data and optionally specify parameters tailored to your use case. SageMaker then automates the entire model development lifecycle, including data preprocessing, model training, tuning, and evaluation. AutoML jobs are designed to simplify and accelerate the model building process by automating various tasks and exploring different combinations of machine learning algorithms, data preprocessing techniques, and hyperparameter values. The output of an AutoML job comprises one or more trained models ready for deployment and inference. Additionally, SageMaker AutoML jobs generate a candidate model leaderboard, allowing you to select the best-performing model for deployment.

    +///

    For more information about AutoML jobs, see https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-automate-model-development.html in the SageMaker developer guide.

    +///

    AutoML jobs V2 support various problem types such as regression, binary, and multiclass classification with tabular data, text and image classification, time-series forecasting, and fine-tuning of large language models (LLMs) for text generation.

    ///

    CreateAutoMLJobV2 and DescribeAutoMLJobV2 are new versions of CreateAutoMLJob and DescribeAutoMLJob which offer backward compatibility.

    ///

    CreateAutoMLJobV2 can manage tabular problem types identical to those of its previous version CreateAutoMLJob, as well as time-series forecasting, non-tabular problem types such as image or text classification, and text generation (LLMs fine-tuning).

    ///

    Find guidelines about how to migrate a CreateAutoMLJob to CreateAutoMLJobV2 in Migrate a CreateAutoMLJob to CreateAutoMLJobV2.

    @@ -330,4 +333,18 @@ impl CreateAutoMLJobV2FluentBuilder { pub fn get_data_split_config(&self) -> &::std::option::Option { self.inner.get_data_split_config() } + ///

    Specifies the compute configuration for the AutoML job V2.

    + pub fn auto_ml_compute_config(mut self, input: crate::types::AutoMlComputeConfig) -> Self { + self.inner = self.inner.auto_ml_compute_config(input); + self + } + ///

    Specifies the compute configuration for the AutoML job V2.

    + pub fn set_auto_ml_compute_config(mut self, input: ::std::option::Option) -> Self { + self.inner = self.inner.set_auto_ml_compute_config(input); + self + } + ///

    Specifies the compute configuration for the AutoML job V2.

    + pub fn get_auto_ml_compute_config(&self) -> &::std::option::Option { + self.inner.get_auto_ml_compute_config() + } } diff --git a/sdk/sagemaker/src/operation/describe_auto_ml_job_v2/_describe_auto_ml_job_v2_output.rs b/sdk/sagemaker/src/operation/describe_auto_ml_job_v2/_describe_auto_ml_job_v2_output.rs index fbc3b8ba02b3..b8c2222292e3 100644 --- a/sdk/sagemaker/src/operation/describe_auto_ml_job_v2/_describe_auto_ml_job_v2_output.rs +++ b/sdk/sagemaker/src/operation/describe_auto_ml_job_v2/_describe_auto_ml_job_v2_output.rs @@ -47,6 +47,8 @@ pub struct DescribeAutoMlJobV2Output { pub data_split_config: ::std::option::Option, ///

    Returns the security configuration for traffic encryption or Amazon VPC settings.

    pub security_config: ::std::option::Option, + ///

    The compute configuration used for the AutoML job V2.

    + pub auto_ml_compute_config: ::std::option::Option, _request_id: Option, } impl DescribeAutoMlJobV2Output { @@ -142,6 +144,10 @@ impl DescribeAutoMlJobV2Output { pub fn security_config(&self) -> ::std::option::Option<&crate::types::AutoMlSecurityConfig> { self.security_config.as_ref() } + ///

    The compute configuration used for the AutoML job V2.

    + pub fn auto_ml_compute_config(&self) -> ::std::option::Option<&crate::types::AutoMlComputeConfig> { + self.auto_ml_compute_config.as_ref() + } } impl ::aws_types::request_id::RequestId for DescribeAutoMlJobV2Output { fn request_id(&self) -> Option<&str> { @@ -181,6 +187,7 @@ pub struct DescribeAutoMlJobV2OutputBuilder { pub(crate) model_deploy_result: ::std::option::Option, pub(crate) data_split_config: ::std::option::Option, pub(crate) security_config: ::std::option::Option, + pub(crate) auto_ml_compute_config: ::std::option::Option, _request_id: Option, } impl DescribeAutoMlJobV2OutputBuilder { @@ -512,6 +519,20 @@ impl DescribeAutoMlJobV2OutputBuilder { pub fn get_security_config(&self) -> &::std::option::Option { &self.security_config } + ///

    The compute configuration used for the AutoML job V2.

    + pub fn auto_ml_compute_config(mut self, input: crate::types::AutoMlComputeConfig) -> Self { + self.auto_ml_compute_config = ::std::option::Option::Some(input); + self + } + ///

    The compute configuration used for the AutoML job V2.

    + pub fn set_auto_ml_compute_config(mut self, input: ::std::option::Option) -> Self { + self.auto_ml_compute_config = input; + self + } + ///

    The compute configuration used for the AutoML job V2.

    + pub fn get_auto_ml_compute_config(&self) -> &::std::option::Option { + &self.auto_ml_compute_config + } pub(crate) fn _request_id(mut self, request_id: impl Into) -> Self { self._request_id = Some(request_id.into()); self @@ -546,6 +567,7 @@ impl DescribeAutoMlJobV2OutputBuilder { model_deploy_result: self.model_deploy_result, data_split_config: self.data_split_config, security_config: self.security_config, + auto_ml_compute_config: self.auto_ml_compute_config, _request_id: self._request_id, } } diff --git a/sdk/sagemaker/src/protocol_serde.rs b/sdk/sagemaker/src/protocol_serde.rs index c8eb17d526a6..b1ef1a534e6f 100644 --- a/sdk/sagemaker/src/protocol_serde.rs +++ b/sdk/sagemaker/src/protocol_serde.rs @@ -1413,6 +1413,8 @@ pub(crate) mod shape_auto_ml_candidates; pub(crate) mod shape_auto_ml_channel; +pub(crate) mod shape_auto_ml_compute_config; + pub(crate) mod shape_auto_ml_data_split_config; pub(crate) mod shape_auto_ml_input_data_config; @@ -2231,6 +2233,8 @@ pub(crate) mod shape_edge_model_stat; pub(crate) mod shape_edge_packaging_job_summary; +pub(crate) mod shape_emr_serverless_compute_config; + pub(crate) mod shape_endpoint_config_summary; pub(crate) mod shape_endpoint_info; @@ -2723,6 +2727,8 @@ pub(crate) mod shape_efs_file_system; pub(crate) mod shape_efs_file_system_config; +pub(crate) mod shape_emr_serverless_settings; + pub(crate) mod shape_emr_settings; pub(crate) mod shape_endpoint; diff --git a/sdk/sagemaker/src/protocol_serde/shape_auto_ml_compute_config.rs b/sdk/sagemaker/src/protocol_serde/shape_auto_ml_compute_config.rs new file mode 100644 index 000000000000..289e621ccf8e --- /dev/null +++ b/sdk/sagemaker/src/protocol_serde/shape_auto_ml_compute_config.rs @@ -0,0 +1,51 @@ +// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. +pub fn ser_auto_ml_compute_config( + object: &mut ::aws_smithy_json::serialize::JsonObjectWriter, + input: &crate::types::AutoMlComputeConfig, +) -> Result<(), ::aws_smithy_types::error::operation::SerializationError> { + if let Some(var_1) = &input.emr_serverless_compute_config { + #[allow(unused_mut)] + let mut object_2 = object.key("EmrServerlessComputeConfig").start_object(); + crate::protocol_serde::shape_emr_serverless_compute_config::ser_emr_serverless_compute_config(&mut object_2, var_1)?; + object_2.finish(); + } + Ok(()) +} + +pub(crate) fn de_auto_ml_compute_config<'a, I>( + tokens: &mut ::std::iter::Peekable, +) -> Result, ::aws_smithy_json::deserialize::error::DeserializeError> +where + I: Iterator, ::aws_smithy_json::deserialize::error::DeserializeError>>, +{ + match tokens.next().transpose()? { + Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None), + Some(::aws_smithy_json::deserialize::Token::StartObject { .. }) => { + #[allow(unused_mut)] + let mut builder = crate::types::builders::AutoMlComputeConfigBuilder::default(); + loop { + match tokens.next().transpose()? { + Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break, + Some(::aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => match key.to_unescaped()?.as_ref() { + "EmrServerlessComputeConfig" => { + builder = builder.set_emr_serverless_compute_config( + crate::protocol_serde::shape_emr_serverless_compute_config::de_emr_serverless_compute_config(tokens)?, + ); + } + _ => ::aws_smithy_json::deserialize::token::skip_value(tokens)?, + }, + other => { + return Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(format!( + "expected object key or end object, found: {:?}", + other + ))) + } + } + } + Ok(Some(builder.build())) + } + _ => Err(::aws_smithy_json::deserialize::error::DeserializeError::custom( + "expected start object or null", + )), + } +} diff --git a/sdk/sagemaker/src/protocol_serde/shape_canvas_app_settings.rs b/sdk/sagemaker/src/protocol_serde/shape_canvas_app_settings.rs index 059b4a3aa58a..318104cd59ee 100644 --- a/sdk/sagemaker/src/protocol_serde/shape_canvas_app_settings.rs +++ b/sdk/sagemaker/src/protocol_serde/shape_canvas_app_settings.rs @@ -51,6 +51,12 @@ pub fn ser_canvas_app_settings( crate::protocol_serde::shape_generative_ai_settings::ser_generative_ai_settings(&mut object_16, var_15)?; object_16.finish(); } + if let Some(var_17) = &input.emr_serverless_settings { + #[allow(unused_mut)] + let mut object_18 = object.key("EmrServerlessSettings").start_object(); + crate::protocol_serde::shape_emr_serverless_settings::ser_emr_serverless_settings(&mut object_18, var_17)?; + object_18.finish(); + } Ok(()) } @@ -98,6 +104,11 @@ where builder = builder .set_generative_ai_settings(crate::protocol_serde::shape_generative_ai_settings::de_generative_ai_settings(tokens)?); } + "EmrServerlessSettings" => { + builder = builder.set_emr_serverless_settings( + crate::protocol_serde::shape_emr_serverless_settings::de_emr_serverless_settings(tokens)?, + ); + } _ => ::aws_smithy_json::deserialize::token::skip_value(tokens)?, }, other => { diff --git a/sdk/sagemaker/src/protocol_serde/shape_create_auto_ml_job_v2_input.rs b/sdk/sagemaker/src/protocol_serde/shape_create_auto_ml_job_v2_input.rs index 94ee37d6d171..fd98354e21c9 100644 --- a/sdk/sagemaker/src/protocol_serde/shape_create_auto_ml_job_v2_input.rs +++ b/sdk/sagemaker/src/protocol_serde/shape_create_auto_ml_job_v2_input.rs @@ -69,5 +69,11 @@ pub fn ser_create_auto_ml_job_v2_input_input( crate::protocol_serde::shape_auto_ml_data_split_config::ser_auto_ml_data_split_config(&mut object_22, var_21)?; object_22.finish(); } + if let Some(var_23) = &input.auto_ml_compute_config { + #[allow(unused_mut)] + let mut object_24 = object.key("AutoMLComputeConfig").start_object(); + crate::protocol_serde::shape_auto_ml_compute_config::ser_auto_ml_compute_config(&mut object_24, var_23)?; + object_24.finish(); + } Ok(()) } diff --git a/sdk/sagemaker/src/protocol_serde/shape_describe_auto_ml_job_v2.rs b/sdk/sagemaker/src/protocol_serde/shape_describe_auto_ml_job_v2.rs index 2bfbeb41de4a..db493303e2c2 100644 --- a/sdk/sagemaker/src/protocol_serde/shape_describe_auto_ml_job_v2.rs +++ b/sdk/sagemaker/src/protocol_serde/shape_describe_auto_ml_job_v2.rs @@ -199,6 +199,10 @@ pub(crate) fn de_describe_auto_ml_job_v2( "SecurityConfig" => { builder = builder.set_security_config(crate::protocol_serde::shape_auto_ml_security_config::de_auto_ml_security_config(tokens)?); } + "AutoMLComputeConfig" => { + builder = + builder.set_auto_ml_compute_config(crate::protocol_serde::shape_auto_ml_compute_config::de_auto_ml_compute_config(tokens)?); + } _ => ::aws_smithy_json::deserialize::token::skip_value(tokens)?, }, other => { diff --git a/sdk/sagemaker/src/protocol_serde/shape_emr_serverless_compute_config.rs b/sdk/sagemaker/src/protocol_serde/shape_emr_serverless_compute_config.rs new file mode 100644 index 000000000000..46c716480574 --- /dev/null +++ b/sdk/sagemaker/src/protocol_serde/shape_emr_serverless_compute_config.rs @@ -0,0 +1,50 @@ +// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. +pub fn ser_emr_serverless_compute_config( + object: &mut ::aws_smithy_json::serialize::JsonObjectWriter, + input: &crate::types::EmrServerlessComputeConfig, +) -> Result<(), ::aws_smithy_types::error::operation::SerializationError> { + if let Some(var_1) = &input.execution_role_arn { + object.key("ExecutionRoleARN").string(var_1.as_str()); + } + Ok(()) +} + +pub(crate) fn de_emr_serverless_compute_config<'a, I>( + tokens: &mut ::std::iter::Peekable, +) -> Result, ::aws_smithy_json::deserialize::error::DeserializeError> +where + I: Iterator, ::aws_smithy_json::deserialize::error::DeserializeError>>, +{ + match tokens.next().transpose()? { + Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None), + Some(::aws_smithy_json::deserialize::Token::StartObject { .. }) => { + #[allow(unused_mut)] + let mut builder = crate::types::builders::EmrServerlessComputeConfigBuilder::default(); + loop { + match tokens.next().transpose()? { + Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break, + Some(::aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => match key.to_unescaped()?.as_ref() { + "ExecutionRoleARN" => { + builder = builder.set_execution_role_arn( + ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())? + .map(|s| s.to_unescaped().map(|u| u.into_owned())) + .transpose()?, + ); + } + _ => ::aws_smithy_json::deserialize::token::skip_value(tokens)?, + }, + other => { + return Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(format!( + "expected object key or end object, found: {:?}", + other + ))) + } + } + } + Ok(Some(crate::serde_util::emr_serverless_compute_config_correct_errors(builder).build())) + } + _ => Err(::aws_smithy_json::deserialize::error::DeserializeError::custom( + "expected start object or null", + )), + } +} diff --git a/sdk/sagemaker/src/protocol_serde/shape_emr_serverless_settings.rs b/sdk/sagemaker/src/protocol_serde/shape_emr_serverless_settings.rs new file mode 100644 index 000000000000..523b45062672 --- /dev/null +++ b/sdk/sagemaker/src/protocol_serde/shape_emr_serverless_settings.rs @@ -0,0 +1,60 @@ +// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. +pub fn ser_emr_serverless_settings( + object: &mut ::aws_smithy_json::serialize::JsonObjectWriter, + input: &crate::types::EmrServerlessSettings, +) -> Result<(), ::aws_smithy_types::error::operation::SerializationError> { + if let Some(var_1) = &input.execution_role_arn { + object.key("ExecutionRoleArn").string(var_1.as_str()); + } + if let Some(var_2) = &input.status { + object.key("Status").string(var_2.as_str()); + } + Ok(()) +} + +pub(crate) fn de_emr_serverless_settings<'a, I>( + tokens: &mut ::std::iter::Peekable, +) -> Result, ::aws_smithy_json::deserialize::error::DeserializeError> +where + I: Iterator, ::aws_smithy_json::deserialize::error::DeserializeError>>, +{ + match tokens.next().transpose()? { + Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None), + Some(::aws_smithy_json::deserialize::Token::StartObject { .. }) => { + #[allow(unused_mut)] + let mut builder = crate::types::builders::EmrServerlessSettingsBuilder::default(); + loop { + match tokens.next().transpose()? { + Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break, + Some(::aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => match key.to_unescaped()?.as_ref() { + "ExecutionRoleArn" => { + builder = builder.set_execution_role_arn( + ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())? + .map(|s| s.to_unescaped().map(|u| u.into_owned())) + .transpose()?, + ); + } + "Status" => { + builder = builder.set_status( + ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())? + .map(|s| s.to_unescaped().map(|u| crate::types::FeatureStatus::from(u.as_ref()))) + .transpose()?, + ); + } + _ => ::aws_smithy_json::deserialize::token::skip_value(tokens)?, + }, + other => { + return Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(format!( + "expected object key or end object, found: {:?}", + other + ))) + } + } + } + Ok(Some(builder.build())) + } + _ => Err(::aws_smithy_json::deserialize::error::DeserializeError::custom( + "expected start object or null", + )), + } +} diff --git a/sdk/sagemaker/src/serde_util.rs b/sdk/sagemaker/src/serde_util.rs index 47e2d87247e4..311ee8b4893c 100644 --- a/sdk/sagemaker/src/serde_util.rs +++ b/sdk/sagemaker/src/serde_util.rs @@ -3736,6 +3736,15 @@ pub(crate) fn edge_packaging_job_summary_correct_errors( builder } +pub(crate) fn emr_serverless_compute_config_correct_errors( + mut builder: crate::types::builders::EmrServerlessComputeConfigBuilder, +) -> crate::types::builders::EmrServerlessComputeConfigBuilder { + if builder.execution_role_arn.is_none() { + builder.execution_role_arn = Some(Default::default()) + } + builder +} + pub(crate) fn endpoint_config_summary_correct_errors( mut builder: crate::types::builders::EndpointConfigSummaryBuilder, ) -> crate::types::builders::EndpointConfigSummaryBuilder { @@ -5727,9 +5736,6 @@ pub(crate) fn processing_s3_output_correct_errors( if builder.s3_uri.is_none() { builder.s3_uri = Some(Default::default()) } - if builder.local_path.is_none() { - builder.local_path = Some(Default::default()) - } if builder.s3_upload_mode.is_none() { builder.s3_upload_mode = "no value was set".parse::().ok() } diff --git a/sdk/sagemaker/src/types.rs b/sdk/sagemaker/src/types.rs index 4090a1289422..045e986f76f8 100644 --- a/sdk/sagemaker/src/types.rs +++ b/sdk/sagemaker/src/types.rs @@ -69,12 +69,14 @@ pub use crate::types::_code_editor_app_settings::CodeEditorAppSettings; pub use crate::types::_canvas_app_settings::CanvasAppSettings; +pub use crate::types::_emr_serverless_settings::EmrServerlessSettings; + +pub use crate::types::_feature_status::FeatureStatus; + pub use crate::types::_generative_ai_settings::GenerativeAiSettings; pub use crate::types::_kendra_settings::KendraSettings; -pub use crate::types::_feature_status::FeatureStatus; - pub use crate::types::_direct_deploy_settings::DirectDeploySettings; pub use crate::types::_identity_provider_o_auth_setting::IdentityProviderOAuthSetting; @@ -1615,6 +1617,10 @@ pub use crate::types::_cluster_instance_placement::ClusterInstancePlacement; pub use crate::types::_cluster_instance_group_details::ClusterInstanceGroupDetails; +pub use crate::types::_auto_ml_compute_config::AutoMlComputeConfig; + +pub use crate::types::_emr_serverless_compute_config::EmrServerlessComputeConfig; + pub use crate::types::_auto_ml_security_config::AutoMlSecurityConfig; pub use crate::types::_auto_ml_data_split_config::AutoMlDataSplitConfig; @@ -1843,6 +1849,8 @@ mod _auto_ml_channel; mod _auto_ml_channel_type; +mod _auto_ml_compute_config; + mod _auto_ml_container_definition; mod _auto_ml_data_source; @@ -2209,6 +2217,10 @@ mod _efs_file_system; mod _efs_file_system_config; +mod _emr_serverless_compute_config; + +mod _emr_serverless_settings; + mod _emr_settings; mod _emr_step_metadata; diff --git a/sdk/sagemaker/src/types/_auto_ml_compute_config.rs b/sdk/sagemaker/src/types/_auto_ml_compute_config.rs new file mode 100644 index 000000000000..f9873c837c49 --- /dev/null +++ b/sdk/sagemaker/src/types/_auto_ml_compute_config.rs @@ -0,0 +1,68 @@ +// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. + +/// +///

    This data type is intended for use exclusively by SageMaker Canvas and cannot be used in other contexts at the moment.

    +///
    +///

    Specifies the compute configuration for an AutoML job V2.

    +#[non_exhaustive] +#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)] +pub struct AutoMlComputeConfig { + ///

    The configuration for using EMR Serverless to run the AutoML job V2.

    + ///

    To allow your AutoML job V2 to automatically initiate a remote job on EMR Serverless when additional compute resources are needed to process large datasets, you need to provide an EmrServerlessComputeConfig object, which includes an ExecutionRoleARN attribute, to the AutoMLComputeConfig of the AutoML job V2 input request.

    + ///

    By seamlessly transitioning to EMR Serverless when required, the AutoML job can handle datasets that would otherwise exceed the initially provisioned resources, without any manual intervention from you.

    + ///

    EMR Serverless is available for the tabular and time series problem types. We recommend setting up this option for tabular datasets larger than 5 GB and time series datasets larger than 30 GB.

    + pub emr_serverless_compute_config: ::std::option::Option, +} +impl AutoMlComputeConfig { + ///

    The configuration for using EMR Serverless to run the AutoML job V2.

    + ///

    To allow your AutoML job V2 to automatically initiate a remote job on EMR Serverless when additional compute resources are needed to process large datasets, you need to provide an EmrServerlessComputeConfig object, which includes an ExecutionRoleARN attribute, to the AutoMLComputeConfig of the AutoML job V2 input request.

    + ///

    By seamlessly transitioning to EMR Serverless when required, the AutoML job can handle datasets that would otherwise exceed the initially provisioned resources, without any manual intervention from you.

    + ///

    EMR Serverless is available for the tabular and time series problem types. We recommend setting up this option for tabular datasets larger than 5 GB and time series datasets larger than 30 GB.

    + pub fn emr_serverless_compute_config(&self) -> ::std::option::Option<&crate::types::EmrServerlessComputeConfig> { + self.emr_serverless_compute_config.as_ref() + } +} +impl AutoMlComputeConfig { + /// Creates a new builder-style object to manufacture [`AutoMlComputeConfig`](crate::types::AutoMlComputeConfig). + pub fn builder() -> crate::types::builders::AutoMlComputeConfigBuilder { + crate::types::builders::AutoMlComputeConfigBuilder::default() + } +} + +/// A builder for [`AutoMlComputeConfig`](crate::types::AutoMlComputeConfig). +#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)] +#[non_exhaustive] +pub struct AutoMlComputeConfigBuilder { + pub(crate) emr_serverless_compute_config: ::std::option::Option, +} +impl AutoMlComputeConfigBuilder { + ///

    The configuration for using EMR Serverless to run the AutoML job V2.

    + ///

    To allow your AutoML job V2 to automatically initiate a remote job on EMR Serverless when additional compute resources are needed to process large datasets, you need to provide an EmrServerlessComputeConfig object, which includes an ExecutionRoleARN attribute, to the AutoMLComputeConfig of the AutoML job V2 input request.

    + ///

    By seamlessly transitioning to EMR Serverless when required, the AutoML job can handle datasets that would otherwise exceed the initially provisioned resources, without any manual intervention from you.

    + ///

    EMR Serverless is available for the tabular and time series problem types. We recommend setting up this option for tabular datasets larger than 5 GB and time series datasets larger than 30 GB.

    + pub fn emr_serverless_compute_config(mut self, input: crate::types::EmrServerlessComputeConfig) -> Self { + self.emr_serverless_compute_config = ::std::option::Option::Some(input); + self + } + ///

    The configuration for using EMR Serverless to run the AutoML job V2.

    + ///

    To allow your AutoML job V2 to automatically initiate a remote job on EMR Serverless when additional compute resources are needed to process large datasets, you need to provide an EmrServerlessComputeConfig object, which includes an ExecutionRoleARN attribute, to the AutoMLComputeConfig of the AutoML job V2 input request.

    + ///

    By seamlessly transitioning to EMR Serverless when required, the AutoML job can handle datasets that would otherwise exceed the initially provisioned resources, without any manual intervention from you.

    + ///

    EMR Serverless is available for the tabular and time series problem types. We recommend setting up this option for tabular datasets larger than 5 GB and time series datasets larger than 30 GB.

    + pub fn set_emr_serverless_compute_config(mut self, input: ::std::option::Option) -> Self { + self.emr_serverless_compute_config = input; + self + } + ///

    The configuration for using EMR Serverless to run the AutoML job V2.

    + ///

    To allow your AutoML job V2 to automatically initiate a remote job on EMR Serverless when additional compute resources are needed to process large datasets, you need to provide an EmrServerlessComputeConfig object, which includes an ExecutionRoleARN attribute, to the AutoMLComputeConfig of the AutoML job V2 input request.

    + ///

    By seamlessly transitioning to EMR Serverless when required, the AutoML job can handle datasets that would otherwise exceed the initially provisioned resources, without any manual intervention from you.

    + ///

    EMR Serverless is available for the tabular and time series problem types. We recommend setting up this option for tabular datasets larger than 5 GB and time series datasets larger than 30 GB.

    + pub fn get_emr_serverless_compute_config(&self) -> &::std::option::Option { + &self.emr_serverless_compute_config + } + /// Consumes the builder and constructs a [`AutoMlComputeConfig`](crate::types::AutoMlComputeConfig). + pub fn build(self) -> crate::types::AutoMlComputeConfig { + crate::types::AutoMlComputeConfig { + emr_serverless_compute_config: self.emr_serverless_compute_config, + } + } +} diff --git a/sdk/sagemaker/src/types/_auto_ml_output_data_config.rs b/sdk/sagemaker/src/types/_auto_ml_output_data_config.rs index 731603ed6c8f..8332b5ff1533 100644 --- a/sdk/sagemaker/src/types/_auto_ml_output_data_config.rs +++ b/sdk/sagemaker/src/types/_auto_ml_output_data_config.rs @@ -6,7 +6,7 @@ pub struct AutoMlOutputDataConfig { ///

    The Key Management Service encryption key ID.

    pub kms_key_id: ::std::option::Option<::std::string::String>, - ///

    The Amazon S3 output path. Must be 128 characters or less.

    + ///

    The Amazon S3 output path. Must be 512 characters or less.

    pub s3_output_path: ::std::option::Option<::std::string::String>, } impl AutoMlOutputDataConfig { @@ -14,7 +14,7 @@ impl AutoMlOutputDataConfig { pub fn kms_key_id(&self) -> ::std::option::Option<&str> { self.kms_key_id.as_deref() } - ///

    The Amazon S3 output path. Must be 128 characters or less.

    + ///

    The Amazon S3 output path. Must be 512 characters or less.

    pub fn s3_output_path(&self) -> ::std::option::Option<&str> { self.s3_output_path.as_deref() } @@ -48,18 +48,18 @@ impl AutoMlOutputDataConfigBuilder { pub fn get_kms_key_id(&self) -> &::std::option::Option<::std::string::String> { &self.kms_key_id } - ///

    The Amazon S3 output path. Must be 128 characters or less.

    + ///

    The Amazon S3 output path. Must be 512 characters or less.

    /// This field is required. pub fn s3_output_path(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self { self.s3_output_path = ::std::option::Option::Some(input.into()); self } - ///

    The Amazon S3 output path. Must be 128 characters or less.

    + ///

    The Amazon S3 output path. Must be 512 characters or less.

    pub fn set_s3_output_path(mut self, input: ::std::option::Option<::std::string::String>) -> Self { self.s3_output_path = input; self } - ///

    The Amazon S3 output path. Must be 128 characters or less.

    + ///

    The Amazon S3 output path. Must be 512 characters or less.

    pub fn get_s3_output_path(&self) -> &::std::option::Option<::std::string::String> { &self.s3_output_path } diff --git a/sdk/sagemaker/src/types/_canvas_app_settings.rs b/sdk/sagemaker/src/types/_canvas_app_settings.rs index 543096025368..5d60091a740a 100644 --- a/sdk/sagemaker/src/types/_canvas_app_settings.rs +++ b/sdk/sagemaker/src/types/_canvas_app_settings.rs @@ -18,6 +18,8 @@ pub struct CanvasAppSettings { pub kendra_settings: ::std::option::Option, ///

    The generative AI settings for the SageMaker Canvas application.

    pub generative_ai_settings: ::std::option::Option, + ///

    The settings for running Amazon EMR Serverless data processing jobs in SageMaker Canvas.

    + pub emr_serverless_settings: ::std::option::Option, } impl CanvasAppSettings { ///

    Time series forecast settings for the SageMaker Canvas application.

    @@ -50,6 +52,10 @@ impl CanvasAppSettings { pub fn generative_ai_settings(&self) -> ::std::option::Option<&crate::types::GenerativeAiSettings> { self.generative_ai_settings.as_ref() } + ///

    The settings for running Amazon EMR Serverless data processing jobs in SageMaker Canvas.

    + pub fn emr_serverless_settings(&self) -> ::std::option::Option<&crate::types::EmrServerlessSettings> { + self.emr_serverless_settings.as_ref() + } } impl CanvasAppSettings { /// Creates a new builder-style object to manufacture [`CanvasAppSettings`](crate::types::CanvasAppSettings). @@ -69,6 +75,7 @@ pub struct CanvasAppSettingsBuilder { pub(crate) direct_deploy_settings: ::std::option::Option, pub(crate) kendra_settings: ::std::option::Option, pub(crate) generative_ai_settings: ::std::option::Option, + pub(crate) emr_serverless_settings: ::std::option::Option, } impl CanvasAppSettingsBuilder { ///

    Time series forecast settings for the SageMaker Canvas application.

    @@ -178,6 +185,20 @@ impl CanvasAppSettingsBuilder { pub fn get_generative_ai_settings(&self) -> &::std::option::Option { &self.generative_ai_settings } + ///

    The settings for running Amazon EMR Serverless data processing jobs in SageMaker Canvas.

    + pub fn emr_serverless_settings(mut self, input: crate::types::EmrServerlessSettings) -> Self { + self.emr_serverless_settings = ::std::option::Option::Some(input); + self + } + ///

    The settings for running Amazon EMR Serverless data processing jobs in SageMaker Canvas.

    + pub fn set_emr_serverless_settings(mut self, input: ::std::option::Option) -> Self { + self.emr_serverless_settings = input; + self + } + ///

    The settings for running Amazon EMR Serverless data processing jobs in SageMaker Canvas.

    + pub fn get_emr_serverless_settings(&self) -> &::std::option::Option { + &self.emr_serverless_settings + } /// Consumes the builder and constructs a [`CanvasAppSettings`](crate::types::CanvasAppSettings). pub fn build(self) -> crate::types::CanvasAppSettings { crate::types::CanvasAppSettings { @@ -188,6 +209,7 @@ impl CanvasAppSettingsBuilder { direct_deploy_settings: self.direct_deploy_settings, kendra_settings: self.kendra_settings, generative_ai_settings: self.generative_ai_settings, + emr_serverless_settings: self.emr_serverless_settings, } } } diff --git a/sdk/sagemaker/src/types/_emr_serverless_compute_config.rs b/sdk/sagemaker/src/types/_emr_serverless_compute_config.rs new file mode 100644 index 000000000000..d67d735bb5af --- /dev/null +++ b/sdk/sagemaker/src/types/_emr_serverless_compute_config.rs @@ -0,0 +1,54 @@ +// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. + +/// +///

    This data type is intended for use exclusively by SageMaker Canvas and cannot be used in other contexts at the moment.

    +///
    +///

    Specifies the compute configuration for the EMR Serverless job.

    +#[non_exhaustive] +#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)] +pub struct EmrServerlessComputeConfig { + ///

    The ARN of the IAM role granting the AutoML job V2 the necessary permissions access policies to list, connect to, or manage EMR Serverless jobs. For detailed information about the required permissions of this role, see "How to configure AutoML to initiate a remote job on EMR Serverless for large datasets" in Create a regression or classification job for tabular data using the AutoML API or Create an AutoML job for time-series forecasting using the API.

    + pub execution_role_arn: ::std::option::Option<::std::string::String>, +} +impl EmrServerlessComputeConfig { + ///

    The ARN of the IAM role granting the AutoML job V2 the necessary permissions access policies to list, connect to, or manage EMR Serverless jobs. For detailed information about the required permissions of this role, see "How to configure AutoML to initiate a remote job on EMR Serverless for large datasets" in Create a regression or classification job for tabular data using the AutoML API or Create an AutoML job for time-series forecasting using the API.

    + pub fn execution_role_arn(&self) -> ::std::option::Option<&str> { + self.execution_role_arn.as_deref() + } +} +impl EmrServerlessComputeConfig { + /// Creates a new builder-style object to manufacture [`EmrServerlessComputeConfig`](crate::types::EmrServerlessComputeConfig). + pub fn builder() -> crate::types::builders::EmrServerlessComputeConfigBuilder { + crate::types::builders::EmrServerlessComputeConfigBuilder::default() + } +} + +/// A builder for [`EmrServerlessComputeConfig`](crate::types::EmrServerlessComputeConfig). +#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)] +#[non_exhaustive] +pub struct EmrServerlessComputeConfigBuilder { + pub(crate) execution_role_arn: ::std::option::Option<::std::string::String>, +} +impl EmrServerlessComputeConfigBuilder { + ///

    The ARN of the IAM role granting the AutoML job V2 the necessary permissions access policies to list, connect to, or manage EMR Serverless jobs. For detailed information about the required permissions of this role, see "How to configure AutoML to initiate a remote job on EMR Serverless for large datasets" in Create a regression or classification job for tabular data using the AutoML API or Create an AutoML job for time-series forecasting using the API.

    + /// This field is required. + pub fn execution_role_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self { + self.execution_role_arn = ::std::option::Option::Some(input.into()); + self + } + ///

    The ARN of the IAM role granting the AutoML job V2 the necessary permissions access policies to list, connect to, or manage EMR Serverless jobs. For detailed information about the required permissions of this role, see "How to configure AutoML to initiate a remote job on EMR Serverless for large datasets" in Create a regression or classification job for tabular data using the AutoML API or Create an AutoML job for time-series forecasting using the API.

    + pub fn set_execution_role_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self { + self.execution_role_arn = input; + self + } + ///

    The ARN of the IAM role granting the AutoML job V2 the necessary permissions access policies to list, connect to, or manage EMR Serverless jobs. For detailed information about the required permissions of this role, see "How to configure AutoML to initiate a remote job on EMR Serverless for large datasets" in Create a regression or classification job for tabular data using the AutoML API or Create an AutoML job for time-series forecasting using the API.

    + pub fn get_execution_role_arn(&self) -> &::std::option::Option<::std::string::String> { + &self.execution_role_arn + } + /// Consumes the builder and constructs a [`EmrServerlessComputeConfig`](crate::types::EmrServerlessComputeConfig). + pub fn build(self) -> crate::types::EmrServerlessComputeConfig { + crate::types::EmrServerlessComputeConfig { + execution_role_arn: self.execution_role_arn, + } + } +} diff --git a/sdk/sagemaker/src/types/_emr_serverless_settings.rs b/sdk/sagemaker/src/types/_emr_serverless_settings.rs new file mode 100644 index 000000000000..82426f005409 --- /dev/null +++ b/sdk/sagemaker/src/types/_emr_serverless_settings.rs @@ -0,0 +1,72 @@ +// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. + +///

    The settings for running Amazon EMR Serverless jobs in SageMaker Canvas.

    +#[non_exhaustive] +#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)] +pub struct EmrServerlessSettings { + ///

    The Amazon Resource Name (ARN) of the Amazon Web Services IAM role that is assumed for running Amazon EMR Serverless jobs in SageMaker Canvas. This role should have the necessary permissions to read and write data attached and a trust relationship with EMR Serverless.

    + pub execution_role_arn: ::std::option::Option<::std::string::String>, + ///

    Describes whether Amazon EMR Serverless job capabilities are enabled or disabled in the SageMaker Canvas application.

    + pub status: ::std::option::Option, +} +impl EmrServerlessSettings { + ///

    The Amazon Resource Name (ARN) of the Amazon Web Services IAM role that is assumed for running Amazon EMR Serverless jobs in SageMaker Canvas. This role should have the necessary permissions to read and write data attached and a trust relationship with EMR Serverless.

    + pub fn execution_role_arn(&self) -> ::std::option::Option<&str> { + self.execution_role_arn.as_deref() + } + ///

    Describes whether Amazon EMR Serverless job capabilities are enabled or disabled in the SageMaker Canvas application.

    + pub fn status(&self) -> ::std::option::Option<&crate::types::FeatureStatus> { + self.status.as_ref() + } +} +impl EmrServerlessSettings { + /// Creates a new builder-style object to manufacture [`EmrServerlessSettings`](crate::types::EmrServerlessSettings). + pub fn builder() -> crate::types::builders::EmrServerlessSettingsBuilder { + crate::types::builders::EmrServerlessSettingsBuilder::default() + } +} + +/// A builder for [`EmrServerlessSettings`](crate::types::EmrServerlessSettings). +#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)] +#[non_exhaustive] +pub struct EmrServerlessSettingsBuilder { + pub(crate) execution_role_arn: ::std::option::Option<::std::string::String>, + pub(crate) status: ::std::option::Option, +} +impl EmrServerlessSettingsBuilder { + ///

    The Amazon Resource Name (ARN) of the Amazon Web Services IAM role that is assumed for running Amazon EMR Serverless jobs in SageMaker Canvas. This role should have the necessary permissions to read and write data attached and a trust relationship with EMR Serverless.

    + pub fn execution_role_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self { + self.execution_role_arn = ::std::option::Option::Some(input.into()); + self + } + ///

    The Amazon Resource Name (ARN) of the Amazon Web Services IAM role that is assumed for running Amazon EMR Serverless jobs in SageMaker Canvas. This role should have the necessary permissions to read and write data attached and a trust relationship with EMR Serverless.

    + pub fn set_execution_role_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self { + self.execution_role_arn = input; + self + } + ///

    The Amazon Resource Name (ARN) of the Amazon Web Services IAM role that is assumed for running Amazon EMR Serverless jobs in SageMaker Canvas. This role should have the necessary permissions to read and write data attached and a trust relationship with EMR Serverless.

    + pub fn get_execution_role_arn(&self) -> &::std::option::Option<::std::string::String> { + &self.execution_role_arn + } + ///

    Describes whether Amazon EMR Serverless job capabilities are enabled or disabled in the SageMaker Canvas application.

    + pub fn status(mut self, input: crate::types::FeatureStatus) -> Self { + self.status = ::std::option::Option::Some(input); + self + } + ///

    Describes whether Amazon EMR Serverless job capabilities are enabled or disabled in the SageMaker Canvas application.

    + pub fn set_status(mut self, input: ::std::option::Option) -> Self { + self.status = input; + self + } + ///

    Describes whether Amazon EMR Serverless job capabilities are enabled or disabled in the SageMaker Canvas application.

    + pub fn get_status(&self) -> &::std::option::Option { + &self.status + } + /// Consumes the builder and constructs a [`EmrServerlessSettings`](crate::types::EmrServerlessSettings). + pub fn build(self) -> crate::types::EmrServerlessSettings { + crate::types::EmrServerlessSettings { + execution_role_arn: self.execution_role_arn, + status: self.status, + } + } +} diff --git a/sdk/sagemaker/src/types/_ml_tools.rs b/sdk/sagemaker/src/types/_ml_tools.rs index 005873ee54c4..5ade1e125dfe 100644 --- a/sdk/sagemaker/src/types/_ml_tools.rs +++ b/sdk/sagemaker/src/types/_ml_tools.rs @@ -18,6 +18,7 @@ /// MlTools::Endpoints => { /* ... */ }, /// MlTools::Experiments => { /* ... */ }, /// MlTools::FeatureStore => { /* ... */ }, +/// MlTools::InferenceOptimization => { /* ... */ }, /// MlTools::InferenceRecommender => { /* ... */ }, /// MlTools::JumpStart => { /* ... */ }, /// MlTools::ModelEvaluation => { /* ... */ }, @@ -65,6 +66,8 @@ pub enum MlTools { #[allow(missing_docs)] // documentation missing in model FeatureStore, #[allow(missing_docs)] // documentation missing in model + InferenceOptimization, + #[allow(missing_docs)] // documentation missing in model InferenceRecommender, #[allow(missing_docs)] // documentation missing in model JumpStart, @@ -91,6 +94,7 @@ impl ::std::convert::From<&str> for MlTools { "Endpoints" => MlTools::Endpoints, "Experiments" => MlTools::Experiments, "FeatureStore" => MlTools::FeatureStore, + "InferenceOptimization" => MlTools::InferenceOptimization, "InferenceRecommender" => MlTools::InferenceRecommender, "JumpStart" => MlTools::JumpStart, "ModelEvaluation" => MlTools::ModelEvaluation, @@ -119,6 +123,7 @@ impl MlTools { MlTools::Endpoints => "Endpoints", MlTools::Experiments => "Experiments", MlTools::FeatureStore => "FeatureStore", + MlTools::InferenceOptimization => "InferenceOptimization", MlTools::InferenceRecommender => "InferenceRecommender", MlTools::JumpStart => "JumpStart", MlTools::ModelEvaluation => "ModelEvaluation", @@ -138,6 +143,7 @@ impl MlTools { "Endpoints", "Experiments", "FeatureStore", + "InferenceOptimization", "InferenceRecommender", "JumpStart", "ModelEvaluation", @@ -174,6 +180,7 @@ impl ::std::fmt::Display for MlTools { MlTools::Endpoints => write!(f, "Endpoints"), MlTools::Experiments => write!(f, "Experiments"), MlTools::FeatureStore => write!(f, "FeatureStore"), + MlTools::InferenceOptimization => write!(f, "InferenceOptimization"), MlTools::InferenceRecommender => write!(f, "InferenceRecommender"), MlTools::JumpStart => write!(f, "JumpStart"), MlTools::ModelEvaluation => write!(f, "ModelEvaluation"), diff --git a/sdk/sagemaker/src/types/_processing_s3_output.rs b/sdk/sagemaker/src/types/_processing_s3_output.rs index 4ec7bcd83519..f0402eaf3b81 100644 --- a/sdk/sagemaker/src/types/_processing_s3_output.rs +++ b/sdk/sagemaker/src/types/_processing_s3_output.rs @@ -57,7 +57,6 @@ impl ProcessingS3OutputBuilder { &self.s3_uri } ///

    The local path of a directory where you want Amazon SageMaker to upload its contents to Amazon S3. LocalPath is an absolute path to a directory containing output files. This directory will be created by the platform and exist when your container's entrypoint is invoked.

    - /// This field is required. pub fn local_path(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self { self.local_path = ::std::option::Option::Some(input.into()); self diff --git a/sdk/sagemaker/src/types/_production_variant.rs b/sdk/sagemaker/src/types/_production_variant.rs index c3004ea4f62a..a27409ef72e6 100644 --- a/sdk/sagemaker/src/types/_production_variant.rs +++ b/sdk/sagemaker/src/types/_production_variant.rs @@ -34,6 +34,24 @@ pub struct ProductionVariant { pub routing_config: ::std::option::Option, ///

    Specifies an option from a collection of preconfigured Amazon Machine Image (AMI) images. Each image is configured by Amazon Web Services with a set of software and driver versions. Amazon Web Services optimizes these configurations for different machine learning workloads.

    ///

    By selecting an AMI version, you can ensure that your inference environment is compatible with specific software requirements, such as CUDA driver versions, Linux kernel versions, or Amazon Web Services Neuron driver versions.

    + ///

    The AMI version names, and their configurations, are the following:

    + ///
    + ///
    + /// al2-ami-sagemaker-inference-gpu-2 + ///
    + ///
    + ///
      + ///
    • + ///

      Accelerator: GPU

    • + ///
    • + ///

      NVIDIA driver version: 535.54.03

    • + ///
    • + ///

      CUDA driver version: 12.2

    • + ///
    • + ///

      Supported instance types: ml.g4dn.*, ml.g5.*, ml.g6.*, ml.p3.*, ml.p4d.*, ml.p4de.*, ml.p5.*

    • + ///
    + ///
    + ///
    pub inference_ami_version: ::std::option::Option, } impl ProductionVariant { @@ -95,6 +113,24 @@ impl ProductionVariant { } ///

    Specifies an option from a collection of preconfigured Amazon Machine Image (AMI) images. Each image is configured by Amazon Web Services with a set of software and driver versions. Amazon Web Services optimizes these configurations for different machine learning workloads.

    ///

    By selecting an AMI version, you can ensure that your inference environment is compatible with specific software requirements, such as CUDA driver versions, Linux kernel versions, or Amazon Web Services Neuron driver versions.

    + ///

    The AMI version names, and their configurations, are the following:

    + ///
    + ///
    + /// al2-ami-sagemaker-inference-gpu-2 + ///
    + ///
    + ///
      + ///
    • + ///

      Accelerator: GPU

    • + ///
    • + ///

      NVIDIA driver version: 535.54.03

    • + ///
    • + ///

      CUDA driver version: 12.2

    • + ///
    • + ///

      Supported instance types: ml.g4dn.*, ml.g5.*, ml.g6.*, ml.p3.*, ml.p4d.*, ml.p4de.*, ml.p5.*

    • + ///
    + ///
    + ///
    pub fn inference_ami_version(&self) -> ::std::option::Option<&crate::types::ProductionVariantInferenceAmiVersion> { self.inference_ami_version.as_ref() } @@ -326,18 +362,72 @@ impl ProductionVariantBuilder { } ///

    Specifies an option from a collection of preconfigured Amazon Machine Image (AMI) images. Each image is configured by Amazon Web Services with a set of software and driver versions. Amazon Web Services optimizes these configurations for different machine learning workloads.

    ///

    By selecting an AMI version, you can ensure that your inference environment is compatible with specific software requirements, such as CUDA driver versions, Linux kernel versions, or Amazon Web Services Neuron driver versions.

    + ///

    The AMI version names, and their configurations, are the following:

    + ///
    + ///
    + /// al2-ami-sagemaker-inference-gpu-2 + ///
    + ///
    + ///
      + ///
    • + ///

      Accelerator: GPU

    • + ///
    • + ///

      NVIDIA driver version: 535.54.03

    • + ///
    • + ///

      CUDA driver version: 12.2

    • + ///
    • + ///

      Supported instance types: ml.g4dn.*, ml.g5.*, ml.g6.*, ml.p3.*, ml.p4d.*, ml.p4de.*, ml.p5.*

    • + ///
    + ///
    + ///
    pub fn inference_ami_version(mut self, input: crate::types::ProductionVariantInferenceAmiVersion) -> Self { self.inference_ami_version = ::std::option::Option::Some(input); self } ///

    Specifies an option from a collection of preconfigured Amazon Machine Image (AMI) images. Each image is configured by Amazon Web Services with a set of software and driver versions. Amazon Web Services optimizes these configurations for different machine learning workloads.

    ///

    By selecting an AMI version, you can ensure that your inference environment is compatible with specific software requirements, such as CUDA driver versions, Linux kernel versions, or Amazon Web Services Neuron driver versions.

    + ///

    The AMI version names, and their configurations, are the following:

    + ///
    + ///
    + /// al2-ami-sagemaker-inference-gpu-2 + ///
    + ///
    + ///
      + ///
    • + ///

      Accelerator: GPU

    • + ///
    • + ///

      NVIDIA driver version: 535.54.03

    • + ///
    • + ///

      CUDA driver version: 12.2

    • + ///
    • + ///

      Supported instance types: ml.g4dn.*, ml.g5.*, ml.g6.*, ml.p3.*, ml.p4d.*, ml.p4de.*, ml.p5.*

    • + ///
    + ///
    + ///
    pub fn set_inference_ami_version(mut self, input: ::std::option::Option) -> Self { self.inference_ami_version = input; self } ///

    Specifies an option from a collection of preconfigured Amazon Machine Image (AMI) images. Each image is configured by Amazon Web Services with a set of software and driver versions. Amazon Web Services optimizes these configurations for different machine learning workloads.

    ///

    By selecting an AMI version, you can ensure that your inference environment is compatible with specific software requirements, such as CUDA driver versions, Linux kernel versions, or Amazon Web Services Neuron driver versions.

    + ///

    The AMI version names, and their configurations, are the following:

    + ///
    + ///
    + /// al2-ami-sagemaker-inference-gpu-2 + ///
    + ///
    + ///
      + ///
    • + ///

      Accelerator: GPU

    • + ///
    • + ///

      NVIDIA driver version: 535.54.03

    • + ///
    • + ///

      CUDA driver version: 12.2

    • + ///
    • + ///

      Supported instance types: ml.g4dn.*, ml.g5.*, ml.g6.*, ml.p3.*, ml.p4d.*, ml.p4de.*, ml.p5.*

    • + ///
    + ///
    + ///
    pub fn get_inference_ami_version(&self) -> &::std::option::Option { &self.inference_ami_version } diff --git a/sdk/sagemaker/src/types/builders.rs b/sdk/sagemaker/src/types/builders.rs index 14520a743a78..a3797c961b8a 100644 --- a/sdk/sagemaker/src/types/builders.rs +++ b/sdk/sagemaker/src/types/builders.rs @@ -55,6 +55,8 @@ pub use crate::types::_code_editor_app_settings::CodeEditorAppSettingsBuilder; pub use crate::types::_canvas_app_settings::CanvasAppSettingsBuilder; +pub use crate::types::_emr_serverless_settings::EmrServerlessSettingsBuilder; + pub use crate::types::_generative_ai_settings::GenerativeAiSettingsBuilder; pub use crate::types::_kendra_settings::KendraSettingsBuilder; @@ -1073,6 +1075,10 @@ pub use crate::types::_cluster_instance_placement::ClusterInstancePlacementBuild pub use crate::types::_cluster_instance_group_details::ClusterInstanceGroupDetailsBuilder; +pub use crate::types::_auto_ml_compute_config::AutoMlComputeConfigBuilder; + +pub use crate::types::_emr_serverless_compute_config::EmrServerlessComputeConfigBuilder; + pub use crate::types::_auto_ml_security_config::AutoMlSecurityConfigBuilder; pub use crate::types::_auto_ml_data_split_config::AutoMlDataSplitConfigBuilder; diff --git a/versions.toml b/versions.toml index 83f520cf748f..4c556a95099e 100644 --- a/versions.toml +++ b/versions.toml @@ -556,15 +556,15 @@ model_hash = 'b81682cd531559dab9989fe4a677f37e04eb416285824284c0514a03fa20f06f' [crates.aws-sdk-computeoptimizer] category = 'AwsSdk' -version = '1.38.0' -source_hash = '65a5a7b60fee7aac2c4e90759903dac6fc5351312b4fed7eff01d55f80c04e9c' -model_hash = 'f5fb695cc22a6c8320a0898cafb40a6f24c21abbb43f24121bb55a28dc4908f6' +version = '1.38.1' +source_hash = '591ab81231a9c246e9abb2ae18a3003613bae15661ebb184a525ade7e0dba2e3' +model_hash = '3f0a03d5ba8f6443dc84371703338bc1801c07ca6cb478034e5bbfb05bfe2dd3' [crates.aws-sdk-config] category = 'AwsSdk' -version = '1.38.0' -source_hash = 'e2a18fdb28e7a0d07726d4303a918fa425c2cad3b5977aa97f9a72427c314c24' -model_hash = '0c636fdcaf6ef4dc690c7dbc27685f60214408caa480f17963af2a0b4999d794' +version = '1.39.0' +source_hash = 'b2dcc2789878fbd8aee27f8b2fa3ac45b83b6b8912ea2d97322aa915835124af' +model_hash = '4bf6769b47c07c668f56f454e1e3e9a90985aa7789dcc15fae40733c1cd7446d' [crates.aws-sdk-connect] category = 'AwsSdk' @@ -754,9 +754,9 @@ model_hash = '5ec7004d46e2bb30c8d974da3846e960c6d52a00307ee4cc8a62b95566a1fc84' [crates.aws-sdk-ec2] category = 'AwsSdk' -version = '1.64.0' -source_hash = '50819588aa06aefe73150c77e5e2c475b6e9eaf0631272389df3189b9b646650' -model_hash = '6a85e092a544ff50f70c921257718654ac45c3ce7491f836995f0d29ecd62422' +version = '1.65.0' +source_hash = '45c8d0eb729a6826cd02e3867867ef2cfde6b8b18d463a1d850b7325c0259f75' +model_hash = '457e4c6f7d1fefa19356da7236f1e5ff97139edf7a009b75fb68ab360a9a4721' [crates.aws-sdk-ec2instanceconnect] category = 'AwsSdk' @@ -790,9 +790,9 @@ model_hash = '1df5d12573216378531a4700129e08d3626155bd9c6d994dc473e3d549c68a40' [crates.aws-sdk-eks] category = 'AwsSdk' -version = '1.43.0' -source_hash = 'd3f7aba064ce5266b31995581331cc74a5752271535bf8d07faf84f812dd2514' -model_hash = 'bc01fe6cd2df54a153fe819ef8cbe5598be284e936df657367326dc22e4e838a' +version = '1.44.0' +source_hash = '013962ee7a862d52fd7d8fe90bc44d7de8f905645087453a65b90bac4c68e5ac' +model_hash = '94b81ab4376d80c45e3961f511a9f8510aee4cd445de2ba60fd3d195861aeb1c' [crates.aws-sdk-eksauth] category = 'AwsSdk' @@ -982,9 +982,9 @@ model_hash = '55ab93af36191d8e3cd615b8766ac0bb932878cdb0b05712992cb1863192dbf7' [crates.aws-sdk-groundstation] category = 'AwsSdk' -version = '1.38.0' -source_hash = 'd5bd75586ecb2abda0b9885df3fbb8e837d97f2b445b7dda158ef858a555b9da' -model_hash = '8d96ff3ff82f64fda4f5e1be02855fc46022bab1ed34b437340b99139422da46' +version = '1.38.1' +source_hash = 'd168492718aab5a359e77e44f99971f8c5d71fcc9e7e0b26c391c9be9ccbfcac' +model_hash = '2c97f5de5fc40115222b8f4b2eadc768ed5f4107083921c1a4efc05ee74ad219' [crates.aws-sdk-guardduty] category = 'AwsSdk' @@ -1420,9 +1420,9 @@ model_hash = 'a0e17b9141a631b80d38ab4feada5dda6af62d174810c3460d67647ac026457c' [crates.aws-sdk-medialive] category = 'AwsSdk' -version = '1.44.0' -source_hash = '893b6061a0750318b4a2b8a5830d8af0ff1781239f9d4c92f9926c9b3c154a4e' -model_hash = 'cf6b0bfc3fd4a25cc2dc0dcaa86971488bfe3255ce86d898fb420b9258601517' +version = '1.45.0' +source_hash = '3b4a8c3495f03628be7630c9298c62bfae83a30eb45057f04e08518ea82ce0ef' +model_hash = '0817460d82ea97289e8482b541034579720eebf4b57f1546be0ec1e0f24f2875' [crates.aws-sdk-mediapackage] category = 'AwsSdk' @@ -1924,9 +1924,9 @@ model_hash = 'f9e4b75c464276658ad02e6fb32ece96389662d9e55fe7db3a5a057bd9fb5b03' [crates.aws-sdk-sagemaker] category = 'AwsSdk' -version = '1.63.0' -source_hash = 'be04ae74ad8f579f559ea4a5da3565b69bb80863c49a1bb0beadaaf168f041c8' -model_hash = 'c05a6eb875bed5f4cbba646d70c92a17e7f3dbafcb1da19c2f62b94822bf8631' +version = '1.64.0' +source_hash = 'b94a568c5b4d82b5cae02300b80f8778f176901b95491e6171e8500a0e0ced66' +model_hash = '87db6feda5b89fbfcfe9fef2a32a4b0a73bac9a0a688b09cc73fb5731c7022e1' [crates.aws-sdk-sagemakera2iruntime] category = 'AwsSdk' @@ -2487,400 +2487,11 @@ source_hash = 'b5fd805d7a60bb9668523cd80b53b2c45e7f0e747d1560fc41522c9fbf783df2' category = 'AwsRuntime' version = '0.0.0' source_hash = 'd08f576b0bc9146b45af732b63e0a8923b13fe09816d385e32b4c6d9e503de81' - -[release] -tag = 'release-2024-08-09' - [release.crates] -aws-config = '1.5.5' -aws-http = '0.60.6' -aws-runtime = '1.4.0' -aws-sdk-accessanalyzer = '1.40.0' -aws-sdk-account = '1.38.0' -aws-sdk-acm = '1.38.0' -aws-sdk-acmpca = '1.40.0' -aws-sdk-amp = '1.37.0' -aws-sdk-amplify = '1.39.0' -aws-sdk-amplifybackend = '1.37.0' -aws-sdk-amplifyuibuilder = '1.37.0' -aws-sdk-apigateway = '1.38.0' -aws-sdk-apigatewaymanagement = '1.37.0' -aws-sdk-apigatewayv2 = '1.37.0' -aws-sdk-appconfig = '1.38.0' -aws-sdk-appconfigdata = '1.37.0' -aws-sdk-appfabric = '1.37.0' -aws-sdk-appflow = '1.37.0' -aws-sdk-appintegrations = '1.38.0' -aws-sdk-applicationautoscaling = '1.41.0' -aws-sdk-applicationcostprofiler = '1.37.0' -aws-sdk-applicationdiscovery = '1.38.0' -aws-sdk-applicationinsights = '1.37.0' -aws-sdk-applicationsignals = '1.8.0' -aws-sdk-appmesh = '1.37.0' -aws-sdk-apprunner = '1.38.0' -aws-sdk-appstream = '1.38.0' -aws-sdk-appsync = '1.42.0' -aws-sdk-apptest = '1.7.0' -aws-sdk-arczonalshift = '1.38.0' -aws-sdk-artifact = '1.25.0' -aws-sdk-athena = '1.39.0' -aws-sdk-auditmanager = '1.38.0' -aws-sdk-autoscaling = '1.40.0' -aws-sdk-autoscalingplans = '1.37.0' -aws-sdk-b2bi = '1.38.0' -aws-sdk-backup = '1.39.0' -aws-sdk-backupgateway = '1.37.0' -aws-sdk-batch = '1.44.0' -aws-sdk-bcmdataexports = '1.35.0' -aws-sdk-bedrock = '1.41.0' -aws-sdk-bedrockagent = '1.42.0' -aws-sdk-bedrockagentruntime = '1.42.0' -aws-sdk-bedrockruntime = '1.43.0' -aws-sdk-billingconductor = '1.38.0' -aws-sdk-braket = '1.39.0' -aws-sdk-budgets = '1.37.0' -aws-sdk-chatbot = '1.24.0' -aws-sdk-chime = '1.37.0' -aws-sdk-chimesdkidentity = '1.37.0' -aws-sdk-chimesdkmediapipelines = '1.38.0' -aws-sdk-chimesdkmeetings = '1.38.0' -aws-sdk-chimesdkmessaging = '1.37.0' -aws-sdk-chimesdkvoice = '1.38.0' -aws-sdk-cleanrooms = '1.42.0' -aws-sdk-cleanroomsml = '1.36.0' -aws-sdk-cloud9 = '1.38.0' -aws-sdk-cloudcontrol = '1.37.0' -aws-sdk-clouddirectory = '1.37.0' -aws-sdk-cloudformation = '1.42.0' -aws-sdk-cloudfront = '1.39.0' -aws-sdk-cloudfrontkeyvaluestore = '1.37.0' -aws-sdk-cloudhsm = '1.37.0' -aws-sdk-cloudhsmv2 = '1.38.0' -aws-sdk-cloudsearch = '1.37.0' -aws-sdk-cloudsearchdomain = '1.37.0' -aws-sdk-cloudtrail = '1.40.0' -aws-sdk-cloudtraildata = '1.37.0' -aws-sdk-cloudwatch = '1.42.0' -aws-sdk-cloudwatchevents = '1.37.0' -aws-sdk-cloudwatchlogs = '1.41.0' -aws-sdk-codeartifact = '1.39.0' -aws-sdk-codebuild = '1.46.0' -aws-sdk-codecatalyst = '1.38.0' -aws-sdk-codecommit = '1.38.0' -aws-sdk-codeconnections = '1.19.0' -aws-sdk-codedeploy = '1.39.0' -aws-sdk-codeguruprofiler = '1.37.0' -aws-sdk-codegurureviewer = '1.37.0' -aws-sdk-codegurusecurity = '1.38.0' -aws-sdk-codepipeline = '1.41.0' -aws-sdk-codestar = '1.37.0' -aws-sdk-codestarconnections = '1.39.0' -aws-sdk-codestarnotifications = '1.37.0' -aws-sdk-cognitoidentity = '1.38.0' -aws-sdk-cognitoidentityprovider = '1.44.0' -aws-sdk-cognitosync = '1.37.0' -aws-sdk-comprehend = '1.37.0' -aws-sdk-comprehendmedical = '1.37.0' -aws-sdk-computeoptimizer = '1.38.0' -aws-sdk-config = '1.38.0' -aws-sdk-connect = '1.56.0' -aws-sdk-connectcampaigns = '1.39.0' -aws-sdk-connectcases = '1.40.0' -aws-sdk-connectcontactlens = '1.38.0' -aws-sdk-connectparticipant = '1.38.0' -aws-sdk-controlcatalog = '1.19.0' -aws-sdk-controltower = '1.40.0' -aws-sdk-costandusagereport = '1.38.0' -aws-sdk-costexplorer = '1.39.0' -aws-sdk-costoptimizationhub = '1.37.0' -aws-sdk-customerprofiles = '1.39.0' -aws-sdk-databasemigration = '1.38.0' -aws-sdk-databrew = '1.37.0' -aws-sdk-dataexchange = '1.37.0' -aws-sdk-datapipeline = '1.37.0' -aws-sdk-datasync = '1.40.0' -aws-sdk-datazone = '1.46.0' -aws-sdk-dax = '1.37.0' -aws-sdk-deadline = '1.19.0' -aws-sdk-detective = '1.37.0' -aws-sdk-devicefarm = '1.38.0' -aws-sdk-devopsguru = '1.37.0' -aws-sdk-directconnect = '1.38.0' -aws-sdk-directory = '1.38.0' -aws-sdk-dlm = '1.37.0' -aws-sdk-docdb = '1.40.0' -aws-sdk-docdbelastic = '1.38.0' -aws-sdk-drs = '1.40.0' -aws-sdk-dynamodb = '1.40.0' -aws-sdk-dynamodbstreams = '1.37.0' -aws-sdk-ebs = '1.37.0' -aws-sdk-ec2 = '1.64.0' -aws-sdk-ec2instanceconnect = '1.37.0' -aws-sdk-ecr = '1.39.0' -aws-sdk-ecrpublic = '1.37.0' -aws-sdk-ecs = '1.39.0' -aws-sdk-efs = '1.38.0' -aws-sdk-eks = '1.43.0' -aws-sdk-eksauth = '1.35.0' -aws-sdk-elasticache = '1.40.0' -aws-sdk-elasticbeanstalk = '1.38.0' -aws-sdk-elasticinference = '1.37.0' -aws-sdk-elasticloadbalancing = '1.38.0' -aws-sdk-elasticloadbalancingv2 = '1.40.0' -aws-sdk-elasticsearch = '1.40.0' -aws-sdk-elastictranscoder = '1.38.0' -aws-sdk-emr = '1.40.0' -aws-sdk-emrcontainers = '1.40.0' -aws-sdk-emrserverless = '1.40.0' -aws-sdk-entityresolution = '1.40.0' -aws-sdk-eventbridge = '1.39.0' -aws-sdk-evidently = '1.37.0' -aws-sdk-finspace = '1.40.0' -aws-sdk-finspacedata = '1.37.0' -aws-sdk-firehose = '1.42.0' -aws-sdk-fis = '1.37.0' -aws-sdk-fms = '1.40.0' -aws-sdk-forecast = '1.37.0' -aws-sdk-forecastquery = '1.37.0' -aws-sdk-frauddetector = '1.37.0' -aws-sdk-freetier = '1.35.0' -aws-sdk-fsx = '1.41.0' -aws-sdk-gamelift = '1.39.0' -aws-sdk-glacier = '1.37.0' -aws-sdk-globalaccelerator = '1.39.0' -aws-sdk-glue = '1.52.0' -aws-sdk-grafana = '1.39.0' -aws-sdk-greengrass = '1.37.0' -aws-sdk-greengrassv2 = '1.38.0' -aws-sdk-groundstation = '1.38.0' -aws-sdk-guardduty = '1.42.0' -aws-sdk-health = '1.37.0' -aws-sdk-healthlake = '1.38.0' -aws-sdk-iam = '1.39.0' -aws-sdk-identitystore = '1.37.0' -aws-sdk-imagebuilder = '1.38.0' -aws-sdk-inspector = '1.37.0' -aws-sdk-inspector2 = '1.41.0' -aws-sdk-inspectorscan = '1.37.0' -aws-sdk-internetmonitor = '1.40.0' -aws-sdk-iot = '1.40.0' -aws-sdk-iot1clickdevices = '1.37.0' -aws-sdk-iot1clickprojects = '1.37.0' -aws-sdk-iotanalytics = '1.37.0' -aws-sdk-iotdataplane = '1.37.0' -aws-sdk-iotdeviceadvisor = '1.37.0' -aws-sdk-iotevents = '1.38.0' -aws-sdk-ioteventsdata = '1.37.0' -aws-sdk-iotfleethub = '1.37.0' -aws-sdk-iotfleetwise = '1.39.0' -aws-sdk-iotjobsdataplane = '1.37.0' -aws-sdk-iotsecuretunneling = '1.37.0' -aws-sdk-iotsitewise = '1.38.0' -aws-sdk-iotthingsgraph = '1.37.0' -aws-sdk-iottwinmaker = '1.37.0' -aws-sdk-iotwireless = '1.40.0' -aws-sdk-ivs = '1.41.0' -aws-sdk-ivschat = '1.38.0' -aws-sdk-ivsrealtime = '1.40.0' -aws-sdk-kafka = '1.40.0' -aws-sdk-kafkaconnect = '1.38.0' -aws-sdk-kendra = '1.38.0' -aws-sdk-kendraranking = '1.37.0' -aws-sdk-keyspaces = '1.38.0' -aws-sdk-kinesis = '1.38.0' -aws-sdk-kinesisanalytics = '1.37.0' -aws-sdk-kinesisanalyticsv2 = '1.40.0' -aws-sdk-kinesisvideo = '1.38.0' -aws-sdk-kinesisvideoarchivedmedia = '1.38.0' -aws-sdk-kinesisvideomedia = '1.37.0' -aws-sdk-kinesisvideosignaling = '1.37.0' -aws-sdk-kinesisvideowebrtcstorage = '1.38.0' -aws-sdk-kms = '1.38.0' -aws-sdk-lakeformation = '1.40.0' -aws-sdk-lambda = '1.38.0' -aws-sdk-launchwizard = '1.38.0' -aws-sdk-lexmodelbuilding = '1.37.0' -aws-sdk-lexmodelsv2 = '1.40.0' -aws-sdk-lexruntime = '1.37.0' -aws-sdk-lexruntimev2 = '1.37.0' -aws-sdk-licensemanager = '1.37.0' -aws-sdk-licensemanagerlinuxsubscriptions = '1.38.0' -aws-sdk-licensemanagerusersubscriptions = '1.37.0' -aws-sdk-lightsail = '1.41.0' -aws-sdk-location = '1.40.0' -aws-sdk-lookoutequipment = '1.39.0' -aws-sdk-lookoutmetrics = '1.37.0' -aws-sdk-lookoutvision = '1.37.0' -aws-sdk-m2 = '1.38.0' -aws-sdk-machinelearning = '1.37.0' -aws-sdk-macie2 = '1.39.0' -aws-sdk-mailmanager = '1.12.0' -aws-sdk-managedblockchain = '1.37.0' -aws-sdk-managedblockchainquery = '1.40.0' -aws-sdk-marketplaceagreement = '1.34.0' -aws-sdk-marketplacecatalog = '1.41.0' -aws-sdk-marketplacecommerceanalytics = '1.37.0' -aws-sdk-marketplacedeployment = '1.34.0' -aws-sdk-marketplaceentitlement = '1.38.0' -aws-sdk-marketplacemetering = '1.37.0' -aws-sdk-mediaconnect = '1.39.0' -aws-sdk-mediaconvert = '1.42.0' -aws-sdk-medialive = '1.44.0' -aws-sdk-mediapackage = '1.37.0' -aws-sdk-mediapackagev2 = '1.40.0' -aws-sdk-mediapackagevod = '1.37.0' -aws-sdk-mediastore = '1.37.0' -aws-sdk-mediastoredata = '1.37.0' -aws-sdk-mediatailor = '1.39.0' -aws-sdk-medicalimaging = '1.40.0' -aws-sdk-memorydb = '1.37.0' -aws-sdk-mgn = '1.37.0' -aws-sdk-migrationhub = '1.37.0' -aws-sdk-migrationhubconfig = '1.37.0' -aws-sdk-migrationhuborchestrator = '1.38.0' -aws-sdk-migrationhubrefactorspaces = '1.37.0' -aws-sdk-migrationhubstrategy = '1.37.0' -aws-sdk-mq = '1.38.0' -aws-sdk-mturk = '1.37.0' -aws-sdk-mwaa = '1.40.0' -aws-sdk-neptune = '1.38.0' -aws-sdk-neptunedata = '1.37.0' -aws-sdk-neptunegraph = '1.34.0' -aws-sdk-networkfirewall = '1.38.0' -aws-sdk-networkmanager = '1.39.0' -aws-sdk-networkmonitor = '1.28.0' -aws-sdk-nimble = '1.37.0' -aws-sdk-oam = '1.39.0' -aws-sdk-omics = '1.39.0' -aws-sdk-opensearch = '1.46.0' -aws-sdk-opensearchserverless = '1.38.0' -aws-sdk-opsworks = '1.37.0' -aws-sdk-opsworkscm = '1.37.0' -aws-sdk-organizations = '1.40.0' -aws-sdk-osis = '1.39.0' -aws-sdk-outposts = '1.40.0' -aws-sdk-panorama = '1.37.0' -aws-sdk-paymentcryptography = '1.40.0' -aws-sdk-paymentcryptographydata = '1.39.0' -aws-sdk-pcaconnectorad = '1.37.0' -aws-sdk-pcaconnectorscep = '1.7.0' -aws-sdk-personalize = '1.39.0' -aws-sdk-personalizeevents = '1.37.0' -aws-sdk-personalizeruntime = '1.37.0' -aws-sdk-pi = '1.38.0' -aws-sdk-pinpoint = '1.39.0' -aws-sdk-pinpointemail = '1.37.0' -aws-sdk-pinpointsmsvoice = '1.37.0' -aws-sdk-pinpointsmsvoicev2 = '1.38.0' -aws-sdk-pipes = '1.39.0' -aws-sdk-polly = '1.38.0' -aws-sdk-pricing = '1.39.0' -aws-sdk-privatenetworks = '1.37.0' -aws-sdk-proton = '1.37.0' -aws-sdk-qapps = '1.3.0' -aws-sdk-qbusiness = '1.38.0' -aws-sdk-qconnect = '1.40.0' -aws-sdk-qldb = '1.37.0' -aws-sdk-qldbsession = '1.37.0' -aws-sdk-quicksight = '1.45.0' -aws-sdk-ram = '1.37.0' -aws-sdk-rbin = '1.38.0' -aws-sdk-rds = '1.48.0' -aws-sdk-rdsdata = '1.37.0' -aws-sdk-redshift = '1.38.0' -aws-sdk-redshiftdata = '1.37.0' -aws-sdk-redshiftserverless = '1.39.0' -aws-sdk-rekognition = '1.40.0' -aws-sdk-repostspace = '1.35.0' -aws-sdk-resiliencehub = '1.38.0' -aws-sdk-resourceexplorer2 = '1.38.0' -aws-sdk-resourcegroups = '1.38.0' -aws-sdk-resourcegroupstagging = '1.37.0' -aws-sdk-robomaker = '1.37.0' -aws-sdk-rolesanywhere = '1.41.0' -aws-sdk-route53 = '1.39.0' -aws-sdk-route53domains = '1.39.0' -aws-sdk-route53profiles = '1.16.0' -aws-sdk-route53recoverycluster = '1.37.0' -aws-sdk-route53recoverycontrolconfig = '1.37.0' -aws-sdk-route53recoveryreadiness = '1.37.0' -aws-sdk-route53resolver = '1.41.0' -aws-sdk-rum = '1.37.0' -aws-sdk-s3 = '1.43.0' -aws-sdk-s3control = '1.39.0' -aws-sdk-s3outposts = '1.37.0' -aws-sdk-sagemaker = '1.63.0' -aws-sdk-sagemakera2iruntime = '1.37.0' -aws-sdk-sagemakeredge = '1.37.0' -aws-sdk-sagemakerfeaturestoreruntime = '1.38.0' -aws-sdk-sagemakergeospatial = '1.37.0' -aws-sdk-sagemakermetrics = '1.37.0' -aws-sdk-sagemakerruntime = '1.38.0' -aws-sdk-savingsplans = '1.38.0' -aws-sdk-scheduler = '1.37.0' -aws-sdk-schemas = '1.37.0' -aws-sdk-secretsmanager = '1.41.0' -aws-sdk-securityhub = '1.39.0' -aws-sdk-securitylake = '1.39.0' -aws-sdk-serverlessapplicationrepository = '1.37.0' -aws-sdk-servicecatalog = '1.38.0' -aws-sdk-servicecatalogappregistry = '1.37.0' -aws-sdk-servicediscovery = '1.37.0' -aws-sdk-servicequotas = '1.37.0' -aws-sdk-ses = '1.38.0' -aws-sdk-sesv2 = '1.40.0' -aws-sdk-sfn = '1.40.0' -aws-sdk-shield = '1.37.0' -aws-sdk-signer = '1.37.0' -aws-sdk-simspaceweaver = '1.37.0' -aws-sdk-sms = '1.37.0' -aws-sdk-snowball = '1.37.0' -aws-sdk-snowdevicemanagement = '1.37.0' -aws-sdk-sns = '1.38.0' -aws-sdk-sqs = '1.37.0' -aws-sdk-ssm = '1.42.0' -aws-sdk-ssmcontacts = '1.37.0' -aws-sdk-ssmincidents = '1.37.0' -aws-sdk-ssmquicksetup = '1.1.0' -aws-sdk-ssmsap = '1.38.0' -aws-sdk-sso = '1.37.0' -aws-sdk-ssoadmin = '1.37.0' -aws-sdk-ssooidc = '1.38.0' -aws-sdk-storagegateway = '1.40.0' -aws-sdk-sts = '1.37.0' -aws-sdk-supplychain = '1.28.0' -aws-sdk-support = '1.38.0' -aws-sdk-supportapp = '1.37.0' -aws-sdk-swf = '1.39.0' -aws-sdk-synthetics = '1.37.0' -aws-sdk-taxsettings = '1.9.0' -aws-sdk-textract = '1.37.0' -aws-sdk-timestreaminfluxdb = '1.20.0' -aws-sdk-timestreamquery = '1.38.0' -aws-sdk-timestreamwrite = '1.37.0' -aws-sdk-tnb = '1.38.0' -aws-sdk-transcribe = '1.38.0' -aws-sdk-transcribestreaming = '1.37.0' -aws-sdk-transfer = '1.41.0' -aws-sdk-translate = '1.37.0' -aws-sdk-trustedadvisor = '1.38.0' -aws-sdk-verifiedpermissions = '1.43.0' -aws-sdk-voiceid = '1.37.0' -aws-sdk-vpclattice = '1.38.0' -aws-sdk-waf = '1.38.0' -aws-sdk-wafregional = '1.38.0' -aws-sdk-wafv2 = '1.41.0' -aws-sdk-wellarchitected = '1.38.0' -aws-sdk-wisdom = '1.38.0' -aws-sdk-workdocs = '1.37.0' -aws-sdk-worklink = '1.37.0' -aws-sdk-workmail = '1.37.0' -aws-sdk-workmailmessageflow = '1.37.0' -aws-sdk-workspaces = '1.42.0' -aws-sdk-workspacesthinclient = '1.38.0' -aws-sdk-workspacesweb = '1.39.0' -aws-sdk-xray = '1.37.0' -aws-smithy-cbor = '0.60.7' -aws-smithy-checksums = '0.60.12' -aws-smithy-protocol-test = '0.62.0' -aws-smithy-runtime-api = '1.7.2' +aws-sdk-computeoptimizer = '1.38.1' +aws-sdk-config = '1.39.0' +aws-sdk-ec2 = '1.65.0' +aws-sdk-eks = '1.44.0' +aws-sdk-groundstation = '1.38.1' +aws-sdk-medialive = '1.45.0' +aws-sdk-sagemaker = '1.64.0'