diff --git a/CHANGELOG.md b/CHANGELOG.md index 4b58c5ca5e..2ce4ab4d5c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,23 @@ +Release v1.44.161 (2022-12-15) +=== + +### Service Client Updates +* `service/backup-gateway`: Updates service API and documentation +* `service/connect`: Updates service API and documentation +* `service/ecs`: Updates service API and documentation + * This release adds support for container port ranges in ECS, a new capability that allows customers to provide container port ranges to simplify use cases where multiple ports are in use in a container. This release updates TaskDefinition mutation APIs and the Task description APIs. +* `service/eks`: Updates service API and documentation +* `service/glue`: Updates service API and documentation + * This release adds support for AWS Glue Crawler with native DeltaLake tables, allowing Crawlers to classify Delta Lake format tables and catalog them for query engines to query against. +* `service/kinesis`: Updates service API, documentation, and paginators + * Added StreamARN parameter for Kinesis Data Streams APIs. Added a new opaque pagination token for ListStreams. SDKs will auto-generate Account Endpoint when accessing Kinesis Data Streams. +* `service/location`: Updates service documentation +* `service/m2`: Updates service API and documentation +* `service/sagemaker`: Updates service API and documentation + * SageMaker Inference Recommender now allows customers to load tests their models on various instance types using private VPC. +* `service/securityhub`: Updates service API and documentation +* `service/translate`: Updates service API and documentation + Release v1.44.160 (2022-12-14) === diff --git a/aws/endpoints/defaults.go b/aws/endpoints/defaults.go index 5d70f6e470..0913c49250 100644 --- a/aws/endpoints/defaults.go +++ b/aws/endpoints/defaults.go @@ -11737,12 +11737,18 @@ var awsPartition = partition{ endpointKey{ Region: "ap-northeast-1", }: endpoint{}, + endpointKey{ + Region: "ap-south-1", + }: endpoint{}, endpointKey{ Region: "ap-southeast-1", }: endpoint{}, endpointKey{ Region: "ap-southeast-2", }: endpoint{}, + endpointKey{ + Region: "ca-central-1", + }: endpoint{}, endpointKey{ Region: "eu-central-1", }: endpoint{}, @@ -11752,6 +11758,12 @@ var awsPartition = partition{ endpointKey{ Region: "eu-west-1", }: endpoint{}, + endpointKey{ + Region: "eu-west-2", + }: endpoint{}, + endpointKey{ + Region: "sa-east-1", + }: endpoint{}, endpointKey{ Region: "us-east-1", }: endpoint{}, @@ -18937,6 +18949,9 @@ var awsPartition = partition{ endpointKey{ Region: "ap-south-1", }: endpoint{}, + endpointKey{ + Region: "ap-south-2", + }: endpoint{}, endpointKey{ Region: "ap-southeast-1", }: endpoint{}, @@ -18958,12 +18973,18 @@ var awsPartition = partition{ endpointKey{ Region: "eu-central-1", }: endpoint{}, + endpointKey{ + Region: "eu-central-2", + }: endpoint{}, endpointKey{ Region: "eu-north-1", }: endpoint{}, endpointKey{ Region: "eu-south-1", }: endpoint{}, + endpointKey{ + Region: "eu-south-2", + }: endpoint{}, endpointKey{ Region: "eu-west-1", }: endpoint{}, @@ -35400,6 +35421,9 @@ var awsisoPartition = partition{ endpointKey{ Region: "us-iso-east-1", }: endpoint{}, + endpointKey{ + Region: "us-iso-west-1", + }: endpoint{}, }, }, }, diff --git a/aws/version.go b/aws/version.go index c048c41afb..ce1f9976a4 100644 --- a/aws/version.go +++ b/aws/version.go @@ -5,4 +5,4 @@ package aws const SDKName = "aws-sdk-go" // SDKVersion is the version of this SDK -const SDKVersion = "1.44.160" +const SDKVersion = "1.44.161" diff --git a/models/apis/backup-gateway/2021-01-01/api-2.json b/models/apis/backup-gateway/2021-01-01/api-2.json index 7516d53bd0..0fb3bf590b 100644 --- a/models/apis/backup-gateway/2021-01-01/api-2.json +++ b/models/apis/backup-gateway/2021-01-01/api-2.json @@ -68,6 +68,7 @@ "output":{"shape":"DeleteHypervisorOutput"}, "errors":[ {"shape":"ValidationException"}, + {"shape":"ConflictException"}, {"shape":"InternalServerException"}, {"shape":"AccessDeniedException"}, {"shape":"ResourceNotFoundException"}, @@ -91,6 +92,21 @@ {"shape":"ThrottlingException"} ] }, + "GetBandwidthRateLimitSchedule":{ + "name":"GetBandwidthRateLimitSchedule", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetBandwidthRateLimitScheduleInput"}, + "output":{"shape":"GetBandwidthRateLimitScheduleOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ] + }, "GetGateway":{ "name":"GetGateway", "http":{ @@ -106,6 +122,36 @@ {"shape":"ThrottlingException"} ] }, + "GetHypervisor":{ + "name":"GetHypervisor", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetHypervisorInput"}, + "output":{"shape":"GetHypervisorOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ] + }, + "GetHypervisorPropertyMappings":{ + "name":"GetHypervisorPropertyMappings", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetHypervisorPropertyMappingsInput"}, + "output":{"shape":"GetHypervisorPropertyMappingsOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ] + }, "GetVirtualMachine":{ "name":"GetVirtualMachine", "http":{ @@ -131,6 +177,7 @@ "output":{"shape":"ImportHypervisorConfigurationOutput"}, "errors":[ {"shape":"ValidationException"}, + {"shape":"ConflictException"}, {"shape":"InternalServerException"}, {"shape":"AccessDeniedException"}, {"shape":"ThrottlingException"} @@ -193,6 +240,40 @@ {"shape":"ThrottlingException"} ] }, + "PutBandwidthRateLimitSchedule":{ + "name":"PutBandwidthRateLimitSchedule", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"PutBandwidthRateLimitScheduleInput"}, + "output":{"shape":"PutBandwidthRateLimitScheduleOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ], + "idempotent":true + }, + "PutHypervisorPropertyMappings":{ + "name":"PutHypervisorPropertyMappings", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"PutHypervisorPropertyMappingsInput"}, + "output":{"shape":"PutHypervisorPropertyMappingsOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ], + "idempotent":true + }, "PutMaintenanceStartTime":{ "name":"PutMaintenanceStartTime", "http":{ @@ -209,6 +290,22 @@ {"shape":"ThrottlingException"} ] }, + "StartVirtualMachinesMetadataSync":{ + "name":"StartVirtualMachinesMetadataSync", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"StartVirtualMachinesMetadataSyncInput"}, + "output":{"shape":"StartVirtualMachinesMetadataSyncOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ] + }, "TagResource":{ "name":"TagResource", "http":{ @@ -296,6 +393,7 @@ "output":{"shape":"UpdateHypervisorOutput"}, "errors":[ {"shape":"ValidationException"}, + {"shape":"ConflictException"}, {"shape":"InternalServerException"}, {"shape":"AccessDeniedException"}, {"shape":"ResourceNotFoundException"}, @@ -336,6 +434,36 @@ "GatewayArn":{"shape":"GatewayArn"} } }, + "AverageUploadRateLimit":{ + "type":"long", + "box":true, + "max":8000000000000, + "min":51200 + }, + "BandwidthRateLimitInterval":{ + "type":"structure", + "required":[ + "DaysOfWeek", + "EndHourOfDay", + "EndMinuteOfHour", + "StartHourOfDay", + "StartMinuteOfHour" + ], + "members":{ + "AverageUploadRateLimitInBitsPerSec":{"shape":"AverageUploadRateLimit"}, + "DaysOfWeek":{"shape":"DaysOfWeek"}, + "EndHourOfDay":{"shape":"HourOfDay"}, + "EndMinuteOfHour":{"shape":"MinuteOfHour"}, + "StartHourOfDay":{"shape":"HourOfDay"}, + "StartMinuteOfHour":{"shape":"MinuteOfHour"} + } + }, + "BandwidthRateLimitIntervals":{ + "type":"list", + "member":{"shape":"BandwidthRateLimitInterval"}, + "max":20, + "min":0 + }, "ConflictException":{ "type":"structure", "required":["ErrorCode"], @@ -377,6 +505,12 @@ "max":6, "min":0 }, + "DaysOfWeek":{ + "type":"list", + "member":{"shape":"DayOfWeek"}, + "max":7, + "min":1 + }, "DeleteGatewayInput":{ "type":"structure", "required":["GatewayArn"], @@ -453,6 +587,20 @@ "type":"list", "member":{"shape":"Gateway"} }, + "GetBandwidthRateLimitScheduleInput":{ + "type":"structure", + "required":["GatewayArn"], + "members":{ + "GatewayArn":{"shape":"GatewayArn"} + } + }, + "GetBandwidthRateLimitScheduleOutput":{ + "type":"structure", + "members":{ + "BandwidthRateLimitIntervals":{"shape":"BandwidthRateLimitIntervals"}, + "GatewayArn":{"shape":"GatewayArn"} + } + }, "GetGatewayInput":{ "type":"structure", "required":["GatewayArn"], @@ -466,6 +614,34 @@ "Gateway":{"shape":"GatewayDetails"} } }, + "GetHypervisorInput":{ + "type":"structure", + "required":["HypervisorArn"], + "members":{ + "HypervisorArn":{"shape":"ServerArn"} + } + }, + "GetHypervisorOutput":{ + "type":"structure", + "members":{ + "Hypervisor":{"shape":"HypervisorDetails"} + } + }, + "GetHypervisorPropertyMappingsInput":{ + "type":"structure", + "required":["HypervisorArn"], + "members":{ + "HypervisorArn":{"shape":"ServerArn"} + } + }, + "GetHypervisorPropertyMappingsOutput":{ + "type":"structure", + "members":{ + "HypervisorArn":{"shape":"ServerArn"}, + "IamRoleArn":{"shape":"IamRoleArn"}, + "VmwareToAwsTagMappings":{"shape":"VmwareToAwsTagMappings"} + } + }, "GetVirtualMachineInput":{ "type":"structure", "required":["ResourceArn"], @@ -501,6 +677,20 @@ "State":{"shape":"HypervisorState"} } }, + "HypervisorDetails":{ + "type":"structure", + "members":{ + "Host":{"shape":"Host"}, + "HypervisorArn":{"shape":"ServerArn"}, + "KmsKeyArn":{"shape":"KmsKeyArn"}, + "LastSuccessfulMetadataSyncTime":{"shape":"Time"}, + "LatestMetadataSyncStatus":{"shape":"SyncMetadataStatus"}, + "LatestMetadataSyncStatusMessage":{"shape":"string"}, + "LogGroupArn":{"shape":"LogGroupArn"}, + "Name":{"shape":"Name"}, + "State":{"shape":"HypervisorState"} + } + }, "HypervisorId":{ "type":"string", "max":100, @@ -519,6 +709,12 @@ "type":"list", "member":{"shape":"Hypervisor"} }, + "IamRoleArn":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"^arn:(aws|aws-cn|aws-us-gov):iam::([0-9]+):role/(\\S+)$" + }, "ImportHypervisorConfigurationInput":{ "type":"structure", "required":[ @@ -612,6 +808,12 @@ "VirtualMachines":{"shape":"VirtualMachines"} } }, + "LogGroupArn":{ + "type":"string", + "max":2048, + "min":0, + "pattern":"^$|^arn:(aws|aws-cn|aws-us-gov):logs:([a-zA-Z0-9-]+):([0-9]+):log-group:[a-zA-Z0-9_\\-\\/\\.]+:\\*$" + }, "MaintenanceStartTime":{ "type":"structure", "required":[ @@ -661,6 +863,42 @@ "min":1, "pattern":"^[^\\x00]+$" }, + "PutBandwidthRateLimitScheduleInput":{ + "type":"structure", + "required":[ + "BandwidthRateLimitIntervals", + "GatewayArn" + ], + "members":{ + "BandwidthRateLimitIntervals":{"shape":"BandwidthRateLimitIntervals"}, + "GatewayArn":{"shape":"GatewayArn"} + } + }, + "PutBandwidthRateLimitScheduleOutput":{ + "type":"structure", + "members":{ + "GatewayArn":{"shape":"GatewayArn"} + } + }, + "PutHypervisorPropertyMappingsInput":{ + "type":"structure", + "required":[ + "HypervisorArn", + "IamRoleArn", + "VmwareToAwsTagMappings" + ], + "members":{ + "HypervisorArn":{"shape":"ServerArn"}, + "IamRoleArn":{"shape":"IamRoleArn"}, + "VmwareToAwsTagMappings":{"shape":"VmwareToAwsTagMappings"} + } + }, + "PutHypervisorPropertyMappingsOutput":{ + "type":"structure", + "members":{ + "HypervisorArn":{"shape":"ServerArn"} + } + }, "PutMaintenanceStartTimeInput":{ "type":"structure", "required":[ @@ -702,6 +940,29 @@ "min":50, "pattern":"^arn:(aws|aws-cn|aws-us-gov):backup-gateway(:[a-zA-Z-0-9]+){3}\\/[a-zA-Z-0-9]+$" }, + "StartVirtualMachinesMetadataSyncInput":{ + "type":"structure", + "required":["HypervisorArn"], + "members":{ + "HypervisorArn":{"shape":"ServerArn"} + } + }, + "StartVirtualMachinesMetadataSyncOutput":{ + "type":"structure", + "members":{ + "HypervisorArn":{"shape":"ServerArn"} + } + }, + "SyncMetadataStatus":{ + "type":"string", + "enum":[ + "CREATED", + "RUNNING", + "FAILED", + "PARTIALLY_FAILED", + "SUCCEEDED" + ] + }, "Tag":{ "type":"structure", "required":[ @@ -828,6 +1089,7 @@ "members":{ "Host":{"shape":"Host"}, "HypervisorArn":{"shape":"ServerArn"}, + "LogGroupArn":{"shape":"LogGroupArn"}, "Name":{"shape":"Name"}, "Password":{"shape":"Password"}, "Username":{"shape":"Username"} @@ -873,13 +1135,55 @@ "LastBackupDate":{"shape":"Time"}, "Name":{"shape":"Name"}, "Path":{"shape":"Path"}, - "ResourceArn":{"shape":"ResourceArn"} + "ResourceArn":{"shape":"ResourceArn"}, + "VmwareTags":{"shape":"VmwareTags"} } }, "VirtualMachines":{ "type":"list", "member":{"shape":"VirtualMachine"} }, + "VmwareCategory":{ + "type":"string", + "max":80, + "min":1 + }, + "VmwareTag":{ + "type":"structure", + "members":{ + "VmwareCategory":{"shape":"VmwareCategory"}, + "VmwareTagDescription":{"shape":"string"}, + "VmwareTagName":{"shape":"VmwareTagName"} + } + }, + "VmwareTagName":{ + "type":"string", + "max":80, + "min":1 + }, + "VmwareTags":{ + "type":"list", + "member":{"shape":"VmwareTag"} + }, + "VmwareToAwsTagMapping":{ + "type":"structure", + "required":[ + "AwsTagKey", + "AwsTagValue", + "VmwareCategory", + "VmwareTagName" + ], + "members":{ + "AwsTagKey":{"shape":"TagKey"}, + "AwsTagValue":{"shape":"TagValue"}, + "VmwareCategory":{"shape":"VmwareCategory"}, + "VmwareTagName":{"shape":"VmwareTagName"} + } + }, + "VmwareToAwsTagMappings":{ + "type":"list", + "member":{"shape":"VmwareToAwsTagMapping"} + }, "VpcEndpoint":{ "type":"string", "max":255, diff --git a/models/apis/backup-gateway/2021-01-01/docs-2.json b/models/apis/backup-gateway/2021-01-01/docs-2.json index fb37a42d21..bc3b5f44ae 100644 --- a/models/apis/backup-gateway/2021-01-01/docs-2.json +++ b/models/apis/backup-gateway/2021-01-01/docs-2.json @@ -7,14 +7,20 @@ "DeleteGateway": "

Deletes a backup gateway.

", "DeleteHypervisor": "

Deletes a hypervisor.

", "DisassociateGatewayFromServer": "

Disassociates a backup gateway from the specified server. After the disassociation process finishes, the gateway can no longer access the virtual machines on the server.

", + "GetBandwidthRateLimitSchedule": "

Retrieves the bandwidth rate limit schedule for a specified gateway. By default, gateways do not have bandwidth rate limit schedules, which means no bandwidth rate limiting is in effect. Use this to get a gateway's bandwidth rate limit schedule.

", "GetGateway": "

By providing the ARN (Amazon Resource Name), this API returns the gateway.

", + "GetHypervisor": "

This action requests information about the specified hypervisor to which the gateway will connect. A hypervisor is hardware, software, or firmware that creates and manages virtual machines, and allocates resources to them.

", + "GetHypervisorPropertyMappings": "

This action retrieves the property mappings for the specified hypervisor. A hypervisor property mapping displays the relationship of entity properties available from the on-premises hypervisor to the properties available in Amazon Web Services.

", "GetVirtualMachine": "

By providing the ARN (Amazon Resource Name), this API returns the virtual machine.

", "ImportHypervisorConfiguration": "

Connect to a hypervisor by importing its configuration.

", "ListGateways": "

Lists backup gateways owned by an Amazon Web Services account in an Amazon Web Services Region. The returned list is ordered by gateway Amazon Resource Name (ARN).

", "ListHypervisors": "

Lists your hypervisors.

", "ListTagsForResource": "

Lists the tags applied to the resource identified by its Amazon Resource Name (ARN).

", "ListVirtualMachines": "

Lists your virtual machines.

", + "PutBandwidthRateLimitSchedule": "

This action sets the bandwidth rate limit schedule for a specified gateway. By default, gateways do not have a bandwidth rate limit schedule, which means no bandwidth rate limiting is in effect. Use this to initiate a gateway's bandwidth rate limit schedule.

", + "PutHypervisorPropertyMappings": "

This action sets the property mappings for the specified hypervisor. A hypervisor property mapping displays the relationship of entity properties available from the on-premises hypervisor to the properties available in Amazon Web Services.

", "PutMaintenanceStartTime": "

Set the maintenance start time for a gateway.

", + "StartVirtualMachinesMetadataSync": "

This action sends a request to sync metadata across the specified virtual machines.

", "TagResource": "

Tag the resource.

", "TestHypervisorConfiguration": "

Tests your hypervisor configuration to validate that backup gateway can connect with the hypervisor and its resources.

", "UntagResource": "

Removes tags from the resource.

", @@ -44,6 +50,25 @@ "refs": { } }, + "AverageUploadRateLimit": { + "base": null, + "refs": { + "BandwidthRateLimitInterval$AverageUploadRateLimitInBitsPerSec": "

The average upload rate limit component of the bandwidth rate limit interval, in bits per second. This field does not appear in the response if the upload rate limit is not set.

For Backup Gateway, the minimum value is (Value).

" + } + }, + "BandwidthRateLimitInterval": { + "base": "

Describes a bandwidth rate limit interval for a gateway. A bandwidth rate limit schedule consists of one or more bandwidth rate limit intervals. A bandwidth rate limit interval defines a period of time on one or more days of the week, during which bandwidth rate limits are specified for uploading, downloading, or both.

", + "refs": { + "BandwidthRateLimitIntervals$member": null + } + }, + "BandwidthRateLimitIntervals": { + "base": null, + "refs": { + "GetBandwidthRateLimitScheduleOutput$BandwidthRateLimitIntervals": "

An array containing bandwidth rate limit schedule intervals for a gateway. When no bandwidth rate limit intervals have been scheduled, the array is empty.

", + "PutBandwidthRateLimitScheduleInput$BandwidthRateLimitIntervals": "

An array containing bandwidth rate limit schedule intervals for a gateway. When no bandwidth rate limit intervals have been scheduled, the array is empty.

" + } + }, "ConflictException": { "base": "

The operation cannot proceed because it is not supported.

", "refs": { @@ -69,10 +94,17 @@ "DayOfWeek": { "base": null, "refs": { + "DaysOfWeek$member": null, "MaintenanceStartTime$DayOfWeek": "

An ordinal number between 0 and 6 that represents the day of the week, where 0 represents Sunday and 6 represents Saturday. The day of week is in the time zone of the gateway.

", "PutMaintenanceStartTimeInput$DayOfWeek": "

The day of the week to start maintenance on a gateway.

" } }, + "DaysOfWeek": { + "base": null, + "refs": { + "BandwidthRateLimitInterval$DaysOfWeek": "

The days of the week component of the bandwidth rate limit interval, represented as ordinal numbers from 0 to 6, where 0 represents Sunday and 6 represents Saturday.

" + } + }, "DeleteGatewayInput": { "base": null, "refs": { @@ -121,7 +153,11 @@ "DisassociateGatewayFromServerOutput$GatewayArn": "

The Amazon Resource Name (ARN) of the gateway you disassociated.

", "Gateway$GatewayArn": "

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

", "GatewayDetails$GatewayArn": "

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

", + "GetBandwidthRateLimitScheduleInput$GatewayArn": "

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

", + "GetBandwidthRateLimitScheduleOutput$GatewayArn": "

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

", "GetGatewayInput$GatewayArn": "

The Amazon Resource Name (ARN) of the gateway.

", + "PutBandwidthRateLimitScheduleInput$GatewayArn": "

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

", + "PutBandwidthRateLimitScheduleOutput$GatewayArn": "

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

", "PutMaintenanceStartTimeInput$GatewayArn": "

The Amazon Resource Name (ARN) for the gateway, used to specify its maintenance start time.

", "PutMaintenanceStartTimeOutput$GatewayArn": "

The Amazon Resource Name (ARN) of a gateway for which you set the maintenance start time.

", "TestHypervisorConfigurationInput$GatewayArn": "

The Amazon Resource Name (ARN) of the gateway to the hypervisor to test.

", @@ -151,6 +187,16 @@ "ListGatewaysOutput$Gateways": "

A list of your gateways.

" } }, + "GetBandwidthRateLimitScheduleInput": { + "base": null, + "refs": { + } + }, + "GetBandwidthRateLimitScheduleOutput": { + "base": null, + "refs": { + } + }, "GetGatewayInput": { "base": null, "refs": { @@ -161,6 +207,26 @@ "refs": { } }, + "GetHypervisorInput": { + "base": null, + "refs": { + } + }, + "GetHypervisorOutput": { + "base": null, + "refs": { + } + }, + "GetHypervisorPropertyMappingsInput": { + "base": null, + "refs": { + } + }, + "GetHypervisorPropertyMappingsOutput": { + "base": null, + "refs": { + } + }, "GetVirtualMachineInput": { "base": null, "refs": { @@ -175,6 +241,7 @@ "base": null, "refs": { "Hypervisor$Host": "

The server host of the hypervisor. This can be either an IP address or a fully-qualified domain name (FQDN).

", + "HypervisorDetails$Host": "

The server host of the hypervisor. This can be either an IP address or a fully-qualified domain name (FQDN).

", "ImportHypervisorConfigurationInput$Host": "

The server host of the hypervisor. This can be either an IP address or a fully-qualified domain name (FQDN).

", "TestHypervisorConfigurationInput$Host": "

The server host of the hypervisor. This can be either an IP address or a fully-qualified domain name (FQDN).

", "UpdateHypervisorInput$Host": "

The updated host of the hypervisor. This can be either an IP address or a fully-qualified domain name (FQDN).

" @@ -183,6 +250,8 @@ "HourOfDay": { "base": null, "refs": { + "BandwidthRateLimitInterval$EndHourOfDay": "

The hour of the day to end the bandwidth rate limit interval.

", + "BandwidthRateLimitInterval$StartHourOfDay": "

The hour of the day to start the bandwidth rate limit interval.

", "MaintenanceStartTime$HourOfDay": "

The hour component of the maintenance start time represented as hh, where hh is the hour (0 to 23). The hour of the day is in the time zone of the gateway.

", "PutMaintenanceStartTimeInput$HourOfDay": "

The hour of the day to start maintenance on a gateway.

" } @@ -193,6 +262,12 @@ "Hypervisors$member": null } }, + "HypervisorDetails": { + "base": "

These are the details of the specified hypervisor. A hypervisor is hardware, software, or firmware that creates and manages virtual machines, and allocates resources to them.

", + "refs": { + "GetHypervisorOutput$Hypervisor": "

Details about the requested hypervisor.

" + } + }, "HypervisorId": { "base": null, "refs": { @@ -203,7 +278,8 @@ "HypervisorState": { "base": null, "refs": { - "Hypervisor$State": "

The state of the hypervisor.

" + "Hypervisor$State": "

The state of the hypervisor.

", + "HypervisorDetails$State": "

This is the current state of the specified hypervisor.

The possible states are PENDING, ONLINE, OFFLINE, or ERROR.

" } }, "Hypervisors": { @@ -212,6 +288,13 @@ "ListHypervisorsOutput$Hypervisors": "

A list of your Hypervisor objects, ordered by their Amazon Resource Names (ARNs).

" } }, + "IamRoleArn": { + "base": null, + "refs": { + "GetHypervisorPropertyMappingsOutput$IamRoleArn": "

The Amazon Resource Name (ARN) of the IAM role.

", + "PutHypervisorPropertyMappingsInput$IamRoleArn": "

The Amazon Resource Name (ARN) of the IAM role.

" + } + }, "ImportHypervisorConfigurationInput": { "base": null, "refs": { @@ -231,6 +314,7 @@ "base": null, "refs": { "Hypervisor$KmsKeyArn": "

The Amazon Resource Name (ARN) of the Key Management Service used to encrypt the hypervisor.

", + "HypervisorDetails$KmsKeyArn": "

The Amazon Resource Name (ARN) of the KMS used to encrypt the hypervisor.

", "ImportHypervisorConfigurationInput$KmsKeyArn": "

The Key Management Service for the hypervisor.

" } }, @@ -274,6 +358,13 @@ "refs": { } }, + "LogGroupArn": { + "base": null, + "refs": { + "HypervisorDetails$LogGroupArn": "

The Amazon Resource Name (ARN) of the group of gateways within the requested log.

", + "UpdateHypervisorInput$LogGroupArn": "

The Amazon Resource Name (ARN) of the group of gateways within the requested log.

" + } + }, "MaintenanceStartTime": { "base": "

This is your gateway's weekly maintenance start time including the day and time of the week. Note that values are in terms of the gateway's time zone. Can be weekly or monthly.

", "refs": { @@ -291,6 +382,8 @@ "MinuteOfHour": { "base": null, "refs": { + "BandwidthRateLimitInterval$EndMinuteOfHour": "

The minute of the hour to end the bandwidth rate limit interval.

The bandwidth rate limit interval ends at the end of the minute. To end an interval at the end of an hour, use the value 59.

", + "BandwidthRateLimitInterval$StartMinuteOfHour": "

The minute of the hour to start the bandwidth rate limit interval. The interval begins at the start of that minute. To begin an interval exactly at the start of the hour, use the value 0.

", "MaintenanceStartTime$MinuteOfHour": "

The minute component of the maintenance start time represented as mm, where mm is the minute (0 to 59). The minute of the hour is in the time zone of the gateway.

", "PutMaintenanceStartTimeInput$MinuteOfHour": "

The minute of the hour to start maintenance on a gateway.

" } @@ -302,6 +395,7 @@ "Gateway$GatewayDisplayName": "

The display name of the gateway.

", "GatewayDetails$GatewayDisplayName": "

The display name of the gateway.

", "Hypervisor$Name": "

The name of the hypervisor.

", + "HypervisorDetails$Name": "

This is the name of the specified hypervisor.

", "ImportHypervisorConfigurationInput$Name": "

The name of the hypervisor.

", "UpdateGatewayInformationInput$GatewayDisplayName": "

The updated display name of the gateway.

", "UpdateHypervisorInput$Name": "

The updated name for the hypervisor

", @@ -337,6 +431,26 @@ "VirtualMachineDetails$Path": "

The path of the virtual machine.

" } }, + "PutBandwidthRateLimitScheduleInput": { + "base": null, + "refs": { + } + }, + "PutBandwidthRateLimitScheduleOutput": { + "base": null, + "refs": { + } + }, + "PutHypervisorPropertyMappingsInput": { + "base": null, + "refs": { + } + }, + "PutHypervisorPropertyMappingsOutput": { + "base": null, + "refs": { + } + }, "PutMaintenanceStartTimeInput": { "base": null, "refs": { @@ -372,13 +486,37 @@ "AssociateGatewayToServerInput$ServerArn": "

The Amazon Resource Name (ARN) of the server that hosts your virtual machines.

", "DeleteHypervisorInput$HypervisorArn": "

The Amazon Resource Name (ARN) of the hypervisor to delete.

", "DeleteHypervisorOutput$HypervisorArn": "

The Amazon Resource Name (ARN) of the hypervisor you deleted.

", + "GetHypervisorInput$HypervisorArn": "

The Amazon Resource Name (ARN) of the hypervisor.

", + "GetHypervisorPropertyMappingsInput$HypervisorArn": "

The Amazon Resource Name (ARN) of the hypervisor.

", + "GetHypervisorPropertyMappingsOutput$HypervisorArn": "

The Amazon Resource Name (ARN) of the hypervisor.

", "Hypervisor$HypervisorArn": "

The Amazon Resource Name (ARN) of the hypervisor.

", + "HypervisorDetails$HypervisorArn": "

The Amazon Resource Name (ARN) of the hypervisor.

", "ImportHypervisorConfigurationOutput$HypervisorArn": "

The Amazon Resource Name (ARN) of the hypervisor you disassociated.

", "ListVirtualMachinesInput$HypervisorArn": "

The Amazon Resource Name (ARN) of the hypervisor connected to your virtual machine.

", + "PutHypervisorPropertyMappingsInput$HypervisorArn": "

The Amazon Resource Name (ARN) of the hypervisor.

", + "PutHypervisorPropertyMappingsOutput$HypervisorArn": "

The Amazon Resource Name (ARN) of the hypervisor.

", + "StartVirtualMachinesMetadataSyncInput$HypervisorArn": "

The Amazon Resource Name (ARN) of the hypervisor.

", + "StartVirtualMachinesMetadataSyncOutput$HypervisorArn": "

The Amazon Resource Name (ARN) of the hypervisor.

", "UpdateHypervisorInput$HypervisorArn": "

The Amazon Resource Name (ARN) of the hypervisor to update.

", "UpdateHypervisorOutput$HypervisorArn": "

The Amazon Resource Name (ARN) of the hypervisor you updated.

" } }, + "StartVirtualMachinesMetadataSyncInput": { + "base": null, + "refs": { + } + }, + "StartVirtualMachinesMetadataSyncOutput": { + "base": null, + "refs": { + } + }, + "SyncMetadataStatus": { + "base": null, + "refs": { + "HypervisorDetails$LatestMetadataSyncStatus": "

This is the most recent status for the indicated metadata sync.

" + } + }, "Tag": { "base": "

A key-value pair you can use to manage, filter, and search for your resources. Allowed characters include UTF-8 letters, numbers, spaces, and the following characters: + - = . _ : /.

", "refs": { @@ -389,7 +527,8 @@ "base": null, "refs": { "Tag$Key": "

The key part of a tag's key-value pair. The key can't start with aws:.

", - "TagKeys$member": null + "TagKeys$member": null, + "VmwareToAwsTagMapping$AwsTagKey": "

The key part of the Amazon Web Services tag's key-value pair.

" } }, "TagKeys": { @@ -411,7 +550,8 @@ "TagValue": { "base": null, "refs": { - "Tag$Value": "

The value part of a tag's key-value pair.

" + "Tag$Value": "

The value part of a tag's key-value pair.

", + "VmwareToAwsTagMapping$AwsTagValue": "

The value part of the Amazon Web Services tag's key-value pair.

" } }, "Tags": { @@ -444,6 +584,7 @@ "Gateway$LastSeenTime": "

The last time Backup gateway communicated with the gateway, in Unix format and UTC time.

", "GatewayDetails$LastSeenTime": "

Details showing the last time Backup gateway communicated with the cloud, in Unix format and UTC time.

", "GatewayDetails$NextUpdateAvailabilityTime": "

Details showing the next update availability time of the gateway.

", + "HypervisorDetails$LastSuccessfulMetadataSyncTime": "

This is the time when the most recent successful sync of metadata occurred.

", "VirtualMachine$LastBackupDate": "

The most recent date a virtual machine was backed up, in Unix format and UTC time.

", "VirtualMachineDetails$LastBackupDate": "

The most recent date a virtual machine was backed up, in Unix format and UTC time.

" } @@ -519,6 +660,45 @@ "ListVirtualMachinesOutput$VirtualMachines": "

A list of your VirtualMachine objects, ordered by their Amazon Resource Names (ARNs).

" } }, + "VmwareCategory": { + "base": null, + "refs": { + "VmwareTag$VmwareCategory": "

The is the category of VMware.

", + "VmwareToAwsTagMapping$VmwareCategory": "

The is the category of VMware.

" + } + }, + "VmwareTag": { + "base": "

A VMware tag is a tag attached to a specific virtual machine. A tag is a key-value pair you can use to manage, filter, and search for your resources.

The content of VMware tags can be matched to Amazon Web Services tags.

", + "refs": { + "VmwareTags$member": null + } + }, + "VmwareTagName": { + "base": null, + "refs": { + "VmwareTag$VmwareTagName": "

This is the user-defined name of a VMware tag.

", + "VmwareToAwsTagMapping$VmwareTagName": "

This is the user-defined name of a VMware tag.

" + } + }, + "VmwareTags": { + "base": null, + "refs": { + "VirtualMachineDetails$VmwareTags": "

These are the details of the VMware tags associated with the specified virtual machine.

" + } + }, + "VmwareToAwsTagMapping": { + "base": "

This displays the mapping of on-premises VMware tags to the corresponding Amazon Web Services tags.

", + "refs": { + "VmwareToAwsTagMappings$member": null + } + }, + "VmwareToAwsTagMappings": { + "base": null, + "refs": { + "GetHypervisorPropertyMappingsOutput$VmwareToAwsTagMappings": "

This is a display of the mappings of on-premises VMware tags to the Amazon Web Services tags.

", + "PutHypervisorPropertyMappingsInput$VmwareToAwsTagMappings": "

This action requests the mappings of on-premises VMware tags to the Amazon Web Services tags.

" + } + }, "VpcEndpoint": { "base": null, "refs": { @@ -532,6 +712,7 @@ "AccessDeniedException$Message": null, "ConflictException$ErrorCode": "

A description of why the operation is not supported.

", "ConflictException$Message": null, + "HypervisorDetails$LatestMetadataSyncStatusMessage": "

This is the most recent status for the indicated metadata sync.

", "InternalServerException$ErrorCode": "

A description of which internal error occured.

", "InternalServerException$Message": null, "ResourceNotFoundException$ErrorCode": "

A description of which resource wasn't found.

", @@ -541,7 +722,8 @@ "ValidationException$ErrorCode": "

A description of what caused the validation error.

", "ValidationException$Message": null, "VirtualMachine$HypervisorId": "

The ID of the virtual machine's hypervisor.

", - "VirtualMachineDetails$HypervisorId": "

The ID of the virtual machine's hypervisor.

" + "VirtualMachineDetails$HypervisorId": "

The ID of the virtual machine's hypervisor.

", + "VmwareTag$VmwareTagDescription": "

This is a user-defined description of a VMware tag.

" } } } diff --git a/models/apis/backup-gateway/2021-01-01/endpoint-rule-set-1.json b/models/apis/backup-gateway/2021-01-01/endpoint-rule-set-1.json new file mode 100644 index 0000000000..1e9320a2c4 --- /dev/null +++ b/models/apis/backup-gateway/2021-01-01/endpoint-rule-set-1.json @@ -0,0 +1,306 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": true, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://backup-gateway-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://backup-gateway-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://backup-gateway.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://backup-gateway.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] +} \ No newline at end of file diff --git a/models/apis/backup-gateway/2021-01-01/endpoint-tests-1.json b/models/apis/backup-gateway/2021-01-01/endpoint-tests-1.json new file mode 100644 index 0000000000..936ab0dd24 --- /dev/null +++ b/models/apis/backup-gateway/2021-01-01/endpoint-tests-1.json @@ -0,0 +1,1239 @@ +{ + "testCases": [ + { + "documentation": "For region ap-south-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.ap-south-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "ap-south-1" + } + }, + { + "documentation": "For region ap-south-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.ap-south-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "ap-south-1" + } + }, + { + "documentation": "For region ap-south-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.ap-south-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "ap-south-1" + } + }, + { + "documentation": "For region ap-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.ap-south-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "ap-south-1" + } + }, + { + "documentation": "For region eu-south-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.eu-south-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "eu-south-1" + } + }, + { + "documentation": "For region eu-south-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.eu-south-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "eu-south-1" + } + }, + { + "documentation": "For region eu-south-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.eu-south-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "eu-south-1" + } + }, + { + "documentation": "For region eu-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.eu-south-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "eu-south-1" + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "us-gov-east-1" + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "us-gov-east-1" + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.us-gov-east-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "us-gov-east-1" + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "us-gov-east-1" + } + }, + { + "documentation": "For region ca-central-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.ca-central-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "ca-central-1" + } + }, + { + "documentation": "For region ca-central-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.ca-central-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "ca-central-1" + } + }, + { + "documentation": "For region ca-central-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.ca-central-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "ca-central-1" + } + }, + { + "documentation": "For region ca-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.ca-central-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "ca-central-1" + } + }, + { + "documentation": "For region eu-central-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.eu-central-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "eu-central-1" + } + }, + { + "documentation": "For region eu-central-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.eu-central-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "eu-central-1" + } + }, + { + "documentation": "For region eu-central-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.eu-central-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "eu-central-1" + } + }, + { + "documentation": "For region eu-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.eu-central-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "eu-central-1" + } + }, + { + "documentation": "For region us-west-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.us-west-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "us-west-1" + } + }, + { + "documentation": "For region us-west-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.us-west-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "us-west-1" + } + }, + { + "documentation": "For region us-west-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.us-west-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "us-west-1" + } + }, + { + "documentation": "For region us-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.us-west-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "us-west-1" + } + }, + { + "documentation": "For region us-west-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.us-west-2.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "us-west-2" + } + }, + { + "documentation": "For region us-west-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.us-west-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "us-west-2" + } + }, + { + "documentation": "For region us-west-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.us-west-2.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "us-west-2" + } + }, + { + "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.us-west-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "us-west-2" + } + }, + { + "documentation": "For region af-south-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.af-south-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "af-south-1" + } + }, + { + "documentation": "For region af-south-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.af-south-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "af-south-1" + } + }, + { + "documentation": "For region af-south-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.af-south-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "af-south-1" + } + }, + { + "documentation": "For region af-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.af-south-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "af-south-1" + } + }, + { + "documentation": "For region eu-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.eu-north-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "eu-north-1" + } + }, + { + "documentation": "For region eu-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.eu-north-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "eu-north-1" + } + }, + { + "documentation": "For region eu-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.eu-north-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "eu-north-1" + } + }, + { + "documentation": "For region eu-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.eu-north-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "eu-north-1" + } + }, + { + "documentation": "For region eu-west-3 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.eu-west-3.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "eu-west-3" + } + }, + { + "documentation": "For region eu-west-3 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.eu-west-3.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "eu-west-3" + } + }, + { + "documentation": "For region eu-west-3 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.eu-west-3.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "eu-west-3" + } + }, + { + "documentation": "For region eu-west-3 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.eu-west-3.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "eu-west-3" + } + }, + { + "documentation": "For region eu-west-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.eu-west-2.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "eu-west-2" + } + }, + { + "documentation": "For region eu-west-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.eu-west-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "eu-west-2" + } + }, + { + "documentation": "For region eu-west-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.eu-west-2.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "eu-west-2" + } + }, + { + "documentation": "For region eu-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.eu-west-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "eu-west-2" + } + }, + { + "documentation": "For region eu-west-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.eu-west-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "eu-west-1" + } + }, + { + "documentation": "For region eu-west-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.eu-west-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "eu-west-1" + } + }, + { + "documentation": "For region eu-west-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.eu-west-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "eu-west-1" + } + }, + { + "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.eu-west-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "eu-west-1" + } + }, + { + "documentation": "For region ap-northeast-3 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.ap-northeast-3.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "ap-northeast-3" + } + }, + { + "documentation": "For region ap-northeast-3 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.ap-northeast-3.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "ap-northeast-3" + } + }, + { + "documentation": "For region ap-northeast-3 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.ap-northeast-3.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "ap-northeast-3" + } + }, + { + "documentation": "For region ap-northeast-3 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.ap-northeast-3.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "ap-northeast-3" + } + }, + { + "documentation": "For region ap-northeast-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.ap-northeast-2.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "ap-northeast-2" + } + }, + { + "documentation": "For region ap-northeast-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.ap-northeast-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "ap-northeast-2" + } + }, + { + "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.ap-northeast-2.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "ap-northeast-2" + } + }, + { + "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.ap-northeast-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "ap-northeast-2" + } + }, + { + "documentation": "For region ap-northeast-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.ap-northeast-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "ap-northeast-1" + } + }, + { + "documentation": "For region ap-northeast-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.ap-northeast-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "ap-northeast-1" + } + }, + { + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.ap-northeast-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "ap-northeast-1" + } + }, + { + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.ap-northeast-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "ap-northeast-1" + } + }, + { + "documentation": "For region me-south-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.me-south-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "me-south-1" + } + }, + { + "documentation": "For region me-south-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.me-south-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "me-south-1" + } + }, + { + "documentation": "For region me-south-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.me-south-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "me-south-1" + } + }, + { + "documentation": "For region me-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.me-south-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "me-south-1" + } + }, + { + "documentation": "For region sa-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.sa-east-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "sa-east-1" + } + }, + { + "documentation": "For region sa-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.sa-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "sa-east-1" + } + }, + { + "documentation": "For region sa-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.sa-east-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "sa-east-1" + } + }, + { + "documentation": "For region sa-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.sa-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "sa-east-1" + } + }, + { + "documentation": "For region ap-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.ap-east-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "ap-east-1" + } + }, + { + "documentation": "For region ap-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.ap-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "ap-east-1" + } + }, + { + "documentation": "For region ap-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.ap-east-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "ap-east-1" + } + }, + { + "documentation": "For region ap-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.ap-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "ap-east-1" + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.us-gov-west-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "us-gov-west-1" + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.us-gov-west-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "us-gov-west-1" + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.us-gov-west-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "us-gov-west-1" + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.us-gov-west-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "us-gov-west-1" + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.ap-southeast-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "ap-southeast-1" + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.ap-southeast-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "ap-southeast-1" + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.ap-southeast-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "ap-southeast-1" + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.ap-southeast-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "ap-southeast-1" + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.ap-southeast-2.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "ap-southeast-2" + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.ap-southeast-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "ap-southeast-2" + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.ap-southeast-2.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "ap-southeast-2" + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.ap-southeast-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "ap-southeast-2" + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.us-east-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "us-east-1" + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "us-east-1" + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.us-east-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "us-east-1" + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.us-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "us-east-1" + } + }, + { + "documentation": "For region us-east-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.us-east-2.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "us-east-2" + } + }, + { + "documentation": "For region us-east-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway-fips.us-east-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "us-east-2" + } + }, + { + "documentation": "For region us-east-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.us-east-2.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "us-east-2" + } + }, + { + "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://backup-gateway.us-east-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "us-east-2" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff --git a/models/apis/connect/2017-08-08/api-2.json b/models/apis/connect/2017-08-08/api-2.json index b192d5d886..cf7005366e 100644 --- a/models/apis/connect/2017-08-08/api-2.json +++ b/models/apis/connect/2017-08-08/api-2.json @@ -10126,7 +10126,9 @@ "ko-KR", "pt-BR", "pt-PT", - "zh-CN" + "zh-CN", + "en-NZ", + "en-ZA" ] }, "VocabularyLastModifiedTime":{"type":"timestamp"}, diff --git a/models/apis/connect/2017-08-08/docs-2.json b/models/apis/connect/2017-08-08/docs-2.json index 67dc5ea4a5..6cdc15e5c2 100644 --- a/models/apis/connect/2017-08-08/docs-2.json +++ b/models/apis/connect/2017-08-08/docs-2.json @@ -1,6 +1,6 @@ { "version": "2.0", - "service": "

Amazon Connect is a cloud-based contact center solution that you use to set up and manage a customer contact center and provide reliable customer engagement at any scale.

Amazon Connect provides metrics and real-time reporting that enable you to optimize contact routing. You can also resolve customer issues more efficiently by getting customers in touch with the appropriate agents.

There are limits to the number of Amazon Connect resources that you can create. There are also limits to the number of requests that you can make per second. For more information, see Amazon Connect Service Quotas in the Amazon Connect Administrator Guide.

You can connect programmatically to an Amazon Web Services service by using an endpoint. For a list of Amazon Connect endpoints, see Amazon Connect Endpoints.

Working with flows? Check out the Amazon Connect Flow language.

", + "service": "

Amazon Connect is a cloud-based contact center solution that you use to set up and manage a customer contact center and provide reliable customer engagement at any scale.

Amazon Connect provides metrics and real-time reporting that enable you to optimize contact routing. You can also resolve customer issues more efficiently by getting customers in touch with the appropriate agents.

There are limits to the number of Amazon Connect resources that you can create. There are also limits to the number of requests that you can make per second. For more information, see Amazon Connect Service Quotas in the Amazon Connect Administrator Guide.

You can connect programmatically to an Amazon Web Services service by using an endpoint. For a list of Amazon Connect endpoints, see Amazon Connect Endpoints.

", "operations": { "AssociateApprovedOrigin": "

This API is in preview release for Amazon Connect and is subject to change.

Associates an approved origin to an Amazon Connect instance.

", "AssociateBot": "

This API is in preview release for Amazon Connect and is subject to change.

Allows the specified Amazon Connect instance to access the specified Amazon Lex or Amazon Lex V2 bot.

", @@ -14,7 +14,7 @@ "AssociateSecurityKey": "

This API is in preview release for Amazon Connect and is subject to change.

Associates a security key to the instance.

", "ClaimPhoneNumber": "

Claims an available phone number to your Amazon Connect instance or traffic distribution group. You can call this API only in the same Amazon Web Services Region where the Amazon Connect instance or traffic distribution group was created.

For more information about how to use this operation, see Claim a phone number in your country and Claim phone numbers to traffic distribution groups in the Amazon Connect Administrator Guide.

You can call the SearchAvailablePhoneNumbers API for available phone numbers that you can claim. Call the DescribePhoneNumber API to verify the status of a previous ClaimPhoneNumber operation.

", "CreateAgentStatus": "

This API is in preview release for Amazon Connect and is subject to change.

Creates an agent status for the specified Amazon Connect instance.

", - "CreateContactFlow": "

Creates a flow for the specified Amazon Connect instance.

You can also create and update flows using the Amazon Connect Flow language.

", + "CreateContactFlow": "

Creates a flow for the specified Amazon Connect instance.

You can also create and update flows using the Amazon Connect Flow language.

", "CreateContactFlowModule": "

Creates a flow module for the specified Amazon Connect instance.

", "CreateHoursOfOperation": "

This API is in preview release for Amazon Connect and is subject to change.

Creates hours of operation.

", "CreateInstance": "

This API is in preview release for Amazon Connect and is subject to change.

Initiates an Amazon Connect instance with all the supported channels enabled. It does not attach any storage, such as Amazon Simple Storage Service (Amazon S3) or Amazon Kinesis. It also does not allow for any configurations on features, such as Contact Lens for Amazon Connect.

Amazon Connect enforces a limit on the total number of instances that you can create or delete in 30 days. If you exceed this limit, you will get an error message indicating there has been an excessive number of attempts at creating or deleting instances. You must wait 30 days before you can restart creating and deleting instances in your account.

", @@ -22,7 +22,7 @@ "CreateQueue": "

This API is in preview release for Amazon Connect and is subject to change.

Creates a new queue for the specified Amazon Connect instance.

If the number being used in the input is claimed to a traffic distribution group, and you are calling this API using an instance in the Amazon Web Services Region where the traffic distribution group was created, you can use either a full phone number ARN or UUID value for the OutboundCallerIdNumberId value of the OutboundCallerConfig request body parameter. However, if the number is claimed to a traffic distribution group and you are calling this API using an instance in the alternate Amazon Web Services Region associated with the traffic distribution group, you must provide a full phone number ARN. If a UUID is provided in this scenario, you will receive a ResourceNotFoundException.

", "CreateQuickConnect": "

Creates a quick connect for the specified Amazon Connect instance.

", "CreateRoutingProfile": "

Creates a new routing profile.

", - "CreateRule": "

Creates a rule for the specified Amazon Connect instance.

", + "CreateRule": "

Creates a rule for the specified Amazon Connect instance.

Use the Rules Function language to code conditions for the rule.

", "CreateSecurityProfile": "

This API is in preview release for Amazon Connect and is subject to change.

Creates a security profile.

", "CreateTaskTemplate": "

Creates a new task template in the specified Amazon Connect instance.

", "CreateTrafficDistributionGroup": "

Creates a traffic distribution group given an Amazon Connect instance that has been replicated.

For more information about creating traffic distribution groups, see Set up traffic distribution groups in the Amazon Connect Administrator Guide.

", @@ -46,7 +46,7 @@ "DeleteVocabulary": "

Deletes the vocabulary that has the given identifier.

", "DescribeAgentStatus": "

This API is in preview release for Amazon Connect and is subject to change.

Describes an agent status.

", "DescribeContact": "

This API is in preview release for Amazon Connect and is subject to change.

Describes the specified contact.

Contact information remains available in Amazon Connect for 24 months, and then it is deleted.

Only data from November 12, 2021, and later is returned by this API.

", - "DescribeContactFlow": "

Describes the specified flow.

You can also create and update flows using the Amazon Connect Flow language.

", + "DescribeContactFlow": "

Describes the specified flow.

You can also create and update flows using the Amazon Connect Flow language.

", "DescribeContactFlowModule": "

Describes the specified flow module.

", "DescribeHoursOfOperation": "

This API is in preview release for Amazon Connect and is subject to change.

Describes the hours of operation.

", "DescribeInstance": "

This API is in preview release for Amazon Connect and is subject to change.

Returns the current state of the specified instance identifier. It tracks the instance while it is being created and returns an error status, if applicable.

If an instance is not created successfully, the instance status reason field returns details relevant to the reason. The instance in a failed state is returned only for 24 hours after the CreateInstance API was invoked.

", @@ -84,7 +84,7 @@ "ListApprovedOrigins": "

This API is in preview release for Amazon Connect and is subject to change.

Returns a paginated list of all approved origins associated with the instance.

", "ListBots": "

This API is in preview release for Amazon Connect and is subject to change.

For the specified version of Amazon Lex, returns a paginated list of all the Amazon Lex bots currently associated with the instance. Use this API to returns both Amazon Lex V1 and V2 bots.

", "ListContactFlowModules": "

Provides information about the flow modules for the specified Amazon Connect instance.

", - "ListContactFlows": "

Provides information about the flows for the specified Amazon Connect instance.

You can also create and update flows using the Amazon Connect Flow language.

For more information about flows, see Flows in the Amazon Connect Administrator Guide.

", + "ListContactFlows": "

Provides information about the flows for the specified Amazon Connect instance.

You can also create and update flows using the Amazon Connect Flow language.

For more information about flows, see Flows in the Amazon Connect Administrator Guide.

", "ListContactReferences": "

This API is in preview release for Amazon Connect and is subject to change.

For the specified referenceTypes, returns a list of references associated with the contact.

", "ListDefaultVocabularies": "

Lists the default vocabularies for the specified Amazon Connect instance.

", "ListHoursOfOperations": "

Provides information about the hours of operation for the specified Amazon Connect instance.

For more information about hours of operation, see Set the Hours of Operation for a Queue in the Amazon Connect Administrator Guide.

", @@ -138,11 +138,11 @@ "UpdateAgentStatus": "

This API is in preview release for Amazon Connect and is subject to change.

Updates agent status.

", "UpdateContact": "

This API is in preview release for Amazon Connect and is subject to change.

Adds or updates user-defined contact information associated with the specified contact. At least one field to be updated must be present in the request.

You can add or update user-defined contact information for both ongoing and completed contacts.

", "UpdateContactAttributes": "

Creates or updates user-defined contact attributes associated with the specified contact.

You can create or update user-defined attributes for both ongoing and completed contacts. For example, while the call is active, you can update the customer's name or the reason the customer called. You can add notes about steps that the agent took during the call that display to the next agent that takes the call. You can also update attributes for a contact using data from your CRM application and save the data with the contact in Amazon Connect. You could also flag calls for additional analysis, such as legal review or to identify abusive callers.

Contact attributes are available in Amazon Connect for 24 months, and are then deleted. For information about contact record retention and the maximum size of the contact record attributes section, see Feature specifications in the Amazon Connect Administrator Guide.

", - "UpdateContactFlowContent": "

Updates the specified flow.

You can also create and update flows using the Amazon Connect Flow language.

", + "UpdateContactFlowContent": "

Updates the specified flow.

You can also create and update flows using the Amazon Connect Flow language.

", "UpdateContactFlowMetadata": "

Updates metadata about specified flow.

", "UpdateContactFlowModuleContent": "

Updates specified flow module for the specified Amazon Connect instance.

", "UpdateContactFlowModuleMetadata": "

Updates metadata about specified flow module.

", - "UpdateContactFlowName": "

The name of the flow.

You can also create and update flows using the Amazon Connect Flow language.

", + "UpdateContactFlowName": "

The name of the flow.

You can also create and update flows using the Amazon Connect Flow language.

", "UpdateContactSchedule": "

Updates the scheduled time of a task contact that is already scheduled.

", "UpdateHoursOfOperation": "

This API is in preview release for Amazon Connect and is subject to change.

Updates the hours of operation.

", "UpdateInstanceAttribute": "

This API is in preview release for Amazon Connect and is subject to change.

Updates the value for the specified attribute type.

", @@ -159,7 +159,7 @@ "UpdateRoutingProfileDefaultOutboundQueue": "

Updates the default outbound queue of a routing profile.

", "UpdateRoutingProfileName": "

Updates the name and description of a routing profile. The request accepts the following data in JSON format. At least Name or Description must be provided.

", "UpdateRoutingProfileQueues": "

Updates the properties associated with a set of queues for a routing profile.

", - "UpdateRule": "

Updates a rule for the specified Amazon Connect instance.

", + "UpdateRule": "

Updates a rule for the specified Amazon Connect instance.

Use the Rules Function language to code conditions for the rule.

", "UpdateSecurityProfile": "

This API is in preview release for Amazon Connect and is subject to change.

Updates a security profile.

", "UpdateTaskTemplate": "

Updates details about a specific task template in the specified Amazon Connect instance. This operation does not support partial updates. Instead it does a full update of template content.

", "UpdateTrafficDistribution": "

Updates the traffic distribution for a given traffic distribution group.

For more information about updating a traffic distribution group, see Update telephony traffic distribution across Amazon Web Services Regions in the Amazon Connect Administrator Guide.

", @@ -777,7 +777,7 @@ "refs": { "ContactFlow$Content": "

The content of the flow.

", "CreateContactFlowRequest$Content": "

The content of the flow.

", - "UpdateContactFlowContentRequest$Content": "

The JSON string that represents flow's content. For an example, see Example contact flow in Amazon Connect Flow language in the Amazon Connect Administrator Guide.

" + "UpdateContactFlowContentRequest$Content": "

The JSON string that represents flow's content. For an example, see Example contact flow in Amazon Connect Flow language.

" } }, "ContactFlowDescription": { @@ -909,7 +909,7 @@ } }, "ContactFlowSummary": { - "base": "

Contains summary information about a flow.

You can also create and update flows using the Amazon Connect Flow language.

", + "base": "

Contains summary information about a flow.

You can also create and update flows using the Amazon Connect Flow language.

", "refs": { "ContactFlowSummaryList$member": null } @@ -4452,7 +4452,7 @@ "TagRestrictedResourceList": { "base": null, "refs": { - "CreateSecurityProfileRequest$TagRestrictedResources": "

The list of resources that a security profile applies tag restrictions to in Amazon Connect.

", + "CreateSecurityProfileRequest$TagRestrictedResources": "

The list of resources that a security profile applies tag restrictions to in Amazon Connect. Following are acceptable ResourceNames: User | SecurityProfile | Queue | RoutingProfile

", "SecurityProfile$TagRestrictedResources": "

The list of resources that a security profile applies tag restrictions to in Amazon Connect.

", "UpdateSecurityProfileRequest$TagRestrictedResources": "

The list of resources that a security profile applies tag restrictions to in Amazon Connect.

" } diff --git a/models/apis/ecs/2014-11-13/api-2.json b/models/apis/ecs/2014-11-13/api-2.json index 027cae84a0..c1f1536648 100644 --- a/models/apis/ecs/2014-11-13/api-2.json +++ b/models/apis/ecs/2014-11-13/api-2.json @@ -2500,7 +2500,9 @@ "bindIP":{"shape":"String"}, "containerPort":{"shape":"BoxedInteger"}, "hostPort":{"shape":"BoxedInteger"}, - "protocol":{"shape":"TransportProtocol"} + "protocol":{"shape":"TransportProtocol"}, + "containerPortRange":{"shape":"String"}, + "hostPortRange":{"shape":"String"} } }, "NetworkBindings":{ @@ -2635,7 +2637,8 @@ "hostPort":{"shape":"BoxedInteger"}, "protocol":{"shape":"TransportProtocol"}, "name":{"shape":"String"}, - "appProtocol":{"shape":"ApplicationProtocol"} + "appProtocol":{"shape":"ApplicationProtocol"}, + "containerPortRange":{"shape":"String"} } }, "PortMappingList":{ diff --git a/models/apis/ecs/2014-11-13/docs-2.json b/models/apis/ecs/2014-11-13/docs-2.json index 4246c0841f..94a2f3713c 100644 --- a/models/apis/ecs/2014-11-13/docs-2.json +++ b/models/apis/ecs/2014-11-13/docs-2.json @@ -22,7 +22,7 @@ "DescribeTaskSets": "

Describes the task sets in the specified cluster and service. This is used when a service uses the EXTERNAL deployment controller type. For more information, see Amazon ECS Deployment Types in the Amazon Elastic Container Service Developer Guide.

", "DescribeTasks": "

Describes a specified task or tasks.

Currently, stopped tasks appear in the returned results for at least one hour.

", "DiscoverPollEndpoint": "

This action is only used by the Amazon ECS agent, and it is not intended for use outside of the agent.

Returns an endpoint for the Amazon ECS agent to poll for updates.

", - "ExecuteCommand": "

Runs a command remotely on a container within a task.

If you use a condition key in your IAM policy to refine the conditions for the policy statement, for example limit the actions to a specific cluster, you receive an AccessDeniedException when there is a mismatch between the condition key value and the corresponding parameter value.

", + "ExecuteCommand": "

Runs a command remotely on a container within a task.

If you use a condition key in your IAM policy to refine the conditions for the policy statement, for example limit the actions to a specific cluster, you receive an AccessDeniedException when there is a mismatch between the condition key value and the corresponding parameter value.

For information about required permissions and considerations, see Using Amazon ECS Exec for debugging in the Amazon ECS Developer Guide.

", "GetTaskProtection": "

Retrieves the protection status of tasks in an Amazon ECS service.

", "ListAccountSettings": "

Lists the account settings for a specified principal.

", "ListAttributes": "

Lists the attributes for Amazon ECS resources within a specified target type and cluster. When you specify a target type and cluster, ListAttributes returns a list of attribute objects, one for each attribute on each resource. You can filter the list of results to a single attribute name to only return results that have that name. You can also filter the results by attribute name and value. You can do this, for example, to see which container instances in a cluster are running a Linux AMI (ecs.os-type=linux).

", @@ -247,7 +247,7 @@ "NetworkBinding$containerPort": "

The port number on the container that's used with the network binding.

", "NetworkBinding$hostPort": "

The port number on the host that's used with the network binding.

", "PortMapping$containerPort": "

The port number on the container that's bound to the user-specified or automatically assigned host port.

If you use containers in a task with the awsvpc or host network mode, specify the exposed ports using containerPort.

If you use containers in a task with the bridge network mode and you specify a container port and not a host port, your container automatically receives a host port in the ephemeral port range. For more information, see hostPort. Port mappings that are automatically assigned in this way do not count toward the 100 reserved ports limit of a container instance.

", - "PortMapping$hostPort": "

The port number on the container instance to reserve for your container.

If you use containers in a task with the awsvpc or host network mode, the hostPort can either be left blank or set to the same value as the containerPort.

If you use containers in a task with the bridge network mode, you can specify a non-reserved host port for your container port mapping, or you can omit the hostPort (or set it to 0) while specifying a containerPort and your container automatically receives a port in the ephemeral port range for your container instance operating system and Docker version.

The default ephemeral port range for Docker version 1.6.0 and later is listed on the instance under /proc/sys/net/ipv4/ip_local_port_range. If this kernel parameter is unavailable, the default ephemeral port range from 49153 through 65535 is used. Do not attempt to specify a host port in the ephemeral port range as these are reserved for automatic assignment. In general, ports below 32768 are outside of the ephemeral port range.

The default reserved ports are 22 for SSH, the Docker ports 2375 and 2376, and the Amazon ECS container agent ports 51678-51680. Any host port that was previously specified in a running task is also reserved while the task is running. That is, after a task stops, the host port is released. The current reserved ports are displayed in the remainingResources of DescribeContainerInstances output. A container instance can have up to 100 reserved ports at a time. This number includes the default reserved ports. Automatically assigned ports aren't included in the 100 reserved ports quota.

", + "PortMapping$hostPort": "

The port number on the container instance to reserve for your container.

If you specify a containerPortRange, leave this field empty and the value of the hostPort is set as follows:

If you use containers in a task with the awsvpc or host network mode, the hostPort can either be left blank or set to the same value as the containerPort.

If you use containers in a task with the bridge network mode, you can specify a non-reserved host port for your container port mapping, or you can omit the hostPort (or set it to 0) while specifying a containerPort and your container automatically receives a port in the ephemeral port range for your container instance operating system and Docker version.

The default ephemeral port range for Docker version 1.6.0 and later is listed on the instance under /proc/sys/net/ipv4/ip_local_port_range. If this kernel parameter is unavailable, the default ephemeral port range from 49153 through 65535 is used. Do not attempt to specify a host port in the ephemeral port range as these are reserved for automatic assignment. In general, ports below 32768 are outside of the ephemeral port range.

The default reserved ports are 22 for SSH, the Docker ports 2375 and 2376, and the Amazon ECS container agent ports 51678-51680. Any host port that was previously specified in a running task is also reserved while the task is running. That is, after a task stops, the host port is released. The current reserved ports are displayed in the remainingResources of DescribeContainerInstances output. A container instance can have up to 100 reserved ports at a time. This number includes the default reserved ports. Automatically assigned ports aren't included in the 100 reserved ports quota.

", "RunTaskRequest$count": "

The number of instantiations of the specified task to place on your cluster. You can specify up to 10 tasks for each call.

", "Service$healthCheckGracePeriodSeconds": "

The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started.

", "ServiceRegistry$port": "

The port value used if your service discovery service specified an SRV record. This field might be used if both the awsvpc network mode and SRV records are used.

", @@ -2150,6 +2150,8 @@ "MountPoint$sourceVolume": "

The name of the volume to mount. Must be a volume name referenced in the name parameter of task definition volume.

", "MountPoint$containerPath": "

The path on the container to mount the host volume at.

", "NetworkBinding$bindIP": "

The IP address that the container is bound to on the container instance.

", + "NetworkBinding$containerPortRange": "

The port number range on the container that's bound to the dynamically mapped host port range.

The following rules apply when you specify a containerPortRange:

You can call DescribeTasks to view the hostPortRange which are the host ports that are bound to the container ports.

", + "NetworkBinding$hostPortRange": "

The port number range on the host that's used with the network binding. This is assigned is assigned by Docker and delivered by the Amazon ECS agent.

", "NetworkInterface$attachmentId": "

The attachment ID for the network interface.

", "NetworkInterface$privateIpv4Address": "

The private IPv4 address for the network interface.

", "NetworkInterface$ipv6Address": "

The private IPv6 address for the network interface.

", @@ -2157,6 +2159,7 @@ "PlacementStrategy$field": "

The field to apply the placement strategy against. For the spread placement strategy, valid values are instanceId (or host, which has the same effect), or any platform or custom attribute that's applied to a container instance, such as attribute:ecs.availability-zone. For the binpack placement strategy, valid values are cpu and memory. For the random placement strategy, this field is not used.

", "PlatformDevice$id": "

The ID for the GPUs on the container instance. The available GPU IDs can also be obtained on the container instance in the /var/lib/ecs/gpu/nvidia_gpu_info.json file.

", "PortMapping$name": "

The name that's used for the port mapping. This parameter only applies to Service Connect. This parameter is the name that you use in the serviceConnectConfiguration of a service. The name can include up to 64 characters. The characters can include lowercase letters, numbers, underscores (_), and hyphens (-). The name can't start with a hyphen.

For more information, see Service Connect in the Amazon Elastic Container Service Developer Guide.

", + "PortMapping$containerPortRange": "

The port number range on the container that's bound to the dynamically mapped host port range.

The following rules apply when you specify a containerPortRange:

You can call DescribeTasks to view the hostPortRange which are the host ports that are bound to the container ports.

", "ProtectedTask$taskArn": "

The task ARN.

", "ProxyConfiguration$containerName": "

The name of the container that will serve as the App Mesh proxy.

", "PutAccountSettingDefaultRequest$value": "

The account setting value for the specified principal ARN. Accepted values are enabled and disabled.

", diff --git a/models/apis/ecs/2014-11-13/endpoint-rule-set-1.json b/models/apis/ecs/2014-11-13/endpoint-rule-set-1.json index 626cb0b69f..f4eebaefd6 100644 --- a/models/apis/ecs/2014-11-13/endpoint-rule-set-1.json +++ b/models/apis/ecs/2014-11-13/endpoint-rule-set-1.json @@ -52,15 +52,6 @@ "ref": "Endpoint" } ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" } ], "type": "tree", diff --git a/models/apis/ecs/2014-11-13/endpoint-tests-1.json b/models/apis/ecs/2014-11-13/endpoint-tests-1.json index 9cb2a97b32..cbc78244b0 100644 --- a/models/apis/ecs/2014-11-13/endpoint-tests-1.json +++ b/models/apis/ecs/2014-11-13/endpoint-tests-1.json @@ -8,8 +8,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ap-south-2" } }, @@ -21,8 +21,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ap-south-2" } }, @@ -34,8 +34,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ap-south-2" } }, @@ -47,8 +47,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ap-south-2" } }, @@ -60,8 +60,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ap-south-1" } }, @@ -73,8 +73,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ap-south-1" } }, @@ -86,8 +86,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ap-south-1" } }, @@ -99,8 +99,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ap-south-1" } }, @@ -112,8 +112,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "eu-south-1" } }, @@ -125,8 +125,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "eu-south-1" } }, @@ -138,8 +138,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "eu-south-1" } }, @@ -151,8 +151,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "eu-south-1" } }, @@ -164,8 +164,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "eu-south-2" } }, @@ -177,8 +177,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "eu-south-2" } }, @@ -190,8 +190,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "eu-south-2" } }, @@ -203,8 +203,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "eu-south-2" } }, @@ -216,8 +216,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "us-gov-east-1" } }, @@ -229,8 +229,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "us-gov-east-1" } }, @@ -242,8 +242,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "us-gov-east-1" } }, @@ -255,8 +255,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "us-gov-east-1" } }, @@ -268,8 +268,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "me-central-1" } }, @@ -281,8 +281,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "me-central-1" } }, @@ -294,8 +294,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "me-central-1" } }, @@ -307,8 +307,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "me-central-1" } }, @@ -320,8 +320,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ca-central-1" } }, @@ -333,8 +333,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ca-central-1" } }, @@ -346,8 +346,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ca-central-1" } }, @@ -359,8 +359,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ca-central-1" } }, @@ -372,8 +372,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "eu-central-1" } }, @@ -385,8 +385,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "eu-central-1" } }, @@ -398,8 +398,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "eu-central-1" } }, @@ -411,8 +411,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "eu-central-1" } }, @@ -422,8 +422,8 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "us-iso-west-1" } }, @@ -435,8 +435,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "us-iso-west-1" } }, @@ -446,8 +446,8 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "us-iso-west-1" } }, @@ -459,8 +459,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "us-iso-west-1" } }, @@ -472,8 +472,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "eu-central-2" } }, @@ -485,8 +485,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "eu-central-2" } }, @@ -498,8 +498,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "eu-central-2" } }, @@ -511,8 +511,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "eu-central-2" } }, @@ -524,8 +524,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "us-west-1" } }, @@ -537,8 +537,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "us-west-1" } }, @@ -550,8 +550,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "us-west-1" } }, @@ -563,8 +563,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "us-west-1" } }, @@ -576,8 +576,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "us-west-2" } }, @@ -589,8 +589,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "us-west-2" } }, @@ -602,8 +602,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "us-west-2" } }, @@ -615,8 +615,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "us-west-2" } }, @@ -628,8 +628,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "af-south-1" } }, @@ -641,8 +641,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "af-south-1" } }, @@ -654,8 +654,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "af-south-1" } }, @@ -667,8 +667,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "af-south-1" } }, @@ -680,8 +680,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "eu-north-1" } }, @@ -693,8 +693,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "eu-north-1" } }, @@ -706,8 +706,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "eu-north-1" } }, @@ -719,8 +719,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "eu-north-1" } }, @@ -732,8 +732,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "eu-west-3" } }, @@ -745,8 +745,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "eu-west-3" } }, @@ -758,8 +758,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "eu-west-3" } }, @@ -771,8 +771,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "eu-west-3" } }, @@ -784,8 +784,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "eu-west-2" } }, @@ -797,8 +797,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "eu-west-2" } }, @@ -810,8 +810,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "eu-west-2" } }, @@ -823,8 +823,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "eu-west-2" } }, @@ -836,8 +836,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "eu-west-1" } }, @@ -849,8 +849,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "eu-west-1" } }, @@ -862,8 +862,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "eu-west-1" } }, @@ -875,8 +875,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "eu-west-1" } }, @@ -888,8 +888,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ap-northeast-3" } }, @@ -901,8 +901,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ap-northeast-3" } }, @@ -914,8 +914,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ap-northeast-3" } }, @@ -927,8 +927,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ap-northeast-3" } }, @@ -940,8 +940,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ap-northeast-2" } }, @@ -953,8 +953,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ap-northeast-2" } }, @@ -966,8 +966,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ap-northeast-2" } }, @@ -979,8 +979,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ap-northeast-2" } }, @@ -992,8 +992,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ap-northeast-1" } }, @@ -1005,8 +1005,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ap-northeast-1" } }, @@ -1018,8 +1018,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ap-northeast-1" } }, @@ -1031,8 +1031,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ap-northeast-1" } }, @@ -1044,8 +1044,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "me-south-1" } }, @@ -1057,8 +1057,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "me-south-1" } }, @@ -1070,8 +1070,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "me-south-1" } }, @@ -1083,8 +1083,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "me-south-1" } }, @@ -1096,8 +1096,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "sa-east-1" } }, @@ -1109,8 +1109,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "sa-east-1" } }, @@ -1122,8 +1122,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "sa-east-1" } }, @@ -1135,8 +1135,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "sa-east-1" } }, @@ -1148,8 +1148,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ap-east-1" } }, @@ -1161,8 +1161,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ap-east-1" } }, @@ -1174,8 +1174,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ap-east-1" } }, @@ -1187,8 +1187,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ap-east-1" } }, @@ -1200,8 +1200,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "cn-north-1" } }, @@ -1213,8 +1213,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "cn-north-1" } }, @@ -1226,8 +1226,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "cn-north-1" } }, @@ -1239,8 +1239,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "cn-north-1" } }, @@ -1252,8 +1252,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "us-gov-west-1" } }, @@ -1265,8 +1265,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "us-gov-west-1" } }, @@ -1278,8 +1278,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "us-gov-west-1" } }, @@ -1291,8 +1291,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "us-gov-west-1" } }, @@ -1304,8 +1304,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ap-southeast-1" } }, @@ -1317,8 +1317,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ap-southeast-1" } }, @@ -1330,8 +1330,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ap-southeast-1" } }, @@ -1343,8 +1343,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ap-southeast-1" } }, @@ -1356,8 +1356,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ap-southeast-2" } }, @@ -1369,8 +1369,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ap-southeast-2" } }, @@ -1382,8 +1382,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ap-southeast-2" } }, @@ -1395,8 +1395,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ap-southeast-2" } }, @@ -1406,8 +1406,8 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "us-iso-east-1" } }, @@ -1419,8 +1419,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "us-iso-east-1" } }, @@ -1430,8 +1430,8 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "us-iso-east-1" } }, @@ -1443,8 +1443,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "us-iso-east-1" } }, @@ -1456,8 +1456,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ap-southeast-3" } }, @@ -1469,8 +1469,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ap-southeast-3" } }, @@ -1482,8 +1482,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ap-southeast-3" } }, @@ -1495,8 +1495,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ap-southeast-3" } }, @@ -1508,8 +1508,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ap-southeast-4" } }, @@ -1521,8 +1521,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ap-southeast-4" } }, @@ -1534,8 +1534,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ap-southeast-4" } }, @@ -1547,8 +1547,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ap-southeast-4" } }, @@ -1560,8 +1560,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "us-east-1" } }, @@ -1573,8 +1573,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "us-east-1" } }, @@ -1586,8 +1586,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "us-east-1" } }, @@ -1599,8 +1599,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "us-east-1" } }, @@ -1612,8 +1612,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "us-east-2" } }, @@ -1625,8 +1625,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "us-east-2" } }, @@ -1638,8 +1638,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "us-east-2" } }, @@ -1651,8 +1651,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "us-east-2" } }, @@ -1664,8 +1664,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "cn-northwest-1" } }, @@ -1677,8 +1677,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "cn-northwest-1" } }, @@ -1690,8 +1690,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "cn-northwest-1" } }, @@ -1703,8 +1703,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "cn-northwest-1" } }, @@ -1714,8 +1714,8 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "us-isob-east-1" } }, @@ -1727,8 +1727,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "us-isob-east-1" } }, @@ -1738,8 +1738,8 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "us-isob-east-1" } }, @@ -1751,8 +1751,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "us-isob-east-1" } }, @@ -1764,8 +1764,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "us-east-1", "Endpoint": "https://example.com" } @@ -1776,8 +1776,8 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "us-east-1", "Endpoint": "https://example.com" } @@ -1788,8 +1788,8 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "us-east-1", "Endpoint": "https://example.com" } diff --git a/models/apis/eks/2017-11-01/api-2.json b/models/apis/eks/2017-11-01/api-2.json index 10754e73ee..f7d5a6c516 100644 --- a/models/apis/eks/2017-11-01/api-2.json +++ b/models/apis/eks/2017-11-01/api-2.json @@ -584,7 +584,11 @@ "BOTTLEROCKET_ARM_64", "BOTTLEROCKET_x86_64", "BOTTLEROCKET_ARM_64_NVIDIA", - "BOTTLEROCKET_x86_64_NVIDIA" + "BOTTLEROCKET_x86_64_NVIDIA", + "WINDOWS_CORE_2019_x86_64", + "WINDOWS_FULL_2019_x86_64", + "WINDOWS_CORE_2022_x86_64", + "WINDOWS_FULL_2022_x86_64" ] }, "AccessDeniedException":{ diff --git a/models/apis/eks/2017-11-01/docs-2.json b/models/apis/eks/2017-11-01/docs-2.json index 75a6697469..d96db8d868 100644 --- a/models/apis/eks/2017-11-01/docs-2.json +++ b/models/apis/eks/2017-11-01/docs-2.json @@ -7,7 +7,7 @@ "CreateAddon": "

Creates an Amazon EKS add-on.

Amazon EKS add-ons help to automate the provisioning and lifecycle management of common operational software for Amazon EKS clusters. For more information, see Amazon EKS add-ons in the Amazon EKS User Guide.

", "CreateCluster": "

Creates an Amazon EKS control plane.

The Amazon EKS control plane consists of control plane instances that run the Kubernetes software, such as etcd and the API server. The control plane runs in an account managed by Amazon Web Services, and the Kubernetes API is exposed by the Amazon EKS API server endpoint. Each Amazon EKS cluster control plane is single tenant and unique. It runs on its own set of Amazon EC2 instances.

The cluster control plane is provisioned across multiple Availability Zones and fronted by an Elastic Load Balancing Network Load Balancer. Amazon EKS also provisions elastic network interfaces in your VPC subnets to provide connectivity from the control plane instances to the nodes (for example, to support kubectl exec, logs, and proxy data flows).

Amazon EKS nodes run in your Amazon Web Services account and connect to your cluster's control plane over the Kubernetes API server endpoint and a certificate file that is created for your cluster.

In most cases, it takes several minutes to create a cluster. After you create an Amazon EKS cluster, you must configure your Kubernetes tooling to communicate with the API server and launch nodes into your cluster. For more information, see Managing Cluster Authentication and Launching Amazon EKS nodes in the Amazon EKS User Guide.

", "CreateFargateProfile": "

Creates an Fargate profile for your Amazon EKS cluster. You must have at least one Fargate profile in a cluster to be able to run pods on Fargate.

The Fargate profile allows an administrator to declare which pods run on Fargate and specify which pods run on which Fargate profile. This declaration is done through the profile’s selectors. Each profile can have up to five selectors that contain a namespace and labels. A namespace is required for every selector. The label field consists of multiple optional key-value pairs. Pods that match the selectors are scheduled on Fargate. If a to-be-scheduled pod matches any of the selectors in the Fargate profile, then that pod is run on Fargate.

When you create a Fargate profile, you must specify a pod execution role to use with the pods that are scheduled with the profile. This role is added to the cluster's Kubernetes Role Based Access Control (RBAC) for authorization so that the kubelet that is running on the Fargate infrastructure can register with your Amazon EKS cluster so that it can appear in your cluster as a node. The pod execution role also provides IAM permissions to the Fargate infrastructure to allow read access to Amazon ECR image repositories. For more information, see Pod Execution Role in the Amazon EKS User Guide.

Fargate profiles are immutable. However, you can create a new updated profile to replace an existing profile and then delete the original after the updated profile has finished creating.

If any Fargate profiles in a cluster are in the DELETING status, you must wait for that Fargate profile to finish deleting before you can create any other profiles in that cluster.

For more information, see Fargate Profile in the Amazon EKS User Guide.

", - "CreateNodegroup": "

Creates a managed node group for an Amazon EKS cluster. You can only create a node group for your cluster that is equal to the current Kubernetes version for the cluster. All node groups are created with the latest AMI release version for the respective minor Kubernetes version of the cluster, unless you deploy a custom AMI using a launch template. For more information about using launch templates, see Launch template support.

An Amazon EKS managed node group is an Amazon EC2 Auto Scaling group and associated Amazon EC2 instances that are managed by Amazon Web Services for an Amazon EKS cluster. Each node group uses a version of the Amazon EKS optimized Amazon Linux 2 AMI. For more information, see Managed Node Groups in the Amazon EKS User Guide.

", + "CreateNodegroup": "

Creates a managed node group for an Amazon EKS cluster. You can only create a node group for your cluster that is equal to the current Kubernetes version for the cluster. All node groups are created with the latest AMI release version for the respective minor Kubernetes version of the cluster, unless you deploy a custom AMI using a launch template. For more information about using launch templates, see Launch template support.

An Amazon EKS managed node group is an Amazon EC2 Auto Scaling group and associated Amazon EC2 instances that are managed by Amazon Web Services for an Amazon EKS cluster. For more information, see Managed node groups in the Amazon EKS User Guide.

Windows AMI types are only supported for commercial Regions that support Windows Amazon EKS.

", "DeleteAddon": "

Delete an Amazon EKS add-on.

When you remove the add-on, it will also be deleted from the cluster. You can always manually start an add-on on the cluster using the Kubernetes API.

", "DeleteCluster": "

Deletes the Amazon EKS cluster control plane.

If you have active services in your cluster that are associated with a load balancer, you must delete those services before deleting the cluster so that the load balancers are deleted properly. Otherwise, you can have orphaned resources in your VPC that prevent you from being able to delete the VPC. For more information, see Deleting a Cluster in the Amazon EKS User Guide.

If you have managed node groups or Fargate profiles attached to the cluster, you must delete them first. For more information, see DeleteNodegroup and DeleteFargateProfile.

", "DeleteFargateProfile": "

Deletes an Fargate profile.

When you delete a Fargate profile, any pods running on Fargate that were created with the profile are deleted. If those pods match another Fargate profile, then they are scheduled on Fargate with that profile. If they no longer match any Fargate profiles, then they are not scheduled on Fargate and they may remain in a pending state.

Only one Fargate profile in a cluster can be in the DELETING status at a time. You must wait for a Fargate profile to finish deleting before you can delete any other profiles in that cluster.

", @@ -36,13 +36,13 @@ "UpdateClusterConfig": "

Updates an Amazon EKS cluster configuration. Your cluster continues to function during the update. The response output includes an update ID that you can use to track the status of your cluster update with the DescribeUpdate API operation.

You can use this API operation to enable or disable exporting the Kubernetes control plane logs for your cluster to CloudWatch Logs. By default, cluster control plane logs aren't exported to CloudWatch Logs. For more information, see Amazon EKS Cluster Control Plane Logs in the Amazon EKS User Guide .

CloudWatch Logs ingestion, archive storage, and data scanning rates apply to exported control plane logs. For more information, see CloudWatch Pricing.

You can also use this API operation to enable or disable public and private access to your cluster's Kubernetes API server endpoint. By default, public access is enabled, and private access is disabled. For more information, see Amazon EKS cluster endpoint access control in the Amazon EKS User Guide .

You can't update the subnets or security group IDs for an existing cluster.

Cluster updates are asynchronous, and they should finish within a few minutes. During an update, the cluster status moves to UPDATING (this status transition is eventually consistent). When the update is complete (either Failed or Successful), the cluster status moves to Active.

", "UpdateClusterVersion": "

Updates an Amazon EKS cluster to the specified Kubernetes version. Your cluster continues to function during the update. The response output includes an update ID that you can use to track the status of your cluster update with the DescribeUpdate API operation.

Cluster updates are asynchronous, and they should finish within a few minutes. During an update, the cluster status moves to UPDATING (this status transition is eventually consistent). When the update is complete (either Failed or Successful), the cluster status moves to Active.

If your cluster has managed node groups attached to it, all of your node groups’ Kubernetes versions must match the cluster’s Kubernetes version in order to update the cluster to a new Kubernetes version.

", "UpdateNodegroupConfig": "

Updates an Amazon EKS managed node group configuration. Your node group continues to function during the update. The response output includes an update ID that you can use to track the status of your node group update with the DescribeUpdate API operation. Currently you can update the Kubernetes labels for a node group or the scaling configuration.

", - "UpdateNodegroupVersion": "

Updates the Kubernetes version or AMI version of an Amazon EKS managed node group.

You can update a node group using a launch template only if the node group was originally deployed with a launch template. If you need to update a custom AMI in a node group that was deployed with a launch template, then update your custom AMI, specify the new ID in a new version of the launch template, and then update the node group to the new version of the launch template.

If you update without a launch template, then you can update to the latest available AMI version of a node group's current Kubernetes version by not specifying a Kubernetes version in the request. You can update to the latest AMI version of your cluster's current Kubernetes version by specifying your cluster's Kubernetes version in the request. For more information, see Amazon EKS optimized Amazon Linux 2 AMI versions in the Amazon EKS User Guide.

You cannot roll back a node group to an earlier Kubernetes version or AMI version.

When a node in a managed node group is terminated due to a scaling action or update, the pods in that node are drained first. Amazon EKS attempts to drain the nodes gracefully and will fail if it is unable to do so. You can force the update if Amazon EKS is unable to drain the nodes as a result of a pod disruption budget issue.

" + "UpdateNodegroupVersion": "

Updates the Kubernetes version or AMI version of an Amazon EKS managed node group.

You can update a node group using a launch template only if the node group was originally deployed with a launch template. If you need to update a custom AMI in a node group that was deployed with a launch template, then update your custom AMI, specify the new ID in a new version of the launch template, and then update the node group to the new version of the launch template.

If you update without a launch template, then you can update to the latest available AMI version of a node group's current Kubernetes version by not specifying a Kubernetes version in the request. You can update to the latest AMI version of your cluster's current Kubernetes version by specifying your cluster's Kubernetes version in the request. For information about Linux versions, see Amazon EKS optimized Amazon Linux AMI versions in the Amazon EKS User Guide. For information about Windows versions, see Amazon EKS optimized Windows AMI versions in the Amazon EKS User Guide.

You cannot roll back a node group to an earlier Kubernetes version or AMI version.

When a node in a managed node group is terminated due to a scaling action or update, the pods in that node are drained first. Amazon EKS attempts to drain the nodes gracefully and will fail if it is unable to do so. You can force the update if Amazon EKS is unable to drain the nodes as a result of a pod disruption budget issue.

" }, "shapes": { "AMITypes": { "base": null, "refs": { - "CreateNodegroupRequest$amiType": "

The AMI type for your node group. GPU instance types should use the AL2_x86_64_GPU AMI type. Non-GPU instances should use the AL2_x86_64 AMI type. Arm instances should use the AL2_ARM_64 AMI type. All types use the Amazon EKS optimized Amazon Linux 2 AMI. If you specify launchTemplate, and your launch template uses a custom AMI, then don't specify amiType, or the node group deployment will fail. For more information about using launch templates with Amazon EKS, see Launch template support in the Amazon EKS User Guide.

", + "CreateNodegroupRequest$amiType": "

The AMI type for your node group. If you specify launchTemplate, and your launch template uses a custom AMI, then don't specify amiType, or the node group deployment will fail. If your launch template uses a Windows custom AMI, then add eks:kube-proxy-windows to your Windows nodes rolearn in the aws-auth ConfigMap. For more information about using launch templates with Amazon EKS, see Launch template support in the Amazon EKS User Guide.

", "Nodegroup$amiType": "

If the node group was deployed using a launch template with a custom AMI, then this is CUSTOM. For node groups that weren't deployed using a launch template, this is the AMI type that was specified in the node group configuration.

" } }, @@ -62,7 +62,7 @@ "AddonHealth": { "base": "

The health of the add-on.

", "refs": { - "Addon$health": "

An object representing the health of the add-on.

" + "Addon$health": "

An object that represents the health of the add-on.

" } }, "AddonInfo": { @@ -172,7 +172,7 @@ "BoxedInteger": { "base": null, "refs": { - "CreateNodegroupRequest$diskSize": "

The root device disk size (in GiB) for your node group instances. The default disk size is 20 GiB. If you specify launchTemplate, then don't specify diskSize, or the node group deployment will fail. For more information about using launch templates with Amazon EKS, see Launch template support in the Amazon EKS User Guide.

", + "CreateNodegroupRequest$diskSize": "

The root device disk size (in GiB) for your node group instances. The default disk size is 20 GiB for Linux and Bottlerocket. The default disk size is 50 GiB for Windows. If you specify launchTemplate, then don't specify diskSize, or the node group deployment will fail. For more information about using launch templates with Amazon EKS, see Launch template support in the Amazon EKS User Guide.

", "Nodegroup$diskSize": "

If the node group wasn't deployed with a launch template, then this is the disk size in the node group configuration. If the node group was deployed with a launch template, then this is null.

" } }, @@ -886,7 +886,7 @@ "RemoteAccessConfig": { "base": "

An object representing the remote access configuration for the managed node group.

", "refs": { - "CreateNodegroupRequest$remoteAccess": "

The remote access (SSH) configuration to use with your node group. If you specify launchTemplate, then don't specify remoteAccess, or the node group deployment will fail. For more information about using launch templates with Amazon EKS, see Launch template support in the Amazon EKS User Guide.

", + "CreateNodegroupRequest$remoteAccess": "

The remote access configuration to use with your node group. For Linux, the protocol is SSH. For Windows, the protocol is RDP. If you specify launchTemplate, then don't specify remoteAccess, or the node group deployment will fail. For more information about using launch templates with Amazon EKS, see Launch template support in the Amazon EKS User Guide.

", "Nodegroup$remoteAccess": "

If the node group wasn't deployed with a launch template, then this is the remote access configuration that is associated with the node group. If the node group was deployed with a launch template, then this is null.

" } }, @@ -941,10 +941,10 @@ "Addon$addonName": "

The name of the add-on.

", "Addon$addonVersion": "

The version of the add-on.

", "Addon$addonArn": "

The Amazon Resource Name (ARN) of the add-on.

", - "Addon$serviceAccountRoleArn": "

The Amazon Resource Name (ARN) of the IAM role that is bound to the Kubernetes service account used by the add-on.

", + "Addon$serviceAccountRoleArn": "

The Amazon Resource Name (ARN) of the IAM role that's bound to the Kubernetes service account that the add-on uses.

", "Addon$publisher": "

The publisher of the add-on.

", "Addon$owner": "

The owner of the add-on.

", - "Addon$configurationValues": "

The provided configuration values.

", + "Addon$configurationValues": "

The configuration values that you provided.

", "AddonInfo$addonName": "

The name of the add-on.

", "AddonInfo$type": "

The type of the add-on.

", "AddonInfo$publisher": "

The publisher of the add-on.

", @@ -979,10 +979,10 @@ "ConnectorConfigResponse$roleArn": "

The Amazon Resource Name (ARN) of the role to communicate with services from the connected Kubernetes cluster.

", "ControlPlanePlacementRequest$groupName": "

The name of the placement group for the Kubernetes control plane instances. This setting can't be changed after cluster creation.

", "ControlPlanePlacementResponse$groupName": "

The name of the placement group for the Kubernetes control plane instances.

", - "CreateAddonRequest$addonName": "

The name of the add-on. The name must match one of the names returned by DescribeAddonVersions .

", + "CreateAddonRequest$addonName": "

The name of the add-on. The name must match one of the names that DescribeAddonVersions returns.

", "CreateAddonRequest$addonVersion": "

The version of the add-on. The version must match one of the versions returned by DescribeAddonVersions .

", "CreateAddonRequest$clientRequestToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", - "CreateAddonRequest$configurationValues": "

The set of configuration values for the add-on being created. Whatever values provided here are validated against the schema from DescribeAddonConfiguration .

", + "CreateAddonRequest$configurationValues": "

The set of configuration values for the add-on that's created. The values that you provide are validated against the schema in DescribeAddonConfiguration .

", "CreateClusterRequest$version": "

The desired Kubernetes version for your cluster. If you don't specify a value here, the default version available in Amazon EKS is used.

The default version might not be the latest version available.

", "CreateClusterRequest$roleArn": "

The Amazon Resource Name (ARN) of the IAM role that provides permissions for the Kubernetes control plane to make calls to Amazon Web Services API operations on your behalf. For more information, see Amazon EKS Service IAM Role in the Amazon EKS User Guide .

", "CreateClusterRequest$clientRequestToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", @@ -995,7 +995,7 @@ "CreateNodegroupRequest$nodeRole": "

The Amazon Resource Name (ARN) of the IAM role to associate with your node group. The Amazon EKS worker node kubelet daemon makes calls to Amazon Web Services APIs on your behalf. Nodes receive permissions for these API calls through an IAM instance profile and associated policies. Before you can launch nodes and register them into a cluster, you must create an IAM role for those nodes to use when they are launched. For more information, see Amazon EKS node IAM role in the Amazon EKS User Guide . If you specify launchTemplate, then don't specify IamInstanceProfile in your launch template, or the node group deployment will fail. For more information about using launch templates with Amazon EKS, see Launch template support in the Amazon EKS User Guide.

", "CreateNodegroupRequest$clientRequestToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", "CreateNodegroupRequest$version": "

The Kubernetes version to use for your managed nodes. By default, the Kubernetes version of the cluster is used, and this is the only accepted specified value. If you specify launchTemplate, and your launch template uses a custom AMI, then don't specify version, or the node group deployment will fail. For more information about using launch templates with Amazon EKS, see Launch template support in the Amazon EKS User Guide.

", - "CreateNodegroupRequest$releaseVersion": "

The AMI version of the Amazon EKS optimized AMI to use with your node group. By default, the latest available AMI version for the node group's current Kubernetes version is used. For more information, see Amazon EKS optimized Amazon Linux 2 AMI versions in the Amazon EKS User Guide. If you specify launchTemplate, and your launch template uses a custom AMI, then don't specify releaseVersion, or the node group deployment will fail. For more information about using launch templates with Amazon EKS, see Launch template support in the Amazon EKS User Guide.

", + "CreateNodegroupRequest$releaseVersion": "

The AMI version of the Amazon EKS optimized AMI to use with your node group. By default, the latest available AMI version for the node group's current Kubernetes version is used. For information about Linux versions, see Amazon EKS optimized Amazon Linux AMI versions in the Amazon EKS User Guide. Amazon EKS managed node groups support the November 2022 and later releases of the Windows AMIs. For information about Windows versions, see Amazon EKS optimized Windows AMI versions in the Amazon EKS User Guide.

If you specify launchTemplate, and your launch template uses a custom AMI, then don't specify releaseVersion, or the node group deployment will fail. For more information about using launch templates with Amazon EKS, see Launch template support in the Amazon EKS User Guide.

", "DeleteAddonRequest$addonName": "

The name of the add-on. The name must match one of the names returned by ListAddons .

", "DeleteClusterRequest$name": "

The name of the cluster to delete.

", "DeleteFargateProfileRequest$clusterName": "

The name of the Amazon EKS cluster associated with the Fargate profile to delete.

", @@ -1003,11 +1003,11 @@ "DeleteNodegroupRequest$clusterName": "

The name of the Amazon EKS cluster that is associated with your node group.

", "DeleteNodegroupRequest$nodegroupName": "

The name of the node group to delete.

", "DeregisterClusterRequest$name": "

The name of the connected cluster to deregister.

", - "DescribeAddonConfigurationRequest$addonName": "

The name of the add-on. The name must match one of the names returned by DescribeAddonVersions .

", + "DescribeAddonConfigurationRequest$addonName": "

The name of the add-on. The name must match one of the names that DescribeAddonVersions returns.

", "DescribeAddonConfigurationRequest$addonVersion": "

The version of the add-on. The version must match one of the versions returned by DescribeAddonVersions .

", "DescribeAddonConfigurationResponse$addonName": "

The name of the add-on.

", "DescribeAddonConfigurationResponse$addonVersion": "

The version of the add-on. The version must match one of the versions returned by DescribeAddonVersions .

", - "DescribeAddonConfigurationResponse$configurationSchema": "

A JSON schema used to validate provided configuration values when creating or updating an addon.

", + "DescribeAddonConfigurationResponse$configurationSchema": "

A JSON schema that's used to validate the configuration values that you provide when an addon is created or updated.

", "DescribeAddonRequest$addonName": "

The name of the add-on. The name must match one of the names returned by ListAddons .

", "DescribeAddonVersionsRequest$kubernetesVersion": "

The Kubernetes versions that you can use the add-on with.

", "DescribeAddonVersionsRequest$nextToken": "

The nextToken value returned from a previous paginated DescribeAddonVersionsRequest where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value.

This token should be treated as an opaque identifier that is used only to retrieve the next items in a list and not for other programmatic purposes.

", @@ -1047,7 +1047,7 @@ "InvalidRequestException$message": null, "Issue$message": "

The error message associated with the issue.

", "KubernetesNetworkConfigRequest$serviceIpv4Cidr": "

Don't specify a value if you select ipv6 for ipFamily. The CIDR block to assign Kubernetes service IP addresses from. If you don't specify a block, Kubernetes assigns addresses from either the 10.100.0.0/16 or 172.20.0.0/16 CIDR blocks. We recommend that you specify a block that does not overlap with resources in other networks that are peered or connected to your VPC. The block must meet the following requirements:

You can only specify a custom CIDR block when you create a cluster and can't change this value once the cluster is created.

", - "KubernetesNetworkConfigResponse$serviceIpv4Cidr": "

The CIDR block that Kubernetes pod and service IP addresses are assigned from. Kubernetes assigns addresses from an IPv4 CIDR block assigned to a subnet that the node is in. If you didn't specify a CIDR block when you created the cluster, then Kubernetes assigns addresses from either the 10.100.0.0/16 or 172.20.0.0/16 CIDR blocks. If this was specified, then it was specified when the cluster was created and it can't be changed.

", + "KubernetesNetworkConfigResponse$serviceIpv4Cidr": "

The CIDR block that Kubernetes pod and service IP addresses are assigned from. Kubernetes assigns addresses from an IPv4 CIDR block assigned to a subnet that the node is in. If you didn't specify a CIDR block when you created the cluster, then Kubernetes assigns addresses from either the 10.100.0.0/16 or 172.20.0.0/16 CIDR blocks. If this was specified, then it was specified when the cluster was created and it can't be changed.

", "KubernetesNetworkConfigResponse$serviceIpv6Cidr": "

The CIDR block that Kubernetes pod and service IP addresses are assigned from if you created a 1.21 or later cluster with version 1.10.1 or later of the Amazon VPC CNI add-on and specified ipv6 for ipFamily when you created the cluster. Kubernetes assigns service addresses from the unique local address range (fc00::/7) because you can't specify a custom IPv6 CIDR block when you create the cluster.

", "LaunchTemplateSpecification$name": "

The name of the launch template.

You must specify either the launch template name or the launch template ID in the request, but not both.

", "LaunchTemplateSpecification$version": "

The version number of the launch template to use. If no version is specified, then the template's default version is used.

", @@ -1102,7 +1102,7 @@ "OutpostConfigResponse$controlPlaneInstanceType": "

The Amazon EC2 instance type used for the control plane. The instance type is the same for all control plane instances.

", "Provider$keyArn": "

Amazon Resource Name (ARN) or alias of the KMS key. The KMS key must be symmetric, created in the same region as the cluster, and if the KMS key was created in a different account, the user must have access to the KMS key. For more information, see Allowing Users in Other Accounts to Use a KMS key in the Key Management Service Developer Guide.

", "RegisterClusterRequest$clientRequestToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", - "RemoteAccessConfig$ec2SshKey": "

The Amazon EC2 SSH key name that provides access for SSH communication with the nodes in the managed node group. For more information, see Amazon EC2 key pairs and Linux instances in the Amazon Elastic Compute Cloud User Guide for Linux Instances.

", + "RemoteAccessConfig$ec2SshKey": "

The Amazon EC2 SSH key name that provides access for SSH communication with the nodes in the managed node group. For more information, see Amazon EC2 key pairs and Linux instances in the Amazon Elastic Compute Cloud User Guide for Linux Instances. For Windows, an Amazon EC2 SSH key is used to obtain the RDP password. For more information, see Amazon EC2 key pairs and Windows instances in the Amazon Elastic Compute Cloud User Guide for Windows Instances.

", "ResourceInUseException$clusterName": "

The Amazon EKS cluster associated with the exception.

", "ResourceInUseException$nodegroupName": "

The Amazon EKS managed node group associated with the exception.

", "ResourceInUseException$addonName": null, @@ -1131,7 +1131,7 @@ "UpdateAddonRequest$addonName": "

The name of the add-on. The name must match one of the names returned by ListAddons .

", "UpdateAddonRequest$addonVersion": "

The version of the add-on. The version must match one of the versions returned by DescribeAddonVersions .

", "UpdateAddonRequest$clientRequestToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", - "UpdateAddonRequest$configurationValues": "

The set of configuration values for the add-on being created. Whatever values provided here are validated against the schema from DescribeAddonConfiguration

", + "UpdateAddonRequest$configurationValues": "

The set of configuration values for the add-on that's created. The values that you provide are validated against the schema in DescribeAddonConfiguration.

", "UpdateClusterConfigRequest$name": "

The name of the Amazon EKS cluster to update.

", "UpdateClusterConfigRequest$clientRequestToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", "UpdateClusterVersionRequest$name": "

The name of the Amazon EKS cluster to update.

", @@ -1143,7 +1143,7 @@ "UpdateNodegroupVersionRequest$clusterName": "

The name of the Amazon EKS cluster that is associated with the managed node group to update.

", "UpdateNodegroupVersionRequest$nodegroupName": "

The name of the managed node group to update.

", "UpdateNodegroupVersionRequest$version": "

The Kubernetes version to update to. If no version is specified, then the Kubernetes version of the node group does not change. You can specify the Kubernetes version of the cluster to update the node group to the latest AMI version of the cluster's Kubernetes version. If you specify launchTemplate, and your launch template uses a custom AMI, then don't specify version, or the node group update will fail. For more information about using launch templates with Amazon EKS, see Launch template support in the Amazon EKS User Guide.

", - "UpdateNodegroupVersionRequest$releaseVersion": "

The AMI version of the Amazon EKS optimized AMI to use for the update. By default, the latest available AMI version for the node group's Kubernetes version is used. For more information, see Amazon EKS optimized Amazon Linux 2 AMI versions in the Amazon EKS User Guide. If you specify launchTemplate, and your launch template uses a custom AMI, then don't specify releaseVersion, or the node group update will fail. For more information about using launch templates with Amazon EKS, see Launch template support in the Amazon EKS User Guide.

", + "UpdateNodegroupVersionRequest$releaseVersion": "

The AMI version of the Amazon EKS optimized AMI to use for the update. By default, the latest available AMI version for the node group's Kubernetes version is used. For information about Linux versions, see Amazon EKS optimized Amazon Linux AMI versions in the Amazon EKS User Guide. Amazon EKS managed node groups support the November 2022 and later releases of the Windows AMIs. For information about Windows versions, see Amazon EKS optimized Windows AMI versions in the Amazon EKS User Guide.

If you specify launchTemplate, and your launch template uses a custom AMI, then don't specify releaseVersion, or the node group update will fail. For more information about using launch templates with Amazon EKS, see Launch template support in the Amazon EKS User Guide.

", "UpdateNodegroupVersionRequest$clientRequestToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", "UpdateParam$value": "

The value of the keys submitted as part of an update request.

", "VpcConfigResponse$clusterSecurityGroupId": "

The cluster security group that was created by Amazon EKS for the cluster. Managed node groups use this security group for control-plane-to-data-plane communication.

", @@ -1160,7 +1160,7 @@ "Compatibility$platformVersions": "

The supported compute platform.

", "CreateFargateProfileRequest$subnets": "

The IDs of subnets to launch your pods into. At this time, pods running on Fargate are not assigned public IP addresses, so only private subnets (with no direct route to an Internet Gateway) are accepted for this parameter.

", "CreateNodegroupRequest$subnets": "

The subnets to use for the Auto Scaling group that is created for your node group. If you specify launchTemplate, then don't specify SubnetId in your launch template, or the node group deployment will fail. For more information about using launch templates with Amazon EKS, see Launch template support in the Amazon EKS User Guide.

", - "CreateNodegroupRequest$instanceTypes": "

Specify the instance types for a node group. If you specify a GPU instance type, be sure to specify AL2_x86_64_GPU with the amiType parameter. If you specify launchTemplate, then you can specify zero or one instance type in your launch template or you can specify 0-20 instance types for instanceTypes. If however, you specify an instance type in your launch template and specify any instanceTypes, the node group deployment will fail. If you don't specify an instance type in a launch template or for instanceTypes, then t3.medium is used, by default. If you specify Spot for capacityType, then we recommend specifying multiple values for instanceTypes. For more information, see Managed node group capacity types and Launch template support in the Amazon EKS User Guide.

", + "CreateNodegroupRequest$instanceTypes": "

Specify the instance types for a node group. If you specify a GPU instance type, make sure to also specify an applicable GPU AMI type with the amiType parameter. If you specify launchTemplate, then you can specify zero or one instance type in your launch template or you can specify 0-20 instance types for instanceTypes. If however, you specify an instance type in your launch template and specify any instanceTypes, the node group deployment will fail. If you don't specify an instance type in a launch template or for instanceTypes, then t3.medium is used, by default. If you specify Spot for capacityType, then we recommend specifying multiple values for instanceTypes. For more information, see Managed node group capacity types and Launch template support in the Amazon EKS User Guide.

", "DescribeAddonVersionsRequest$types": "

The type of the add-on. For valid types, don't specify a value for this property.

", "DescribeAddonVersionsRequest$publishers": "

The publisher of the add-on. For valid publishers, don't specify a value for this property.

", "DescribeAddonVersionsRequest$owners": "

The owner of the add-on. For valid owners, don't specify a value for this property.

", @@ -1177,7 +1177,7 @@ "Nodegroup$subnets": "

The subnets that were specified for the Auto Scaling group that is associated with your node group.

", "OutpostConfigRequest$outpostArns": "

The ARN of the Outpost that you want to use for your local Amazon EKS cluster on Outposts. Only a single Outpost ARN is supported.

", "OutpostConfigResponse$outpostArns": "

The ARN of the Outpost that you specified for use with your local Amazon EKS cluster on Outposts.

", - "RemoteAccessConfig$sourceSecurityGroups": "

The security group ids that are allowed SSH access (port 22) to the nodes. If you specify an Amazon EC2 SSH key but do not specify a source security group when you create a managed node group, then port 22 on the nodes is opened to the internet (0.0.0.0/0). For more information, see Security Groups for Your VPC in the Amazon Virtual Private Cloud User Guide.

", + "RemoteAccessConfig$sourceSecurityGroups": "

The security group IDs that are allowed SSH access (port 22) to the nodes. For Windows, the port is 3389. If you specify an Amazon EC2 SSH key but don't specify a source security group when you create a managed node group, then the port on the nodes is opened to the internet (0.0.0.0/0). For more information, see Security Groups for Your VPC in the Amazon Virtual Private Cloud User Guide.

", "UnsupportedAvailabilityZoneException$validZones": "

The supported Availability Zones for your account. Choose subnets in these Availability Zones for your cluster.

", "VpcConfigRequest$subnetIds": "

Specify subnets for your Amazon EKS nodes. Amazon EKS creates cross-account elastic network interfaces in these subnets to allow communication between your nodes and the Kubernetes control plane.

", "VpcConfigRequest$securityGroupIds": "

Specify one or more security groups for the cross-account elastic network interfaces that Amazon EKS creates to use that allow communication between your nodes and the Kubernetes control plane. If you don't specify any security groups, then familiarize yourself with the difference between Amazon EKS defaults for clusters deployed with Kubernetes. For more information, see Amazon EKS security group considerations in the Amazon EKS User Guide .

", diff --git a/models/apis/eks/2017-11-01/endpoint-tests-1.json b/models/apis/eks/2017-11-01/endpoint-tests-1.json index 4b583d9f7e..8cc05949df 100644 --- a/models/apis/eks/2017-11-01/endpoint-tests-1.json +++ b/models/apis/eks/2017-11-01/endpoint-tests-1.json @@ -9,8 +9,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "ap-south-2" + "Region": "ap-south-2", + "UseDualStack": true } }, { @@ -22,8 +22,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "ap-south-2" + "Region": "ap-south-2", + "UseDualStack": false } }, { @@ -35,8 +35,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "ap-south-2" + "Region": "ap-south-2", + "UseDualStack": true } }, { @@ -48,8 +48,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-south-2" + "Region": "ap-south-2", + "UseDualStack": false } }, { @@ -61,8 +61,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "ap-south-1" + "Region": "ap-south-1", + "UseDualStack": true } }, { @@ -74,8 +74,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "ap-south-1" + "Region": "ap-south-1", + "UseDualStack": false } }, { @@ -87,8 +87,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "ap-south-1" + "Region": "ap-south-1", + "UseDualStack": true } }, { @@ -100,8 +100,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-south-1" + "Region": "ap-south-1", + "UseDualStack": false } }, { @@ -113,8 +113,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "eu-south-1" + "Region": "eu-south-1", + "UseDualStack": true } }, { @@ -126,8 +126,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "eu-south-1" + "Region": "eu-south-1", + "UseDualStack": false } }, { @@ -139,8 +139,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "eu-south-1" + "Region": "eu-south-1", + "UseDualStack": true } }, { @@ -152,8 +152,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-south-1" + "Region": "eu-south-1", + "UseDualStack": false } }, { @@ -165,8 +165,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "eu-south-2" + "Region": "eu-south-2", + "UseDualStack": true } }, { @@ -178,8 +178,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "eu-south-2" + "Region": "eu-south-2", + "UseDualStack": false } }, { @@ -191,8 +191,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "eu-south-2" + "Region": "eu-south-2", + "UseDualStack": true } }, { @@ -204,8 +204,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-south-2" + "Region": "eu-south-2", + "UseDualStack": false } }, { @@ -217,8 +217,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "us-gov-east-1" + "Region": "us-gov-east-1", + "UseDualStack": true } }, { @@ -230,8 +230,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "us-gov-east-1" + "Region": "us-gov-east-1", + "UseDualStack": false } }, { @@ -243,8 +243,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "us-gov-east-1" + "Region": "us-gov-east-1", + "UseDualStack": true } }, { @@ -256,8 +256,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "us-gov-east-1" + "Region": "us-gov-east-1", + "UseDualStack": false } }, { @@ -269,8 +269,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "me-central-1" + "Region": "me-central-1", + "UseDualStack": true } }, { @@ -282,8 +282,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "me-central-1" + "Region": "me-central-1", + "UseDualStack": false } }, { @@ -295,8 +295,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "me-central-1" + "Region": "me-central-1", + "UseDualStack": true } }, { @@ -308,8 +308,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "me-central-1" + "Region": "me-central-1", + "UseDualStack": false } }, { @@ -321,8 +321,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "ca-central-1" + "Region": "ca-central-1", + "UseDualStack": true } }, { @@ -334,8 +334,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "ca-central-1" + "Region": "ca-central-1", + "UseDualStack": false } }, { @@ -347,8 +347,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "ca-central-1" + "Region": "ca-central-1", + "UseDualStack": true } }, { @@ -360,8 +360,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "ca-central-1" + "Region": "ca-central-1", + "UseDualStack": false } }, { @@ -373,8 +373,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "eu-central-1" + "Region": "eu-central-1", + "UseDualStack": true } }, { @@ -386,8 +386,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "eu-central-1" + "Region": "eu-central-1", + "UseDualStack": false } }, { @@ -399,8 +399,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "eu-central-1" + "Region": "eu-central-1", + "UseDualStack": true } }, { @@ -412,8 +412,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-central-1" + "Region": "eu-central-1", + "UseDualStack": false } }, { @@ -425,8 +425,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "eu-central-2" + "Region": "eu-central-2", + "UseDualStack": true } }, { @@ -438,8 +438,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "eu-central-2" + "Region": "eu-central-2", + "UseDualStack": false } }, { @@ -451,8 +451,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "eu-central-2" + "Region": "eu-central-2", + "UseDualStack": true } }, { @@ -464,8 +464,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-central-2" + "Region": "eu-central-2", + "UseDualStack": false } }, { @@ -477,8 +477,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "us-west-1" + "Region": "us-west-1", + "UseDualStack": true } }, { @@ -490,8 +490,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "us-west-1" + "Region": "us-west-1", + "UseDualStack": false } }, { @@ -503,8 +503,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "us-west-1" + "Region": "us-west-1", + "UseDualStack": true } }, { @@ -516,8 +516,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "us-west-1" + "Region": "us-west-1", + "UseDualStack": false } }, { @@ -529,8 +529,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "us-west-2" + "Region": "us-west-2", + "UseDualStack": true } }, { @@ -542,8 +542,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "us-west-2" + "Region": "us-west-2", + "UseDualStack": false } }, { @@ -555,8 +555,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "us-west-2" + "Region": "us-west-2", + "UseDualStack": true } }, { @@ -568,8 +568,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "us-west-2" + "Region": "us-west-2", + "UseDualStack": false } }, { @@ -581,8 +581,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "af-south-1" + "Region": "af-south-1", + "UseDualStack": true } }, { @@ -594,8 +594,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "af-south-1" + "Region": "af-south-1", + "UseDualStack": false } }, { @@ -607,8 +607,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "af-south-1" + "Region": "af-south-1", + "UseDualStack": true } }, { @@ -620,8 +620,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "af-south-1" + "Region": "af-south-1", + "UseDualStack": false } }, { @@ -633,8 +633,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "eu-north-1" + "Region": "eu-north-1", + "UseDualStack": true } }, { @@ -646,8 +646,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "eu-north-1" + "Region": "eu-north-1", + "UseDualStack": false } }, { @@ -659,8 +659,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "eu-north-1" + "Region": "eu-north-1", + "UseDualStack": true } }, { @@ -672,8 +672,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-north-1" + "Region": "eu-north-1", + "UseDualStack": false } }, { @@ -685,8 +685,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "eu-west-3" + "Region": "eu-west-3", + "UseDualStack": true } }, { @@ -698,8 +698,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "eu-west-3" + "Region": "eu-west-3", + "UseDualStack": false } }, { @@ -711,8 +711,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "eu-west-3" + "Region": "eu-west-3", + "UseDualStack": true } }, { @@ -724,8 +724,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-west-3" + "Region": "eu-west-3", + "UseDualStack": false } }, { @@ -737,8 +737,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "eu-west-2" + "Region": "eu-west-2", + "UseDualStack": true } }, { @@ -750,8 +750,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "eu-west-2" + "Region": "eu-west-2", + "UseDualStack": false } }, { @@ -763,8 +763,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "eu-west-2" + "Region": "eu-west-2", + "UseDualStack": true } }, { @@ -776,8 +776,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-west-2" + "Region": "eu-west-2", + "UseDualStack": false } }, { @@ -789,8 +789,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "eu-west-1" + "Region": "eu-west-1", + "UseDualStack": true } }, { @@ -802,8 +802,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "eu-west-1" + "Region": "eu-west-1", + "UseDualStack": false } }, { @@ -815,8 +815,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "eu-west-1" + "Region": "eu-west-1", + "UseDualStack": true } }, { @@ -828,8 +828,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-west-1" + "Region": "eu-west-1", + "UseDualStack": false } }, { @@ -841,8 +841,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "ap-northeast-3" + "Region": "ap-northeast-3", + "UseDualStack": true } }, { @@ -854,8 +854,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "ap-northeast-3" + "Region": "ap-northeast-3", + "UseDualStack": false } }, { @@ -867,8 +867,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "ap-northeast-3" + "Region": "ap-northeast-3", + "UseDualStack": true } }, { @@ -880,8 +880,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-northeast-3" + "Region": "ap-northeast-3", + "UseDualStack": false } }, { @@ -893,8 +893,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "ap-northeast-2" + "Region": "ap-northeast-2", + "UseDualStack": true } }, { @@ -906,8 +906,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "ap-northeast-2" + "Region": "ap-northeast-2", + "UseDualStack": false } }, { @@ -919,8 +919,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "ap-northeast-2" + "Region": "ap-northeast-2", + "UseDualStack": true } }, { @@ -932,8 +932,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-northeast-2" + "Region": "ap-northeast-2", + "UseDualStack": false } }, { @@ -945,8 +945,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "ap-northeast-1" + "Region": "ap-northeast-1", + "UseDualStack": true } }, { @@ -958,8 +958,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "ap-northeast-1" + "Region": "ap-northeast-1", + "UseDualStack": false } }, { @@ -971,8 +971,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "ap-northeast-1" + "Region": "ap-northeast-1", + "UseDualStack": true } }, { @@ -984,8 +984,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-northeast-1" + "Region": "ap-northeast-1", + "UseDualStack": false } }, { @@ -997,8 +997,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "me-south-1" + "Region": "me-south-1", + "UseDualStack": true } }, { @@ -1010,8 +1010,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "me-south-1" + "Region": "me-south-1", + "UseDualStack": false } }, { @@ -1023,8 +1023,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "me-south-1" + "Region": "me-south-1", + "UseDualStack": true } }, { @@ -1036,8 +1036,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "me-south-1" + "Region": "me-south-1", + "UseDualStack": false } }, { @@ -1049,8 +1049,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "sa-east-1" + "Region": "sa-east-1", + "UseDualStack": true } }, { @@ -1062,8 +1062,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "sa-east-1" + "Region": "sa-east-1", + "UseDualStack": false } }, { @@ -1075,8 +1075,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "sa-east-1" + "Region": "sa-east-1", + "UseDualStack": true } }, { @@ -1088,8 +1088,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "sa-east-1" + "Region": "sa-east-1", + "UseDualStack": false } }, { @@ -1101,8 +1101,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "ap-east-1" + "Region": "ap-east-1", + "UseDualStack": true } }, { @@ -1114,8 +1114,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "ap-east-1" + "Region": "ap-east-1", + "UseDualStack": false } }, { @@ -1127,8 +1127,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "ap-east-1" + "Region": "ap-east-1", + "UseDualStack": true } }, { @@ -1140,8 +1140,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-east-1" + "Region": "ap-east-1", + "UseDualStack": false } }, { @@ -1153,8 +1153,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "cn-north-1" + "Region": "cn-north-1", + "UseDualStack": true } }, { @@ -1166,8 +1166,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "cn-north-1" + "Region": "cn-north-1", + "UseDualStack": false } }, { @@ -1179,8 +1179,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "cn-north-1" + "Region": "cn-north-1", + "UseDualStack": true } }, { @@ -1192,8 +1192,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "cn-north-1" + "Region": "cn-north-1", + "UseDualStack": false } }, { @@ -1205,8 +1205,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "us-gov-west-1" + "Region": "us-gov-west-1", + "UseDualStack": true } }, { @@ -1218,8 +1218,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "us-gov-west-1" + "Region": "us-gov-west-1", + "UseDualStack": false } }, { @@ -1231,8 +1231,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "us-gov-west-1" + "Region": "us-gov-west-1", + "UseDualStack": true } }, { @@ -1244,8 +1244,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "us-gov-west-1" + "Region": "us-gov-west-1", + "UseDualStack": false } }, { @@ -1257,8 +1257,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "ap-southeast-1" + "Region": "ap-southeast-1", + "UseDualStack": true } }, { @@ -1270,8 +1270,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "ap-southeast-1" + "Region": "ap-southeast-1", + "UseDualStack": false } }, { @@ -1283,8 +1283,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "ap-southeast-1" + "Region": "ap-southeast-1", + "UseDualStack": true } }, { @@ -1296,8 +1296,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-southeast-1" + "Region": "ap-southeast-1", + "UseDualStack": false } }, { @@ -1309,8 +1309,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "ap-southeast-2" + "Region": "ap-southeast-2", + "UseDualStack": true } }, { @@ -1322,8 +1322,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "ap-southeast-2" + "Region": "ap-southeast-2", + "UseDualStack": false } }, { @@ -1335,8 +1335,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "ap-southeast-2" + "Region": "ap-southeast-2", + "UseDualStack": true } }, { @@ -1348,8 +1348,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-southeast-2" + "Region": "ap-southeast-2", + "UseDualStack": false } }, { @@ -1359,8 +1359,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "us-iso-east-1" + "Region": "us-iso-east-1", + "UseDualStack": true } }, { @@ -1372,8 +1372,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "us-iso-east-1" + "Region": "us-iso-east-1", + "UseDualStack": false } }, { @@ -1383,8 +1383,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "us-iso-east-1" + "Region": "us-iso-east-1", + "UseDualStack": true } }, { @@ -1396,8 +1396,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "us-iso-east-1" + "Region": "us-iso-east-1", + "UseDualStack": false } }, { @@ -1409,8 +1409,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "ap-southeast-3" + "Region": "ap-southeast-3", + "UseDualStack": true } }, { @@ -1422,8 +1422,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "ap-southeast-3" + "Region": "ap-southeast-3", + "UseDualStack": false } }, { @@ -1435,8 +1435,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "ap-southeast-3" + "Region": "ap-southeast-3", + "UseDualStack": true } }, { @@ -1448,8 +1448,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-southeast-3" + "Region": "ap-southeast-3", + "UseDualStack": false } }, { @@ -1461,8 +1461,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "ap-southeast-4" + "Region": "ap-southeast-4", + "UseDualStack": true } }, { @@ -1474,8 +1474,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "ap-southeast-4" + "Region": "ap-southeast-4", + "UseDualStack": false } }, { @@ -1487,8 +1487,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "ap-southeast-4" + "Region": "ap-southeast-4", + "UseDualStack": true } }, { @@ -1500,8 +1500,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-southeast-4" + "Region": "ap-southeast-4", + "UseDualStack": false } }, { @@ -1513,8 +1513,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "us-east-1" + "Region": "us-east-1", + "UseDualStack": true } }, { @@ -1526,8 +1526,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "us-east-1" + "Region": "us-east-1", + "UseDualStack": false } }, { @@ -1539,8 +1539,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "us-east-1" + "Region": "us-east-1", + "UseDualStack": true } }, { @@ -1552,8 +1552,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "us-east-1" + "Region": "us-east-1", + "UseDualStack": false } }, { @@ -1565,8 +1565,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "us-east-2" + "Region": "us-east-2", + "UseDualStack": true } }, { @@ -1578,8 +1578,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "us-east-2" + "Region": "us-east-2", + "UseDualStack": false } }, { @@ -1591,8 +1591,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "us-east-2" + "Region": "us-east-2", + "UseDualStack": true } }, { @@ -1604,8 +1604,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "us-east-2" + "Region": "us-east-2", + "UseDualStack": false } }, { @@ -1617,8 +1617,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "cn-northwest-1" + "Region": "cn-northwest-1", + "UseDualStack": true } }, { @@ -1630,8 +1630,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "cn-northwest-1" + "Region": "cn-northwest-1", + "UseDualStack": false } }, { @@ -1643,8 +1643,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "cn-northwest-1" + "Region": "cn-northwest-1", + "UseDualStack": true } }, { @@ -1656,8 +1656,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "cn-northwest-1" + "Region": "cn-northwest-1", + "UseDualStack": false } }, { @@ -1667,8 +1667,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": true, - "Region": "us-isob-east-1" + "Region": "us-isob-east-1", + "UseDualStack": true } }, { @@ -1680,8 +1680,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, - "Region": "us-isob-east-1" + "Region": "us-isob-east-1", + "UseDualStack": false } }, { @@ -1691,8 +1691,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, - "Region": "us-isob-east-1" + "Region": "us-isob-east-1", + "UseDualStack": true } }, { @@ -1704,8 +1704,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, - "Region": "us-isob-east-1" + "Region": "us-isob-east-1", + "UseDualStack": false } }, { @@ -1717,8 +1717,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": false, "Region": "us-east-1", + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -1729,8 +1729,8 @@ }, "params": { "UseFIPS": true, - "UseDualStack": false, "Region": "us-east-1", + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -1741,8 +1741,8 @@ }, "params": { "UseFIPS": false, - "UseDualStack": true, "Region": "us-east-1", + "UseDualStack": true, "Endpoint": "https://example.com" } } diff --git a/models/apis/glue/2017-03-31/api-2.json b/models/apis/glue/2017-03-31/api-2.json index 272f88b9e0..02bccca8b8 100644 --- a/models/apis/glue/2017-03-31/api-2.json +++ b/models/apis/glue/2017-03-31/api-2.json @@ -6059,7 +6059,8 @@ "members":{ "DeltaTables":{"shape":"PathList"}, "ConnectionName":{"shape":"ConnectionName"}, - "WriteManifest":{"shape":"NullableBoolean"} + "WriteManifest":{"shape":"NullableBoolean"}, + "CreateNativeDeltaTable":{"shape":"NullableBoolean"} } }, "DeltaTargetList":{ diff --git a/models/apis/glue/2017-03-31/docs-2.json b/models/apis/glue/2017-03-31/docs-2.json index 3f660fd74b..13a1f1bcff 100644 --- a/models/apis/glue/2017-03-31/docs-2.json +++ b/models/apis/glue/2017-03-31/docs-2.json @@ -5552,6 +5552,7 @@ "CsvClassifier$CustomDatatypeConfigured": "

Enables the custom datatype to be configured.

", "DataQualityEvaluationRunAdditionalRunOptions$CloudWatchMetricsEnabled": "

Whether or not to enable CloudWatch metrics.

", "DeltaTarget$WriteManifest": "

Specifies whether to write the manifest files to the Delta table path.

", + "DeltaTarget$CreateNativeDeltaTable": "

Specifies whether the crawler will create native tables, to allow integration with query engines that support querying of the Delta transaction log directly.

", "DynamoDBTarget$scanAll": "

Indicates whether to scan all the records, or to sample rows from the table. Scanning all the records can take a long time when the table is not a high throughput table.

A value of true means to scan all records, while a value of false means to sample the records. If no value is specified, the value defaults to true.

", "FindMatchesParameters$EnforceProvidedLabels": "

The value to switch on or off to force the output to match the provided labels from users. If the value is True, the find matches transform forces the output to match the provided labels. The results override the normal conflation results. If the value is False, the find matches transform does not ensure all the labels provided are respected, and the results rely on the trained model.

Note that setting this value to true may increase the conflation execution time.

", "GetBlueprintRequest$IncludeBlueprint": "

Specifies whether or not to include the blueprint in the response.

", diff --git a/models/apis/glue/2017-03-31/endpoint-rule-set-1.json b/models/apis/glue/2017-03-31/endpoint-rule-set-1.json index a5c46721e5..2d6293c089 100644 --- a/models/apis/glue/2017-03-31/endpoint-rule-set-1.json +++ b/models/apis/glue/2017-03-31/endpoint-rule-set-1.json @@ -52,15 +52,6 @@ "ref": "Endpoint" } ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" } ], "type": "tree", diff --git a/models/apis/glue/2017-03-31/endpoint-tests-1.json b/models/apis/glue/2017-03-31/endpoint-tests-1.json index 7037dbd5ec..d2bcd4f509 100644 --- a/models/apis/glue/2017-03-31/endpoint-tests-1.json +++ b/models/apis/glue/2017-03-31/endpoint-tests-1.json @@ -8,9 +8,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "ap-south-1" + "Region": "ap-south-1", + "UseDualStack": true } }, { @@ -21,9 +21,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "ap-south-1" + "Region": "ap-south-1", + "UseDualStack": false } }, { @@ -34,9 +34,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "ap-south-1" + "Region": "ap-south-1", + "UseDualStack": true } }, { @@ -47,9 +47,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "ap-south-1" + "Region": "ap-south-1", + "UseDualStack": false } }, { @@ -60,9 +60,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "eu-south-1" + "Region": "eu-south-1", + "UseDualStack": true } }, { @@ -73,9 +73,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "eu-south-1" + "Region": "eu-south-1", + "UseDualStack": false } }, { @@ -86,9 +86,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "eu-south-1" + "Region": "eu-south-1", + "UseDualStack": true } }, { @@ -99,9 +99,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "eu-south-1" + "Region": "eu-south-1", + "UseDualStack": false } }, { @@ -112,9 +112,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "eu-south-2" + "Region": "eu-south-2", + "UseDualStack": true } }, { @@ -125,9 +125,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "eu-south-2" + "Region": "eu-south-2", + "UseDualStack": false } }, { @@ -138,9 +138,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "eu-south-2" + "Region": "eu-south-2", + "UseDualStack": true } }, { @@ -151,9 +151,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "eu-south-2" + "Region": "eu-south-2", + "UseDualStack": false } }, { @@ -164,9 +164,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "us-gov-east-1" + "Region": "us-gov-east-1", + "UseDualStack": true } }, { @@ -177,9 +177,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "us-gov-east-1" + "Region": "us-gov-east-1", + "UseDualStack": false } }, { @@ -190,9 +190,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "us-gov-east-1" + "Region": "us-gov-east-1", + "UseDualStack": true } }, { @@ -203,9 +203,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "us-gov-east-1" + "Region": "us-gov-east-1", + "UseDualStack": false } }, { @@ -216,9 +216,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "me-central-1" + "Region": "me-central-1", + "UseDualStack": true } }, { @@ -229,9 +229,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "me-central-1" + "Region": "me-central-1", + "UseDualStack": false } }, { @@ -242,9 +242,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "me-central-1" + "Region": "me-central-1", + "UseDualStack": true } }, { @@ -255,9 +255,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "me-central-1" + "Region": "me-central-1", + "UseDualStack": false } }, { @@ -268,9 +268,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "ca-central-1" + "Region": "ca-central-1", + "UseDualStack": true } }, { @@ -281,9 +281,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "ca-central-1" + "Region": "ca-central-1", + "UseDualStack": false } }, { @@ -294,9 +294,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "ca-central-1" + "Region": "ca-central-1", + "UseDualStack": true } }, { @@ -307,9 +307,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "ca-central-1" + "Region": "ca-central-1", + "UseDualStack": false } }, { @@ -320,9 +320,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "eu-central-1" + "Region": "eu-central-1", + "UseDualStack": true } }, { @@ -333,9 +333,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "eu-central-1" + "Region": "eu-central-1", + "UseDualStack": false } }, { @@ -346,9 +346,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "eu-central-1" + "Region": "eu-central-1", + "UseDualStack": true } }, { @@ -359,9 +359,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "eu-central-1" + "Region": "eu-central-1", + "UseDualStack": false } }, { @@ -372,9 +372,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "us-west-1" + "Region": "us-west-1", + "UseDualStack": true } }, { @@ -385,9 +385,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "us-west-1" + "Region": "us-west-1", + "UseDualStack": false } }, { @@ -398,9 +398,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "us-west-1" + "Region": "us-west-1", + "UseDualStack": true } }, { @@ -411,9 +411,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "us-west-1" + "Region": "us-west-1", + "UseDualStack": false } }, { @@ -424,9 +424,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "us-west-2" + "Region": "us-west-2", + "UseDualStack": true } }, { @@ -437,9 +437,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "us-west-2" + "Region": "us-west-2", + "UseDualStack": false } }, { @@ -450,9 +450,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "us-west-2" + "Region": "us-west-2", + "UseDualStack": true } }, { @@ -463,9 +463,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "us-west-2" + "Region": "us-west-2", + "UseDualStack": false } }, { @@ -476,9 +476,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "af-south-1" + "Region": "af-south-1", + "UseDualStack": true } }, { @@ -489,9 +489,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "af-south-1" + "Region": "af-south-1", + "UseDualStack": false } }, { @@ -502,9 +502,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "af-south-1" + "Region": "af-south-1", + "UseDualStack": true } }, { @@ -515,9 +515,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "af-south-1" + "Region": "af-south-1", + "UseDualStack": false } }, { @@ -528,9 +528,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "eu-north-1" + "Region": "eu-north-1", + "UseDualStack": true } }, { @@ -541,9 +541,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "eu-north-1" + "Region": "eu-north-1", + "UseDualStack": false } }, { @@ -554,9 +554,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "eu-north-1" + "Region": "eu-north-1", + "UseDualStack": true } }, { @@ -567,9 +567,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "eu-north-1" + "Region": "eu-north-1", + "UseDualStack": false } }, { @@ -580,9 +580,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "eu-west-3" + "Region": "eu-west-3", + "UseDualStack": true } }, { @@ -593,9 +593,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "eu-west-3" + "Region": "eu-west-3", + "UseDualStack": false } }, { @@ -606,9 +606,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "eu-west-3" + "Region": "eu-west-3", + "UseDualStack": true } }, { @@ -619,9 +619,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "eu-west-3" + "Region": "eu-west-3", + "UseDualStack": false } }, { @@ -632,9 +632,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "eu-west-2" + "Region": "eu-west-2", + "UseDualStack": true } }, { @@ -645,9 +645,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "eu-west-2" + "Region": "eu-west-2", + "UseDualStack": false } }, { @@ -658,9 +658,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "eu-west-2" + "Region": "eu-west-2", + "UseDualStack": true } }, { @@ -671,9 +671,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "eu-west-2" + "Region": "eu-west-2", + "UseDualStack": false } }, { @@ -684,9 +684,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "eu-west-1" + "Region": "eu-west-1", + "UseDualStack": true } }, { @@ -697,9 +697,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "eu-west-1" + "Region": "eu-west-1", + "UseDualStack": false } }, { @@ -710,9 +710,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "eu-west-1" + "Region": "eu-west-1", + "UseDualStack": true } }, { @@ -723,9 +723,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "eu-west-1" + "Region": "eu-west-1", + "UseDualStack": false } }, { @@ -736,9 +736,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "ap-northeast-3" + "Region": "ap-northeast-3", + "UseDualStack": true } }, { @@ -749,9 +749,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "ap-northeast-3" + "Region": "ap-northeast-3", + "UseDualStack": false } }, { @@ -762,9 +762,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "ap-northeast-3" + "Region": "ap-northeast-3", + "UseDualStack": true } }, { @@ -775,9 +775,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "ap-northeast-3" + "Region": "ap-northeast-3", + "UseDualStack": false } }, { @@ -788,9 +788,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "ap-northeast-2" + "Region": "ap-northeast-2", + "UseDualStack": true } }, { @@ -801,9 +801,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "ap-northeast-2" + "Region": "ap-northeast-2", + "UseDualStack": false } }, { @@ -814,9 +814,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "ap-northeast-2" + "Region": "ap-northeast-2", + "UseDualStack": true } }, { @@ -827,9 +827,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "ap-northeast-2" + "Region": "ap-northeast-2", + "UseDualStack": false } }, { @@ -840,9 +840,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "ap-northeast-1" + "Region": "ap-northeast-1", + "UseDualStack": true } }, { @@ -853,9 +853,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "ap-northeast-1" + "Region": "ap-northeast-1", + "UseDualStack": false } }, { @@ -866,9 +866,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "ap-northeast-1" + "Region": "ap-northeast-1", + "UseDualStack": true } }, { @@ -879,9 +879,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "ap-northeast-1" + "Region": "ap-northeast-1", + "UseDualStack": false } }, { @@ -892,9 +892,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "me-south-1" + "Region": "me-south-1", + "UseDualStack": true } }, { @@ -905,9 +905,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "me-south-1" + "Region": "me-south-1", + "UseDualStack": false } }, { @@ -918,9 +918,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "me-south-1" + "Region": "me-south-1", + "UseDualStack": true } }, { @@ -931,9 +931,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "me-south-1" + "Region": "me-south-1", + "UseDualStack": false } }, { @@ -944,9 +944,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "sa-east-1" + "Region": "sa-east-1", + "UseDualStack": true } }, { @@ -957,9 +957,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "sa-east-1" + "Region": "sa-east-1", + "UseDualStack": false } }, { @@ -970,9 +970,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "sa-east-1" + "Region": "sa-east-1", + "UseDualStack": true } }, { @@ -983,9 +983,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "sa-east-1" + "Region": "sa-east-1", + "UseDualStack": false } }, { @@ -996,9 +996,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "ap-east-1" + "Region": "ap-east-1", + "UseDualStack": true } }, { @@ -1009,9 +1009,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "ap-east-1" + "Region": "ap-east-1", + "UseDualStack": false } }, { @@ -1022,9 +1022,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "ap-east-1" + "Region": "ap-east-1", + "UseDualStack": true } }, { @@ -1035,9 +1035,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "ap-east-1" + "Region": "ap-east-1", + "UseDualStack": false } }, { @@ -1048,9 +1048,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "cn-north-1" + "Region": "cn-north-1", + "UseDualStack": true } }, { @@ -1061,9 +1061,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "cn-north-1" + "Region": "cn-north-1", + "UseDualStack": false } }, { @@ -1074,9 +1074,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "cn-north-1" + "Region": "cn-north-1", + "UseDualStack": true } }, { @@ -1087,9 +1087,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "cn-north-1" + "Region": "cn-north-1", + "UseDualStack": false } }, { @@ -1100,9 +1100,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "us-gov-west-1" + "Region": "us-gov-west-1", + "UseDualStack": true } }, { @@ -1113,9 +1113,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "us-gov-west-1" + "Region": "us-gov-west-1", + "UseDualStack": false } }, { @@ -1126,9 +1126,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "us-gov-west-1" + "Region": "us-gov-west-1", + "UseDualStack": true } }, { @@ -1139,9 +1139,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "us-gov-west-1" + "Region": "us-gov-west-1", + "UseDualStack": false } }, { @@ -1152,9 +1152,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "ap-southeast-1" + "Region": "ap-southeast-1", + "UseDualStack": true } }, { @@ -1165,9 +1165,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "ap-southeast-1" + "Region": "ap-southeast-1", + "UseDualStack": false } }, { @@ -1178,9 +1178,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "ap-southeast-1" + "Region": "ap-southeast-1", + "UseDualStack": true } }, { @@ -1191,9 +1191,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "ap-southeast-1" + "Region": "ap-southeast-1", + "UseDualStack": false } }, { @@ -1204,9 +1204,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "ap-southeast-2" + "Region": "ap-southeast-2", + "UseDualStack": true } }, { @@ -1217,9 +1217,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "ap-southeast-2" + "Region": "ap-southeast-2", + "UseDualStack": false } }, { @@ -1230,9 +1230,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "ap-southeast-2" + "Region": "ap-southeast-2", + "UseDualStack": true } }, { @@ -1243,9 +1243,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "ap-southeast-2" + "Region": "ap-southeast-2", + "UseDualStack": false } }, { @@ -1254,9 +1254,9 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "us-iso-east-1" + "Region": "us-iso-east-1", + "UseDualStack": true } }, { @@ -1267,9 +1267,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "us-iso-east-1" + "Region": "us-iso-east-1", + "UseDualStack": false } }, { @@ -1278,9 +1278,9 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "us-iso-east-1" + "Region": "us-iso-east-1", + "UseDualStack": true } }, { @@ -1291,9 +1291,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "us-iso-east-1" + "Region": "us-iso-east-1", + "UseDualStack": false } }, { @@ -1304,9 +1304,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "ap-southeast-3" + "Region": "ap-southeast-3", + "UseDualStack": true } }, { @@ -1317,9 +1317,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "ap-southeast-3" + "Region": "ap-southeast-3", + "UseDualStack": false } }, { @@ -1330,9 +1330,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "ap-southeast-3" + "Region": "ap-southeast-3", + "UseDualStack": true } }, { @@ -1343,9 +1343,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "ap-southeast-3" + "Region": "ap-southeast-3", + "UseDualStack": false } }, { @@ -1356,9 +1356,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "us-east-1" + "Region": "us-east-1", + "UseDualStack": true } }, { @@ -1369,9 +1369,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "us-east-1" + "Region": "us-east-1", + "UseDualStack": false } }, { @@ -1382,9 +1382,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "us-east-1" + "Region": "us-east-1", + "UseDualStack": true } }, { @@ -1395,9 +1395,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "us-east-1" + "Region": "us-east-1", + "UseDualStack": false } }, { @@ -1408,9 +1408,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "us-east-2" + "Region": "us-east-2", + "UseDualStack": true } }, { @@ -1421,9 +1421,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "us-east-2" + "Region": "us-east-2", + "UseDualStack": false } }, { @@ -1434,9 +1434,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "us-east-2" + "Region": "us-east-2", + "UseDualStack": true } }, { @@ -1447,9 +1447,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "us-east-2" + "Region": "us-east-2", + "UseDualStack": false } }, { @@ -1460,9 +1460,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "cn-northwest-1" + "Region": "cn-northwest-1", + "UseDualStack": true } }, { @@ -1473,9 +1473,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "cn-northwest-1" + "Region": "cn-northwest-1", + "UseDualStack": false } }, { @@ -1486,9 +1486,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "cn-northwest-1" + "Region": "cn-northwest-1", + "UseDualStack": true } }, { @@ -1499,9 +1499,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "cn-northwest-1" + "Region": "cn-northwest-1", + "UseDualStack": false } }, { @@ -1510,9 +1510,9 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "us-isob-east-1" + "Region": "us-isob-east-1", + "UseDualStack": true } }, { @@ -1523,9 +1523,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "us-isob-east-1" + "Region": "us-isob-east-1", + "UseDualStack": false } }, { @@ -1534,9 +1534,9 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "us-isob-east-1" + "Region": "us-isob-east-1", + "UseDualStack": true } }, { @@ -1547,9 +1547,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "us-isob-east-1" + "Region": "us-isob-east-1", + "UseDualStack": false } }, { @@ -1560,9 +1560,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, "Region": "us-east-1", + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -1572,9 +1572,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { - "UseDualStack": false, "UseFIPS": true, "Region": "us-east-1", + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -1584,9 +1584,9 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { - "UseDualStack": true, "UseFIPS": false, "Region": "us-east-1", + "UseDualStack": true, "Endpoint": "https://example.com" } } diff --git a/models/apis/kinesis/2013-12-02/api-2.json b/models/apis/kinesis/2013-12-02/api-2.json index abfafad903..dd4094382d 100644 --- a/models/apis/kinesis/2013-12-02/api-2.json +++ b/models/apis/kinesis/2013-12-02/api-2.json @@ -25,8 +25,12 @@ {"shape":"ResourceNotFoundException"}, {"shape":"ResourceInUseException"}, {"shape":"InvalidArgumentException"}, - {"shape":"LimitExceededException"} - ] + {"shape":"LimitExceededException"}, + {"shape":"AccessDeniedException"} + ], + "staticContextParams":{ + "OperationType":{"value":"control"} + } }, "CreateStream":{ "name":"CreateStream", @@ -52,8 +56,12 @@ {"shape":"ResourceInUseException"}, {"shape":"ResourceNotFoundException"}, {"shape":"LimitExceededException"}, - {"shape":"InvalidArgumentException"} - ] + {"shape":"InvalidArgumentException"}, + {"shape":"AccessDeniedException"} + ], + "staticContextParams":{ + "OperationType":{"value":"control"} + } }, "DeleteStream":{ "name":"DeleteStream", @@ -65,8 +73,13 @@ "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"LimitExceededException"}, - {"shape":"ResourceInUseException"} - ] + {"shape":"ResourceInUseException"}, + {"shape":"InvalidArgumentException"}, + {"shape":"AccessDeniedException"} + ], + "staticContextParams":{ + "OperationType":{"value":"control"} + } }, "DeregisterStreamConsumer":{ "name":"DeregisterStreamConsumer", @@ -79,7 +92,10 @@ {"shape":"LimitExceededException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InvalidArgumentException"} - ] + ], + "staticContextParams":{ + "OperationType":{"value":"control"} + } }, "DescribeLimits":{ "name":"DescribeLimits", @@ -103,8 +119,13 @@ "output":{"shape":"DescribeStreamOutput"}, "errors":[ {"shape":"ResourceNotFoundException"}, - {"shape":"LimitExceededException"} - ] + {"shape":"LimitExceededException"}, + {"shape":"InvalidArgumentException"}, + {"shape":"AccessDeniedException"} + ], + "staticContextParams":{ + "OperationType":{"value":"control"} + } }, "DescribeStreamConsumer":{ "name":"DescribeStreamConsumer", @@ -118,7 +139,10 @@ {"shape":"LimitExceededException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InvalidArgumentException"} - ] + ], + "staticContextParams":{ + "OperationType":{"value":"control"} + } }, "DescribeStreamSummary":{ "name":"DescribeStreamSummary", @@ -130,8 +154,13 @@ "output":{"shape":"DescribeStreamSummaryOutput"}, "errors":[ {"shape":"ResourceNotFoundException"}, - {"shape":"LimitExceededException"} - ] + {"shape":"LimitExceededException"}, + {"shape":"InvalidArgumentException"}, + {"shape":"AccessDeniedException"} + ], + "staticContextParams":{ + "OperationType":{"value":"control"} + } }, "DisableEnhancedMonitoring":{ "name":"DisableEnhancedMonitoring", @@ -145,8 +174,12 @@ {"shape":"InvalidArgumentException"}, {"shape":"LimitExceededException"}, {"shape":"ResourceInUseException"}, - {"shape":"ResourceNotFoundException"} - ] + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} + ], + "staticContextParams":{ + "OperationType":{"value":"control"} + } }, "EnableEnhancedMonitoring":{ "name":"EnableEnhancedMonitoring", @@ -160,8 +193,12 @@ {"shape":"InvalidArgumentException"}, {"shape":"LimitExceededException"}, {"shape":"ResourceInUseException"}, - {"shape":"ResourceNotFoundException"} - ] + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} + ], + "staticContextParams":{ + "OperationType":{"value":"control"} + } }, "GetRecords":{ "name":"GetRecords", @@ -181,8 +218,12 @@ {"shape":"KMSAccessDeniedException"}, {"shape":"KMSNotFoundException"}, {"shape":"KMSOptInRequired"}, - {"shape":"KMSThrottlingException"} - ] + {"shape":"KMSThrottlingException"}, + {"shape":"AccessDeniedException"} + ], + "staticContextParams":{ + "OperationType":{"value":"data"} + } }, "GetShardIterator":{ "name":"GetShardIterator", @@ -195,8 +236,12 @@ "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidArgumentException"}, - {"shape":"ProvisionedThroughputExceededException"} - ] + {"shape":"ProvisionedThroughputExceededException"}, + {"shape":"AccessDeniedException"} + ], + "staticContextParams":{ + "OperationType":{"value":"data"} + } }, "IncreaseStreamRetentionPeriod":{ "name":"IncreaseStreamRetentionPeriod", @@ -209,8 +254,12 @@ {"shape":"ResourceInUseException"}, {"shape":"ResourceNotFoundException"}, {"shape":"LimitExceededException"}, - {"shape":"InvalidArgumentException"} - ] + {"shape":"InvalidArgumentException"}, + {"shape":"AccessDeniedException"} + ], + "staticContextParams":{ + "OperationType":{"value":"control"} + } }, "ListShards":{ "name":"ListShards", @@ -225,8 +274,12 @@ {"shape":"InvalidArgumentException"}, {"shape":"LimitExceededException"}, {"shape":"ExpiredNextTokenException"}, - {"shape":"ResourceInUseException"} - ] + {"shape":"ResourceInUseException"}, + {"shape":"AccessDeniedException"} + ], + "staticContextParams":{ + "OperationType":{"value":"control"} + } }, "ListStreamConsumers":{ "name":"ListStreamConsumers", @@ -242,7 +295,10 @@ {"shape":"LimitExceededException"}, {"shape":"ExpiredNextTokenException"}, {"shape":"ResourceInUseException"} - ] + ], + "staticContextParams":{ + "OperationType":{"value":"control"} + } }, "ListStreams":{ "name":"ListStreams", @@ -253,7 +309,9 @@ "input":{"shape":"ListStreamsInput"}, "output":{"shape":"ListStreamsOutput"}, "errors":[ - {"shape":"LimitExceededException"} + {"shape":"LimitExceededException"}, + {"shape":"ExpiredNextTokenException"}, + {"shape":"InvalidArgumentException"} ] }, "ListTagsForStream":{ @@ -267,8 +325,12 @@ "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidArgumentException"}, - {"shape":"LimitExceededException"} - ] + {"shape":"LimitExceededException"}, + {"shape":"AccessDeniedException"} + ], + "staticContextParams":{ + "OperationType":{"value":"control"} + } }, "MergeShards":{ "name":"MergeShards", @@ -282,8 +344,12 @@ {"shape":"ResourceInUseException"}, {"shape":"InvalidArgumentException"}, {"shape":"LimitExceededException"}, - {"shape":"ValidationException"} - ] + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ], + "staticContextParams":{ + "OperationType":{"value":"control"} + } }, "PutRecord":{ "name":"PutRecord", @@ -302,8 +368,12 @@ {"shape":"KMSAccessDeniedException"}, {"shape":"KMSNotFoundException"}, {"shape":"KMSOptInRequired"}, - {"shape":"KMSThrottlingException"} - ] + {"shape":"KMSThrottlingException"}, + {"shape":"AccessDeniedException"} + ], + "staticContextParams":{ + "OperationType":{"value":"data"} + } }, "PutRecords":{ "name":"PutRecords", @@ -322,8 +392,12 @@ {"shape":"KMSAccessDeniedException"}, {"shape":"KMSNotFoundException"}, {"shape":"KMSOptInRequired"}, - {"shape":"KMSThrottlingException"} - ] + {"shape":"KMSThrottlingException"}, + {"shape":"AccessDeniedException"} + ], + "staticContextParams":{ + "OperationType":{"value":"data"} + } }, "RegisterStreamConsumer":{ "name":"RegisterStreamConsumer", @@ -338,7 +412,10 @@ {"shape":"LimitExceededException"}, {"shape":"ResourceInUseException"}, {"shape":"ResourceNotFoundException"} - ] + ], + "staticContextParams":{ + "OperationType":{"value":"control"} + } }, "RemoveTagsFromStream":{ "name":"RemoveTagsFromStream", @@ -351,8 +428,12 @@ {"shape":"ResourceNotFoundException"}, {"shape":"ResourceInUseException"}, {"shape":"InvalidArgumentException"}, - {"shape":"LimitExceededException"} - ] + {"shape":"LimitExceededException"}, + {"shape":"AccessDeniedException"} + ], + "staticContextParams":{ + "OperationType":{"value":"control"} + } }, "SplitShard":{ "name":"SplitShard", @@ -366,8 +447,12 @@ {"shape":"ResourceInUseException"}, {"shape":"InvalidArgumentException"}, {"shape":"LimitExceededException"}, - {"shape":"ValidationException"} - ] + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ], + "staticContextParams":{ + "OperationType":{"value":"control"} + } }, "StartStreamEncryption":{ "name":"StartStreamEncryption", @@ -386,8 +471,12 @@ {"shape":"KMSAccessDeniedException"}, {"shape":"KMSNotFoundException"}, {"shape":"KMSOptInRequired"}, - {"shape":"KMSThrottlingException"} - ] + {"shape":"KMSThrottlingException"}, + {"shape":"AccessDeniedException"} + ], + "staticContextParams":{ + "OperationType":{"value":"control"} + } }, "StopStreamEncryption":{ "name":"StopStreamEncryption", @@ -400,8 +489,12 @@ {"shape":"InvalidArgumentException"}, {"shape":"LimitExceededException"}, {"shape":"ResourceInUseException"}, - {"shape":"ResourceNotFoundException"} - ] + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} + ], + "staticContextParams":{ + "OperationType":{"value":"control"} + } }, "SubscribeToShard":{ "name":"SubscribeToShard", @@ -415,8 +508,12 @@ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidArgumentException"}, {"shape":"ResourceInUseException"}, - {"shape":"LimitExceededException"} - ] + {"shape":"LimitExceededException"}, + {"shape":"AccessDeniedException"} + ], + "staticContextParams":{ + "OperationType":{"value":"data"} + } }, "UpdateShardCount":{ "name":"UpdateShardCount", @@ -431,8 +528,12 @@ {"shape":"LimitExceededException"}, {"shape":"ResourceInUseException"}, {"shape":"ResourceNotFoundException"}, - {"shape":"ValidationException"} - ] + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ], + "staticContextParams":{ + "OperationType":{"value":"control"} + } }, "UpdateStreamMode":{ "name":"UpdateStreamMode", @@ -446,19 +547,30 @@ {"shape":"LimitExceededException"}, {"shape":"ResourceInUseException"}, {"shape":"ResourceNotFoundException"} - ] + ], + "staticContextParams":{ + "OperationType":{"value":"control"} + } } }, "shapes":{ + "AccessDeniedException":{ + "type":"structure", + "members":{ + "message":{"shape":"ErrorMessage"} + }, + "exception":true + }, "AddTagsToStreamInput":{ "type":"structure", - "required":[ - "StreamName", - "Tags" - ], + "required":["Tags"], "members":{ "StreamName":{"shape":"StreamName"}, - "Tags":{"shape":"TagMap"} + "Tags":{"shape":"TagMap"}, + "StreamARN":{ + "shape":"StreamARN", + "contextParam":{"name":"StreamARN"} + } } }, "BooleanObject":{"type":"boolean"}, @@ -556,29 +668,39 @@ }, "DecreaseStreamRetentionPeriodInput":{ "type":"structure", - "required":[ - "StreamName", - "RetentionPeriodHours" - ], + "required":["RetentionPeriodHours"], "members":{ "StreamName":{"shape":"StreamName"}, - "RetentionPeriodHours":{"shape":"RetentionPeriodHours"} + "RetentionPeriodHours":{"shape":"RetentionPeriodHours"}, + "StreamARN":{ + "shape":"StreamARN", + "contextParam":{"name":"StreamARN"} + } } }, "DeleteStreamInput":{ "type":"structure", - "required":["StreamName"], "members":{ "StreamName":{"shape":"StreamName"}, - "EnforceConsumerDeletion":{"shape":"BooleanObject"} + "EnforceConsumerDeletion":{"shape":"BooleanObject"}, + "StreamARN":{ + "shape":"StreamARN", + "contextParam":{"name":"StreamARN"} + } } }, "DeregisterStreamConsumerInput":{ "type":"structure", "members":{ - "StreamARN":{"shape":"StreamARN"}, + "StreamARN":{ + "shape":"StreamARN", + "contextParam":{"name":"StreamARN"} + }, "ConsumerName":{"shape":"ConsumerName"}, - "ConsumerARN":{"shape":"ConsumerARN"} + "ConsumerARN":{ + "shape":"ConsumerARN", + "contextParam":{"name":"ConsumerARN"} + } } }, "DescribeLimitsInput":{ @@ -604,9 +726,15 @@ "DescribeStreamConsumerInput":{ "type":"structure", "members":{ - "StreamARN":{"shape":"StreamARN"}, + "StreamARN":{ + "shape":"StreamARN", + "contextParam":{"name":"StreamARN"} + }, "ConsumerName":{"shape":"ConsumerName"}, - "ConsumerARN":{"shape":"ConsumerARN"} + "ConsumerARN":{ + "shape":"ConsumerARN", + "contextParam":{"name":"ConsumerARN"} + } } }, "DescribeStreamConsumerOutput":{ @@ -618,11 +746,14 @@ }, "DescribeStreamInput":{ "type":"structure", - "required":["StreamName"], "members":{ "StreamName":{"shape":"StreamName"}, "Limit":{"shape":"DescribeStreamInputLimit"}, - "ExclusiveStartShardId":{"shape":"ShardId"} + "ExclusiveStartShardId":{"shape":"ShardId"}, + "StreamARN":{ + "shape":"StreamARN", + "contextParam":{"name":"StreamARN"} + } } }, "DescribeStreamInputLimit":{ @@ -639,9 +770,12 @@ }, "DescribeStreamSummaryInput":{ "type":"structure", - "required":["StreamName"], "members":{ - "StreamName":{"shape":"StreamName"} + "StreamName":{"shape":"StreamName"}, + "StreamARN":{ + "shape":"StreamARN", + "contextParam":{"name":"StreamARN"} + } } }, "DescribeStreamSummaryOutput":{ @@ -653,24 +787,26 @@ }, "DisableEnhancedMonitoringInput":{ "type":"structure", - "required":[ - "StreamName", - "ShardLevelMetrics" - ], + "required":["ShardLevelMetrics"], "members":{ "StreamName":{"shape":"StreamName"}, - "ShardLevelMetrics":{"shape":"MetricsNameList"} + "ShardLevelMetrics":{"shape":"MetricsNameList"}, + "StreamARN":{ + "shape":"StreamARN", + "contextParam":{"name":"StreamARN"} + } } }, "EnableEnhancedMonitoringInput":{ "type":"structure", - "required":[ - "StreamName", - "ShardLevelMetrics" - ], + "required":["ShardLevelMetrics"], "members":{ "StreamName":{"shape":"StreamName"}, - "ShardLevelMetrics":{"shape":"MetricsNameList"} + "ShardLevelMetrics":{"shape":"MetricsNameList"}, + "StreamARN":{ + "shape":"StreamARN", + "contextParam":{"name":"StreamARN"} + } } }, "EncryptionType":{ @@ -695,7 +831,8 @@ "members":{ "StreamName":{"shape":"StreamName"}, "CurrentShardLevelMetrics":{"shape":"MetricsNameList"}, - "DesiredShardLevelMetrics":{"shape":"MetricsNameList"} + "DesiredShardLevelMetrics":{"shape":"MetricsNameList"}, + "StreamARN":{"shape":"StreamARN"} } }, "ErrorCode":{"type":"string"}, @@ -719,7 +856,11 @@ "required":["ShardIterator"], "members":{ "ShardIterator":{"shape":"ShardIterator"}, - "Limit":{"shape":"GetRecordsInputLimit"} + "Limit":{"shape":"GetRecordsInputLimit"}, + "StreamARN":{ + "shape":"StreamARN", + "contextParam":{"name":"StreamARN"} + } } }, "GetRecordsInputLimit":{ @@ -740,7 +881,6 @@ "GetShardIteratorInput":{ "type":"structure", "required":[ - "StreamName", "ShardId", "ShardIteratorType" ], @@ -749,7 +889,11 @@ "ShardId":{"shape":"ShardId"}, "ShardIteratorType":{"shape":"ShardIteratorType"}, "StartingSequenceNumber":{"shape":"SequenceNumber"}, - "Timestamp":{"shape":"Timestamp"} + "Timestamp":{"shape":"Timestamp"}, + "StreamARN":{ + "shape":"StreamARN", + "contextParam":{"name":"StreamARN"} + } } }, "GetShardIteratorOutput":{ @@ -775,13 +919,14 @@ }, "IncreaseStreamRetentionPeriodInput":{ "type":"structure", - "required":[ - "StreamName", - "RetentionPeriodHours" - ], + "required":["RetentionPeriodHours"], "members":{ "StreamName":{"shape":"StreamName"}, - "RetentionPeriodHours":{"shape":"RetentionPeriodHours"} + "RetentionPeriodHours":{"shape":"RetentionPeriodHours"}, + "StreamARN":{ + "shape":"StreamARN", + "contextParam":{"name":"StreamARN"} + } } }, "InternalFailureException":{ @@ -861,7 +1006,11 @@ "ExclusiveStartShardId":{"shape":"ShardId"}, "MaxResults":{"shape":"ListShardsInputLimit"}, "StreamCreationTimestamp":{"shape":"Timestamp"}, - "ShardFilter":{"shape":"ShardFilter"} + "ShardFilter":{"shape":"ShardFilter"}, + "StreamARN":{ + "shape":"StreamARN", + "contextParam":{"name":"StreamARN"} + } } }, "ListShardsInputLimit":{ @@ -880,7 +1029,10 @@ "type":"structure", "required":["StreamARN"], "members":{ - "StreamARN":{"shape":"StreamARN"}, + "StreamARN":{ + "shape":"StreamARN", + "contextParam":{"name":"StreamARN"} + }, "NextToken":{"shape":"NextToken"}, "MaxResults":{"shape":"ListStreamConsumersInputLimit"}, "StreamCreationTimestamp":{"shape":"Timestamp"} @@ -902,7 +1054,8 @@ "type":"structure", "members":{ "Limit":{"shape":"ListStreamsInputLimit"}, - "ExclusiveStartStreamName":{"shape":"StreamName"} + "ExclusiveStartStreamName":{"shape":"StreamName"}, + "NextToken":{"shape":"NextToken"} } }, "ListStreamsInputLimit":{ @@ -918,16 +1071,21 @@ ], "members":{ "StreamNames":{"shape":"StreamNameList"}, - "HasMoreStreams":{"shape":"BooleanObject"} + "HasMoreStreams":{"shape":"BooleanObject"}, + "NextToken":{"shape":"NextToken"}, + "StreamSummaries":{"shape":"StreamSummaryList"} } }, "ListTagsForStreamInput":{ "type":"structure", - "required":["StreamName"], "members":{ "StreamName":{"shape":"StreamName"}, "ExclusiveStartTagKey":{"shape":"TagKey"}, - "Limit":{"shape":"ListTagsForStreamInputLimit"} + "Limit":{"shape":"ListTagsForStreamInputLimit"}, + "StreamARN":{ + "shape":"StreamARN", + "contextParam":{"name":"StreamARN"} + } } }, "ListTagsForStreamInputLimit":{ @@ -949,14 +1107,17 @@ "MergeShardsInput":{ "type":"structure", "required":[ - "StreamName", "ShardToMerge", "AdjacentShardToMerge" ], "members":{ "StreamName":{"shape":"StreamName"}, "ShardToMerge":{"shape":"ShardId"}, - "AdjacentShardToMerge":{"shape":"ShardId"} + "AdjacentShardToMerge":{"shape":"ShardId"}, + "StreamARN":{ + "shape":"StreamARN", + "contextParam":{"name":"StreamARN"} + } } }, "MetricsName":{ @@ -1016,7 +1177,6 @@ "PutRecordInput":{ "type":"structure", "required":[ - "StreamName", "Data", "PartitionKey" ], @@ -1025,7 +1185,11 @@ "Data":{"shape":"Data"}, "PartitionKey":{"shape":"PartitionKey"}, "ExplicitHashKey":{"shape":"HashKey"}, - "SequenceNumberForOrdering":{"shape":"SequenceNumber"} + "SequenceNumberForOrdering":{"shape":"SequenceNumber"}, + "StreamARN":{ + "shape":"StreamARN", + "contextParam":{"name":"StreamARN"} + } } }, "PutRecordOutput":{ @@ -1042,13 +1206,14 @@ }, "PutRecordsInput":{ "type":"structure", - "required":[ - "Records", - "StreamName" - ], + "required":["Records"], "members":{ "Records":{"shape":"PutRecordsRequestEntryList"}, - "StreamName":{"shape":"StreamName"} + "StreamName":{"shape":"StreamName"}, + "StreamARN":{ + "shape":"StreamARN", + "contextParam":{"name":"StreamARN"} + } } }, "PutRecordsOutput":{ @@ -1119,7 +1284,10 @@ "ConsumerName" ], "members":{ - "StreamARN":{"shape":"StreamARN"}, + "StreamARN":{ + "shape":"StreamARN", + "contextParam":{"name":"StreamARN"} + }, "ConsumerName":{"shape":"ConsumerName"} } }, @@ -1132,13 +1300,14 @@ }, "RemoveTagsFromStreamInput":{ "type":"structure", - "required":[ - "StreamName", - "TagKeys" - ], + "required":["TagKeys"], "members":{ "StreamName":{"shape":"StreamName"}, - "TagKeys":{"shape":"TagKeyList"} + "TagKeys":{"shape":"TagKeyList"}, + "StreamARN":{ + "shape":"StreamARN", + "contextParam":{"name":"StreamARN"} + } } }, "ResourceInUseException":{ @@ -1244,27 +1413,33 @@ "SplitShardInput":{ "type":"structure", "required":[ - "StreamName", "ShardToSplit", "NewStartingHashKey" ], "members":{ "StreamName":{"shape":"StreamName"}, "ShardToSplit":{"shape":"ShardId"}, - "NewStartingHashKey":{"shape":"HashKey"} + "NewStartingHashKey":{"shape":"HashKey"}, + "StreamARN":{ + "shape":"StreamARN", + "contextParam":{"name":"StreamARN"} + } } }, "StartStreamEncryptionInput":{ "type":"structure", "required":[ - "StreamName", "EncryptionType", "KeyId" ], "members":{ "StreamName":{"shape":"StreamName"}, "EncryptionType":{"shape":"EncryptionType"}, - "KeyId":{"shape":"KeyId"} + "KeyId":{"shape":"KeyId"}, + "StreamARN":{ + "shape":"StreamARN", + "contextParam":{"name":"StreamARN"} + } } }, "StartingPosition":{ @@ -1279,21 +1454,24 @@ "StopStreamEncryptionInput":{ "type":"structure", "required":[ - "StreamName", "EncryptionType", "KeyId" ], "members":{ "StreamName":{"shape":"StreamName"}, "EncryptionType":{"shape":"EncryptionType"}, - "KeyId":{"shape":"KeyId"} + "KeyId":{"shape":"KeyId"}, + "StreamARN":{ + "shape":"StreamARN", + "contextParam":{"name":"StreamARN"} + } } }, "StreamARN":{ "type":"string", "max":2048, "min":1, - "pattern":"arn:aws.*:kinesis:.*:\\d{12}:stream/.+" + "pattern":"arn:aws.*:kinesis:.*:\\d{12}:stream/\\S+" }, "StreamDescription":{ "type":"structure", @@ -1379,6 +1557,25 @@ "UPDATING" ] }, + "StreamSummary":{ + "type":"structure", + "required":[ + "StreamName", + "StreamARN", + "StreamStatus" + ], + "members":{ + "StreamName":{"shape":"StreamName"}, + "StreamARN":{"shape":"StreamARN"}, + "StreamStatus":{"shape":"StreamStatus"}, + "StreamModeDetails":{"shape":"StreamModeDetails"}, + "StreamCreationTimestamp":{"shape":"Timestamp"} + } + }, + "StreamSummaryList":{ + "type":"list", + "member":{"shape":"StreamSummary"} + }, "SubscribeToShardEvent":{ "type":"structure", "required":[ @@ -1419,7 +1616,10 @@ "StartingPosition" ], "members":{ - "ConsumerARN":{"shape":"ConsumerARN"}, + "ConsumerARN":{ + "shape":"ConsumerARN", + "contextParam":{"name":"ConsumerARN"} + }, "ShardId":{"shape":"ShardId"}, "StartingPosition":{"shape":"StartingPosition"} } @@ -1472,14 +1672,17 @@ "UpdateShardCountInput":{ "type":"structure", "required":[ - "StreamName", "TargetShardCount", "ScalingType" ], "members":{ "StreamName":{"shape":"StreamName"}, "TargetShardCount":{"shape":"PositiveIntegerObject"}, - "ScalingType":{"shape":"ScalingType"} + "ScalingType":{"shape":"ScalingType"}, + "StreamARN":{ + "shape":"StreamARN", + "contextParam":{"name":"StreamARN"} + } } }, "UpdateShardCountOutput":{ @@ -1487,7 +1690,8 @@ "members":{ "StreamName":{"shape":"StreamName"}, "CurrentShardCount":{"shape":"PositiveIntegerObject"}, - "TargetShardCount":{"shape":"PositiveIntegerObject"} + "TargetShardCount":{"shape":"PositiveIntegerObject"}, + "StreamARN":{"shape":"StreamARN"} } }, "UpdateStreamModeInput":{ @@ -1497,7 +1701,10 @@ "StreamModeDetails" ], "members":{ - "StreamARN":{"shape":"StreamARN"}, + "StreamARN":{ + "shape":"StreamARN", + "contextParam":{"name":"StreamARN"} + }, "StreamModeDetails":{"shape":"StreamModeDetails"} } }, diff --git a/models/apis/kinesis/2013-12-02/docs-2.json b/models/apis/kinesis/2013-12-02/docs-2.json index db4356eba8..5196727795 100644 --- a/models/apis/kinesis/2013-12-02/docs-2.json +++ b/models/apis/kinesis/2013-12-02/docs-2.json @@ -2,37 +2,42 @@ "version": "2.0", "service": "Amazon Kinesis Data Streams Service API Reference

Amazon Kinesis Data Streams is a managed service that scales elastically for real-time processing of streaming big data.

", "operations": { - "AddTagsToStream": "

Adds or updates tags for the specified Kinesis data stream. You can assign up to 50 tags to a data stream.

If tags have already been assigned to the stream, AddTagsToStream overwrites any existing tags that correspond to the specified tag keys.

AddTagsToStream has a limit of five transactions per second per account.

", - "CreateStream": "

Creates a Kinesis data stream. A stream captures and transports data records that are continuously emitted from different data sources or producers. Scale-out within a stream is explicitly supported by means of shards, which are uniquely identified groups of data records in a stream.

You specify and control the number of shards that a stream is composed of. Each shard can support reads up to five transactions per second, up to a maximum data read total of 2 MiB per second. Each shard can support writes up to 1,000 records per second, up to a maximum data write total of 1 MiB per second. If the amount of data input increases or decreases, you can add or remove shards.

The stream name identifies the stream. The name is scoped to the Amazon Web Services account used by the application. It is also scoped by Amazon Web Services Region. That is, two streams in two different accounts can have the same name, and two streams in the same account, but in two different Regions, can have the same name.

CreateStream is an asynchronous operation. Upon receiving a CreateStream request, Kinesis Data Streams immediately returns and sets the stream status to CREATING. After the stream is created, Kinesis Data Streams sets the stream status to ACTIVE. You should perform read and write operations only on an ACTIVE stream.

You receive a LimitExceededException when making a CreateStream request when you try to do one of the following:

For the default shard limit for an Amazon Web Services account, see Amazon Kinesis Data Streams Limits in the Amazon Kinesis Data Streams Developer Guide. To increase this limit, contact Amazon Web Services Support.

You can use DescribeStreamSummary to check the stream status, which is returned in StreamStatus.

CreateStream has a limit of five transactions per second per account.

", - "DecreaseStreamRetentionPeriod": "

Decreases the Kinesis data stream's retention period, which is the length of time data records are accessible after they are added to the stream. The minimum value of a stream's retention period is 24 hours.

This operation may result in lost data. For example, if the stream's retention period is 48 hours and is decreased to 24 hours, any data already in the stream that is older than 24 hours is inaccessible.

", - "DeleteStream": "

Deletes a Kinesis data stream and all its shards and data. You must shut down any applications that are operating on the stream before you delete the stream. If an application attempts to operate on a deleted stream, it receives the exception ResourceNotFoundException.

If the stream is in the ACTIVE state, you can delete it. After a DeleteStream request, the specified stream is in the DELETING state until Kinesis Data Streams completes the deletion.

Note: Kinesis Data Streams might continue to accept data read and write operations, such as PutRecord, PutRecords, and GetRecords, on a stream in the DELETING state until the stream deletion is complete.

When you delete a stream, any shards in that stream are also deleted, and any tags are dissociated from the stream.

You can use the DescribeStreamSummary operation to check the state of the stream, which is returned in StreamStatus.

DeleteStream has a limit of five transactions per second per account.

", + "AddTagsToStream": "

Adds or updates tags for the specified Kinesis data stream. You can assign up to 50 tags to a data stream.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

If tags have already been assigned to the stream, AddTagsToStream overwrites any existing tags that correspond to the specified tag keys.

AddTagsToStream has a limit of five transactions per second per account.

", + "CreateStream": "

Creates a Kinesis data stream. A stream captures and transports data records that are continuously emitted from different data sources or producers. Scale-out within a stream is explicitly supported by means of shards, which are uniquely identified groups of data records in a stream.

You can create your data stream using either on-demand or provisioned capacity mode. Data streams with an on-demand mode require no capacity planning and automatically scale to handle gigabytes of write and read throughput per minute. With the on-demand mode, Kinesis Data Streams automatically manages the shards in order to provide the necessary throughput. For the data streams with a provisioned mode, you must specify the number of shards for the data stream. Each shard can support reads up to five transactions per second, up to a maximum data read total of 2 MiB per second. Each shard can support writes up to 1,000 records per second, up to a maximum data write total of 1 MiB per second. If the amount of data input increases or decreases, you can add or remove shards.

The stream name identifies the stream. The name is scoped to the Amazon Web Services account used by the application. It is also scoped by Amazon Web Services Region. That is, two streams in two different accounts can have the same name, and two streams in the same account, but in two different Regions, can have the same name.

CreateStream is an asynchronous operation. Upon receiving a CreateStream request, Kinesis Data Streams immediately returns and sets the stream status to CREATING. After the stream is created, Kinesis Data Streams sets the stream status to ACTIVE. You should perform read and write operations only on an ACTIVE stream.

You receive a LimitExceededException when making a CreateStream request when you try to do one of the following:

For the default shard limit for an Amazon Web Services account, see Amazon Kinesis Data Streams Limits in the Amazon Kinesis Data Streams Developer Guide. To increase this limit, contact Amazon Web Services Support.

You can use DescribeStreamSummary to check the stream status, which is returned in StreamStatus.

CreateStream has a limit of five transactions per second per account.

", + "DecreaseStreamRetentionPeriod": "

Decreases the Kinesis data stream's retention period, which is the length of time data records are accessible after they are added to the stream. The minimum value of a stream's retention period is 24 hours.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

This operation may result in lost data. For example, if the stream's retention period is 48 hours and is decreased to 24 hours, any data already in the stream that is older than 24 hours is inaccessible.

", + "DeleteStream": "

Deletes a Kinesis data stream and all its shards and data. You must shut down any applications that are operating on the stream before you delete the stream. If an application attempts to operate on a deleted stream, it receives the exception ResourceNotFoundException.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

If the stream is in the ACTIVE state, you can delete it. After a DeleteStream request, the specified stream is in the DELETING state until Kinesis Data Streams completes the deletion.

Note: Kinesis Data Streams might continue to accept data read and write operations, such as PutRecord, PutRecords, and GetRecords, on a stream in the DELETING state until the stream deletion is complete.

When you delete a stream, any shards in that stream are also deleted, and any tags are dissociated from the stream.

You can use the DescribeStreamSummary operation to check the state of the stream, which is returned in StreamStatus.

DeleteStream has a limit of five transactions per second per account.

", "DeregisterStreamConsumer": "

To deregister a consumer, provide its ARN. Alternatively, you can provide the ARN of the data stream and the name you gave the consumer when you registered it. You may also provide all three parameters, as long as they don't conflict with each other. If you don't know the name or ARN of the consumer that you want to deregister, you can use the ListStreamConsumers operation to get a list of the descriptions of all the consumers that are currently registered with a given data stream. The description of a consumer contains its name and ARN.

This operation has a limit of five transactions per second per stream.

", "DescribeLimits": "

Describes the shard limits and usage for the account.

If you update your account limits, the old limits might be returned for a few minutes.

This operation has a limit of one transaction per second per account.

", - "DescribeStream": "

Describes the specified Kinesis data stream.

This API has been revised. It's highly recommended that you use the DescribeStreamSummary API to get a summarized description of the specified Kinesis data stream and the ListShards API to list the shards in a specified data stream and obtain information about each shard.

The information returned includes the stream name, Amazon Resource Name (ARN), creation time, enhanced metric configuration, and shard map. The shard map is an array of shard objects. For each shard object, there is the hash key and sequence number ranges that the shard spans, and the IDs of any earlier shards that played in a role in creating the shard. Every record ingested in the stream is identified by a sequence number, which is assigned when the record is put into the stream.

You can limit the number of shards returned by each call. For more information, see Retrieving Shards from a Stream in the Amazon Kinesis Data Streams Developer Guide.

There are no guarantees about the chronological order shards returned. To process shards in chronological order, use the ID of the parent shard to track the lineage to the oldest shard.

This operation has a limit of 10 transactions per second per account.

", + "DescribeStream": "

Describes the specified Kinesis data stream.

This API has been revised. It's highly recommended that you use the DescribeStreamSummary API to get a summarized description of the specified Kinesis data stream and the ListShards API to list the shards in a specified data stream and obtain information about each shard.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

The information returned includes the stream name, Amazon Resource Name (ARN), creation time, enhanced metric configuration, and shard map. The shard map is an array of shard objects. For each shard object, there is the hash key and sequence number ranges that the shard spans, and the IDs of any earlier shards that played in a role in creating the shard. Every record ingested in the stream is identified by a sequence number, which is assigned when the record is put into the stream.

You can limit the number of shards returned by each call. For more information, see Retrieving Shards from a Stream in the Amazon Kinesis Data Streams Developer Guide.

There are no guarantees about the chronological order shards returned. To process shards in chronological order, use the ID of the parent shard to track the lineage to the oldest shard.

This operation has a limit of 10 transactions per second per account.

", "DescribeStreamConsumer": "

To get the description of a registered consumer, provide the ARN of the consumer. Alternatively, you can provide the ARN of the data stream and the name you gave the consumer when you registered it. You may also provide all three parameters, as long as they don't conflict with each other. If you don't know the name or ARN of the consumer that you want to describe, you can use the ListStreamConsumers operation to get a list of the descriptions of all the consumers that are currently registered with a given data stream.

This operation has a limit of 20 transactions per second per stream.

", - "DescribeStreamSummary": "

Provides a summarized description of the specified Kinesis data stream without the shard list.

The information returned includes the stream name, Amazon Resource Name (ARN), status, record retention period, approximate creation time, monitoring, encryption details, and open shard count.

DescribeStreamSummary has a limit of 20 transactions per second per account.

", - "DisableEnhancedMonitoring": "

Disables enhanced monitoring.

", - "EnableEnhancedMonitoring": "

Enables enhanced Kinesis data stream monitoring for shard-level metrics.

", - "GetRecords": "

Gets data records from a Kinesis data stream's shard.

Specify a shard iterator using the ShardIterator parameter. The shard iterator specifies the position in the shard from which you want to start reading data records sequentially. If there are no records available in the portion of the shard that the iterator points to, GetRecords returns an empty list. It might take multiple calls to get to a portion of the shard that contains records.

You can scale by provisioning multiple shards per stream while considering service limits (for more information, see Amazon Kinesis Data Streams Limits in the Amazon Kinesis Data Streams Developer Guide). Your application should have one thread per shard, each reading continuously from its stream. To read from a stream continually, call GetRecords in a loop. Use GetShardIterator to get the shard iterator to specify in the first GetRecords call. GetRecords returns a new shard iterator in NextShardIterator. Specify the shard iterator returned in NextShardIterator in subsequent calls to GetRecords. If the shard has been closed, the shard iterator can't return more data and GetRecords returns null in NextShardIterator. You can terminate the loop when the shard is closed, or when the shard iterator reaches the record with the sequence number or other attribute that marks it as the last record to process.

Each data record can be up to 1 MiB in size, and each shard can read up to 2 MiB per second. You can ensure that your calls don't exceed the maximum supported size or throughput by using the Limit parameter to specify the maximum number of records that GetRecords can return. Consider your average record size when determining this limit. The maximum number of records that can be returned per call is 10,000.

The size of the data returned by GetRecords varies depending on the utilization of the shard. It is recommended that consumer applications retrieve records via the GetRecords command using the 5 TPS limit to remain caught up. Retrieving records less frequently can lead to consumer applications falling behind. The maximum size of data that GetRecords can return is 10 MiB. If a call returns this amount of data, subsequent calls made within the next 5 seconds throw ProvisionedThroughputExceededException. If there is insufficient provisioned throughput on the stream, subsequent calls made within the next 1 second throw ProvisionedThroughputExceededException. GetRecords doesn't return any data when it throws an exception. For this reason, we recommend that you wait 1 second between calls to GetRecords. However, it's possible that the application will get exceptions for longer than 1 second.

To detect whether the application is falling behind in processing, you can use the MillisBehindLatest response attribute. You can also monitor the stream using CloudWatch metrics and other mechanisms (see Monitoring in the Amazon Kinesis Data Streams Developer Guide).

Each Amazon Kinesis record includes a value, ApproximateArrivalTimestamp, that is set when a stream successfully receives and stores a record. This is commonly referred to as a server-side time stamp, whereas a client-side time stamp is set when a data producer creates or sends the record to a stream (a data producer is any data source putting data records into a stream, for example with PutRecords). The time stamp has millisecond precision. There are no guarantees about the time stamp accuracy, or that the time stamp is always increasing. For example, records in a shard or across a stream might have time stamps that are out of order.

This operation has a limit of five transactions per second per shard.

", - "GetShardIterator": "

Gets an Amazon Kinesis shard iterator. A shard iterator expires 5 minutes after it is returned to the requester.

A shard iterator specifies the shard position from which to start reading data records sequentially. The position is specified using the sequence number of a data record in a shard. A sequence number is the identifier associated with every record ingested in the stream, and is assigned when a record is put into the stream. Each stream has one or more shards.

You must specify the shard iterator type. For example, you can set the ShardIteratorType parameter to read exactly from the position denoted by a specific sequence number by using the AT_SEQUENCE_NUMBER shard iterator type. Alternatively, the parameter can read right after the sequence number by using the AFTER_SEQUENCE_NUMBER shard iterator type, using sequence numbers returned by earlier calls to PutRecord, PutRecords, GetRecords, or DescribeStream. In the request, you can specify the shard iterator type AT_TIMESTAMP to read records from an arbitrary point in time, TRIM_HORIZON to cause ShardIterator to point to the last untrimmed record in the shard in the system (the oldest data record in the shard), or LATEST so that you always read the most recent data in the shard.

When you read repeatedly from a stream, use a GetShardIterator request to get the first shard iterator for use in your first GetRecords request and for subsequent reads use the shard iterator returned by the GetRecords request in NextShardIterator. A new shard iterator is returned by every GetRecords request in NextShardIterator, which you use in the ShardIterator parameter of the next GetRecords request.

If a GetShardIterator request is made too often, you receive a ProvisionedThroughputExceededException. For more information about throughput limits, see GetRecords, and Streams Limits in the Amazon Kinesis Data Streams Developer Guide.

If the shard is closed, GetShardIterator returns a valid iterator for the last sequence number of the shard. A shard can be closed as a result of using SplitShard or MergeShards.

GetShardIterator has a limit of five transactions per second per account per open shard.

", - "IncreaseStreamRetentionPeriod": "

Increases the Kinesis data stream's retention period, which is the length of time data records are accessible after they are added to the stream. The maximum value of a stream's retention period is 8760 hours (365 days).

If you choose a longer stream retention period, this operation increases the time period during which records that have not yet expired are accessible. However, it does not make previous, expired data (older than the stream's previous retention period) accessible after the operation has been called. For example, if a stream's retention period is set to 24 hours and is increased to 168 hours, any data that is older than 24 hours remains inaccessible to consumer applications.

", - "ListShards": "

Lists the shards in a stream and provides information about each shard. This operation has a limit of 1000 transactions per second per data stream.

This action does not list expired shards. For information about expired shards, see Data Routing, Data Persistence, and Shard State after a Reshard.

This API is a new operation that is used by the Amazon Kinesis Client Library (KCL). If you have a fine-grained IAM policy that only allows specific operations, you must update your policy to allow calls to this API. For more information, see Controlling Access to Amazon Kinesis Data Streams Resources Using IAM.

", + "DescribeStreamSummary": "

Provides a summarized description of the specified Kinesis data stream without the shard list.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

The information returned includes the stream name, Amazon Resource Name (ARN), status, record retention period, approximate creation time, monitoring, encryption details, and open shard count.

DescribeStreamSummary has a limit of 20 transactions per second per account.

", + "DisableEnhancedMonitoring": "

Disables enhanced monitoring.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

", + "EnableEnhancedMonitoring": "

Enables enhanced Kinesis data stream monitoring for shard-level metrics.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

", + "GetRecords": "

Gets data records from a Kinesis data stream's shard.

When invoking this API, it is recommended you use the StreamARN input parameter in addition to the ShardIterator parameter.

Specify a shard iterator using the ShardIterator parameter. The shard iterator specifies the position in the shard from which you want to start reading data records sequentially. If there are no records available in the portion of the shard that the iterator points to, GetRecords returns an empty list. It might take multiple calls to get to a portion of the shard that contains records.

You can scale by provisioning multiple shards per stream while considering service limits (for more information, see Amazon Kinesis Data Streams Limits in the Amazon Kinesis Data Streams Developer Guide). Your application should have one thread per shard, each reading continuously from its stream. To read from a stream continually, call GetRecords in a loop. Use GetShardIterator to get the shard iterator to specify in the first GetRecords call. GetRecords returns a new shard iterator in NextShardIterator. Specify the shard iterator returned in NextShardIterator in subsequent calls to GetRecords. If the shard has been closed, the shard iterator can't return more data and GetRecords returns null in NextShardIterator. You can terminate the loop when the shard is closed, or when the shard iterator reaches the record with the sequence number or other attribute that marks it as the last record to process.

Each data record can be up to 1 MiB in size, and each shard can read up to 2 MiB per second. You can ensure that your calls don't exceed the maximum supported size or throughput by using the Limit parameter to specify the maximum number of records that GetRecords can return. Consider your average record size when determining this limit. The maximum number of records that can be returned per call is 10,000.

The size of the data returned by GetRecords varies depending on the utilization of the shard. It is recommended that consumer applications retrieve records via the GetRecords command using the 5 TPS limit to remain caught up. Retrieving records less frequently can lead to consumer applications falling behind. The maximum size of data that GetRecords can return is 10 MiB. If a call returns this amount of data, subsequent calls made within the next 5 seconds throw ProvisionedThroughputExceededException. If there is insufficient provisioned throughput on the stream, subsequent calls made within the next 1 second throw ProvisionedThroughputExceededException. GetRecords doesn't return any data when it throws an exception. For this reason, we recommend that you wait 1 second between calls to GetRecords. However, it's possible that the application will get exceptions for longer than 1 second.

To detect whether the application is falling behind in processing, you can use the MillisBehindLatest response attribute. You can also monitor the stream using CloudWatch metrics and other mechanisms (see Monitoring in the Amazon Kinesis Data Streams Developer Guide).

Each Amazon Kinesis record includes a value, ApproximateArrivalTimestamp, that is set when a stream successfully receives and stores a record. This is commonly referred to as a server-side time stamp, whereas a client-side time stamp is set when a data producer creates or sends the record to a stream (a data producer is any data source putting data records into a stream, for example with PutRecords). The time stamp has millisecond precision. There are no guarantees about the time stamp accuracy, or that the time stamp is always increasing. For example, records in a shard or across a stream might have time stamps that are out of order.

This operation has a limit of five transactions per second per shard.

", + "GetShardIterator": "

Gets an Amazon Kinesis shard iterator. A shard iterator expires 5 minutes after it is returned to the requester.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

A shard iterator specifies the shard position from which to start reading data records sequentially. The position is specified using the sequence number of a data record in a shard. A sequence number is the identifier associated with every record ingested in the stream, and is assigned when a record is put into the stream. Each stream has one or more shards.

You must specify the shard iterator type. For example, you can set the ShardIteratorType parameter to read exactly from the position denoted by a specific sequence number by using the AT_SEQUENCE_NUMBER shard iterator type. Alternatively, the parameter can read right after the sequence number by using the AFTER_SEQUENCE_NUMBER shard iterator type, using sequence numbers returned by earlier calls to PutRecord, PutRecords, GetRecords, or DescribeStream. In the request, you can specify the shard iterator type AT_TIMESTAMP to read records from an arbitrary point in time, TRIM_HORIZON to cause ShardIterator to point to the last untrimmed record in the shard in the system (the oldest data record in the shard), or LATEST so that you always read the most recent data in the shard.

When you read repeatedly from a stream, use a GetShardIterator request to get the first shard iterator for use in your first GetRecords request and for subsequent reads use the shard iterator returned by the GetRecords request in NextShardIterator. A new shard iterator is returned by every GetRecords request in NextShardIterator, which you use in the ShardIterator parameter of the next GetRecords request.

If a GetShardIterator request is made too often, you receive a ProvisionedThroughputExceededException. For more information about throughput limits, see GetRecords, and Streams Limits in the Amazon Kinesis Data Streams Developer Guide.

If the shard is closed, GetShardIterator returns a valid iterator for the last sequence number of the shard. A shard can be closed as a result of using SplitShard or MergeShards.

GetShardIterator has a limit of five transactions per second per account per open shard.

", + "IncreaseStreamRetentionPeriod": "

Increases the Kinesis data stream's retention period, which is the length of time data records are accessible after they are added to the stream. The maximum value of a stream's retention period is 8760 hours (365 days).

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

If you choose a longer stream retention period, this operation increases the time period during which records that have not yet expired are accessible. However, it does not make previous, expired data (older than the stream's previous retention period) accessible after the operation has been called. For example, if a stream's retention period is set to 24 hours and is increased to 168 hours, any data that is older than 24 hours remains inaccessible to consumer applications.

", + "ListShards": "

Lists the shards in a stream and provides information about each shard. This operation has a limit of 1000 transactions per second per data stream.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

This action does not list expired shards. For information about expired shards, see Data Routing, Data Persistence, and Shard State after a Reshard.

This API is a new operation that is used by the Amazon Kinesis Client Library (KCL). If you have a fine-grained IAM policy that only allows specific operations, you must update your policy to allow calls to this API. For more information, see Controlling Access to Amazon Kinesis Data Streams Resources Using IAM.

", "ListStreamConsumers": "

Lists the consumers registered to receive data from a stream using enhanced fan-out, and provides information about each consumer.

This operation has a limit of 5 transactions per second per stream.

", "ListStreams": "

Lists your Kinesis data streams.

The number of streams may be too large to return from a single call to ListStreams. You can limit the number of returned streams using the Limit parameter. If you do not specify a value for the Limit parameter, Kinesis Data Streams uses the default limit, which is currently 100.

You can detect if there are more streams available to list by using the HasMoreStreams flag from the returned output. If there are more streams available, you can request more streams by using the name of the last stream returned by the ListStreams request in the ExclusiveStartStreamName parameter in a subsequent request to ListStreams. The group of stream names returned by the subsequent request is then added to the list. You can continue this process until all the stream names have been collected in the list.

ListStreams has a limit of five transactions per second per account.

", - "ListTagsForStream": "

Lists the tags for the specified Kinesis data stream. This operation has a limit of five transactions per second per account.

", - "MergeShards": "

Merges two adjacent shards in a Kinesis data stream and combines them into a single shard to reduce the stream's capacity to ingest and transport data. Two shards are considered adjacent if the union of the hash key ranges for the two shards form a contiguous set with no gaps. For example, if you have two shards, one with a hash key range of 276...381 and the other with a hash key range of 382...454, then you could merge these two shards into a single shard that would have a hash key range of 276...454. After the merge, the single child shard receives data for all hash key values covered by the two parent shards.

MergeShards is called when there is a need to reduce the overall capacity of a stream because of excess capacity that is not being used. You must specify the shard to be merged and the adjacent shard for a stream. For more information about merging shards, see Merge Two Shards in the Amazon Kinesis Data Streams Developer Guide.

If the stream is in the ACTIVE state, you can call MergeShards. If a stream is in the CREATING, UPDATING, or DELETING state, MergeShards returns a ResourceInUseException. If the specified stream does not exist, MergeShards returns a ResourceNotFoundException.

You can use DescribeStreamSummary to check the state of the stream, which is returned in StreamStatus.

MergeShards is an asynchronous operation. Upon receiving a MergeShards request, Amazon Kinesis Data Streams immediately returns a response and sets the StreamStatus to UPDATING. After the operation is completed, Kinesis Data Streams sets the StreamStatus to ACTIVE. Read and write operations continue to work while the stream is in the UPDATING state.

You use DescribeStreamSummary and the ListShards APIs to determine the shard IDs that are specified in the MergeShards request.

If you try to operate on too many streams in parallel using CreateStream, DeleteStream, MergeShards, or SplitShard, you receive a LimitExceededException.

MergeShards has a limit of five transactions per second per account.

", - "PutRecord": "

Writes a single data record into an Amazon Kinesis data stream. Call PutRecord to send data into the stream for real-time ingestion and subsequent processing, one record at a time. Each shard can support writes up to 1,000 records per second, up to a maximum data write total of 1 MiB per second.

You must specify the name of the stream that captures, stores, and transports the data; a partition key; and the data blob itself.

The data blob can be any type of data; for example, a segment from a log file, geographic/location data, website clickstream data, and so on.

The partition key is used by Kinesis Data Streams to distribute data across shards. Kinesis Data Streams segregates the data records that belong to a stream into multiple shards, using the partition key associated with each data record to determine the shard to which a given data record belongs.

Partition keys are Unicode strings, with a maximum length limit of 256 characters for each key. An MD5 hash function is used to map partition keys to 128-bit integer values and to map associated data records to shards using the hash key ranges of the shards. You can override hashing the partition key to determine the shard by explicitly specifying a hash value using the ExplicitHashKey parameter. For more information, see Adding Data to a Stream in the Amazon Kinesis Data Streams Developer Guide.

PutRecord returns the shard ID of where the data record was placed and the sequence number that was assigned to the data record.

Sequence numbers increase over time and are specific to a shard within a stream, not across all shards within a stream. To guarantee strictly increasing ordering, write serially to a shard and use the SequenceNumberForOrdering parameter. For more information, see Adding Data to a Stream in the Amazon Kinesis Data Streams Developer Guide.

After you write a record to a stream, you cannot modify that record or its order within the stream.

If a PutRecord request cannot be processed because of insufficient provisioned throughput on the shard involved in the request, PutRecord throws ProvisionedThroughputExceededException.

By default, data records are accessible for 24 hours from the time that they are added to a stream. You can use IncreaseStreamRetentionPeriod or DecreaseStreamRetentionPeriod to modify this retention period.

", - "PutRecords": "

Writes multiple data records into a Kinesis data stream in a single call (also referred to as a PutRecords request). Use this operation to send data into the stream for data ingestion and processing.

Each PutRecords request can support up to 500 records. Each record in the request can be as large as 1 MiB, up to a limit of 5 MiB for the entire request, including partition keys. Each shard can support writes up to 1,000 records per second, up to a maximum data write total of 1 MiB per second.

You must specify the name of the stream that captures, stores, and transports the data; and an array of request Records, with each record in the array requiring a partition key and data blob. The record size limit applies to the total size of the partition key and data blob.

The data blob can be any type of data; for example, a segment from a log file, geographic/location data, website clickstream data, and so on.

The partition key is used by Kinesis Data Streams as input to a hash function that maps the partition key and associated data to a specific shard. An MD5 hash function is used to map partition keys to 128-bit integer values and to map associated data records to shards. As a result of this hashing mechanism, all data records with the same partition key map to the same shard within the stream. For more information, see Adding Data to a Stream in the Amazon Kinesis Data Streams Developer Guide.

Each record in the Records array may include an optional parameter, ExplicitHashKey, which overrides the partition key to shard mapping. This parameter allows a data producer to determine explicitly the shard where the record is stored. For more information, see Adding Multiple Records with PutRecords in the Amazon Kinesis Data Streams Developer Guide.

The PutRecords response includes an array of response Records. Each record in the response array directly correlates with a record in the request array using natural ordering, from the top to the bottom of the request and response. The response Records array always includes the same number of records as the request array.

The response Records array includes both successfully and unsuccessfully processed records. Kinesis Data Streams attempts to process all records in each PutRecords request. A single record failure does not stop the processing of subsequent records. As a result, PutRecords doesn't guarantee the ordering of records. If you need to read records in the same order they are written to the stream, use PutRecord instead of PutRecords, and write to the same shard.

A successfully processed record includes ShardId and SequenceNumber values. The ShardId parameter identifies the shard in the stream where the record is stored. The SequenceNumber parameter is an identifier assigned to the put record, unique to all records in the stream.

An unsuccessfully processed record includes ErrorCode and ErrorMessage values. ErrorCode reflects the type of error and can be one of the following values: ProvisionedThroughputExceededException or InternalFailure. ErrorMessage provides more detailed information about the ProvisionedThroughputExceededException exception including the account ID, stream name, and shard ID of the record that was throttled. For more information about partially successful responses, see Adding Multiple Records with PutRecords in the Amazon Kinesis Data Streams Developer Guide.

After you write a record to a stream, you cannot modify that record or its order within the stream.

By default, data records are accessible for 24 hours from the time that they are added to a stream. You can use IncreaseStreamRetentionPeriod or DecreaseStreamRetentionPeriod to modify this retention period.

", + "ListTagsForStream": "

Lists the tags for the specified Kinesis data stream. This operation has a limit of five transactions per second per account.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

", + "MergeShards": "

Merges two adjacent shards in a Kinesis data stream and combines them into a single shard to reduce the stream's capacity to ingest and transport data. This API is only supported for the data streams with the provisioned capacity mode. Two shards are considered adjacent if the union of the hash key ranges for the two shards form a contiguous set with no gaps. For example, if you have two shards, one with a hash key range of 276...381 and the other with a hash key range of 382...454, then you could merge these two shards into a single shard that would have a hash key range of 276...454. After the merge, the single child shard receives data for all hash key values covered by the two parent shards.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

MergeShards is called when there is a need to reduce the overall capacity of a stream because of excess capacity that is not being used. You must specify the shard to be merged and the adjacent shard for a stream. For more information about merging shards, see Merge Two Shards in the Amazon Kinesis Data Streams Developer Guide.

If the stream is in the ACTIVE state, you can call MergeShards. If a stream is in the CREATING, UPDATING, or DELETING state, MergeShards returns a ResourceInUseException. If the specified stream does not exist, MergeShards returns a ResourceNotFoundException.

You can use DescribeStreamSummary to check the state of the stream, which is returned in StreamStatus.

MergeShards is an asynchronous operation. Upon receiving a MergeShards request, Amazon Kinesis Data Streams immediately returns a response and sets the StreamStatus to UPDATING. After the operation is completed, Kinesis Data Streams sets the StreamStatus to ACTIVE. Read and write operations continue to work while the stream is in the UPDATING state.

You use DescribeStreamSummary and the ListShards APIs to determine the shard IDs that are specified in the MergeShards request.

If you try to operate on too many streams in parallel using CreateStream, DeleteStream, MergeShards, or SplitShard, you receive a LimitExceededException.

MergeShards has a limit of five transactions per second per account.

", + "PutRecord": "

Writes a single data record into an Amazon Kinesis data stream. Call PutRecord to send data into the stream for real-time ingestion and subsequent processing, one record at a time. Each shard can support writes up to 1,000 records per second, up to a maximum data write total of 1 MiB per second.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

You must specify the name of the stream that captures, stores, and transports the data; a partition key; and the data blob itself.

The data blob can be any type of data; for example, a segment from a log file, geographic/location data, website clickstream data, and so on.

The partition key is used by Kinesis Data Streams to distribute data across shards. Kinesis Data Streams segregates the data records that belong to a stream into multiple shards, using the partition key associated with each data record to determine the shard to which a given data record belongs.

Partition keys are Unicode strings, with a maximum length limit of 256 characters for each key. An MD5 hash function is used to map partition keys to 128-bit integer values and to map associated data records to shards using the hash key ranges of the shards. You can override hashing the partition key to determine the shard by explicitly specifying a hash value using the ExplicitHashKey parameter. For more information, see Adding Data to a Stream in the Amazon Kinesis Data Streams Developer Guide.

PutRecord returns the shard ID of where the data record was placed and the sequence number that was assigned to the data record.

Sequence numbers increase over time and are specific to a shard within a stream, not across all shards within a stream. To guarantee strictly increasing ordering, write serially to a shard and use the SequenceNumberForOrdering parameter. For more information, see Adding Data to a Stream in the Amazon Kinesis Data Streams Developer Guide.

After you write a record to a stream, you cannot modify that record or its order within the stream.

If a PutRecord request cannot be processed because of insufficient provisioned throughput on the shard involved in the request, PutRecord throws ProvisionedThroughputExceededException.

By default, data records are accessible for 24 hours from the time that they are added to a stream. You can use IncreaseStreamRetentionPeriod or DecreaseStreamRetentionPeriod to modify this retention period.

", + "PutRecords": "

Writes multiple data records into a Kinesis data stream in a single call (also referred to as a PutRecords request). Use this operation to send data into the stream for data ingestion and processing.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

Each PutRecords request can support up to 500 records. Each record in the request can be as large as 1 MiB, up to a limit of 5 MiB for the entire request, including partition keys. Each shard can support writes up to 1,000 records per second, up to a maximum data write total of 1 MiB per second.

You must specify the name of the stream that captures, stores, and transports the data; and an array of request Records, with each record in the array requiring a partition key and data blob. The record size limit applies to the total size of the partition key and data blob.

The data blob can be any type of data; for example, a segment from a log file, geographic/location data, website clickstream data, and so on.

The partition key is used by Kinesis Data Streams as input to a hash function that maps the partition key and associated data to a specific shard. An MD5 hash function is used to map partition keys to 128-bit integer values and to map associated data records to shards. As a result of this hashing mechanism, all data records with the same partition key map to the same shard within the stream. For more information, see Adding Data to a Stream in the Amazon Kinesis Data Streams Developer Guide.

Each record in the Records array may include an optional parameter, ExplicitHashKey, which overrides the partition key to shard mapping. This parameter allows a data producer to determine explicitly the shard where the record is stored. For more information, see Adding Multiple Records with PutRecords in the Amazon Kinesis Data Streams Developer Guide.

The PutRecords response includes an array of response Records. Each record in the response array directly correlates with a record in the request array using natural ordering, from the top to the bottom of the request and response. The response Records array always includes the same number of records as the request array.

The response Records array includes both successfully and unsuccessfully processed records. Kinesis Data Streams attempts to process all records in each PutRecords request. A single record failure does not stop the processing of subsequent records. As a result, PutRecords doesn't guarantee the ordering of records. If you need to read records in the same order they are written to the stream, use PutRecord instead of PutRecords, and write to the same shard.

A successfully processed record includes ShardId and SequenceNumber values. The ShardId parameter identifies the shard in the stream where the record is stored. The SequenceNumber parameter is an identifier assigned to the put record, unique to all records in the stream.

An unsuccessfully processed record includes ErrorCode and ErrorMessage values. ErrorCode reflects the type of error and can be one of the following values: ProvisionedThroughputExceededException or InternalFailure. ErrorMessage provides more detailed information about the ProvisionedThroughputExceededException exception including the account ID, stream name, and shard ID of the record that was throttled. For more information about partially successful responses, see Adding Multiple Records with PutRecords in the Amazon Kinesis Data Streams Developer Guide.

After you write a record to a stream, you cannot modify that record or its order within the stream.

By default, data records are accessible for 24 hours from the time that they are added to a stream. You can use IncreaseStreamRetentionPeriod or DecreaseStreamRetentionPeriod to modify this retention period.

", "RegisterStreamConsumer": "

Registers a consumer with a Kinesis data stream. When you use this operation, the consumer you register can then call SubscribeToShard to receive data from the stream using enhanced fan-out, at a rate of up to 2 MiB per second for every shard you subscribe to. This rate is unaffected by the total number of consumers that read from the same stream.

You can register up to 20 consumers per stream. A given consumer can only be registered with one stream at a time.

For an example of how to use this operations, see Enhanced Fan-Out Using the Kinesis Data Streams API.

The use of this operation has a limit of five transactions per second per account. Also, only 5 consumers can be created simultaneously. In other words, you cannot have more than 5 consumers in a CREATING status at the same time. Registering a 6th consumer while there are 5 in a CREATING status results in a LimitExceededException.

", - "RemoveTagsFromStream": "

Removes tags from the specified Kinesis data stream. Removed tags are deleted and cannot be recovered after this operation successfully completes.

If you specify a tag that does not exist, it is ignored.

RemoveTagsFromStream has a limit of five transactions per second per account.

", - "SplitShard": "

Splits a shard into two new shards in the Kinesis data stream, to increase the stream's capacity to ingest and transport data. SplitShard is called when there is a need to increase the overall capacity of a stream because of an expected increase in the volume of data records being ingested.

You can also use SplitShard when a shard appears to be approaching its maximum utilization; for example, the producers sending data into the specific shard are suddenly sending more than previously anticipated. You can also call SplitShard to increase stream capacity, so that more Kinesis Data Streams applications can simultaneously read data from the stream for real-time processing.

You must specify the shard to be split and the new hash key, which is the position in the shard where the shard gets split in two. In many cases, the new hash key might be the average of the beginning and ending hash key, but it can be any hash key value in the range being mapped into the shard. For more information, see Split a Shard in the Amazon Kinesis Data Streams Developer Guide.

You can use DescribeStreamSummary and the ListShards APIs to determine the shard ID and hash key values for the ShardToSplit and NewStartingHashKey parameters that are specified in the SplitShard request.

SplitShard is an asynchronous operation. Upon receiving a SplitShard request, Kinesis Data Streams immediately returns a response and sets the stream status to UPDATING. After the operation is completed, Kinesis Data Streams sets the stream status to ACTIVE. Read and write operations continue to work while the stream is in the UPDATING state.

You can use DescribeStreamSummary to check the status of the stream, which is returned in StreamStatus. If the stream is in the ACTIVE state, you can call SplitShard.

If the specified stream does not exist, DescribeStreamSummary returns a ResourceNotFoundException. If you try to create more shards than are authorized for your account, you receive a LimitExceededException.

For the default shard limit for an Amazon Web Services account, see Kinesis Data Streams Limits in the Amazon Kinesis Data Streams Developer Guide. To increase this limit, contact Amazon Web Services Support.

If you try to operate on too many streams simultaneously using CreateStream, DeleteStream, MergeShards, and/or SplitShard, you receive a LimitExceededException.

SplitShard has a limit of five transactions per second per account.

", - "StartStreamEncryption": "

Enables or updates server-side encryption using an Amazon Web Services KMS key for a specified stream.

Starting encryption is an asynchronous operation. Upon receiving the request, Kinesis Data Streams returns immediately and sets the status of the stream to UPDATING. After the update is complete, Kinesis Data Streams sets the status of the stream back to ACTIVE. Updating or applying encryption normally takes a few seconds to complete, but it can take minutes. You can continue to read and write data to your stream while its status is UPDATING. Once the status of the stream is ACTIVE, encryption begins for records written to the stream.

API Limits: You can successfully apply a new Amazon Web Services KMS key for server-side encryption 25 times in a rolling 24-hour period.

Note: It can take up to 5 seconds after the stream is in an ACTIVE status before all records written to the stream are encrypted. After you enable encryption, you can verify that encryption is applied by inspecting the API response from PutRecord or PutRecords.

", - "StopStreamEncryption": "

Disables server-side encryption for a specified stream.

Stopping encryption is an asynchronous operation. Upon receiving the request, Kinesis Data Streams returns immediately and sets the status of the stream to UPDATING. After the update is complete, Kinesis Data Streams sets the status of the stream back to ACTIVE. Stopping encryption normally takes a few seconds to complete, but it can take minutes. You can continue to read and write data to your stream while its status is UPDATING. Once the status of the stream is ACTIVE, records written to the stream are no longer encrypted by Kinesis Data Streams.

API Limits: You can successfully disable server-side encryption 25 times in a rolling 24-hour period.

Note: It can take up to 5 seconds after the stream is in an ACTIVE status before all records written to the stream are no longer subject to encryption. After you disabled encryption, you can verify that encryption is not applied by inspecting the API response from PutRecord or PutRecords.

", + "RemoveTagsFromStream": "

Removes tags from the specified Kinesis data stream. Removed tags are deleted and cannot be recovered after this operation successfully completes.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

If you specify a tag that does not exist, it is ignored.

RemoveTagsFromStream has a limit of five transactions per second per account.

", + "SplitShard": "

Splits a shard into two new shards in the Kinesis data stream, to increase the stream's capacity to ingest and transport data. SplitShard is called when there is a need to increase the overall capacity of a stream because of an expected increase in the volume of data records being ingested. This API is only supported for the data streams with the provisioned capacity mode.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

You can also use SplitShard when a shard appears to be approaching its maximum utilization; for example, the producers sending data into the specific shard are suddenly sending more than previously anticipated. You can also call SplitShard to increase stream capacity, so that more Kinesis Data Streams applications can simultaneously read data from the stream for real-time processing.

You must specify the shard to be split and the new hash key, which is the position in the shard where the shard gets split in two. In many cases, the new hash key might be the average of the beginning and ending hash key, but it can be any hash key value in the range being mapped into the shard. For more information, see Split a Shard in the Amazon Kinesis Data Streams Developer Guide.

You can use DescribeStreamSummary and the ListShards APIs to determine the shard ID and hash key values for the ShardToSplit and NewStartingHashKey parameters that are specified in the SplitShard request.

SplitShard is an asynchronous operation. Upon receiving a SplitShard request, Kinesis Data Streams immediately returns a response and sets the stream status to UPDATING. After the operation is completed, Kinesis Data Streams sets the stream status to ACTIVE. Read and write operations continue to work while the stream is in the UPDATING state.

You can use DescribeStreamSummary to check the status of the stream, which is returned in StreamStatus. If the stream is in the ACTIVE state, you can call SplitShard.

If the specified stream does not exist, DescribeStreamSummary returns a ResourceNotFoundException. If you try to create more shards than are authorized for your account, you receive a LimitExceededException.

For the default shard limit for an Amazon Web Services account, see Kinesis Data Streams Limits in the Amazon Kinesis Data Streams Developer Guide. To increase this limit, contact Amazon Web Services Support.

If you try to operate on too many streams simultaneously using CreateStream, DeleteStream, MergeShards, and/or SplitShard, you receive a LimitExceededException.

SplitShard has a limit of five transactions per second per account.

", + "StartStreamEncryption": "

Enables or updates server-side encryption using an Amazon Web Services KMS key for a specified stream.

Starting encryption is an asynchronous operation. Upon receiving the request, Kinesis Data Streams returns immediately and sets the status of the stream to UPDATING. After the update is complete, Kinesis Data Streams sets the status of the stream back to ACTIVE. Updating or applying encryption normally takes a few seconds to complete, but it can take minutes. You can continue to read and write data to your stream while its status is UPDATING. Once the status of the stream is ACTIVE, encryption begins for records written to the stream.

API Limits: You can successfully apply a new Amazon Web Services KMS key for server-side encryption 25 times in a rolling 24-hour period.

Note: It can take up to 5 seconds after the stream is in an ACTIVE status before all records written to the stream are encrypted. After you enable encryption, you can verify that encryption is applied by inspecting the API response from PutRecord or PutRecords.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

", + "StopStreamEncryption": "

Disables server-side encryption for a specified stream.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

Stopping encryption is an asynchronous operation. Upon receiving the request, Kinesis Data Streams returns immediately and sets the status of the stream to UPDATING. After the update is complete, Kinesis Data Streams sets the status of the stream back to ACTIVE. Stopping encryption normally takes a few seconds to complete, but it can take minutes. You can continue to read and write data to your stream while its status is UPDATING. Once the status of the stream is ACTIVE, records written to the stream are no longer encrypted by Kinesis Data Streams.

API Limits: You can successfully disable server-side encryption 25 times in a rolling 24-hour period.

Note: It can take up to 5 seconds after the stream is in an ACTIVE status before all records written to the stream are no longer subject to encryption. After you disabled encryption, you can verify that encryption is not applied by inspecting the API response from PutRecord or PutRecords.

", "SubscribeToShard": "

This operation establishes an HTTP/2 connection between the consumer you specify in the ConsumerARN parameter and the shard you specify in the ShardId parameter. After the connection is successfully established, Kinesis Data Streams pushes records from the shard to the consumer over this connection. Before you call this operation, call RegisterStreamConsumer to register the consumer with Kinesis Data Streams.

When the SubscribeToShard call succeeds, your consumer starts receiving events of type SubscribeToShardEvent over the HTTP/2 connection for up to 5 minutes, after which time you need to call SubscribeToShard again to renew the subscription if you want to continue to receive records.

You can make one call to SubscribeToShard per second per registered consumer per shard. For example, if you have a 4000 shard stream and two registered stream consumers, you can make one SubscribeToShard request per second for each combination of shard and registered consumer, allowing you to subscribe both consumers to all 4000 shards in one second.

If you call SubscribeToShard again with the same ConsumerARN and ShardId within 5 seconds of a successful call, you'll get a ResourceInUseException. If you call SubscribeToShard 5 seconds or more after a successful call, the second call takes over the subscription and the previous connection expires or fails with a ResourceInUseException.

For an example of how to use this operations, see Enhanced Fan-Out Using the Kinesis Data Streams API.

", - "UpdateShardCount": "

Updates the shard count of the specified stream to the specified number of shards.

Updating the shard count is an asynchronous operation. Upon receiving the request, Kinesis Data Streams returns immediately and sets the status of the stream to UPDATING. After the update is complete, Kinesis Data Streams sets the status of the stream back to ACTIVE. Depending on the size of the stream, the scaling action could take a few minutes to complete. You can continue to read and write data to your stream while its status is UPDATING.

To update the shard count, Kinesis Data Streams performs splits or merges on individual shards. This can cause short-lived shards to be created, in addition to the final shards. These short-lived shards count towards your total shard limit for your account in the Region.

When using this operation, we recommend that you specify a target shard count that is a multiple of 25% (25%, 50%, 75%, 100%). You can specify any target value within your shard limit. However, if you specify a target that isn't a multiple of 25%, the scaling action might take longer to complete.

This operation has the following default limits. By default, you cannot do the following:

For the default limits for an Amazon Web Services account, see Streams Limits in the Amazon Kinesis Data Streams Developer Guide. To request an increase in the call rate limit, the shard limit for this API, or your overall shard limit, use the limits form.

", + "UpdateShardCount": "

Updates the shard count of the specified stream to the specified number of shards. This API is only supported for the data streams with the provisioned capacity mode.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

Updating the shard count is an asynchronous operation. Upon receiving the request, Kinesis Data Streams returns immediately and sets the status of the stream to UPDATING. After the update is complete, Kinesis Data Streams sets the status of the stream back to ACTIVE. Depending on the size of the stream, the scaling action could take a few minutes to complete. You can continue to read and write data to your stream while its status is UPDATING.

To update the shard count, Kinesis Data Streams performs splits or merges on individual shards. This can cause short-lived shards to be created, in addition to the final shards. These short-lived shards count towards your total shard limit for your account in the Region.

When using this operation, we recommend that you specify a target shard count that is a multiple of 25% (25%, 50%, 75%, 100%). You can specify any target value within your shard limit. However, if you specify a target that isn't a multiple of 25%, the scaling action might take longer to complete.

This operation has the following default limits. By default, you cannot do the following:

For the default limits for an Amazon Web Services account, see Streams Limits in the Amazon Kinesis Data Streams Developer Guide. To request an increase in the call rate limit, the shard limit for this API, or your overall shard limit, use the limits form.

", "UpdateStreamMode": "

Updates the capacity mode of the data stream. Currently, in Kinesis Data Streams, you can choose between an on-demand capacity mode and a provisioned capacity mode for your data stream.

" }, "shapes": { + "AccessDeniedException": { + "base": "

Specifies that you do not have the permissions required to perform this operation.

", + "refs": { + } + }, "AddTagsToStreamInput": { "base": "

Represents the input for AddTagsToStream.

", "refs": { @@ -235,6 +240,7 @@ "ErrorMessage": { "base": null, "refs": { + "AccessDeniedException$message": null, "ExpiredIteratorException$message": "

A message that provides information about the error.

", "ExpiredNextTokenException$message": null, "InternalFailureException$message": null, @@ -470,7 +476,9 @@ "ListShardsInput$NextToken": "

When the number of shards in the data stream is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of shards in the data stream, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListShards to list the next set of shards.

Don't specify StreamName or StreamCreationTimestamp if you specify NextToken because the latter unambiguously identifies the stream.

You can optionally specify a value for the MaxResults parameter when you specify NextToken. If you specify a MaxResults value that is less than the number of shards that the operation returns if you don't specify MaxResults, the response will contain a new NextToken value. You can use the new NextToken value in a subsequent call to the ListShards operation.

Tokens expire after 300 seconds. When you obtain a value for NextToken in the response to a call to ListShards, you have 300 seconds to use that value. If you specify an expired token in a call to ListShards, you get ExpiredNextTokenException.

", "ListShardsOutput$NextToken": "

When the number of shards in the data stream is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of shards in the data stream, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListShards to list the next set of shards. For more information about the use of this pagination token when calling the ListShards operation, see ListShardsInput$NextToken.

Tokens expire after 300 seconds. When you obtain a value for NextToken in the response to a call to ListShards, you have 300 seconds to use that value. If you specify an expired token in a call to ListShards, you get ExpiredNextTokenException.

", "ListStreamConsumersInput$NextToken": "

When the number of consumers that are registered with the data stream is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of consumers that are registered with the data stream, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListStreamConsumers to list the next set of registered consumers.

Don't specify StreamName or StreamCreationTimestamp if you specify NextToken because the latter unambiguously identifies the stream.

You can optionally specify a value for the MaxResults parameter when you specify NextToken. If you specify a MaxResults value that is less than the number of consumers that the operation returns if you don't specify MaxResults, the response will contain a new NextToken value. You can use the new NextToken value in a subsequent call to the ListStreamConsumers operation to list the next set of consumers.

Tokens expire after 300 seconds. When you obtain a value for NextToken in the response to a call to ListStreamConsumers, you have 300 seconds to use that value. If you specify an expired token in a call to ListStreamConsumers, you get ExpiredNextTokenException.

", - "ListStreamConsumersOutput$NextToken": "

When the number of consumers that are registered with the data stream is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of registered consumers, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListStreamConsumers to list the next set of registered consumers. For more information about the use of this pagination token when calling the ListStreamConsumers operation, see ListStreamConsumersInput$NextToken.

Tokens expire after 300 seconds. When you obtain a value for NextToken in the response to a call to ListStreamConsumers, you have 300 seconds to use that value. If you specify an expired token in a call to ListStreamConsumers, you get ExpiredNextTokenException.

" + "ListStreamConsumersOutput$NextToken": "

When the number of consumers that are registered with the data stream is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of registered consumers, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListStreamConsumers to list the next set of registered consumers. For more information about the use of this pagination token when calling the ListStreamConsumers operation, see ListStreamConsumersInput$NextToken.

Tokens expire after 300 seconds. When you obtain a value for NextToken in the response to a call to ListStreamConsumers, you have 300 seconds to use that value. If you specify an expired token in a call to ListStreamConsumers, you get ExpiredNextTokenException.

", + "ListStreamsInput$NextToken": "

", + "ListStreamsOutput$NextToken": "

" } }, "OnDemandStreamCountLimitObject": { @@ -725,13 +733,36 @@ "StreamARN": { "base": null, "refs": { + "AddTagsToStreamInput$StreamARN": "

The ARN of the stream.

", "ConsumerDescription$StreamARN": "

The ARN of the stream with which you registered the consumer.

", + "DecreaseStreamRetentionPeriodInput$StreamARN": "

The ARN of the stream.

", + "DeleteStreamInput$StreamARN": "

The ARN of the stream.

", "DeregisterStreamConsumerInput$StreamARN": "

The ARN of the Kinesis data stream that the consumer is registered with. For more information, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces.

", "DescribeStreamConsumerInput$StreamARN": "

The ARN of the Kinesis data stream that the consumer is registered with. For more information, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces.

", + "DescribeStreamInput$StreamARN": "

The ARN of the stream.

", + "DescribeStreamSummaryInput$StreamARN": "

The ARN of the stream.

", + "DisableEnhancedMonitoringInput$StreamARN": "

The ARN of the stream.

", + "EnableEnhancedMonitoringInput$StreamARN": "

The ARN of the stream.

", + "EnhancedMonitoringOutput$StreamARN": "

The ARN of the stream.

", + "GetRecordsInput$StreamARN": "

The ARN of the stream.

", + "GetShardIteratorInput$StreamARN": "

The ARN of the stream.

", + "IncreaseStreamRetentionPeriodInput$StreamARN": "

The ARN of the stream.

", + "ListShardsInput$StreamARN": "

The ARN of the stream.

", "ListStreamConsumersInput$StreamARN": "

The ARN of the Kinesis data stream for which you want to list the registered consumers. For more information, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces.

", + "ListTagsForStreamInput$StreamARN": "

The ARN of the stream.

", + "MergeShardsInput$StreamARN": "

The ARN of the stream.

", + "PutRecordInput$StreamARN": "

The ARN of the stream.

", + "PutRecordsInput$StreamARN": "

The ARN of the stream.

", "RegisterStreamConsumerInput$StreamARN": "

The ARN of the Kinesis data stream that you want to register the consumer with. For more info, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces.

", + "RemoveTagsFromStreamInput$StreamARN": "

The ARN of the stream.

", + "SplitShardInput$StreamARN": "

The ARN of the stream.

", + "StartStreamEncryptionInput$StreamARN": "

The ARN of the stream.

", + "StopStreamEncryptionInput$StreamARN": "

The ARN of the stream.

", "StreamDescription$StreamARN": "

The Amazon Resource Name (ARN) for the stream being described.

", "StreamDescriptionSummary$StreamARN": "

The Amazon Resource Name (ARN) for the stream being described.

", + "StreamSummary$StreamARN": "

The ARN of the stream.

", + "UpdateShardCountInput$StreamARN": "

The ARN of the stream.

", + "UpdateShardCountOutput$StreamARN": "

The ARN of the stream.

", "UpdateStreamModeInput$StreamARN": "

Specifies the ARN of the data stream whose capacity mode you want to update.

" } }, @@ -759,6 +790,7 @@ "CreateStreamInput$StreamModeDetails": "

Indicates the capacity mode of the data stream. Currently, in Kinesis Data Streams, you can choose between an on-demand capacity mode and a provisioned capacity mode for your data streams.

", "StreamDescription$StreamModeDetails": "

Specifies the capacity mode to which you want to set your data stream. Currently, in Kinesis Data Streams, you can choose between an on-demand capacity mode and a provisioned capacity mode for your data streams.

", "StreamDescriptionSummary$StreamModeDetails": "

Specifies the capacity mode to which you want to set your data stream. Currently, in Kinesis Data Streams, you can choose between an on-demand ycapacity mode and a provisioned capacity mode for your data streams.

", + "StreamSummary$StreamModeDetails": null, "UpdateStreamModeInput$StreamModeDetails": "

Specifies the capacity mode to which you want to set your data stream. Currently, in Kinesis Data Streams, you can choose between an on-demand capacity mode and a provisioned capacity mode for your data streams.

" } }, @@ -789,6 +821,7 @@ "StreamDescription$StreamName": "

The name of the stream being described.

", "StreamDescriptionSummary$StreamName": "

The name of the stream being described.

", "StreamNameList$member": null, + "StreamSummary$StreamName": "

The name of a stream.

", "UpdateShardCountInput$StreamName": "

The name of the stream.

", "UpdateShardCountOutput$StreamName": "

The name of the stream.

" } @@ -803,7 +836,20 @@ "base": null, "refs": { "StreamDescription$StreamStatus": "

The current status of the stream being described. The stream status is one of the following states:

", - "StreamDescriptionSummary$StreamStatus": "

The current status of the stream being described. The stream status is one of the following states:

" + "StreamDescriptionSummary$StreamStatus": "

The current status of the stream being described. The stream status is one of the following states:

", + "StreamSummary$StreamStatus": "

The status of the stream.

" + } + }, + "StreamSummary": { + "base": "

The summary of a stream.

", + "refs": { + "StreamSummaryList$member": null + } + }, + "StreamSummaryList": { + "base": null, + "refs": { + "ListStreamsOutput$StreamSummaries": "

" } }, "SubscribeToShardEvent": { @@ -880,7 +926,8 @@ "ShardFilter$Timestamp": "

The timestamps specified in the ShardFilter parameter. A timestamp is a Unix epoch date with precision in milliseconds. For example, 2016-04-04T19:58:46.480-00:00 or 1459799926.480. This property can only be used if FROM_TIMESTAMP or AT_TIMESTAMP shard types are specified.

", "StartingPosition$Timestamp": "

The time stamp of the data record from which to start reading. To specify a time stamp, set StartingPosition to Type AT_TIMESTAMP. A time stamp is the Unix epoch date with precision in milliseconds. For example, 2016-04-04T19:58:46.480-00:00 or 1459799926.480. If a record with this exact time stamp does not exist, records will be streamed from the next (later) record. If the time stamp is older than the current trim horizon, records will be streamed from the oldest untrimmed data record (TRIM_HORIZON).

", "StreamDescription$StreamCreationTimestamp": "

The approximate time that the stream was created.

", - "StreamDescriptionSummary$StreamCreationTimestamp": "

The approximate time that the stream was created.

" + "StreamDescriptionSummary$StreamCreationTimestamp": "

The approximate time that the stream was created.

", + "StreamSummary$StreamCreationTimestamp": "

The timestamp at which the stream was created.

" } }, "UpdateShardCountInput": { @@ -899,7 +946,7 @@ } }, "ValidationException": { - "base": "

", + "base": "

Specifies that you tried to invoke this API for a data stream with the on-demand capacity mode. This API is only supported for data streams with the provisioned capacity mode.

", "refs": { } } diff --git a/models/apis/kinesis/2013-12-02/endpoint-rule-set-1.json b/models/apis/kinesis/2013-12-02/endpoint-rule-set-1.json new file mode 100644 index 0000000000..aaa20c5f68 --- /dev/null +++ b/models/apis/kinesis/2013-12-02/endpoint-rule-set-1.json @@ -0,0 +1,1379 @@ +{ + "version": "1.3", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": true, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + }, + "StreamARN": { + "required": false, + "documentation": "The ARN of the Kinesis stream", + "type": "String" + }, + "OperationType": { + "required": false, + "documentation": "Internal parameter to distinguish between Control/Data plane API and accordingly generate control/data plane endpoint", + "type": "String" + }, + "ConsumerARN": { + "required": false, + "documentation": "The ARN of the Kinesis consumer", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "StreamARN" + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + }, + "aws-iso" + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + }, + "aws-iso-b" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "aws.parseArn", + "argv": [ + { + "ref": "StreamARN" + } + ], + "assign": "arn" + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "isValidHostLabel", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "arn" + }, + "accountId" + ] + }, + false + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "isValidHostLabel", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "arn" + }, + "region" + ] + }, + false + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "arn" + }, + "service" + ] + }, + "kinesis" + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "arn" + }, + "resourceId[0]" + ], + "assign": "arnType" + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "arnType" + }, + "" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "arnType" + }, + "stream" + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + }, + "{arn#partition}" + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "OperationType" + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://{arn#accountId}.{OperationType}-kinesis-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "DualStack is enabled, but this partition does not support DualStack.", + "type": "error" + } + ] + } + ] + }, + { + "conditions": [], + "error": "FIPS is enabled, but this partition does not support FIPS.", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://{arn#accountId}.{OperationType}-kinesis-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://{arn#accountId}.{OperationType}-kinesis.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://{arn#accountId}.{OperationType}-kinesis.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, + { + "conditions": [], + "error": "Operation Type is not set. Please contact service team for resolution.", + "type": "error" + } + ] + } + ] + }, + { + "conditions": [], + "error": "Partition: {arn#partition} from ARN doesn't match with partition name: {PartitionResult#name}.", + "type": "error" + } + ] + } + ] + }, + { + "conditions": [], + "error": "Invalid ARN: Kinesis ARNs don't support `{arnType}` arn types.", + "type": "error" + } + ] + } + ] + }, + { + "conditions": [], + "error": "Invalid ARN: No ARN type specified", + "type": "error" + } + ] + } + ] + }, + { + "conditions": [], + "error": "Invalid ARN: The ARN was not for the Kinesis service, found: {arn#service}.", + "type": "error" + } + ] + } + ] + }, + { + "conditions": [], + "error": "Invalid ARN: Invalid region.", + "type": "error" + } + ] + } + ] + }, + { + "conditions": [], + "error": "Invalid ARN: Invalid account id.", + "type": "error" + } + ] + } + ] + }, + { + "conditions": [], + "error": "Invalid ARN: Failed to parse ARN.", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "ConsumerARN" + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + }, + "aws-iso" + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + }, + "aws-iso-b" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "aws.parseArn", + "argv": [ + { + "ref": "ConsumerARN" + } + ], + "assign": "arn" + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "isValidHostLabel", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "arn" + }, + "accountId" + ] + }, + false + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "isValidHostLabel", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "arn" + }, + "region" + ] + }, + false + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "arn" + }, + "service" + ] + }, + "kinesis" + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "arn" + }, + "resourceId[0]" + ], + "assign": "arnType" + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "arnType" + }, + "" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "arnType" + }, + "stream" + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + }, + "{arn#partition}" + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "OperationType" + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://{arn#accountId}.{OperationType}-kinesis-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "DualStack is enabled, but this partition does not support DualStack.", + "type": "error" + } + ] + } + ] + }, + { + "conditions": [], + "error": "FIPS is enabled, but this partition does not support FIPS.", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://{arn#accountId}.{OperationType}-kinesis-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://{arn#accountId}.{OperationType}-kinesis.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://{arn#accountId}.{OperationType}-kinesis.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, + { + "conditions": [], + "error": "Operation Type is not set. Please contact service team for resolution.", + "type": "error" + } + ] + } + ] + }, + { + "conditions": [], + "error": "Partition: {arn#partition} from ARN doesn't match with partition name: {PartitionResult#name}.", + "type": "error" + } + ] + } + ] + }, + { + "conditions": [], + "error": "Invalid ARN: Kinesis ARNs don't support `{arnType}` arn types.", + "type": "error" + } + ] + } + ] + }, + { + "conditions": [], + "error": "Invalid ARN: No ARN type specified", + "type": "error" + } + ] + } + ] + }, + { + "conditions": [], + "error": "Invalid ARN: The ARN was not for the Kinesis service, found: {arn#service}.", + "type": "error" + } + ] + } + ] + }, + { + "conditions": [], + "error": "Invalid ARN: Invalid region.", + "type": "error" + } + ] + } + ] + }, + { + "conditions": [], + "error": "Invalid ARN: Invalid account id.", + "type": "error" + } + ] + } + ] + }, + { + "conditions": [], + "error": "Invalid ARN: Failed to parse ARN.", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://kinesis-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://kinesis-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://kinesis.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://kinesis.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] +} \ No newline at end of file diff --git a/models/apis/kinesis/2013-12-02/endpoint-tests-1.json b/models/apis/kinesis/2013-12-02/endpoint-tests-1.json new file mode 100644 index 0000000000..369124b9c7 --- /dev/null +++ b/models/apis/kinesis/2013-12-02/endpoint-tests-1.json @@ -0,0 +1,2686 @@ +{ + "testCases": [ + { + "documentation": "For region ap-south-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.ap-south-2.api.aws" + } + }, + "params": { + "Region": "ap-south-2", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region ap-south-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.ap-south-2.amazonaws.com" + } + }, + "params": { + "Region": "ap-south-2", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-south-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.ap-south-2.api.aws" + } + }, + "params": { + "Region": "ap-south-2", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region ap-south-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.ap-south-2.amazonaws.com" + } + }, + "params": { + "Region": "ap-south-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-south-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.ap-south-1.api.aws" + } + }, + "params": { + "Region": "ap-south-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region ap-south-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.ap-south-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-south-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-south-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.ap-south-1.api.aws" + } + }, + "params": { + "Region": "ap-south-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region ap-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.ap-south-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-south-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.eu-south-1.api.aws" + } + }, + "params": { + "Region": "eu-south-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region eu-south-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.eu-south-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-south-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-south-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.eu-south-1.api.aws" + } + }, + "params": { + "Region": "eu-south-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region eu-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.eu-south-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-south-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.eu-south-2.api.aws" + } + }, + "params": { + "Region": "eu-south-2", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region eu-south-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.eu-south-2.amazonaws.com" + } + }, + "params": { + "Region": "eu-south-2", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-south-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.eu-south-2.api.aws" + } + }, + "params": { + "Region": "eu-south-2", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region eu-south-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.eu-south-2.amazonaws.com" + } + }, + "params": { + "Region": "eu-south-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region me-central-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.me-central-1.api.aws" + } + }, + "params": { + "Region": "me-central-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region me-central-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.me-central-1.amazonaws.com" + } + }, + "params": { + "Region": "me-central-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region me-central-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.me-central-1.api.aws" + } + }, + "params": { + "Region": "me-central-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region me-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.me-central-1.amazonaws.com" + } + }, + "params": { + "Region": "me-central-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ca-central-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.ca-central-1.api.aws" + } + }, + "params": { + "Region": "ca-central-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region ca-central-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.ca-central-1.amazonaws.com" + } + }, + "params": { + "Region": "ca-central-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region ca-central-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.ca-central-1.api.aws" + } + }, + "params": { + "Region": "ca-central-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region ca-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.ca-central-1.amazonaws.com" + } + }, + "params": { + "Region": "ca-central-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-central-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.eu-central-1.api.aws" + } + }, + "params": { + "Region": "eu-central-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region eu-central-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.eu-central-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-central-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-central-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.eu-central-1.api.aws" + } + }, + "params": { + "Region": "eu-central-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region eu-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.eu-central-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-central-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-west-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-west-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-west-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.us-iso-west-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-west-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-west-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-west-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.us-iso-west-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-central-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.eu-central-2.api.aws" + } + }, + "params": { + "Region": "eu-central-2", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region eu-central-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.eu-central-2.amazonaws.com" + } + }, + "params": { + "Region": "eu-central-2", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-central-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.eu-central-2.api.aws" + } + }, + "params": { + "Region": "eu-central-2", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region eu-central-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.eu-central-2.amazonaws.com" + } + }, + "params": { + "Region": "eu-central-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.us-west-1.api.aws" + } + }, + "params": { + "Region": "us-west-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-west-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.us-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-west-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.us-west-1.api.aws" + } + }, + "params": { + "Region": "us-west-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.us-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.us-west-2.api.aws" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-west-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.us-west-2.api.aws" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region af-south-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.af-south-1.api.aws" + } + }, + "params": { + "Region": "af-south-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region af-south-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.af-south-1.amazonaws.com" + } + }, + "params": { + "Region": "af-south-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region af-south-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.af-south-1.api.aws" + } + }, + "params": { + "Region": "af-south-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region af-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.af-south-1.amazonaws.com" + } + }, + "params": { + "Region": "af-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.eu-north-1.api.aws" + } + }, + "params": { + "Region": "eu-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region eu-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.eu-north-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.eu-north-1.api.aws" + } + }, + "params": { + "Region": "eu-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region eu-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.eu-north-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-3 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.eu-west-3.api.aws" + } + }, + "params": { + "Region": "eu-west-3", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region eu-west-3 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.eu-west-3.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-3", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-3 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.eu-west-3.api.aws" + } + }, + "params": { + "Region": "eu-west-3", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region eu-west-3 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.eu-west-3.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-3", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.eu-west-2.api.aws" + } + }, + "params": { + "Region": "eu-west-2", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region eu-west-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.eu-west-2.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-2", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.eu-west-2.api.aws" + } + }, + "params": { + "Region": "eu-west-2", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region eu-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.eu-west-2.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.eu-west-1.api.aws" + } + }, + "params": { + "Region": "eu-west-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region eu-west-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.eu-west-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.eu-west-1.api.aws" + } + }, + "params": { + "Region": "eu-west-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.eu-west-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-3 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.ap-northeast-3.api.aws" + } + }, + "params": { + "Region": "ap-northeast-3", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region ap-northeast-3 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.ap-northeast-3.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-3", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-3 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.ap-northeast-3.api.aws" + } + }, + "params": { + "Region": "ap-northeast-3", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region ap-northeast-3 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.ap-northeast-3.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-3", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.ap-northeast-2.api.aws" + } + }, + "params": { + "Region": "ap-northeast-2", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region ap-northeast-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.ap-northeast-2.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-2", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.ap-northeast-2.api.aws" + } + }, + "params": { + "Region": "ap-northeast-2", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.ap-northeast-2.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.ap-northeast-1.api.aws" + } + }, + "params": { + "Region": "ap-northeast-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region ap-northeast-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.ap-northeast-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.ap-northeast-1.api.aws" + } + }, + "params": { + "Region": "ap-northeast-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.ap-northeast-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region me-south-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.me-south-1.api.aws" + } + }, + "params": { + "Region": "me-south-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region me-south-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.me-south-1.amazonaws.com" + } + }, + "params": { + "Region": "me-south-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region me-south-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.me-south-1.api.aws" + } + }, + "params": { + "Region": "me-south-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region me-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.me-south-1.amazonaws.com" + } + }, + "params": { + "Region": "me-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region sa-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.sa-east-1.api.aws" + } + }, + "params": { + "Region": "sa-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region sa-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.sa-east-1.amazonaws.com" + } + }, + "params": { + "Region": "sa-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region sa-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.sa-east-1.api.aws" + } + }, + "params": { + "Region": "sa-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region sa-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.sa-east-1.amazonaws.com" + } + }, + "params": { + "Region": "sa-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.ap-east-1.api.aws" + } + }, + "params": { + "Region": "ap-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region ap-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.ap-east-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.ap-east-1.api.aws" + } + }, + "params": { + "Region": "ap-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region ap-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.ap-east-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ca-west-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.ca-west-1.api.aws" + } + }, + "params": { + "Region": "ca-west-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region ca-west-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.ca-west-1.amazonaws.com" + } + }, + "params": { + "Region": "ca-west-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region ca-west-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.ca-west-1.api.aws" + } + }, + "params": { + "Region": "ca-west-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region ca-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.ca-west-1.amazonaws.com" + } + }, + "params": { + "Region": "ca-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.us-gov-west-1.api.aws" + } + }, + "params": { + "Region": "us-gov-west-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.us-gov-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-west-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.us-gov-west-1.api.aws" + } + }, + "params": { + "Region": "us-gov-west-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.us-gov-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.ap-southeast-1.api.aws" + } + }, + "params": { + "Region": "ap-southeast-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.ap-southeast-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.ap-southeast-1.api.aws" + } + }, + "params": { + "Region": "ap-southeast-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.ap-southeast-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.ap-southeast-2.api.aws" + } + }, + "params": { + "Region": "ap-southeast-2", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.ap-southeast-2.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-2", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.ap-southeast-2.api.aws" + } + }, + "params": { + "Region": "ap-southeast-2", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.ap-southeast-2.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-3 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.ap-southeast-3.api.aws" + } + }, + "params": { + "Region": "ap-southeast-3", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region ap-southeast-3 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.ap-southeast-3.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-3", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-3 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.ap-southeast-3.api.aws" + } + }, + "params": { + "Region": "ap-southeast-3", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region ap-southeast-3 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.ap-southeast-3.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-3", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-4 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.ap-southeast-4.api.aws" + } + }, + "params": { + "Region": "ap-southeast-4", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region ap-southeast-4 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.ap-southeast-4.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-4", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-4 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.ap-southeast-4.api.aws" + } + }, + "params": { + "Region": "ap-southeast-4", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region ap-southeast-4 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.ap-southeast-4.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-4", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-5 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.ap-southeast-5.api.aws" + } + }, + "params": { + "Region": "ap-southeast-5", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region ap-southeast-5 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.ap-southeast-5.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-5", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-5 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.ap-southeast-5.api.aws" + } + }, + "params": { + "Region": "ap-southeast-5", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region ap-southeast-5 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.ap-southeast-5.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-5", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.us-east-2.api.aws" + } + }, + "params": { + "Region": "us-east-2", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.us-east-2.amazonaws.com" + } + }, + "params": { + "Region": "us-east-2", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.us-east-2.api.aws" + } + }, + "params": { + "Region": "us-east-2", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.us-east-2.amazonaws.com" + } + }, + "params": { + "Region": "us-east-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-northwest-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.cn-northwest-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-northwest-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-northwest-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.cn-northwest-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-northwest-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://kinesis.cn-northwest-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-northwest-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.cn-northwest-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-northwest-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://kinesis.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Invalid ARN: Failed to parse ARN.", + "expect": { + "error": "Invalid ARN: Failed to parse ARN." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "StreamARN": "arn" + } + }, + { + "documentation": "Invalid ARN: partition missing from ARN.", + "expect": { + "error": "Invalid ARN: Failed to parse ARN." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "StreamARN": "arn::kinesis:us-west-2:123456789012:stream/testStream" + } + }, + { + "documentation": "Invalid ARN: partitions mismatch.", + "expect": { + "error": "Partition: aws from ARN doesn't match with partition name: aws-us-gov." + }, + "params": { + "Region": "us-gov-west-1", + "UseFIPS": false, + "UseDualStack": false, + "StreamARN": "arn:aws:kinesis:us-west-2:123456789012:stream/testStream" + } + }, + { + "documentation": "Invalid ARN: Not Kinesis", + "expect": { + "error": "Invalid ARN: The ARN was not for the Kinesis service, found: s3." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "StreamARN": "arn:aws:s3:us-west-2:123456789012:stream/testStream" + } + }, + { + "documentation": "Invalid ARN: Region is missing in ARN", + "expect": { + "error": "Invalid ARN: Invalid region." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "StreamARN": "arn:aws:kinesis::123456789012:stream/testStream" + } + }, + { + "documentation": "Invalid ARN: Region is empty string in ARN", + "expect": { + "error": "Invalid ARN: Invalid region." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "StreamARN": "arn:aws:kinesis: :123456789012:stream/testStream" + } + }, + { + "documentation": "Invalid ARN: Invalid account id", + "expect": { + "error": "Invalid ARN: Invalid account id." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "StreamARN": "arn:aws:kinesis:us-east-1::stream/testStream", + "OperationType": "control" + } + }, + { + "documentation": "Invalid ARN: Invalid account id", + "expect": { + "error": "Invalid ARN: Invalid account id." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "StreamARN": "arn:aws:kinesis:us-east-1: :stream/testStream", + "OperationType": "control" + } + }, + { + "documentation": "Invalid ARN: Kinesis ARNs only support stream arn types", + "expect": { + "error": "Invalid ARN: Kinesis ARNs don't support `accesspoint` arn types." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "StreamARN": "arn:aws:kinesis:us-east-1:123:accesspoint/testStream" + } + }, + { + "documentation": "Dual Stack not supported region.", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-west-1", + "UseFIPS": true, + "UseDualStack": true, + "StreamARN": "arn:aws-iso:kinesis:us-iso-west-1:123456789012:stream/testStream", + "OperationType": "control" + } + }, + { + "documentation": "OperationType not set", + "expect": { + "error": "Operation Type is not set. Please contact service team for resolution." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "StreamARN": "arn:aws:kinesis:us-east-1:123456789012:stream/testStream" + } + }, + { + "documentation": "Custom Endpoint is specified", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "control", + "StreamARN": "arn:aws:kinesis:us-east-1:123:stream/test-stream", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Account endpoint targeting control operation type", + "expect": { + "endpoint": { + "url": "https://123.control-kinesis.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "control", + "StreamARN": "arn:aws:kinesis:us-east-1:123:stream/test-stream" + } + }, + { + "documentation": "Account endpoint targeting data operation type", + "expect": { + "endpoint": { + "url": "https://123.data-kinesis.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "data", + "StreamARN": "arn:aws:kinesis:us-east-1:123:stream/test-stream" + } + }, + { + "documentation": "Account endpoint with fips targeting data operation type", + "expect": { + "endpoint": { + "url": "https://123.data-kinesis-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "OperationType": "data", + "StreamARN": "arn:aws:kinesis:us-east-1:123:stream/test-stream" + } + }, + { + "documentation": "Account endpoint with fips targeting control operation type", + "expect": { + "endpoint": { + "url": "https://123.control-kinesis-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "OperationType": "control", + "StreamARN": "arn:aws:kinesis:us-east-1:123:stream/test-stream" + } + }, + { + "documentation": "Account endpoint with Dual Stack and FIPS enabled", + "expect": { + "endpoint": { + "url": "https://123.control-kinesis-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true, + "OperationType": "control", + "StreamARN": "arn:aws:kinesis:us-east-1:123:stream/test-stream" + } + }, + { + "documentation": "Account endpoint with Dual Stack enabled", + "expect": { + "endpoint": { + "url": "https://123.data-kinesis.us-west-1.api.aws" + } + }, + "params": { + "Region": "us-west-1", + "UseFIPS": false, + "UseDualStack": true, + "OperationType": "data", + "StreamARN": "arn:aws:kinesis:us-west-1:123:stream/test-stream" + } + }, + { + "documentation": "Account endpoint with FIPS and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://123.control-kinesis.us-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-west-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "control", + "StreamARN": "arn:aws:kinesis:us-west-1:123:stream/test-stream" + } + }, + { + "documentation": "RegionMismatch: client region should be used for endpoint region", + "expect": { + "endpoint": { + "url": "https://123.data-kinesis.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "data", + "StreamARN": "arn:aws:kinesis:us-west-1:123:stream/testStream" + } + }, + { + "documentation": "Account endpoint with FIPS enabled", + "expect": { + "endpoint": { + "url": "https://123.data-kinesis-fips.cn-northwest-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-northwest-1", + "UseFIPS": true, + "UseDualStack": false, + "OperationType": "data", + "StreamARN": "arn:aws-cn:kinesis:cn-northwest-1:123:stream/test-stream" + } + }, + { + "documentation": "Account endpoint with FIPS and DualStack enabled for cn regions.", + "expect": { + "endpoint": { + "url": "https://123.data-kinesis-fips.cn-northwest-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-northwest-1", + "UseFIPS": true, + "UseDualStack": true, + "OperationType": "data", + "StreamARN": "arn:aws-cn:kinesis:cn-northwest-1:123:stream/test-stream" + } + }, + { + "documentation": "Account endpoint targeting control operation type in ADC regions", + "expect": { + "endpoint": { + "url": "https://kinesis.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "control", + "StreamARN": "arn:aws-iso:kinesis:us-iso-east-1:123:stream/test-stream" + } + }, + { + "documentation": "Account endpoint targeting control operation type in ADC regions", + "expect": { + "endpoint": { + "url": "https://kinesis.us-iso-west-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-west-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "control", + "StreamARN": "arn:aws-iso:kinesis:us-iso-west-1:123:stream/test-stream" + } + }, + { + "documentation": "Account endpoint targeting data operation type in ADC regions", + "expect": { + "endpoint": { + "url": "https://kinesis.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "data", + "StreamARN": "arn:aws-iso-b:kinesis:us-isob-east-1:123:stream/test-stream" + } + }, + { + "documentation": "Account endpoint with fips targeting control operation type in ADC regions", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false, + "OperationType": "control", + "StreamARN": "arn:aws-iso:kinesis:us-iso-east-1:123:stream/test-stream" + } + }, + { + "documentation": "Account endpoint with fips targeting data operation type in ADC regions", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false, + "OperationType": "data", + "StreamARN": "arn:aws-iso-b:kinesis:us-isob-east-1:123:stream/test-stream" + } + }, + { + "documentation": "Invalid ConsumerARN: Failed to parse ARN.", + "expect": { + "error": "Invalid ARN: Failed to parse ARN." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "ConsumerARN": "arn" + } + }, + { + "documentation": "Invalid ConsumerARN: partition missing from ARN.", + "expect": { + "error": "Invalid ARN: Failed to parse ARN." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "ConsumerARN": "arn::kinesis:us-west-2:123456789012:stream/testStream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "Invalid ARN: partitions mismatch.", + "expect": { + "error": "Partition: aws from ARN doesn't match with partition name: aws-us-gov." + }, + "params": { + "Region": "us-gov-west-1", + "UseFIPS": false, + "UseDualStack": false, + "ConsumerARN": "arn:aws:kinesis:us-west-2:123456789012:stream/testStream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "Invalid ARN: Not Kinesis", + "expect": { + "error": "Invalid ARN: The ARN was not for the Kinesis service, found: s3." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "ConsumerARN": "arn:aws:s3:us-west-2:123456789012:stream/testStream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "Invalid ARN: Region is missing in ARN", + "expect": { + "error": "Invalid ARN: Invalid region." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "ConsumerARN": "arn:aws:kinesis::123456789012:stream/testStream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "Invalid ARN: Region is empty string in ARN", + "expect": { + "error": "Invalid ARN: Invalid region." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "ConsumerARN": "arn:aws:kinesis: :123456789012:stream/testStream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "Invalid ARN: Invalid account id", + "expect": { + "error": "Invalid ARN: Invalid account id." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "ConsumerARN": "arn:aws:kinesis:us-east-1::stream/testStream/consumer/test-consumer:1525898737", + "OperationType": "control" + } + }, + { + "documentation": "Invalid ARN: Invalid account id", + "expect": { + "error": "Invalid ARN: Invalid account id." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "ConsumerARN": "arn:aws:kinesis:us-east-1: :stream/testStream/consumer/test-consumer:1525898737", + "OperationType": "control" + } + }, + { + "documentation": "Invalid ARN: Kinesis ARNs only support stream arn/consumer arn types", + "expect": { + "error": "Invalid ARN: Kinesis ARNs don't support `accesspoint` arn types." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "ConsumerARN": "arn:aws:kinesis:us-east-1:123:accesspoint/testStream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "Dual Stack not supported region.", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-west-1", + "UseFIPS": true, + "UseDualStack": true, + "ConsumerARN": "arn:aws-iso:kinesis:us-iso-west-1:123456789012:stream/testStream/consumer/test-consumer:1525898737", + "OperationType": "control" + } + }, + { + "documentation": "OperationType not set", + "expect": { + "error": "Operation Type is not set. Please contact service team for resolution." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "ConsumerARN": "arn:aws:kinesis:us-east-1:123456789012:stream/testStream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "Custom Endpoint is specified", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "control", + "ConsumerARN": "arn:aws:kinesis:us-east-1:123:stream/test-stream/consumer/test-consumer:1525898737", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Account endpoint targeting control operation type", + "expect": { + "endpoint": { + "url": "https://123.control-kinesis.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "control", + "ConsumerARN": "arn:aws:kinesis:us-east-1:123:stream/test-stream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "Account endpoint targeting data operation type", + "expect": { + "endpoint": { + "url": "https://123.data-kinesis.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "data", + "ConsumerARN": "arn:aws:kinesis:us-east-1:123:stream/test-stream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "Account endpoint with fips targeting data operation type", + "expect": { + "endpoint": { + "url": "https://123.data-kinesis-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "OperationType": "data", + "ConsumerARN": "arn:aws:kinesis:us-east-1:123:stream/test-stream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "Account endpoint with fips targeting control operation type", + "expect": { + "endpoint": { + "url": "https://123.control-kinesis-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "OperationType": "control", + "ConsumerARN": "arn:aws:kinesis:us-east-1:123:stream/test-stream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "Account endpoint with Dual Stack and FIPS enabled", + "expect": { + "endpoint": { + "url": "https://123.control-kinesis-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true, + "OperationType": "control", + "ConsumerARN": "arn:aws:kinesis:us-east-1:123:stream/test-stream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "Account endpoint with Dual Stack enabled", + "expect": { + "endpoint": { + "url": "https://123.data-kinesis.us-west-1.api.aws" + } + }, + "params": { + "Region": "us-west-1", + "UseFIPS": false, + "UseDualStack": true, + "OperationType": "data", + "ConsumerARN": "arn:aws:kinesis:us-west-1:123:stream/test-stream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "Account endpoint with FIPS and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://123.control-kinesis.us-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-west-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "control", + "ConsumerARN": "arn:aws:kinesis:us-west-1:123:stream/test-stream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "RegionMismatch: client region should be used for endpoint region", + "expect": { + "endpoint": { + "url": "https://123.data-kinesis.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "data", + "ConsumerARN": "arn:aws:kinesis:us-west-1:123:stream/testStream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "Account endpoint with FIPS enabled", + "expect": { + "endpoint": { + "url": "https://123.data-kinesis-fips.cn-northwest-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-northwest-1", + "UseFIPS": true, + "UseDualStack": false, + "OperationType": "data", + "ConsumerARN": "arn:aws-cn:kinesis:cn-northwest-1:123:stream/test-stream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "Account endpoint with FIPS and DualStack enabled for cn regions.", + "expect": { + "endpoint": { + "url": "https://123.data-kinesis-fips.cn-northwest-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-northwest-1", + "UseFIPS": true, + "UseDualStack": true, + "OperationType": "data", + "ConsumerARN": "arn:aws-cn:kinesis:cn-northwest-1:123:stream/test-stream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "Account endpoint targeting control operation type in ADC regions", + "expect": { + "endpoint": { + "url": "https://kinesis.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "control", + "ConsumerARN": "arn:aws-iso:kinesis:us-iso-east-1:123:stream/test-stream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "Account endpoint targeting control operation type in ADC regions", + "expect": { + "endpoint": { + "url": "https://kinesis.us-iso-west-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-west-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "control", + "ConsumerARN": "arn:aws-iso:kinesis:us-iso-west-1:123:stream/test-stream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "Account endpoint targeting data operation type in ADC regions", + "expect": { + "endpoint": { + "url": "https://kinesis.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "data", + "ConsumerARN": "arn:aws-iso-b:kinesis:us-isob-east-1:123:stream/test-stream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "Account endpoint with fips targeting control operation type in ADC regions", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false, + "OperationType": "control", + "ConsumerARN": "arn:aws-iso:kinesis:us-iso-east-1:123:stream/test-stream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "Account endpoint with fips targeting data operation type in ADC regions", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false, + "OperationType": "data", + "ConsumerARN": "arn:aws-iso-b:kinesis:us-isob-east-1:123:stream/test-stream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "ConsumerARN targeting US-EAST-1", + "expect": { + "endpoint": { + "url": "https://123456789123.data-kinesis.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "data", + "ConsumerARN": "arn:aws:kinesis:us-east-1:123456789123:stream/foobar/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "Both StreamARN and ConsumerARN specified. StreamARN should take precedence", + "expect": { + "endpoint": { + "url": "https://123.data-kinesis.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "data", + "StreamARN": "arn:aws:kinesis:us-east-1:123:stream/foobar", + "ConsumerARN": "arn:aws:kinesis:us-east-1:123456789123:stream/foobar/consumer/test-consumer:1525898737" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff --git a/models/apis/kinesis/2013-12-02/paginators-1.json b/models/apis/kinesis/2013-12-02/paginators-1.json index c6f155e256..690d5fe919 100644 --- a/models/apis/kinesis/2013-12-02/paginators-1.json +++ b/models/apis/kinesis/2013-12-02/paginators-1.json @@ -13,11 +13,14 @@ "output_token": "NextToken" }, "ListStreams": { - "input_token": "ExclusiveStartStreamName", + "input_token": "NextToken", "limit_key": "Limit", "more_results": "HasMoreStreams", - "output_token": "StreamNames[-1]", - "result_key": "StreamNames" + "output_token": "NextToken", + "result_key": [ + "StreamNames", + "StreamSummaries" + ] } } } \ No newline at end of file diff --git a/models/apis/location/2020-11-19/docs-2.json b/models/apis/location/2020-11-19/docs-2.json index deeff1c784..8f98168a76 100644 --- a/models/apis/location/2020-11-19/docs-2.json +++ b/models/apis/location/2020-11-19/docs-2.json @@ -1159,7 +1159,7 @@ "MapStyle": { "base": null, "refs": { - "MapConfiguration$Style": "

Specifies the map style selected from an available data provider.

Valid Esri map styles:

Valid HERE Technologies map styles:

" + "MapConfiguration$Style": "

Specifies the map style selected from an available data provider.

Valid Esri map styles:

Valid HERE Technologies map styles:

Valid Open Data (Preview) map styles:

" } }, "Place": { @@ -1624,7 +1624,7 @@ "DescribeRouteCalculatorResponse$DataSource": "

The data provider of traffic and road network data. Indicates one of the available providers:

For more information about data providers, see Amazon Location Service data providers.

", "DescribeTrackerResponse$PricingPlanDataSource": "

No longer used. Always returns an empty string.

", "GetGeofenceResponse$Status": "

Identifies the state of the geofence. A geofence will hold one of the following states:

", - "GetMapGlyphsRequest$FontStack": "

A comma-separated list of fonts to load glyphs from in order of preference. For example, Noto Sans Regular, Arial Unicode.

Valid fonts stacks for Esri styles:

Valid font stacks for HERE Technologies styles:

", + "GetMapGlyphsRequest$FontStack": "

A comma-separated list of fonts to load glyphs from in order of preference. For example, Noto Sans Regular, Arial Unicode.

Valid fonts stacks for Esri styles:

Valid font stacks for HERE Technologies styles:

Valid font stacks for Open Data (Preview) styles:

The fonts used by VectorOpenDataStandardLight are combined fonts that use Amazon Ember for most glyphs but Noto Sans for glyphs unsupported by Amazon Ember.

", "GetMapGlyphsResponse$ContentType": "

The map glyph content type. For example, application/octet-stream.

", "GetMapSpritesResponse$ContentType": "

The content type of the sprite sheet and offsets. For example, the sprite sheet content type is image/png, and the sprite offset JSON document is application/json.

", "GetMapStyleDescriptorResponse$ContentType": "

The style descriptor's content type. For example, application/json.

", diff --git a/models/apis/location/2020-11-19/endpoint-tests-1.json b/models/apis/location/2020-11-19/endpoint-tests-1.json index 817d61c114..3c5d9acb17 100644 --- a/models/apis/location/2020-11-19/endpoint-tests-1.json +++ b/models/apis/location/2020-11-19/endpoint-tests-1.json @@ -8,9 +8,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "eu-central-1", - "UseDualStack": true + "Region": "eu-central-1" } }, { @@ -21,9 +21,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "eu-central-1", - "UseDualStack": false + "Region": "eu-central-1" } }, { @@ -34,9 +34,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "eu-central-1", - "UseDualStack": true + "Region": "eu-central-1" } }, { @@ -47,9 +47,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "eu-central-1", - "UseDualStack": false + "Region": "eu-central-1" } }, { @@ -60,9 +60,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "us-west-2", - "UseDualStack": true + "Region": "us-west-2" } }, { @@ -73,9 +73,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "us-west-2", - "UseDualStack": false + "Region": "us-west-2" } }, { @@ -86,9 +86,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "us-west-2", - "UseDualStack": true + "Region": "us-west-2" } }, { @@ -99,9 +99,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "us-west-2", - "UseDualStack": false + "Region": "us-west-2" } }, { @@ -112,9 +112,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "eu-north-1", - "UseDualStack": true + "Region": "eu-north-1" } }, { @@ -125,9 +125,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "eu-north-1", - "UseDualStack": false + "Region": "eu-north-1" } }, { @@ -138,9 +138,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "eu-north-1", - "UseDualStack": true + "Region": "eu-north-1" } }, { @@ -151,9 +151,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "eu-north-1", - "UseDualStack": false + "Region": "eu-north-1" } }, { @@ -164,9 +164,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "eu-west-1", - "UseDualStack": true + "Region": "eu-west-1" } }, { @@ -177,9 +177,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "eu-west-1", - "UseDualStack": false + "Region": "eu-west-1" } }, { @@ -190,9 +190,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "eu-west-1", - "UseDualStack": true + "Region": "eu-west-1" } }, { @@ -203,9 +203,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "eu-west-1", - "UseDualStack": false + "Region": "eu-west-1" } }, { @@ -216,9 +216,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "ap-northeast-1", - "UseDualStack": true + "Region": "ap-northeast-1" } }, { @@ -229,9 +229,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "ap-northeast-1", - "UseDualStack": false + "Region": "ap-northeast-1" } }, { @@ -242,9 +242,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "ap-northeast-1", - "UseDualStack": true + "Region": "ap-northeast-1" } }, { @@ -255,9 +255,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "ap-northeast-1", - "UseDualStack": false + "Region": "ap-northeast-1" } }, { @@ -268,9 +268,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "ap-southeast-1", - "UseDualStack": true + "Region": "ap-southeast-1" } }, { @@ -281,9 +281,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "ap-southeast-1", - "UseDualStack": false + "Region": "ap-southeast-1" } }, { @@ -294,9 +294,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "ap-southeast-1", - "UseDualStack": true + "Region": "ap-southeast-1" } }, { @@ -307,9 +307,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "ap-southeast-1", - "UseDualStack": false + "Region": "ap-southeast-1" } }, { @@ -320,9 +320,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "ap-southeast-2", - "UseDualStack": true + "Region": "ap-southeast-2" } }, { @@ -333,9 +333,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "ap-southeast-2", - "UseDualStack": false + "Region": "ap-southeast-2" } }, { @@ -346,9 +346,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "ap-southeast-2", - "UseDualStack": true + "Region": "ap-southeast-2" } }, { @@ -359,9 +359,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "ap-southeast-2", - "UseDualStack": false + "Region": "ap-southeast-2" } }, { @@ -372,9 +372,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "us-east-1", - "UseDualStack": true + "Region": "us-east-1" } }, { @@ -385,9 +385,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "us-east-1", - "UseDualStack": false + "Region": "us-east-1" } }, { @@ -398,9 +398,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "us-east-1", - "UseDualStack": true + "Region": "us-east-1" } }, { @@ -411,9 +411,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "us-east-1", - "UseDualStack": false + "Region": "us-east-1" } }, { @@ -424,9 +424,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "us-east-2", - "UseDualStack": true + "Region": "us-east-2" } }, { @@ -437,9 +437,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "us-east-2", - "UseDualStack": false + "Region": "us-east-2" } }, { @@ -450,9 +450,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "us-east-2", - "UseDualStack": true + "Region": "us-east-2" } }, { @@ -463,9 +463,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "us-east-2", - "UseDualStack": false + "Region": "us-east-2" } }, { @@ -476,9 +476,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, "Region": "us-east-1", - "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -488,9 +488,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { + "UseDualStack": false, "UseFIPS": true, "Region": "us-east-1", - "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -500,9 +500,9 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { + "UseDualStack": true, "UseFIPS": false, "Region": "us-east-1", - "UseDualStack": true, "Endpoint": "https://example.com" } } diff --git a/models/apis/m2/2021-04-28/api-2.json b/models/apis/m2/2021-04-28/api-2.json index a967c20f30..435c055b74 100644 --- a/models/apis/m2/2021-04-28/api-2.json +++ b/models/apis/m2/2021-04-28/api-2.json @@ -624,7 +624,8 @@ "Stopping", "Stopped", "Failed", - "Deleting" + "Deleting", + "Deleting From Environment" ] }, "ApplicationSummary":{ @@ -835,6 +836,7 @@ "definition":{"shape":"Definition"}, "description":{"shape":"EntityDescription"}, "engineType":{"shape":"EngineType"}, + "kmsKeyId":{"shape":"String"}, "name":{"shape":"EntityName"}, "tags":{"shape":"TagMap"} } @@ -923,6 +925,7 @@ "engineVersion":{"shape":"EngineVersion"}, "highAvailabilityConfig":{"shape":"HighAvailabilityConfig"}, "instanceType":{"shape":"String20"}, + "kmsKeyId":{"shape":"String"}, "name":{"shape":"EntityName"}, "preferredMaintenanceWindow":{"shape":"String50"}, "publiclyAccessible":{"shape":"Boolean"}, @@ -1225,7 +1228,8 @@ "Creating", "Available", "Deleting", - "Failed" + "Failed", + "Updating" ] }, "EnvironmentSummary":{ @@ -1339,6 +1343,7 @@ "description":{"shape":"EntityDescription"}, "engineType":{"shape":"EngineType"}, "environmentId":{"shape":"Identifier"}, + "kmsKeyId":{"shape":"String"}, "lastStartTime":{"shape":"Timestamp"}, "latestVersion":{"shape":"ApplicationVersionSummary"}, "listenerArns":{"shape":"ArnList"}, @@ -1575,10 +1580,11 @@ "environmentId":{"shape":"Identifier"}, "highAvailabilityConfig":{"shape":"HighAvailabilityConfig"}, "instanceType":{"shape":"String20"}, + "kmsKeyId":{"shape":"String"}, "loadBalancerArn":{"shape":"String"}, "name":{"shape":"EntityName"}, "pendingMaintenance":{"shape":"PendingMaintenance"}, - "preferredMaintenanceWindow":{"shape":"String"}, + "preferredMaintenanceWindow":{"shape":"String50"}, "publiclyAccessible":{"shape":"Boolean"}, "securityGroupIds":{"shape":"String50List"}, "status":{"shape":"EnvironmentLifecycle"}, @@ -1634,7 +1640,6 @@ }, "maxResults":{ "shape":"MaxResults", - "box":true, "location":"querystring", "locationName":"maxResults" }, @@ -1663,7 +1668,6 @@ }, "maxResults":{ "shape":"MaxResults", - "box":true, "location":"querystring", "locationName":"maxResults" }, @@ -1698,7 +1702,6 @@ }, "maxResults":{ "shape":"MaxResults", - "box":true, "location":"querystring", "locationName":"maxResults" }, @@ -1743,7 +1746,6 @@ }, "maxResults":{ "shape":"MaxResults", - "box":true, "location":"querystring", "locationName":"maxResults" }, @@ -1788,7 +1790,6 @@ }, "maxResults":{ "shape":"MaxResults", - "box":true, "location":"querystring", "locationName":"maxResults" }, @@ -1818,7 +1819,6 @@ }, "maxResults":{ "shape":"MaxResults", - "box":true, "location":"querystring", "locationName":"maxResults" }, @@ -1853,7 +1853,6 @@ }, "maxResults":{ "shape":"MaxResults", - "box":true, "location":"querystring", "locationName":"maxResults" }, @@ -1882,7 +1881,6 @@ }, "maxResults":{ "shape":"MaxResults", - "box":true, "location":"querystring", "locationName":"maxResults" }, @@ -1911,7 +1909,6 @@ }, "maxResults":{ "shape":"MaxResults", - "box":true, "location":"querystring", "locationName":"maxResults" }, @@ -2283,10 +2280,7 @@ "required":["environmentId"], "members":{ "applyDuringMaintenanceWindow":{"shape":"Boolean"}, - "desiredCapacity":{ - "shape":"CapacityValue", - "box":true - }, + "desiredCapacity":{"shape":"CapacityValue"}, "engineVersion":{"shape":"EngineVersion"}, "environmentId":{ "shape":"Identifier", diff --git a/models/apis/m2/2021-04-28/docs-2.json b/models/apis/m2/2021-04-28/docs-2.json index 2b907849d5..ee5298d055 100644 --- a/models/apis/m2/2021-04-28/docs-2.json +++ b/models/apis/m2/2021-04-28/docs-2.json @@ -3,13 +3,13 @@ "service": "

Amazon Web Services Mainframe Modernization provides tools and resources to help you plan and implement migration and modernization from mainframes to Amazon Web Services managed runtime environments. It provides tools for analyzing existing mainframe applications, developing or updating mainframe applications using COBOL or PL/I, and implementing an automated pipeline for continuous integration and continuous delivery (CI/CD) of the applications.

", "operations": { "CancelBatchJobExecution": "

Cancels the running of a specific batch job execution.

", - "CreateApplication": "

Creates a new application with given parameters. Requires an existing environment and application definition file.

", + "CreateApplication": "

Creates a new application with given parameters. Requires an existing runtime environment and application definition file.

", "CreateDataSetImportTask": "

Starts a data set import task for a specific application.

", - "CreateDeployment": "

Creates and starts a deployment to deploy an application into an environment.

", + "CreateDeployment": "

Creates and starts a deployment to deploy an application into a runtime environment.

", "CreateEnvironment": "

Creates a runtime environment for a given runtime engine.

", "DeleteApplication": "

Deletes a specific application. You cannot delete a running application.

", - "DeleteApplicationFromEnvironment": "

Deletes a specific application from a specified environment where it has been previously deployed. You cannot delete an environment using DeleteEnvironment, if any application has ever been deployed to it. This API removes the association of the application with the environment so you can delete the environment smoothly.

", - "DeleteEnvironment": "

Deletes a specific environment. The environment cannot contain deployed applications. If it does, you must delete those applications before you delete the environment.

", + "DeleteApplicationFromEnvironment": "

Deletes a specific application from the specific runtime environment where it was previously deployed. You cannot delete a runtime environment using DeleteEnvironment if any application has ever been deployed to it. This API removes the association of the application with the runtime environment so you can delete the environment smoothly.

", + "DeleteEnvironment": "

Deletes a specific runtime environment. The environment cannot contain deployed applications. If it does, you must delete those applications before you delete the environment.

", "GetApplication": "

Describes the details of a specific application.

", "GetApplicationVersion": "

Returns details about a specific version of a specific application.

", "GetBatchJobExecution": "

Gets the details of a specific batch job execution for a specific application.

", @@ -18,11 +18,11 @@ "GetDeployment": "

Gets details of a specific deployment with a given deployment identifier.

", "GetEnvironment": "

Describes a specific runtime environment.

", "ListApplicationVersions": "

Returns a list of the application versions for a specific application.

", - "ListApplications": "

Lists the applications associated with a specific Amazon Web Services account. You can provide the unique identifier of a specific environment in a query parameter to see all applications associated with that environment.

", - "ListBatchJobDefinitions": "

Lists all the available batch job definitions based on the batch job resources uploaded during the application creation. The listed batch job definitions can then be used to start a batch job.

", + "ListApplications": "

Lists the applications associated with a specific Amazon Web Services account. You can provide the unique identifier of a specific runtime environment in a query parameter to see all applications associated with that environment.

", + "ListBatchJobDefinitions": "

Lists all the available batch job definitions based on the batch job resources uploaded during the application creation. You can use the batch job definitions in the list to start a batch job.

", "ListBatchJobExecutions": "

Lists historical, current, and scheduled batch job executions for a specific application.

", "ListDataSetImportHistory": "

Lists the data set imports for the specified application.

", - "ListDataSets": "

Lists the data sets imported for a specific application. In Amazon Web Services Mainframe Modernization, data sets are associated with applications deployed on environments. This is known as importing data sets. Currently, Amazon Web Services Mainframe Modernization can import data sets into catalogs using CreateDataSetImportTask.

", + "ListDataSets": "

Lists the data sets imported for a specific application. In Amazon Web Services Mainframe Modernization, data sets are associated with applications deployed on runtime environments. This is known as importing data sets. Currently, Amazon Web Services Mainframe Modernization can import data sets into catalogs using CreateDataSetImportTask.

", "ListDeployments": "

Returns a list of all deployments of a specific application. A deployment is a combination of a specific application and a specific version of that application. Each deployment is mapped to a particular application version.

", "ListEngineVersions": "

Lists the available engine versions.

", "ListEnvironments": "

Lists the runtime environments.

", @@ -33,7 +33,7 @@ "TagResource": "

Adds one or more tags to the specified resource.

", "UntagResource": "

Removes one or more tags from the specified resource.

", "UpdateApplication": "

Updates an application and creates a new version.

", - "UpdateEnvironment": "

Updates the configuration details for a specific environment.

" + "UpdateEnvironment": "

Updates the configuration details for a specific runtime environment.

" }, "shapes": { "AccessDeniedException": { @@ -57,7 +57,7 @@ "ApplicationDeploymentLifecycle": { "base": null, "refs": { - "ApplicationSummary$deploymentStatus": "

Indicates whether there is an ongoing deployment or if the application has ever deployed successfully.

" + "ApplicationSummary$deploymentStatus": "

Indicates either an ongoing deployment or if the application has ever deployed successfully.

" } }, "ApplicationLifecycle": { @@ -76,7 +76,7 @@ "ApplicationSummaryList": { "base": null, "refs": { - "ListApplicationsResponse$applications": "

Returns a list of summary details for all the applications in an environment.

" + "ListApplicationsResponse$applications": "

Returns a list of summary details for all the applications in a runtime environment.

" } }, "ApplicationVersionLifecycle": { @@ -117,7 +117,7 @@ "ArnList": { "base": null, "refs": { - "GetApplicationResponse$listenerArns": "

The Amazon Resource Name (ARN) for the network load balancer listener created in your Amazon Web Services account. Amazon Web Services Mainframe Modernization creates this listener on your behalf the first time you deploy an application.

", + "GetApplicationResponse$listenerArns": "

The Amazon Resource Name (ARN) for the network load balancer listener created in your Amazon Web Services account. Amazon Web Services Mainframe Modernization creates this listener for you the first time you deploy an application.

", "GetApplicationResponse$targetGroupArns": "

Returns the Amazon Resource Names (ARNs) of the target groups that are attached to the network load balancer.

" } }, @@ -188,10 +188,10 @@ "base": null, "refs": { "AlternateKey$allowDuplicates": "

Indicates whether the alternate key values are supposed to be unique for the given data set.

", - "CreateEnvironmentRequest$publiclyAccessible": "

Specifies whether the environment is publicly accessible.

", + "CreateEnvironmentRequest$publiclyAccessible": "

Specifies whether the runtime environment is publicly accessible.

", "GetEnvironmentResponse$publiclyAccessible": "

Whether applications running in this runtime environment are publicly accessible.

", "StopApplicationRequest$forceStop": "

Stopping an application process can take a long time. Setting this parameter to true lets you force stop the application so you don't need to wait until the process finishes to apply another action on the application. The default value is false.

", - "UpdateEnvironmentRequest$applyDuringMaintenanceWindow": "

Indicates whether to update the environment during the maintenance window. The default is false. Currently, Amazon Web Services Mainframe Modernization accepts the engineVersion parameter only if applyDuringMaintenanceWindow is true. If any parameter other than engineVersion is provided in UpdateEnvironmentRequest, it will fail if applyDuringMaintenanceWindow is set to true.

", + "UpdateEnvironmentRequest$applyDuringMaintenanceWindow": "

Indicates whether to update the runtime environment during the maintenance window. The default is false. Currently, Amazon Web Services Mainframe Modernization accepts the engineVersion parameter only if applyDuringMaintenanceWindow is true. If any parameter other than engineVersion is provided in UpdateEnvironmentRequest, it will fail if applyDuringMaintenanceWindow is set to true.

", "VsamAttributes$compressed": "

Indicates whether indexes for this dataset are stored as compressed values. If you have a large data set (typically > 100 Mb), consider setting this flag to True.

", "VsamDetailAttributes$cacheAtStartup": "

If set to True, enforces loading the data set into cache before it’s used by the application.

", "VsamDetailAttributes$compressed": "

Indicates whether indexes for this dataset are stored as compressed values. If you have a large data set (typically > 100 Mb), consider setting this flag to True.

" @@ -212,7 +212,7 @@ "refs": { "GetEnvironmentResponse$actualCapacity": "

The number of instances included in the runtime environment. A standalone runtime environment has a maxiumum of one instance. Currently, a high availability runtime environment has a maximum of two instances.

", "HighAvailabilityConfig$desiredCapacity": "

The number of instances in a high availability configuration.

", - "UpdateEnvironmentRequest$desiredCapacity": "

The desired capacity for the environment to update.

" + "UpdateEnvironmentRequest$desiredCapacity": "

The desired capacity for the runtime environment to update.

" } }, "ConflictException": { @@ -319,19 +319,19 @@ "DataSetsSummaryList": { "base": null, "refs": { - "ListDataSetsResponse$dataSets": "

The list of data sets, containing ionformation including the creating time, the data set name, the data set organization, the data set format, and the last time the data set was referenced or updated.

" + "ListDataSetsResponse$dataSets": "

The list of data sets, containing information including the creation time, the data set name, the data set organization, the data set format, and the last time the data set was referenced or updated.

" } }, "DatasetDetailOrgAttributes": { "base": "

Additional details about the data set. Different attributes correspond to different data set organizations. The values are populated based on datasetOrg, storageType and backend (Blu Age or Micro Focus).

", "refs": { - "GetDataSetDetailsResponse$dataSetOrg": "

The type of data set. Possible values include VSAM, IS, PS, GDG, PO, PS, or unknown.

" + "GetDataSetDetailsResponse$dataSetOrg": "

The type of data set. The only supported value is VSAM.

" } }, "DatasetOrgAttributes": { "base": "

Additional details about the data set. Different attributes correspond to different data set organizations. The values are populated based on datasetOrg, storageType and backend (Blu Age or Micro Focus).

", "refs": { - "DataSet$datasetOrg": "

The type of dataset. Possible values include VSAM, IS, PS, GDG, PO, PS, UNKNOWN etc.

" + "DataSet$datasetOrg": "

The type of dataset. The only supported value is VSAM.

" } }, "Definition": { @@ -408,21 +408,21 @@ "refs": { "ApplicationSummary$engineType": "

The type of the target platform for this application.

", "CreateApplicationRequest$engineType": "

The type of the target platform for this application.

", - "CreateEnvironmentRequest$engineType": "

The engine type for the environment.

", - "EnvironmentSummary$engineType": "

The target platform for the environment.

", + "CreateEnvironmentRequest$engineType": "

The engine type for the runtime environment.

", + "EnvironmentSummary$engineType": "

The target platform for the runtime environment.

", "GetApplicationResponse$engineType": "

The type of the target platform for the application.

", "GetEnvironmentResponse$engineType": "

The target platform for the runtime environment.

", "ListEngineVersionsRequest$engineType": "

The type of target platform.

", - "ListEnvironmentsRequest$engineType": "

The engine type for the environment.

" + "ListEnvironmentsRequest$engineType": "

The engine type for the runtime environment.

" } }, "EngineVersion": { "base": null, "refs": { - "CreateEnvironmentRequest$engineVersion": "

The version of the engine type for the environment.

", + "CreateEnvironmentRequest$engineVersion": "

The version of the engine type for the runtime environment.

", "EnvironmentSummary$engineVersion": "

The version of the runtime engine.

", "GetEnvironmentResponse$engineVersion": "

The version of the runtime engine.

", - "UpdateEnvironmentRequest$engineVersion": "

The version of the runtime engine for the environment.

" + "UpdateEnvironmentRequest$engineVersion": "

The version of the runtime engine for the runtime environment.

" } }, "EngineVersionsSummary": { @@ -442,7 +442,7 @@ "refs": { "ApplicationSummary$description": "

The description of the application.

", "CreateApplicationRequest$description": "

The description of the application.

", - "CreateEnvironmentRequest$description": "

The description of the environment.

", + "CreateEnvironmentRequest$description": "

The description of the runtime environment.

", "GetApplicationResponse$description": "

The description of the application.

", "GetApplicationVersionResponse$description": "

The application description.

", "GetEnvironmentResponse$description": "

The description of the runtime environment.

", @@ -454,30 +454,30 @@ "refs": { "ApplicationSummary$name": "

The name of the application.

", "CreateApplicationRequest$name": "

The unique identifier of the application.

", - "CreateEnvironmentRequest$name": "

The unique identifier of the environment.

", + "CreateEnvironmentRequest$name": "

The name of the runtime environment. Must be unique within the account.

", "EntityNameList$member": null, - "EnvironmentSummary$name": "

The name of the environment.

", + "EnvironmentSummary$name": "

The name of the runtime environment.

", "GetApplicationResponse$name": "

The unique identifier of the application.

", "GetApplicationVersionResponse$name": "

The name of the application version.

", - "GetEnvironmentResponse$name": "

The name of the runtime environment.

" + "GetEnvironmentResponse$name": "

The name of the runtime environment. Must be unique within the account.

" } }, "EntityNameList": { "base": null, "refs": { "ListApplicationsRequest$names": "

The names of the applications.

", - "ListEnvironmentsRequest$names": "

The name of the environment.

" + "ListEnvironmentsRequest$names": "

The names of the runtime environments. Must be unique within the account.

" } }, "EnvironmentLifecycle": { "base": null, "refs": { - "EnvironmentSummary$status": "

The status of the environment

", + "EnvironmentSummary$status": "

The status of the runtime environment

", "GetEnvironmentResponse$status": "

The status of the runtime environment.

" } }, "EnvironmentSummary": { - "base": "

Contains a subset of the possible environment attributes. Used in the environment list.

", + "base": "

Contains a subset of the possible runtime environment attributes. Used in the environment list.

", "refs": { "EnvironmentSummaryList$member": null } @@ -485,7 +485,7 @@ "EnvironmentSummaryList": { "base": null, "refs": { - "ListEnvironmentsResponse$environments": "

Returns a list of summary details for all the environments in your account.

" + "ListEnvironmentsResponse$environments": "

Returns a list of summary details for all the runtime environments in your account.

" } }, "ExternalLocation": { @@ -614,9 +614,9 @@ "CreateDataSetImportTaskRequest$applicationId": "

The unique identifier of the application for which you want to import data sets.

", "CreateDataSetImportTaskResponse$taskId": "

The task identifier. This operation is asynchronous. Use this identifier with the GetDataSetImportTask operation to obtain the status of this task.

", "CreateDeploymentRequest$applicationId": "

The application identifier.

", - "CreateDeploymentRequest$environmentId": "

The identifier of the environment where this application will be deployed.

", + "CreateDeploymentRequest$environmentId": "

The identifier of the runtime environment where you want to deploy this application.

", "CreateDeploymentResponse$deploymentId": "

The unique identifier of the deployment.

", - "CreateEnvironmentResponse$environmentId": "

The identifier of this environment.

", + "CreateEnvironmentResponse$environmentId": "

The unique identifier of the runtime environment.

", "DataSetImportTask$taskId": "

The identifier of the data set import task.

", "DeleteApplicationFromEnvironmentRequest$applicationId": "

The unique identifier of the application you want to delete.

", "DeleteApplicationFromEnvironmentRequest$environmentId": "

The unique identifier of the runtime environment where the application was previously deployed.

", @@ -624,11 +624,11 @@ "DeleteEnvironmentRequest$environmentId": "

The unique identifier of the runtime environment you want to delete.

", "DeploymentSummary$applicationId": "

The unique identifier of the application.

", "DeploymentSummary$deploymentId": "

The unique identifier of the deployment.

", - "DeploymentSummary$environmentId": "

The unique identifier of the environment.

", + "DeploymentSummary$environmentId": "

The unique identifier of the runtime environment.

", "EnvironmentSummary$environmentId": "

The unique identifier of a particular runtime environment.

", "GetApplicationRequest$applicationId": "

The identifier of the application.

", "GetApplicationResponse$applicationId": "

The identifier of the application.

", - "GetApplicationResponse$environmentId": "

The identifier of the environment where the application will be deployed.

", + "GetApplicationResponse$environmentId": "

The identifier of the runtime environment where you want to deploy the application.

", "GetApplicationVersionRequest$applicationId": "

The unique identifier of the application.

", "GetBatchJobExecutionRequest$applicationId": "

The identifier of the application.

", "GetBatchJobExecutionRequest$executionId": "

The unique identifier of the batch job execution.

", @@ -805,11 +805,11 @@ "LogGroupSummaries": { "base": null, "refs": { - "GetApplicationResponse$logGroups": "

The list of log summaries. Each log summary includes the log type as well as the log group identifier. These are CloudWatch logs. The Amazon Web Services Mainframe Modernization application log is pushed to CloudWatch under the customer's account.

" + "GetApplicationResponse$logGroups": "

The list of log summaries. Each log summary includes the log type as well as the log group identifier. These are CloudWatch logs. Amazon Web Services Mainframe Modernization pushes the application log to CloudWatch under the customer's account.

" } }, "LogGroupSummary": { - "base": "

A subset of the attributes about a log group. In CloudWatch a log group is a group of log streams that share the same retention, monitoring, and access control settings.

", + "base": "

A subset of the attributes that describe a log group. In CloudWatch a log group is a group of log streams that share the same retention, monitoring, and access control settings.

", "refs": { "LogGroupSummaries$member": null } @@ -817,7 +817,7 @@ "MaintenanceSchedule": { "base": "

The information about the maintenance schedule.

", "refs": { - "PendingMaintenance$schedule": "

The maintenance schedule for the engine version.

" + "PendingMaintenance$schedule": "

The maintenance schedule for the runtime engine version.

" } }, "MaxResults": { @@ -831,7 +831,7 @@ "ListDataSetsRequest$maxResults": "

The maximum number of objects to return.

", "ListDeploymentsRequest$maxResults": "

The maximum number of objects to return.

", "ListEngineVersionsRequest$maxResults": "

The maximum number of objects to return.

", - "ListEnvironmentsRequest$maxResults": "

The maximum number of environments to return.

" + "ListEnvironmentsRequest$maxResults": "

The maximum number of runtime environments to return.

" } }, "NextToken": { @@ -853,8 +853,8 @@ "ListDeploymentsResponse$nextToken": "

If there are more items to return, this contains a token that is passed to a subsequent call to this operation to retrieve the next set of items.

", "ListEngineVersionsRequest$nextToken": "

A pagination token returned from a previous call to this operation. This specifies the next item to return. To return to the beginning of the list, exclude this parameter.

", "ListEngineVersionsResponse$nextToken": "

If there are more items to return, this contains a token that is passed to a subsequent call to this operation to retrieve the next set of items.

", - "ListEnvironmentsRequest$nextToken": "

A pagination token to control the number of environments displayed in the list.

", - "ListEnvironmentsResponse$nextToken": "

A pagination token that's returned when the response doesn't contain all the environments.

" + "ListEnvironmentsRequest$nextToken": "

A pagination token to control the number of runtime environments displayed in the list.

", + "ListEnvironmentsResponse$nextToken": "

A pagination token that's returned when the response doesn't contain all the runtime environments.

" } }, "PendingMaintenance": { @@ -935,7 +935,7 @@ } }, "StorageConfiguration": { - "base": "

Defines the storage configuration for an environment.

", + "base": "

Defines the storage configuration for a runtime environment.

", "refs": { "StorageConfigurationList$member": null } @@ -943,7 +943,7 @@ "StorageConfigurationList": { "base": null, "refs": { - "CreateEnvironmentRequest$storageConfigurations": "

Optional. The storage configurations for this environment.

", + "CreateEnvironmentRequest$storageConfigurations": "

Optional. The storage configurations for this runtime environment.

", "GetEnvironmentResponse$storageConfigurations": "

The storage configurations defined for the runtime environment.

" } }, @@ -957,9 +957,11 @@ "ConflictException$resourceId": "

The ID of the conflicting resource.

", "ConflictException$resourceType": "

The type of the conflicting resource.

", "CreateApplicationRequest$clientToken": "

Unique, case-sensitive identifier the service generates to ensure the idempotency of the request to create an application. The service generates the clientToken when the API call is triggered. The token expires after one hour, so if you retry the API within this timeframe with the same clientToken, you will get the same response. The service also handles deleting the clientToken after it expires.

", + "CreateApplicationRequest$kmsKeyId": "

The identifier of a customer managed key.

", "CreateDataSetImportTaskRequest$clientToken": "

Unique, case-sensitive identifier you provide to ensure the idempotency of the request to create a data set import. The service generates the clientToken when the API call is triggered. The token expires after one hour, so if you retry the API within this timeframe with the same clientToken, you will get the same response. The service also handles deleting the clientToken after it expires.

", "CreateDeploymentRequest$clientToken": "

Unique, case-sensitive identifier you provide to ensure the idempotency of the request to create a deployment. The service generates the clientToken when the API call is triggered. The token expires after one hour, so if you retry the API within this timeframe with the same clientToken, you will get the same response. The service also handles deleting the clientToken after it expires.

", "CreateEnvironmentRequest$clientToken": "

Unique, case-sensitive identifier you provide to ensure the idempotency of the request to create an environment. The service generates the clientToken when the API call is triggered. The token expires after one hour, so if you retry the API within this timeframe with the same clientToken, you will get the same response. The service also handles deleting the clientToken after it expires.

", + "CreateEnvironmentRequest$kmsKeyId": "

The identifier of a customer managed key.

", "DataSet$datasetName": "

The logical identifier for a specific data set (in mainframe format).

", "DataSet$relativePath": "

The relative location of the data set in the database or file system.

", "DataSet$storageType": "

The storage type of the data set: database or file system. For Micro Focus, database corresponds to datastore and file system corresponds to EFS/FSX. For Blu Age, there is no support of file system and database corresponds to Blusam.

", @@ -972,12 +974,13 @@ "FileBatchJobIdentifier$fileName": "

The file name for the batch job identifier.

", "FileBatchJobIdentifier$folderPath": "

The relative path to the file name for the batch job identifier.

", "GdgAttributes$rollDisposition": "

The disposition of the data set in the catalog.

", + "GetApplicationResponse$kmsKeyId": "

The identifier of a customer managed key.

", "GetApplicationResponse$statusReason": "

The reason for the reported status.

", "GetApplicationVersionResponse$statusReason": "

The reason for the reported status.

", "GetBatchJobExecutionResponse$statusReason": "

The reason for the reported status.

", "GetDeploymentResponse$statusReason": "

The reason for the reported status.

", + "GetEnvironmentResponse$kmsKeyId": "

The identifier of a customer managed key.

", "GetEnvironmentResponse$loadBalancerArn": "

The Amazon Resource Name (ARN) for the load balancer used with the runtime environment.

", - "GetEnvironmentResponse$preferredMaintenanceWindow": "

Configures a desired maintenance window for the environment. If you do not provide a value, a random system-generated value will be assigned.

", "GetEnvironmentResponse$statusReason": "

The reason for the reported status.

", "InternalServerException$message": null, "ListBatchJobDefinitionsRequest$prefix": "

If the batch job definition is a FileBatchJobDefinition, the prefix allows you to search on the file names of FileBatchJobDefinitions.

", @@ -996,7 +999,7 @@ "ThrottlingException$message": null, "ThrottlingException$quotaCode": "

The identifier of the throttled reuqest.

", "ThrottlingException$serviceCode": "

The identifier of the service that the throttled request was made to.

", - "UpdateEnvironmentRequest$preferredMaintenanceWindow": "

Configures a desired maintenance window for the environment. If you do not provide a value, a random system-generated value will be assigned.

", + "UpdateEnvironmentRequest$preferredMaintenanceWindow": "

Configures the maintenance window you want for the runtime environment. If you do not provide a value, a random system-generated value will be assigned.

", "ValidationException$message": null, "ValidationExceptionField$message": "

The message of the exception field.

", "ValidationExceptionField$name": "

The name of the exception field.

", @@ -1019,13 +1022,13 @@ "String20": { "base": null, "refs": { - "CreateEnvironmentRequest$instanceType": "

The type of instance for the environment.

", - "DataSetSummary$dataSetOrg": "

The type of data set. Possible values include VSAM, IS, PS, GDG, PO, PS, or unknown.

", + "CreateEnvironmentRequest$instanceType": "

The type of instance for the runtime environment.

", + "DataSetSummary$dataSetOrg": "

The type of data set. The only supported value is VSAM.

", "DataSetSummary$format": "

The format of the data set.

", - "EnvironmentSummary$instanceType": "

The instance type of the environment.

", + "EnvironmentSummary$instanceType": "

The instance type of the runtime environment.

", "GetEnvironmentResponse$instanceType": "

The type of instance underlying the runtime environment.

", "LogGroupSummary$logType": "

The type of log.

", - "UpdateEnvironmentRequest$instanceType": "

The instance type for the environment to update.

", + "UpdateEnvironmentRequest$instanceType": "

The instance type for the runtime environment to update.

", "VsamDetailAttributes$encoding": "

The character set used by the data set. Can be ASCII, EBCDIC, or unknown.

", "VsamDetailAttributes$recordFormat": "

The record format of the data set.

" } @@ -1049,14 +1052,15 @@ "DataSetImportConfig$s3Location": "

The Amazon S3 location of the data sets.

", "Definition$s3Location": "

The S3 bucket that contains the application definition.

", "ExternalLocation$s3Location": "

The URI of the Amazon S3 bucket.

", - "GetDataSetDetailsResponse$location": "

The locaion where the data set is stored.

" + "GetDataSetDetailsResponse$location": "

The location where the data set is stored.

" } }, "String50": { "base": null, "refs": { - "CreateEnvironmentRequest$preferredMaintenanceWindow": "

Configures a desired maintenance window for the environment. If you do not provide a value, a random system-generated value will be assigned.

", + "CreateEnvironmentRequest$preferredMaintenanceWindow": "

Configures the maintenance window you want for the runtime environment. If you do not provide a value, a random system-generated value will be assigned.

", "GdgDetailAttributes$rollDisposition": "

The disposition of the data set in the catalog.

", + "GetEnvironmentResponse$preferredMaintenanceWindow": "

Configures the maintenance window you want for the runtime environment. If you do not provide a value, a random system-generated value will be assigned.

", "GetEnvironmentResponse$vpcId": "

The unique identifier for the VPC used with this runtime environment.

", "String50List$member": null } @@ -1064,8 +1068,8 @@ "String50List": { "base": null, "refs": { - "CreateEnvironmentRequest$securityGroupIds": "

The list of security groups for the VPC associated with this environment.

", - "CreateEnvironmentRequest$subnetIds": "

The list of subnets associated with the VPC for this environment.

", + "CreateEnvironmentRequest$securityGroupIds": "

The list of security groups for the VPC associated with this runtime environment.

", + "CreateEnvironmentRequest$subnetIds": "

The list of subnets associated with the VPC for this runtime environment.

", "GetEnvironmentResponse$securityGroupIds": "

The unique identifiers of the security groups assigned to this runtime environment.

", "GetEnvironmentResponse$subnetIds": "

The unique identifiers of the subnets assigned to this runtime environment.

" } @@ -1074,7 +1078,7 @@ "base": null, "refs": { "Definition$content": "

The content of the application definition. This is a JSON object that contains the resource configuration/definitions that identify an application.

", - "GetApplicationVersionResponse$definitionContent": "

The content of the application definition. This is a JSON object that contains the resource configuration/definitions that identify an application.

" + "GetApplicationVersionResponse$definitionContent": "

The content of the application definition. This is a JSON object that contains the resource configuration and definitions that identify an application.

" } }, "TagKey": { @@ -1094,7 +1098,7 @@ "base": null, "refs": { "CreateApplicationRequest$tags": "

A list of tags to apply to the application.

", - "CreateEnvironmentRequest$tags": "

The tags for the environment.

", + "CreateEnvironmentRequest$tags": "

The tags for the runtime environment.

", "GetApplicationResponse$tags": "

A list of tags associated with the application.

", "GetEnvironmentResponse$tags": "

The tags defined for this runtime environment.

", "ListTagsForResourceResponse$tags": "

The tags for the resource.

", @@ -1126,7 +1130,7 @@ "base": null, "refs": { "ApplicationSummary$creationTime": "

The timestamp when the application was created.

", - "ApplicationSummary$lastStartTime": "

The timestamp when the application was last started. Null until the application has started running for the first time.

", + "ApplicationSummary$lastStartTime": "

The timestamp when you last started the application. Null until the application runs for the first time.

", "ApplicationVersionSummary$creationTime": "

The timestamp when the application version was created.

", "BatchJobExecutionSummary$endTime": "

The timestamp when this batch job execution ended.

", "BatchJobExecutionSummary$startTime": "

The timestamp when a particular batch job execution started.

", @@ -1134,9 +1138,9 @@ "DataSetSummary$lastReferencedTime": "

The last time the data set was referenced.

", "DataSetSummary$lastUpdatedTime": "

The last time the data set was updated.

", "DeploymentSummary$creationTime": "

The timestamp when the deployment was created.

", - "EnvironmentSummary$creationTime": "

The timestamp when the environment was created.

", + "EnvironmentSummary$creationTime": "

The timestamp when the runtime environment was created.

", "GetApplicationResponse$creationTime": "

The timestamp when this application was created.

", - "GetApplicationResponse$lastStartTime": "

The timestamp when the application was last started. Null until the application has started running for the first time.

", + "GetApplicationResponse$lastStartTime": "

The timestamp when you last started the application. Null until the application runs for the first time.

", "GetApplicationVersionResponse$creationTime": "

The timestamp when the application version was created.

", "GetBatchJobExecutionResponse$endTime": "

The timestamp when the batch job execution ended.

", "GetBatchJobExecutionResponse$startTime": "

The timestamp when the batch job execution started.

", diff --git a/models/apis/m2/2021-04-28/endpoint-rule-set-1.json b/models/apis/m2/2021-04-28/endpoint-rule-set-1.json new file mode 100644 index 0000000000..5b0051acc6 --- /dev/null +++ b/models/apis/m2/2021-04-28/endpoint-rule-set-1.json @@ -0,0 +1,306 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": true, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://m2-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://m2-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://m2.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://m2.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] +} \ No newline at end of file diff --git a/models/apis/m2/2021-04-28/endpoint-tests-1.json b/models/apis/m2/2021-04-28/endpoint-tests-1.json new file mode 100644 index 0000000000..0993fc12f7 --- /dev/null +++ b/models/apis/m2/2021-04-28/endpoint-tests-1.json @@ -0,0 +1,667 @@ +{ + "testCases": [ + { + "documentation": "For region ap-south-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://m2-fips.ap-south-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "ap-south-1" + } + }, + { + "documentation": "For region ap-south-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://m2-fips.ap-south-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "ap-south-1" + } + }, + { + "documentation": "For region ap-south-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://m2.ap-south-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "ap-south-1" + } + }, + { + "documentation": "For region ap-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://m2.ap-south-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "ap-south-1" + } + }, + { + "documentation": "For region ca-central-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://m2-fips.ca-central-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "ca-central-1" + } + }, + { + "documentation": "For region ca-central-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://m2-fips.ca-central-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "ca-central-1" + } + }, + { + "documentation": "For region ca-central-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://m2.ca-central-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "ca-central-1" + } + }, + { + "documentation": "For region ca-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://m2.ca-central-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "ca-central-1" + } + }, + { + "documentation": "For region eu-central-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://m2-fips.eu-central-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "eu-central-1" + } + }, + { + "documentation": "For region eu-central-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://m2-fips.eu-central-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "eu-central-1" + } + }, + { + "documentation": "For region eu-central-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://m2.eu-central-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "eu-central-1" + } + }, + { + "documentation": "For region eu-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://m2.eu-central-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "eu-central-1" + } + }, + { + "documentation": "For region us-west-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://m2-fips.us-west-2.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "us-west-2" + } + }, + { + "documentation": "For region us-west-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://m2-fips.us-west-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "us-west-2" + } + }, + { + "documentation": "For region us-west-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://m2.us-west-2.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "us-west-2" + } + }, + { + "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://m2.us-west-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "us-west-2" + } + }, + { + "documentation": "For region eu-west-3 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://m2-fips.eu-west-3.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "eu-west-3" + } + }, + { + "documentation": "For region eu-west-3 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://m2-fips.eu-west-3.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "eu-west-3" + } + }, + { + "documentation": "For region eu-west-3 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://m2.eu-west-3.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "eu-west-3" + } + }, + { + "documentation": "For region eu-west-3 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://m2.eu-west-3.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "eu-west-3" + } + }, + { + "documentation": "For region eu-west-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://m2-fips.eu-west-2.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "eu-west-2" + } + }, + { + "documentation": "For region eu-west-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://m2-fips.eu-west-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "eu-west-2" + } + }, + { + "documentation": "For region eu-west-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://m2.eu-west-2.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "eu-west-2" + } + }, + { + "documentation": "For region eu-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://m2.eu-west-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "eu-west-2" + } + }, + { + "documentation": "For region eu-west-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://m2-fips.eu-west-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "eu-west-1" + } + }, + { + "documentation": "For region eu-west-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://m2-fips.eu-west-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "eu-west-1" + } + }, + { + "documentation": "For region eu-west-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://m2.eu-west-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "eu-west-1" + } + }, + { + "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://m2.eu-west-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "eu-west-1" + } + }, + { + "documentation": "For region ap-northeast-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://m2-fips.ap-northeast-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "ap-northeast-1" + } + }, + { + "documentation": "For region ap-northeast-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://m2-fips.ap-northeast-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "ap-northeast-1" + } + }, + { + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://m2.ap-northeast-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "ap-northeast-1" + } + }, + { + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://m2.ap-northeast-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "ap-northeast-1" + } + }, + { + "documentation": "For region sa-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://m2-fips.sa-east-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "sa-east-1" + } + }, + { + "documentation": "For region sa-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://m2-fips.sa-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "sa-east-1" + } + }, + { + "documentation": "For region sa-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://m2.sa-east-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "sa-east-1" + } + }, + { + "documentation": "For region sa-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://m2.sa-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "sa-east-1" + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://m2-fips.ap-southeast-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "ap-southeast-1" + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://m2-fips.ap-southeast-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "ap-southeast-1" + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://m2.ap-southeast-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "ap-southeast-1" + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://m2.ap-southeast-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "ap-southeast-1" + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://m2-fips.ap-southeast-2.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "ap-southeast-2" + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://m2-fips.ap-southeast-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "ap-southeast-2" + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://m2.ap-southeast-2.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "ap-southeast-2" + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://m2.ap-southeast-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "ap-southeast-2" + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://m2-fips.us-east-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "us-east-1" + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://m2-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "us-east-1" + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://m2.us-east-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "us-east-1" + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://m2.us-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "us-east-1" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff --git a/models/apis/sagemaker/2017-07-24/api-2.json b/models/apis/sagemaker/2017-07-24/api-2.json index 79c148b439..a62b40c416 100644 --- a/models/apis/sagemaker/2017-07-24/api-2.json +++ b/models/apis/sagemaker/2017-07-24/api-2.json @@ -17049,7 +17049,8 @@ "EndpointConfigurations":{"shape":"EndpointInputConfigurations"}, "VolumeKmsKeyId":{"shape":"KmsKeyId"}, "ContainerConfig":{"shape":"RecommendationJobContainerConfig"}, - "Endpoints":{"shape":"Endpoints"} + "Endpoints":{"shape":"Endpoints"}, + "VpcConfig":{"shape":"RecommendationJobVpcConfig"} } }, "RecommendationJobName":{ @@ -17112,6 +17113,39 @@ "Advanced" ] }, + "RecommendationJobVpcConfig":{ + "type":"structure", + "required":[ + "SecurityGroupIds", + "Subnets" + ], + "members":{ + "SecurityGroupIds":{"shape":"RecommendationJobVpcSecurityGroupIds"}, + "Subnets":{"shape":"RecommendationJobVpcSubnets"} + } + }, + "RecommendationJobVpcSecurityGroupId":{ + "type":"string", + "max":32, + "pattern":"[-0-9a-zA-Z]+" + }, + "RecommendationJobVpcSecurityGroupIds":{ + "type":"list", + "member":{"shape":"RecommendationJobVpcSecurityGroupId"}, + "max":5, + "min":1 + }, + "RecommendationJobVpcSubnetId":{ + "type":"string", + "max":32, + "pattern":"[-0-9a-zA-Z]+" + }, + "RecommendationJobVpcSubnets":{ + "type":"list", + "member":{"shape":"RecommendationJobVpcSubnetId"}, + "max":16, + "min":1 + }, "RecommendationMetrics":{ "type":"structure", "required":[ diff --git a/models/apis/sagemaker/2017-07-24/docs-2.json b/models/apis/sagemaker/2017-07-24/docs-2.json index 953aee9754..1f3c7c2fb6 100644 --- a/models/apis/sagemaker/2017-07-24/docs-2.json +++ b/models/apis/sagemaker/2017-07-24/docs-2.json @@ -31,7 +31,7 @@ "CreateHyperParameterTuningJob": "

Starts a hyperparameter tuning job. A hyperparameter tuning job finds the best version of a model by running many training jobs on your dataset using the algorithm you choose and values for hyperparameters within ranges that you specify. It then chooses the hyperparameter values that result in a model that performs the best, as measured by an objective metric that you choose.

A hyperparameter tuning job automatically creates Amazon SageMaker experiments, trials, and trial components for each training job that it runs. You can view these entities in Amazon SageMaker Studio. For more information, see View Experiments, Trials, and Trial Components.

Do not include any security-sensitive information including account access IDs, secrets or tokens in any hyperparameter field. If the use of security-sensitive credentials are detected, SageMaker will reject your training job request and return an exception error.

", "CreateImage": "

Creates a custom SageMaker image. A SageMaker image is a set of image versions. Each image version represents a container image stored in Amazon Elastic Container Registry (ECR). For more information, see Bring your own SageMaker image.

", "CreateImageVersion": "

Creates a version of the SageMaker image specified by ImageName. The version represents the Amazon Elastic Container Registry (ECR) container image specified by BaseImage.

", - "CreateInferenceExperiment": "

Creates an inference experiment using the configurations specified in the request.

Use this API to schedule an experiment to compare model variants on a Amazon SageMaker inference endpoint. For more information about inference experiments, see Shadow tests.

Amazon SageMaker begins your experiment at the scheduled time and routes traffic to your endpoint's model variants based on your specified configuration.

While the experiment is in progress or after it has concluded, you can view metrics that compare your model variants. For more information, see View, monitor, and edit shadow tests.

", + "CreateInferenceExperiment": "

Creates an inference experiment using the configurations specified in the request.

Use this API to setup and schedule an experiment to compare model variants on a Amazon SageMaker inference endpoint. For more information about inference experiments, see Shadow tests.

Amazon SageMaker begins your experiment at the scheduled time and routes traffic to your endpoint's model variants based on your specified configuration.

While the experiment is in progress or after it has concluded, you can view metrics that compare your model variants. For more information, see View, monitor, and edit shadow tests.

", "CreateInferenceRecommendationsJob": "

Starts a recommendation job. You can create either an instance recommendation or load test job.

", "CreateLabelingJob": "

Creates a job that uses workers to label the data objects in your input dataset. You can use the labeled data to train machine learning models.

You can select your workforce from one of three providers:

You can also use automated data labeling to reduce the number of data objects that need to be labeled by a human. Automated data labeling uses active learning to determine if a data object can be labeled by machine or if it needs to be sent to a human worker. For more information, see Using Automated Data Labeling.

The data objects to be labeled are contained in an Amazon S3 bucket. You create a manifest file that describes the location of each object. For more information, see Using Input and Output Data.

The output can be used as the manifest file for another labeling job or as training data for your machine learning models.

You can use this operation to create a static labeling job or a streaming labeling job. A static labeling job stops if all data objects in the input manifest file identified in ManifestS3Uri have been labeled. A streaming labeling job runs perpetually until it is manually stopped, or remains idle for 10 days. You can send new data objects to an active (InProgress) streaming labeling job in real time. To learn how to create a static labeling job, see Create a Labeling Job (API) in the Amazon SageMaker Developer Guide. To learn how to create a streaming labeling job, see Create a Streaming Labeling Job.

", "CreateModel": "

Creates a model in SageMaker. In the request, you name the model and describe a primary container. For the primary container, you specify the Docker image that contains inference code, artifacts (from prior training), and a custom environment map that the inference code uses when you deploy the model for predictions.

Use this API to create a model if you want to use SageMaker hosting services or run a batch transform job.

To host your model, you create an endpoint configuration with the CreateEndpointConfig API, and then create an endpoint with the CreateEndpoint API. SageMaker then deploys all of the containers that you defined for the model in the hosting environment.

For an example that calls this method when deploying a model to SageMaker hosting services, see Create a Model (Amazon Web Services SDK for Python (Boto 3)).

To run a batch transform using your model, you start a job with the CreateTransformJob API. SageMaker uses your model and your dataset to get inferences which are then saved to a specified S3 location.

In the request, you also provide an IAM role that SageMaker can assume to access model artifacts and docker image for deployment on ML compute hosting instances or for batch transform jobs. In addition, you also use the IAM role to manage permissions the inference code needs. For example, if the inference code access any other Amazon Web Services resources, you grant necessary permissions via this role.

", @@ -3803,7 +3803,7 @@ "BatchTransformInput$DataCapturedDestinationS3Uri": "

The Amazon S3 location being used to capture the data.

", "DataCaptureConfig$DestinationS3Uri": "

The Amazon S3 location used to capture the data.

", "DataCaptureConfigSummary$DestinationS3Uri": "

The Amazon S3 location being used to capture the data.

", - "InferenceExperimentDataStorageConfig$Destination": "

The Amazon S3 bucket where the inference experiment data is stored.

", + "InferenceExperimentDataStorageConfig$Destination": "

The Amazon S3 bucket where the inference request and response data is stored.

", "ProductionVariantCoreDumpConfig$DestinationS3Uri": "

The Amazon S3 bucket to send the core dump to.

" } }, @@ -4989,7 +4989,7 @@ "DescribeTransformJobResponse$FailureReason": "

If the transform job failed, FailureReason describes why it failed. A transform job creates a log file, which includes error messages, and stores it as an Amazon S3 object. For more information, see Log Amazon SageMaker Events with Amazon CloudWatch.

", "DescribeUserProfileResponse$FailureReason": "

The failure reason.

", "Endpoint$FailureReason": "

If the endpoint failed, the reason it failed.

", - "EndpointMetadata$FailureReason": "

If the status of the endpoint is Failed, this provides the reason why it failed.

", + "EndpointMetadata$FailureReason": "

If the status of the endpoint is Failed, or the status is InService but update operation fails, this provides the reason why it failed.

", "FeatureGroup$FailureReason": "

The reason that the FeatureGroup failed to be replicated in the OfflineStore. This is failure may be due to a failure to create a FeatureGroup in or delete a FeatureGroup from the OfflineStore.

", "FlowDefinitionSummary$FailureReason": "

The reason why the flow definition creation failed. A failure reason is returned only when the flow definition status is Failed.

", "HyperParameterTrainingJobSummary$FailureReason": "

The reason that the training job failed.

", @@ -5971,7 +5971,7 @@ } }, "HyperParameterTuningResourceConfig": { - "base": "

The configuration of resources, including compute instances and storage volumes for use in training jobs launched by hyperparameter tuning jobs. Specify one or more instance type and count and the allocation strategy for instance selection.

HyperParameterTuningResourceConfig supports all of the capabilities of ResourceConfig with added functionality for flexible instance management.

", + "base": "

The configuration of resources, including compute instances and storage volumes for use in training jobs launched by hyperparameter tuning jobs. HyperParameterTuningResourceConfig is similar to ResourceConfig, but has the additional InstanceConfigs and AllocationStrategy fields to allow for flexible instance management. Specify one or more instance types, count, and the allocation strategy for instance selection.

HyperParameterTuningResourceConfig supports the capabilities of ResourceConfig with the exception of KeepAlivePeriodInSeconds. Hyperparameter tuning jobs use warm pools by default, which reuse clusters between training jobs.

", "refs": { "HyperParameterTrainingJobDefinition$HyperParameterTuningResourceConfig": "

The configuration for the hyperparameter tuning resources, including the compute instances and storage volumes, used for training jobs launched by the tuning job. By default, storage volumes hold model artifacts and incremental states. Choose File for TrainingInputMode in the AlgorithmSpecification parameter to additionally store training data in the storage volume (optional).

" } @@ -6242,11 +6242,11 @@ } }, "InferenceExperimentDataStorageConfig": { - "base": "

The Amazon S3 location and configuration for storing inference experiment data.

", + "base": "

The Amazon S3 location and configuration for storing inference request and response data.

", "refs": { - "CreateInferenceExperimentRequest$DataStorageConfig": "

The storage configuration for the inference experiment. This is an optional parameter that you can use for data capture. For more information, see Capture data.

", - "DescribeInferenceExperimentResponse$DataStorageConfig": "

The Amazon S3 storage configuration for the inference experiment.

", - "UpdateInferenceExperimentRequest$DataStorageConfig": "

The Amazon S3 storage configuration for the inference experiment.

" + "CreateInferenceExperimentRequest$DataStorageConfig": "

The Amazon S3 location and configuration for storing inference request and response data.

This is an optional parameter that you can use for data capture. For more information, see Capture data.

", + "DescribeInferenceExperimentResponse$DataStorageConfig": "

The Amazon S3 location and configuration for storing inference request and response data.

", + "UpdateInferenceExperimentRequest$DataStorageConfig": "

The Amazon S3 location and configuration for storing inference request and response data.

" } }, "InferenceExperimentDescription": { @@ -6280,7 +6280,7 @@ "InferenceExperimentSchedule": { "base": "

The start and end times of an inference experiment.

The maximum duration that you can set for an inference experiment is 30 days.

", "refs": { - "CreateInferenceExperimentRequest$Schedule": "

The duration for which you want the inference experiment to run. If you don't specify this field, the experiment automatically concludes after 7 days.

", + "CreateInferenceExperimentRequest$Schedule": "

The duration for which you want the inference experiment to run. If you don't specify this field, the experiment automatically starts immediately upon creation and concludes after 7 days.

", "DescribeInferenceExperimentResponse$Schedule": "

The duration for which the inference experiment ran or will run.

", "InferenceExperimentSummary$Schedule": "

The duration for which the inference experiment ran or will run.

The maximum duration that you can set for an inference experiment is 30 days.

", "UpdateInferenceExperimentRequest$Schedule": "

The duration for which the inference experiment will run. If the status of the inference experiment is Created, then you can update both the start and end dates. If the status of the inference experiment is Running, then you can update only the end date.

" @@ -6289,7 +6289,7 @@ "InferenceExperimentStatus": { "base": null, "refs": { - "DescribeInferenceExperimentResponse$Status": "

The status of the inference experiment. The following are the possible statuses for an inference experiment:

", + "DescribeInferenceExperimentResponse$Status": "

The status of the inference experiment. The following are the possible statuses for an inference experiment:

", "InferenceExperimentSummary$Status": "

The status of the inference experiment.

", "ListInferenceExperimentsRequest$StatusEquals": "

Selects inference experiments which are in this status. For the possible statuses, see DescribeInferenceExperimentResponse$Status.

" } @@ -6297,7 +6297,7 @@ "InferenceExperimentStatusReason": { "base": null, "refs": { - "DescribeInferenceExperimentResponse$StatusReason": "

The error message for the inference experiment status result.

", + "DescribeInferenceExperimentResponse$StatusReason": "

The error message or client-specified Reason from the StopInferenceExperiment API, that explains the status of the inference experiment.

", "InferenceExperimentSummary$StatusReason": "

The error message for the inference experiment status result.

", "StopInferenceExperimentRequest$Reason": "

The reason for stopping the experiment.

" } @@ -6470,7 +6470,7 @@ "CreateNotebookInstanceInput$InstanceType": "

The type of ML compute instance to launch for the notebook instance.

", "DescribeNotebookInstanceOutput$InstanceType": "

The type of ML compute instance running on the notebook instance.

", "NotebookInstanceSummary$InstanceType": "

The type of ML compute instance that the notebook instance is running on.

", - "RealTimeInferenceConfig$InstanceType": "

The number of instances of the type specified by InstanceType.

", + "RealTimeInferenceConfig$InstanceType": "

The instance type the model is deployed to.

", "UpdateNotebookInstanceInput$InstanceType": "

The Amazon ML compute instance type.

" } }, @@ -6667,7 +6667,7 @@ "CreateEndpointConfigInput$KmsKeyId": "

The Amazon Resource Name (ARN) of a Amazon Web Services Key Management Service key that SageMaker uses to encrypt data on the storage volume attached to the ML compute instance that hosts the endpoint.

The KmsKeyId can be any of the following formats:

The KMS key policy must grant permission to the IAM role that you specify in your CreateEndpoint, UpdateEndpoint requests. For more information, refer to the Amazon Web Services Key Management Service section Using Key Policies in Amazon Web Services KMS

Certain Nitro-based instances include local storage, dependent on the instance type. Local storage volumes are encrypted using a hardware module on the instance. You can't request a KmsKeyId when using an instance type with local storage. If any of the models that you specify in the ProductionVariants parameter use nitro-based instances with local storage, do not specify a value for the KmsKeyId parameter. If you specify a value for KmsKeyId when using any nitro-based instances with local storage, the call to CreateEndpointConfig fails.

For a list of instance types that support local instance storage, see Instance Store Volumes.

For more information about local instance storage encryption, see SSD Instance Store Volumes.

", "CreateInferenceExperimentRequest$KmsKey": "

The Amazon Web Services Key Management Service (Amazon Web Services KMS) key that Amazon SageMaker uses to encrypt data on the storage volume attached to the ML compute instance that hosts the endpoint. The KmsKey can be any of the following formats:

If you use a KMS key ID or an alias of your KMS key, the Amazon SageMaker execution role must include permissions to call kms:Encrypt. If you don't provide a KMS key ID, Amazon SageMaker uses the default KMS key for Amazon S3 for your role's account. Amazon SageMaker uses server-side encryption with KMS managed keys for OutputDataConfig. If you use a bucket policy with an s3:PutObject permission that only allows objects with server-side encryption, set the condition key of s3:x-amz-server-side-encryption to \"aws:kms\". For more information, see KMS managed Encryption Keys in the Amazon Simple Storage Service Developer Guide.

The KMS key policy must grant permission to the IAM role that you specify in your CreateEndpoint and UpdateEndpoint requests. For more information, see Using Key Policies in Amazon Web Services KMS in the Amazon Web Services Key Management Service Developer Guide.

", "CreateNotebookInstanceInput$KmsKeyId": "

The Amazon Resource Name (ARN) of a Amazon Web Services Key Management Service key that SageMaker uses to encrypt data on the storage volume attached to your notebook instance. The KMS key you provide must be enabled. For information, see Enabling and Disabling Keys in the Amazon Web Services Key Management Service Developer Guide.

", - "DataCaptureConfig$KmsKeyId": "

The Amazon Resource Name (ARN) of a Amazon Web Services Key Management Service key that SageMaker uses to encrypt data on the storage volume attached to the ML compute instance that hosts the endpoint.

The KmsKeyId can be any of the following formats:

", + "DataCaptureConfig$KmsKeyId": "

The Amazon Resource Name (ARN) of a Amazon Web Services Key Management Service key that SageMaker uses to encrypt the captured data at rest using Amazon S3 server-side encryption.

The KmsKeyId can be any of the following formats:

", "DataCaptureConfigSummary$KmsKeyId": "

The KMS key being used to encrypt the data in Amazon S3.

", "DescribeDomainResponse$HomeEfsFileSystemKmsKeyId": "

Use KmsKeyId.

", "DescribeDomainResponse$KmsKeyId": "

The Amazon Web Services KMS customer managed key used to encrypt the EFS volume attached to the domain.

", @@ -6678,7 +6678,7 @@ "EdgeOutputConfig$KmsKeyId": "

The Amazon Web Services Key Management Service (Amazon Web Services KMS) key that Amazon SageMaker uses to encrypt data on the storage volume after compilation job. If you don't provide a KMS key ID, Amazon SageMaker uses the default KMS key for Amazon S3 for your role's account.

", "FlowDefinitionOutputConfig$KmsKeyId": "

The Amazon Key Management Service (KMS) key ID for server-side encryption.

", "HyperParameterTuningResourceConfig$VolumeKmsKeyId": "

A key used by Amazon Web Services Key Management Service to encrypt data on the storage volume attached to the compute instances used to run the training job. You can use either of the following formats to specify a key.

KMS Key ID:

\"1234abcd-12ab-34cd-56ef-1234567890ab\"

Amazon Resource Name (ARN) of a KMS key:

\"arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\"

Some instances use local storage, which use a hardware module to encrypt storage volumes. If you choose one of these instance types, you cannot request a VolumeKmsKeyId. For a list of instance types that use local storage, see instance store volumes. For more information about Amazon Web Services Key Management Service, see KMS encryption for more information.

", - "InferenceExperimentDataStorageConfig$KmsKey": "

The Amazon Resource Name (ARN) of a Amazon Web Services Key Management Service key that Amazon SageMaker uses to encrypt captured data when uploading to Amazon S3.

", + "InferenceExperimentDataStorageConfig$KmsKey": "

The Amazon Web Services Key Management Service key that Amazon SageMaker uses to encrypt captured data at rest using Amazon S3 server-side encryption.

", "LabelingJobOutputConfig$KmsKeyId": "

The Amazon Web Services Key Management Service ID of the key used to encrypt the output data, if any.

If you provide your own KMS key ID, you must add the required permissions to your KMS key described in Encrypt Output Data and Storage Volume with Amazon Web Services KMS.

If you don't provide a KMS key ID, Amazon SageMaker uses the default Amazon Web Services KMS key for Amazon S3 for your role's account to encrypt your output data.

If you use a bucket policy with an s3:PutObject permission that only allows objects with server-side encryption, set the condition key of s3:x-amz-server-side-encryption to \"aws:kms\". For more information, see KMS-Managed Encryption Keys in the Amazon Simple Storage Service Developer Guide.

", "LabelingJobResourceConfig$VolumeKmsKeyId": "

The Amazon Web Services Key Management Service (Amazon Web Services KMS) key that Amazon SageMaker uses to encrypt data on the storage volume attached to the ML compute instance(s) that run the training and inference jobs used for automated data labeling.

You can only specify a VolumeKmsKeyId when you create a labeling job with automated data labeling enabled using the API operation CreateLabelingJob. You cannot specify an Amazon Web Services KMS key to encrypt the storage volume used for automated data labeling model training and inference when you create a labeling job using the console. To learn more, see Output Data and Storage Volume Encryption.

The VolumeKmsKeyId can be any of the following formats:

", "ModelCardSecurityConfig$KmsKeyId": "

A Key Management Service key ID to use for encrypting a model card.

", @@ -8499,8 +8499,8 @@ "DescribeTransformJobResponse$ModelName": "

The name of the model used in the transform job.

", "Model$ModelName": "

The name of the model.

", "ModelSummary$ModelName": "

The name of the model that you want a summary for.

", - "ModelVariantConfig$ModelName": "

The name of the model.

", - "ModelVariantConfigSummary$ModelName": "

The name of the model.

", + "ModelVariantConfig$ModelName": "

The name of the Amazon SageMaker Model entity.

", + "ModelVariantConfigSummary$ModelName": "

The name of the Amazon SageMaker Model entity.

", "ProductionVariant$ModelName": "

The name of the model that you want to host. This is the name that you specified when creating the model.

", "TransformJob$ModelName": "

The name of the model associated with the transform job.

" } @@ -8762,9 +8762,9 @@ "ModelVariantConfigList": { "base": null, "refs": { - "CreateInferenceExperimentRequest$ModelVariants": "

Array of ModelVariantConfigSummary objects. There is one for each variant in the inference experiment. Each ModelVariantConfigSummary object in the array describes the infrastructure configuration for the corresponding variant.

", - "StopInferenceExperimentRequest$DesiredModelVariants": "

Array of ModelVariantConfig objects. There is one for each variant that you want to deploy after the inference experiment stops. Each ModelVariantConfig describes the infrastructure configuration for deploying the corresponding variant.

", - "UpdateInferenceExperimentRequest$ModelVariants": "

Array of ModelVariantConfigSummary objects. There is one for each variant, whose infrastructure configuration you want to update.

" + "CreateInferenceExperimentRequest$ModelVariants": "

An array of ModelVariantConfig objects. There is one for each variant in the inference experiment. Each ModelVariantConfig object in the array describes the infrastructure configuration for the corresponding variant.

", + "StopInferenceExperimentRequest$DesiredModelVariants": "

An array of ModelVariantConfig objects. There is one for each variant that you want to deploy after the inference experiment stops. Each ModelVariantConfig describes the infrastructure configuration for deploying the corresponding variant.

", + "UpdateInferenceExperimentRequest$ModelVariants": "

An array of ModelVariantConfig objects. There is one for each variant, whose infrastructure configuration you want to update.

" } }, "ModelVariantConfigSummary": { @@ -8776,7 +8776,7 @@ "ModelVariantConfigSummaryList": { "base": null, "refs": { - "DescribeInferenceExperimentResponse$ModelVariants": "

Array of ModelVariantConfigSummary objects. There is one for each variant in the inference experiment. Each ModelVariantConfigSummary object in the array describes the infrastructure configuration for deploying the corresponding variant.

" + "DescribeInferenceExperimentResponse$ModelVariants": "

An array of ModelVariantConfigSummary objects. There is one for each variant in the inference experiment. Each ModelVariantConfigSummary object in the array describes the infrastructure configuration for deploying the corresponding variant.

" } }, "ModelVariantName": { @@ -8785,14 +8785,14 @@ "ModelVariantActionMap$key": null, "ModelVariantConfig$VariantName": "

The name of the variant.

", "ModelVariantConfigSummary$VariantName": "

The name of the variant.

", - "ShadowModeConfig$SourceModelVariantName": "

The name of the production variant.

", + "ShadowModeConfig$SourceModelVariantName": "

The name of the production variant, which takes all the inference requests.

", "ShadowModelVariantConfig$ShadowModelVariantName": "

The name of the shadow variant.

" } }, "ModelVariantStatus": { "base": null, "refs": { - "ModelVariantConfigSummary$Status": "

The status of the deployment.

" + "ModelVariantConfigSummary$Status": "

The status of deployment for the model variant on the hosted inference endpoint.

" } }, "MonitoringAlertActions": { @@ -9705,8 +9705,8 @@ "OfflineStoreConfig": { "base": "

The configuration of an OfflineStore.

Provide an OfflineStoreConfig in a request to CreateFeatureGroup to create an OfflineStore.

To encrypt an OfflineStore using at rest data encryption, specify Amazon Web Services Key Management Service (KMS) key ID, or KMSKeyId, in S3StorageConfig.

", "refs": { - "CreateFeatureGroupRequest$OfflineStoreConfig": "

Use this to configure an OfflineFeatureStore. This parameter allows you to specify:

To learn more about this parameter, see OfflineStoreConfig.

", - "DescribeFeatureGroupResponse$OfflineStoreConfig": "

The configuration of the OfflineStore, inducing the S3 location of the OfflineStore, Amazon Web Services Glue or Amazon Web Services Hive data catalogue configurations, and the security configuration.

", + "CreateFeatureGroupRequest$OfflineStoreConfig": "

Use this to configure an OfflineFeatureStore. This parameter allows you to specify:

To learn more about this parameter, see OfflineStoreConfig.

", + "DescribeFeatureGroupResponse$OfflineStoreConfig": "

The configuration of the offline store. It includes the following configurations:

", "FeatureGroup$OfflineStoreConfig": null } }, @@ -9982,15 +9982,15 @@ "PendingProductionVariantSummaryList": { "base": null, "refs": { - "PendingDeploymentSummary$ProductionVariants": "

List of PendingProductionVariantSummary objects.

", - "PendingDeploymentSummary$ShadowProductionVariants": "

Array of ProductionVariant objects, one for each model that you want to host at this endpoint in shadow mode with production traffic replicated from the model specified on ProductionVariants.If you use this field, you can only specify one variant for ProductionVariants and one variant for ShadowProductionVariants.

" + "PendingDeploymentSummary$ProductionVariants": "

An array of PendingProductionVariantSummary objects, one for each model hosted behind this endpoint for the in-progress deployment.

", + "PendingDeploymentSummary$ShadowProductionVariants": "

An array of PendingProductionVariantSummary objects, one for each model hosted behind this endpoint in shadow mode with production traffic replicated from the model specified on ProductionVariants for the in-progress deployment.

" } }, "Percentage": { "base": null, "refs": { "DeviceSelectionConfig$Percentage": "

Percentage of devices in the fleet to deploy to the current stage.

", - "ShadowModelVariantConfig$SamplingPercentage": "

The percentage of inference requests that are replicated to the shadow variant.

" + "ShadowModelVariantConfig$SamplingPercentage": "

The percentage of inference requests that Amazon SageMaker replicates from the production variant to the shadow variant.

" } }, "Phase": { @@ -10519,10 +10519,10 @@ "ProductionVariantList": { "base": null, "refs": { - "CreateEndpointConfigInput$ProductionVariants": "

An list of ProductionVariant objects, one for each model that you want to host at this endpoint.

", - "CreateEndpointConfigInput$ShadowProductionVariants": "

Array of ProductionVariant objects. There is one for each model that you want to host at this endpoint in shadow mode with production traffic replicated from the model specified on ProductionVariants.If you use this field, you can only specify one variant for ProductionVariants and one variant for ShadowProductionVariants.

", + "CreateEndpointConfigInput$ProductionVariants": "

An array of ProductionVariant objects, one for each model that you want to host at this endpoint.

", + "CreateEndpointConfigInput$ShadowProductionVariants": "

An array of ProductionVariant objects, one for each model that you want to host at this endpoint in shadow mode with production traffic replicated from the model specified on ProductionVariants. If you use this field, you can only specify one variant for ProductionVariants and one variant for ShadowProductionVariants.

", "DescribeEndpointConfigOutput$ProductionVariants": "

An array of ProductionVariant objects, one for each model that you want to host at this endpoint.

", - "DescribeEndpointConfigOutput$ShadowProductionVariants": "

Array of ProductionVariant objects. There is one for each model that you want to host at this endpoint in shadow mode with production traffic replicated from the model specified on ProductionVariants.If you use this field, you can only specify one variant for ProductionVariants and one variant for ShadowProductionVariants.

" + "DescribeEndpointConfigOutput$ShadowProductionVariants": "

An array of ProductionVariant objects, one for each model that you want to host at this endpoint in shadow mode with production traffic replicated from the model specified on ProductionVariants.

" } }, "ProductionVariantModelDataDownloadTimeoutInSeconds": { @@ -10563,10 +10563,10 @@ "ProductionVariantSummaryList": { "base": null, "refs": { - "DescribeEndpointOutput$ProductionVariants": "

An array of ProductionVariantSummary objects, one for each model hosted behind this endpoint.

", - "DescribeEndpointOutput$ShadowProductionVariants": "

Array of ProductionVariant objects. There is one for each model that you want to host at this endpoint in shadow mode with production traffic replicated from the model specified on ProductionVariants.If you use this field, you can only specify one variant for ProductionVariants and one variant for ShadowProductionVariants.

", + "DescribeEndpointOutput$ProductionVariants": "

An array of ProductionVariantSummary objects, one for each model hosted behind this endpoint.

", + "DescribeEndpointOutput$ShadowProductionVariants": "

An array of ProductionVariantSummary objects, one for each model that you want to host at this endpoint in shadow mode with production traffic replicated from the model specified on ProductionVariants.

", "Endpoint$ProductionVariants": "

A list of the production variants hosted on the endpoint. Each production variant is a model.

", - "Endpoint$ShadowProductionVariants": "

Array of ProductionVariant objects, one for each model that you want to host at this endpoint in shadow mode with production traffic replicated from the model specified on ProductionVariants.If you use this field, you can only specify one variant for ProductionVariants and one variant for ShadowProductionVariants.

" + "Endpoint$ShadowProductionVariants": "

A list of the shadow variants hosted on the endpoint. Each shadow variant is a model in shadow mode with production traffic replicated from the proudction variant.

" } }, "ProductionVariantVolumeSizeInGB": { @@ -10871,7 +10871,7 @@ } }, "RealTimeInferenceConfig": { - "base": "

The infrastructure configuration for deploying the model to real-time inference.

", + "base": "

The infrastructure configuration for deploying the model to a real-time inference endpoint.

", "refs": { "ModelInfrastructureConfig$RealTimeInferenceConfig": "

The infrastructure configuration for deploying the model to real-time inference.

" } @@ -10997,6 +10997,36 @@ "InferenceRecommendationsJob$JobType": "

The recommendation job type.

" } }, + "RecommendationJobVpcConfig": { + "base": "

Inference Recommender provisions SageMaker endpoints with access to VPC in the inference recommendation job.

", + "refs": { + "RecommendationJobInputConfig$VpcConfig": "

Inference Recommender provisions SageMaker endpoints with access to VPC in the inference recommendation job.

" + } + }, + "RecommendationJobVpcSecurityGroupId": { + "base": null, + "refs": { + "RecommendationJobVpcSecurityGroupIds$member": null + } + }, + "RecommendationJobVpcSecurityGroupIds": { + "base": null, + "refs": { + "RecommendationJobVpcConfig$SecurityGroupIds": "

The VPC security group IDs. IDs have the form of sg-xxxxxxxx. Specify the security groups for the VPC that is specified in the Subnets field.

" + } + }, + "RecommendationJobVpcSubnetId": { + "base": null, + "refs": { + "RecommendationJobVpcSubnets$member": null + } + }, + "RecommendationJobVpcSubnets": { + "base": null, + "refs": { + "RecommendationJobVpcConfig$Subnets": "

The ID of the subnets in the VPC to which you want to connect your model.

" + } + }, "RecommendationMetrics": { "base": "

The metrics of recommendations.

", "refs": { @@ -11137,7 +11167,7 @@ } }, "ResourceConfig": { - "base": "

Describes the resources, including ML compute instances and ML storage volumes, to use for model training.

", + "base": "

Describes the resources, including machine learning (ML) compute instances and ML storage volumes, to use for model training.

", "refs": { "CreateTrainingJobRequest$ResourceConfig": "

The resources, including the ML compute instances and ML storage volumes, to use for model training.

ML storage volumes store model artifacts and incremental states. Training algorithms might also use ML storage volumes for scratch space. If you want SageMaker to use the ML storage volume to store the training data, choose File as the TrainingInputMode in the algorithm specification. For distributed training algorithms, specify an instance count greater than 1.

", "DescribeTrainingJobResponse$ResourceConfig": "

Resources, including ML compute instances and ML storage volumes, that are configured for model training.

", @@ -11277,7 +11307,7 @@ "CreateFeatureGroupRequest$RoleArn": "

The Amazon Resource Name (ARN) of the IAM execution role used to persist data into the OfflineStore if an OfflineStoreConfig is provided.

", "CreateFlowDefinitionRequest$RoleArn": "

The Amazon Resource Name (ARN) of the role needed to call other services on your behalf. For example, arn:aws:iam::1234567890:role/service-role/AmazonSageMaker-ExecutionRole-20180111T151298.

", "CreateImageRequest$RoleArn": "

The Amazon Resource Name (ARN) of an IAM role that enables Amazon SageMaker to perform tasks on your behalf.

", - "CreateInferenceExperimentRequest$RoleArn": "

The ARN of the IAM role that Amazon SageMaker can assume to access model artifacts and container images.

", + "CreateInferenceExperimentRequest$RoleArn": "

The ARN of the IAM role that Amazon SageMaker can assume to access model artifacts and container images, and manage Amazon SageMaker Inference endpoints for model deployment.

", "CreateInferenceRecommendationsJobRequest$RoleArn": "

The Amazon Resource Name (ARN) of an IAM role that enables Amazon SageMaker to perform tasks on your behalf.

", "CreateLabelingJobRequest$RoleArn": "

The Amazon Resource Number (ARN) that Amazon SageMaker assumes to perform tasks on your behalf during data labeling. You must grant this role the necessary permissions so that Amazon SageMaker can successfully complete data labeling.

", "CreateModelBiasJobDefinitionRequest$RoleArn": "

The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker can assume to perform tasks on your behalf.

", @@ -11294,10 +11324,10 @@ "DescribeDataQualityJobDefinitionResponse$RoleArn": "

The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker can assume to perform tasks on your behalf.

", "DescribeDeviceFleetResponse$RoleArn": "

The Amazon Resource Name (ARN) that has access to Amazon Web Services Internet of Things (IoT).

", "DescribeEdgePackagingJobResponse$RoleArn": "

The Amazon Resource Name (ARN) of an IAM role that enables Amazon SageMaker to download and upload the model, and to contact Neo.

", - "DescribeFeatureGroupResponse$RoleArn": "

The Amazon Resource Name (ARN) of the IAM execution role used to persist data into the OfflineStore if an OfflineStoreConfig is provided.

", + "DescribeFeatureGroupResponse$RoleArn": "

The Amazon Resource Name (ARN) of the IAM execution role used to persist data into the OfflineStore if an OfflineStoreConfig is provided.

", "DescribeFlowDefinitionResponse$RoleArn": "

The Amazon Resource Name (ARN) of the Amazon Web Services Identity and Access Management (IAM) execution role for the flow definition.

", "DescribeImageResponse$RoleArn": "

The Amazon Resource Name (ARN) of the IAM role that enables Amazon SageMaker to perform tasks on your behalf.

", - "DescribeInferenceExperimentResponse$RoleArn": "

The ARN of the IAM role that Amazon SageMaker can assume to access model artifacts and container images.

", + "DescribeInferenceExperimentResponse$RoleArn": "

The ARN of the IAM role that Amazon SageMaker can assume to access model artifacts and container images, and manage Amazon SageMaker Inference endpoints for model deployment.

", "DescribeInferenceRecommendationsJobResponse$RoleArn": "

The Amazon Resource Name (ARN) of the Amazon Web Services Identity and Access Management (IAM) role you provided when you initiated the job.

", "DescribeLabelingJobResponse$RoleArn": "

The Amazon Resource Name (ARN) that SageMaker assumes to perform tasks on your behalf during data labeling.

", "DescribeModelBiasJobDefinitionResponse$RoleArn": "

The Amazon Resource Name (ARN) of the Amazon Web Services Identity and Access Management (IAM) role that has read permission to the input data location and write permission to the output data location in Amazon S3.

", @@ -11310,7 +11340,7 @@ "DescribeTrainingJobResponse$RoleArn": "

The Amazon Web Services Identity and Access Management (IAM) role configured for the training job.

", "FeatureGroup$RoleArn": "

The Amazon Resource Name (ARN) of the IAM execution role used to create the feature group.

", "HyperParameterTrainingJobDefinition$RoleArn": "

The Amazon Resource Name (ARN) of the IAM role associated with the training jobs that the tuning job launches.

", - "InferenceExperimentSummary$RoleArn": "

The ARN of the IAM role that Amazon SageMaker can assume to access model artifacts and container images.

", + "InferenceExperimentSummary$RoleArn": "

The ARN of the IAM role that Amazon SageMaker can assume to access model artifacts and container images, and manage Amazon SageMaker Inference endpoints for model deployment.

", "InferenceRecommendationsJob$RoleArn": "

The Amazon Resource Name (ARN) of an IAM role that enables Amazon SageMaker to perform tasks on your behalf.

", "Model$ExecutionRoleArn": "

The Amazon Resource Name (ARN) of the IAM role that you specified for the model.

", "ModelPackageValidationSpecification$ValidationRole": "

The IAM roles to be used for the validation of the model package.

", @@ -11647,11 +11677,11 @@ } }, "ShadowModeConfig": { - "base": "

Shows which variant is a production variant and which variant is a shadow variant. For shadow variants, also shows the sampling percentages.

", + "base": "

The configuration of ShadowMode inference experiment type, which specifies a production variant to take all the inference requests, and a shadow variant to which Amazon SageMaker replicates a percentage of the inference requests. For the shadow variant it also specifies the percentage of requests that Amazon SageMaker replicates.

", "refs": { - "CreateInferenceExperimentRequest$ShadowModeConfig": "

Shows which variant is the production variant and which variant is the shadow variant. For the shadow variant, also shows the sampling percentage.

", - "DescribeInferenceExperimentResponse$ShadowModeConfig": "

Shows which variant is a production variant and which variant is a shadow variant. For shadow variants, also shows the sampling percentage.

", - "UpdateInferenceExperimentRequest$ShadowModeConfig": "

The Amazon S3 storage configuration for the inference experiment.

" + "CreateInferenceExperimentRequest$ShadowModeConfig": "

The configuration of ShadowMode inference experiment type. Use this field to specify a production variant which takes all the inference requests, and a shadow variant to which Amazon SageMaker replicates a percentage of the inference requests. For the shadow variant also specify the percentage of requests that Amazon SageMaker replicates.

", + "DescribeInferenceExperimentResponse$ShadowModeConfig": "

The configuration of ShadowMode inference experiment type, which shows the production variant that takes all the inference requests, and the shadow variant to which Amazon SageMaker replicates a percentage of the inference requests. For the shadow variant it also shows the percentage of requests that Amazon SageMaker replicates.

", + "UpdateInferenceExperimentRequest$ShadowModeConfig": "

The configuration of ShadowMode inference experiment type. Use this field to specify a production variant which takes all the inference requests, and a shadow variant to which Amazon SageMaker replicates a percentage of the inference requests. For the shadow variant also specify the percentage of requests that Amazon SageMaker replicates.

" } }, "ShadowModelVariantConfig": { @@ -12402,7 +12432,7 @@ "TableFormat": { "base": null, "refs": { - "OfflineStoreConfig$TableFormat": "

Format for the offline store feature group. Iceberg is the optimal format for feature groups shared between offline and online stores.

" + "OfflineStoreConfig$TableFormat": "

Format for the offline store table. Supported formats are Glue (Default) and Apache Iceberg.

" } }, "TableName": { @@ -12572,7 +12602,7 @@ "PendingProductionVariantSummary$DesiredInstanceCount": "

The number of instances requested in this deployment, as specified in the endpoint configuration for the endpoint. The value is taken from the request to the CreateEndpointConfig operation.

", "ProductionVariantSummary$CurrentInstanceCount": "

The number of instances associated with the variant.

", "ProductionVariantSummary$DesiredInstanceCount": "

The number of instances requested in the UpdateEndpointWeightsAndCapacities request.

", - "RealTimeInferenceConfig$InstanceCount": "

The instance type the model is deployed to.

" + "RealTimeInferenceConfig$InstanceCount": "

The number of instances of the type specified by InstanceType.

" } }, "TaskDescription": { @@ -12735,7 +12765,7 @@ "DescribeImageVersionResponse$CreationTime": "

When the version was created.

", "DescribeImageVersionResponse$LastModifiedTime": "

When the version was last modified.

", "DescribeInferenceExperimentResponse$CreationTime": "

The timestamp at which you created the inference experiment.

", - "DescribeInferenceExperimentResponse$CompletionTime": "

The timestamp at which the inference experiment was completed or will complete.

", + "DescribeInferenceExperimentResponse$CompletionTime": "

The timestamp at which the inference experiment was completed.

", "DescribeInferenceExperimentResponse$LastModifiedTime": "

The timestamp at which you last modified the inference experiment.

", "DescribeInferenceRecommendationsJobResponse$CompletionTime": "

A timestamp that shows when the job completed.

", "DescribeLabelingJobResponse$CreationTime": "

The date and time that the labeling job was created.

", @@ -13156,7 +13186,7 @@ "HyperParameterTuningInstanceConfig$InstanceType": "

The instance type used for processing of hyperparameter optimization jobs. Choose from general purpose (no GPUs) instance types: ml.m5.xlarge, ml.m5.2xlarge, and ml.m5.4xlarge or compute optimized (no GPUs) instance types: ml.c5.xlarge and ml.c5.2xlarge. For more information about instance types, see instance type descriptions.

", "HyperParameterTuningResourceConfig$InstanceType": "

The instance type used to run hyperparameter optimization tuning jobs. See descriptions of instance types for more information.

", "InstanceGroup$InstanceType": "

Specifies the instance type of the instance group.

", - "ResourceConfig$InstanceType": "

The ML compute instance type.

", + "ResourceConfig$InstanceType": "

The ML compute instance type.

SageMaker Training on Amazon Elastic Compute Cloud (EC2) P4de instances is in preview release starting December 9th, 2022.

Amazon EC2 P4de instances (currently in preview) are powered by 8 NVIDIA A100 GPUs with 80GB high-performance HBM2e GPU memory, which accelerate the speed of training ML models that need to be trained on large datasets of high-resolution data. In this preview release, Amazon SageMaker supports ML training jobs on P4de instances (ml.p4de.24xlarge) to reduce model training time. The ml.p4de.24xlarge instances are available in the following Amazon Web Services Regions.

To request quota limit increase and start using P4de instances, contact the SageMaker Training service team through your account team.

", "TrainingInstanceTypes$member": null } }, diff --git a/models/apis/sagemaker/2017-07-24/endpoint-rule-set-1.json b/models/apis/sagemaker/2017-07-24/endpoint-rule-set-1.json index 602de7bde1..2a4645506f 100644 --- a/models/apis/sagemaker/2017-07-24/endpoint-rule-set-1.json +++ b/models/apis/sagemaker/2017-07-24/endpoint-rule-set-1.json @@ -52,15 +52,6 @@ "ref": "Endpoint" } ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" } ], "type": "tree", diff --git a/models/apis/sagemaker/2017-07-24/endpoint-tests-1.json b/models/apis/sagemaker/2017-07-24/endpoint-tests-1.json index c44c5b3efb..4503c943f8 100644 --- a/models/apis/sagemaker/2017-07-24/endpoint-tests-1.json +++ b/models/apis/sagemaker/2017-07-24/endpoint-tests-1.json @@ -8,9 +8,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "ap-south-1" + "Region": "ap-south-1", + "UseDualStack": true } }, { @@ -21,9 +21,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "ap-south-1" + "Region": "ap-south-1", + "UseDualStack": false } }, { @@ -34,9 +34,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "ap-south-1" + "Region": "ap-south-1", + "UseDualStack": true } }, { @@ -47,9 +47,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "ap-south-1" + "Region": "ap-south-1", + "UseDualStack": false } }, { @@ -60,9 +60,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "eu-south-1" + "Region": "eu-south-1", + "UseDualStack": true } }, { @@ -73,9 +73,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "eu-south-1" + "Region": "eu-south-1", + "UseDualStack": false } }, { @@ -86,9 +86,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "eu-south-1" + "Region": "eu-south-1", + "UseDualStack": true } }, { @@ -99,9 +99,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "eu-south-1" + "Region": "eu-south-1", + "UseDualStack": false } }, { @@ -112,9 +112,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "us-gov-east-1" + "Region": "us-gov-east-1", + "UseDualStack": true } }, { @@ -125,9 +125,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "us-gov-east-1" + "Region": "us-gov-east-1", + "UseDualStack": false } }, { @@ -138,9 +138,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "us-gov-east-1" + "Region": "us-gov-east-1", + "UseDualStack": true } }, { @@ -151,9 +151,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "us-gov-east-1" + "Region": "us-gov-east-1", + "UseDualStack": false } }, { @@ -164,9 +164,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "me-central-1" + "Region": "me-central-1", + "UseDualStack": true } }, { @@ -177,9 +177,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "me-central-1" + "Region": "me-central-1", + "UseDualStack": false } }, { @@ -190,9 +190,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "me-central-1" + "Region": "me-central-1", + "UseDualStack": true } }, { @@ -203,9 +203,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "me-central-1" + "Region": "me-central-1", + "UseDualStack": false } }, { @@ -216,9 +216,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "ca-central-1" + "Region": "ca-central-1", + "UseDualStack": true } }, { @@ -229,9 +229,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "ca-central-1" + "Region": "ca-central-1", + "UseDualStack": false } }, { @@ -242,9 +242,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "ca-central-1" + "Region": "ca-central-1", + "UseDualStack": true } }, { @@ -255,9 +255,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "ca-central-1" + "Region": "ca-central-1", + "UseDualStack": false } }, { @@ -268,9 +268,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "eu-central-1" + "Region": "eu-central-1", + "UseDualStack": true } }, { @@ -281,9 +281,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "eu-central-1" + "Region": "eu-central-1", + "UseDualStack": false } }, { @@ -294,9 +294,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "eu-central-1" + "Region": "eu-central-1", + "UseDualStack": true } }, { @@ -307,9 +307,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "eu-central-1" + "Region": "eu-central-1", + "UseDualStack": false } }, { @@ -320,9 +320,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "us-west-1" + "Region": "us-west-1", + "UseDualStack": true } }, { @@ -333,9 +333,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "us-west-1" + "Region": "us-west-1", + "UseDualStack": false } }, { @@ -346,9 +346,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "us-west-1" + "Region": "us-west-1", + "UseDualStack": true } }, { @@ -359,9 +359,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "us-west-1" + "Region": "us-west-1", + "UseDualStack": false } }, { @@ -372,9 +372,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "us-west-2" + "Region": "us-west-2", + "UseDualStack": true } }, { @@ -385,9 +385,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "us-west-2" + "Region": "us-west-2", + "UseDualStack": false } }, { @@ -398,9 +398,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "us-west-2" + "Region": "us-west-2", + "UseDualStack": true } }, { @@ -411,9 +411,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "us-west-2" + "Region": "us-west-2", + "UseDualStack": false } }, { @@ -424,9 +424,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "af-south-1" + "Region": "af-south-1", + "UseDualStack": true } }, { @@ -437,9 +437,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "af-south-1" + "Region": "af-south-1", + "UseDualStack": false } }, { @@ -450,9 +450,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "af-south-1" + "Region": "af-south-1", + "UseDualStack": true } }, { @@ -463,9 +463,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "af-south-1" + "Region": "af-south-1", + "UseDualStack": false } }, { @@ -476,9 +476,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "eu-north-1" + "Region": "eu-north-1", + "UseDualStack": true } }, { @@ -489,9 +489,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "eu-north-1" + "Region": "eu-north-1", + "UseDualStack": false } }, { @@ -502,9 +502,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "eu-north-1" + "Region": "eu-north-1", + "UseDualStack": true } }, { @@ -515,9 +515,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "eu-north-1" + "Region": "eu-north-1", + "UseDualStack": false } }, { @@ -528,9 +528,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "eu-west-3" + "Region": "eu-west-3", + "UseDualStack": true } }, { @@ -541,9 +541,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "eu-west-3" + "Region": "eu-west-3", + "UseDualStack": false } }, { @@ -554,9 +554,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "eu-west-3" + "Region": "eu-west-3", + "UseDualStack": true } }, { @@ -567,9 +567,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "eu-west-3" + "Region": "eu-west-3", + "UseDualStack": false } }, { @@ -580,9 +580,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "eu-west-2" + "Region": "eu-west-2", + "UseDualStack": true } }, { @@ -593,9 +593,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "eu-west-2" + "Region": "eu-west-2", + "UseDualStack": false } }, { @@ -606,9 +606,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "eu-west-2" + "Region": "eu-west-2", + "UseDualStack": true } }, { @@ -619,9 +619,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "eu-west-2" + "Region": "eu-west-2", + "UseDualStack": false } }, { @@ -632,9 +632,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "eu-west-1" + "Region": "eu-west-1", + "UseDualStack": true } }, { @@ -645,9 +645,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "eu-west-1" + "Region": "eu-west-1", + "UseDualStack": false } }, { @@ -658,9 +658,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "eu-west-1" + "Region": "eu-west-1", + "UseDualStack": true } }, { @@ -671,9 +671,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "eu-west-1" + "Region": "eu-west-1", + "UseDualStack": false } }, { @@ -684,9 +684,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "ap-northeast-3" + "Region": "ap-northeast-3", + "UseDualStack": true } }, { @@ -697,9 +697,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "ap-northeast-3" + "Region": "ap-northeast-3", + "UseDualStack": false } }, { @@ -710,9 +710,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "ap-northeast-3" + "Region": "ap-northeast-3", + "UseDualStack": true } }, { @@ -723,9 +723,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "ap-northeast-3" + "Region": "ap-northeast-3", + "UseDualStack": false } }, { @@ -736,9 +736,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "ap-northeast-2" + "Region": "ap-northeast-2", + "UseDualStack": true } }, { @@ -749,9 +749,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "ap-northeast-2" + "Region": "ap-northeast-2", + "UseDualStack": false } }, { @@ -762,9 +762,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "ap-northeast-2" + "Region": "ap-northeast-2", + "UseDualStack": true } }, { @@ -775,9 +775,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "ap-northeast-2" + "Region": "ap-northeast-2", + "UseDualStack": false } }, { @@ -788,9 +788,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "ap-northeast-1" + "Region": "ap-northeast-1", + "UseDualStack": true } }, { @@ -801,9 +801,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "ap-northeast-1" + "Region": "ap-northeast-1", + "UseDualStack": false } }, { @@ -814,9 +814,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "ap-northeast-1" + "Region": "ap-northeast-1", + "UseDualStack": true } }, { @@ -827,9 +827,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "ap-northeast-1" + "Region": "ap-northeast-1", + "UseDualStack": false } }, { @@ -840,9 +840,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "me-south-1" + "Region": "me-south-1", + "UseDualStack": true } }, { @@ -853,9 +853,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "me-south-1" + "Region": "me-south-1", + "UseDualStack": false } }, { @@ -866,9 +866,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "me-south-1" + "Region": "me-south-1", + "UseDualStack": true } }, { @@ -879,9 +879,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "me-south-1" + "Region": "me-south-1", + "UseDualStack": false } }, { @@ -892,9 +892,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "sa-east-1" + "Region": "sa-east-1", + "UseDualStack": true } }, { @@ -905,9 +905,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "sa-east-1" + "Region": "sa-east-1", + "UseDualStack": false } }, { @@ -918,9 +918,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "sa-east-1" + "Region": "sa-east-1", + "UseDualStack": true } }, { @@ -931,9 +931,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "sa-east-1" + "Region": "sa-east-1", + "UseDualStack": false } }, { @@ -944,9 +944,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "ap-east-1" + "Region": "ap-east-1", + "UseDualStack": true } }, { @@ -957,9 +957,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "ap-east-1" + "Region": "ap-east-1", + "UseDualStack": false } }, { @@ -970,9 +970,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "ap-east-1" + "Region": "ap-east-1", + "UseDualStack": true } }, { @@ -983,9 +983,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "ap-east-1" + "Region": "ap-east-1", + "UseDualStack": false } }, { @@ -996,9 +996,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "cn-north-1" + "Region": "cn-north-1", + "UseDualStack": true } }, { @@ -1009,9 +1009,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "cn-north-1" + "Region": "cn-north-1", + "UseDualStack": false } }, { @@ -1022,9 +1022,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "cn-north-1" + "Region": "cn-north-1", + "UseDualStack": true } }, { @@ -1035,9 +1035,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "cn-north-1" + "Region": "cn-north-1", + "UseDualStack": false } }, { @@ -1048,9 +1048,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "us-gov-west-1" + "Region": "us-gov-west-1", + "UseDualStack": true } }, { @@ -1061,9 +1061,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "us-gov-west-1" + "Region": "us-gov-west-1", + "UseDualStack": false } }, { @@ -1074,9 +1074,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "us-gov-west-1" + "Region": "us-gov-west-1", + "UseDualStack": true } }, { @@ -1087,9 +1087,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "us-gov-west-1" + "Region": "us-gov-west-1", + "UseDualStack": false } }, { @@ -1100,9 +1100,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "ap-southeast-1" + "Region": "ap-southeast-1", + "UseDualStack": true } }, { @@ -1113,9 +1113,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "ap-southeast-1" + "Region": "ap-southeast-1", + "UseDualStack": false } }, { @@ -1126,9 +1126,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "ap-southeast-1" + "Region": "ap-southeast-1", + "UseDualStack": true } }, { @@ -1139,9 +1139,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "ap-southeast-1" + "Region": "ap-southeast-1", + "UseDualStack": false } }, { @@ -1152,9 +1152,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "ap-southeast-2" + "Region": "ap-southeast-2", + "UseDualStack": true } }, { @@ -1165,9 +1165,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "ap-southeast-2" + "Region": "ap-southeast-2", + "UseDualStack": false } }, { @@ -1178,9 +1178,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "ap-southeast-2" + "Region": "ap-southeast-2", + "UseDualStack": true } }, { @@ -1191,9 +1191,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "ap-southeast-2" + "Region": "ap-southeast-2", + "UseDualStack": false } }, { @@ -1202,9 +1202,9 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "us-iso-east-1" + "Region": "us-iso-east-1", + "UseDualStack": true } }, { @@ -1215,9 +1215,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "us-iso-east-1" + "Region": "us-iso-east-1", + "UseDualStack": false } }, { @@ -1226,9 +1226,9 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "us-iso-east-1" + "Region": "us-iso-east-1", + "UseDualStack": true } }, { @@ -1239,9 +1239,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "us-iso-east-1" + "Region": "us-iso-east-1", + "UseDualStack": false } }, { @@ -1252,9 +1252,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "ap-southeast-3" + "Region": "ap-southeast-3", + "UseDualStack": true } }, { @@ -1265,9 +1265,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "ap-southeast-3" + "Region": "ap-southeast-3", + "UseDualStack": false } }, { @@ -1278,9 +1278,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "ap-southeast-3" + "Region": "ap-southeast-3", + "UseDualStack": true } }, { @@ -1291,9 +1291,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "ap-southeast-3" + "Region": "ap-southeast-3", + "UseDualStack": false } }, { @@ -1304,9 +1304,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "us-east-1" + "Region": "us-east-1", + "UseDualStack": true } }, { @@ -1317,9 +1317,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "us-east-1" + "Region": "us-east-1", + "UseDualStack": false } }, { @@ -1330,9 +1330,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "us-east-1" + "Region": "us-east-1", + "UseDualStack": true } }, { @@ -1343,9 +1343,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "us-east-1" + "Region": "us-east-1", + "UseDualStack": false } }, { @@ -1356,9 +1356,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "us-east-2" + "Region": "us-east-2", + "UseDualStack": true } }, { @@ -1369,9 +1369,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "us-east-2" + "Region": "us-east-2", + "UseDualStack": false } }, { @@ -1382,9 +1382,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "us-east-2" + "Region": "us-east-2", + "UseDualStack": true } }, { @@ -1395,9 +1395,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "us-east-2" + "Region": "us-east-2", + "UseDualStack": false } }, { @@ -1408,9 +1408,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "cn-northwest-1" + "Region": "cn-northwest-1", + "UseDualStack": true } }, { @@ -1421,9 +1421,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "cn-northwest-1" + "Region": "cn-northwest-1", + "UseDualStack": false } }, { @@ -1434,9 +1434,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "cn-northwest-1" + "Region": "cn-northwest-1", + "UseDualStack": true } }, { @@ -1447,9 +1447,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "cn-northwest-1" + "Region": "cn-northwest-1", + "UseDualStack": false } }, { @@ -1458,9 +1458,9 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "us-isob-east-1" + "Region": "us-isob-east-1", + "UseDualStack": true } }, { @@ -1471,9 +1471,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "us-isob-east-1" + "Region": "us-isob-east-1", + "UseDualStack": false } }, { @@ -1482,9 +1482,9 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "us-isob-east-1" + "Region": "us-isob-east-1", + "UseDualStack": true } }, { @@ -1495,9 +1495,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "us-isob-east-1" + "Region": "us-isob-east-1", + "UseDualStack": false } }, { @@ -1508,9 +1508,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, "Region": "us-east-1", + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -1520,9 +1520,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { - "UseDualStack": false, "UseFIPS": true, "Region": "us-east-1", + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -1532,9 +1532,9 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { - "UseDualStack": true, "UseFIPS": false, "Region": "us-east-1", + "UseDualStack": true, "Endpoint": "https://example.com" } } diff --git a/models/apis/securityhub/2018-10-26/api-2.json b/models/apis/securityhub/2018-10-26/api-2.json index 2a4bf66f57..3d9412de71 100644 --- a/models/apis/securityhub/2018-10-26/api-2.json +++ b/models/apis/securityhub/2018-10-26/api-2.json @@ -2108,6 +2108,365 @@ "type":"list", "member":{"shape":"AwsEc2InstanceNetworkInterfacesDetails"} }, + "AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails":{ + "type":"structure", + "members":{ + "DeviceName":{"shape":"NonEmptyString"}, + "Ebs":{"shape":"AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails"}, + "NoDevice":{"shape":"NonEmptyString"}, + "VirtualName":{"shape":"NonEmptyString"} + } + }, + "AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails":{ + "type":"structure", + "members":{ + "DeleteOnTermination":{"shape":"Boolean"}, + "Encrypted":{"shape":"Boolean"}, + "Iops":{"shape":"Integer"}, + "KmsKeyId":{"shape":"NonEmptyString"}, + "SnapshotId":{"shape":"NonEmptyString"}, + "Throughput":{"shape":"Integer"}, + "VolumeSize":{"shape":"Integer"}, + "VolumeType":{"shape":"NonEmptyString"} + } + }, + "AwsEc2LaunchTemplateDataBlockDeviceMappingSetList":{ + "type":"list", + "member":{"shape":"AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails"} + }, + "AwsEc2LaunchTemplateDataCapacityReservationSpecificationCapacityReservationTargetDetails":{ + "type":"structure", + "members":{ + "CapacityReservationId":{"shape":"NonEmptyString"}, + "CapacityReservationResourceGroupArn":{"shape":"NonEmptyString"} + } + }, + "AwsEc2LaunchTemplateDataCapacityReservationSpecificationDetails":{ + "type":"structure", + "members":{ + "CapacityReservationPreference":{"shape":"NonEmptyString"}, + "CapacityReservationTarget":{"shape":"AwsEc2LaunchTemplateDataCapacityReservationSpecificationCapacityReservationTargetDetails"} + } + }, + "AwsEc2LaunchTemplateDataCpuOptionsDetails":{ + "type":"structure", + "members":{ + "CoreCount":{"shape":"Integer"}, + "ThreadsPerCore":{"shape":"Integer"} + } + }, + "AwsEc2LaunchTemplateDataCreditSpecificationDetails":{ + "type":"structure", + "members":{ + "CpuCredits":{"shape":"NonEmptyString"} + } + }, + "AwsEc2LaunchTemplateDataDetails":{ + "type":"structure", + "members":{ + "BlockDeviceMappingSet":{"shape":"AwsEc2LaunchTemplateDataBlockDeviceMappingSetList"}, + "CapacityReservationSpecification":{"shape":"AwsEc2LaunchTemplateDataCapacityReservationSpecificationDetails"}, + "CpuOptions":{"shape":"AwsEc2LaunchTemplateDataCpuOptionsDetails"}, + "CreditSpecification":{"shape":"AwsEc2LaunchTemplateDataCreditSpecificationDetails"}, + "DisableApiStop":{"shape":"Boolean"}, + "DisableApiTermination":{"shape":"Boolean"}, + "EbsOptimized":{"shape":"Boolean"}, + "ElasticGpuSpecificationSet":{"shape":"AwsEc2LaunchTemplateDataElasticGpuSpecificationSetList"}, + "ElasticInferenceAcceleratorSet":{"shape":"AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetList"}, + "EnclaveOptions":{"shape":"AwsEc2LaunchTemplateDataEnclaveOptionsDetails"}, + "HibernationOptions":{"shape":"AwsEc2LaunchTemplateDataHibernationOptionsDetails"}, + "IamInstanceProfile":{"shape":"AwsEc2LaunchTemplateDataIamInstanceProfileDetails"}, + "ImageId":{"shape":"NonEmptyString"}, + "InstanceInitiatedShutdownBehavior":{"shape":"NonEmptyString"}, + "InstanceMarketOptions":{"shape":"AwsEc2LaunchTemplateDataInstanceMarketOptionsDetails"}, + "InstanceRequirements":{"shape":"AwsEc2LaunchTemplateDataInstanceRequirementsDetails"}, + "InstanceType":{"shape":"NonEmptyString"}, + "KernelId":{"shape":"NonEmptyString"}, + "KeyName":{"shape":"NonEmptyString"}, + "LicenseSet":{"shape":"AwsEc2LaunchTemplateDataLicenseSetList"}, + "MaintenanceOptions":{"shape":"AwsEc2LaunchTemplateDataMaintenanceOptionsDetails"}, + "MetadataOptions":{"shape":"AwsEc2LaunchTemplateDataMetadataOptionsDetails"}, + "Monitoring":{"shape":"AwsEc2LaunchTemplateDataMonitoringDetails"}, + "NetworkInterfaceSet":{"shape":"AwsEc2LaunchTemplateDataNetworkInterfaceSetList"}, + "Placement":{"shape":"AwsEc2LaunchTemplateDataPlacementDetails"}, + "PrivateDnsNameOptions":{"shape":"AwsEc2LaunchTemplateDataPrivateDnsNameOptionsDetails"}, + "RamDiskId":{"shape":"NonEmptyString"}, + "SecurityGroupIdSet":{"shape":"NonEmptyStringList"}, + "SecurityGroupSet":{"shape":"NonEmptyStringList"}, + "UserData":{"shape":"NonEmptyString"} + } + }, + "AwsEc2LaunchTemplateDataElasticGpuSpecificationSetDetails":{ + "type":"structure", + "members":{ + "Type":{"shape":"NonEmptyString"} + } + }, + "AwsEc2LaunchTemplateDataElasticGpuSpecificationSetList":{ + "type":"list", + "member":{"shape":"AwsEc2LaunchTemplateDataElasticGpuSpecificationSetDetails"} + }, + "AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetDetails":{ + "type":"structure", + "members":{ + "Count":{"shape":"Integer"}, + "Type":{"shape":"NonEmptyString"} + } + }, + "AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetList":{ + "type":"list", + "member":{"shape":"AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetDetails"} + }, + "AwsEc2LaunchTemplateDataEnclaveOptionsDetails":{ + "type":"structure", + "members":{ + "Enabled":{"shape":"Boolean"} + } + }, + "AwsEc2LaunchTemplateDataHibernationOptionsDetails":{ + "type":"structure", + "members":{ + "Configured":{"shape":"Boolean"} + } + }, + "AwsEc2LaunchTemplateDataIamInstanceProfileDetails":{ + "type":"structure", + "members":{ + "Arn":{"shape":"NonEmptyString"}, + "Name":{"shape":"NonEmptyString"} + } + }, + "AwsEc2LaunchTemplateDataInstanceMarketOptionsDetails":{ + "type":"structure", + "members":{ + "MarketType":{"shape":"NonEmptyString"}, + "SpotOptions":{"shape":"AwsEc2LaunchTemplateDataInstanceMarketOptionsSpotOptionsDetails"} + } + }, + "AwsEc2LaunchTemplateDataInstanceMarketOptionsSpotOptionsDetails":{ + "type":"structure", + "members":{ + "BlockDurationMinutes":{"shape":"Integer"}, + "InstanceInterruptionBehavior":{"shape":"NonEmptyString"}, + "MaxPrice":{"shape":"NonEmptyString"}, + "SpotInstanceType":{"shape":"NonEmptyString"}, + "ValidUntil":{"shape":"NonEmptyString"} + } + }, + "AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorCountDetails":{ + "type":"structure", + "members":{ + "Max":{"shape":"Integer"}, + "Min":{"shape":"Integer"} + } + }, + "AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorTotalMemoryMiBDetails":{ + "type":"structure", + "members":{ + "Max":{"shape":"Integer"}, + "Min":{"shape":"Integer"} + } + }, + "AwsEc2LaunchTemplateDataInstanceRequirementsBaselineEbsBandwidthMbpsDetails":{ + "type":"structure", + "members":{ + "Max":{"shape":"Integer"}, + "Min":{"shape":"Integer"} + } + }, + "AwsEc2LaunchTemplateDataInstanceRequirementsDetails":{ + "type":"structure", + "members":{ + "AcceleratorCount":{"shape":"AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorCountDetails"}, + "AcceleratorManufacturers":{"shape":"NonEmptyStringList"}, + "AcceleratorNames":{"shape":"NonEmptyStringList"}, + "AcceleratorTotalMemoryMiB":{"shape":"AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorTotalMemoryMiBDetails"}, + "AcceleratorTypes":{"shape":"NonEmptyStringList"}, + "BareMetal":{"shape":"NonEmptyString"}, + "BaselineEbsBandwidthMbps":{"shape":"AwsEc2LaunchTemplateDataInstanceRequirementsBaselineEbsBandwidthMbpsDetails"}, + "BurstablePerformance":{"shape":"NonEmptyString"}, + "CpuManufacturers":{"shape":"NonEmptyStringList"}, + "ExcludedInstanceTypes":{"shape":"NonEmptyStringList"}, + "InstanceGenerations":{"shape":"NonEmptyStringList"}, + "LocalStorage":{"shape":"NonEmptyString"}, + "LocalStorageTypes":{"shape":"NonEmptyStringList"}, + "MemoryGiBPerVCpu":{"shape":"AwsEc2LaunchTemplateDataInstanceRequirementsMemoryGiBPerVCpuDetails"}, + "MemoryMiB":{"shape":"AwsEc2LaunchTemplateDataInstanceRequirementsMemoryMiBDetails"}, + "NetworkInterfaceCount":{"shape":"AwsEc2LaunchTemplateDataInstanceRequirementsNetworkInterfaceCountDetails"}, + "OnDemandMaxPricePercentageOverLowestPrice":{"shape":"Integer"}, + "RequireHibernateSupport":{"shape":"Boolean"}, + "SpotMaxPricePercentageOverLowestPrice":{"shape":"Integer"}, + "TotalLocalStorageGB":{"shape":"AwsEc2LaunchTemplateDataInstanceRequirementsTotalLocalStorageGBDetails"}, + "VCpuCount":{"shape":"AwsEc2LaunchTemplateDataInstanceRequirementsVCpuCountDetails"} + } + }, + "AwsEc2LaunchTemplateDataInstanceRequirementsMemoryGiBPerVCpuDetails":{ + "type":"structure", + "members":{ + "Max":{"shape":"Double"}, + "Min":{"shape":"Double"} + } + }, + "AwsEc2LaunchTemplateDataInstanceRequirementsMemoryMiBDetails":{ + "type":"structure", + "members":{ + "Max":{"shape":"Integer"}, + "Min":{"shape":"Integer"} + } + }, + "AwsEc2LaunchTemplateDataInstanceRequirementsNetworkInterfaceCountDetails":{ + "type":"structure", + "members":{ + "Max":{"shape":"Integer"}, + "Min":{"shape":"Integer"} + } + }, + "AwsEc2LaunchTemplateDataInstanceRequirementsTotalLocalStorageGBDetails":{ + "type":"structure", + "members":{ + "Max":{"shape":"Double"}, + "Min":{"shape":"Double"} + } + }, + "AwsEc2LaunchTemplateDataInstanceRequirementsVCpuCountDetails":{ + "type":"structure", + "members":{ + "Max":{"shape":"Integer"}, + "Min":{"shape":"Integer"} + } + }, + "AwsEc2LaunchTemplateDataLicenseSetDetails":{ + "type":"structure", + "members":{ + "LicenseConfigurationArn":{"shape":"NonEmptyString"} + } + }, + "AwsEc2LaunchTemplateDataLicenseSetList":{ + "type":"list", + "member":{"shape":"AwsEc2LaunchTemplateDataLicenseSetDetails"} + }, + "AwsEc2LaunchTemplateDataMaintenanceOptionsDetails":{ + "type":"structure", + "members":{ + "AutoRecovery":{"shape":"NonEmptyString"} + } + }, + "AwsEc2LaunchTemplateDataMetadataOptionsDetails":{ + "type":"structure", + "members":{ + "HttpEndpoint":{"shape":"NonEmptyString"}, + "HttpProtocolIpv6":{"shape":"NonEmptyString"}, + "HttpTokens":{"shape":"NonEmptyString"}, + "HttpPutResponseHopLimit":{"shape":"Integer"}, + "InstanceMetadataTags":{"shape":"NonEmptyString"} + } + }, + "AwsEc2LaunchTemplateDataMonitoringDetails":{ + "type":"structure", + "members":{ + "Enabled":{"shape":"Boolean"} + } + }, + "AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails":{ + "type":"structure", + "members":{ + "AssociateCarrierIpAddress":{"shape":"Boolean"}, + "AssociatePublicIpAddress":{"shape":"Boolean"}, + "DeleteOnTermination":{"shape":"Boolean"}, + "Description":{"shape":"NonEmptyString"}, + "DeviceIndex":{"shape":"Integer"}, + "Groups":{"shape":"NonEmptyStringList"}, + "InterfaceType":{"shape":"NonEmptyString"}, + "Ipv4PrefixCount":{"shape":"Integer"}, + "Ipv4Prefixes":{"shape":"AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv4PrefixesList"}, + "Ipv6AddressCount":{"shape":"Integer"}, + "Ipv6Addresses":{"shape":"AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6AddressesList"}, + "Ipv6PrefixCount":{"shape":"Integer"}, + "Ipv6Prefixes":{"shape":"AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6PrefixesList"}, + "NetworkCardIndex":{"shape":"Integer"}, + "NetworkInterfaceId":{"shape":"NonEmptyString"}, + "PrivateIpAddress":{"shape":"NonEmptyString"}, + "PrivateIpAddresses":{"shape":"AwsEc2LaunchTemplateDataNetworkInterfaceSetPrivateIpAddressesList"}, + "SecondaryPrivateIpAddressCount":{"shape":"Integer"}, + "SubnetId":{"shape":"NonEmptyString"} + } + }, + "AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv4PrefixesDetails":{ + "type":"structure", + "members":{ + "Ipv4Prefix":{"shape":"NonEmptyString"} + } + }, + "AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv4PrefixesList":{ + "type":"list", + "member":{"shape":"AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv4PrefixesDetails"} + }, + "AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6AddressesDetails":{ + "type":"structure", + "members":{ + "Ipv6Address":{"shape":"NonEmptyString"} + } + }, + "AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6AddressesList":{ + "type":"list", + "member":{"shape":"AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6AddressesDetails"} + }, + "AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6PrefixesDetails":{ + "type":"structure", + "members":{ + "Ipv6Prefix":{"shape":"NonEmptyString"} + } + }, + "AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6PrefixesList":{ + "type":"list", + "member":{"shape":"AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6PrefixesDetails"} + }, + "AwsEc2LaunchTemplateDataNetworkInterfaceSetList":{ + "type":"list", + "member":{"shape":"AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails"} + }, + "AwsEc2LaunchTemplateDataNetworkInterfaceSetPrivateIpAddressesDetails":{ + "type":"structure", + "members":{ + "Primary":{"shape":"Boolean"}, + "PrivateIpAddress":{"shape":"NonEmptyString"} + } + }, + "AwsEc2LaunchTemplateDataNetworkInterfaceSetPrivateIpAddressesList":{ + "type":"list", + "member":{"shape":"AwsEc2LaunchTemplateDataNetworkInterfaceSetPrivateIpAddressesDetails"} + }, + "AwsEc2LaunchTemplateDataPlacementDetails":{ + "type":"structure", + "members":{ + "Affinity":{"shape":"NonEmptyString"}, + "AvailabilityZone":{"shape":"NonEmptyString"}, + "GroupName":{"shape":"NonEmptyString"}, + "HostId":{"shape":"NonEmptyString"}, + "HostResourceGroupArn":{"shape":"NonEmptyString"}, + "PartitionNumber":{"shape":"Integer"}, + "SpreadDomain":{"shape":"NonEmptyString"}, + "Tenancy":{"shape":"NonEmptyString"} + } + }, + "AwsEc2LaunchTemplateDataPrivateDnsNameOptionsDetails":{ + "type":"structure", + "members":{ + "EnableResourceNameDnsAAAARecord":{"shape":"Boolean"}, + "EnableResourceNameDnsARecord":{"shape":"Boolean"}, + "HostnameType":{"shape":"NonEmptyString"} + } + }, + "AwsEc2LaunchTemplateDetails":{ + "type":"structure", + "members":{ + "LaunchTemplateName":{"shape":"NonEmptyString"}, + "Id":{"shape":"NonEmptyString"}, + "LaunchTemplateData":{"shape":"AwsEc2LaunchTemplateDataDetails"}, + "DefaultVersionNumber":{"shape":"Long"}, + "LatestVersionNumber":{"shape":"Long"} + } + }, "AwsEc2NetworkAclAssociation":{ "type":"structure", "members":{ @@ -4864,6 +5223,37 @@ "SSEKMSKeyId":{"shape":"NonEmptyString"} } }, + "AwsSageMakerNotebookInstanceDetails":{ + "type":"structure", + "members":{ + "AcceleratorTypes":{"shape":"NonEmptyStringList"}, + "AdditionalCodeRepositories":{"shape":"NonEmptyStringList"}, + "DefaultCodeRepository":{"shape":"NonEmptyString"}, + "DirectInternetAccess":{"shape":"NonEmptyString"}, + "FailureReason":{"shape":"NonEmptyString"}, + "InstanceMetadataServiceConfiguration":{"shape":"AwsSageMakerNotebookInstanceMetadataServiceConfigurationDetails"}, + "InstanceType":{"shape":"NonEmptyString"}, + "KmsKeyId":{"shape":"NonEmptyString"}, + "NetworkInterfaceId":{"shape":"NonEmptyString"}, + "NotebookInstanceArn":{"shape":"NonEmptyString"}, + "NotebookInstanceLifecycleConfigName":{"shape":"NonEmptyString"}, + "NotebookInstanceName":{"shape":"NonEmptyString"}, + "NotebookInstanceStatus":{"shape":"NonEmptyString"}, + "PlatformIdentifier":{"shape":"NonEmptyString"}, + "RoleArn":{"shape":"NonEmptyString"}, + "RootAccess":{"shape":"NonEmptyString"}, + "SecurityGroups":{"shape":"NonEmptyStringList"}, + "SubnetId":{"shape":"NonEmptyString"}, + "Url":{"shape":"NonEmptyString"}, + "VolumeSizeInGB":{"shape":"Integer"} + } + }, + "AwsSageMakerNotebookInstanceMetadataServiceConfigurationDetails":{ + "type":"structure", + "members":{ + "MinimumInstanceMetadataServiceVersion":{"shape":"NonEmptyString"} + } + }, "AwsSecretsManagerSecretDetails":{ "type":"structure", "members":{ @@ -5351,6 +5741,133 @@ "type":"list", "member":{"shape":"AwsWafWebAclRule"} }, + "AwsWafv2ActionAllowDetails":{ + "type":"structure", + "members":{ + "CustomRequestHandling":{"shape":"AwsWafv2CustomRequestHandlingDetails"} + } + }, + "AwsWafv2ActionBlockDetails":{ + "type":"structure", + "members":{ + "CustomResponse":{"shape":"AwsWafv2CustomResponseDetails"} + } + }, + "AwsWafv2CustomHttpHeader":{ + "type":"structure", + "members":{ + "Name":{"shape":"NonEmptyString"}, + "Value":{"shape":"NonEmptyString"} + } + }, + "AwsWafv2CustomRequestHandlingDetails":{ + "type":"structure", + "members":{ + "InsertHeaders":{"shape":"AwsWafv2InsertHeadersList"} + } + }, + "AwsWafv2CustomResponseDetails":{ + "type":"structure", + "members":{ + "CustomResponseBodyKey":{"shape":"NonEmptyString"}, + "ResponseCode":{"shape":"Integer"}, + "ResponseHeaders":{"shape":"AwsWafv2InsertHeadersList"} + } + }, + "AwsWafv2InsertHeadersList":{ + "type":"list", + "member":{"shape":"AwsWafv2CustomHttpHeader"} + }, + "AwsWafv2RuleGroupDetails":{ + "type":"structure", + "members":{ + "Capacity":{"shape":"Long"}, + "Description":{"shape":"NonEmptyString"}, + "Id":{"shape":"NonEmptyString"}, + "Name":{"shape":"NonEmptyString"}, + "Arn":{"shape":"NonEmptyString"}, + "Rules":{"shape":"AwsWafv2RulesList"}, + "Scope":{"shape":"NonEmptyString"}, + "VisibilityConfig":{"shape":"AwsWafv2VisibilityConfigDetails"} + } + }, + "AwsWafv2RulesActionCaptchaDetails":{ + "type":"structure", + "members":{ + "CustomRequestHandling":{"shape":"AwsWafv2CustomRequestHandlingDetails"} + } + }, + "AwsWafv2RulesActionCountDetails":{ + "type":"structure", + "members":{ + "CustomRequestHandling":{"shape":"AwsWafv2CustomRequestHandlingDetails"} + } + }, + "AwsWafv2RulesActionDetails":{ + "type":"structure", + "members":{ + "Allow":{"shape":"AwsWafv2ActionAllowDetails"}, + "Block":{"shape":"AwsWafv2ActionBlockDetails"}, + "Captcha":{"shape":"AwsWafv2RulesActionCaptchaDetails"}, + "Count":{"shape":"AwsWafv2RulesActionCountDetails"} + } + }, + "AwsWafv2RulesDetails":{ + "type":"structure", + "members":{ + "Action":{"shape":"AwsWafv2RulesActionDetails"}, + "Name":{"shape":"NonEmptyString"}, + "OverrideAction":{"shape":"NonEmptyString"}, + "Priority":{"shape":"Integer"}, + "VisibilityConfig":{"shape":"AwsWafv2VisibilityConfigDetails"} + } + }, + "AwsWafv2RulesList":{ + "type":"list", + "member":{"shape":"AwsWafv2RulesDetails"} + }, + "AwsWafv2VisibilityConfigDetails":{ + "type":"structure", + "members":{ + "CloudWatchMetricsEnabled":{"shape":"Boolean"}, + "MetricName":{"shape":"NonEmptyString"}, + "SampledRequestsEnabled":{"shape":"Boolean"} + } + }, + "AwsWafv2WebAclActionDetails":{ + "type":"structure", + "members":{ + "Allow":{"shape":"AwsWafv2ActionAllowDetails"}, + "Block":{"shape":"AwsWafv2ActionBlockDetails"} + } + }, + "AwsWafv2WebAclCaptchaConfigDetails":{ + "type":"structure", + "members":{ + "ImmunityTimeProperty":{"shape":"AwsWafv2WebAclCaptchaConfigImmunityTimePropertyDetails"} + } + }, + "AwsWafv2WebAclCaptchaConfigImmunityTimePropertyDetails":{ + "type":"structure", + "members":{ + "ImmunityTime":{"shape":"Long"} + } + }, + "AwsWafv2WebAclDetails":{ + "type":"structure", + "members":{ + "Name":{"shape":"NonEmptyString"}, + "Arn":{"shape":"NonEmptyString"}, + "ManagedbyFirewallManager":{"shape":"Boolean"}, + "Id":{"shape":"NonEmptyString"}, + "Capacity":{"shape":"Long"}, + "CaptchaConfig":{"shape":"AwsWafv2WebAclCaptchaConfigDetails"}, + "DefaultAction":{"shape":"AwsWafv2WebAclActionDetails"}, + "Description":{"shape":"NonEmptyString"}, + "Rules":{"shape":"AwsWafv2RulesList"}, + "VisibilityConfig":{"shape":"AwsWafv2VisibilityConfigDetails"} + } + }, "AwsXrayEncryptionConfigDetails":{ "type":"structure", "members":{ @@ -7080,7 +7597,11 @@ "AwsEcsTask":{"shape":"AwsEcsTaskDetails"}, "AwsBackupBackupVault":{"shape":"AwsBackupBackupVaultDetails"}, "AwsBackupBackupPlan":{"shape":"AwsBackupBackupPlanDetails"}, - "AwsBackupRecoveryPoint":{"shape":"AwsBackupRecoveryPointDetails"} + "AwsBackupRecoveryPoint":{"shape":"AwsBackupRecoveryPointDetails"}, + "AwsEc2LaunchTemplate":{"shape":"AwsEc2LaunchTemplateDetails"}, + "AwsSageMakerNotebookInstance":{"shape":"AwsSageMakerNotebookInstanceDetails"}, + "AwsWafv2WebAcl":{"shape":"AwsWafv2WebAclDetails"}, + "AwsWafv2RuleGroup":{"shape":"AwsWafv2RuleGroupDetails"} } }, "ResourceList":{ diff --git a/models/apis/securityhub/2018-10-26/docs-2.json b/models/apis/securityhub/2018-10-26/docs-2.json index 9fa733756f..3cf2b76d38 100644 --- a/models/apis/securityhub/2018-10-26/docs-2.json +++ b/models/apis/securityhub/2018-10-26/docs-2.json @@ -942,6 +942,270 @@ "AwsEc2InstanceDetails$NetworkInterfaces": "

The identifiers of the network interfaces for the EC2 instance. The details for each network interface are in a corresponding AwsEc2NetworkInterfacesDetails object.

" } }, + "AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails": { + "base": "

Information about a block device mapping for an Amazon Elastic Compute Cloud (Amazon EC2) launch template.

", + "refs": { + "AwsEc2LaunchTemplateDataBlockDeviceMappingSetList$member": null + } + }, + "AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails": { + "base": "

Parameters for a block device for an Amazon Elastic Block Store (Amazon EBS) volume in an Amazon EC2 launch template.

", + "refs": { + "AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails$Ebs": "

Parameters used to automatically set up Amazon EBS volumes when the instance is launched.

" + } + }, + "AwsEc2LaunchTemplateDataBlockDeviceMappingSetList": { + "base": null, + "refs": { + "AwsEc2LaunchTemplateDataDetails$BlockDeviceMappingSet": "

Information about a block device mapping for an Amazon EC2 launch template.

" + } + }, + "AwsEc2LaunchTemplateDataCapacityReservationSpecificationCapacityReservationTargetDetails": { + "base": "

Information about the target Capacity Reservation or Capacity Reservation group in which to run an Amazon EC2 instance.

", + "refs": { + "AwsEc2LaunchTemplateDataCapacityReservationSpecificationDetails$CapacityReservationTarget": "

Specifies a target Capacity Reservation.

" + } + }, + "AwsEc2LaunchTemplateDataCapacityReservationSpecificationDetails": { + "base": "

Specifies the Capacity Reservation targeting option of an Amazon EC2 instance.

", + "refs": { + "AwsEc2LaunchTemplateDataDetails$CapacityReservationSpecification": "

Specifies an instance's Capacity Reservation targeting option. You can specify only one option at a time.

" + } + }, + "AwsEc2LaunchTemplateDataCpuOptionsDetails": { + "base": "

Specifies the CPU options for an Amazon EC2 instance. For more information, see Optimize CPU options in the Amazon Elastic Compute Cloud User Guide.

", + "refs": { + "AwsEc2LaunchTemplateDataDetails$CpuOptions": "

Specifies the CPU options for an instance. For more information, see Optimize CPU options in the Amazon Elastic Compute Cloud User Guide.

" + } + }, + "AwsEc2LaunchTemplateDataCreditSpecificationDetails": { + "base": "

Specifies the credit option for CPU usage of a T2, T3, or T3a Amazon EC2 instance.

", + "refs": { + "AwsEc2LaunchTemplateDataDetails$CreditSpecification": "

Specifies the credit option for CPU usage of a T2, T3, or T3a instance.

" + } + }, + "AwsEc2LaunchTemplateDataDetails": { + "base": "

The information to include in an Amazon Elastic Compute Cloud (Amazon EC2) launch template.

", + "refs": { + "AwsEc2LaunchTemplateDetails$LaunchTemplateData": "

The information to include in the launch template.

" + } + }, + "AwsEc2LaunchTemplateDataElasticGpuSpecificationSetDetails": { + "base": "

Provides details about an Elastic Graphics specification for an Amazon EC2 launch template.

", + "refs": { + "AwsEc2LaunchTemplateDataElasticGpuSpecificationSetList$member": null + } + }, + "AwsEc2LaunchTemplateDataElasticGpuSpecificationSetList": { + "base": null, + "refs": { + "AwsEc2LaunchTemplateDataDetails$ElasticGpuSpecificationSet": "

Provides details about Elastic Graphics accelerators to associate with the instance.

" + } + }, + "AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetDetails": { + "base": "

Provides details for an Amazon Elastic Inference accelerator.

", + "refs": { + "AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetList$member": null + } + }, + "AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetList": { + "base": null, + "refs": { + "AwsEc2LaunchTemplateDataDetails$ElasticInferenceAcceleratorSet": "

The Amazon Elastic Inference accelerator for the instance.

" + } + }, + "AwsEc2LaunchTemplateDataEnclaveOptionsDetails": { + "base": "

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves.

", + "refs": { + "AwsEc2LaunchTemplateDataDetails$EnclaveOptions": "

Indicates whether the Amazon EC2 instance is enabled for Amazon Web Services Nitro Enclaves.

" + } + }, + "AwsEc2LaunchTemplateDataHibernationOptionsDetails": { + "base": "

Specifies whether your Amazon EC2 instance is configured for hibernation.

", + "refs": { + "AwsEc2LaunchTemplateDataDetails$HibernationOptions": "

Specifies whether your Amazon EC2 instance is configured for hibernation.

" + } + }, + "AwsEc2LaunchTemplateDataIamInstanceProfileDetails": { + "base": "

Provides details for an Identity and Access Management (IAM) instance profile, which is a container for an IAM role for your instance.

", + "refs": { + "AwsEc2LaunchTemplateDataDetails$IamInstanceProfile": "

The name or Amazon Resource Name (ARN) of an IAM instance profile.

" + } + }, + "AwsEc2LaunchTemplateDataInstanceMarketOptionsDetails": { + "base": "

Provides details about the market (purchasing) option for an Amazon EC2 instance.

", + "refs": { + "AwsEc2LaunchTemplateDataDetails$InstanceMarketOptions": "

Specifies the market (purchasing) option for an instance.

" + } + }, + "AwsEc2LaunchTemplateDataInstanceMarketOptionsSpotOptionsDetails": { + "base": "

Provides details about the market (purchasing) options for Spot Instances.

", + "refs": { + "AwsEc2LaunchTemplateDataInstanceMarketOptionsDetails$SpotOptions": "

The options for Spot Instances.

" + } + }, + "AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorCountDetails": { + "base": "

The minimum and maximum number of accelerators (GPUs, FPGAs, or Amazon Web Services Inferentia chips) on an Amazon EC2 instance.

", + "refs": { + "AwsEc2LaunchTemplateDataInstanceRequirementsDetails$AcceleratorCount": "

The minimum and maximum number of accelerators (GPUs, FPGAs, or Amazon Web Services Inferentia chips) on an instance.

" + } + }, + "AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorTotalMemoryMiBDetails": { + "base": "

The minimum and maximum amount of memory, in MiB, for the accelerators on an Amazon EC2 instance.

", + "refs": { + "AwsEc2LaunchTemplateDataInstanceRequirementsDetails$AcceleratorTotalMemoryMiB": "

The minimum and maximum amount of total accelerator memory, in MiB.

" + } + }, + "AwsEc2LaunchTemplateDataInstanceRequirementsBaselineEbsBandwidthMbpsDetails": { + "base": "

The minimum and maximum baseline bandwidth to Amazon Elastic Block Store (Amazon EBS), in Mbps. For more information, see Amazon EBS–optimized instances in the Amazon EC2 User Guide.

", + "refs": { + "AwsEc2LaunchTemplateDataInstanceRequirementsDetails$BaselineEbsBandwidthMbps": "

The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For more information, see Amazon EBS optimized instances in the Amazon EC2 User Guide.

" + } + }, + "AwsEc2LaunchTemplateDataInstanceRequirementsDetails": { + "base": "

The attributes for the Amazon EC2 instance types.

", + "refs": { + "AwsEc2LaunchTemplateDataDetails$InstanceRequirements": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes. If you specify InstanceRequirements, you can't specify InstanceType.

" + } + }, + "AwsEc2LaunchTemplateDataInstanceRequirementsMemoryGiBPerVCpuDetails": { + "base": "

The minimum and maximum amount of memory per vCPU, in GiB.

", + "refs": { + "AwsEc2LaunchTemplateDataInstanceRequirementsDetails$MemoryGiBPerVCpu": "

The minimum and maximum amount of memory per vCPU, in GiB.

" + } + }, + "AwsEc2LaunchTemplateDataInstanceRequirementsMemoryMiBDetails": { + "base": "

The minimum and maximum amount of memory, in MiB, for an Amazon EC2 instance.

", + "refs": { + "AwsEc2LaunchTemplateDataInstanceRequirementsDetails$MemoryMiB": "

The minimum and maximum amount of memory, in MiB.

" + } + }, + "AwsEc2LaunchTemplateDataInstanceRequirementsNetworkInterfaceCountDetails": { + "base": "

The minimum and maximum number of network interfaces to be attached to an Amazon EC2 instance.

", + "refs": { + "AwsEc2LaunchTemplateDataInstanceRequirementsDetails$NetworkInterfaceCount": "

The minimum and maximum number of network interfaces.

" + } + }, + "AwsEc2LaunchTemplateDataInstanceRequirementsTotalLocalStorageGBDetails": { + "base": "

The minimum and maximum amount of total local storage, in GB, that an Amazon EC2 instance uses.

", + "refs": { + "AwsEc2LaunchTemplateDataInstanceRequirementsDetails$TotalLocalStorageGB": "

The minimum and maximum amount of total local storage, in GB.

" + } + }, + "AwsEc2LaunchTemplateDataInstanceRequirementsVCpuCountDetails": { + "base": "

The minimum and maximum number of vCPUs for an Amazon EC2 instance.

", + "refs": { + "AwsEc2LaunchTemplateDataInstanceRequirementsDetails$VCpuCount": "

The minimum and maximum number of vCPUs.

" + } + }, + "AwsEc2LaunchTemplateDataLicenseSetDetails": { + "base": "

Provides details about the license configuration for an Amazon EC2 instance.

", + "refs": { + "AwsEc2LaunchTemplateDataLicenseSetList$member": null + } + }, + "AwsEc2LaunchTemplateDataLicenseSetList": { + "base": null, + "refs": { + "AwsEc2LaunchTemplateDataDetails$LicenseSet": "

Specifies a license configuration for an instance.

" + } + }, + "AwsEc2LaunchTemplateDataMaintenanceOptionsDetails": { + "base": "

The maintenance options of an Amazon EC2 instance.

", + "refs": { + "AwsEc2LaunchTemplateDataDetails$MaintenanceOptions": "

The maintenance options of your instance.

" + } + }, + "AwsEc2LaunchTemplateDataMetadataOptionsDetails": { + "base": "

Specifies the metadata options for an Amazon EC2 instance.

", + "refs": { + "AwsEc2LaunchTemplateDataDetails$MetadataOptions": "

The metadata options for the instance. For more information, see Instance metadata and user data in the Amazon EC2 User Guide.

" + } + }, + "AwsEc2LaunchTemplateDataMonitoringDetails": { + "base": "

The monitoring for an Amazon EC2 instance.

", + "refs": { + "AwsEc2LaunchTemplateDataDetails$Monitoring": "

The monitoring for the instance.

" + } + }, + "AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails": { + "base": "

One or more network interfaces to attach to an Amazon EC2 instance. If you specify a network interface, you must specify security groups and subnets as part of the network interface.

", + "refs": { + "AwsEc2LaunchTemplateDataNetworkInterfaceSetList$member": null + } + }, + "AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv4PrefixesDetails": { + "base": "

Provides details on one or more IPv4 prefixes for a network interface.

", + "refs": { + "AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv4PrefixesList$member": null + } + }, + "AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv4PrefixesList": { + "base": null, + "refs": { + "AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails$Ipv4Prefixes": "

One or more IPv4 prefixes to be assigned to the network interface. You cannot use this option if you use the Ipv4PrefixCount option.

" + } + }, + "AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6AddressesDetails": { + "base": "

Specifies an IPv6 address in an Amazon EC2 launch template.

", + "refs": { + "AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6AddressesList$member": null + } + }, + "AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6AddressesList": { + "base": null, + "refs": { + "AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails$Ipv6Addresses": "

One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. You can't use this option if you use Ipv6AddressCount.

" + } + }, + "AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6PrefixesDetails": { + "base": "

Provides details on one or more IPv6 prefixes to be assigned to the network interface.

", + "refs": { + "AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6PrefixesList$member": null + } + }, + "AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6PrefixesList": { + "base": null, + "refs": { + "AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails$Ipv6Prefixes": "

One or more IPv6 prefixes to be assigned to the network interface. You cannot use this option if you use the Ipv6PrefixCount option.

" + } + }, + "AwsEc2LaunchTemplateDataNetworkInterfaceSetList": { + "base": null, + "refs": { + "AwsEc2LaunchTemplateDataDetails$NetworkInterfaceSet": "

Specifies the parameters for a network interface that is attached to the instance.

" + } + }, + "AwsEc2LaunchTemplateDataNetworkInterfaceSetPrivateIpAddressesDetails": { + "base": "

One or more private IPv4 addresses.

", + "refs": { + "AwsEc2LaunchTemplateDataNetworkInterfaceSetPrivateIpAddressesList$member": null + } + }, + "AwsEc2LaunchTemplateDataNetworkInterfaceSetPrivateIpAddressesList": { + "base": null, + "refs": { + "AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails$PrivateIpAddresses": "

One or more private IPv4 addresses.

" + } + }, + "AwsEc2LaunchTemplateDataPlacementDetails": { + "base": "

Provides details about the placement of an Amazon EC2 instance.

", + "refs": { + "AwsEc2LaunchTemplateDataDetails$Placement": "

Specifies the placement of an instance.

" + } + }, + "AwsEc2LaunchTemplateDataPrivateDnsNameOptionsDetails": { + "base": "

Describes the options for Amazon EC2 instance hostnames.

", + "refs": { + "AwsEc2LaunchTemplateDataDetails$PrivateDnsNameOptions": "

The options for the instance hostname.

" + } + }, + "AwsEc2LaunchTemplateDetails": { + "base": "

Specifies the properties for creating an Amazon Elastic Compute Cloud (Amazon EC2) launch template.

", + "refs": { + "ResourceDetails$AwsEc2LaunchTemplate": null + } + }, "AwsEc2NetworkAclAssociation": { "base": "

An association between the network ACL and a subnet.

", "refs": { @@ -2963,6 +3227,18 @@ "ResourceDetails$AwsS3Object": "

Details about an S3 object related to a finding.

" } }, + "AwsSageMakerNotebookInstanceDetails": { + "base": "

Provides details about an Amazon SageMaker notebook instance.

", + "refs": { + "ResourceDetails$AwsSageMakerNotebookInstance": null + } + }, + "AwsSageMakerNotebookInstanceMetadataServiceConfigurationDetails": { + "base": "

Information on the instance metadata service (IMDS) configuration of the notebook instance.

", + "refs": { + "AwsSageMakerNotebookInstanceDetails$InstanceMetadataServiceConfiguration": "

Information on the IMDS configuration of the notebook instance.

" + } + }, "AwsSecretsManagerSecretDetails": { "base": "

Details about an Secrets Manager secret.

", "refs": { @@ -3222,6 +3498,116 @@ "AwsWafWebAclDetails$Rules": "

An array that contains the action for each rule in a web ACL, the priority of the rule, and the ID of the rule.

" } }, + "AwsWafv2ActionAllowDetails": { + "base": "

Specifies that WAF should allow the request and optionally defines additional custom handling for the request.

", + "refs": { + "AwsWafv2RulesActionDetails$Allow": "

Instructs WAF to allow the web request.

", + "AwsWafv2WebAclActionDetails$Allow": "

Specifies that WAF should allow requests by default.

" + } + }, + "AwsWafv2ActionBlockDetails": { + "base": "

Specifies that WAF should block the request and optionally defines additional custom handling for the response to the web request.

", + "refs": { + "AwsWafv2RulesActionDetails$Block": "

Instructs WAF to block the web request.

", + "AwsWafv2WebAclActionDetails$Block": "

Specifies that WAF should block requests by default.

" + } + }, + "AwsWafv2CustomHttpHeader": { + "base": "

A custom header for custom request and response handling.

", + "refs": { + "AwsWafv2InsertHeadersList$member": null + } + }, + "AwsWafv2CustomRequestHandlingDetails": { + "base": "

Custom request handling behavior that inserts custom headers into a web request. WAF uses custom request handling when the rule action doesn't block the request.

", + "refs": { + "AwsWafv2ActionAllowDetails$CustomRequestHandling": "

Defines custom handling for the web request. For information about customizing web requests and responses, see Customizing web requests and responses in WAF in the WAF Developer Guide..

", + "AwsWafv2RulesActionCaptchaDetails$CustomRequestHandling": "

Defines custom handling for the web request, used when the CAPTCHA inspection determines that the request's token is valid and unexpired. For more information, see Customizing web requests and responses in WAF in the WAF Developer Guide..

", + "AwsWafv2RulesActionCountDetails$CustomRequestHandling": "

Defines custom handling for the web request. For more information, see Customizing web requests and responses in WAF in the WAF Developer Guide..

" + } + }, + "AwsWafv2CustomResponseDetails": { + "base": "

A custom response to send to the client. You can define a custom response for rule actions and default web ACL actions that are set to block.

", + "refs": { + "AwsWafv2ActionBlockDetails$CustomResponse": "

Defines a custom response for the web request. For information, see Customizing web requests and responses in WAF in the WAF Developer Guide..

" + } + }, + "AwsWafv2InsertHeadersList": { + "base": null, + "refs": { + "AwsWafv2CustomRequestHandlingDetails$InsertHeaders": "

The HTTP headers to insert into the request.

", + "AwsWafv2CustomResponseDetails$ResponseHeaders": "

The HTTP headers to use in the response.

" + } + }, + "AwsWafv2RuleGroupDetails": { + "base": "

Details about an WAFv2 rule group.

", + "refs": { + "ResourceDetails$AwsWafv2RuleGroup": null + } + }, + "AwsWafv2RulesActionCaptchaDetails": { + "base": "

Specifies that WAF should run a CAPTCHA check against the request.

", + "refs": { + "AwsWafv2RulesActionDetails$Captcha": "

Instructs WAF to run a CAPTCHA check against the web request.

" + } + }, + "AwsWafv2RulesActionCountDetails": { + "base": "

Specifies that WAF should count the request.

", + "refs": { + "AwsWafv2RulesActionDetails$Count": "

Instructs WAF to count the web request and then continue evaluating the request using the remaining rules in the web ACL.

" + } + }, + "AwsWafv2RulesActionDetails": { + "base": "

The action that WAF should take on a web request when it matches a rule's statement. Settings at the web ACL level can override the rule action setting.

", + "refs": { + "AwsWafv2RulesDetails$Action": "

The action that WAF should take on a web request when it matches the rule statement. Settings at the web ACL level can override the rule action setting.

" + } + }, + "AwsWafv2RulesDetails": { + "base": "

Provides details about rules in a rule group. A rule identifies web requests that you want to allow, block, or count. Each rule includes one top-level Statement that AWS WAF uses to identify matching web requests, and parameters that govern how AWS WAF handles them.

", + "refs": { + "AwsWafv2RulesList$member": null + } + }, + "AwsWafv2RulesList": { + "base": null, + "refs": { + "AwsWafv2RuleGroupDetails$Rules": "

The Rule statements used to identify the web requests that you want to allow, block, or count. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

", + "AwsWafv2WebAclDetails$Rules": "

The Rule statements used to identify the web requests that you want to allow, block, or count. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

" + } + }, + "AwsWafv2VisibilityConfigDetails": { + "base": "

Defines and enables Amazon CloudWatch metrics and web request sample collection.

", + "refs": { + "AwsWafv2RuleGroupDetails$VisibilityConfig": "

Defines and enables Amazon CloudWatch metrics and web request sample collection.

", + "AwsWafv2RulesDetails$VisibilityConfig": "

Defines and enables Amazon CloudWatch metrics and web request sample collection.

", + "AwsWafv2WebAclDetails$VisibilityConfig": "

Defines and enables Amazon CloudWatch metrics and web request sample collection.

" + } + }, + "AwsWafv2WebAclActionDetails": { + "base": "

Specifies the action that Amazon CloudFront or WAF takes when a web request matches the conditions in the rule.

", + "refs": { + "AwsWafv2WebAclDetails$DefaultAction": "

The action to perform if none of the Rules contained in the web ACL match.

" + } + }, + "AwsWafv2WebAclCaptchaConfigDetails": { + "base": "

Specifies how WAF should handle CAPTCHA evaluations for rules that don't have their own CaptchaConfig settings.

", + "refs": { + "AwsWafv2WebAclDetails$CaptchaConfig": "

Specifies how WAF should handle CAPTCHA evaluations for rules that don't have their own CaptchaConfig settings.

" + } + }, + "AwsWafv2WebAclCaptchaConfigImmunityTimePropertyDetails": { + "base": "

Used for CAPTCHA and challenge token settings. Determines how long a CAPTCHA or challenge timestamp remains valid after WAF updates it for a successful CAPTCHA or challenge response.

", + "refs": { + "AwsWafv2WebAclCaptchaConfigDetails$ImmunityTimeProperty": "

Determines how long a CAPTCHA timestamp in the token remains valid after the client successfully solves a CAPTCHA puzzle.

" + } + }, + "AwsWafv2WebAclDetails": { + "base": "

Details about an WAFv2 web Access Control List (ACL).

", + "refs": { + "ResourceDetails$AwsWafv2WebAcl": null + } + }, "AwsXrayEncryptionConfigDetails": { "base": "

Information about the encryption configuration for X-Ray.

", "refs": { @@ -3330,6 +3716,21 @@ "AwsDynamoDbTableGlobalSecondaryIndex$Backfilling": "

Whether the index is currently backfilling.

", "AwsDynamoDbTableRestoreSummary$RestoreInProgress": "

Whether a restore is currently in progress.

", "AwsDynamoDbTableStreamSpecification$StreamEnabled": "

Indicates whether DynamoDB Streams is enabled on the table.

", + "AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails$DeleteOnTermination": "

Indicates whether the EBS volume is deleted on instance termination.

", + "AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails$Encrypted": "

Indicates whether the EBS volume is encrypted. Encrypted volumes can only be attached to instances that support Amazon EBS encryption. If you're creating a volume from a snapshot, you can't specify an encryption value.

", + "AwsEc2LaunchTemplateDataDetails$DisableApiStop": "

Indicates whether to enable the instance for stop protection. For more information, see Enable stop protection in the Amazon EC2 User Guide.

", + "AwsEc2LaunchTemplateDataDetails$DisableApiTermination": "

If you set this parameter to true, you can't terminate the instance using the Amazon EC2 console, CLI, or API. If set to true, you can.

", + "AwsEc2LaunchTemplateDataDetails$EbsOptimized": "

Indicates whether the instance is optimized for Amazon EBS I/O.

", + "AwsEc2LaunchTemplateDataEnclaveOptionsDetails$Enabled": "

If this parameter is set to true, the instance is enabled for Amazon Web Services Nitro Enclaves.

", + "AwsEc2LaunchTemplateDataHibernationOptionsDetails$Configured": "

If you set this parameter to true, the instance is enabled for hibernation.

", + "AwsEc2LaunchTemplateDataInstanceRequirementsDetails$RequireHibernateSupport": "

Indicates whether instance types must support hibernation for On-Demand Instances.

", + "AwsEc2LaunchTemplateDataMonitoringDetails$Enabled": "

Enables detailed monitoring when true is specified. Otherwise, basic monitoring is enabled. For more information about detailed monitoring, see Enable or turn off detailed monitoring for your instances in the Amazon EC2 User Guide.

", + "AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails$AssociateCarrierIpAddress": "

Indicates whether to associate a Carrier IP address with eth0 for a new network interface. You use this option when you launch an instance in a Wavelength Zone and want to associate a Carrier IP address with the network interface. For more information, see Carrier IP address in the Wavelength Developer Guide.

", + "AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails$AssociatePublicIpAddress": "

Associates a public IPv4 address with eth0 for a new network interface.

", + "AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails$DeleteOnTermination": "

Indicates whether the network interface is deleted when the instance is terminated.

", + "AwsEc2LaunchTemplateDataNetworkInterfaceSetPrivateIpAddressesDetails$Primary": "

Indicates whether the private IPv4 address is the primary private IPv4 address. Only one IPv4 address can be designated as primary.

", + "AwsEc2LaunchTemplateDataPrivateDnsNameOptionsDetails$EnableResourceNameDnsAAAARecord": "

Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.

", + "AwsEc2LaunchTemplateDataPrivateDnsNameOptionsDetails$EnableResourceNameDnsARecord": "

Indicates whether to respond to DNS queries for instance hostnames with DNS A records.

", "AwsEc2NetworkAclDetails$IsDefault": "

Whether this is the default network ACL for the VPC.

", "AwsEc2NetworkAclEntry$Egress": "

Whether the rule is an egress rule. An egress rule is a rule that applies to traffic that leaves the subnet.

", "AwsEc2NetworkInterfaceAttachment$DeleteOnTermination": "

Indicates whether the network interface is deleted when the instance is terminated.

", @@ -3437,6 +3838,9 @@ "AwsWafRegionalRateBasedRuleMatchPredicate$Negated": "

If set to true, then the rule actions are performed on requests that match the predicate settings.

If set to false, then the rule actions are performed on all requests except those that match the predicate settings.

", "AwsWafRegionalRulePredicateListDetails$Negated": "

Specifies if you want WAF to allow, block, or count requests based on the settings in the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, RegexMatchSet, GeoMatchSet, or SizeConstraintSet.

", "AwsWafRulePredicateListDetails$Negated": "

Specifies if you want WAF to allow, block, or count requests based on the settings in the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, RegexMatchSet, GeoMatchSet, or SizeConstraintSet.

", + "AwsWafv2VisibilityConfigDetails$CloudWatchMetricsEnabled": "

A boolean indicating whether the associated resource sends metrics to Amazon CloudWatch. For the list of available metrics, see WAF metrics and dimensions in the WAF Developer Guide.

", + "AwsWafv2VisibilityConfigDetails$SampledRequestsEnabled": "

A boolean indicating whether WAF should store a sampling of the web requests that match the rules. You can view the sampled requests through the WAF console.

", + "AwsWafv2WebAclDetails$ManagedbyFirewallManager": "

Indicates whether this web ACL is managed by Firewall Manager.

", "BooleanFilter$Value": "

The value of the boolean.

", "ClassificationResult$AdditionalOccurrences": "

Indicates whether there are additional occurrences of sensitive data that are not included in the finding. This occurs when the number of occurrences exceeds the maximum that can be included.

", "ContainerDetails$Privileged": "

When this parameter is true, the container is given elevated privileges on the host container instance (similar to the root user).

", @@ -3857,6 +4261,10 @@ "AwsApiGatewayMethodSettings$ThrottlingRateLimit": "

The throttling rate limit for the method.

", "AwsApiGatewayV2RouteSettings$ThrottlingRateLimit": "

The throttling rate limit.

", "AwsCloudWatchAlarmDetails$Threshold": "

The value to compare with the specified statistic.

", + "AwsEc2LaunchTemplateDataInstanceRequirementsMemoryGiBPerVCpuDetails$Max": "

The maximum amount of memory per vCPU, in GiB. If this parameter is omitted, there's no maximum limit.

", + "AwsEc2LaunchTemplateDataInstanceRequirementsMemoryGiBPerVCpuDetails$Min": "

The minimum amount of memory per vCPU, in GiB. If this parameter is omitted, there's no maximum limit.

", + "AwsEc2LaunchTemplateDataInstanceRequirementsTotalLocalStorageGBDetails$Max": "

The maximum amount of total local storage, in GB.

", + "AwsEc2LaunchTemplateDataInstanceRequirementsTotalLocalStorageGBDetails$Min": "

The minimum amount of total local storage, in GB.

", "AwsKmsKeyDetails$CreationDate": "

Indicates when the KMS key was created.

Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z.

", "AwsRedshiftClusterRestoreStatus$CurrentRestoreRateInMegaBytesPerSecond": "

The number of megabytes per second being transferred from the backup storage. Returns the average rate for a completed backup.

This field is only updated when you restore to DC2 and DS2 node types.

", "Cvss$BaseScore": "

The base CVSS score.

", @@ -4180,6 +4588,35 @@ "AwsDynamoDbTableProvisionedThroughput$WriteCapacityUnits": "

The maximum number of writes consumed per second before DynamoDB returns a ThrottlingException.

", "AwsDynamoDbTableProvisionedThroughputOverride$ReadCapacityUnits": "

The read capacity units for the replica.

", "AwsEc2InstanceMetadataOptions$HttpPutResponseHopLimit": "

The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel.

", + "AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails$Iops": "

The number of I/O operations per second (IOPS).

", + "AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails$Throughput": "

The throughput to provision for a gp3 volume, with a maximum of 1,000 MiB/s.

", + "AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails$VolumeSize": "

The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size.

", + "AwsEc2LaunchTemplateDataCpuOptionsDetails$CoreCount": "

The number of CPU cores for the instance.

", + "AwsEc2LaunchTemplateDataCpuOptionsDetails$ThreadsPerCore": "

The number of threads per CPU core. A value of 1 disables multithreading for the instance, The default value is 2.

", + "AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetDetails$Count": "

The number of Elastic Inference accelerators to attach to the instance.

", + "AwsEc2LaunchTemplateDataInstanceMarketOptionsSpotOptionsDetails$BlockDurationMinutes": "

Deprecated.

", + "AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorCountDetails$Max": "

The maximum number of accelerators. If this parameter isn't specified, there's no maximum limit. To exclude accelerator-enabled instance types, set Max to 0.

", + "AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorCountDetails$Min": "

The minimum number of accelerators. If this parameter isn't specified, there's no minimum limit.

", + "AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorTotalMemoryMiBDetails$Max": "

The maximum amount of memory, in MiB. If this parameter isn't specified, there's no maximum limit.

", + "AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorTotalMemoryMiBDetails$Min": "

The minimum amount of memory, in MiB. If 0 is specified, there's no maximum limit.

", + "AwsEc2LaunchTemplateDataInstanceRequirementsBaselineEbsBandwidthMbpsDetails$Max": "

The maximum baseline bandwidth, in Mbps. If this parameter is omitted, there's no maximum limit.

", + "AwsEc2LaunchTemplateDataInstanceRequirementsBaselineEbsBandwidthMbpsDetails$Min": "

The minimum baseline bandwidth, in Mbps. If this parameter is omitted, there's no minimum limit.

", + "AwsEc2LaunchTemplateDataInstanceRequirementsDetails$OnDemandMaxPricePercentageOverLowestPrice": "

The price protection threshold for On-Demand Instances. This is the maximum you’ll pay for an On-Demand Instance, expressed as a percentage above the least expensive current generation M, C, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it excludes instance types priced above your threshold.

The parameter accepts an integer, which Amazon EC2 interprets as a percentage.

A high value, such as 999999, turns off price protection.

", + "AwsEc2LaunchTemplateDataInstanceRequirementsDetails$SpotMaxPricePercentageOverLowestPrice": "

The price protection threshold for Spot Instances. This is the maximum you’ll pay for a Spot Instance, expressed as a percentage above the least expensive current generation M, C, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it excludes instance types priced above your threshold.

The parameter accepts an integer, which Amazon EC2 interprets as a percentage.

A high value, such as 999999, turns off price protection.

", + "AwsEc2LaunchTemplateDataInstanceRequirementsMemoryMiBDetails$Max": "

The maximum amount of memory, in MiB.

", + "AwsEc2LaunchTemplateDataInstanceRequirementsMemoryMiBDetails$Min": "

The minimum amount of memory, in MiB.

", + "AwsEc2LaunchTemplateDataInstanceRequirementsNetworkInterfaceCountDetails$Max": "

The maximum number of network interfaces.

", + "AwsEc2LaunchTemplateDataInstanceRequirementsNetworkInterfaceCountDetails$Min": "

The minimum number of network interfaces.

", + "AwsEc2LaunchTemplateDataInstanceRequirementsVCpuCountDetails$Max": "

The maximum number of vCPUs.

", + "AwsEc2LaunchTemplateDataInstanceRequirementsVCpuCountDetails$Min": "

The minimum number of vCPUs.

", + "AwsEc2LaunchTemplateDataMetadataOptionsDetails$HttpPutResponseHopLimit": "

The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel.

", + "AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails$DeviceIndex": "

The device index for the network interface attachment.

", + "AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails$Ipv4PrefixCount": "

The number of IPv4 prefixes to be automatically assigned to the network interface. You cannot use this option if you use the Ipv4Prefixes option.

", + "AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails$Ipv6AddressCount": "

The number of IPv6 addresses to assign to a network interface. Amazon EC2 automatically selects the IPv6 addresses from the subnet range. You can't use this option if you use Ipv6Addresses.

", + "AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails$Ipv6PrefixCount": "

The number of IPv6 prefixes to be automatically assigned to the network interface. You cannot use this option if you use the Ipv6Prefix option.

", + "AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails$NetworkCardIndex": "

The index of the network card. Some instance types support multiple network cards. The primary network interface must be assigned to network card index 0. The default is network card index 0.

", + "AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails$SecondaryPrivateIpAddressCount": "

The number of secondary private IPv4 addresses to assign to a network interface.

", + "AwsEc2LaunchTemplateDataPlacementDetails$PartitionNumber": "

The number of the partition the instance should launch in.

", "AwsEc2NetworkAclEntry$RuleNumber": "

The rule number. The rules are processed in order by their number.

", "AwsEc2NetworkInterfaceAttachment$DeviceIndex": "

The device index of the network interface attachment on the instance.

", "AwsEc2SecurityGroupIpPermission$FromPort": "

The start of the port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number.

A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all codes.

", @@ -4289,6 +4726,7 @@ "AwsS3BucketBucketLifecycleConfigurationRulesDetails$NoncurrentVersionExpirationInDays": "

The number of days that an object is noncurrent before Amazon S3 can perform the associated action.

", "AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails$Days": "

The number of days that an object is noncurrent before Amazon S3 can perform the associated action.

", "AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails$Days": "

The number of days after which to transition the object to the specified storage class. If you provide Days, you cannot provide Date.

", + "AwsSageMakerNotebookInstanceDetails$VolumeSizeInGB": "

The size, in GB, of the ML storage volume to attach to the notebook instance.

", "AwsSecretsManagerSecretRotationRules$AutomaticallyAfterDays": "

The number of days after the previous rotation to rotate the secret.

", "AwsSecurityFinding$Confidence": "

A finding's confidence. Confidence is defined as the likelihood that a finding accurately identifies the behavior or issue that it was intended to identify.

Confidence is scored on a 0-100 basis using a ratio scale, where 0 means zero percent confidence and 100 means 100 percent confidence.

", "AwsSecurityFinding$Criticality": "

The level of importance assigned to the resources associated with the finding.

A score of 0 means that the underlying resources have no criticality, and a score of 100 is reserved for the most critical resources.

", @@ -4309,6 +4747,8 @@ "AwsWafRegionalWebAclRulesListDetails$Priority": "

The order in which WAF evaluates the rules in a web ACL.

", "AwsWafRuleGroupRulesDetails$Priority": "

If you define more than one rule in a web ACL, WAF evaluates each request against the rules in order based on the value of Priority.

", "AwsWafWebAclRule$Priority": "

Specifies the order in which the rules in a web ACL are evaluated. Rules with a lower value for Priority are evaluated before rules with a higher value. The value must be a unique integer. If you add multiple rules to a web ACL, the values do not need to be consecutive.

", + "AwsWafv2CustomResponseDetails$ResponseCode": "

The HTTP status code to return to the client. For a list of status codes that you can use in your custom responses, see Supported status codes for custom response in the WAF Developer Guide.

", + "AwsWafv2RulesDetails$Priority": "

If you define more than one Rule in a WebACL, WAF evaluates each request against the Rules in order based on the value of Priority. WAF processes rules with lower priority first. The priorities don't need to be consecutive, but they must all be different.

", "BatchImportFindingsResponse$FailedCount": "

The number of findings that failed to import.

", "BatchImportFindingsResponse$SuccessCount": "

The number of findings that were successfully imported.

", "DateRange$Value": "

A date range value for the date filter.

", @@ -4368,7 +4808,7 @@ } }, "InvalidAccessException": { - "base": "

There is an issue with the account used to make the request. Either Security Hub is not enabled for the account, or the account does not have permission to perform this action.

", + "base": "

The account doesn't have permission to perform this action.

", "refs": { } }, @@ -4530,6 +4970,8 @@ "AwsBackupRecoveryPointDetails$BackupSizeInBytes": "

The size, in bytes, of a backup.

", "AwsBackupRecoveryPointLifecycleDetails$DeleteAfterDays": "

Specifies the number of days after creation that a recovery point is deleted. Must be greater than 90 days plus MoveToColdStorageAfterDays.

", "AwsBackupRecoveryPointLifecycleDetails$MoveToColdStorageAfterDays": "

Specifies the number of days after creation that a recovery point is moved to cold storage.

", + "AwsEc2LaunchTemplateDetails$DefaultVersionNumber": "

The default version of the launch template.

", + "AwsEc2LaunchTemplateDetails$LatestVersionNumber": "

The latest version of the launch template.

", "AwsElbLbCookieStickinessPolicy$CookieExpirationPeriod": "

The amount of time, in seconds, after which the cookie is considered stale. If an expiration period is not specified, the stickiness session lasts for the duration of the browser session.

", "AwsRedshiftClusterRestoreStatus$ElapsedTimeInSeconds": "

The amount of time an in-progress restore has been running, or the amount of time it took a completed restore to finish.

This field is only updated when you restore to DC2 and DS2 node types.

", "AwsRedshiftClusterRestoreStatus$EstimatedTimeToCompletionInSeconds": "

The estimate of the time remaining before the restore is complete. Returns 0 for a completed restore.

This field is only updated when you restore to DC2 and DS2 node types.

", @@ -4537,6 +4979,9 @@ "AwsRedshiftClusterRestoreStatus$SnapshotSizeInMegaBytes": "

The size of the set of snapshot data that was used to restore the cluster.

This field is only updated when you restore to DC2 and DS2 node types.

", "AwsWafRateBasedRuleDetails$RateLimit": "

The maximum number of requests that have an identical value for the field specified in RateKey that are allowed within a five-minute period. If the number of requests exceeds RateLimit and the other predicates specified in the rule are met, WAF triggers the action for the rule.

", "AwsWafRegionalRateBasedRuleDetails$RateLimit": "

The maximum number of requests that have an identical value for the field specified in RateKey that are allowed within a five-minute period. If the number of requests exceeds RateLimit and the other predicates specified in the rule are met, WAF triggers the action for the rule.

", + "AwsWafv2RuleGroupDetails$Capacity": "

The web ACL capacity units (WCUs) required for this rule group.

", + "AwsWafv2WebAclCaptchaConfigImmunityTimePropertyDetails$ImmunityTime": "

The amount of time, in seconds, that a CAPTCHA or challenge timestamp is considered valid by WAF.

", + "AwsWafv2WebAclDetails$Capacity": "

The web ACL capacity units (WCUs) currently being used by this web ACL.

", "Cell$Column": "

The column number of the column that contains the data. For a Microsoft Excel workbook, the column number corresponds to the alphabetical column identifiers. For example, a value of 1 for Column corresponds to the A column in the workbook.

", "Cell$Row": "

The row number of the row that contains the data.

", "ClassificationResult$SizeClassified": "

The total size in bytes of the affected data.

", @@ -5004,6 +5449,60 @@ "AwsEc2InstanceMetadataOptions$HttpTokens": "

The state of token usage for your instance metadata requests.

", "AwsEc2InstanceMetadataOptions$InstanceMetadataTags": "

Specifies whether to allow access to instance tags from the instance metadata.

", "AwsEc2InstanceNetworkInterfacesDetails$NetworkInterfaceId": "

The identifier of the network interface. The details are in a corresponding AwsEc2NetworkInterfacesDetails object.

", + "AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails$DeviceName": "

The device name.

", + "AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails$NoDevice": "

Omits the device from the block device mapping when an empty string is specified.

", + "AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails$VirtualName": "

The virtual device name (ephemeralN). Instance store volumes are numbered starting from 0. An instance type with 2 available instance store volumes can specify mappings for ephemeral0 and ephemeral1. The number of available instance store volumes depends on the instance type.

", + "AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails$KmsKeyId": "

The Amazon Resource Name (ARN) of the symmetric Key Management Service (KMS) customer managed key used for encryption.

", + "AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails$SnapshotId": "

The ID of the EBS snapshot.

", + "AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails$VolumeType": "

The volume type.

", + "AwsEc2LaunchTemplateDataCapacityReservationSpecificationCapacityReservationTargetDetails$CapacityReservationId": "

The ID of the Capacity Reservation in which to run the instance.

", + "AwsEc2LaunchTemplateDataCapacityReservationSpecificationCapacityReservationTargetDetails$CapacityReservationResourceGroupArn": "

The Amazon Resource Name (ARN) of the Capacity Reservation resource group in which to run the instance.

", + "AwsEc2LaunchTemplateDataCapacityReservationSpecificationDetails$CapacityReservationPreference": "

Indicates the instance's Capacity Reservation preferences. If equal to open, the instance can run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone). If equal to none, the instance avoids running in a Capacity Reservation even if one is available. The instance runs in On-Demand capacity.

", + "AwsEc2LaunchTemplateDataCreditSpecificationDetails$CpuCredits": "

The credit option for CPU usage of a T instance.

", + "AwsEc2LaunchTemplateDataDetails$ImageId": "

The ID of the Amazon Machine Image (AMI).

", + "AwsEc2LaunchTemplateDataDetails$InstanceInitiatedShutdownBehavior": "

Provides the options for specifying the instance initiated shutdown behavior.

", + "AwsEc2LaunchTemplateDataDetails$InstanceType": "

The instance type. For more information, see Instance types in the Amazon EC2 User Guide. If you specify InstanceType, you can't specify InstanceRequirements.

", + "AwsEc2LaunchTemplateDataDetails$KernelId": "

The ID of the kernel.

", + "AwsEc2LaunchTemplateDataDetails$KeyName": "

The name of the key pair that allows users to connect to the instance.

", + "AwsEc2LaunchTemplateDataDetails$RamDiskId": "

The ID of the RAM disk.

", + "AwsEc2LaunchTemplateDataDetails$UserData": "

The user data to make available to the instance.

", + "AwsEc2LaunchTemplateDataElasticGpuSpecificationSetDetails$Type": "

The type of Elastic Graphics accelerator.

", + "AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetDetails$Type": "

The type of Elastic Inference accelerator.

", + "AwsEc2LaunchTemplateDataIamInstanceProfileDetails$Arn": "

The Amazon Resource Name (ARN) of the instance profile.

", + "AwsEc2LaunchTemplateDataIamInstanceProfileDetails$Name": "

The name of the instance profile.

", + "AwsEc2LaunchTemplateDataInstanceMarketOptionsDetails$MarketType": "

The market type.

", + "AwsEc2LaunchTemplateDataInstanceMarketOptionsSpotOptionsDetails$InstanceInterruptionBehavior": "

The behavior when a Spot Instance is interrupted.

", + "AwsEc2LaunchTemplateDataInstanceMarketOptionsSpotOptionsDetails$MaxPrice": "

The maximum hourly price you're willing to pay for the Spot Instances.

", + "AwsEc2LaunchTemplateDataInstanceMarketOptionsSpotOptionsDetails$SpotInstanceType": "

The Spot Instance request type.

", + "AwsEc2LaunchTemplateDataInstanceMarketOptionsSpotOptionsDetails$ValidUntil": "

The end date of the request, in UTC format (YYYY-MM-DDTHH:MM:SSZ), for persistent requests.

", + "AwsEc2LaunchTemplateDataInstanceRequirementsDetails$BareMetal": "

Indicates whether bare metal instance types must be included, excluded, or required.

", + "AwsEc2LaunchTemplateDataInstanceRequirementsDetails$BurstablePerformance": "

Indicates whether burstable performance T instance types are included, excluded, or required. For more information, Burstable performance instances in the Amazon EC2 User Guide.

", + "AwsEc2LaunchTemplateDataInstanceRequirementsDetails$LocalStorage": "

Indicates whether instance types with instance store volumes are included, excluded, or required. For more information, see Amazon EC2 instance store in the Amazon EC2 User Guide.

", + "AwsEc2LaunchTemplateDataLicenseSetDetails$LicenseConfigurationArn": "

The Amazon Resource Name (ARN) of the license configuration.

", + "AwsEc2LaunchTemplateDataMaintenanceOptionsDetails$AutoRecovery": "

Disables the automatic recovery behavior of your instance or sets it to default.

", + "AwsEc2LaunchTemplateDataMetadataOptionsDetails$HttpEndpoint": "

Enables or disables the HTTP metadata endpoint on your instances. If the parameter is not specified, the default state is enabled, and you won’t be able to access your instance metadata.

", + "AwsEc2LaunchTemplateDataMetadataOptionsDetails$HttpProtocolIpv6": "

Enables or disables the IPv6 endpoint for the instance metadata service.

", + "AwsEc2LaunchTemplateDataMetadataOptionsDetails$HttpTokens": "

The state of token usage for your instance metadata requests.

", + "AwsEc2LaunchTemplateDataMetadataOptionsDetails$InstanceMetadataTags": "

When set to enabled, this parameter allows access to instance tags from the instance metadata. When set to disabled, it turns off access to instance tags from the instance metadata. For more information, see Work with instance tags in instance metadata in the Amazon EC2 User Guide.

", + "AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails$Description": "

A description for the network interface.

", + "AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails$InterfaceType": "

The type of network interface.

", + "AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails$NetworkInterfaceId": "

The ID of the network interface.

", + "AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails$PrivateIpAddress": "

The primary private IPv4 address of the network interface.

", + "AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails$SubnetId": "

The ID of the subnet for the network interface.

", + "AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv4PrefixesDetails$Ipv4Prefix": "

The IPv4 prefix. For more information, see Assigning prefixes to Amazon EC2 network interfaces in the Amazon Elastic Compute Cloud User Guide.

", + "AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6AddressesDetails$Ipv6Address": "

One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet.

", + "AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6PrefixesDetails$Ipv6Prefix": "

The IPv6 prefix.

", + "AwsEc2LaunchTemplateDataNetworkInterfaceSetPrivateIpAddressesDetails$PrivateIpAddress": "

The private IPv4 address.

", + "AwsEc2LaunchTemplateDataPlacementDetails$Affinity": "

The affinity setting for an instance on an EC2 Dedicated Host.

", + "AwsEc2LaunchTemplateDataPlacementDetails$AvailabilityZone": "

The Availability Zone for the instance.

", + "AwsEc2LaunchTemplateDataPlacementDetails$GroupName": "

The name of the placement group for the instance.

", + "AwsEc2LaunchTemplateDataPlacementDetails$HostId": "

The ID of the Dedicated Host for the instance.

", + "AwsEc2LaunchTemplateDataPlacementDetails$HostResourceGroupArn": "

The Amazon Resource Name (ARN) of the host resource group in which to launch the instances.

", + "AwsEc2LaunchTemplateDataPlacementDetails$SpreadDomain": "

Reserved for future use.

", + "AwsEc2LaunchTemplateDataPlacementDetails$Tenancy": "

The tenancy of the instance (if the instance is running in a VPC). An instance with a tenancy of dedicated runs on single-tenant hardware.

", + "AwsEc2LaunchTemplateDataPrivateDnsNameOptionsDetails$HostnameType": "

The type of hostname for EC2 instances.

", + "AwsEc2LaunchTemplateDetails$LaunchTemplateName": "

A name for the launch template.

", + "AwsEc2LaunchTemplateDetails$Id": "

An ID for the launch template.

", "AwsEc2NetworkAclAssociation$NetworkAclAssociationId": "

The identifier of the association between the network ACL and the subnet.

", "AwsEc2NetworkAclAssociation$NetworkAclId": "

The identifier of the network ACL.

", "AwsEc2NetworkAclAssociation$SubnetId": "

The identifier of the subnet that is associated with the network ACL.

", @@ -5666,6 +6165,22 @@ "AwsS3ObjectDetails$ContentType": "

A standard MIME type describing the format of the object data.

", "AwsS3ObjectDetails$ServerSideEncryption": "

If the object is stored using server-side encryption, the value of the server-side encryption algorithm used when storing this object in Amazon S3.

", "AwsS3ObjectDetails$SSEKMSKeyId": "

The identifier of the KMS symmetric customer managed key that was used for the object.

", + "AwsSageMakerNotebookInstanceDetails$DefaultCodeRepository": "

The Git repository associated with the notebook instance as its default code repository. This can be either the name of a Git repository stored as a resource in your account, or the URL of a Git repository in AWS CodeCommit or in any other Git repository. When you open a notebook instance, it opens in the directory that contains this repository. For more information, see Associating Git repositories with SageMaker notebook instances in the Amazon SageMaker Developer Guide.

", + "AwsSageMakerNotebookInstanceDetails$DirectInternetAccess": "

Sets whether SageMaker provides internet access to the notebook instance. If you set this to Disabled, this notebook instance is able to access resources only in your VPC, and is not be able to connect to SageMaker training and endpoint services unless you configure a Network Address Translation (NAT) Gateway in your VPC.

", + "AwsSageMakerNotebookInstanceDetails$FailureReason": "

If status of the instance is Failed, the reason it failed.

", + "AwsSageMakerNotebookInstanceDetails$InstanceType": "

The type of machine learning (ML) compute instance to launch for the notebook instance.

", + "AwsSageMakerNotebookInstanceDetails$KmsKeyId": "

The Amazon Resource Name (ARN) of an Key Management Service (KMS) key that SageMaker uses to encrypt data on the storage volume attached to your notebook instance. The KMS key you provide must be enabled. For information, see Enabling and disabling keys in the Key Management Service Developer Guide.

", + "AwsSageMakerNotebookInstanceDetails$NetworkInterfaceId": "

The network interface ID that SageMaker created when the instance was created.

", + "AwsSageMakerNotebookInstanceDetails$NotebookInstanceArn": "

The Amazon Resource Name (ARN) of the notebook instance.

", + "AwsSageMakerNotebookInstanceDetails$NotebookInstanceLifecycleConfigName": "

The name of a notebook instance lifecycle configuration.

", + "AwsSageMakerNotebookInstanceDetails$NotebookInstanceName": "

The name of the new notebook instance.

", + "AwsSageMakerNotebookInstanceDetails$NotebookInstanceStatus": "

The status of the notebook instance.

", + "AwsSageMakerNotebookInstanceDetails$PlatformIdentifier": "

The platform identifier of the notebook instance runtime environment.

", + "AwsSageMakerNotebookInstanceDetails$RoleArn": "

The Amazon Resource Name (ARN) of the IAM role associated with the instance.

", + "AwsSageMakerNotebookInstanceDetails$RootAccess": "

Whether root access is enabled or disabled for users of the notebook instance.

", + "AwsSageMakerNotebookInstanceDetails$SubnetId": "

The ID of the VPC subnet to which you have a connectivity from your ML compute instance.

", + "AwsSageMakerNotebookInstanceDetails$Url": "

The URL that you use to connect to the Jupyter notebook that is running in your notebook instance.

", + "AwsSageMakerNotebookInstanceMetadataServiceConfigurationDetails$MinimumInstanceMetadataServiceVersion": "

Indicates the minimum IMDS version that the notebook instance supports.

", "AwsSecretsManagerSecretDetails$KmsKeyId": "

The ARN, Key ID, or alias of the KMS key used to encrypt the SecretString or SecretBinary values for versions of this secret.

", "AwsSecretsManagerSecretDetails$RotationLambdaArn": "

The ARN of the Lambda function that rotates the secret.

", "AwsSecretsManagerSecretDetails$Name": "

The name of the secret.

", @@ -5755,6 +6270,21 @@ "AwsWafWebAclDetails$WebAclId": "

A unique identifier for a web ACL.

", "AwsWafWebAclRule$RuleId": "

The identifier for a rule.

", "AwsWafWebAclRule$Type": "

The rule type.

Valid values: REGULAR | RATE_BASED | GROUP

The default is REGULAR.

", + "AwsWafv2CustomHttpHeader$Name": "

The name of the custom header.

", + "AwsWafv2CustomHttpHeader$Value": "

The value of the custom header.

", + "AwsWafv2CustomResponseDetails$CustomResponseBodyKey": "

References the response body that you want WAF to return to the web request client. You can define a custom response for a rule action or a default web ACL action that is set to block.

", + "AwsWafv2RuleGroupDetails$Description": "

A description of the rule group that helps with identification.

", + "AwsWafv2RuleGroupDetails$Id": "

A unique identifier for the rule group.

", + "AwsWafv2RuleGroupDetails$Name": "

The name of the rule group. You cannot change the name of a rule group after you create it.

", + "AwsWafv2RuleGroupDetails$Arn": "

The Amazon Resource Name (ARN) of the entity.

", + "AwsWafv2RuleGroupDetails$Scope": "

Specifies whether the rule group is for an Amazon CloudFront distribution or for a regional application. A regional application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, an AppSync GraphQL API, or an Amazon Cognito user pool.

", + "AwsWafv2RulesDetails$Name": "

The name of the rule.

", + "AwsWafv2RulesDetails$OverrideAction": "

The action to use in the place of the action that results from the rule group evaluation.

", + "AwsWafv2VisibilityConfigDetails$MetricName": "

A name of the Amazon CloudWatch metric.

", + "AwsWafv2WebAclDetails$Name": "

The name of the web ACL.

", + "AwsWafv2WebAclDetails$Arn": "

The Amazon Resource Name (ARN) of the web ACL that you want to associate with the resource.

", + "AwsWafv2WebAclDetails$Id": "

A unique identifier for the web ACL.

", + "AwsWafv2WebAclDetails$Description": "

A description of the web ACL that helps with identification.

", "AwsXrayEncryptionConfigDetails$KeyId": "

The identifier of the KMS key that is used for encryption. Provided if Type is KMS.

", "AwsXrayEncryptionConfigDetails$Status": "

The current status of the encryption configuration. Valid values are ACTIVE or UPDATING.

When Status is equal to UPDATING, X-Ray might use both the old and new encryption.

", "AwsXrayEncryptionConfigDetails$Type": "

The type of encryption. KMS indicates that the encryption uses KMS keys. NONE indicates the default encryption.

", @@ -6026,6 +6556,16 @@ "AwsCorsConfiguration$ExposeHeaders": "

The exposed headers for CORS requests.

", "AwsCorsConfiguration$AllowMethods": "

The allowed methods for CORS requests.

", "AwsCorsConfiguration$AllowHeaders": "

The allowed headers for CORS requests.

", + "AwsEc2LaunchTemplateDataDetails$SecurityGroupIdSet": "

One or more security group IDs.

", + "AwsEc2LaunchTemplateDataDetails$SecurityGroupSet": "

One or more security group names. For a nondefault VPC, you must use security group IDs instead. You cannot specify both a security group ID and security name in the same request.

", + "AwsEc2LaunchTemplateDataInstanceRequirementsDetails$AcceleratorManufacturers": "

Indicates whether instance types must have accelerators by specific manufacturers.

", + "AwsEc2LaunchTemplateDataInstanceRequirementsDetails$AcceleratorNames": "

The accelerators that must be on the instance type.

", + "AwsEc2LaunchTemplateDataInstanceRequirementsDetails$AcceleratorTypes": "

The accelerator types that must be on the instance type.

", + "AwsEc2LaunchTemplateDataInstanceRequirementsDetails$CpuManufacturers": "

The CPU manufacturers to include.

", + "AwsEc2LaunchTemplateDataInstanceRequirementsDetails$ExcludedInstanceTypes": "

The instance types to exclude.

", + "AwsEc2LaunchTemplateDataInstanceRequirementsDetails$InstanceGenerations": "

Indicates whether current or previous generation instance types are included.

", + "AwsEc2LaunchTemplateDataInstanceRequirementsDetails$LocalStorageTypes": "

The type of local storage that is required.

", + "AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails$Groups": "

The IDs of one or more security groups.

", "AwsEc2TransitGatewayDetails$TransitGatewayCidrBlocks": "

The transit gateway Classless Inter-Domain Routing (CIDR) blocks.

", "AwsEc2VpcEndpointServiceDetails$AvailabilityZones": "

The Availability Zones where the service is available.

", "AwsEc2VpcEndpointServiceDetails$BaseEndpointDnsNames": "

The DNS names for the service.

", @@ -6067,6 +6607,9 @@ "AwsOpenSearchServiceDomainVpcOptionsDetails$SubnetIds": "

A list of subnet IDs that are associated with the VPC endpoints for the domain.

", "AwsRdsEventSubscriptionDetails$EventCategoriesList": "

The list of event categories for the event notification subscription.

", "AwsRdsEventSubscriptionDetails$SourceIdsList": "

A list of source identifiers for the event notification subscription.

", + "AwsSageMakerNotebookInstanceDetails$AcceleratorTypes": "

A list of Amazon Elastic Inference instance types to associate with the notebook instance. Currently, only one instance type can be associated with a notebook instance.

", + "AwsSageMakerNotebookInstanceDetails$AdditionalCodeRepositories": "

An array of up to three Git repositories associated with the notebook instance. These can be either the names of Git repositories stored as resources in your account, or the URL of Git repositories in AWS CodeCommit or in any other Git repository. These repositories are cloned at the same level as the default repository of your notebook instance. For more information, see Associating Git repositories with SageMaker notebook instances in the Amazon SageMaker Developer Guide.

", + "AwsSageMakerNotebookInstanceDetails$SecurityGroups": "

The VPC security group IDs.

", "FirewallPolicyDetails$StatelessDefaultActions": "

The actions to take on a packet if it doesn't match any of the stateless rules in the policy.

You must specify a standard action (aws:pass, aws:drop, aws:forward_to_sfe), and can optionally include a custom action from StatelessCustomActions.

", "FirewallPolicyDetails$StatelessFragmentDefaultActions": "

The actions to take on a fragmented UDP packet if it doesn't match any of the stateless rules in the policy.

You must specify a standard action (aws:pass, aws:drop, aws:forward_to_sfe), and can optionally include a custom action from StatelessCustomActions.

", "RuleGroupSourceListDetails$TargetTypes": "

The protocols that you want to inspect. Specify LS_SNI for HTTPS. Specify HTTP_HOST for HTTP. You can specify either or both.

", diff --git a/models/apis/securityhub/2018-10-26/endpoint-rule-set-1.json b/models/apis/securityhub/2018-10-26/endpoint-rule-set-1.json index 5f1adabcef..029b4b1afc 100644 --- a/models/apis/securityhub/2018-10-26/endpoint-rule-set-1.json +++ b/models/apis/securityhub/2018-10-26/endpoint-rule-set-1.json @@ -52,15 +52,6 @@ "ref": "Endpoint" } ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" } ], "type": "tree", diff --git a/models/apis/securityhub/2018-10-26/endpoint-tests-1.json b/models/apis/securityhub/2018-10-26/endpoint-tests-1.json index 2cdf326a04..ecc2b7b26b 100644 --- a/models/apis/securityhub/2018-10-26/endpoint-tests-1.json +++ b/models/apis/securityhub/2018-10-26/endpoint-tests-1.json @@ -8,9 +8,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "ap-south-1" + "Region": "ap-south-1", + "UseDualStack": true } }, { @@ -21,9 +21,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "ap-south-1" + "Region": "ap-south-1", + "UseDualStack": false } }, { @@ -34,9 +34,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "ap-south-1" + "Region": "ap-south-1", + "UseDualStack": true } }, { @@ -47,9 +47,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "ap-south-1" + "Region": "ap-south-1", + "UseDualStack": false } }, { @@ -60,9 +60,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "eu-south-1" + "Region": "eu-south-1", + "UseDualStack": true } }, { @@ -73,9 +73,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "eu-south-1" + "Region": "eu-south-1", + "UseDualStack": false } }, { @@ -86,9 +86,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "eu-south-1" + "Region": "eu-south-1", + "UseDualStack": true } }, { @@ -99,9 +99,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "eu-south-1" + "Region": "eu-south-1", + "UseDualStack": false } }, { @@ -112,9 +112,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "us-gov-east-1" + "Region": "us-gov-east-1", + "UseDualStack": true } }, { @@ -125,9 +125,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "us-gov-east-1" + "Region": "us-gov-east-1", + "UseDualStack": false } }, { @@ -138,9 +138,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "us-gov-east-1" + "Region": "us-gov-east-1", + "UseDualStack": true } }, { @@ -151,9 +151,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "us-gov-east-1" + "Region": "us-gov-east-1", + "UseDualStack": false } }, { @@ -164,9 +164,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "me-central-1" + "Region": "me-central-1", + "UseDualStack": true } }, { @@ -177,9 +177,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "me-central-1" + "Region": "me-central-1", + "UseDualStack": false } }, { @@ -190,9 +190,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "me-central-1" + "Region": "me-central-1", + "UseDualStack": true } }, { @@ -203,9 +203,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "me-central-1" + "Region": "me-central-1", + "UseDualStack": false } }, { @@ -216,9 +216,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "ca-central-1" + "Region": "ca-central-1", + "UseDualStack": true } }, { @@ -229,9 +229,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "ca-central-1" + "Region": "ca-central-1", + "UseDualStack": false } }, { @@ -242,9 +242,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "ca-central-1" + "Region": "ca-central-1", + "UseDualStack": true } }, { @@ -255,9 +255,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "ca-central-1" + "Region": "ca-central-1", + "UseDualStack": false } }, { @@ -268,9 +268,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "eu-central-1" + "Region": "eu-central-1", + "UseDualStack": true } }, { @@ -281,9 +281,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "eu-central-1" + "Region": "eu-central-1", + "UseDualStack": false } }, { @@ -294,9 +294,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "eu-central-1" + "Region": "eu-central-1", + "UseDualStack": true } }, { @@ -307,9 +307,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "eu-central-1" + "Region": "eu-central-1", + "UseDualStack": false } }, { @@ -320,9 +320,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "us-west-1" + "Region": "us-west-1", + "UseDualStack": true } }, { @@ -333,9 +333,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "us-west-1" + "Region": "us-west-1", + "UseDualStack": false } }, { @@ -346,9 +346,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "us-west-1" + "Region": "us-west-1", + "UseDualStack": true } }, { @@ -359,9 +359,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "us-west-1" + "Region": "us-west-1", + "UseDualStack": false } }, { @@ -372,9 +372,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "us-west-2" + "Region": "us-west-2", + "UseDualStack": true } }, { @@ -385,9 +385,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "us-west-2" + "Region": "us-west-2", + "UseDualStack": false } }, { @@ -398,9 +398,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "us-west-2" + "Region": "us-west-2", + "UseDualStack": true } }, { @@ -411,9 +411,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "us-west-2" + "Region": "us-west-2", + "UseDualStack": false } }, { @@ -424,9 +424,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "af-south-1" + "Region": "af-south-1", + "UseDualStack": true } }, { @@ -437,9 +437,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "af-south-1" + "Region": "af-south-1", + "UseDualStack": false } }, { @@ -450,9 +450,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "af-south-1" + "Region": "af-south-1", + "UseDualStack": true } }, { @@ -463,9 +463,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "af-south-1" + "Region": "af-south-1", + "UseDualStack": false } }, { @@ -476,9 +476,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "eu-north-1" + "Region": "eu-north-1", + "UseDualStack": true } }, { @@ -489,9 +489,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "eu-north-1" + "Region": "eu-north-1", + "UseDualStack": false } }, { @@ -502,9 +502,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "eu-north-1" + "Region": "eu-north-1", + "UseDualStack": true } }, { @@ -515,9 +515,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "eu-north-1" + "Region": "eu-north-1", + "UseDualStack": false } }, { @@ -528,9 +528,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "eu-west-3" + "Region": "eu-west-3", + "UseDualStack": true } }, { @@ -541,9 +541,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "eu-west-3" + "Region": "eu-west-3", + "UseDualStack": false } }, { @@ -554,9 +554,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "eu-west-3" + "Region": "eu-west-3", + "UseDualStack": true } }, { @@ -567,9 +567,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "eu-west-3" + "Region": "eu-west-3", + "UseDualStack": false } }, { @@ -580,9 +580,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "eu-west-2" + "Region": "eu-west-2", + "UseDualStack": true } }, { @@ -593,9 +593,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "eu-west-2" + "Region": "eu-west-2", + "UseDualStack": false } }, { @@ -606,9 +606,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "eu-west-2" + "Region": "eu-west-2", + "UseDualStack": true } }, { @@ -619,9 +619,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "eu-west-2" + "Region": "eu-west-2", + "UseDualStack": false } }, { @@ -632,9 +632,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "eu-west-1" + "Region": "eu-west-1", + "UseDualStack": true } }, { @@ -645,9 +645,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "eu-west-1" + "Region": "eu-west-1", + "UseDualStack": false } }, { @@ -658,9 +658,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "eu-west-1" + "Region": "eu-west-1", + "UseDualStack": true } }, { @@ -671,9 +671,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "eu-west-1" + "Region": "eu-west-1", + "UseDualStack": false } }, { @@ -684,9 +684,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "ap-northeast-3" + "Region": "ap-northeast-3", + "UseDualStack": true } }, { @@ -697,9 +697,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "ap-northeast-3" + "Region": "ap-northeast-3", + "UseDualStack": false } }, { @@ -710,9 +710,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "ap-northeast-3" + "Region": "ap-northeast-3", + "UseDualStack": true } }, { @@ -723,9 +723,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "ap-northeast-3" + "Region": "ap-northeast-3", + "UseDualStack": false } }, { @@ -736,9 +736,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "ap-northeast-2" + "Region": "ap-northeast-2", + "UseDualStack": true } }, { @@ -749,9 +749,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "ap-northeast-2" + "Region": "ap-northeast-2", + "UseDualStack": false } }, { @@ -762,9 +762,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "ap-northeast-2" + "Region": "ap-northeast-2", + "UseDualStack": true } }, { @@ -775,9 +775,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "ap-northeast-2" + "Region": "ap-northeast-2", + "UseDualStack": false } }, { @@ -788,9 +788,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "ap-northeast-1" + "Region": "ap-northeast-1", + "UseDualStack": true } }, { @@ -801,9 +801,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "ap-northeast-1" + "Region": "ap-northeast-1", + "UseDualStack": false } }, { @@ -814,9 +814,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "ap-northeast-1" + "Region": "ap-northeast-1", + "UseDualStack": true } }, { @@ -827,9 +827,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "ap-northeast-1" + "Region": "ap-northeast-1", + "UseDualStack": false } }, { @@ -840,9 +840,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "me-south-1" + "Region": "me-south-1", + "UseDualStack": true } }, { @@ -853,9 +853,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "me-south-1" + "Region": "me-south-1", + "UseDualStack": false } }, { @@ -866,9 +866,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "me-south-1" + "Region": "me-south-1", + "UseDualStack": true } }, { @@ -879,9 +879,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "me-south-1" + "Region": "me-south-1", + "UseDualStack": false } }, { @@ -892,9 +892,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "sa-east-1" + "Region": "sa-east-1", + "UseDualStack": true } }, { @@ -905,9 +905,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "sa-east-1" + "Region": "sa-east-1", + "UseDualStack": false } }, { @@ -918,9 +918,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "sa-east-1" + "Region": "sa-east-1", + "UseDualStack": true } }, { @@ -931,9 +931,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "sa-east-1" + "Region": "sa-east-1", + "UseDualStack": false } }, { @@ -944,9 +944,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "ap-east-1" + "Region": "ap-east-1", + "UseDualStack": true } }, { @@ -957,9 +957,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "ap-east-1" + "Region": "ap-east-1", + "UseDualStack": false } }, { @@ -970,9 +970,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "ap-east-1" + "Region": "ap-east-1", + "UseDualStack": true } }, { @@ -983,9 +983,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "ap-east-1" + "Region": "ap-east-1", + "UseDualStack": false } }, { @@ -996,9 +996,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "cn-north-1" + "Region": "cn-north-1", + "UseDualStack": true } }, { @@ -1009,9 +1009,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "cn-north-1" + "Region": "cn-north-1", + "UseDualStack": false } }, { @@ -1022,9 +1022,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "cn-north-1" + "Region": "cn-north-1", + "UseDualStack": true } }, { @@ -1035,9 +1035,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "cn-north-1" + "Region": "cn-north-1", + "UseDualStack": false } }, { @@ -1048,9 +1048,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "us-gov-west-1" + "Region": "us-gov-west-1", + "UseDualStack": true } }, { @@ -1061,9 +1061,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "us-gov-west-1" + "Region": "us-gov-west-1", + "UseDualStack": false } }, { @@ -1074,9 +1074,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "us-gov-west-1" + "Region": "us-gov-west-1", + "UseDualStack": true } }, { @@ -1087,9 +1087,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "us-gov-west-1" + "Region": "us-gov-west-1", + "UseDualStack": false } }, { @@ -1100,9 +1100,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "ap-southeast-1" + "Region": "ap-southeast-1", + "UseDualStack": true } }, { @@ -1113,9 +1113,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "ap-southeast-1" + "Region": "ap-southeast-1", + "UseDualStack": false } }, { @@ -1126,9 +1126,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "ap-southeast-1" + "Region": "ap-southeast-1", + "UseDualStack": true } }, { @@ -1139,9 +1139,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "ap-southeast-1" + "Region": "ap-southeast-1", + "UseDualStack": false } }, { @@ -1152,9 +1152,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "ap-southeast-2" + "Region": "ap-southeast-2", + "UseDualStack": true } }, { @@ -1165,9 +1165,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "ap-southeast-2" + "Region": "ap-southeast-2", + "UseDualStack": false } }, { @@ -1178,9 +1178,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "ap-southeast-2" + "Region": "ap-southeast-2", + "UseDualStack": true } }, { @@ -1191,9 +1191,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "ap-southeast-2" + "Region": "ap-southeast-2", + "UseDualStack": false } }, { @@ -1204,9 +1204,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "ap-southeast-3" + "Region": "ap-southeast-3", + "UseDualStack": true } }, { @@ -1217,9 +1217,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "ap-southeast-3" + "Region": "ap-southeast-3", + "UseDualStack": false } }, { @@ -1230,9 +1230,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "ap-southeast-3" + "Region": "ap-southeast-3", + "UseDualStack": true } }, { @@ -1243,9 +1243,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "ap-southeast-3" + "Region": "ap-southeast-3", + "UseDualStack": false } }, { @@ -1256,9 +1256,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "us-east-1" + "Region": "us-east-1", + "UseDualStack": true } }, { @@ -1269,9 +1269,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "us-east-1" + "Region": "us-east-1", + "UseDualStack": false } }, { @@ -1282,9 +1282,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "us-east-1" + "Region": "us-east-1", + "UseDualStack": true } }, { @@ -1295,9 +1295,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "us-east-1" + "Region": "us-east-1", + "UseDualStack": false } }, { @@ -1308,9 +1308,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "us-east-2" + "Region": "us-east-2", + "UseDualStack": true } }, { @@ -1321,9 +1321,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "us-east-2" + "Region": "us-east-2", + "UseDualStack": false } }, { @@ -1334,9 +1334,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "us-east-2" + "Region": "us-east-2", + "UseDualStack": true } }, { @@ -1347,9 +1347,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "us-east-2" + "Region": "us-east-2", + "UseDualStack": false } }, { @@ -1360,9 +1360,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, - "Region": "cn-northwest-1" + "Region": "cn-northwest-1", + "UseDualStack": true } }, { @@ -1373,9 +1373,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, - "Region": "cn-northwest-1" + "Region": "cn-northwest-1", + "UseDualStack": false } }, { @@ -1386,9 +1386,9 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, - "Region": "cn-northwest-1" + "Region": "cn-northwest-1", + "UseDualStack": true } }, { @@ -1399,9 +1399,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "cn-northwest-1" + "Region": "cn-northwest-1", + "UseDualStack": false } }, { @@ -1412,9 +1412,9 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, "Region": "us-east-1", + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -1424,9 +1424,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { - "UseDualStack": false, "UseFIPS": true, "Region": "us-east-1", + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -1436,9 +1436,9 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { - "UseDualStack": true, "UseFIPS": false, "Region": "us-east-1", + "UseDualStack": true, "Endpoint": "https://example.com" } } diff --git a/models/apis/translate/2017-07-01/api-2.json b/models/apis/translate/2017-07-01/api-2.json index 86fb8ec175..971cac9514 100644 --- a/models/apis/translate/2017-07-01/api-2.json +++ b/models/apis/translate/2017-07-01/api-2.json @@ -309,9 +309,9 @@ }, "BoundedLengthString":{ "type":"string", - "max":5000, + "max":10000, "min":1, - "pattern":"[\\P{M}\\p{M}]{1,5000}" + "pattern":"[\\P{M}\\p{M}]{1,10000}" }, "ClientTokenString":{ "type":"string", @@ -1096,13 +1096,18 @@ "TargetLanguageCode" ], "members":{ - "TranslatedText":{"shape":"String"}, + "TranslatedText":{"shape":"TranslatedTextString"}, "SourceLanguageCode":{"shape":"LanguageCodeString"}, "TargetLanguageCode":{"shape":"LanguageCodeString"}, "AppliedTerminologies":{"shape":"AppliedTerminologyList"}, "AppliedSettings":{"shape":"TranslationSettings"} } }, + "TranslatedTextString":{ + "type":"string", + "max":20000, + "pattern":"[\\P{M}\\p{M}]{0,20000}" + }, "TranslationSettings":{ "type":"structure", "members":{ diff --git a/models/apis/translate/2017-07-01/docs-2.json b/models/apis/translate/2017-07-01/docs-2.json index b1718d3609..3b79190834 100644 --- a/models/apis/translate/2017-07-01/docs-2.json +++ b/models/apis/translate/2017-07-01/docs-2.json @@ -1,6 +1,6 @@ { "version": "2.0", - "service": "

Provides language translation for input text in the source language to the specified target language.

", + "service": "

Provides translation of the input content from the source language to the target language.

", "operations": { "CreateParallelData": "

Creates a parallel data resource in Amazon Translate by importing an input file from Amazon S3. Parallel data files contain examples that show how you want segments of text to be translated. By adding parallel data, you can influence the style, tone, and word choice in your translation output.

", "DeleteParallelData": "

Deletes a parallel data resource in Amazon Translate.

", @@ -14,7 +14,7 @@ "ListTagsForResource": "

Lists all tags associated with a given Amazon Translate resource. For more information, see Tagging your resources.

", "ListTerminologies": "

Provides a list of custom terminologies associated with your account.

", "ListTextTranslationJobs": "

Gets a list of the batch translation jobs that you have submitted.

", - "StartTextTranslationJob": "

Starts an asynchronous batch translation job. Use batch translation jobs to translate large volumes of text across multiple documents at once. For batch translation, the input documents must share the same source language. You can specify one or more target languages. Batch translation translates each input document into each of the target languages. For more information, see Asynchronous batch processing

Batch translation jobs can be described with the DescribeTextTranslationJob operation, listed with the ListTextTranslationJobs operation, and stopped with the StopTextTranslationJob operation.

Amazon Translate does not support batch translation of multiple source languages at once.

", + "StartTextTranslationJob": "

Starts an asynchronous batch translation job. Use batch translation jobs to translate large volumes of text across multiple documents at once. For batch translation, you can input documents with different source languages (specify auto as the source language). You can specify one or more target languages. Batch translation translates each input document into each of the target languages. For more information, see Asynchronous batch processing.

Batch translation jobs can be described with the DescribeTextTranslationJob operation, listed with the ListTextTranslationJobs operation, and stopped with the StopTextTranslationJob operation.

", "StopTextTranslationJob": "

Stops an asynchronous batch translation job that is in progress.

If the job's state is IN_PROGRESS, the job will be marked for termination and put into the STOP_REQUESTED state. If the job completes before it can be stopped, it is put into the COMPLETED state. Otherwise, the job is put into the STOPPED state.

Asynchronous batch translation jobs are started with the StartTextTranslationJob operation. You can use the DescribeTextTranslationJob or ListTextTranslationJobs operations to get a batch translation job's JobId.

", "TagResource": "

Associates a specific tag with a resource. A tag is a key-value pair that adds as a metadata to a resource. For more information, see Tagging your resources.

", "TranslateText": "

Translates input text from the source language to the target language. For a list of available languages and language codes, see Supported languages.

", @@ -37,7 +37,7 @@ "BoundedLengthString": { "base": null, "refs": { - "TranslateTextRequest$Text": "

The text to translate. The text string can be a maximum of 5,000 bytes long. Depending on your character set, this may be fewer than 5,000 characters.

" + "TranslateTextRequest$Text": "

The text to translate. The text string can be a maximum of 10,000 bytes long. Depending on your character set, this may be fewer than 10,000 characters.

" } }, "ClientTokenString": { @@ -153,7 +153,7 @@ "Formality": { "base": null, "refs": { - "TranslationSettings$Formality": "

You can optionally specify the desired level of formality for translations to supported target languages. The formality setting controls the level of formal language usage (also known as register) in the translation output. You can set the value to informal or formal. If you don't specify a value for formality, or if the target language doesn't support formality, the translation will ignore the formality setting.

If you specify multiple target languages for the job, translate ignores the formality setting for any unsupported target language.

For a list of target languages that support formality, see Setting Formality in the Amazon Translate Developer Guide.

" + "TranslationSettings$Formality": "

You can optionally specify the desired level of formality for translations to supported target languages. The formality setting controls the level of formal language usage (also known as register) in the translation output. You can set the value to informal or formal. If you don't specify a value for formality, or if the target language doesn't support formality, the translation will ignore the formality setting.

If you specify multiple target languages for the job, translate ignores the formality setting for any unsupported target language.

For a list of target languages that support formality, see Supported languages in the Amazon Translate Developer Guide.

" } }, "GetParallelDataRequest": { @@ -277,7 +277,7 @@ "Language$LanguageCode": "

Language code for the supported language.

", "LanguageCodeStringList$member": null, "ParallelDataProperties$SourceLanguageCode": "

The source language of the translations in the parallel data file.

", - "StartTextTranslationJobRequest$SourceLanguageCode": "

The language code of the input language. For a list of language codes, see Supported languages.

Amazon Translate does not automatically detect a source language during batch translation jobs.

", + "StartTextTranslationJobRequest$SourceLanguageCode": "

The language code of the input language. Specify the language if all input documents share the same language. If you don't know the language of the source files, or your input documents contains different source languages, select auto. Amazon Translate auto detects the source language for each input document. For a list of supported language codes, see Supported languages.

", "TargetLanguageCodeStringList$member": null, "TerminologyProperties$SourceLanguageCode": "

The language code for the source text of the translation request for which the custom terminology is being used.

", "TextTranslationJobProperties$SourceLanguageCode": "

The language code of the language of the source text. The language must be a language supported by Amazon Translate.

", @@ -463,7 +463,7 @@ "Profanity": { "base": null, "refs": { - "TranslationSettings$Profanity": "

Enable the profanity setting if you want Amazon Translate to mask profane words and phrases in your translation output.

To mask profane words and phrases, Amazon Translate replaces them with the grawlix string “?$#@$“. This 5-character sequence is used for each profane word or phrase, regardless of the length or number of words.

Amazon Translate doesn't detect profanity in all of its supported languages. For languages that support profanity detection, see Masking profanity in the Amazon Translate Developer Guide.

If you specify multiple target languages for the job, all the target languages must support profanity masking. If any of the target languages don't support profanity masking, the translation job won't mask profanity for any target language.

" + "TranslationSettings$Profanity": "

Enable the profanity setting if you want Amazon Translate to mask profane words and phrases in your translation output.

To mask profane words and phrases, Amazon Translate replaces them with the grawlix string “?$#@$“. This 5-character sequence is used for each profane word or phrase, regardless of the length or number of words.

Amazon Translate doesn't detect profanity in all of its supported languages. For languages that don't support profanity detection, see Unsupported languages in the Amazon Translate Developer Guide.

If you specify multiple target languages for the job, all the target languages must support profanity masking. If any of the target languages don't support profanity masking, the translation job won't mask profanity for any target language.

" } }, "ResourceArn": { @@ -512,7 +512,7 @@ "S3Uri": { "base": null, "refs": { - "InputDataConfig$S3Uri": "

The URI of the AWS S3 folder that contains the input files. Amazon Translate translates all the files in the folder. The folder must be in the same Region as the API endpoint you are calling.

The URI can also point to a single input document, or it can provide the prefix for a collection of input documents. For example. if you use the URI S3://bucketName/prefix and the prefix is a single file, Amazon Translate uses that files as input. If more than one file begins with the prefix, Amazon Translate uses all of them as input.

", + "InputDataConfig$S3Uri": "

The URI of the AWS S3 folder that contains the input files. Amazon Translate translates all the files in the folder and all its sub-folders. The folder must be in the same Region as the API endpoint you are calling.

", "OutputDataConfig$S3Uri": "

The URI of the S3 folder that contains a translation job's output file. The folder must be in the same Region as the API endpoint that you are calling.

", "ParallelDataConfig$S3Uri": "

The URI of the Amazon S3 folder that contains the parallel data input file. The folder must be in the same Region as the API endpoint you are calling.

" } @@ -564,7 +564,6 @@ "TextSizeLimitExceededException$Message": null, "TooManyRequestsException$Message": null, "TooManyTagsException$message": null, - "TranslateTextResponse$TranslatedText": "

The translated text.

", "UnsupportedDisplayLanguageCodeException$Message": null, "UnsupportedLanguagePairException$Message": null } @@ -616,7 +615,7 @@ "TargetLanguageCodeStringList": { "base": null, "refs": { - "StartTextTranslationJobRequest$TargetLanguageCodes": "

The target languages of the translation job. Enter up to 10 language codes. Each input file is translated into each target language.

Each language code is two or five characters long. For a list of language codes, see Supported languages.

", + "StartTextTranslationJobRequest$TargetLanguageCodes": "

The target languages of the translation job. Enter up to 10 language codes. Each input file is translated into each target language.

Each language code is 2 or 5 characters long. For a list of language codes, see Supported languages.

", "TextTranslationJobProperties$TargetLanguageCodes": "

The language code of the language of the target text. The language must be a language supported by Amazon Translate.

" } }, @@ -739,6 +738,12 @@ "refs": { } }, + "TranslatedTextString": { + "base": null, + "refs": { + "TranslateTextResponse$TranslatedText": "

The translated text.

" + } + }, "TranslationSettings": { "base": "

Optional settings that configure the translation output. Use these settings for real time translations and asynchronous translation jobs.

", "refs": { diff --git a/models/apis/translate/2017-07-01/endpoint-rule-set-1.json b/models/apis/translate/2017-07-01/endpoint-rule-set-1.json new file mode 100644 index 0000000000..3d315dcea2 --- /dev/null +++ b/models/apis/translate/2017-07-01/endpoint-rule-set-1.json @@ -0,0 +1,306 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": true, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://translate-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://translate-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://translate.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://translate.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] +} \ No newline at end of file diff --git a/models/apis/translate/2017-07-01/endpoint-tests-1.json b/models/apis/translate/2017-07-01/endpoint-tests-1.json new file mode 100644 index 0000000000..6b9d67a5fd --- /dev/null +++ b/models/apis/translate/2017-07-01/endpoint-tests-1.json @@ -0,0 +1,975 @@ +{ + "testCases": [ + { + "documentation": "For region ap-south-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.ap-south-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "ap-south-1" + } + }, + { + "documentation": "For region ap-south-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.ap-south-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "ap-south-1" + } + }, + { + "documentation": "For region ap-south-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate.ap-south-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "ap-south-1" + } + }, + { + "documentation": "For region ap-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate.ap-south-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "ap-south-1" + } + }, + { + "documentation": "For region ca-central-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.ca-central-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "ca-central-1" + } + }, + { + "documentation": "For region ca-central-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.ca-central-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "ca-central-1" + } + }, + { + "documentation": "For region ca-central-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate.ca-central-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "ca-central-1" + } + }, + { + "documentation": "For region ca-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate.ca-central-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "ca-central-1" + } + }, + { + "documentation": "For region eu-central-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.eu-central-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "eu-central-1" + } + }, + { + "documentation": "For region eu-central-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.eu-central-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "eu-central-1" + } + }, + { + "documentation": "For region eu-central-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate.eu-central-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "eu-central-1" + } + }, + { + "documentation": "For region eu-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate.eu-central-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "eu-central-1" + } + }, + { + "documentation": "For region us-west-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.us-west-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "us-west-1" + } + }, + { + "documentation": "For region us-west-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.us-west-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "us-west-1" + } + }, + { + "documentation": "For region us-west-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate.us-west-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "us-west-1" + } + }, + { + "documentation": "For region us-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate.us-west-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "us-west-1" + } + }, + { + "documentation": "For region us-west-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.us-west-2.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "us-west-2" + } + }, + { + "documentation": "For region us-west-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.us-west-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "us-west-2" + } + }, + { + "documentation": "For region us-west-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate.us-west-2.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "us-west-2" + } + }, + { + "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate.us-west-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "us-west-2" + } + }, + { + "documentation": "For region eu-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.eu-north-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "eu-north-1" + } + }, + { + "documentation": "For region eu-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.eu-north-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "eu-north-1" + } + }, + { + "documentation": "For region eu-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate.eu-north-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "eu-north-1" + } + }, + { + "documentation": "For region eu-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate.eu-north-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "eu-north-1" + } + }, + { + "documentation": "For region eu-west-3 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.eu-west-3.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "eu-west-3" + } + }, + { + "documentation": "For region eu-west-3 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.eu-west-3.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "eu-west-3" + } + }, + { + "documentation": "For region eu-west-3 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate.eu-west-3.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "eu-west-3" + } + }, + { + "documentation": "For region eu-west-3 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate.eu-west-3.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "eu-west-3" + } + }, + { + "documentation": "For region eu-west-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.eu-west-2.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "eu-west-2" + } + }, + { + "documentation": "For region eu-west-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.eu-west-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "eu-west-2" + } + }, + { + "documentation": "For region eu-west-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate.eu-west-2.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "eu-west-2" + } + }, + { + "documentation": "For region eu-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate.eu-west-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "eu-west-2" + } + }, + { + "documentation": "For region eu-west-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.eu-west-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "eu-west-1" + } + }, + { + "documentation": "For region eu-west-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.eu-west-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "eu-west-1" + } + }, + { + "documentation": "For region eu-west-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate.eu-west-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "eu-west-1" + } + }, + { + "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate.eu-west-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "eu-west-1" + } + }, + { + "documentation": "For region ap-northeast-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.ap-northeast-2.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "ap-northeast-2" + } + }, + { + "documentation": "For region ap-northeast-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.ap-northeast-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "ap-northeast-2" + } + }, + { + "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate.ap-northeast-2.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "ap-northeast-2" + } + }, + { + "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate.ap-northeast-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "ap-northeast-2" + } + }, + { + "documentation": "For region ap-northeast-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.ap-northeast-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "ap-northeast-1" + } + }, + { + "documentation": "For region ap-northeast-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.ap-northeast-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "ap-northeast-1" + } + }, + { + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate.ap-northeast-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "ap-northeast-1" + } + }, + { + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate.ap-northeast-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "ap-northeast-1" + } + }, + { + "documentation": "For region ap-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.ap-east-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "ap-east-1" + } + }, + { + "documentation": "For region ap-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.ap-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "ap-east-1" + } + }, + { + "documentation": "For region ap-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate.ap-east-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "ap-east-1" + } + }, + { + "documentation": "For region ap-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate.ap-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "ap-east-1" + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.us-gov-west-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "us-gov-west-1" + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.us-gov-west-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "us-gov-west-1" + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate.us-gov-west-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "us-gov-west-1" + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate.us-gov-west-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "us-gov-west-1" + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.ap-southeast-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "ap-southeast-1" + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.ap-southeast-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "ap-southeast-1" + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate.ap-southeast-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "ap-southeast-1" + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate.ap-southeast-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "ap-southeast-1" + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.ap-southeast-2.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "ap-southeast-2" + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.ap-southeast-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "ap-southeast-2" + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate.ap-southeast-2.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "ap-southeast-2" + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate.ap-southeast-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "ap-southeast-2" + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "us-iso-east-1" + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "us-iso-east-1" + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "us-iso-east-1" + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "us-iso-east-1" + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.us-east-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "us-east-1" + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "us-east-1" + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate.us-east-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "us-east-1" + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate.us-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "us-east-1" + } + }, + { + "documentation": "For region us-east-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.us-east-2.api.aws" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "Region": "us-east-2" + } + }, + { + "documentation": "For region us-east-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate-fips.us-east-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "us-east-2" + } + }, + { + "documentation": "For region us-east-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://translate.us-east-2.api.aws" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "us-east-2" + } + }, + { + "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://translate.us-east-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "us-east-2" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff --git a/models/endpoints/endpoints.json b/models/endpoints/endpoints.json index e00cdbeea6..6e3ba2e356 100644 --- a/models/endpoints/endpoints.json +++ b/models/endpoints/endpoints.json @@ -6812,11 +6812,15 @@ "geo" : { "endpoints" : { "ap-northeast-1" : { }, + "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ca-central-1" : { }, "eu-central-1" : { }, "eu-north-1" : { }, "eu-west-1" : { }, + "eu-west-2" : { }, + "sa-east-1" : { }, "us-east-1" : { }, "us-east-2" : { }, "us-west-2" : { } @@ -10982,6 +10986,7 @@ "ap-northeast-2" : { }, "ap-northeast-3" : { }, "ap-south-1" : { }, + "ap-south-2" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, "ap-southeast-3" : { }, @@ -10992,8 +10997,10 @@ } ] }, "eu-central-1" : { }, + "eu-central-2" : { }, "eu-north-1" : { }, "eu-south-1" : { }, + "eu-south-2" : { }, "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, @@ -21557,7 +21564,8 @@ }, "workspaces" : { "endpoints" : { - "us-iso-east-1" : { } + "us-iso-east-1" : { }, + "us-iso-west-1" : { } } } } diff --git a/service/backupgateway/api.go b/service/backupgateway/api.go index 00fc35b6b5..9b3eb8f943 100644 --- a/service/backupgateway/api.go +++ b/service/backupgateway/api.go @@ -339,6 +339,9 @@ func (c *BackupGateway) DeleteHypervisorRequest(input *DeleteHypervisorInput) (r // - ValidationException // The operation did not succeed because a validation error occurred. // +// - ConflictException +// The operation cannot proceed because it is not supported. +// // - InternalServerException // The operation did not succeed because an internal error occurred. Try again // later. @@ -470,6 +473,99 @@ func (c *BackupGateway) DisassociateGatewayFromServerWithContext(ctx aws.Context return out, req.Send() } +const opGetBandwidthRateLimitSchedule = "GetBandwidthRateLimitSchedule" + +// GetBandwidthRateLimitScheduleRequest generates a "aws/request.Request" representing the +// client's request for the GetBandwidthRateLimitSchedule operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetBandwidthRateLimitSchedule for more information on using the GetBandwidthRateLimitSchedule +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetBandwidthRateLimitScheduleRequest method. +// req, resp := client.GetBandwidthRateLimitScheduleRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-gateway-2021-01-01/GetBandwidthRateLimitSchedule +func (c *BackupGateway) GetBandwidthRateLimitScheduleRequest(input *GetBandwidthRateLimitScheduleInput) (req *request.Request, output *GetBandwidthRateLimitScheduleOutput) { + op := &request.Operation{ + Name: opGetBandwidthRateLimitSchedule, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetBandwidthRateLimitScheduleInput{} + } + + output = &GetBandwidthRateLimitScheduleOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetBandwidthRateLimitSchedule API operation for AWS Backup Gateway. +// +// Retrieves the bandwidth rate limit schedule for a specified gateway. By default, +// gateways do not have bandwidth rate limit schedules, which means no bandwidth +// rate limiting is in effect. Use this to get a gateway's bandwidth rate limit +// schedule. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup Gateway's +// API operation GetBandwidthRateLimitSchedule for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The operation did not succeed because a validation error occurred. +// +// - InternalServerException +// The operation did not succeed because an internal error occurred. Try again +// later. +// +// - ResourceNotFoundException +// A resource that is required for the action wasn't found. +// +// - ThrottlingException +// TPS has been limited to protect against intentional or unintentional high +// request volumes. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-gateway-2021-01-01/GetBandwidthRateLimitSchedule +func (c *BackupGateway) GetBandwidthRateLimitSchedule(input *GetBandwidthRateLimitScheduleInput) (*GetBandwidthRateLimitScheduleOutput, error) { + req, out := c.GetBandwidthRateLimitScheduleRequest(input) + return out, req.Send() +} + +// GetBandwidthRateLimitScheduleWithContext is the same as GetBandwidthRateLimitSchedule with the addition of +// the ability to pass a context and additional request options. +// +// See GetBandwidthRateLimitSchedule for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *BackupGateway) GetBandwidthRateLimitScheduleWithContext(ctx aws.Context, input *GetBandwidthRateLimitScheduleInput, opts ...request.Option) (*GetBandwidthRateLimitScheduleOutput, error) { + req, out := c.GetBandwidthRateLimitScheduleRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetGateway = "GetGateway" // GetGatewayRequest generates a "aws/request.Request" representing the @@ -560,6 +656,191 @@ func (c *BackupGateway) GetGatewayWithContext(ctx aws.Context, input *GetGateway return out, req.Send() } +const opGetHypervisor = "GetHypervisor" + +// GetHypervisorRequest generates a "aws/request.Request" representing the +// client's request for the GetHypervisor operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetHypervisor for more information on using the GetHypervisor +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetHypervisorRequest method. +// req, resp := client.GetHypervisorRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-gateway-2021-01-01/GetHypervisor +func (c *BackupGateway) GetHypervisorRequest(input *GetHypervisorInput) (req *request.Request, output *GetHypervisorOutput) { + op := &request.Operation{ + Name: opGetHypervisor, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetHypervisorInput{} + } + + output = &GetHypervisorOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetHypervisor API operation for AWS Backup Gateway. +// +// This action requests information about the specified hypervisor to which +// the gateway will connect. A hypervisor is hardware, software, or firmware +// that creates and manages virtual machines, and allocates resources to them. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup Gateway's +// API operation GetHypervisor for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The operation did not succeed because a validation error occurred. +// +// - InternalServerException +// The operation did not succeed because an internal error occurred. Try again +// later. +// +// - ResourceNotFoundException +// A resource that is required for the action wasn't found. +// +// - ThrottlingException +// TPS has been limited to protect against intentional or unintentional high +// request volumes. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-gateway-2021-01-01/GetHypervisor +func (c *BackupGateway) GetHypervisor(input *GetHypervisorInput) (*GetHypervisorOutput, error) { + req, out := c.GetHypervisorRequest(input) + return out, req.Send() +} + +// GetHypervisorWithContext is the same as GetHypervisor with the addition of +// the ability to pass a context and additional request options. +// +// See GetHypervisor for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *BackupGateway) GetHypervisorWithContext(ctx aws.Context, input *GetHypervisorInput, opts ...request.Option) (*GetHypervisorOutput, error) { + req, out := c.GetHypervisorRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetHypervisorPropertyMappings = "GetHypervisorPropertyMappings" + +// GetHypervisorPropertyMappingsRequest generates a "aws/request.Request" representing the +// client's request for the GetHypervisorPropertyMappings operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetHypervisorPropertyMappings for more information on using the GetHypervisorPropertyMappings +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetHypervisorPropertyMappingsRequest method. +// req, resp := client.GetHypervisorPropertyMappingsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-gateway-2021-01-01/GetHypervisorPropertyMappings +func (c *BackupGateway) GetHypervisorPropertyMappingsRequest(input *GetHypervisorPropertyMappingsInput) (req *request.Request, output *GetHypervisorPropertyMappingsOutput) { + op := &request.Operation{ + Name: opGetHypervisorPropertyMappings, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetHypervisorPropertyMappingsInput{} + } + + output = &GetHypervisorPropertyMappingsOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetHypervisorPropertyMappings API operation for AWS Backup Gateway. +// +// This action retrieves the property mappings for the specified hypervisor. +// A hypervisor property mapping displays the relationship of entity properties +// available from the on-premises hypervisor to the properties available in +// Amazon Web Services. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup Gateway's +// API operation GetHypervisorPropertyMappings for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The operation did not succeed because a validation error occurred. +// +// - InternalServerException +// The operation did not succeed because an internal error occurred. Try again +// later. +// +// - ResourceNotFoundException +// A resource that is required for the action wasn't found. +// +// - ThrottlingException +// TPS has been limited to protect against intentional or unintentional high +// request volumes. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-gateway-2021-01-01/GetHypervisorPropertyMappings +func (c *BackupGateway) GetHypervisorPropertyMappings(input *GetHypervisorPropertyMappingsInput) (*GetHypervisorPropertyMappingsOutput, error) { + req, out := c.GetHypervisorPropertyMappingsRequest(input) + return out, req.Send() +} + +// GetHypervisorPropertyMappingsWithContext is the same as GetHypervisorPropertyMappings with the addition of +// the ability to pass a context and additional request options. +// +// See GetHypervisorPropertyMappings for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *BackupGateway) GetHypervisorPropertyMappingsWithContext(ctx aws.Context, input *GetHypervisorPropertyMappingsInput, opts ...request.Option) (*GetHypervisorPropertyMappingsOutput, error) { + req, out := c.GetHypervisorPropertyMappingsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetVirtualMachine = "GetVirtualMachine" // GetVirtualMachineRequest generates a "aws/request.Request" representing the @@ -708,6 +989,9 @@ func (c *BackupGateway) ImportHypervisorConfigurationRequest(input *ImportHyperv // - ValidationException // The operation did not succeed because a validation error occurred. // +// - ConflictException +// The operation cannot proceed because it is not supported. +// // - InternalServerException // The operation did not succeed because an internal error occurred. Try again // later. @@ -1266,66 +1550,66 @@ func (c *BackupGateway) ListVirtualMachinesPagesWithContext(ctx aws.Context, inp return p.Err() } -const opPutMaintenanceStartTime = "PutMaintenanceStartTime" +const opPutBandwidthRateLimitSchedule = "PutBandwidthRateLimitSchedule" -// PutMaintenanceStartTimeRequest generates a "aws/request.Request" representing the -// client's request for the PutMaintenanceStartTime operation. The "output" return +// PutBandwidthRateLimitScheduleRequest generates a "aws/request.Request" representing the +// client's request for the PutBandwidthRateLimitSchedule operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See PutMaintenanceStartTime for more information on using the PutMaintenanceStartTime +// See PutBandwidthRateLimitSchedule for more information on using the PutBandwidthRateLimitSchedule // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the PutMaintenanceStartTimeRequest method. -// req, resp := client.PutMaintenanceStartTimeRequest(params) +// // Example sending a request using the PutBandwidthRateLimitScheduleRequest method. +// req, resp := client.PutBandwidthRateLimitScheduleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-gateway-2021-01-01/PutMaintenanceStartTime -func (c *BackupGateway) PutMaintenanceStartTimeRequest(input *PutMaintenanceStartTimeInput) (req *request.Request, output *PutMaintenanceStartTimeOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-gateway-2021-01-01/PutBandwidthRateLimitSchedule +func (c *BackupGateway) PutBandwidthRateLimitScheduleRequest(input *PutBandwidthRateLimitScheduleInput) (req *request.Request, output *PutBandwidthRateLimitScheduleOutput) { op := &request.Operation{ - Name: opPutMaintenanceStartTime, + Name: opPutBandwidthRateLimitSchedule, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &PutMaintenanceStartTimeInput{} + input = &PutBandwidthRateLimitScheduleInput{} } - output = &PutMaintenanceStartTimeOutput{} + output = &PutBandwidthRateLimitScheduleOutput{} req = c.newRequest(op, input, output) return } -// PutMaintenanceStartTime API operation for AWS Backup Gateway. +// PutBandwidthRateLimitSchedule API operation for AWS Backup Gateway. // -// Set the maintenance start time for a gateway. +// This action sets the bandwidth rate limit schedule for a specified gateway. +// By default, gateways do not have a bandwidth rate limit schedule, which means +// no bandwidth rate limiting is in effect. Use this to initiate a gateway's +// bandwidth rate limit schedule. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup Gateway's -// API operation PutMaintenanceStartTime for usage and error information. +// API operation PutBandwidthRateLimitSchedule for usage and error information. // // Returned Error Types: // // - ValidationException // The operation did not succeed because a validation error occurred. // -// - ConflictException -// The operation cannot proceed because it is not supported. -// // - InternalServerException // The operation did not succeed because an internal error occurred. Try again // later. @@ -1337,91 +1621,377 @@ func (c *BackupGateway) PutMaintenanceStartTimeRequest(input *PutMaintenanceStar // TPS has been limited to protect against intentional or unintentional high // request volumes. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-gateway-2021-01-01/PutMaintenanceStartTime -func (c *BackupGateway) PutMaintenanceStartTime(input *PutMaintenanceStartTimeInput) (*PutMaintenanceStartTimeOutput, error) { - req, out := c.PutMaintenanceStartTimeRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-gateway-2021-01-01/PutBandwidthRateLimitSchedule +func (c *BackupGateway) PutBandwidthRateLimitSchedule(input *PutBandwidthRateLimitScheduleInput) (*PutBandwidthRateLimitScheduleOutput, error) { + req, out := c.PutBandwidthRateLimitScheduleRequest(input) return out, req.Send() } -// PutMaintenanceStartTimeWithContext is the same as PutMaintenanceStartTime with the addition of +// PutBandwidthRateLimitScheduleWithContext is the same as PutBandwidthRateLimitSchedule with the addition of // the ability to pass a context and additional request options. // -// See PutMaintenanceStartTime for details on how to use this API operation. +// See PutBandwidthRateLimitSchedule for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *BackupGateway) PutMaintenanceStartTimeWithContext(ctx aws.Context, input *PutMaintenanceStartTimeInput, opts ...request.Option) (*PutMaintenanceStartTimeOutput, error) { - req, out := c.PutMaintenanceStartTimeRequest(input) +func (c *BackupGateway) PutBandwidthRateLimitScheduleWithContext(ctx aws.Context, input *PutBandwidthRateLimitScheduleInput, opts ...request.Option) (*PutBandwidthRateLimitScheduleOutput, error) { + req, out := c.PutBandwidthRateLimitScheduleRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opTagResource = "TagResource" +const opPutHypervisorPropertyMappings = "PutHypervisorPropertyMappings" -// TagResourceRequest generates a "aws/request.Request" representing the -// client's request for the TagResource operation. The "output" return +// PutHypervisorPropertyMappingsRequest generates a "aws/request.Request" representing the +// client's request for the PutHypervisorPropertyMappings operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See TagResource for more information on using the TagResource +// See PutHypervisorPropertyMappings for more information on using the PutHypervisorPropertyMappings // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the TagResourceRequest method. -// req, resp := client.TagResourceRequest(params) +// // Example sending a request using the PutHypervisorPropertyMappingsRequest method. +// req, resp := client.PutHypervisorPropertyMappingsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-gateway-2021-01-01/TagResource -func (c *BackupGateway) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-gateway-2021-01-01/PutHypervisorPropertyMappings +func (c *BackupGateway) PutHypervisorPropertyMappingsRequest(input *PutHypervisorPropertyMappingsInput) (req *request.Request, output *PutHypervisorPropertyMappingsOutput) { op := &request.Operation{ - Name: opTagResource, + Name: opPutHypervisorPropertyMappings, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &TagResourceInput{} + input = &PutHypervisorPropertyMappingsInput{} } - output = &TagResourceOutput{} + output = &PutHypervisorPropertyMappingsOutput{} req = c.newRequest(op, input, output) return } -// TagResource API operation for AWS Backup Gateway. +// PutHypervisorPropertyMappings API operation for AWS Backup Gateway. // -// Tag the resource. +// This action sets the property mappings for the specified hypervisor. A hypervisor +// property mapping displays the relationship of entity properties available +// from the on-premises hypervisor to the properties available in Amazon Web +// Services. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup Gateway's -// API operation TagResource for usage and error information. +// API operation PutHypervisorPropertyMappings for usage and error information. // // Returned Error Types: // // - ValidationException // The operation did not succeed because a validation error occurred. // +// - ConflictException +// The operation cannot proceed because it is not supported. +// // - InternalServerException // The operation did not succeed because an internal error occurred. Try again // later. // -// - ResourceNotFoundException -// A resource that is required for the action wasn't found. +// - AccessDeniedException +// The operation cannot proceed because you have insufficient permissions. +// +// - ResourceNotFoundException +// A resource that is required for the action wasn't found. +// +// - ThrottlingException +// TPS has been limited to protect against intentional or unintentional high +// request volumes. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-gateway-2021-01-01/PutHypervisorPropertyMappings +func (c *BackupGateway) PutHypervisorPropertyMappings(input *PutHypervisorPropertyMappingsInput) (*PutHypervisorPropertyMappingsOutput, error) { + req, out := c.PutHypervisorPropertyMappingsRequest(input) + return out, req.Send() +} + +// PutHypervisorPropertyMappingsWithContext is the same as PutHypervisorPropertyMappings with the addition of +// the ability to pass a context and additional request options. +// +// See PutHypervisorPropertyMappings for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *BackupGateway) PutHypervisorPropertyMappingsWithContext(ctx aws.Context, input *PutHypervisorPropertyMappingsInput, opts ...request.Option) (*PutHypervisorPropertyMappingsOutput, error) { + req, out := c.PutHypervisorPropertyMappingsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opPutMaintenanceStartTime = "PutMaintenanceStartTime" + +// PutMaintenanceStartTimeRequest generates a "aws/request.Request" representing the +// client's request for the PutMaintenanceStartTime operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See PutMaintenanceStartTime for more information on using the PutMaintenanceStartTime +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the PutMaintenanceStartTimeRequest method. +// req, resp := client.PutMaintenanceStartTimeRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-gateway-2021-01-01/PutMaintenanceStartTime +func (c *BackupGateway) PutMaintenanceStartTimeRequest(input *PutMaintenanceStartTimeInput) (req *request.Request, output *PutMaintenanceStartTimeOutput) { + op := &request.Operation{ + Name: opPutMaintenanceStartTime, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &PutMaintenanceStartTimeInput{} + } + + output = &PutMaintenanceStartTimeOutput{} + req = c.newRequest(op, input, output) + return +} + +// PutMaintenanceStartTime API operation for AWS Backup Gateway. +// +// Set the maintenance start time for a gateway. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup Gateway's +// API operation PutMaintenanceStartTime for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The operation did not succeed because a validation error occurred. +// +// - ConflictException +// The operation cannot proceed because it is not supported. +// +// - InternalServerException +// The operation did not succeed because an internal error occurred. Try again +// later. +// +// - ResourceNotFoundException +// A resource that is required for the action wasn't found. +// +// - ThrottlingException +// TPS has been limited to protect against intentional or unintentional high +// request volumes. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-gateway-2021-01-01/PutMaintenanceStartTime +func (c *BackupGateway) PutMaintenanceStartTime(input *PutMaintenanceStartTimeInput) (*PutMaintenanceStartTimeOutput, error) { + req, out := c.PutMaintenanceStartTimeRequest(input) + return out, req.Send() +} + +// PutMaintenanceStartTimeWithContext is the same as PutMaintenanceStartTime with the addition of +// the ability to pass a context and additional request options. +// +// See PutMaintenanceStartTime for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *BackupGateway) PutMaintenanceStartTimeWithContext(ctx aws.Context, input *PutMaintenanceStartTimeInput, opts ...request.Option) (*PutMaintenanceStartTimeOutput, error) { + req, out := c.PutMaintenanceStartTimeRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opStartVirtualMachinesMetadataSync = "StartVirtualMachinesMetadataSync" + +// StartVirtualMachinesMetadataSyncRequest generates a "aws/request.Request" representing the +// client's request for the StartVirtualMachinesMetadataSync operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See StartVirtualMachinesMetadataSync for more information on using the StartVirtualMachinesMetadataSync +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the StartVirtualMachinesMetadataSyncRequest method. +// req, resp := client.StartVirtualMachinesMetadataSyncRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-gateway-2021-01-01/StartVirtualMachinesMetadataSync +func (c *BackupGateway) StartVirtualMachinesMetadataSyncRequest(input *StartVirtualMachinesMetadataSyncInput) (req *request.Request, output *StartVirtualMachinesMetadataSyncOutput) { + op := &request.Operation{ + Name: opStartVirtualMachinesMetadataSync, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &StartVirtualMachinesMetadataSyncInput{} + } + + output = &StartVirtualMachinesMetadataSyncOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartVirtualMachinesMetadataSync API operation for AWS Backup Gateway. +// +// This action sends a request to sync metadata across the specified virtual +// machines. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup Gateway's +// API operation StartVirtualMachinesMetadataSync for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The operation did not succeed because a validation error occurred. +// +// - InternalServerException +// The operation did not succeed because an internal error occurred. Try again +// later. +// +// - AccessDeniedException +// The operation cannot proceed because you have insufficient permissions. +// +// - ResourceNotFoundException +// A resource that is required for the action wasn't found. +// +// - ThrottlingException +// TPS has been limited to protect against intentional or unintentional high +// request volumes. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-gateway-2021-01-01/StartVirtualMachinesMetadataSync +func (c *BackupGateway) StartVirtualMachinesMetadataSync(input *StartVirtualMachinesMetadataSyncInput) (*StartVirtualMachinesMetadataSyncOutput, error) { + req, out := c.StartVirtualMachinesMetadataSyncRequest(input) + return out, req.Send() +} + +// StartVirtualMachinesMetadataSyncWithContext is the same as StartVirtualMachinesMetadataSync with the addition of +// the ability to pass a context and additional request options. +// +// See StartVirtualMachinesMetadataSync for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *BackupGateway) StartVirtualMachinesMetadataSyncWithContext(ctx aws.Context, input *StartVirtualMachinesMetadataSyncInput, opts ...request.Option) (*StartVirtualMachinesMetadataSyncOutput, error) { + req, out := c.StartVirtualMachinesMetadataSyncRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opTagResource = "TagResource" + +// TagResourceRequest generates a "aws/request.Request" representing the +// client's request for the TagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See TagResource for more information on using the TagResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the TagResourceRequest method. +// req, resp := client.TagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-gateway-2021-01-01/TagResource +func (c *BackupGateway) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { + op := &request.Operation{ + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &TagResourceInput{} + } + + output = &TagResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// TagResource API operation for AWS Backup Gateway. +// +// Tag the resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup Gateway's +// API operation TagResource for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The operation did not succeed because a validation error occurred. +// +// - InternalServerException +// The operation did not succeed because an internal error occurred. Try again +// later. +// +// - ResourceNotFoundException +// A resource that is required for the action wasn't found. // // - ThrottlingException // TPS has been limited to protect against intentional or unintentional high @@ -1881,6 +2451,9 @@ func (c *BackupGateway) UpdateHypervisorRequest(input *UpdateHypervisorInput) (r // - ValidationException // The operation did not succeed because a validation error occurred. // +// - ConflictException +// The operation cannot proceed because it is not supported. +// // - InternalServerException // The operation did not succeed because an internal error occurred. Try again // later. @@ -2084,6 +2657,139 @@ func (s *AssociateGatewayToServerOutput) SetGatewayArn(v string) *AssociateGatew return s } +// Describes a bandwidth rate limit interval for a gateway. A bandwidth rate +// limit schedule consists of one or more bandwidth rate limit intervals. A +// bandwidth rate limit interval defines a period of time on one or more days +// of the week, during which bandwidth rate limits are specified for uploading, +// downloading, or both. +type BandwidthRateLimitInterval struct { + _ struct{} `type:"structure"` + + // The average upload rate limit component of the bandwidth rate limit interval, + // in bits per second. This field does not appear in the response if the upload + // rate limit is not set. + // + // For Backup Gateway, the minimum value is (Value). + AverageUploadRateLimitInBitsPerSec *int64 `min:"51200" type:"long"` + + // The days of the week component of the bandwidth rate limit interval, represented + // as ordinal numbers from 0 to 6, where 0 represents Sunday and 6 represents + // Saturday. + // + // DaysOfWeek is a required field + DaysOfWeek []*int64 `min:"1" type:"list" required:"true"` + + // The hour of the day to end the bandwidth rate limit interval. + // + // EndHourOfDay is a required field + EndHourOfDay *int64 `type:"integer" required:"true"` + + // The minute of the hour to end the bandwidth rate limit interval. + // + // The bandwidth rate limit interval ends at the end of the minute. To end an + // interval at the end of an hour, use the value 59. + // + // EndMinuteOfHour is a required field + EndMinuteOfHour *int64 `type:"integer" required:"true"` + + // The hour of the day to start the bandwidth rate limit interval. + // + // StartHourOfDay is a required field + StartHourOfDay *int64 `type:"integer" required:"true"` + + // The minute of the hour to start the bandwidth rate limit interval. The interval + // begins at the start of that minute. To begin an interval exactly at the start + // of the hour, use the value 0. + // + // StartMinuteOfHour is a required field + StartMinuteOfHour *int64 `type:"integer" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BandwidthRateLimitInterval) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BandwidthRateLimitInterval) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BandwidthRateLimitInterval) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BandwidthRateLimitInterval"} + if s.AverageUploadRateLimitInBitsPerSec != nil && *s.AverageUploadRateLimitInBitsPerSec < 51200 { + invalidParams.Add(request.NewErrParamMinValue("AverageUploadRateLimitInBitsPerSec", 51200)) + } + if s.DaysOfWeek == nil { + invalidParams.Add(request.NewErrParamRequired("DaysOfWeek")) + } + if s.DaysOfWeek != nil && len(s.DaysOfWeek) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DaysOfWeek", 1)) + } + if s.EndHourOfDay == nil { + invalidParams.Add(request.NewErrParamRequired("EndHourOfDay")) + } + if s.EndMinuteOfHour == nil { + invalidParams.Add(request.NewErrParamRequired("EndMinuteOfHour")) + } + if s.StartHourOfDay == nil { + invalidParams.Add(request.NewErrParamRequired("StartHourOfDay")) + } + if s.StartMinuteOfHour == nil { + invalidParams.Add(request.NewErrParamRequired("StartMinuteOfHour")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAverageUploadRateLimitInBitsPerSec sets the AverageUploadRateLimitInBitsPerSec field's value. +func (s *BandwidthRateLimitInterval) SetAverageUploadRateLimitInBitsPerSec(v int64) *BandwidthRateLimitInterval { + s.AverageUploadRateLimitInBitsPerSec = &v + return s +} + +// SetDaysOfWeek sets the DaysOfWeek field's value. +func (s *BandwidthRateLimitInterval) SetDaysOfWeek(v []*int64) *BandwidthRateLimitInterval { + s.DaysOfWeek = v + return s +} + +// SetEndHourOfDay sets the EndHourOfDay field's value. +func (s *BandwidthRateLimitInterval) SetEndHourOfDay(v int64) *BandwidthRateLimitInterval { + s.EndHourOfDay = &v + return s +} + +// SetEndMinuteOfHour sets the EndMinuteOfHour field's value. +func (s *BandwidthRateLimitInterval) SetEndMinuteOfHour(v int64) *BandwidthRateLimitInterval { + s.EndMinuteOfHour = &v + return s +} + +// SetStartHourOfDay sets the StartHourOfDay field's value. +func (s *BandwidthRateLimitInterval) SetStartHourOfDay(v int64) *BandwidthRateLimitInterval { + s.StartHourOfDay = &v + return s +} + +// SetStartMinuteOfHour sets the StartMinuteOfHour field's value. +func (s *BandwidthRateLimitInterval) SetStartMinuteOfHour(v int64) *BandwidthRateLimitInterval { + s.StartMinuteOfHour = &v + return s +} + // The operation cannot proceed because it is not supported. type ConflictException struct { _ struct{} `type:"structure"` @@ -2696,13 +3402,268 @@ func (s *GatewayDetails) SetVpcEndpoint(v string) *GatewayDetails { return s } +type GetBandwidthRateLimitScheduleInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways (https://docs.aws.amazon.com/aws-backup/latest/devguide/API_BGW_ListGateways.html) + // operation to return a list of gateways for your account and Amazon Web Services + // Region. + // + // GatewayArn is a required field + GatewayArn *string `min:"50" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetBandwidthRateLimitScheduleInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetBandwidthRateLimitScheduleInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetBandwidthRateLimitScheduleInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetBandwidthRateLimitScheduleInput"} + if s.GatewayArn == nil { + invalidParams.Add(request.NewErrParamRequired("GatewayArn")) + } + if s.GatewayArn != nil && len(*s.GatewayArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("GatewayArn", 50)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetGatewayArn sets the GatewayArn field's value. +func (s *GetBandwidthRateLimitScheduleInput) SetGatewayArn(v string) *GetBandwidthRateLimitScheduleInput { + s.GatewayArn = &v + return s +} + +type GetBandwidthRateLimitScheduleOutput struct { + _ struct{} `type:"structure"` + + // An array containing bandwidth rate limit schedule intervals for a gateway. + // When no bandwidth rate limit intervals have been scheduled, the array is + // empty. + BandwidthRateLimitIntervals []*BandwidthRateLimitInterval `type:"list"` + + // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways (https://docs.aws.amazon.com/aws-backup/latest/devguide/API_BGW_ListGateways.html) + // operation to return a list of gateways for your account and Amazon Web Services + // Region. + GatewayArn *string `min:"50" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetBandwidthRateLimitScheduleOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetBandwidthRateLimitScheduleOutput) GoString() string { + return s.String() +} + +// SetBandwidthRateLimitIntervals sets the BandwidthRateLimitIntervals field's value. +func (s *GetBandwidthRateLimitScheduleOutput) SetBandwidthRateLimitIntervals(v []*BandwidthRateLimitInterval) *GetBandwidthRateLimitScheduleOutput { + s.BandwidthRateLimitIntervals = v + return s +} + +// SetGatewayArn sets the GatewayArn field's value. +func (s *GetBandwidthRateLimitScheduleOutput) SetGatewayArn(v string) *GetBandwidthRateLimitScheduleOutput { + s.GatewayArn = &v + return s +} + type GetGatewayInput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the gateway. + // The Amazon Resource Name (ARN) of the gateway. + // + // GatewayArn is a required field + GatewayArn *string `min:"50" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetGatewayInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetGatewayInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetGatewayInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetGatewayInput"} + if s.GatewayArn == nil { + invalidParams.Add(request.NewErrParamRequired("GatewayArn")) + } + if s.GatewayArn != nil && len(*s.GatewayArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("GatewayArn", 50)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetGatewayArn sets the GatewayArn field's value. +func (s *GetGatewayInput) SetGatewayArn(v string) *GetGatewayInput { + s.GatewayArn = &v + return s +} + +type GetGatewayOutput struct { + _ struct{} `type:"structure"` + + // By providing the ARN (Amazon Resource Name), this API returns the gateway. + Gateway *GatewayDetails `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetGatewayOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetGatewayOutput) GoString() string { + return s.String() +} + +// SetGateway sets the Gateway field's value. +func (s *GetGatewayOutput) SetGateway(v *GatewayDetails) *GetGatewayOutput { + s.Gateway = v + return s +} + +type GetHypervisorInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the hypervisor. + // + // HypervisorArn is a required field + HypervisorArn *string `min:"50" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetHypervisorInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetHypervisorInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetHypervisorInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetHypervisorInput"} + if s.HypervisorArn == nil { + invalidParams.Add(request.NewErrParamRequired("HypervisorArn")) + } + if s.HypervisorArn != nil && len(*s.HypervisorArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("HypervisorArn", 50)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetHypervisorArn sets the HypervisorArn field's value. +func (s *GetHypervisorInput) SetHypervisorArn(v string) *GetHypervisorInput { + s.HypervisorArn = &v + return s +} + +type GetHypervisorOutput struct { + _ struct{} `type:"structure"` + + // Details about the requested hypervisor. + Hypervisor *HypervisorDetails `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetHypervisorOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetHypervisorOutput) GoString() string { + return s.String() +} + +// SetHypervisor sets the Hypervisor field's value. +func (s *GetHypervisorOutput) SetHypervisor(v *HypervisorDetails) *GetHypervisorOutput { + s.Hypervisor = v + return s +} + +type GetHypervisorPropertyMappingsInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the hypervisor. // - // GatewayArn is a required field - GatewayArn *string `min:"50" type:"string" required:"true"` + // HypervisorArn is a required field + HypervisorArn *string `min:"50" type:"string" required:"true"` } // String returns the string representation. @@ -2710,7 +3671,7 @@ type GetGatewayInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetGatewayInput) String() string { +func (s GetHypervisorPropertyMappingsInput) String() string { return awsutil.Prettify(s) } @@ -2719,18 +3680,18 @@ func (s GetGatewayInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetGatewayInput) GoString() string { +func (s GetHypervisorPropertyMappingsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *GetGatewayInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetGatewayInput"} - if s.GatewayArn == nil { - invalidParams.Add(request.NewErrParamRequired("GatewayArn")) +func (s *GetHypervisorPropertyMappingsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetHypervisorPropertyMappingsInput"} + if s.HypervisorArn == nil { + invalidParams.Add(request.NewErrParamRequired("HypervisorArn")) } - if s.GatewayArn != nil && len(*s.GatewayArn) < 50 { - invalidParams.Add(request.NewErrParamMinLen("GatewayArn", 50)) + if s.HypervisorArn != nil && len(*s.HypervisorArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("HypervisorArn", 50)) } if invalidParams.Len() > 0 { @@ -2739,17 +3700,24 @@ func (s *GetGatewayInput) Validate() error { return nil } -// SetGatewayArn sets the GatewayArn field's value. -func (s *GetGatewayInput) SetGatewayArn(v string) *GetGatewayInput { - s.GatewayArn = &v +// SetHypervisorArn sets the HypervisorArn field's value. +func (s *GetHypervisorPropertyMappingsInput) SetHypervisorArn(v string) *GetHypervisorPropertyMappingsInput { + s.HypervisorArn = &v return s } -type GetGatewayOutput struct { +type GetHypervisorPropertyMappingsOutput struct { _ struct{} `type:"structure"` - // By providing the ARN (Amazon Resource Name), this API returns the gateway. - Gateway *GatewayDetails `type:"structure"` + // The Amazon Resource Name (ARN) of the hypervisor. + HypervisorArn *string `min:"50" type:"string"` + + // The Amazon Resource Name (ARN) of the IAM role. + IamRoleArn *string `min:"20" type:"string"` + + // This is a display of the mappings of on-premises VMware tags to the Amazon + // Web Services tags. + VmwareToAwsTagMappings []*VmwareToAwsTagMapping `type:"list"` } // String returns the string representation. @@ -2757,7 +3725,7 @@ type GetGatewayOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetGatewayOutput) String() string { +func (s GetHypervisorPropertyMappingsOutput) String() string { return awsutil.Prettify(s) } @@ -2766,13 +3734,25 @@ func (s GetGatewayOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetGatewayOutput) GoString() string { +func (s GetHypervisorPropertyMappingsOutput) GoString() string { return s.String() } -// SetGateway sets the Gateway field's value. -func (s *GetGatewayOutput) SetGateway(v *GatewayDetails) *GetGatewayOutput { - s.Gateway = v +// SetHypervisorArn sets the HypervisorArn field's value. +func (s *GetHypervisorPropertyMappingsOutput) SetHypervisorArn(v string) *GetHypervisorPropertyMappingsOutput { + s.HypervisorArn = &v + return s +} + +// SetIamRoleArn sets the IamRoleArn field's value. +func (s *GetHypervisorPropertyMappingsOutput) SetIamRoleArn(v string) *GetHypervisorPropertyMappingsOutput { + s.IamRoleArn = &v + return s +} + +// SetVmwareToAwsTagMappings sets the VmwareToAwsTagMappings field's value. +func (s *GetHypervisorPropertyMappingsOutput) SetVmwareToAwsTagMappings(v []*VmwareToAwsTagMapping) *GetHypervisorPropertyMappingsOutput { + s.VmwareToAwsTagMappings = v return s } @@ -2930,6 +3910,116 @@ func (s *Hypervisor) SetState(v string) *Hypervisor { return s } +// These are the details of the specified hypervisor. A hypervisor is hardware, +// software, or firmware that creates and manages virtual machines, and allocates +// resources to them. +type HypervisorDetails struct { + _ struct{} `type:"structure"` + + // The server host of the hypervisor. This can be either an IP address or a + // fully-qualified domain name (FQDN). + Host *string `min:"3" type:"string"` + + // The Amazon Resource Name (ARN) of the hypervisor. + HypervisorArn *string `min:"50" type:"string"` + + // The Amazon Resource Name (ARN) of the KMS used to encrypt the hypervisor. + KmsKeyArn *string `min:"50" type:"string"` + + // This is the time when the most recent successful sync of metadata occurred. + LastSuccessfulMetadataSyncTime *time.Time `type:"timestamp"` + + // This is the most recent status for the indicated metadata sync. + LatestMetadataSyncStatus *string `type:"string" enum:"SyncMetadataStatus"` + + // This is the most recent status for the indicated metadata sync. + LatestMetadataSyncStatusMessage *string `type:"string"` + + // The Amazon Resource Name (ARN) of the group of gateways within the requested + // log. + LogGroupArn *string `type:"string"` + + // This is the name of the specified hypervisor. + Name *string `min:"1" type:"string"` + + // This is the current state of the specified hypervisor. + // + // The possible states are PENDING, ONLINE, OFFLINE, or ERROR. + State *string `type:"string" enum:"HypervisorState"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s HypervisorDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s HypervisorDetails) GoString() string { + return s.String() +} + +// SetHost sets the Host field's value. +func (s *HypervisorDetails) SetHost(v string) *HypervisorDetails { + s.Host = &v + return s +} + +// SetHypervisorArn sets the HypervisorArn field's value. +func (s *HypervisorDetails) SetHypervisorArn(v string) *HypervisorDetails { + s.HypervisorArn = &v + return s +} + +// SetKmsKeyArn sets the KmsKeyArn field's value. +func (s *HypervisorDetails) SetKmsKeyArn(v string) *HypervisorDetails { + s.KmsKeyArn = &v + return s +} + +// SetLastSuccessfulMetadataSyncTime sets the LastSuccessfulMetadataSyncTime field's value. +func (s *HypervisorDetails) SetLastSuccessfulMetadataSyncTime(v time.Time) *HypervisorDetails { + s.LastSuccessfulMetadataSyncTime = &v + return s +} + +// SetLatestMetadataSyncStatus sets the LatestMetadataSyncStatus field's value. +func (s *HypervisorDetails) SetLatestMetadataSyncStatus(v string) *HypervisorDetails { + s.LatestMetadataSyncStatus = &v + return s +} + +// SetLatestMetadataSyncStatusMessage sets the LatestMetadataSyncStatusMessage field's value. +func (s *HypervisorDetails) SetLatestMetadataSyncStatusMessage(v string) *HypervisorDetails { + s.LatestMetadataSyncStatusMessage = &v + return s +} + +// SetLogGroupArn sets the LogGroupArn field's value. +func (s *HypervisorDetails) SetLogGroupArn(v string) *HypervisorDetails { + s.LogGroupArn = &v + return s +} + +// SetName sets the Name field's value. +func (s *HypervisorDetails) SetName(v string) *HypervisorDetails { + s.Name = &v + return s +} + +// SetState sets the State field's value. +func (s *HypervisorDetails) SetState(v string) *HypervisorDetails { + s.State = &v + return s +} + type ImportHypervisorConfigurationInput struct { _ struct{} `type:"structure"` @@ -3585,19 +4675,191 @@ type MaintenanceStartTime struct { // time zone of the gateway. DayOfWeek *int64 `type:"integer"` - // The hour component of the maintenance start time represented as hh, where - // hh is the hour (0 to 23). The hour of the day is in the time zone of the - // gateway. + // The hour component of the maintenance start time represented as hh, where + // hh is the hour (0 to 23). The hour of the day is in the time zone of the + // gateway. + // + // HourOfDay is a required field + HourOfDay *int64 `type:"integer" required:"true"` + + // The minute component of the maintenance start time represented as mm, where + // mm is the minute (0 to 59). The minute of the hour is in the time zone of + // the gateway. + // + // MinuteOfHour is a required field + MinuteOfHour *int64 `type:"integer" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MaintenanceStartTime) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MaintenanceStartTime) GoString() string { + return s.String() +} + +// SetDayOfMonth sets the DayOfMonth field's value. +func (s *MaintenanceStartTime) SetDayOfMonth(v int64) *MaintenanceStartTime { + s.DayOfMonth = &v + return s +} + +// SetDayOfWeek sets the DayOfWeek field's value. +func (s *MaintenanceStartTime) SetDayOfWeek(v int64) *MaintenanceStartTime { + s.DayOfWeek = &v + return s +} + +// SetHourOfDay sets the HourOfDay field's value. +func (s *MaintenanceStartTime) SetHourOfDay(v int64) *MaintenanceStartTime { + s.HourOfDay = &v + return s +} + +// SetMinuteOfHour sets the MinuteOfHour field's value. +func (s *MaintenanceStartTime) SetMinuteOfHour(v int64) *MaintenanceStartTime { + s.MinuteOfHour = &v + return s +} + +type PutBandwidthRateLimitScheduleInput struct { + _ struct{} `type:"structure"` + + // An array containing bandwidth rate limit schedule intervals for a gateway. + // When no bandwidth rate limit intervals have been scheduled, the array is + // empty. + // + // BandwidthRateLimitIntervals is a required field + BandwidthRateLimitIntervals []*BandwidthRateLimitInterval `type:"list" required:"true"` + + // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways (https://docs.aws.amazon.com/aws-backup/latest/devguide/API_BGW_ListGateways.html) + // operation to return a list of gateways for your account and Amazon Web Services + // Region. + // + // GatewayArn is a required field + GatewayArn *string `min:"50" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutBandwidthRateLimitScheduleInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutBandwidthRateLimitScheduleInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutBandwidthRateLimitScheduleInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutBandwidthRateLimitScheduleInput"} + if s.BandwidthRateLimitIntervals == nil { + invalidParams.Add(request.NewErrParamRequired("BandwidthRateLimitIntervals")) + } + if s.GatewayArn == nil { + invalidParams.Add(request.NewErrParamRequired("GatewayArn")) + } + if s.GatewayArn != nil && len(*s.GatewayArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("GatewayArn", 50)) + } + if s.BandwidthRateLimitIntervals != nil { + for i, v := range s.BandwidthRateLimitIntervals { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "BandwidthRateLimitIntervals", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBandwidthRateLimitIntervals sets the BandwidthRateLimitIntervals field's value. +func (s *PutBandwidthRateLimitScheduleInput) SetBandwidthRateLimitIntervals(v []*BandwidthRateLimitInterval) *PutBandwidthRateLimitScheduleInput { + s.BandwidthRateLimitIntervals = v + return s +} + +// SetGatewayArn sets the GatewayArn field's value. +func (s *PutBandwidthRateLimitScheduleInput) SetGatewayArn(v string) *PutBandwidthRateLimitScheduleInput { + s.GatewayArn = &v + return s +} + +type PutBandwidthRateLimitScheduleOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways (https://docs.aws.amazon.com/aws-backup/latest/devguide/API_BGW_ListGateways.html) + // operation to return a list of gateways for your account and Amazon Web Services + // Region. + GatewayArn *string `min:"50" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutBandwidthRateLimitScheduleOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutBandwidthRateLimitScheduleOutput) GoString() string { + return s.String() +} + +// SetGatewayArn sets the GatewayArn field's value. +func (s *PutBandwidthRateLimitScheduleOutput) SetGatewayArn(v string) *PutBandwidthRateLimitScheduleOutput { + s.GatewayArn = &v + return s +} + +type PutHypervisorPropertyMappingsInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the hypervisor. // - // HourOfDay is a required field - HourOfDay *int64 `type:"integer" required:"true"` + // HypervisorArn is a required field + HypervisorArn *string `min:"50" type:"string" required:"true"` - // The minute component of the maintenance start time represented as mm, where - // mm is the minute (0 to 59). The minute of the hour is in the time zone of - // the gateway. + // The Amazon Resource Name (ARN) of the IAM role. // - // MinuteOfHour is a required field - MinuteOfHour *int64 `type:"integer" required:"true"` + // IamRoleArn is a required field + IamRoleArn *string `min:"20" type:"string" required:"true"` + + // This action requests the mappings of on-premises VMware tags to the Amazon + // Web Services tags. + // + // VmwareToAwsTagMappings is a required field + VmwareToAwsTagMappings []*VmwareToAwsTagMapping `type:"list" required:"true"` } // String returns the string representation. @@ -3605,7 +4867,7 @@ type MaintenanceStartTime struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s MaintenanceStartTime) String() string { +func (s PutHypervisorPropertyMappingsInput) String() string { return awsutil.Prettify(s) } @@ -3614,31 +4876,91 @@ func (s MaintenanceStartTime) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s MaintenanceStartTime) GoString() string { +func (s PutHypervisorPropertyMappingsInput) GoString() string { return s.String() } -// SetDayOfMonth sets the DayOfMonth field's value. -func (s *MaintenanceStartTime) SetDayOfMonth(v int64) *MaintenanceStartTime { - s.DayOfMonth = &v +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutHypervisorPropertyMappingsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutHypervisorPropertyMappingsInput"} + if s.HypervisorArn == nil { + invalidParams.Add(request.NewErrParamRequired("HypervisorArn")) + } + if s.HypervisorArn != nil && len(*s.HypervisorArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("HypervisorArn", 50)) + } + if s.IamRoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("IamRoleArn")) + } + if s.IamRoleArn != nil && len(*s.IamRoleArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("IamRoleArn", 20)) + } + if s.VmwareToAwsTagMappings == nil { + invalidParams.Add(request.NewErrParamRequired("VmwareToAwsTagMappings")) + } + if s.VmwareToAwsTagMappings != nil { + for i, v := range s.VmwareToAwsTagMappings { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "VmwareToAwsTagMappings", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetHypervisorArn sets the HypervisorArn field's value. +func (s *PutHypervisorPropertyMappingsInput) SetHypervisorArn(v string) *PutHypervisorPropertyMappingsInput { + s.HypervisorArn = &v return s } -// SetDayOfWeek sets the DayOfWeek field's value. -func (s *MaintenanceStartTime) SetDayOfWeek(v int64) *MaintenanceStartTime { - s.DayOfWeek = &v +// SetIamRoleArn sets the IamRoleArn field's value. +func (s *PutHypervisorPropertyMappingsInput) SetIamRoleArn(v string) *PutHypervisorPropertyMappingsInput { + s.IamRoleArn = &v return s } -// SetHourOfDay sets the HourOfDay field's value. -func (s *MaintenanceStartTime) SetHourOfDay(v int64) *MaintenanceStartTime { - s.HourOfDay = &v +// SetVmwareToAwsTagMappings sets the VmwareToAwsTagMappings field's value. +func (s *PutHypervisorPropertyMappingsInput) SetVmwareToAwsTagMappings(v []*VmwareToAwsTagMapping) *PutHypervisorPropertyMappingsInput { + s.VmwareToAwsTagMappings = v return s } -// SetMinuteOfHour sets the MinuteOfHour field's value. -func (s *MaintenanceStartTime) SetMinuteOfHour(v int64) *MaintenanceStartTime { - s.MinuteOfHour = &v +type PutHypervisorPropertyMappingsOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the hypervisor. + HypervisorArn *string `min:"50" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutHypervisorPropertyMappingsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutHypervisorPropertyMappingsOutput) GoString() string { + return s.String() +} + +// SetHypervisorArn sets the HypervisorArn field's value. +func (s *PutHypervisorPropertyMappingsOutput) SetHypervisorArn(v string) *PutHypervisorPropertyMappingsOutput { + s.HypervisorArn = &v return s } @@ -3842,6 +5164,86 @@ func (s *ResourceNotFoundException) RequestID() string { return s.RespMetadata.RequestID } +type StartVirtualMachinesMetadataSyncInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the hypervisor. + // + // HypervisorArn is a required field + HypervisorArn *string `min:"50" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartVirtualMachinesMetadataSyncInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartVirtualMachinesMetadataSyncInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartVirtualMachinesMetadataSyncInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartVirtualMachinesMetadataSyncInput"} + if s.HypervisorArn == nil { + invalidParams.Add(request.NewErrParamRequired("HypervisorArn")) + } + if s.HypervisorArn != nil && len(*s.HypervisorArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("HypervisorArn", 50)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetHypervisorArn sets the HypervisorArn field's value. +func (s *StartVirtualMachinesMetadataSyncInput) SetHypervisorArn(v string) *StartVirtualMachinesMetadataSyncInput { + s.HypervisorArn = &v + return s +} + +type StartVirtualMachinesMetadataSyncOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the hypervisor. + HypervisorArn *string `min:"50" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartVirtualMachinesMetadataSyncOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartVirtualMachinesMetadataSyncOutput) GoString() string { + return s.String() +} + +// SetHypervisorArn sets the HypervisorArn field's value. +func (s *StartVirtualMachinesMetadataSyncOutput) SetHypervisorArn(v string) *StartVirtualMachinesMetadataSyncOutput { + s.HypervisorArn = &v + return s +} + // A key-value pair you can use to manage, filter, and search for your resources. // Allowed characters include UTF-8 letters, numbers, spaces, and the following // characters: + - = . _ : /. @@ -4482,6 +5884,10 @@ type UpdateHypervisorInput struct { // HypervisorArn is a required field HypervisorArn *string `min:"50" type:"string" required:"true"` + // The Amazon Resource Name (ARN) of the group of gateways within the requested + // log. + LogGroupArn *string `type:"string"` + // The updated name for the hypervisor Name *string `min:"1" type:"string"` @@ -4558,6 +5964,12 @@ func (s *UpdateHypervisorInput) SetHypervisorArn(v string) *UpdateHypervisorInpu return s } +// SetLogGroupArn sets the LogGroupArn field's value. +func (s *UpdateHypervisorInput) SetLogGroupArn(v string) *UpdateHypervisorInput { + s.LogGroupArn = &v + return s +} + // SetName sets the Name field's value. func (s *UpdateHypervisorInput) SetName(v string) *UpdateHypervisorInput { s.Name = &v @@ -4774,6 +6186,10 @@ type VirtualMachineDetails struct { // The Amazon Resource Name (ARN) of the virtual machine. For example, arn:aws:backup-gateway:us-west-1:0000000000000:vm/vm-0000ABCDEFGIJKL. ResourceArn *string `min:"50" type:"string"` + + // These are the details of the VMware tags associated with the specified virtual + // machine. + VmwareTags []*VmwareTag `type:"list"` } // String returns the string representation. @@ -4830,6 +6246,164 @@ func (s *VirtualMachineDetails) SetResourceArn(v string) *VirtualMachineDetails return s } +// SetVmwareTags sets the VmwareTags field's value. +func (s *VirtualMachineDetails) SetVmwareTags(v []*VmwareTag) *VirtualMachineDetails { + s.VmwareTags = v + return s +} + +// A VMware tag is a tag attached to a specific virtual machine. A tag (https://docs.aws.amazon.com/aws-backup/latest/devguide/API_BGW_Tag.html) +// is a key-value pair you can use to manage, filter, and search for your resources. +// +// The content of VMware tags can be matched to Amazon Web Services tags. +type VmwareTag struct { + _ struct{} `type:"structure"` + + // The is the category of VMware. + VmwareCategory *string `min:"1" type:"string"` + + // This is a user-defined description of a VMware tag. + VmwareTagDescription *string `type:"string"` + + // This is the user-defined name of a VMware tag. + VmwareTagName *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VmwareTag) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VmwareTag) GoString() string { + return s.String() +} + +// SetVmwareCategory sets the VmwareCategory field's value. +func (s *VmwareTag) SetVmwareCategory(v string) *VmwareTag { + s.VmwareCategory = &v + return s +} + +// SetVmwareTagDescription sets the VmwareTagDescription field's value. +func (s *VmwareTag) SetVmwareTagDescription(v string) *VmwareTag { + s.VmwareTagDescription = &v + return s +} + +// SetVmwareTagName sets the VmwareTagName field's value. +func (s *VmwareTag) SetVmwareTagName(v string) *VmwareTag { + s.VmwareTagName = &v + return s +} + +// This displays the mapping of on-premises VMware tags to the corresponding +// Amazon Web Services tags. +type VmwareToAwsTagMapping struct { + _ struct{} `type:"structure"` + + // The key part of the Amazon Web Services tag's key-value pair. + // + // AwsTagKey is a required field + AwsTagKey *string `min:"1" type:"string" required:"true"` + + // The value part of the Amazon Web Services tag's key-value pair. + // + // AwsTagValue is a required field + AwsTagValue *string `type:"string" required:"true"` + + // The is the category of VMware. + // + // VmwareCategory is a required field + VmwareCategory *string `min:"1" type:"string" required:"true"` + + // This is the user-defined name of a VMware tag. + // + // VmwareTagName is a required field + VmwareTagName *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VmwareToAwsTagMapping) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VmwareToAwsTagMapping) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *VmwareToAwsTagMapping) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VmwareToAwsTagMapping"} + if s.AwsTagKey == nil { + invalidParams.Add(request.NewErrParamRequired("AwsTagKey")) + } + if s.AwsTagKey != nil && len(*s.AwsTagKey) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AwsTagKey", 1)) + } + if s.AwsTagValue == nil { + invalidParams.Add(request.NewErrParamRequired("AwsTagValue")) + } + if s.VmwareCategory == nil { + invalidParams.Add(request.NewErrParamRequired("VmwareCategory")) + } + if s.VmwareCategory != nil && len(*s.VmwareCategory) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VmwareCategory", 1)) + } + if s.VmwareTagName == nil { + invalidParams.Add(request.NewErrParamRequired("VmwareTagName")) + } + if s.VmwareTagName != nil && len(*s.VmwareTagName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VmwareTagName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAwsTagKey sets the AwsTagKey field's value. +func (s *VmwareToAwsTagMapping) SetAwsTagKey(v string) *VmwareToAwsTagMapping { + s.AwsTagKey = &v + return s +} + +// SetAwsTagValue sets the AwsTagValue field's value. +func (s *VmwareToAwsTagMapping) SetAwsTagValue(v string) *VmwareToAwsTagMapping { + s.AwsTagValue = &v + return s +} + +// SetVmwareCategory sets the VmwareCategory field's value. +func (s *VmwareToAwsTagMapping) SetVmwareCategory(v string) *VmwareToAwsTagMapping { + s.VmwareCategory = &v + return s +} + +// SetVmwareTagName sets the VmwareTagName field's value. +func (s *VmwareToAwsTagMapping) SetVmwareTagName(v string) *VmwareToAwsTagMapping { + s.VmwareTagName = &v + return s +} + const ( // GatewayTypeBackupVm is a GatewayType enum value GatewayTypeBackupVm = "BACKUP_VM" @@ -4865,3 +6439,31 @@ func HypervisorState_Values() []string { HypervisorStateError, } } + +const ( + // SyncMetadataStatusCreated is a SyncMetadataStatus enum value + SyncMetadataStatusCreated = "CREATED" + + // SyncMetadataStatusRunning is a SyncMetadataStatus enum value + SyncMetadataStatusRunning = "RUNNING" + + // SyncMetadataStatusFailed is a SyncMetadataStatus enum value + SyncMetadataStatusFailed = "FAILED" + + // SyncMetadataStatusPartiallyFailed is a SyncMetadataStatus enum value + SyncMetadataStatusPartiallyFailed = "PARTIALLY_FAILED" + + // SyncMetadataStatusSucceeded is a SyncMetadataStatus enum value + SyncMetadataStatusSucceeded = "SUCCEEDED" +) + +// SyncMetadataStatus_Values returns all elements of the SyncMetadataStatus enum +func SyncMetadataStatus_Values() []string { + return []string{ + SyncMetadataStatusCreated, + SyncMetadataStatusRunning, + SyncMetadataStatusFailed, + SyncMetadataStatusPartiallyFailed, + SyncMetadataStatusSucceeded, + } +} diff --git a/service/backupgateway/backupgatewayiface/interface.go b/service/backupgateway/backupgatewayiface/interface.go index 7bb3c0b72a..5b9ebff46e 100644 --- a/service/backupgateway/backupgatewayiface/interface.go +++ b/service/backupgateway/backupgatewayiface/interface.go @@ -80,10 +80,22 @@ type BackupGatewayAPI interface { DisassociateGatewayFromServerWithContext(aws.Context, *backupgateway.DisassociateGatewayFromServerInput, ...request.Option) (*backupgateway.DisassociateGatewayFromServerOutput, error) DisassociateGatewayFromServerRequest(*backupgateway.DisassociateGatewayFromServerInput) (*request.Request, *backupgateway.DisassociateGatewayFromServerOutput) + GetBandwidthRateLimitSchedule(*backupgateway.GetBandwidthRateLimitScheduleInput) (*backupgateway.GetBandwidthRateLimitScheduleOutput, error) + GetBandwidthRateLimitScheduleWithContext(aws.Context, *backupgateway.GetBandwidthRateLimitScheduleInput, ...request.Option) (*backupgateway.GetBandwidthRateLimitScheduleOutput, error) + GetBandwidthRateLimitScheduleRequest(*backupgateway.GetBandwidthRateLimitScheduleInput) (*request.Request, *backupgateway.GetBandwidthRateLimitScheduleOutput) + GetGateway(*backupgateway.GetGatewayInput) (*backupgateway.GetGatewayOutput, error) GetGatewayWithContext(aws.Context, *backupgateway.GetGatewayInput, ...request.Option) (*backupgateway.GetGatewayOutput, error) GetGatewayRequest(*backupgateway.GetGatewayInput) (*request.Request, *backupgateway.GetGatewayOutput) + GetHypervisor(*backupgateway.GetHypervisorInput) (*backupgateway.GetHypervisorOutput, error) + GetHypervisorWithContext(aws.Context, *backupgateway.GetHypervisorInput, ...request.Option) (*backupgateway.GetHypervisorOutput, error) + GetHypervisorRequest(*backupgateway.GetHypervisorInput) (*request.Request, *backupgateway.GetHypervisorOutput) + + GetHypervisorPropertyMappings(*backupgateway.GetHypervisorPropertyMappingsInput) (*backupgateway.GetHypervisorPropertyMappingsOutput, error) + GetHypervisorPropertyMappingsWithContext(aws.Context, *backupgateway.GetHypervisorPropertyMappingsInput, ...request.Option) (*backupgateway.GetHypervisorPropertyMappingsOutput, error) + GetHypervisorPropertyMappingsRequest(*backupgateway.GetHypervisorPropertyMappingsInput) (*request.Request, *backupgateway.GetHypervisorPropertyMappingsOutput) + GetVirtualMachine(*backupgateway.GetVirtualMachineInput) (*backupgateway.GetVirtualMachineOutput, error) GetVirtualMachineWithContext(aws.Context, *backupgateway.GetVirtualMachineInput, ...request.Option) (*backupgateway.GetVirtualMachineOutput, error) GetVirtualMachineRequest(*backupgateway.GetVirtualMachineInput) (*request.Request, *backupgateway.GetVirtualMachineOutput) @@ -117,10 +129,22 @@ type BackupGatewayAPI interface { ListVirtualMachinesPages(*backupgateway.ListVirtualMachinesInput, func(*backupgateway.ListVirtualMachinesOutput, bool) bool) error ListVirtualMachinesPagesWithContext(aws.Context, *backupgateway.ListVirtualMachinesInput, func(*backupgateway.ListVirtualMachinesOutput, bool) bool, ...request.Option) error + PutBandwidthRateLimitSchedule(*backupgateway.PutBandwidthRateLimitScheduleInput) (*backupgateway.PutBandwidthRateLimitScheduleOutput, error) + PutBandwidthRateLimitScheduleWithContext(aws.Context, *backupgateway.PutBandwidthRateLimitScheduleInput, ...request.Option) (*backupgateway.PutBandwidthRateLimitScheduleOutput, error) + PutBandwidthRateLimitScheduleRequest(*backupgateway.PutBandwidthRateLimitScheduleInput) (*request.Request, *backupgateway.PutBandwidthRateLimitScheduleOutput) + + PutHypervisorPropertyMappings(*backupgateway.PutHypervisorPropertyMappingsInput) (*backupgateway.PutHypervisorPropertyMappingsOutput, error) + PutHypervisorPropertyMappingsWithContext(aws.Context, *backupgateway.PutHypervisorPropertyMappingsInput, ...request.Option) (*backupgateway.PutHypervisorPropertyMappingsOutput, error) + PutHypervisorPropertyMappingsRequest(*backupgateway.PutHypervisorPropertyMappingsInput) (*request.Request, *backupgateway.PutHypervisorPropertyMappingsOutput) + PutMaintenanceStartTime(*backupgateway.PutMaintenanceStartTimeInput) (*backupgateway.PutMaintenanceStartTimeOutput, error) PutMaintenanceStartTimeWithContext(aws.Context, *backupgateway.PutMaintenanceStartTimeInput, ...request.Option) (*backupgateway.PutMaintenanceStartTimeOutput, error) PutMaintenanceStartTimeRequest(*backupgateway.PutMaintenanceStartTimeInput) (*request.Request, *backupgateway.PutMaintenanceStartTimeOutput) + StartVirtualMachinesMetadataSync(*backupgateway.StartVirtualMachinesMetadataSyncInput) (*backupgateway.StartVirtualMachinesMetadataSyncOutput, error) + StartVirtualMachinesMetadataSyncWithContext(aws.Context, *backupgateway.StartVirtualMachinesMetadataSyncInput, ...request.Option) (*backupgateway.StartVirtualMachinesMetadataSyncOutput, error) + StartVirtualMachinesMetadataSyncRequest(*backupgateway.StartVirtualMachinesMetadataSyncInput) (*request.Request, *backupgateway.StartVirtualMachinesMetadataSyncOutput) + TagResource(*backupgateway.TagResourceInput) (*backupgateway.TagResourceOutput, error) TagResourceWithContext(aws.Context, *backupgateway.TagResourceInput, ...request.Option) (*backupgateway.TagResourceOutput, error) TagResourceRequest(*backupgateway.TagResourceInput) (*request.Request, *backupgateway.TagResourceOutput) diff --git a/service/connect/api.go b/service/connect/api.go index 73ca56aaef..b9dd105ae3 100644 --- a/service/connect/api.go +++ b/service/connect/api.go @@ -1255,7 +1255,7 @@ func (c *Connect) CreateContactFlowRequest(input *CreateContactFlowInput) (req * // Creates a flow for the specified Amazon Connect instance. // // You can also create and update flows using the Amazon Connect Flow language -// (https://docs.aws.amazon.com/connect/latest/adminguide/flow-language.html). +// (https://docs.aws.amazon.com/connect/latest/APIReference/flow-language.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2060,6 +2060,9 @@ func (c *Connect) CreateRuleRequest(input *CreateRuleInput) (req *request.Reques // // Creates a rule for the specified Amazon Connect instance. // +// Use the Rules Function language (https://docs.aws.amazon.com/connect/latest/APIReference/connect-rules-language.html) +// to code conditions for the rule. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -4352,7 +4355,7 @@ func (c *Connect) DescribeContactFlowRequest(input *DescribeContactFlowInput) (r // Describes the specified flow. // // You can also create and update flows using the Amazon Connect Flow language -// (https://docs.aws.amazon.com/connect/latest/adminguide/flow-language.html). +// (https://docs.aws.amazon.com/connect/latest/APIReference/flow-language.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -8309,7 +8312,7 @@ func (c *Connect) ListContactFlowsRequest(input *ListContactFlowsInput) (req *re // Provides information about the flows for the specified Amazon Connect instance. // // You can also create and update flows using the Amazon Connect Flow language -// (https://docs.aws.amazon.com/connect/latest/adminguide/flow-language.html). +// (https://docs.aws.amazon.com/connect/latest/APIReference/flow-language.html). // // For more information about flows, see Flows (https://docs.aws.amazon.com/connect/latest/adminguide/concepts-contact-flows.html) // in the Amazon Connect Administrator Guide. @@ -15364,7 +15367,7 @@ func (c *Connect) UpdateContactFlowContentRequest(input *UpdateContactFlowConten // Updates the specified flow. // // You can also create and update flows using the Amazon Connect Flow language -// (https://docs.aws.amazon.com/connect/latest/adminguide/flow-language.html). +// (https://docs.aws.amazon.com/connect/latest/APIReference/flow-language.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -15750,7 +15753,7 @@ func (c *Connect) UpdateContactFlowNameRequest(input *UpdateContactFlowNameInput // The name of the flow. // // You can also create and update flows using the Amazon Connect Flow language -// (https://docs.aws.amazon.com/connect/latest/adminguide/flow-language.html). +// (https://docs.aws.amazon.com/connect/latest/APIReference/flow-language.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -17375,6 +17378,9 @@ func (c *Connect) UpdateRuleRequest(input *UpdateRuleInput) (req *request.Reques // // Updates a rule for the specified Amazon Connect instance. // +// Use the Rules Function language (https://docs.aws.amazon.com/connect/latest/APIReference/connect-rules-language.html) +// to code conditions for the rule. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -20901,7 +20907,7 @@ func (s *ContactFlowNotPublishedException) RequestID() string { // Contains summary information about a flow. // // You can also create and update flows using the Amazon Connect Flow language -// (https://docs.aws.amazon.com/connect/latest/adminguide/flow-language.html). +// (https://docs.aws.amazon.com/connect/latest/APIReference/flow-language.html). type ContactFlowSummary struct { _ struct{} `type:"structure"` @@ -22809,7 +22815,8 @@ type CreateSecurityProfileInput struct { SecurityProfileName *string `min:"1" type:"string" required:"true"` // The list of resources that a security profile applies tag restrictions to - // in Amazon Connect. + // in Amazon Connect. Following are acceptable ResourceNames: User | SecurityProfile + // | Queue | RoutingProfile TagRestrictedResources []*string `type:"list"` // The tags used to organize, track, or control access for this resource. For @@ -44100,8 +44107,7 @@ type UpdateContactFlowContentInput struct { ContactFlowId *string `location:"uri" locationName:"ContactFlowId" type:"string" required:"true"` // The JSON string that represents flow's content. For an example, see Example - // contact flow in Amazon Connect Flow language (https://docs.aws.amazon.com/connect/latest/adminguide/flow-language-example.html) - // in the Amazon Connect Administrator Guide. + // contact flow in Amazon Connect Flow language (https://docs.aws.amazon.com/connect/latest/APIReference/flow-language-example.html). // // Content is a required field Content *string `type:"string" required:"true"` @@ -51458,6 +51464,12 @@ const ( // VocabularyLanguageCodeZhCn is a VocabularyLanguageCode enum value VocabularyLanguageCodeZhCn = "zh-CN" + + // VocabularyLanguageCodeEnNz is a VocabularyLanguageCode enum value + VocabularyLanguageCodeEnNz = "en-NZ" + + // VocabularyLanguageCodeEnZa is a VocabularyLanguageCode enum value + VocabularyLanguageCodeEnZa = "en-ZA" ) // VocabularyLanguageCode_Values returns all elements of the VocabularyLanguageCode enum @@ -51484,6 +51496,8 @@ func VocabularyLanguageCode_Values() []string { VocabularyLanguageCodePtBr, VocabularyLanguageCodePtPt, VocabularyLanguageCodeZhCn, + VocabularyLanguageCodeEnNz, + VocabularyLanguageCodeEnZa, } } diff --git a/service/connect/doc.go b/service/connect/doc.go index b610c521ee..73da5c55de 100644 --- a/service/connect/doc.go +++ b/service/connect/doc.go @@ -20,8 +20,6 @@ // an endpoint. For a list of Amazon Connect endpoints, see Amazon Connect Endpoints // (https://docs.aws.amazon.com/general/latest/gr/connect_region.html). // -// Working with flows? Check out the Amazon Connect Flow language (https://docs.aws.amazon.com/connect/latest/adminguide/flow-language.html). -// // See https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08 for more information on this service. // // See connect package documentation for more information. diff --git a/service/ecs/api.go b/service/ecs/api.go index 3aafded100..8ccdb830fc 100644 --- a/service/ecs/api.go +++ b/service/ecs/api.go @@ -2179,6 +2179,10 @@ func (c *ECS) ExecuteCommandRequest(input *ExecuteCommandInput) (req *request.Re // you receive an AccessDeniedException when there is a mismatch between the // condition key value and the corresponding parameter value. // +// For information about required permissions and considerations, see Using +// Amazon ECS Exec for debugging (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-exec.htm) +// in the Amazon ECS Developer Guide. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -17099,9 +17103,57 @@ type NetworkBinding struct { // The port number on the container that's used with the network binding. ContainerPort *int64 `locationName:"containerPort" type:"integer"` + // The port number range on the container that's bound to the dynamically mapped + // host port range. + // + // The following rules apply when you specify a containerPortRange: + // + // * You must use either the bridge network mode or the awsvpc network mode. + // + // * This parameter is available for both the EC2 and Fargate launch types. + // + // * This parameter is available for both the Linux and Windows operating + // systems. + // + // * The container instance must have at least version 1.67.0 of the container + // agent and at least version 1.67.0-1 of the ecs-init package + // + // * You can specify a maximum of 100 port ranges per container. + // + // * You do not specify a hostPortRange. The value of the hostPortRange is + // set as follows: For containers in a task with the awsvpc network mode, + // the hostPort is set to the same value as the containerPort. This is a + // static mapping strategy. For containers in a task with the bridge network + // mode, the Amazon ECS agent finds open host ports from the default ephemeral + // range and passes it to docker to bind them to the container ports. + // + // * The containerPortRange valid values are between 1 and 65535. + // + // * A port can only be included in one port mapping per container. + // + // * You cannot specify overlapping port ranges. + // + // * The first port in the range must be less than last port in the range. + // + // * Docker recommends that you turn off the docker-proxy in the Docker daemon + // config file when you have a large number of ports. For more information, + // see Issue #11185 (https://github.com/moby/moby/issues/11185) on the Github + // website. For information about how to turn off the docker-proxy in the + // Docker daemon config file, see Docker daemon (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/bootstrap_container_instance.html#bootstrap_docker_daemon) + // in the Amazon ECS Developer Guide. + // + // You can call DescribeTasks (https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DescribeTasks.html) + // to view the hostPortRange which are the host ports that are bound to the + // container ports. + ContainerPortRange *string `locationName:"containerPortRange" type:"string"` + // The port number on the host that's used with the network binding. HostPort *int64 `locationName:"hostPort" type:"integer"` + // The port number range on the host that's used with the network binding. This + // is assigned is assigned by Docker and delivered by the Amazon ECS agent. + HostPortRange *string `locationName:"hostPortRange" type:"string"` + // The protocol used for the network binding. Protocol *string `locationName:"protocol" type:"string" enum:"TransportProtocol"` } @@ -17136,12 +17188,24 @@ func (s *NetworkBinding) SetContainerPort(v int64) *NetworkBinding { return s } +// SetContainerPortRange sets the ContainerPortRange field's value. +func (s *NetworkBinding) SetContainerPortRange(v string) *NetworkBinding { + s.ContainerPortRange = &v + return s +} + // SetHostPort sets the HostPort field's value. func (s *NetworkBinding) SetHostPort(v int64) *NetworkBinding { s.HostPort = &v return s } +// SetHostPortRange sets the HostPortRange field's value. +func (s *NetworkBinding) SetHostPortRange(v string) *NetworkBinding { + s.HostPortRange = &v + return s +} + // SetProtocol sets the Protocol field's value. func (s *NetworkBinding) SetProtocol(v string) *NetworkBinding { s.Protocol = &v @@ -17663,8 +17727,63 @@ type PortMapping struct { // the 100 reserved ports limit of a container instance. ContainerPort *int64 `locationName:"containerPort" type:"integer"` + // The port number range on the container that's bound to the dynamically mapped + // host port range. + // + // The following rules apply when you specify a containerPortRange: + // + // * You must use either the bridge network mode or the awsvpc network mode. + // + // * This parameter is available for both the EC2 and Fargate launch types. + // + // * This parameter is available for both the Linux and Windows operating + // systems. + // + // * The container instance must have at least version 1.67.0 of the container + // agent and at least version 1.67.0-1 of the ecs-init package + // + // * You can specify a maximum of 100 port ranges per container. + // + // * You do not specify a hostPortRange. The value of the hostPortRange is + // set as follows: For containers in a task with the awsvpc network mode, + // the hostPort is set to the same value as the containerPort. This is a + // static mapping strategy. For containers in a task with the bridge network + // mode, the Amazon ECS agent finds open host ports from the default ephemeral + // range and passes it to docker to bind them to the container ports. + // + // * The containerPortRange valid values are between 1 and 65535. + // + // * A port can only be included in one port mapping per container. + // + // * You cannot specify overlapping port ranges. + // + // * The first port in the range must be less than last port in the range. + // + // * Docker recommends that you turn off the docker-proxy in the Docker daemon + // config file when you have a large number of ports. For more information, + // see Issue #11185 (https://github.com/moby/moby/issues/11185) on the Github + // website. For information about how to turn off the docker-proxy in the + // Docker daemon config file, see Docker daemon (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/bootstrap_container_instance.html#bootstrap_docker_daemon) + // in the Amazon ECS Developer Guide. + // + // You can call DescribeTasks (https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DescribeTasks.html) + // to view the hostPortRange which are the host ports that are bound to the + // container ports. + ContainerPortRange *string `locationName:"containerPortRange" type:"string"` + // The port number on the container instance to reserve for your container. // + // If you specify a containerPortRange, leave this field empty and the value + // of the hostPort is set as follows: + // + // * For containers in a task with the awsvpc network mode, the hostPort + // is set to the same value as the containerPort. This is a static mapping + // strategy. + // + // * For containers in a task with the bridge network mode, the Amazon ECS + // agent finds open ports on the host and automaticaly binds them to the + // container ports. This is a dynamic mapping strategy. + // // If you use containers in a task with the awsvpc or host network mode, the // hostPort can either be left blank or set to the same value as the containerPort. // @@ -17736,6 +17855,12 @@ func (s *PortMapping) SetContainerPort(v int64) *PortMapping { return s } +// SetContainerPortRange sets the ContainerPortRange field's value. +func (s *PortMapping) SetContainerPortRange(v string) *PortMapping { + s.ContainerPortRange = &v + return s +} + // SetHostPort sets the HostPort field's value. func (s *PortMapping) SetHostPort(v int64) *PortMapping { s.HostPort = &v diff --git a/service/eks/api.go b/service/eks/api.go index 6ef179c631..77f3105926 100644 --- a/service/eks/api.go +++ b/service/eks/api.go @@ -641,10 +641,12 @@ func (c *EKS) CreateNodegroupRequest(input *CreateNodegroupInput) (req *request. // // An Amazon EKS managed node group is an Amazon EC2 Auto Scaling group and // associated Amazon EC2 instances that are managed by Amazon Web Services for -// an Amazon EKS cluster. Each node group uses a version of the Amazon EKS optimized -// Amazon Linux 2 AMI. For more information, see Managed Node Groups (https://docs.aws.amazon.com/eks/latest/userguide/managed-node-groups.html) +// an Amazon EKS cluster. For more information, see Managed node groups (https://docs.aws.amazon.com/eks/latest/userguide/managed-node-groups.html) // in the Amazon EKS User Guide. // +// Windows AMI types are only supported for commercial Regions that support +// Windows Amazon EKS. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -3924,8 +3926,10 @@ func (c *EKS) UpdateNodegroupVersionRequest(input *UpdateNodegroupVersionInput) // available AMI version of a node group's current Kubernetes version by not // specifying a Kubernetes version in the request. You can update to the latest // AMI version of your cluster's current Kubernetes version by specifying your -// cluster's Kubernetes version in the request. For more information, see Amazon -// EKS optimized Amazon Linux 2 AMI versions (https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html) +// cluster's Kubernetes version in the request. For information about Linux +// versions, see Amazon EKS optimized Amazon Linux AMI versions (https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html) +// in the Amazon EKS User Guide. For information about Windows versions, see +// Amazon EKS optimized Windows AMI versions (https://docs.aws.amazon.com/eks/latest/userguide/eks-ami-versions-windows.html) // in the Amazon EKS User Guide. // // You cannot roll back a node group to an earlier Kubernetes version or AMI @@ -4077,13 +4081,13 @@ type Addon struct { // The name of the cluster. ClusterName *string `locationName:"clusterName" min:"1" type:"string"` - // The provided configuration values. + // The configuration values that you provided. ConfigurationValues *string `locationName:"configurationValues" type:"string"` // The date and time that the add-on was created. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` - // An object representing the health of the add-on. + // An object that represents the health of the add-on. Health *AddonHealth `locationName:"health" type:"structure"` // Information about an Amazon EKS add-on from the Amazon Web Services Marketplace. @@ -4098,8 +4102,8 @@ type Addon struct { // The publisher of the add-on. Publisher *string `locationName:"publisher" type:"string"` - // The Amazon Resource Name (ARN) of the IAM role that is bound to the Kubernetes - // service account used by the add-on. + // The Amazon Resource Name (ARN) of the IAM role that's bound to the Kubernetes + // service account that the add-on uses. ServiceAccountRoleArn *string `locationName:"serviceAccountRoleArn" type:"string"` // The status of the add-on. @@ -5439,8 +5443,9 @@ func (s *ControlPlanePlacementResponse) SetGroupName(v string) *ControlPlanePlac type CreateAddonInput struct { _ struct{} `type:"structure"` - // The name of the add-on. The name must match one of the names returned by - // DescribeAddonVersions (https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonVersions.html). + // The name of the add-on. The name must match one of the names that DescribeAddonVersions + // (https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonVersions.html) + // returns. // // AddonName is a required field AddonName *string `locationName:"addonName" type:"string" required:"true"` @@ -5458,8 +5463,8 @@ type CreateAddonInput struct { // ClusterName is a required field ClusterName *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` - // The set of configuration values for the add-on being created. Whatever values - // provided here are validated against the schema from DescribeAddonConfiguration + // The set of configuration values for the add-on that's created. The values + // that you provide are validated against the schema in DescribeAddonConfiguration // (https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonConfiguration.html). ConfigurationValues *string `locationName:"configurationValues" type:"string"` @@ -5994,13 +5999,12 @@ func (s *CreateFargateProfileOutput) SetFargateProfile(v *FargateProfile) *Creat type CreateNodegroupInput struct { _ struct{} `type:"structure"` - // The AMI type for your node group. GPU instance types should use the AL2_x86_64_GPU - // AMI type. Non-GPU instances should use the AL2_x86_64 AMI type. Arm instances - // should use the AL2_ARM_64 AMI type. All types use the Amazon EKS optimized - // Amazon Linux 2 AMI. If you specify launchTemplate, and your launch template - // uses a custom AMI, then don't specify amiType, or the node group deployment - // will fail. For more information about using launch templates with Amazon - // EKS, see Launch template support (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html) + // The AMI type for your node group. If you specify launchTemplate, and your + // launch template uses a custom AMI, then don't specify amiType, or the node + // group deployment will fail. If your launch template uses a Windows custom + // AMI, then add eks:kube-proxy-windows to your Windows nodes rolearn in the + // aws-auth ConfigMap. For more information about using launch templates with + // Amazon EKS, see Launch template support (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html) // in the Amazon EKS User Guide. AmiType *string `locationName:"amiType" type:"string" enum:"AMITypes"` @@ -6017,22 +6021,23 @@ type CreateNodegroupInput struct { ClusterName *string `location:"uri" locationName:"name" type:"string" required:"true"` // The root device disk size (in GiB) for your node group instances. The default - // disk size is 20 GiB. If you specify launchTemplate, then don't specify diskSize, + // disk size is 20 GiB for Linux and Bottlerocket. The default disk size is + // 50 GiB for Windows. If you specify launchTemplate, then don't specify diskSize, // or the node group deployment will fail. For more information about using // launch templates with Amazon EKS, see Launch template support (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html) // in the Amazon EKS User Guide. DiskSize *int64 `locationName:"diskSize" type:"integer"` // Specify the instance types for a node group. If you specify a GPU instance - // type, be sure to specify AL2_x86_64_GPU with the amiType parameter. If you - // specify launchTemplate, then you can specify zero or one instance type in - // your launch template or you can specify 0-20 instance types for instanceTypes. - // If however, you specify an instance type in your launch template and specify - // any instanceTypes, the node group deployment will fail. If you don't specify - // an instance type in a launch template or for instanceTypes, then t3.medium - // is used, by default. If you specify Spot for capacityType, then we recommend - // specifying multiple values for instanceTypes. For more information, see Managed - // node group capacity types (https://docs.aws.amazon.com/eks/latest/userguide/managed-node-groups.html#managed-node-group-capacity-types) + // type, make sure to also specify an applicable GPU AMI type with the amiType + // parameter. If you specify launchTemplate, then you can specify zero or one + // instance type in your launch template or you can specify 0-20 instance types + // for instanceTypes. If however, you specify an instance type in your launch + // template and specify any instanceTypes, the node group deployment will fail. + // If you don't specify an instance type in a launch template or for instanceTypes, + // then t3.medium is used, by default. If you specify Spot for capacityType, + // then we recommend specifying multiple values for instanceTypes. For more + // information, see Managed node group capacity types (https://docs.aws.amazon.com/eks/latest/userguide/managed-node-groups.html#managed-node-group-capacity-types) // and Launch template support (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html) // in the Amazon EKS User Guide. InstanceTypes []*string `locationName:"instanceTypes" type:"list"` @@ -6070,19 +6075,25 @@ type CreateNodegroupInput struct { // The AMI version of the Amazon EKS optimized AMI to use with your node group. // By default, the latest available AMI version for the node group's current - // Kubernetes version is used. For more information, see Amazon EKS optimized - // Amazon Linux 2 AMI versions (https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html) - // in the Amazon EKS User Guide. If you specify launchTemplate, and your launch - // template uses a custom AMI, then don't specify releaseVersion, or the node - // group deployment will fail. For more information about using launch templates - // with Amazon EKS, see Launch template support (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html) + // Kubernetes version is used. For information about Linux versions, see Amazon + // EKS optimized Amazon Linux AMI versions (https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html) + // in the Amazon EKS User Guide. Amazon EKS managed node groups support the + // November 2022 and later releases of the Windows AMIs. For information about + // Windows versions, see Amazon EKS optimized Windows AMI versions (https://docs.aws.amazon.com/eks/latest/userguide/eks-ami-versions-windows.html) + // in the Amazon EKS User Guide. + // + // If you specify launchTemplate, and your launch template uses a custom AMI, + // then don't specify releaseVersion, or the node group deployment will fail. + // For more information about using launch templates with Amazon EKS, see Launch + // template support (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html) // in the Amazon EKS User Guide. ReleaseVersion *string `locationName:"releaseVersion" type:"string"` - // The remote access (SSH) configuration to use with your node group. If you - // specify launchTemplate, then don't specify remoteAccess, or the node group - // deployment will fail. For more information about using launch templates with - // Amazon EKS, see Launch template support (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html) + // The remote access configuration to use with your node group. For Linux, the + // protocol is SSH. For Windows, the protocol is RDP. If you specify launchTemplate, + // then don't specify remoteAccess, or the node group deployment will fail. + // For more information about using launch templates with Amazon EKS, see Launch + // template support (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html) // in the Amazon EKS User Guide. RemoteAccess *RemoteAccessConfig `locationName:"remoteAccess" type:"structure"` @@ -6796,8 +6807,9 @@ func (s *DeregisterClusterOutput) SetCluster(v *Cluster) *DeregisterClusterOutpu type DescribeAddonConfigurationInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The name of the add-on. The name must match one of the names returned by - // DescribeAddonVersions (https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonVersions.html). + // The name of the add-on. The name must match one of the names that DescribeAddonVersions + // (https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonVersions.html) + // returns. // // AddonName is a required field AddonName *string `location:"querystring" locationName:"addonName" type:"string" required:"true"` @@ -6865,8 +6877,8 @@ type DescribeAddonConfigurationOutput struct { // by DescribeAddonVersions (https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonVersions.html). AddonVersion *string `locationName:"addonVersion" type:"string"` - // A JSON schema used to validate provided configuration values when creating - // or updating an addon. + // A JSON schema that's used to validate the configuration values that you provide + // when an addon is created or updated. ConfigurationSchema *string `locationName:"configurationSchema" type:"string"` } @@ -10752,14 +10764,17 @@ type RemoteAccessConfig struct { // The Amazon EC2 SSH key name that provides access for SSH communication with // the nodes in the managed node group. For more information, see Amazon EC2 // key pairs and Linux instances (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html) - // in the Amazon Elastic Compute Cloud User Guide for Linux Instances. + // in the Amazon Elastic Compute Cloud User Guide for Linux Instances. For Windows, + // an Amazon EC2 SSH key is used to obtain the RDP password. For more information, + // see Amazon EC2 key pairs and Windows instances (https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ec2-key-pairs.html) + // in the Amazon Elastic Compute Cloud User Guide for Windows Instances. Ec2SshKey *string `locationName:"ec2SshKey" type:"string"` - // The security group ids that are allowed SSH access (port 22) to the nodes. - // If you specify an Amazon EC2 SSH key but do not specify a source security - // group when you create a managed node group, then port 22 on the nodes is - // opened to the internet (0.0.0.0/0). For more information, see Security Groups - // for Your VPC (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html) + // The security group IDs that are allowed SSH access (port 22) to the nodes. + // For Windows, the port is 3389. If you specify an Amazon EC2 SSH key but don't + // specify a source security group when you create a managed node group, then + // the port on the nodes is opened to the internet (0.0.0.0/0). For more information, + // see Security Groups for Your VPC (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html) // in the Amazon Virtual Private Cloud User Guide. SourceSecurityGroups []*string `locationName:"sourceSecurityGroups" type:"list"` } @@ -11633,9 +11648,9 @@ type UpdateAddonInput struct { // ClusterName is a required field ClusterName *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` - // The set of configuration values for the add-on being created. Whatever values - // provided here are validated against the schema from DescribeAddonConfiguration - // (https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonConfiguration.html) + // The set of configuration values for the add-on that's created. The values + // that you provide are validated against the schema in DescribeAddonConfiguration + // (https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonConfiguration.html). ConfigurationValues *string `locationName:"configurationValues" type:"string"` // How to resolve field value conflicts for an Amazon EKS add-on if you've changed @@ -12235,12 +12250,17 @@ type UpdateNodegroupVersionInput struct { // The AMI version of the Amazon EKS optimized AMI to use for the update. By // default, the latest available AMI version for the node group's Kubernetes - // version is used. For more information, see Amazon EKS optimized Amazon Linux - // 2 AMI versions (https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html) - // in the Amazon EKS User Guide. If you specify launchTemplate, and your launch - // template uses a custom AMI, then don't specify releaseVersion, or the node - // group update will fail. For more information about using launch templates - // with Amazon EKS, see Launch template support (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html) + // version is used. For information about Linux versions, see Amazon EKS optimized + // Amazon Linux AMI versions (https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html) + // in the Amazon EKS User Guide. Amazon EKS managed node groups support the + // November 2022 and later releases of the Windows AMIs. For information about + // Windows versions, see Amazon EKS optimized Windows AMI versions (https://docs.aws.amazon.com/eks/latest/userguide/eks-ami-versions-windows.html) + // in the Amazon EKS User Guide. + // + // If you specify launchTemplate, and your launch template uses a custom AMI, + // then don't specify releaseVersion, or the node group update will fail. For + // more information about using launch templates with Amazon EKS, see Launch + // template support (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html) // in the Amazon EKS User Guide. ReleaseVersion *string `locationName:"releaseVersion" type:"string"` @@ -12708,6 +12728,18 @@ const ( // AMITypesBottlerocketX8664Nvidia is a AMITypes enum value AMITypesBottlerocketX8664Nvidia = "BOTTLEROCKET_x86_64_NVIDIA" + + // AMITypesWindowsCore2019X8664 is a AMITypes enum value + AMITypesWindowsCore2019X8664 = "WINDOWS_CORE_2019_x86_64" + + // AMITypesWindowsFull2019X8664 is a AMITypes enum value + AMITypesWindowsFull2019X8664 = "WINDOWS_FULL_2019_x86_64" + + // AMITypesWindowsCore2022X8664 is a AMITypes enum value + AMITypesWindowsCore2022X8664 = "WINDOWS_CORE_2022_x86_64" + + // AMITypesWindowsFull2022X8664 is a AMITypes enum value + AMITypesWindowsFull2022X8664 = "WINDOWS_FULL_2022_x86_64" ) // AMITypes_Values returns all elements of the AMITypes enum @@ -12721,6 +12753,10 @@ func AMITypes_Values() []string { AMITypesBottlerocketX8664, AMITypesBottlerocketArm64Nvidia, AMITypesBottlerocketX8664Nvidia, + AMITypesWindowsCore2019X8664, + AMITypesWindowsFull2019X8664, + AMITypesWindowsCore2022X8664, + AMITypesWindowsFull2022X8664, } } diff --git a/service/glue/api.go b/service/glue/api.go index 61330c5ac9..851b261f3e 100644 --- a/service/glue/api.go +++ b/service/glue/api.go @@ -36793,6 +36793,10 @@ type DeltaTarget struct { // The name of the connection to use to connect to the Delta table target. ConnectionName *string `type:"string"` + // Specifies whether the crawler will create native tables, to allow integration + // with query engines that support querying of the Delta transaction log directly. + CreateNativeDeltaTable *bool `type:"boolean"` + // A list of the Amazon S3 paths to the Delta tables. DeltaTables []*string `type:"list"` @@ -36824,6 +36828,12 @@ func (s *DeltaTarget) SetConnectionName(v string) *DeltaTarget { return s } +// SetCreateNativeDeltaTable sets the CreateNativeDeltaTable field's value. +func (s *DeltaTarget) SetCreateNativeDeltaTable(v bool) *DeltaTarget { + s.CreateNativeDeltaTable = &v + return s +} + // SetDeltaTables sets the DeltaTables field's value. func (s *DeltaTarget) SetDeltaTables(v []*string) *DeltaTarget { s.DeltaTables = v diff --git a/service/kinesis/api.go b/service/kinesis/api.go index 17811211de..7bf240e0d4 100644 --- a/service/kinesis/api.go +++ b/service/kinesis/api.go @@ -68,6 +68,9 @@ func (c *Kinesis) AddTagsToStreamRequest(input *AddTagsToStreamInput) (req *requ // Adds or updates tags for the specified Kinesis data stream. You can assign // up to 50 tags to a data stream. // +// When invoking this API, it is recommended you use the StreamARN input parameter +// rather than the StreamName input parameter. +// // If tags have already been assigned to the stream, AddTagsToStream overwrites // any existing tags that correspond to the specified tag keys. // @@ -98,6 +101,9 @@ func (c *Kinesis) AddTagsToStreamRequest(input *AddTagsToStreamInput) (req *requ // The requested resource exceeds the maximum number allowed, or the number // of concurrent stream requests exceeds the maximum number allowed. // +// - AccessDeniedException +// Specifies that you do not have the permissions required to perform this operation. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/AddTagsToStream func (c *Kinesis) AddTagsToStream(input *AddTagsToStreamInput) (*AddTagsToStreamOutput, error) { req, out := c.AddTagsToStreamRequest(input) @@ -169,12 +175,17 @@ func (c *Kinesis) CreateStreamRequest(input *CreateStreamInput) (req *request.Re // within a stream is explicitly supported by means of shards, which are uniquely // identified groups of data records in a stream. // -// You specify and control the number of shards that a stream is composed of. -// Each shard can support reads up to five transactions per second, up to a -// maximum data read total of 2 MiB per second. Each shard can support writes -// up to 1,000 records per second, up to a maximum data write total of 1 MiB -// per second. If the amount of data input increases or decreases, you can add -// or remove shards. +// You can create your data stream using either on-demand or provisioned capacity +// mode. Data streams with an on-demand mode require no capacity planning and +// automatically scale to handle gigabytes of write and read throughput per +// minute. With the on-demand mode, Kinesis Data Streams automatically manages +// the shards in order to provide the necessary throughput. For the data streams +// with a provisioned mode, you must specify the number of shards for the data +// stream. Each shard can support reads up to five transactions per second, +// up to a maximum data read total of 2 MiB per second. Each shard can support +// writes up to 1,000 records per second, up to a maximum data write total of +// 1 MiB per second. If the amount of data input increases or decreases, you +// can add or remove shards. // // The stream name identifies the stream. The name is scoped to the Amazon Web // Services account used by the application. It is also scoped by Amazon Web @@ -296,6 +307,9 @@ func (c *Kinesis) DecreaseStreamRetentionPeriodRequest(input *DecreaseStreamRete // of time data records are accessible after they are added to the stream. The // minimum value of a stream's retention period is 24 hours. // +// When invoking this API, it is recommended you use the StreamARN input parameter +// rather than the StreamName input parameter. +// // This operation may result in lost data. For example, if the stream's retention // period is 48 hours and is decreased to 24 hours, any data already in the // stream that is older than 24 hours is inaccessible. @@ -325,6 +339,9 @@ func (c *Kinesis) DecreaseStreamRetentionPeriodRequest(input *DecreaseStreamRete // A specified parameter exceeds its restrictions, is not supported, or can't // be used. For more information, see the returned message. // +// - AccessDeniedException +// Specifies that you do not have the permissions required to perform this operation. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/DecreaseStreamRetentionPeriod func (c *Kinesis) DecreaseStreamRetentionPeriod(input *DecreaseStreamRetentionPeriodInput) (*DecreaseStreamRetentionPeriodOutput, error) { req, out := c.DecreaseStreamRetentionPeriodRequest(input) @@ -396,6 +413,9 @@ func (c *Kinesis) DeleteStreamRequest(input *DeleteStreamInput) (req *request.Re // the stream. If an application attempts to operate on a deleted stream, it // receives the exception ResourceNotFoundException. // +// When invoking this API, it is recommended you use the StreamARN input parameter +// rather than the StreamName input parameter. +// // If the stream is in the ACTIVE state, you can delete it. After a DeleteStream // request, the specified stream is in the DELETING state until Kinesis Data // Streams completes the deletion. @@ -433,6 +453,13 @@ func (c *Kinesis) DeleteStreamRequest(input *DeleteStreamInput) (req *request.Re // The resource is not available for this operation. For successful operation, // the resource must be in the ACTIVE state. // +// - InvalidArgumentException +// A specified parameter exceeds its restrictions, is not supported, or can't +// be used. For more information, see the returned message. +// +// - AccessDeniedException +// Specifies that you do not have the permissions required to perform this operation. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/DeleteStream func (c *Kinesis) DeleteStream(input *DeleteStreamInput) (*DeleteStreamOutput, error) { req, out := c.DeleteStreamRequest(input) @@ -693,6 +720,9 @@ func (c *Kinesis) DescribeStreamRequest(input *DescribeStreamInput) (req *reques // and the ListShards API to list the shards in a specified data stream and // obtain information about each shard. // +// When invoking this API, it is recommended you use the StreamARN input parameter +// rather than the StreamName input parameter. +// // The information returned includes the stream name, Amazon Resource Name (ARN), // creation time, enhanced metric configuration, and shard map. The shard map // is an array of shard objects. For each shard object, there is the hash key @@ -728,6 +758,13 @@ func (c *Kinesis) DescribeStreamRequest(input *DescribeStreamInput) (req *reques // The requested resource exceeds the maximum number allowed, or the number // of concurrent stream requests exceeds the maximum number allowed. // +// - InvalidArgumentException +// A specified parameter exceeds its restrictions, is not supported, or can't +// be used. For more information, see the returned message. +// +// - AccessDeniedException +// Specifies that you do not have the permissions required to perform this operation. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/DescribeStream func (c *Kinesis) DescribeStream(input *DescribeStreamInput) (*DescribeStreamOutput, error) { req, out := c.DescribeStreamRequest(input) @@ -943,6 +980,9 @@ func (c *Kinesis) DescribeStreamSummaryRequest(input *DescribeStreamSummaryInput // Provides a summarized description of the specified Kinesis data stream without // the shard list. // +// When invoking this API, it is recommended you use the StreamARN input parameter +// rather than the StreamName input parameter. +// // The information returned includes the stream name, Amazon Resource Name (ARN), // status, record retention period, approximate creation time, monitoring, encryption // details, and open shard count. @@ -966,6 +1006,13 @@ func (c *Kinesis) DescribeStreamSummaryRequest(input *DescribeStreamSummaryInput // The requested resource exceeds the maximum number allowed, or the number // of concurrent stream requests exceeds the maximum number allowed. // +// - InvalidArgumentException +// A specified parameter exceeds its restrictions, is not supported, or can't +// be used. For more information, see the returned message. +// +// - AccessDeniedException +// Specifies that you do not have the permissions required to perform this operation. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/DescribeStreamSummary func (c *Kinesis) DescribeStreamSummary(input *DescribeStreamSummaryInput) (*DescribeStreamSummaryOutput, error) { req, out := c.DescribeStreamSummaryRequest(input) @@ -1033,6 +1080,9 @@ func (c *Kinesis) DisableEnhancedMonitoringRequest(input *DisableEnhancedMonitor // // Disables enhanced monitoring. // +// When invoking this API, it is recommended you use the StreamARN input parameter +// rather than the StreamName input parameter. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -1058,6 +1108,9 @@ func (c *Kinesis) DisableEnhancedMonitoringRequest(input *DisableEnhancedMonitor // The requested resource could not be found. The stream might not be specified // correctly. // +// - AccessDeniedException +// Specifies that you do not have the permissions required to perform this operation. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/DisableEnhancedMonitoring func (c *Kinesis) DisableEnhancedMonitoring(input *DisableEnhancedMonitoringInput) (*EnhancedMonitoringOutput, error) { req, out := c.DisableEnhancedMonitoringRequest(input) @@ -1125,6 +1178,9 @@ func (c *Kinesis) EnableEnhancedMonitoringRequest(input *EnableEnhancedMonitorin // // Enables enhanced Kinesis data stream monitoring for shard-level metrics. // +// When invoking this API, it is recommended you use the StreamARN input parameter +// rather than the StreamName input parameter. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -1150,6 +1206,9 @@ func (c *Kinesis) EnableEnhancedMonitoringRequest(input *EnableEnhancedMonitorin // The requested resource could not be found. The stream might not be specified // correctly. // +// - AccessDeniedException +// Specifies that you do not have the permissions required to perform this operation. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/EnableEnhancedMonitoring func (c *Kinesis) EnableEnhancedMonitoring(input *EnableEnhancedMonitoringInput) (*EnhancedMonitoringOutput, error) { req, out := c.EnableEnhancedMonitoringRequest(input) @@ -1217,6 +1276,9 @@ func (c *Kinesis) GetRecordsRequest(input *GetRecordsInput) (req *request.Reques // // Gets data records from a Kinesis data stream's shard. // +// When invoking this API, it is recommended you use the StreamARN input parameter +// in addition to the ShardIterator parameter. +// // Specify a shard iterator using the ShardIterator parameter. The shard iterator // specifies the position in the shard from which you want to start reading // data records sequentially. If there are no records available in the portion @@ -1329,6 +1391,9 @@ func (c *Kinesis) GetRecordsRequest(input *GetRecordsInput) (req *request.Reques // throttling, see Limits (https://docs.aws.amazon.com/kms/latest/developerguide/limits.html#requests-per-second) // in the Amazon Web Services Key Management Service Developer Guide. // +// - AccessDeniedException +// Specifies that you do not have the permissions required to perform this operation. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/GetRecords func (c *Kinesis) GetRecords(input *GetRecordsInput) (*GetRecordsOutput, error) { req, out := c.GetRecordsRequest(input) @@ -1397,6 +1462,9 @@ func (c *Kinesis) GetShardIteratorRequest(input *GetShardIteratorInput) (req *re // Gets an Amazon Kinesis shard iterator. A shard iterator expires 5 minutes // after it is returned to the requester. // +// When invoking this API, it is recommended you use the StreamARN input parameter +// rather than the StreamName input parameter. +// // A shard iterator specifies the shard position from which to start reading // data records sequentially. The position is specified using the sequence number // of a data record in a shard. A sequence number is the identifier associated @@ -1459,6 +1527,9 @@ func (c *Kinesis) GetShardIteratorRequest(input *GetShardIteratorInput) (req *re // Exponential Backoff in Amazon Web Services (https://docs.aws.amazon.com/general/latest/gr/api-retries.html) // in the Amazon Web Services General Reference. // +// - AccessDeniedException +// Specifies that you do not have the permissions required to perform this operation. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/GetShardIterator func (c *Kinesis) GetShardIterator(input *GetShardIteratorInput) (*GetShardIteratorOutput, error) { req, out := c.GetShardIteratorRequest(input) @@ -1529,6 +1600,9 @@ func (c *Kinesis) IncreaseStreamRetentionPeriodRequest(input *IncreaseStreamRete // of time data records are accessible after they are added to the stream. The // maximum value of a stream's retention period is 8760 hours (365 days). // +// When invoking this API, it is recommended you use the StreamARN input parameter +// rather than the StreamName input parameter. +// // If you choose a longer stream retention period, this operation increases // the time period during which records that have not yet expired are accessible. // However, it does not make previous, expired data (older than the stream's @@ -1562,6 +1636,9 @@ func (c *Kinesis) IncreaseStreamRetentionPeriodRequest(input *IncreaseStreamRete // A specified parameter exceeds its restrictions, is not supported, or can't // be used. For more information, see the returned message. // +// - AccessDeniedException +// Specifies that you do not have the permissions required to perform this operation. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/IncreaseStreamRetentionPeriod func (c *Kinesis) IncreaseStreamRetentionPeriod(input *IncreaseStreamRetentionPeriodInput) (*IncreaseStreamRetentionPeriodOutput, error) { req, out := c.IncreaseStreamRetentionPeriodRequest(input) @@ -1630,6 +1707,9 @@ func (c *Kinesis) ListShardsRequest(input *ListShardsInput) (req *request.Reques // Lists the shards in a stream and provides information about each shard. This // operation has a limit of 1000 transactions per second per data stream. // +// When invoking this API, it is recommended you use the StreamARN input parameter +// rather than the StreamName input parameter. +// // This action does not list expired shards. For information about expired shards, // see Data Routing, Data Persistence, and Shard State after a Reshard (https://docs.aws.amazon.com/streams/latest/dev/kinesis-using-sdk-java-after-resharding.html#kinesis-using-sdk-java-resharding-data-routing). // @@ -1667,6 +1747,9 @@ func (c *Kinesis) ListShardsRequest(input *ListShardsInput) (req *request.Reques // The resource is not available for this operation. For successful operation, // the resource must be in the ACTIVE state. // +// - AccessDeniedException +// Specifies that you do not have the permissions required to perform this operation. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/ListShards func (c *Kinesis) ListShards(input *ListShardsInput) (*ListShardsOutput, error) { req, out := c.ListShardsRequest(input) @@ -1875,8 +1958,8 @@ func (c *Kinesis) ListStreamsRequest(input *ListStreamsInput) (req *request.Requ HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ - InputTokens: []string{"ExclusiveStartStreamName"}, - OutputTokens: []string{"StreamNames[-1]"}, + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, LimitToken: "Limit", TruncationToken: "HasMoreStreams", }, @@ -1918,10 +2001,18 @@ func (c *Kinesis) ListStreamsRequest(input *ListStreamsInput) (req *request.Requ // API operation ListStreams for usage and error information. // // Returned Error Types: +// // - LimitExceededException // The requested resource exceeds the maximum number allowed, or the number // of concurrent stream requests exceeds the maximum number allowed. // +// - ExpiredNextTokenException +// The pagination token passed to the operation is expired. +// +// - InvalidArgumentException +// A specified parameter exceeds its restrictions, is not supported, or can't +// be used. For more information, see the returned message. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/ListStreams func (c *Kinesis) ListStreams(input *ListStreamsInput) (*ListStreamsOutput, error) { req, out := c.ListStreamsRequest(input) @@ -2041,6 +2132,9 @@ func (c *Kinesis) ListTagsForStreamRequest(input *ListTagsForStreamInput) (req * // Lists the tags for the specified Kinesis data stream. This operation has // a limit of five transactions per second per account. // +// When invoking this API, it is recommended you use the StreamARN input parameter +// rather than the StreamName input parameter. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -2062,6 +2156,9 @@ func (c *Kinesis) ListTagsForStreamRequest(input *ListTagsForStreamInput) (req * // The requested resource exceeds the maximum number allowed, or the number // of concurrent stream requests exceeds the maximum number allowed. // +// - AccessDeniedException +// Specifies that you do not have the permissions required to perform this operation. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/ListTagsForStream func (c *Kinesis) ListTagsForStream(input *ListTagsForStreamInput) (*ListTagsForStreamOutput, error) { req, out := c.ListTagsForStreamRequest(input) @@ -2130,13 +2227,17 @@ func (c *Kinesis) MergeShardsRequest(input *MergeShardsInput) (req *request.Requ // // Merges two adjacent shards in a Kinesis data stream and combines them into // a single shard to reduce the stream's capacity to ingest and transport data. -// Two shards are considered adjacent if the union of the hash key ranges for -// the two shards form a contiguous set with no gaps. For example, if you have -// two shards, one with a hash key range of 276...381 and the other with a hash -// key range of 382...454, then you could merge these two shards into a single -// shard that would have a hash key range of 276...454. After the merge, the -// single child shard receives data for all hash key values covered by the two -// parent shards. +// This API is only supported for the data streams with the provisioned capacity +// mode. Two shards are considered adjacent if the union of the hash key ranges +// for the two shards form a contiguous set with no gaps. For example, if you +// have two shards, one with a hash key range of 276...381 and the other with +// a hash key range of 382...454, then you could merge these two shards into +// a single shard that would have a hash key range of 276...454. After the merge, +// the single child shard receives data for all hash key values covered by the +// two parent shards. +// +// When invoking this API, it is recommended you use the StreamARN input parameter +// rather than the StreamName input parameter. // // MergeShards is called when there is a need to reduce the overall capacity // of a stream because of excess capacity that is not being used. You must specify @@ -2191,6 +2292,12 @@ func (c *Kinesis) MergeShardsRequest(input *MergeShardsInput) (req *request.Requ // of concurrent stream requests exceeds the maximum number allowed. // // - ValidationException +// Specifies that you tried to invoke this API for a data stream with the on-demand +// capacity mode. This API is only supported for data streams with the provisioned +// capacity mode. +// +// - AccessDeniedException +// Specifies that you do not have the permissions required to perform this operation. // // See also, https://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/MergeShards func (c *Kinesis) MergeShards(input *MergeShardsInput) (*MergeShardsOutput, error) { @@ -2262,6 +2369,9 @@ func (c *Kinesis) PutRecordRequest(input *PutRecordInput) (req *request.Request, // one record at a time. Each shard can support writes up to 1,000 records per // second, up to a maximum data write total of 1 MiB per second. // +// When invoking this API, it is recommended you use the StreamARN input parameter +// rather than the StreamName input parameter. +// // You must specify the name of the stream that captures, stores, and transports // the data; a partition key; and the data blob itself. // @@ -2351,6 +2461,9 @@ func (c *Kinesis) PutRecordRequest(input *PutRecordInput) (req *request.Request, // throttling, see Limits (https://docs.aws.amazon.com/kms/latest/developerguide/limits.html#requests-per-second) // in the Amazon Web Services Key Management Service Developer Guide. // +// - AccessDeniedException +// Specifies that you do not have the permissions required to perform this operation. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/PutRecord func (c *Kinesis) PutRecord(input *PutRecordInput) (*PutRecordOutput, error) { req, out := c.PutRecordRequest(input) @@ -2420,6 +2533,9 @@ func (c *Kinesis) PutRecordsRequest(input *PutRecordsInput) (req *request.Reques // (also referred to as a PutRecords request). Use this operation to send data // into the stream for data ingestion and processing. // +// When invoking this API, it is recommended you use the StreamARN input parameter +// rather than the StreamName input parameter. +// // Each PutRecords request can support up to 500 records. Each record in the // request can be as large as 1 MiB, up to a limit of 5 MiB for the entire request, // including partition keys. Each shard can support writes up to 1,000 records @@ -2533,6 +2649,9 @@ func (c *Kinesis) PutRecordsRequest(input *PutRecordsInput) (req *request.Reques // throttling, see Limits (https://docs.aws.amazon.com/kms/latest/developerguide/limits.html#requests-per-second) // in the Amazon Web Services Key Management Service Developer Guide. // +// - AccessDeniedException +// Specifies that you do not have the permissions required to perform this operation. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/PutRecords func (c *Kinesis) PutRecords(input *PutRecordsInput) (*PutRecordsOutput, error) { req, out := c.PutRecordsRequest(input) @@ -2710,6 +2829,9 @@ func (c *Kinesis) RemoveTagsFromStreamRequest(input *RemoveTagsFromStreamInput) // Removes tags from the specified Kinesis data stream. Removed tags are deleted // and cannot be recovered after this operation successfully completes. // +// When invoking this API, it is recommended you use the StreamARN input parameter +// rather than the StreamName input parameter. +// // If you specify a tag that does not exist, it is ignored. // // RemoveTagsFromStream has a limit of five transactions per second per account. @@ -2739,6 +2861,9 @@ func (c *Kinesis) RemoveTagsFromStreamRequest(input *RemoveTagsFromStreamInput) // The requested resource exceeds the maximum number allowed, or the number // of concurrent stream requests exceeds the maximum number allowed. // +// - AccessDeniedException +// Specifies that you do not have the permissions required to perform this operation. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/RemoveTagsFromStream func (c *Kinesis) RemoveTagsFromStream(input *RemoveTagsFromStreamInput) (*RemoveTagsFromStreamOutput, error) { req, out := c.RemoveTagsFromStreamRequest(input) @@ -2808,7 +2933,12 @@ func (c *Kinesis) SplitShardRequest(input *SplitShardInput) (req *request.Reques // Splits a shard into two new shards in the Kinesis data stream, to increase // the stream's capacity to ingest and transport data. SplitShard is called // when there is a need to increase the overall capacity of a stream because -// of an expected increase in the volume of data records being ingested. +// of an expected increase in the volume of data records being ingested. This +// API is only supported for the data streams with the provisioned capacity +// mode. +// +// When invoking this API, it is recommended you use the StreamARN input parameter +// rather than the StreamName input parameter. // // You can also use SplitShard when a shard appears to be approaching its maximum // utilization; for example, the producers sending data into the specific shard @@ -2877,6 +3007,12 @@ func (c *Kinesis) SplitShardRequest(input *SplitShardInput) (req *request.Reques // of concurrent stream requests exceeds the maximum number allowed. // // - ValidationException +// Specifies that you tried to invoke this API for a data stream with the on-demand +// capacity mode. This API is only supported for data streams with the provisioned +// capacity mode. +// +// - AccessDeniedException +// Specifies that you do not have the permissions required to perform this operation. // // See also, https://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/SplitShard func (c *Kinesis) SplitShard(input *SplitShardInput) (*SplitShardOutput, error) { @@ -2964,6 +3100,9 @@ func (c *Kinesis) StartStreamEncryptionRequest(input *StartStreamEncryptionInput // encryption, you can verify that encryption is applied by inspecting the API // response from PutRecord or PutRecords. // +// When invoking this API, it is recommended you use the StreamARN input parameter +// rather than the StreamName input parameter. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -3015,6 +3154,9 @@ func (c *Kinesis) StartStreamEncryptionRequest(input *StartStreamEncryptionInput // throttling, see Limits (https://docs.aws.amazon.com/kms/latest/developerguide/limits.html#requests-per-second) // in the Amazon Web Services Key Management Service Developer Guide. // +// - AccessDeniedException +// Specifies that you do not have the permissions required to perform this operation. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/StartStreamEncryption func (c *Kinesis) StartStreamEncryption(input *StartStreamEncryptionInput) (*StartStreamEncryptionOutput, error) { req, out := c.StartStreamEncryptionRequest(input) @@ -3083,6 +3225,9 @@ func (c *Kinesis) StopStreamEncryptionRequest(input *StopStreamEncryptionInput) // // Disables server-side encryption for a specified stream. // +// When invoking this API, it is recommended you use the StreamARN input parameter +// rather than the StreamName input parameter. +// // Stopping encryption is an asynchronous operation. Upon receiving the request, // Kinesis Data Streams returns immediately and sets the status of the stream // to UPDATING. After the update is complete, Kinesis Data Streams sets the @@ -3125,6 +3270,9 @@ func (c *Kinesis) StopStreamEncryptionRequest(input *StopStreamEncryptionInput) // The requested resource could not be found. The stream might not be specified // correctly. // +// - AccessDeniedException +// Specifies that you do not have the permissions required to perform this operation. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/StopStreamEncryption func (c *Kinesis) StopStreamEncryption(input *StopStreamEncryptionInput) (*StopStreamEncryptionOutput, error) { req, out := c.StopStreamEncryptionRequest(input) @@ -3253,6 +3401,9 @@ func (c *Kinesis) SubscribeToShardRequest(input *SubscribeToShardInput) (req *re // The requested resource exceeds the maximum number allowed, or the number // of concurrent stream requests exceeds the maximum number allowed. // +// - AccessDeniedException +// Specifies that you do not have the permissions required to perform this operation. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/SubscribeToShard func (c *Kinesis) SubscribeToShard(input *SubscribeToShardInput) (*SubscribeToShardOutput, error) { req, out := c.SubscribeToShardRequest(input) @@ -3523,7 +3674,11 @@ func (c *Kinesis) UpdateShardCountRequest(input *UpdateShardCountInput) (req *re // UpdateShardCount API operation for Amazon Kinesis. // // Updates the shard count of the specified stream to the specified number of -// shards. +// shards. This API is only supported for the data streams with the provisioned +// capacity mode. +// +// When invoking this API, it is recommended you use the StreamARN input parameter +// rather than the StreamName input parameter. // // Updating the shard count is an asynchronous operation. Upon receiving the // request, Kinesis Data Streams returns immediately and sets the status of @@ -3590,6 +3745,12 @@ func (c *Kinesis) UpdateShardCountRequest(input *UpdateShardCountInput) (req *re // correctly. // // - ValidationException +// Specifies that you tried to invoke this API for a data stream with the on-demand +// capacity mode. This API is only supported for data streams with the provisioned +// capacity mode. +// +// - AccessDeniedException +// Specifies that you do not have the permissions required to perform this operation. // // See also, https://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/UpdateShardCount func (c *Kinesis) UpdateShardCount(input *UpdateShardCountInput) (*UpdateShardCountOutput, error) { @@ -3708,14 +3869,79 @@ func (c *Kinesis) UpdateStreamModeWithContext(ctx aws.Context, input *UpdateStre return out, req.Send() } +// Specifies that you do not have the permissions required to perform this operation. +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) GoString() string { + return s.String() +} + +func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { + return &AccessDeniedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccessDeniedException) Code() string { + return "AccessDeniedException" +} + +// Message returns the exception's message. +func (s *AccessDeniedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccessDeniedException) OrigErr() error { + return nil +} + +func (s *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + // Represents the input for AddTagsToStream. type AddTagsToStreamInput struct { _ struct{} `type:"structure"` + // The ARN of the stream. + StreamARN *string `min:"1" type:"string"` + // The name of the stream. - // - // StreamName is a required field - StreamName *string `min:"1" type:"string" required:"true"` + StreamName *string `min:"1" type:"string"` // A set of up to 10 key-value pairs to use to create the tags. // @@ -3744,8 +3970,8 @@ func (s AddTagsToStreamInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *AddTagsToStreamInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddTagsToStreamInput"} - if s.StreamName == nil { - invalidParams.Add(request.NewErrParamRequired("StreamName")) + if s.StreamARN != nil && len(*s.StreamARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("StreamARN", 1)) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) @@ -3763,6 +3989,12 @@ func (s *AddTagsToStreamInput) Validate() error { return nil } +// SetStreamARN sets the StreamARN field's value. +func (s *AddTagsToStreamInput) SetStreamARN(v string) *AddTagsToStreamInput { + s.StreamARN = &v + return s +} + // SetStreamName sets the StreamName field's value. func (s *AddTagsToStreamInput) SetStreamName(v string) *AddTagsToStreamInput { s.StreamName = &v @@ -4127,10 +4359,11 @@ type DecreaseStreamRetentionPeriodInput struct { // RetentionPeriodHours is a required field RetentionPeriodHours *int64 `type:"integer" required:"true"` + // The ARN of the stream. + StreamARN *string `min:"1" type:"string"` + // The name of the stream to modify. - // - // StreamName is a required field - StreamName *string `min:"1" type:"string" required:"true"` + StreamName *string `min:"1" type:"string"` } // String returns the string representation. @@ -4157,8 +4390,8 @@ func (s *DecreaseStreamRetentionPeriodInput) Validate() error { if s.RetentionPeriodHours == nil { invalidParams.Add(request.NewErrParamRequired("RetentionPeriodHours")) } - if s.StreamName == nil { - invalidParams.Add(request.NewErrParamRequired("StreamName")) + if s.StreamARN != nil && len(*s.StreamARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("StreamARN", 1)) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) @@ -4176,6 +4409,12 @@ func (s *DecreaseStreamRetentionPeriodInput) SetRetentionPeriodHours(v int64) *D return s } +// SetStreamARN sets the StreamARN field's value. +func (s *DecreaseStreamRetentionPeriodInput) SetStreamARN(v string) *DecreaseStreamRetentionPeriodInput { + s.StreamARN = &v + return s +} + // SetStreamName sets the StreamName field's value. func (s *DecreaseStreamRetentionPeriodInput) SetStreamName(v string) *DecreaseStreamRetentionPeriodInput { s.StreamName = &v @@ -4212,10 +4451,11 @@ type DeleteStreamInput struct { // has registered consumers, the call to DeleteStream fails with a ResourceInUseException. EnforceConsumerDeletion *bool `type:"boolean"` + // The ARN of the stream. + StreamARN *string `min:"1" type:"string"` + // The name of the stream to delete. - // - // StreamName is a required field - StreamName *string `min:"1" type:"string" required:"true"` + StreamName *string `min:"1" type:"string"` } // String returns the string representation. @@ -4239,8 +4479,8 @@ func (s DeleteStreamInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteStreamInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteStreamInput"} - if s.StreamName == nil { - invalidParams.Add(request.NewErrParamRequired("StreamName")) + if s.StreamARN != nil && len(*s.StreamARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("StreamARN", 1)) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) @@ -4258,6 +4498,12 @@ func (s *DeleteStreamInput) SetEnforceConsumerDeletion(v bool) *DeleteStreamInpu return s } +// SetStreamARN sets the StreamARN field's value. +func (s *DeleteStreamInput) SetStreamARN(v string) *DeleteStreamInput { + s.StreamARN = &v + return s +} + // SetStreamName sets the StreamName field's value. func (s *DeleteStreamInput) SetStreamName(v string) *DeleteStreamInput { s.StreamName = &v @@ -4591,10 +4837,11 @@ type DescribeStreamInput struct { // returned. Limit *int64 `min:"1" type:"integer"` + // The ARN of the stream. + StreamARN *string `min:"1" type:"string"` + // The name of the stream to describe. - // - // StreamName is a required field - StreamName *string `min:"1" type:"string" required:"true"` + StreamName *string `min:"1" type:"string"` } // String returns the string representation. @@ -4624,8 +4871,8 @@ func (s *DescribeStreamInput) Validate() error { if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } - if s.StreamName == nil { - invalidParams.Add(request.NewErrParamRequired("StreamName")) + if s.StreamARN != nil && len(*s.StreamARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("StreamARN", 1)) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) @@ -4649,6 +4896,12 @@ func (s *DescribeStreamInput) SetLimit(v int64) *DescribeStreamInput { return s } +// SetStreamARN sets the StreamARN field's value. +func (s *DescribeStreamInput) SetStreamARN(v string) *DescribeStreamInput { + s.StreamARN = &v + return s +} + // SetStreamName sets the StreamName field's value. func (s *DescribeStreamInput) SetStreamName(v string) *DescribeStreamInput { s.StreamName = &v @@ -4694,10 +4947,11 @@ func (s *DescribeStreamOutput) SetStreamDescription(v *StreamDescription) *Descr type DescribeStreamSummaryInput struct { _ struct{} `type:"structure"` + // The ARN of the stream. + StreamARN *string `min:"1" type:"string"` + // The name of the stream to describe. - // - // StreamName is a required field - StreamName *string `min:"1" type:"string" required:"true"` + StreamName *string `min:"1" type:"string"` } // String returns the string representation. @@ -4721,8 +4975,8 @@ func (s DescribeStreamSummaryInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeStreamSummaryInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeStreamSummaryInput"} - if s.StreamName == nil { - invalidParams.Add(request.NewErrParamRequired("StreamName")) + if s.StreamARN != nil && len(*s.StreamARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("StreamARN", 1)) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) @@ -4734,6 +4988,12 @@ func (s *DescribeStreamSummaryInput) Validate() error { return nil } +// SetStreamARN sets the StreamARN field's value. +func (s *DescribeStreamSummaryInput) SetStreamARN(v string) *DescribeStreamSummaryInput { + s.StreamARN = &v + return s +} + // SetStreamName sets the StreamName field's value. func (s *DescribeStreamSummaryInput) SetStreamName(v string) *DescribeStreamSummaryInput { s.StreamName = &v @@ -4805,10 +5065,11 @@ type DisableEnhancedMonitoringInput struct { // ShardLevelMetrics is a required field ShardLevelMetrics []*string `min:"1" type:"list" required:"true" enum:"MetricsName"` + // The ARN of the stream. + StreamARN *string `min:"1" type:"string"` + // The name of the Kinesis data stream for which to disable enhanced monitoring. - // - // StreamName is a required field - StreamName *string `min:"1" type:"string" required:"true"` + StreamName *string `min:"1" type:"string"` } // String returns the string representation. @@ -4838,8 +5099,8 @@ func (s *DisableEnhancedMonitoringInput) Validate() error { if s.ShardLevelMetrics != nil && len(s.ShardLevelMetrics) < 1 { invalidParams.Add(request.NewErrParamMinLen("ShardLevelMetrics", 1)) } - if s.StreamName == nil { - invalidParams.Add(request.NewErrParamRequired("StreamName")) + if s.StreamARN != nil && len(*s.StreamARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("StreamARN", 1)) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) @@ -4857,6 +5118,12 @@ func (s *DisableEnhancedMonitoringInput) SetShardLevelMetrics(v []*string) *Disa return s } +// SetStreamARN sets the StreamARN field's value. +func (s *DisableEnhancedMonitoringInput) SetStreamARN(v string) *DisableEnhancedMonitoringInput { + s.StreamARN = &v + return s +} + // SetStreamName sets the StreamName field's value. func (s *DisableEnhancedMonitoringInput) SetStreamName(v string) *DisableEnhancedMonitoringInput { s.StreamName = &v @@ -4895,10 +5162,11 @@ type EnableEnhancedMonitoringInput struct { // ShardLevelMetrics is a required field ShardLevelMetrics []*string `min:"1" type:"list" required:"true" enum:"MetricsName"` + // The ARN of the stream. + StreamARN *string `min:"1" type:"string"` + // The name of the stream for which to enable enhanced monitoring. - // - // StreamName is a required field - StreamName *string `min:"1" type:"string" required:"true"` + StreamName *string `min:"1" type:"string"` } // String returns the string representation. @@ -4928,8 +5196,8 @@ func (s *EnableEnhancedMonitoringInput) Validate() error { if s.ShardLevelMetrics != nil && len(s.ShardLevelMetrics) < 1 { invalidParams.Add(request.NewErrParamMinLen("ShardLevelMetrics", 1)) } - if s.StreamName == nil { - invalidParams.Add(request.NewErrParamRequired("StreamName")) + if s.StreamARN != nil && len(*s.StreamARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("StreamARN", 1)) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) @@ -4947,6 +5215,12 @@ func (s *EnableEnhancedMonitoringInput) SetShardLevelMetrics(v []*string) *Enabl return s } +// SetStreamARN sets the StreamARN field's value. +func (s *EnableEnhancedMonitoringInput) SetStreamARN(v string) *EnableEnhancedMonitoringInput { + s.StreamARN = &v + return s +} + // SetStreamName sets the StreamName field's value. func (s *EnableEnhancedMonitoringInput) SetStreamName(v string) *EnableEnhancedMonitoringInput { s.StreamName = &v @@ -5020,6 +5294,9 @@ type EnhancedMonitoringOutput struct { // after the operation. DesiredShardLevelMetrics []*string `min:"1" type:"list" enum:"MetricsName"` + // The ARN of the stream. + StreamARN *string `min:"1" type:"string"` + // The name of the Kinesis data stream. StreamName *string `min:"1" type:"string"` } @@ -5054,6 +5331,12 @@ func (s *EnhancedMonitoringOutput) SetDesiredShardLevelMetrics(v []*string) *Enh return s } +// SetStreamARN sets the StreamARN field's value. +func (s *EnhancedMonitoringOutput) SetStreamARN(v string) *EnhancedMonitoringOutput { + s.StreamARN = &v + return s +} + // SetStreamName sets the StreamName field's value. func (s *EnhancedMonitoringOutput) SetStreamName(v string) *EnhancedMonitoringOutput { s.StreamName = &v @@ -5204,6 +5487,9 @@ type GetRecordsInput struct { // // ShardIterator is a required field ShardIterator *string `min:"1" type:"string" required:"true"` + + // The ARN of the stream. + StreamARN *string `min:"1" type:"string"` } // String returns the string representation. @@ -5236,6 +5522,9 @@ func (s *GetRecordsInput) Validate() error { if s.ShardIterator != nil && len(*s.ShardIterator) < 1 { invalidParams.Add(request.NewErrParamMinLen("ShardIterator", 1)) } + if s.StreamARN != nil && len(*s.StreamARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("StreamARN", 1)) + } if invalidParams.Len() > 0 { return invalidParams @@ -5255,6 +5544,12 @@ func (s *GetRecordsInput) SetShardIterator(v string) *GetRecordsInput { return s } +// SetStreamARN sets the StreamARN field's value. +func (s *GetRecordsInput) SetStreamARN(v string) *GetRecordsInput { + s.StreamARN = &v + return s +} + // Represents the output for GetRecords. type GetRecordsOutput struct { _ struct{} `type:"structure"` @@ -5358,10 +5653,11 @@ type GetShardIteratorInput struct { // Used with shard iterator type AT_SEQUENCE_NUMBER and AFTER_SEQUENCE_NUMBER. StartingSequenceNumber *string `type:"string"` + // The ARN of the stream. + StreamARN *string `min:"1" type:"string"` + // The name of the Amazon Kinesis data stream. - // - // StreamName is a required field - StreamName *string `min:"1" type:"string" required:"true"` + StreamName *string `min:"1" type:"string"` // The time stamp of the data record from which to start reading. Used with // shard iterator type AT_TIMESTAMP. A time stamp is the Unix epoch date with @@ -5403,8 +5699,8 @@ func (s *GetShardIteratorInput) Validate() error { if s.ShardIteratorType == nil { invalidParams.Add(request.NewErrParamRequired("ShardIteratorType")) } - if s.StreamName == nil { - invalidParams.Add(request.NewErrParamRequired("StreamName")) + if s.StreamARN != nil && len(*s.StreamARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("StreamARN", 1)) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) @@ -5434,6 +5730,12 @@ func (s *GetShardIteratorInput) SetStartingSequenceNumber(v string) *GetShardIte return s } +// SetStreamARN sets the StreamARN field's value. +func (s *GetShardIteratorInput) SetStreamARN(v string) *GetShardIteratorInput { + s.StreamARN = &v + return s +} + // SetStreamName sets the StreamName field's value. func (s *GetShardIteratorInput) SetStreamName(v string) *GetShardIteratorInput { s.StreamName = &v @@ -5536,10 +5838,11 @@ type IncreaseStreamRetentionPeriodInput struct { // RetentionPeriodHours is a required field RetentionPeriodHours *int64 `type:"integer" required:"true"` + // The ARN of the stream. + StreamARN *string `min:"1" type:"string"` + // The name of the stream to modify. - // - // StreamName is a required field - StreamName *string `min:"1" type:"string" required:"true"` + StreamName *string `min:"1" type:"string"` } // String returns the string representation. @@ -5566,8 +5869,8 @@ func (s *IncreaseStreamRetentionPeriodInput) Validate() error { if s.RetentionPeriodHours == nil { invalidParams.Add(request.NewErrParamRequired("RetentionPeriodHours")) } - if s.StreamName == nil { - invalidParams.Add(request.NewErrParamRequired("StreamName")) + if s.StreamARN != nil && len(*s.StreamARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("StreamARN", 1)) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) @@ -5585,6 +5888,12 @@ func (s *IncreaseStreamRetentionPeriodInput) SetRetentionPeriodHours(v int64) *I return s } +// SetStreamARN sets the StreamARN field's value. +func (s *IncreaseStreamRetentionPeriodInput) SetStreamARN(v string) *IncreaseStreamRetentionPeriodInput { + s.StreamARN = &v + return s +} + // SetStreamName sets the StreamName field's value. func (s *IncreaseStreamRetentionPeriodInput) SetStreamName(v string) *IncreaseStreamRetentionPeriodInput { s.StreamName = &v @@ -6475,6 +6784,9 @@ type ListShardsInput struct { // from the provided timestamp to TIP are returned. ShardFilter *ShardFilter `type:"structure"` + // The ARN of the stream. + StreamARN *string `min:"1" type:"string"` + // Specify this input parameter to distinguish data streams that have the same // name. For example, if you create a data stream and then delete it, and you // later create another data stream with the same name, you can use this input @@ -6520,6 +6832,9 @@ func (s *ListShardsInput) Validate() error { if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } + if s.StreamARN != nil && len(*s.StreamARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("StreamARN", 1)) + } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) } @@ -6559,6 +6874,12 @@ func (s *ListShardsInput) SetShardFilter(v *ShardFilter) *ListShardsInput { return s } +// SetStreamARN sets the StreamARN field's value. +func (s *ListShardsInput) SetStreamARN(v string) *ListShardsInput { + s.StreamARN = &v + return s +} + // SetStreamCreationTimestamp sets the StreamCreationTimestamp field's value. func (s *ListShardsInput) SetStreamCreationTimestamp(v time.Time) *ListShardsInput { s.StreamCreationTimestamp = &v @@ -6798,6 +7119,8 @@ type ListStreamsInput struct { // The maximum number of streams to list. The default value is 100. If you specify // a value greater than 100, at most 100 results are returned. Limit *int64 `min:"1" type:"integer"` + + NextToken *string `min:"1" type:"string"` } // String returns the string representation. @@ -6827,6 +7150,9 @@ func (s *ListStreamsInput) Validate() error { if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } if invalidParams.Len() > 0 { return invalidParams @@ -6846,6 +7172,12 @@ func (s *ListStreamsInput) SetLimit(v int64) *ListStreamsInput { return s } +// SetNextToken sets the NextToken field's value. +func (s *ListStreamsInput) SetNextToken(v string) *ListStreamsInput { + s.NextToken = &v + return s +} + // Represents the output for ListStreams. type ListStreamsOutput struct { _ struct{} `type:"structure"` @@ -6855,11 +7187,15 @@ type ListStreamsOutput struct { // HasMoreStreams is a required field HasMoreStreams *bool `type:"boolean" required:"true"` + NextToken *string `min:"1" type:"string"` + // The names of the streams that are associated with the Amazon Web Services // account making the ListStreams request. // // StreamNames is a required field StreamNames []*string `type:"list" required:"true"` + + StreamSummaries []*StreamSummary `type:"list"` } // String returns the string representation. @@ -6886,12 +7222,24 @@ func (s *ListStreamsOutput) SetHasMoreStreams(v bool) *ListStreamsOutput { return s } +// SetNextToken sets the NextToken field's value. +func (s *ListStreamsOutput) SetNextToken(v string) *ListStreamsOutput { + s.NextToken = &v + return s +} + // SetStreamNames sets the StreamNames field's value. func (s *ListStreamsOutput) SetStreamNames(v []*string) *ListStreamsOutput { s.StreamNames = v return s } +// SetStreamSummaries sets the StreamSummaries field's value. +func (s *ListStreamsOutput) SetStreamSummaries(v []*StreamSummary) *ListStreamsOutput { + s.StreamSummaries = v + return s +} + // Represents the input for ListTagsForStream. type ListTagsForStreamInput struct { _ struct{} `type:"structure"` @@ -6905,10 +7253,11 @@ type ListTagsForStreamInput struct { // tags, set ExclusiveStartTagKey to the last key in the response. Limit *int64 `min:"1" type:"integer"` + // The ARN of the stream. + StreamARN *string `min:"1" type:"string"` + // The name of the stream. - // - // StreamName is a required field - StreamName *string `min:"1" type:"string" required:"true"` + StreamName *string `min:"1" type:"string"` } // String returns the string representation. @@ -6938,8 +7287,8 @@ func (s *ListTagsForStreamInput) Validate() error { if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } - if s.StreamName == nil { - invalidParams.Add(request.NewErrParamRequired("StreamName")) + if s.StreamARN != nil && len(*s.StreamARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("StreamARN", 1)) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) @@ -6963,6 +7312,12 @@ func (s *ListTagsForStreamInput) SetLimit(v int64) *ListTagsForStreamInput { return s } +// SetStreamARN sets the StreamARN field's value. +func (s *ListTagsForStreamInput) SetStreamARN(v string) *ListTagsForStreamInput { + s.StreamARN = &v + return s +} + // SetStreamName sets the StreamName field's value. func (s *ListTagsForStreamInput) SetStreamName(v string) *ListTagsForStreamInput { s.StreamName = &v @@ -7030,10 +7385,11 @@ type MergeShardsInput struct { // ShardToMerge is a required field ShardToMerge *string `min:"1" type:"string" required:"true"` + // The ARN of the stream. + StreamARN *string `min:"1" type:"string"` + // The name of the stream for the merge. - // - // StreamName is a required field - StreamName *string `min:"1" type:"string" required:"true"` + StreamName *string `min:"1" type:"string"` } // String returns the string representation. @@ -7069,8 +7425,8 @@ func (s *MergeShardsInput) Validate() error { if s.ShardToMerge != nil && len(*s.ShardToMerge) < 1 { invalidParams.Add(request.NewErrParamMinLen("ShardToMerge", 1)) } - if s.StreamName == nil { - invalidParams.Add(request.NewErrParamRequired("StreamName")) + if s.StreamARN != nil && len(*s.StreamARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("StreamARN", 1)) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) @@ -7094,6 +7450,12 @@ func (s *MergeShardsInput) SetShardToMerge(v string) *MergeShardsInput { return s } +// SetStreamARN sets the StreamARN field's value. +func (s *MergeShardsInput) SetStreamARN(v string) *MergeShardsInput { + s.StreamARN = &v + return s +} + // SetStreamName sets the StreamName field's value. func (s *MergeShardsInput) SetStreamName(v string) *MergeShardsInput { s.StreamName = &v @@ -7228,10 +7590,11 @@ type PutRecordInput struct { // ordered based on arrival time. SequenceNumberForOrdering *string `type:"string"` + // The ARN of the stream. + StreamARN *string `min:"1" type:"string"` + // The name of the stream to put the data record into. - // - // StreamName is a required field - StreamName *string `min:"1" type:"string" required:"true"` + StreamName *string `min:"1" type:"string"` } // String returns the string representation. @@ -7264,8 +7627,8 @@ func (s *PutRecordInput) Validate() error { if s.PartitionKey != nil && len(*s.PartitionKey) < 1 { invalidParams.Add(request.NewErrParamMinLen("PartitionKey", 1)) } - if s.StreamName == nil { - invalidParams.Add(request.NewErrParamRequired("StreamName")) + if s.StreamARN != nil && len(*s.StreamARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("StreamARN", 1)) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) @@ -7301,6 +7664,12 @@ func (s *PutRecordInput) SetSequenceNumberForOrdering(v string) *PutRecordInput return s } +// SetStreamARN sets the StreamARN field's value. +func (s *PutRecordInput) SetStreamARN(v string) *PutRecordInput { + s.StreamARN = &v + return s +} + // SetStreamName sets the StreamName field's value. func (s *PutRecordInput) SetStreamName(v string) *PutRecordInput { s.StreamName = &v @@ -7379,10 +7748,11 @@ type PutRecordsInput struct { // Records is a required field Records []*PutRecordsRequestEntry `min:"1" type:"list" required:"true"` + // The ARN of the stream. + StreamARN *string `min:"1" type:"string"` + // The stream name associated with the request. - // - // StreamName is a required field - StreamName *string `min:"1" type:"string" required:"true"` + StreamName *string `min:"1" type:"string"` } // String returns the string representation. @@ -7412,8 +7782,8 @@ func (s *PutRecordsInput) Validate() error { if s.Records != nil && len(s.Records) < 1 { invalidParams.Add(request.NewErrParamMinLen("Records", 1)) } - if s.StreamName == nil { - invalidParams.Add(request.NewErrParamRequired("StreamName")) + if s.StreamARN != nil && len(*s.StreamARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("StreamARN", 1)) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) @@ -7441,6 +7811,12 @@ func (s *PutRecordsInput) SetRecords(v []*PutRecordsRequestEntry) *PutRecordsInp return s } +// SetStreamARN sets the StreamARN field's value. +func (s *PutRecordsInput) SetStreamARN(v string) *PutRecordsInput { + s.StreamARN = &v + return s +} + // SetStreamName sets the StreamName field's value. func (s *PutRecordsInput) SetStreamName(v string) *PutRecordsInput { s.StreamName = &v @@ -7853,10 +8229,11 @@ func (s *RegisterStreamConsumerOutput) SetConsumer(v *Consumer) *RegisterStreamC type RemoveTagsFromStreamInput struct { _ struct{} `type:"structure"` + // The ARN of the stream. + StreamARN *string `min:"1" type:"string"` + // The name of the stream. - // - // StreamName is a required field - StreamName *string `min:"1" type:"string" required:"true"` + StreamName *string `min:"1" type:"string"` // A list of tag keys. Each corresponding tag is removed from the stream. // @@ -7885,8 +8262,8 @@ func (s RemoveTagsFromStreamInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *RemoveTagsFromStreamInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RemoveTagsFromStreamInput"} - if s.StreamName == nil { - invalidParams.Add(request.NewErrParamRequired("StreamName")) + if s.StreamARN != nil && len(*s.StreamARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("StreamARN", 1)) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) @@ -7904,6 +8281,12 @@ func (s *RemoveTagsFromStreamInput) Validate() error { return nil } +// SetStreamARN sets the StreamARN field's value. +func (s *RemoveTagsFromStreamInput) SetStreamARN(v string) *RemoveTagsFromStreamInput { + s.StreamARN = &v + return s +} + // SetStreamName sets the StreamName field's value. func (s *RemoveTagsFromStreamInput) SetStreamName(v string) *RemoveTagsFromStreamInput { s.StreamName = &v @@ -8363,10 +8746,11 @@ type SplitShardInput struct { // ShardToSplit is a required field ShardToSplit *string `min:"1" type:"string" required:"true"` + // The ARN of the stream. + StreamARN *string `min:"1" type:"string"` + // The name of the stream for the shard split. - // - // StreamName is a required field - StreamName *string `min:"1" type:"string" required:"true"` + StreamName *string `min:"1" type:"string"` } // String returns the string representation. @@ -8399,8 +8783,8 @@ func (s *SplitShardInput) Validate() error { if s.ShardToSplit != nil && len(*s.ShardToSplit) < 1 { invalidParams.Add(request.NewErrParamMinLen("ShardToSplit", 1)) } - if s.StreamName == nil { - invalidParams.Add(request.NewErrParamRequired("StreamName")) + if s.StreamARN != nil && len(*s.StreamARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("StreamARN", 1)) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) @@ -8424,6 +8808,12 @@ func (s *SplitShardInput) SetShardToSplit(v string) *SplitShardInput { return s } +// SetStreamARN sets the StreamARN field's value. +func (s *SplitShardInput) SetStreamARN(v string) *SplitShardInput { + s.StreamARN = &v + return s +} + // SetStreamName sets the StreamName field's value. func (s *SplitShardInput) SetStreamName(v string) *SplitShardInput { s.StreamName = &v @@ -8479,10 +8869,11 @@ type StartStreamEncryptionInput struct { // KeyId is a required field KeyId *string `min:"1" type:"string" required:"true"` + // The ARN of the stream. + StreamARN *string `min:"1" type:"string"` + // The name of the stream for which to start encrypting records. - // - // StreamName is a required field - StreamName *string `min:"1" type:"string" required:"true"` + StreamName *string `min:"1" type:"string"` } // String returns the string representation. @@ -8515,8 +8906,8 @@ func (s *StartStreamEncryptionInput) Validate() error { if s.KeyId != nil && len(*s.KeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeyId", 1)) } - if s.StreamName == nil { - invalidParams.Add(request.NewErrParamRequired("StreamName")) + if s.StreamARN != nil && len(*s.StreamARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("StreamARN", 1)) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) @@ -8540,6 +8931,12 @@ func (s *StartStreamEncryptionInput) SetKeyId(v string) *StartStreamEncryptionIn return s } +// SetStreamARN sets the StreamARN field's value. +func (s *StartStreamEncryptionInput) SetStreamARN(v string) *StartStreamEncryptionInput { + s.StreamARN = &v + return s +} + // SetStreamName sets the StreamName field's value. func (s *StartStreamEncryptionInput) SetStreamName(v string) *StartStreamEncryptionInput { s.StreamName = &v @@ -8683,10 +9080,11 @@ type StopStreamEncryptionInput struct { // KeyId is a required field KeyId *string `min:"1" type:"string" required:"true"` + // The ARN of the stream. + StreamARN *string `min:"1" type:"string"` + // The name of the stream on which to stop encrypting records. - // - // StreamName is a required field - StreamName *string `min:"1" type:"string" required:"true"` + StreamName *string `min:"1" type:"string"` } // String returns the string representation. @@ -8719,8 +9117,8 @@ func (s *StopStreamEncryptionInput) Validate() error { if s.KeyId != nil && len(*s.KeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeyId", 1)) } - if s.StreamName == nil { - invalidParams.Add(request.NewErrParamRequired("StreamName")) + if s.StreamARN != nil && len(*s.StreamARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("StreamARN", 1)) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) @@ -8744,6 +9142,12 @@ func (s *StopStreamEncryptionInput) SetKeyId(v string) *StopStreamEncryptionInpu return s } +// SetStreamARN sets the StreamARN field's value. +func (s *StopStreamEncryptionInput) SetStreamARN(v string) *StopStreamEncryptionInput { + s.StreamARN = &v + return s +} + // SetStreamName sets the StreamName field's value. func (s *StopStreamEncryptionInput) SetStreamName(v string) *StopStreamEncryptionInput { s.StreamName = &v @@ -9170,6 +9574,82 @@ func (s *StreamModeDetails) SetStreamMode(v string) *StreamModeDetails { return s } +// The summary of a stream. +type StreamSummary struct { + _ struct{} `type:"structure"` + + // The ARN of the stream. + // + // StreamARN is a required field + StreamARN *string `min:"1" type:"string" required:"true"` + + // The timestamp at which the stream was created. + StreamCreationTimestamp *time.Time `type:"timestamp"` + + // Specifies the capacity mode to which you want to set your data stream. Currently, + // in Kinesis Data Streams, you can choose between an on-demand capacity mode + // and a provisioned capacity mode for your data streams. + StreamModeDetails *StreamModeDetails `type:"structure"` + + // The name of a stream. + // + // StreamName is a required field + StreamName *string `min:"1" type:"string" required:"true"` + + // The status of the stream. + // + // StreamStatus is a required field + StreamStatus *string `type:"string" required:"true" enum:"StreamStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StreamSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StreamSummary) GoString() string { + return s.String() +} + +// SetStreamARN sets the StreamARN field's value. +func (s *StreamSummary) SetStreamARN(v string) *StreamSummary { + s.StreamARN = &v + return s +} + +// SetStreamCreationTimestamp sets the StreamCreationTimestamp field's value. +func (s *StreamSummary) SetStreamCreationTimestamp(v time.Time) *StreamSummary { + s.StreamCreationTimestamp = &v + return s +} + +// SetStreamModeDetails sets the StreamModeDetails field's value. +func (s *StreamSummary) SetStreamModeDetails(v *StreamModeDetails) *StreamSummary { + s.StreamModeDetails = v + return s +} + +// SetStreamName sets the StreamName field's value. +func (s *StreamSummary) SetStreamName(v string) *StreamSummary { + s.StreamName = &v + return s +} + +// SetStreamStatus sets the StreamStatus field's value. +func (s *StreamSummary) SetStreamStatus(v string) *StreamSummary { + s.StreamStatus = &v + return s +} + // After you call SubscribeToShard, Kinesis Data Streams sends events of this // type over an HTTP/2 connection to your consumer. type SubscribeToShardEvent struct { @@ -9646,10 +10126,11 @@ type UpdateShardCountInput struct { // ScalingType is a required field ScalingType *string `type:"string" required:"true" enum:"ScalingType"` + // The ARN of the stream. + StreamARN *string `min:"1" type:"string"` + // The name of the stream. - // - // StreamName is a required field - StreamName *string `min:"1" type:"string" required:"true"` + StreamName *string `min:"1" type:"string"` // The new number of shards. This value has the following default limits. By // default, you cannot do the following: @@ -9693,8 +10174,8 @@ func (s *UpdateShardCountInput) Validate() error { if s.ScalingType == nil { invalidParams.Add(request.NewErrParamRequired("ScalingType")) } - if s.StreamName == nil { - invalidParams.Add(request.NewErrParamRequired("StreamName")) + if s.StreamARN != nil && len(*s.StreamARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("StreamARN", 1)) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) @@ -9718,6 +10199,12 @@ func (s *UpdateShardCountInput) SetScalingType(v string) *UpdateShardCountInput return s } +// SetStreamARN sets the StreamARN field's value. +func (s *UpdateShardCountInput) SetStreamARN(v string) *UpdateShardCountInput { + s.StreamARN = &v + return s +} + // SetStreamName sets the StreamName field's value. func (s *UpdateShardCountInput) SetStreamName(v string) *UpdateShardCountInput { s.StreamName = &v @@ -9736,6 +10223,9 @@ type UpdateShardCountOutput struct { // The current number of shards. CurrentShardCount *int64 `min:"1" type:"integer"` + // The ARN of the stream. + StreamARN *string `min:"1" type:"string"` + // The name of the stream. StreamName *string `min:"1" type:"string"` @@ -9767,6 +10257,12 @@ func (s *UpdateShardCountOutput) SetCurrentShardCount(v int64) *UpdateShardCount return s } +// SetStreamARN sets the StreamARN field's value. +func (s *UpdateShardCountOutput) SetStreamARN(v string) *UpdateShardCountOutput { + s.StreamARN = &v + return s +} + // SetStreamName sets the StreamName field's value. func (s *UpdateShardCountOutput) SetStreamName(v string) *UpdateShardCountOutput { s.StreamName = &v @@ -9871,6 +10367,9 @@ func (s UpdateStreamModeOutput) GoString() string { return s.String() } +// Specifies that you tried to invoke this API for a data stream with the on-demand +// capacity mode. This API is only supported for data streams with the provisioned +// capacity mode. type ValidationException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` diff --git a/service/kinesis/errors.go b/service/kinesis/errors.go index 4bf344c594..dfaf4ee510 100644 --- a/service/kinesis/errors.go +++ b/service/kinesis/errors.go @@ -8,6 +8,12 @@ import ( const ( + // ErrCodeAccessDeniedException for service response error code + // "AccessDeniedException". + // + // Specifies that you do not have the permissions required to perform this operation. + ErrCodeAccessDeniedException = "AccessDeniedException" + // ErrCodeExpiredIteratorException for service response error code // "ExpiredIteratorException". // @@ -112,10 +118,15 @@ const ( // ErrCodeValidationException for service response error code // "ValidationException". + // + // Specifies that you tried to invoke this API for a data stream with the on-demand + // capacity mode. This API is only supported for data streams with the provisioned + // capacity mode. ErrCodeValidationException = "ValidationException" ) var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "AccessDeniedException": newErrorAccessDeniedException, "ExpiredIteratorException": newErrorExpiredIteratorException, "ExpiredNextTokenException": newErrorExpiredNextTokenException, "InternalFailureException": newErrorInternalFailureException, diff --git a/service/locationservice/api.go b/service/locationservice/api.go index 2598b33898..7eaebd3ae5 100644 --- a/service/locationservice/api.go +++ b/service/locationservice/api.go @@ -11265,6 +11265,19 @@ type GetMapGlyphsInput struct { // – Fira GO Italic | Fira GO Map | Fira GO Map Bold | Noto Sans CJK JP // Bold | Noto Sans CJK JP Light | Noto Sans CJK JP Regular // + // Valid font stacks for Open Data (Preview) (https://docs.aws.amazon.com/location/latest/developerguide/open-data.html) + // styles: + // + // * VectorOpenDataStandardLight – Amazon Ember Regular,Noto Sans Regular + // | Amazon Ember Bold,Noto Sans Bold | Amazon Ember Medium,Noto Sans Medium + // | Amazon Ember Regular Italic,Noto Sans Italic | Amazon Ember Condensed + // RC Regular,Noto Sans Regular | Amazon Ember Condensed RC Bold,Noto Sans + // Bold + // + // The fonts used by VectorOpenDataStandardLight are combined fonts that use + // Amazon Ember for most glyphs but Noto Sans for glyphs unsupported by Amazon + // Ember. + // // FontStack is a required field FontStack *string `location:"uri" locationName:"FontStack" type:"string" required:"true"` @@ -13773,6 +13786,16 @@ type MapConfiguration struct { // more tiles are retrieved than when using either vector or raster tiles // alone. Your charges will include all tiles retrieved. // + // Valid Open Data (Preview) map styles (https://docs.aws.amazon.com/location/latest/developerguide/open-data.html): + // + // * VectorOpenDataStandardLight – The Open Data Standard Light (preview) + // map style provides a detailed basemap for the world suitable for website + // and mobile application use. The map includes highways major roads, minor + // roads, railways, water features, cities, parks, landmarks, building footprints, + // and administrative boundaries. Open Data maps is in preview. We may add, + // change, or remove features before announcing general availability. For + // more information, see Open Data is in preview release (https://docs.aws.amazon.com/location/latest/developerguide/open-data.html#open-data-preview). + // // Style is a required field Style *string `min:"1" type:"string" required:"true"` } diff --git a/service/m2/api.go b/service/m2/api.go index 3ed385d8f1..14f406ddfe 100644 --- a/service/m2/api.go +++ b/service/m2/api.go @@ -151,8 +151,8 @@ func (c *M2) CreateApplicationRequest(input *CreateApplicationInput) (req *reque // CreateApplication API operation for AWSMainframeModernization. // -// Creates a new application with given parameters. Requires an existing environment -// and application definition file. +// Creates a new application with given parameters. Requires an existing runtime +// environment and application definition file. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -345,7 +345,7 @@ func (c *M2) CreateDeploymentRequest(input *CreateDeploymentInput) (req *request // CreateDeployment API operation for AWSMainframeModernization. // -// Creates and starts a deployment to deploy an application into an environment. +// Creates and starts a deployment to deploy an application into a runtime environment. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -631,11 +631,11 @@ func (c *M2) DeleteApplicationFromEnvironmentRequest(input *DeleteApplicationFro // DeleteApplicationFromEnvironment API operation for AWSMainframeModernization. // -// Deletes a specific application from a specified environment where it has -// been previously deployed. You cannot delete an environment using DeleteEnvironment, -// if any application has ever been deployed to it. This API removes the association -// of the application with the environment so you can delete the environment -// smoothly. +// Deletes a specific application from the specific runtime environment where +// it was previously deployed. You cannot delete a runtime environment using +// DeleteEnvironment if any application has ever been deployed to it. This API +// removes the association of the application with the runtime environment so +// you can delete the environment smoothly. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -730,8 +730,9 @@ func (c *M2) DeleteEnvironmentRequest(input *DeleteEnvironmentInput) (req *reque // DeleteEnvironment API operation for AWSMainframeModernization. // -// Deletes a specific environment. The environment cannot contain deployed applications. -// If it does, you must delete those applications before you delete the environment. +// Deletes a specific runtime environment. The environment cannot contain deployed +// applications. If it does, you must delete those applications before you delete +// the environment. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1615,8 +1616,8 @@ func (c *M2) ListApplicationsRequest(input *ListApplicationsInput) (req *request // ListApplications API operation for AWSMainframeModernization. // // Lists the applications associated with a specific Amazon Web Services account. -// You can provide the unique identifier of a specific environment in a query -// parameter to see all applications associated with that environment. +// You can provide the unique identifier of a specific runtime environment in +// a query parameter to see all applications associated with that environment. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1762,8 +1763,8 @@ func (c *M2) ListBatchJobDefinitionsRequest(input *ListBatchJobDefinitionsInput) // ListBatchJobDefinitions API operation for AWSMainframeModernization. // // Lists all the available batch job definitions based on the batch job resources -// uploaded during the application creation. The listed batch job definitions -// can then be used to start a batch job. +// uploaded during the application creation. You can use the batch job definitions +// in the list to start a batch job. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2210,9 +2211,9 @@ func (c *M2) ListDataSetsRequest(input *ListDataSetsInput) (req *request.Request // // Lists the data sets imported for a specific application. In Amazon Web Services // Mainframe Modernization, data sets are associated with applications deployed -// on environments. This is known as importing data sets. Currently, Amazon -// Web Services Mainframe Modernization can import data sets into catalogs using -// CreateDataSetImportTask (https://docs.aws.amazon.com/m2/latest/APIReference/API_CreateDataSetImportTask.html). +// on runtime environments. This is known as importing data sets. Currently, +// Amazon Web Services Mainframe Modernization can import data sets into catalogs +// using CreateDataSetImportTask (https://docs.aws.amazon.com/m2/latest/APIReference/API_CreateDataSetImportTask.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -3453,7 +3454,7 @@ func (c *M2) UpdateEnvironmentRequest(input *UpdateEnvironmentInput) (req *reque // UpdateEnvironment API operation for AWSMainframeModernization. // -// Updates the configuration details for a specific environment. +// Updates the configuration details for a specific runtime environment. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -3681,8 +3682,8 @@ type ApplicationSummary struct { // CreationTime is a required field CreationTime *time.Time `locationName:"creationTime" type:"timestamp" required:"true"` - // Indicates whether there is an ongoing deployment or if the application has - // ever deployed successfully. + // Indicates either an ongoing deployment or if the application has ever deployed + // successfully. DeploymentStatus *string `locationName:"deploymentStatus" type:"string" enum:"ApplicationDeploymentLifecycle"` // The description of the application. @@ -3696,8 +3697,8 @@ type ApplicationSummary struct { // The unique identifier of the runtime environment that hosts this application. EnvironmentId *string `locationName:"environmentId" type:"string"` - // The timestamp when the application was last started. Null until the application - // has started running for the first time. + // The timestamp when you last started the application. Null until the application + // runs for the first time. LastStartTime *time.Time `locationName:"lastStartTime" type:"timestamp"` // The name of the application. @@ -4258,6 +4259,9 @@ type CreateApplicationInput struct { // EngineType is a required field EngineType *string `locationName:"engineType" type:"string" required:"true" enum:"EngineType"` + // The identifier of a customer managed key. + KmsKeyId *string `locationName:"kmsKeyId" type:"string"` + // The unique identifier of the application. // // Name is a required field @@ -4333,6 +4337,12 @@ func (s *CreateApplicationInput) SetEngineType(v string) *CreateApplicationInput return s } +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *CreateApplicationInput) SetKmsKeyId(v string) *CreateApplicationInput { + s.KmsKeyId = &v + return s +} + // SetName sets the Name field's value. func (s *CreateApplicationInput) SetName(v string) *CreateApplicationInput { s.Name = &v @@ -4538,7 +4548,7 @@ type CreateDeploymentInput struct { // it expires. ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` - // The identifier of the environment where this application will be deployed. + // The identifier of the runtime environment where you want to deploy this application. // // EnvironmentId is a required field EnvironmentId *string `locationName:"environmentId" type:"string" required:"true"` @@ -4655,47 +4665,50 @@ type CreateEnvironmentInput struct { // it expires. ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` - // The description of the environment. + // The description of the runtime environment. Description *string `locationName:"description" type:"string"` - // The engine type for the environment. + // The engine type for the runtime environment. // // EngineType is a required field EngineType *string `locationName:"engineType" type:"string" required:"true" enum:"EngineType"` - // The version of the engine type for the environment. + // The version of the engine type for the runtime environment. EngineVersion *string `locationName:"engineVersion" type:"string"` // The details of a high availability configuration for this runtime environment. HighAvailabilityConfig *HighAvailabilityConfig `locationName:"highAvailabilityConfig" type:"structure"` - // The type of instance for the environment. + // The type of instance for the runtime environment. // // InstanceType is a required field InstanceType *string `locationName:"instanceType" type:"string" required:"true"` - // The unique identifier of the environment. + // The identifier of a customer managed key. + KmsKeyId *string `locationName:"kmsKeyId" type:"string"` + + // The name of the runtime environment. Must be unique within the account. // // Name is a required field Name *string `locationName:"name" type:"string" required:"true"` - // Configures a desired maintenance window for the environment. If you do not - // provide a value, a random system-generated value will be assigned. + // Configures the maintenance window you want for the runtime environment. If + // you do not provide a value, a random system-generated value will be assigned. PreferredMaintenanceWindow *string `locationName:"preferredMaintenanceWindow" type:"string"` - // Specifies whether the environment is publicly accessible. + // Specifies whether the runtime environment is publicly accessible. PubliclyAccessible *bool `locationName:"publiclyAccessible" type:"boolean"` - // The list of security groups for the VPC associated with this environment. + // The list of security groups for the VPC associated with this runtime environment. SecurityGroupIds []*string `locationName:"securityGroupIds" type:"list"` - // Optional. The storage configurations for this environment. + // Optional. The storage configurations for this runtime environment. StorageConfigurations []*StorageConfiguration `locationName:"storageConfigurations" type:"list"` - // The list of subnets associated with the VPC for this environment. + // The list of subnets associated with the VPC for this runtime environment. SubnetIds []*string `locationName:"subnetIds" type:"list"` - // The tags for the environment. + // The tags for the runtime environment. Tags map[string]*string `locationName:"tags" type:"map"` } @@ -4787,6 +4800,12 @@ func (s *CreateEnvironmentInput) SetInstanceType(v string) *CreateEnvironmentInp return s } +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *CreateEnvironmentInput) SetKmsKeyId(v string) *CreateEnvironmentInput { + s.KmsKeyId = &v + return s +} + // SetName sets the Name field's value. func (s *CreateEnvironmentInput) SetName(v string) *CreateEnvironmentInput { s.Name = &v @@ -4832,7 +4851,7 @@ func (s *CreateEnvironmentInput) SetTags(v map[string]*string) *CreateEnvironmen type CreateEnvironmentOutput struct { _ struct{} `type:"structure"` - // The identifier of this environment. + // The unique identifier of the runtime environment. // // EnvironmentId is a required field EnvironmentId *string `locationName:"environmentId" type:"string" required:"true"` @@ -4871,8 +4890,7 @@ type DataSet struct { // DatasetName is a required field DatasetName *string `locationName:"datasetName" type:"string" required:"true"` - // The type of dataset. Possible values include VSAM, IS, PS, GDG, PO, PS, UNKNOWN - // etc. + // The type of dataset. The only supported value is VSAM. // // DatasetOrg is a required field DatasetOrg *DatasetOrgAttributes `locationName:"datasetOrg" type:"structure" required:"true"` @@ -5246,8 +5264,7 @@ type DataSetSummary struct { // DataSetName is a required field DataSetName *string `locationName:"dataSetName" type:"string" required:"true"` - // The type of data set. Possible values include VSAM, IS, PS, GDG, PO, PS, - // or unknown. + // The type of data set. The only supported value is VSAM. DataSetOrg *string `locationName:"dataSetOrg" type:"string"` // The format of the data set. @@ -5779,7 +5796,7 @@ type DeploymentSummary struct { // DeploymentId is a required field DeploymentId *string `locationName:"deploymentId" type:"string" required:"true"` - // The unique identifier of the environment. + // The unique identifier of the runtime environment. // // EnvironmentId is a required field EnvironmentId *string `locationName:"environmentId" type:"string" required:"true"` @@ -5959,17 +5976,17 @@ func (s *EngineVersionsSummary) SetEngineVersion(v string) *EngineVersionsSummar return s } -// Contains a subset of the possible environment attributes. Used in the environment -// list. +// Contains a subset of the possible runtime environment attributes. Used in +// the environment list. type EnvironmentSummary struct { _ struct{} `type:"structure"` - // The timestamp when the environment was created. + // The timestamp when the runtime environment was created. // // CreationTime is a required field CreationTime *time.Time `locationName:"creationTime" type:"timestamp" required:"true"` - // The target platform for the environment. + // The target platform for the runtime environment. // // EngineType is a required field EngineType *string `locationName:"engineType" type:"string" required:"true" enum:"EngineType"` @@ -5989,17 +6006,17 @@ type EnvironmentSummary struct { // EnvironmentId is a required field EnvironmentId *string `locationName:"environmentId" type:"string" required:"true"` - // The instance type of the environment. + // The instance type of the runtime environment. // // InstanceType is a required field InstanceType *string `locationName:"instanceType" type:"string" required:"true"` - // The name of the environment. + // The name of the runtime environment. // // Name is a required field Name *string `locationName:"name" type:"string" required:"true"` - // The status of the environment + // The status of the runtime environment // // Status is a required field Status *string `locationName:"status" type:"string" required:"true" enum:"EnvironmentLifecycle"` @@ -6432,11 +6449,14 @@ type GetApplicationOutput struct { // EngineType is a required field EngineType *string `locationName:"engineType" type:"string" required:"true" enum:"EngineType"` - // The identifier of the environment where the application will be deployed. + // The identifier of the runtime environment where you want to deploy the application. EnvironmentId *string `locationName:"environmentId" type:"string"` - // The timestamp when the application was last started. Null until the application - // has started running for the first time. + // The identifier of a customer managed key. + KmsKeyId *string `locationName:"kmsKeyId" type:"string"` + + // The timestamp when you last started the application. Null until the application + // runs for the first time. LastStartTime *time.Time `locationName:"lastStartTime" type:"timestamp"` // The latest version of the application. @@ -6446,7 +6466,7 @@ type GetApplicationOutput struct { // The Amazon Resource Name (ARN) for the network load balancer listener created // in your Amazon Web Services account. Amazon Web Services Mainframe Modernization - // creates this listener on your behalf the first time you deploy an application. + // creates this listener for you the first time you deploy an application. ListenerArns []*string `locationName:"listenerArns" min:"1" type:"list"` // The port associated with the network load balancer listener created in your @@ -6458,8 +6478,8 @@ type GetApplicationOutput struct { LoadBalancerDnsName *string `locationName:"loadBalancerDnsName" type:"string"` // The list of log summaries. Each log summary includes the log type as well - // as the log group identifier. These are CloudWatch logs. The Amazon Web Services - // Mainframe Modernization application log is pushed to CloudWatch under the + // as the log group identifier. These are CloudWatch logs. Amazon Web Services + // Mainframe Modernization pushes the application log to CloudWatch under the // customer's account. LogGroups []*LogGroupSummary `locationName:"logGroups" type:"list"` @@ -6544,6 +6564,12 @@ func (s *GetApplicationOutput) SetEnvironmentId(v string) *GetApplicationOutput return s } +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *GetApplicationOutput) SetKmsKeyId(v string) *GetApplicationOutput { + s.KmsKeyId = &v + return s +} + // SetLastStartTime sets the LastStartTime field's value. func (s *GetApplicationOutput) SetLastStartTime(v time.Time) *GetApplicationOutput { s.LastStartTime = &v @@ -6690,7 +6716,7 @@ type GetApplicationVersionOutput struct { CreationTime *time.Time `locationName:"creationTime" type:"timestamp" required:"true"` // The content of the application definition. This is a JSON object that contains - // the resource configuration/definitions that identify an application. + // the resource configuration and definitions that identify an application. // // DefinitionContent is a required field DefinitionContent *string `locationName:"definitionContent" min:"1" type:"string" required:"true"` @@ -7039,8 +7065,7 @@ type GetDataSetDetailsOutput struct { // DataSetName is a required field DataSetName *string `locationName:"dataSetName" type:"string" required:"true"` - // The type of data set. Possible values include VSAM, IS, PS, GDG, PO, PS, - // or unknown. + // The type of data set. The only supported value is VSAM. DataSetOrg *DatasetDetailOrgAttributes `locationName:"dataSetOrg" type:"structure"` // The last time the data set was referenced. @@ -7049,7 +7074,7 @@ type GetDataSetDetailsOutput struct { // The last time the data set was updated. LastUpdatedTime *time.Time `locationName:"lastUpdatedTime" type:"timestamp"` - // The locaion where the data set is stored. + // The location where the data set is stored. Location *string `locationName:"location" type:"string"` // The length of records in the data set. @@ -7498,11 +7523,14 @@ type GetEnvironmentOutput struct { // InstanceType is a required field InstanceType *string `locationName:"instanceType" type:"string" required:"true"` + // The identifier of a customer managed key. + KmsKeyId *string `locationName:"kmsKeyId" type:"string"` + // The Amazon Resource Name (ARN) for the load balancer used with the runtime // environment. LoadBalancerArn *string `locationName:"loadBalancerArn" type:"string"` - // The name of the runtime environment. + // The name of the runtime environment. Must be unique within the account. // // Name is a required field Name *string `locationName:"name" type:"string" required:"true"` @@ -7510,8 +7538,8 @@ type GetEnvironmentOutput struct { // Indicates the pending maintenance scheduled on this environment. PendingMaintenance *PendingMaintenance `locationName:"pendingMaintenance" type:"structure"` - // Configures a desired maintenance window for the environment. If you do not - // provide a value, a random system-generated value will be assigned. + // Configures the maintenance window you want for the runtime environment. If + // you do not provide a value, a random system-generated value will be assigned. PreferredMaintenanceWindow *string `locationName:"preferredMaintenanceWindow" type:"string"` // Whether applications running in this runtime environment are publicly accessible. @@ -7619,6 +7647,12 @@ func (s *GetEnvironmentOutput) SetInstanceType(v string) *GetEnvironmentOutput { return s } +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *GetEnvironmentOutput) SetKmsKeyId(v string) *GetEnvironmentOutput { + s.KmsKeyId = &v + return s +} + // SetLoadBalancerArn sets the LoadBalancerArn field's value. func (s *GetEnvironmentOutput) SetLoadBalancerArn(v string) *GetEnvironmentOutput { s.LoadBalancerArn = &v @@ -8002,7 +8036,7 @@ func (s *ListApplicationsInput) SetNextToken(v string) *ListApplicationsInput { type ListApplicationsOutput struct { _ struct{} `type:"structure"` - // Returns a list of summary details for all the applications in an environment. + // Returns a list of summary details for all the applications in a runtime environment. // // Applications is a required field Applications []*ApplicationSummary `locationName:"applications" type:"list" required:"true"` @@ -8530,7 +8564,7 @@ func (s *ListDataSetsInput) SetPrefix(v string) *ListDataSetsInput { type ListDataSetsOutput struct { _ struct{} `type:"structure"` - // The list of data sets, containing ionformation including the creating time, + // The list of data sets, containing information including the creation time, // the data set name, the data set organization, the data set format, and the // last time the data set was referenced or updated. // @@ -8797,17 +8831,17 @@ func (s *ListEngineVersionsOutput) SetNextToken(v string) *ListEngineVersionsOut type ListEnvironmentsInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The engine type for the environment. + // The engine type for the runtime environment. EngineType *string `location:"querystring" locationName:"engineType" type:"string" enum:"EngineType"` - // The maximum number of environments to return. + // The maximum number of runtime environments to return. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` - // The name of the environment. + // The names of the runtime environments. Must be unique within the account. Names []*string `location:"querystring" locationName:"names" min:"1" type:"list"` - // A pagination token to control the number of environments displayed in the - // list. + // A pagination token to control the number of runtime environments displayed + // in the list. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` } @@ -8872,13 +8906,14 @@ func (s *ListEnvironmentsInput) SetNextToken(v string) *ListEnvironmentsInput { type ListEnvironmentsOutput struct { _ struct{} `type:"structure"` - // Returns a list of summary details for all the environments in your account. + // Returns a list of summary details for all the runtime environments in your + // account. // // Environments is a required field Environments []*EnvironmentSummary `locationName:"environments" type:"list" required:"true"` // A pagination token that's returned when the response doesn't contain all - // the environments. + // the runtime environments. NextToken *string `locationName:"nextToken" type:"string"` } @@ -8994,9 +9029,9 @@ func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForRe return s } -// A subset of the attributes about a log group. In CloudWatch a log group is -// a group of log streams that share the same retention, monitoring, and access -// control settings. +// A subset of the attributes that describe a log group. In CloudWatch a log +// group is a group of log streams that share the same retention, monitoring, +// and access control settings. type LogGroupSummary struct { _ struct{} `type:"structure"` @@ -9089,7 +9124,7 @@ type PendingMaintenance struct { // The specific runtime engine that the maintenance schedule applies to. EngineVersion *string `locationName:"engineVersion" type:"string"` - // The maintenance schedule for the engine version. + // The maintenance schedule for the runtime engine version. Schedule *MaintenanceSchedule `locationName:"schedule" type:"structure"` } @@ -9752,7 +9787,7 @@ func (s StopApplicationOutput) GoString() string { return s.String() } -// Defines the storage configuration for an environment. +// Defines the storage configuration for a runtime environment. type StorageConfiguration struct { _ struct{} `type:"structure"` @@ -10182,17 +10217,17 @@ func (s *UpdateApplicationOutput) SetApplicationVersion(v int64) *UpdateApplicat type UpdateEnvironmentInput struct { _ struct{} `type:"structure"` - // Indicates whether to update the environment during the maintenance window. - // The default is false. Currently, Amazon Web Services Mainframe Modernization + // Indicates whether to update the runtime environment during the maintenance + // window. The default is false. Currently, Amazon Web Services Mainframe Modernization // accepts the engineVersion parameter only if applyDuringMaintenanceWindow // is true. If any parameter other than engineVersion is provided in UpdateEnvironmentRequest, // it will fail if applyDuringMaintenanceWindow is set to true. ApplyDuringMaintenanceWindow *bool `locationName:"applyDuringMaintenanceWindow" type:"boolean"` - // The desired capacity for the environment to update. + // The desired capacity for the runtime environment to update. DesiredCapacity *int64 `locationName:"desiredCapacity" min:"1" type:"integer"` - // The version of the runtime engine for the environment. + // The version of the runtime engine for the runtime environment. EngineVersion *string `locationName:"engineVersion" type:"string"` // The unique identifier of the runtime environment that you want to update. @@ -10200,11 +10235,11 @@ type UpdateEnvironmentInput struct { // EnvironmentId is a required field EnvironmentId *string `location:"uri" locationName:"environmentId" type:"string" required:"true"` - // The instance type for the environment to update. + // The instance type for the runtime environment to update. InstanceType *string `locationName:"instanceType" type:"string"` - // Configures a desired maintenance window for the environment. If you do not - // provide a value, a random system-generated value will be assigned. + // Configures the maintenance window you want for the runtime environment. If + // you do not provide a value, a random system-generated value will be assigned. PreferredMaintenanceWindow *string `locationName:"preferredMaintenanceWindow" type:"string"` } @@ -10659,6 +10694,9 @@ const ( // ApplicationLifecycleDeleting is a ApplicationLifecycle enum value ApplicationLifecycleDeleting = "Deleting" + + // ApplicationLifecycleDeletingFromEnvironment is a ApplicationLifecycle enum value + ApplicationLifecycleDeletingFromEnvironment = "Deleting From Environment" ) // ApplicationLifecycle_Values returns all elements of the ApplicationLifecycle enum @@ -10674,6 +10712,7 @@ func ApplicationLifecycle_Values() []string { ApplicationLifecycleStopped, ApplicationLifecycleFailed, ApplicationLifecycleDeleting, + ApplicationLifecycleDeletingFromEnvironment, } } @@ -10829,6 +10868,9 @@ const ( // EnvironmentLifecycleFailed is a EnvironmentLifecycle enum value EnvironmentLifecycleFailed = "Failed" + + // EnvironmentLifecycleUpdating is a EnvironmentLifecycle enum value + EnvironmentLifecycleUpdating = "Updating" ) // EnvironmentLifecycle_Values returns all elements of the EnvironmentLifecycle enum @@ -10838,6 +10880,7 @@ func EnvironmentLifecycle_Values() []string { EnvironmentLifecycleAvailable, EnvironmentLifecycleDeleting, EnvironmentLifecycleFailed, + EnvironmentLifecycleUpdating, } } diff --git a/service/sagemaker/api.go b/service/sagemaker/api.go index d7350e511c..a43ed7fbf8 100644 --- a/service/sagemaker/api.go +++ b/service/sagemaker/api.go @@ -2662,9 +2662,9 @@ func (c *SageMaker) CreateInferenceExperimentRequest(input *CreateInferenceExper // Creates an inference experiment using the configurations specified in the // request. // -// Use this API to schedule an experiment to compare model variants on a Amazon -// SageMaker inference endpoint. For more information about inference experiments, -// see Shadow tests (https://docs.aws.amazon.com/sagemaker/latest/dg/shadow-tests.html). +// Use this API to setup and schedule an experiment to compare model variants +// on a Amazon SageMaker inference endpoint. For more information about inference +// experiments, see Shadow tests (https://docs.aws.amazon.com/sagemaker/latest/dg/shadow-tests.html). // // Amazon SageMaker begins your experiment at the scheduled time and routes // traffic to your endpoint's model variants based on your specified configuration. @@ -38111,16 +38111,16 @@ type CreateEndpointConfigInput struct { // Store Volumes (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ssd-instance-store.html). KmsKeyId *string `type:"string"` - // An list of ProductionVariant objects, one for each model that you want to + // An array of ProductionVariant objects, one for each model that you want to // host at this endpoint. // // ProductionVariants is a required field ProductionVariants []*ProductionVariant `min:"1" type:"list" required:"true"` - // Array of ProductionVariant objects. There is one for each model that you - // want to host at this endpoint in shadow mode with production traffic replicated - // from the model specified on ProductionVariants.If you use this field, you - // can only specify one variant for ProductionVariants and one variant for ShadowProductionVariants. + // An array of ProductionVariant objects, one for each model that you want to + // host at this endpoint in shadow mode with production traffic replicated from + // the model specified on ProductionVariants. If you use this field, you can + // only specify one variant for ProductionVariants and one variant for ShadowProductionVariants. ShadowProductionVariants []*ProductionVariant `min:"1" type:"list"` // An array of key-value pairs. You can use tags to categorize your Amazon Web @@ -38613,6 +38613,9 @@ type CreateFeatureGroupInput struct { // for SSE, you can reduce Amazon Web Services KMS requests costs by up to // 99 percent. // + // * Format for the offline store table. Supported formats are Glue (Default) + // and Apache Iceberg (https://iceberg.apache.org/). + // // To learn more about this parameter, see OfflineStoreConfig. OfflineStoreConfig *OfflineStoreConfig `type:"structure"` @@ -39730,9 +39733,11 @@ func (s *CreateImageVersionOutput) SetImageVersionArn(v string) *CreateImageVers type CreateInferenceExperimentInput struct { _ struct{} `type:"structure"` - // The storage configuration for the inference experiment. This is an optional - // parameter that you can use for data capture. For more information, see Capture - // data (https://docs.aws.amazon.com/sagemaker/latest/dg/model-monitor-data-capture.html). + // The Amazon S3 location and configuration for storing inference request and + // response data. + // + // This is an optional parameter that you can use for data capture. For more + // information, see Capture data (https://docs.aws.amazon.com/sagemaker/latest/dg/model-monitor-data-capture.html). DataStorageConfig *InferenceExperimentDataStorageConfig `type:"structure"` // A description for the inference experiment. @@ -39773,9 +39778,9 @@ type CreateInferenceExperimentInput struct { // in the Amazon Web Services Key Management Service Developer Guide. KmsKey *string `type:"string"` - // Array of ModelVariantConfigSummary objects. There is one for each variant - // in the inference experiment. Each ModelVariantConfigSummary object in the - // array describes the infrastructure configuration for the corresponding variant. + // An array of ModelVariantConfig objects. There is one for each variant in + // the inference experiment. Each ModelVariantConfig object in the array describes + // the infrastructure configuration for the corresponding variant. // // ModelVariants is a required field ModelVariants []*ModelVariantConfig `min:"1" type:"list" required:"true"` @@ -39786,17 +39791,22 @@ type CreateInferenceExperimentInput struct { Name *string `min:"1" type:"string" required:"true"` // The ARN of the IAM role that Amazon SageMaker can assume to access model - // artifacts and container images. + // artifacts and container images, and manage Amazon SageMaker Inference endpoints + // for model deployment. // // RoleArn is a required field RoleArn *string `min:"20" type:"string" required:"true"` // The duration for which you want the inference experiment to run. If you don't - // specify this field, the experiment automatically concludes after 7 days. + // specify this field, the experiment automatically starts immediately upon + // creation and concludes after 7 days. Schedule *InferenceExperimentSchedule `type:"structure"` - // Shows which variant is the production variant and which variant is the shadow - // variant. For the shadow variant, also shows the sampling percentage. + // The configuration of ShadowMode inference experiment type. Use this field + // to specify a production variant which takes all the inference requests, and + // a shadow variant to which Amazon SageMaker replicates a percentage of the + // inference requests. For the shadow variant also specify the percentage of + // requests that Amazon SageMaker replicates. // // ShadowModeConfig is a required field ShadowModeConfig *ShadowModeConfig `type:"structure" required:"true"` @@ -45530,8 +45540,8 @@ type DataCaptureConfig struct { InitialSamplingPercentage *int64 `type:"integer" required:"true"` // The Amazon Resource Name (ARN) of a Amazon Web Services Key Management Service - // key that SageMaker uses to encrypt data on the storage volume attached to - // the ML compute instance that hosts the endpoint. + // key that SageMaker uses to encrypt the captured data at rest using Amazon + // S3 server-side encryption. // // The KmsKeyId can be any of the following formats: // @@ -53513,10 +53523,9 @@ type DescribeEndpointConfigOutput struct { // ProductionVariants is a required field ProductionVariants []*ProductionVariant `min:"1" type:"list" required:"true"` - // Array of ProductionVariant objects. There is one for each model that you - // want to host at this endpoint in shadow mode with production traffic replicated - // from the model specified on ProductionVariants.If you use this field, you - // can only specify one variant for ProductionVariants and one variant for ShadowProductionVariants. + // An array of ProductionVariant objects, one for each model that you want to + // host at this endpoint in shadow mode with production traffic replicated from + // the model specified on ProductionVariants. ShadowProductionVariants []*ProductionVariant `min:"1" type:"list"` } @@ -53723,10 +53732,9 @@ type DescribeEndpointOutput struct { // this endpoint. ProductionVariants []*ProductionVariantSummary `min:"1" type:"list"` - // Array of ProductionVariant objects. There is one for each model that you + // An array of ProductionVariantSummary objects, one for each model that you // want to host at this endpoint in shadow mode with production traffic replicated - // from the model specified on ProductionVariants.If you use this field, you - // can only specify one variant for ProductionVariants and one variant for ShadowProductionVariants. + // from the model specified on ProductionVariants. ShadowProductionVariants []*ProductionVariantSummary `min:"1" type:"list"` } @@ -54102,9 +54110,18 @@ type DescribeFeatureGroupOutput struct { // NextToken is a required field NextToken *string `type:"string" required:"true"` - // The configuration of the OfflineStore, inducing the S3 location of the OfflineStore, - // Amazon Web Services Glue or Amazon Web Services Hive data catalogue configurations, - // and the security configuration. + // The configuration of the offline store. It includes the following configurations: + // + // * Amazon S3 location of the offline store. + // + // * Configuration of the Glue data catalog. + // + // * Table format of the offline store. + // + // * Option to disable the automatic creation of a Glue table for the offline + // store. + // + // * Encryption configuration. OfflineStoreConfig *OfflineStoreConfig `type:"structure"` // The status of the OfflineStore. Notifies you if replicating data into the @@ -55774,13 +55791,14 @@ type DescribeInferenceExperimentOutput struct { // Arn is a required field Arn *string `type:"string" required:"true"` - // The timestamp at which the inference experiment was completed or will complete. + // The timestamp at which the inference experiment was completed. CompletionTime *time.Time `type:"timestamp"` // The timestamp at which you created the inference experiment. CreationTime *time.Time `type:"timestamp"` - // The Amazon S3 storage configuration for the inference experiment. + // The Amazon S3 location and configuration for storing inference request and + // response data. DataStorageConfig *InferenceExperimentDataStorageConfig `type:"structure"` // The description of the inference experiment. @@ -55800,7 +55818,7 @@ type DescribeInferenceExperimentOutput struct { // The timestamp at which you last modified the inference experiment. LastModifiedTime *time.Time `type:"timestamp"` - // Array of ModelVariantConfigSummary objects. There is one for each variant + // An array of ModelVariantConfigSummary objects. There is one for each variant // in the inference experiment. Each ModelVariantConfigSummary object in the // array describes the infrastructure configuration for deploying the corresponding // variant. @@ -55814,14 +55832,18 @@ type DescribeInferenceExperimentOutput struct { Name *string `min:"1" type:"string" required:"true"` // The ARN of the IAM role that Amazon SageMaker can assume to access model - // artifacts and container images. + // artifacts and container images, and manage Amazon SageMaker Inference endpoints + // for model deployment. RoleArn *string `min:"20" type:"string"` // The duration for which the inference experiment ran or will run. Schedule *InferenceExperimentSchedule `type:"structure"` - // Shows which variant is a production variant and which variant is a shadow - // variant. For shadow variants, also shows the sampling percentage. + // The configuration of ShadowMode inference experiment type, which shows the + // production variant that takes all the inference requests, and the shadow + // variant to which Amazon SageMaker replicates a percentage of the inference + // requests. For the shadow variant it also shows the percentage of requests + // that Amazon SageMaker replicates. ShadowModeConfig *ShadowModeConfig `type:"structure"` // The status of the inference experiment. The following are the possible statuses @@ -55829,8 +55851,8 @@ type DescribeInferenceExperimentOutput struct { // // * Creating - Amazon SageMaker is creating your experiment. // - // * Created - Amazon SageMaker has finished creating your experiment and - // it will begin at the scheduled time. + // * Created - Amazon SageMaker has finished the creation of your experiment + // and will begin the experiment at the scheduled time. // // * Updating - When you make changes to your experiment, your experiment // shows as updating. @@ -55843,12 +55865,14 @@ type DescribeInferenceExperimentOutput struct { // // * Completed - Your experiment has completed. // - // * Cancelled - When you conclude your experiment early, it shows as canceled. + // * Cancelled - When you conclude your experiment early using the StopInferenceExperiment + // API, or if any operation fails with an unexpected error, it shows as cancelled. // // Status is a required field Status *string `type:"string" required:"true" enum:"InferenceExperimentStatus"` - // The error message for the inference experiment status result. + // The error message or client-specified Reason from the StopInferenceExperiment + // API, that explains the status of the inference experiment. StatusReason *string `type:"string"` // The type of the inference experiment. @@ -64037,10 +64061,9 @@ type Endpoint struct { // variant is a model. ProductionVariants []*ProductionVariantSummary `min:"1" type:"list"` - // Array of ProductionVariant objects, one for each model that you want to host - // at this endpoint in shadow mode with production traffic replicated from the - // model specified on ProductionVariants.If you use this field, you can only - // specify one variant for ProductionVariants and one variant for ShadowProductionVariants. + // A list of the shadow variants hosted on the endpoint. Each shadow variant + // is a model in shadow mode with production traffic replicated from the proudction + // variant. ShadowProductionVariants []*ProductionVariantSummary `min:"1" type:"list"` // A list of the tags associated with the endpoint. For more information, see @@ -64478,8 +64501,8 @@ type EndpointMetadata struct { // see EndpointSummary$EndpointStatus. EndpointStatus *string `type:"string" enum:"EndpointStatus"` - // If the status of the endpoint is Failed, this provides the reason why it - // failed. + // If the status of the endpoint is Failed, or the status is InService but update + // operation fails, this provides the reason why it failed. FailureReason *string `type:"string"` } @@ -70330,12 +70353,15 @@ func (s *HyperParameterTuningJobWarmStartConfig) SetWarmStartType(v string) *Hyp } // The configuration of resources, including compute instances and storage volumes -// for use in training jobs launched by hyperparameter tuning jobs. Specify -// one or more instance type and count and the allocation strategy for instance +// for use in training jobs launched by hyperparameter tuning jobs. HyperParameterTuningResourceConfig +// is similar to ResourceConfig, but has the additional InstanceConfigs and +// AllocationStrategy fields to allow for flexible instance management. Specify +// one or more instance types, count, and the allocation strategy for instance // selection. // -// HyperParameterTuningResourceConfig supports all of the capabilities of ResourceConfig -// with added functionality for flexible instance management. +// HyperParameterTuningResourceConfig supports the capabilities of ResourceConfig +// with the exception of KeepAlivePeriodInSeconds. Hyperparameter tuning jobs +// use warm pools by default, which reuse clusters between training jobs. type HyperParameterTuningResourceConfig struct { _ struct{} `type:"structure"` @@ -71114,8 +71140,8 @@ func (s *InferenceExecutionConfig) SetMode(v string) *InferenceExecutionConfig { return s } -// The Amazon S3 location and configuration for storing inference experiment -// data. +// The Amazon S3 location and configuration for storing inference request and +// response data. type InferenceExperimentDataStorageConfig struct { _ struct{} `type:"structure"` @@ -71123,14 +71149,13 @@ type InferenceExperimentDataStorageConfig struct { // specified SageMaker will by default base64 encode when capturing the data. ContentType *CaptureContentTypeHeader `type:"structure"` - // The Amazon S3 bucket where the inference experiment data is stored. + // The Amazon S3 bucket where the inference request and response data is stored. // // Destination is a required field Destination *string `type:"string" required:"true"` - // The Amazon Resource Name (ARN) of a Amazon Web Services Key Management Service - // key that Amazon SageMaker uses to encrypt captured data when uploading to - // Amazon S3. + // The Amazon Web Services Key Management Service key that Amazon SageMaker + // uses to encrypt captured data at rest using Amazon S3 server-side encryption. KmsKey *string `type:"string"` } @@ -71257,7 +71282,8 @@ type InferenceExperimentSummary struct { Name *string `min:"1" type:"string" required:"true"` // The ARN of the IAM role that Amazon SageMaker can assume to access model - // artifacts and container images. + // artifacts and container images, and manage Amazon SageMaker Inference endpoints + // for model deployment. RoleArn *string `min:"20" type:"string"` // The duration for which the inference experiment ran or will run. @@ -88574,7 +88600,7 @@ type ModelVariantConfig struct { // InfrastructureConfig is a required field InfrastructureConfig *ModelInfrastructureConfig `type:"structure" required:"true"` - // The name of the model. + // The name of the Amazon SageMaker Model entity. // // ModelName is a required field ModelName *string `type:"string" required:"true"` @@ -88655,12 +88681,26 @@ type ModelVariantConfigSummary struct { // InfrastructureConfig is a required field InfrastructureConfig *ModelInfrastructureConfig `type:"structure" required:"true"` - // The name of the model. + // The name of the Amazon SageMaker Model entity. // // ModelName is a required field ModelName *string `type:"string" required:"true"` - // The status of the deployment. + // The status of deployment for the model variant on the hosted inference endpoint. + // + // * Creating - Amazon SageMaker is preparing the model variant on the hosted + // inference endpoint. + // + // * InService - The model variant is running on the hosted inference endpoint. + // + // * Updating - Amazon SageMaker is updating the model variant on the hosted + // inference endpoint. + // + // * Deleting - Amazon SageMaker is deleting the model variant on the hosted + // inference endpoint. + // + // * Deleted - The model variant has been deleted on the hosted inference + // endpoint. This can only happen after stopping the experiment. // // Status is a required field Status *string `type:"string" required:"true" enum:"ModelVariantStatus"` @@ -91192,8 +91232,8 @@ type OfflineStoreConfig struct { // S3StorageConfig is a required field S3StorageConfig *S3StorageConfig `type:"structure" required:"true"` - // Format for the offline store feature group. Iceberg is the optimal format - // for feature groups shared between offline and online stores. + // Format for the offline store table. Supported formats are Glue (Default) + // and Apache Iceberg (https://iceberg.apache.org/). TableFormat *string `type:"string" enum:"TableFormat"` } @@ -92445,13 +92485,13 @@ type PendingDeploymentSummary struct { // EndpointConfigName is a required field EndpointConfigName *string `type:"string" required:"true"` - // List of PendingProductionVariantSummary objects. + // An array of PendingProductionVariantSummary objects, one for each model hosted + // behind this endpoint for the in-progress deployment. ProductionVariants []*PendingProductionVariantSummary `min:"1" type:"list"` - // Array of ProductionVariant objects, one for each model that you want to host - // at this endpoint in shadow mode with production traffic replicated from the - // model specified on ProductionVariants.If you use this field, you can only - // specify one variant for ProductionVariants and one variant for ShadowProductionVariants. + // An array of PendingProductionVariantSummary objects, one for each model hosted + // behind this endpoint in shadow mode with production traffic replicated from + // the model specified on ProductionVariants for the in-progress deployment. ShadowProductionVariants []*PendingProductionVariantSummary `min:"1" type:"list"` // The start time of the deployment. @@ -96822,16 +96862,17 @@ func (s *RStudioServerProDomainSettingsForUpdate) SetDomainExecutionRoleArn(v st return s } -// The infrastructure configuration for deploying the model to real-time inference. +// The infrastructure configuration for deploying the model to a real-time inference +// endpoint. type RealTimeInferenceConfig struct { _ struct{} `type:"structure"` - // The instance type the model is deployed to. + // The number of instances of the type specified by InstanceType. // // InstanceCount is a required field InstanceCount *int64 `type:"integer" required:"true"` - // The number of instances of the type specified by InstanceType. + // The instance type the model is deployed to. // // InstanceType is a required field InstanceType *string `type:"string" required:"true" enum:"InstanceType"` @@ -97136,6 +97177,10 @@ type RecommendationJobInputConfig struct { // in the Amazon Web Services Key Management Service (Amazon Web Services KMS) // documentation. VolumeKmsKeyId *string `type:"string"` + + // Inference Recommender provisions SageMaker endpoints with access to VPC in + // the inference recommendation job. + VpcConfig *RecommendationJobVpcConfig `type:"structure"` } // String returns the string representation. @@ -97201,6 +97246,11 @@ func (s *RecommendationJobInputConfig) Validate() error { invalidParams.AddNested("TrafficPattern", err.(request.ErrInvalidParams)) } } + if s.VpcConfig != nil { + if err := s.VpcConfig.Validate(); err != nil { + invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -97256,6 +97306,12 @@ func (s *RecommendationJobInputConfig) SetVolumeKmsKeyId(v string) *Recommendati return s } +// SetVpcConfig sets the VpcConfig field's value. +func (s *RecommendationJobInputConfig) SetVpcConfig(v *RecommendationJobVpcConfig) *RecommendationJobInputConfig { + s.VpcConfig = v + return s +} + // Provides information about the output configuration for the compiled model. type RecommendationJobOutputConfig struct { _ struct{} `type:"structure"` @@ -97473,6 +97529,75 @@ func (s *RecommendationJobStoppingConditions) SetModelLatencyThresholds(v []*Mod return s } +// Inference Recommender provisions SageMaker endpoints with access to VPC in +// the inference recommendation job. +type RecommendationJobVpcConfig struct { + _ struct{} `type:"structure"` + + // The VPC security group IDs. IDs have the form of sg-xxxxxxxx. Specify the + // security groups for the VPC that is specified in the Subnets field. + // + // SecurityGroupIds is a required field + SecurityGroupIds []*string `min:"1" type:"list" required:"true"` + + // The ID of the subnets in the VPC to which you want to connect your model. + // + // Subnets is a required field + Subnets []*string `min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RecommendationJobVpcConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RecommendationJobVpcConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RecommendationJobVpcConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RecommendationJobVpcConfig"} + if s.SecurityGroupIds == nil { + invalidParams.Add(request.NewErrParamRequired("SecurityGroupIds")) + } + if s.SecurityGroupIds != nil && len(s.SecurityGroupIds) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SecurityGroupIds", 1)) + } + if s.Subnets == nil { + invalidParams.Add(request.NewErrParamRequired("Subnets")) + } + if s.Subnets != nil && len(s.Subnets) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Subnets", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSecurityGroupIds sets the SecurityGroupIds field's value. +func (s *RecommendationJobVpcConfig) SetSecurityGroupIds(v []*string) *RecommendationJobVpcConfig { + s.SecurityGroupIds = v + return s +} + +// SetSubnets sets the Subnets field's value. +func (s *RecommendationJobVpcConfig) SetSubnets(v []*string) *RecommendationJobVpcConfig { + s.Subnets = v + return s +} + // The metrics of recommendations. type RecommendationMetrics struct { _ struct{} `type:"structure"` @@ -98200,8 +98325,8 @@ func (s *ResolvedAttributes) SetProblemType(v string) *ResolvedAttributes { return s } -// Describes the resources, including ML compute instances and ML storage volumes, -// to use for model training. +// Describes the resources, including machine learning (ML) compute instances +// and ML storage volumes, to use for model training. type ResourceConfig struct { _ struct{} `type:"structure"` @@ -98213,6 +98338,24 @@ type ResourceConfig struct { InstanceGroups []*InstanceGroup `type:"list"` // The ML compute instance type. + // + // SageMaker Training on Amazon Elastic Compute Cloud (EC2) P4de instances is + // in preview release starting December 9th, 2022. + // + // Amazon EC2 P4de instances (http://aws.amazon.com/ec2/instance-types/p4/) + // (currently in preview) are powered by 8 NVIDIA A100 GPUs with 80GB high-performance + // HBM2e GPU memory, which accelerate the speed of training ML models that need + // to be trained on large datasets of high-resolution data. In this preview + // release, Amazon SageMaker supports ML training jobs on P4de instances (ml.p4de.24xlarge) + // to reduce model training time. The ml.p4de.24xlarge instances are available + // in the following Amazon Web Services Regions. + // + // * US East (N. Virginia) (us-east-1) + // + // * US West (Oregon) (us-west-2) + // + // To request quota limit increase and start using P4de instances, contact the + // SageMaker Training service team through your account team. InstanceType *string `type:"string" enum:"TrainingInstanceType"` // The duration of time in seconds to retain configured resources in a warm @@ -100236,8 +100379,11 @@ func (s *ServiceCatalogProvisioningUpdateDetails) SetProvisioningParameters(v [] return s } -// Shows which variant is a production variant and which variant is a shadow -// variant. For shadow variants, also shows the sampling percentages. +// The configuration of ShadowMode inference experiment type, which specifies +// a production variant to take all the inference requests, and a shadow variant +// to which Amazon SageMaker replicates a percentage of the inference requests. +// For the shadow variant it also specifies the percentage of requests that +// Amazon SageMaker replicates. type ShadowModeConfig struct { _ struct{} `type:"structure"` @@ -100246,7 +100392,7 @@ type ShadowModeConfig struct { // ShadowModelVariants is a required field ShadowModelVariants []*ShadowModelVariantConfig `min:"1" type:"list" required:"true"` - // The name of the production variant. + // The name of the production variant, which takes all the inference requests. // // SourceModelVariantName is a required field SourceModelVariantName *string `type:"string" required:"true"` @@ -100315,7 +100461,8 @@ func (s *ShadowModeConfig) SetSourceModelVariantName(v string) *ShadowModeConfig type ShadowModelVariantConfig struct { _ struct{} `type:"structure"` - // The percentage of inference requests that are replicated to the shadow variant. + // The percentage of inference requests that Amazon SageMaker replicates from + // the production variant to the shadow variant. // // SamplingPercentage is a required field SamplingPercentage *int64 `type:"integer" required:"true"` @@ -101634,8 +101781,8 @@ func (s StopHyperParameterTuningJobOutput) GoString() string { type StopInferenceExperimentInput struct { _ struct{} `type:"structure"` - // Array of ModelVariantConfig objects. There is one for each variant that you - // want to deploy after the inference experiment stops. Each ModelVariantConfig + // An array of ModelVariantConfig objects. There is one for each variant that + // you want to deploy after the inference experiment stops. Each ModelVariantConfig // describes the infrastructure configuration for deploying the corresponding // variant. DesiredModelVariants []*ModelVariantConfig `min:"1" type:"list"` @@ -108206,14 +108353,15 @@ func (s *UpdateImageOutput) SetImageArn(v string) *UpdateImageOutput { type UpdateInferenceExperimentInput struct { _ struct{} `type:"structure"` - // The Amazon S3 storage configuration for the inference experiment. + // The Amazon S3 location and configuration for storing inference request and + // response data. DataStorageConfig *InferenceExperimentDataStorageConfig `type:"structure"` // The description of the inference experiment. Description *string `type:"string"` - // Array of ModelVariantConfigSummary objects. There is one for each variant, - // whose infrastructure configuration you want to update. + // An array of ModelVariantConfig objects. There is one for each variant, whose + // infrastructure configuration you want to update. ModelVariants []*ModelVariantConfig `min:"1" type:"list"` // The name of the inference experiment to be updated. @@ -108227,7 +108375,11 @@ type UpdateInferenceExperimentInput struct { // can update only the end date. Schedule *InferenceExperimentSchedule `type:"structure"` - // The Amazon S3 storage configuration for the inference experiment. + // The configuration of ShadowMode inference experiment type. Use this field + // to specify a production variant which takes all the inference requests, and + // a shadow variant to which Amazon SageMaker replicates a percentage of the + // inference requests. For the shadow variant also specify the percentage of + // requests that Amazon SageMaker replicates. ShadowModeConfig *ShadowModeConfig `type:"structure"` } diff --git a/service/securityhub/api.go b/service/securityhub/api.go index faa1ff93bd..5dd0a87d76 100644 --- a/service/securityhub/api.go +++ b/service/securityhub/api.go @@ -91,9 +91,7 @@ func (c *SecurityHub) AcceptAdministratorInvitationRequest(input *AcceptAdminist // The request was rejected because we can't find the specified resource. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/AcceptAdministratorInvitation func (c *SecurityHub) AcceptAdministratorInvitation(input *AcceptAdministratorInvitationInput) (*AcceptAdministratorInvitationOutput, error) { @@ -209,9 +207,7 @@ func (c *SecurityHub) AcceptInvitationRequest(input *AcceptInvitationInput) (req // The request was rejected because we can't find the specified resource. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/AcceptInvitation // @@ -304,9 +300,7 @@ func (c *SecurityHub) BatchDisableStandardsRequest(input *BatchDisableStandardsI // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - LimitExceededException // The request was rejected because it attempted to create resources beyond @@ -401,9 +395,7 @@ func (c *SecurityHub) BatchEnableStandardsRequest(input *BatchEnableStandardsInp // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - LimitExceededException // The request was rejected because it attempted to create resources beyond @@ -546,9 +538,7 @@ func (c *SecurityHub) BatchImportFindingsRequest(input *BatchImportFindingsInput // describes the limit exceeded. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/BatchImportFindings func (c *SecurityHub) BatchImportFindings(input *BatchImportFindingsInput) (*BatchImportFindingsOutput, error) { @@ -672,9 +662,7 @@ func (c *SecurityHub) BatchUpdateFindingsRequest(input *BatchUpdateFindingsInput // describes the limit exceeded. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/BatchUpdateFindings func (c *SecurityHub) BatchUpdateFindings(input *BatchUpdateFindingsInput) (*BatchUpdateFindingsOutput, error) { @@ -763,9 +751,7 @@ func (c *SecurityHub) CreateActionTargetRequest(input *CreateActionTargetInput) // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - LimitExceededException // The request was rejected because it attempted to create resources beyond @@ -864,9 +850,7 @@ func (c *SecurityHub) CreateFindingAggregatorRequest(input *CreateFindingAggrega // describes the limit exceeded. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - AccessDeniedException // You don't have permission to perform the action specified in the request. @@ -967,9 +951,7 @@ func (c *SecurityHub) CreateInsightRequest(input *CreateInsightInput) (req *requ // describes the limit exceeded. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - ResourceConflictException // The resource specified in the request conflicts with an existing resource. @@ -1103,9 +1085,7 @@ func (c *SecurityHub) CreateMembersRequest(input *CreateMembersInput) (req *requ // describes the limit exceeded. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - ResourceConflictException // The resource specified in the request conflicts with an existing resource. @@ -1197,9 +1177,7 @@ func (c *SecurityHub) DeclineInvitationsRequest(input *DeclineInvitationsInput) // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - ResourceNotFoundException // The request was rejected because we can't find the specified resource. @@ -1291,9 +1269,7 @@ func (c *SecurityHub) DeleteActionTargetRequest(input *DeleteActionTargetInput) // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - ResourceNotFoundException // The request was rejected because we can't find the specified resource. @@ -1389,9 +1365,7 @@ func (c *SecurityHub) DeleteFindingAggregatorRequest(input *DeleteFindingAggrega // describes the limit exceeded. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - AccessDeniedException // You don't have permission to perform the action specified in the request. @@ -1487,9 +1461,7 @@ func (c *SecurityHub) DeleteInsightRequest(input *DeleteInsightInput) (req *requ // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - LimitExceededException // The request was rejected because it attempted to create resources beyond @@ -1595,9 +1567,7 @@ func (c *SecurityHub) DeleteInvitationsRequest(input *DeleteInvitationsInput) (r // The request was rejected because we can't find the specified resource. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/DeleteInvitations func (c *SecurityHub) DeleteInvitations(input *DeleteInvitationsInput) (*DeleteInvitationsOutput, error) { @@ -1686,9 +1656,7 @@ func (c *SecurityHub) DeleteMembersRequest(input *DeleteMembersInput) (req *requ // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - LimitExceededException // The request was rejected because it attempted to create resources beyond @@ -1788,9 +1756,7 @@ func (c *SecurityHub) DescribeActionTargetsRequest(input *DescribeActionTargetsI // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - ResourceNotFoundException // The request was rejected because we can't find the specified resource. @@ -1932,9 +1898,7 @@ func (c *SecurityHub) DescribeHubRequest(input *DescribeHubInput) (req *request. // describes the limit exceeded. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - InvalidInputException // The request was rejected because you supplied an invalid or out-of-range @@ -2028,9 +1992,7 @@ func (c *SecurityHub) DescribeOrganizationConfigurationRequest(input *DescribeOr // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - LimitExceededException // The request was rejected because it attempted to create resources beyond @@ -2134,9 +2096,7 @@ func (c *SecurityHub) DescribeProductsRequest(input *DescribeProductsInput) (req // describes the limit exceeded. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - InvalidInputException // The request was rejected because you supplied an invalid or out-of-range @@ -2286,9 +2246,7 @@ func (c *SecurityHub) DescribeStandardsRequest(input *DescribeStandardsInput) (r // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/DescribeStandards func (c *SecurityHub) DescribeStandards(input *DescribeStandardsInput) (*DescribeStandardsOutput, error) { @@ -2434,9 +2392,7 @@ func (c *SecurityHub) DescribeStandardsControlsRequest(input *DescribeStandardsC // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - ResourceNotFoundException // The request was rejected because we can't find the specified resource. @@ -2582,9 +2538,7 @@ func (c *SecurityHub) DisableImportFindingsForProductRequest(input *DisableImpor // The request was rejected because we can't find the specified resource. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - LimitExceededException // The request was rejected because it attempted to create resources beyond @@ -2677,9 +2631,7 @@ func (c *SecurityHub) DisableOrganizationAdminAccountRequest(input *DisableOrgan // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - LimitExceededException // The request was rejected because it attempted to create resources beyond @@ -2785,9 +2737,7 @@ func (c *SecurityHub) DisableSecurityHubRequest(input *DisableSecurityHubInput) // describes the limit exceeded. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - ResourceNotFoundException // The request was rejected because we can't find the specified resource. @@ -2882,9 +2832,7 @@ func (c *SecurityHub) DisassociateFromAdministratorAccountRequest(input *Disasso // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - LimitExceededException // The request was rejected because it attempted to create resources beyond @@ -2998,9 +2946,7 @@ func (c *SecurityHub) DisassociateFromMasterAccountRequest(input *DisassociateFr // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - LimitExceededException // The request was rejected because it attempted to create resources beyond @@ -3103,9 +3049,7 @@ func (c *SecurityHub) DisassociateMembersRequest(input *DisassociateMembersInput // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - LimitExceededException // The request was rejected because it attempted to create resources beyond @@ -3203,9 +3147,7 @@ func (c *SecurityHub) EnableImportFindingsForProductRequest(input *EnableImportF // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - ResourceConflictException // The resource specified in the request conflicts with an existing resource. @@ -3301,9 +3243,7 @@ func (c *SecurityHub) EnableOrganizationAdminAccountRequest(input *EnableOrganiz // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - LimitExceededException // The request was rejected because it attempted to create resources beyond @@ -3420,9 +3360,7 @@ func (c *SecurityHub) EnableSecurityHubRequest(input *EnableSecurityHubInput) (r // describes the limit exceeded. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - ResourceConflictException // The resource specified in the request conflicts with an existing resource. @@ -3518,9 +3456,7 @@ func (c *SecurityHub) GetAdministratorAccountRequest(input *GetAdministratorAcco // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - LimitExceededException // The request was rejected because it attempted to create resources beyond @@ -3620,9 +3556,7 @@ func (c *SecurityHub) GetEnabledStandardsRequest(input *GetEnabledStandardsInput // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - LimitExceededException // The request was rejected because it attempted to create resources beyond @@ -3765,9 +3699,7 @@ func (c *SecurityHub) GetFindingAggregatorRequest(input *GetFindingAggregatorInp // describes the limit exceeded. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - AccessDeniedException // You don't have permission to perform the action specified in the request. @@ -3873,9 +3805,7 @@ func (c *SecurityHub) GetFindingsRequest(input *GetFindingsInput) (req *request. // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - LimitExceededException // The request was rejected because it attempted to create resources beyond @@ -4017,9 +3947,7 @@ func (c *SecurityHub) GetInsightResultsRequest(input *GetInsightResultsInput) (r // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - LimitExceededException // The request was rejected because it attempted to create resources beyond @@ -4119,9 +4047,7 @@ func (c *SecurityHub) GetInsightsRequest(input *GetInsightsInput) (req *request. // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - LimitExceededException // The request was rejected because it attempted to create resources beyond @@ -4267,9 +4193,7 @@ func (c *SecurityHub) GetInvitationsCountRequest(input *GetInvitationsCountInput // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - LimitExceededException // The request was rejected because it attempted to create resources beyond @@ -4377,9 +4301,7 @@ func (c *SecurityHub) GetMasterAccountRequest(input *GetMasterAccountInput) (req // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - LimitExceededException // The request was rejected because it attempted to create resources beyond @@ -4485,9 +4407,7 @@ func (c *SecurityHub) GetMembersRequest(input *GetMembersInput) (req *request.Re // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - LimitExceededException // The request was rejected because it attempted to create resources beyond @@ -4592,9 +4512,7 @@ func (c *SecurityHub) InviteMembersRequest(input *InviteMembersInput) (req *requ // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - LimitExceededException // The request was rejected because it attempted to create resources beyond @@ -4696,9 +4614,7 @@ func (c *SecurityHub) ListEnabledProductsForImportRequest(input *ListEnabledProd // describes the limit exceeded. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/ListEnabledProductsForImport func (c *SecurityHub) ListEnabledProductsForImport(input *ListEnabledProductsForImportInput) (*ListEnabledProductsForImportOutput, error) { @@ -4843,9 +4759,7 @@ func (c *SecurityHub) ListFindingAggregatorsRequest(input *ListFindingAggregator // describes the limit exceeded. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - AccessDeniedException // You don't have permission to perform the action specified in the request. @@ -5000,9 +4914,7 @@ func (c *SecurityHub) ListInvitationsRequest(input *ListInvitationsInput) (req * // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - LimitExceededException // The request was rejected because it attempted to create resources beyond @@ -5154,9 +5066,7 @@ func (c *SecurityHub) ListMembersRequest(input *ListMembersInput) (req *request. // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - LimitExceededException // The request was rejected because it attempted to create resources beyond @@ -5305,9 +5215,7 @@ func (c *SecurityHub) ListOrganizationAdminAccountsRequest(input *ListOrganizati // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - LimitExceededException // The request was rejected because it attempted to create resources beyond @@ -5713,9 +5621,7 @@ func (c *SecurityHub) UpdateActionTargetRequest(input *UpdateActionTargetInput) // The request was rejected because we can't find the specified resource. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - ResourceNotFoundException // The request was rejected because we can't find the specified resource. @@ -5809,9 +5715,7 @@ func (c *SecurityHub) UpdateFindingAggregatorRequest(input *UpdateFindingAggrega // describes the limit exceeded. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - AccessDeniedException // You don't have permission to perform the action specified in the request. @@ -5917,9 +5821,7 @@ func (c *SecurityHub) UpdateFindingsRequest(input *UpdateFindingsInput) (req *re // describes the limit exceeded. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - ResourceNotFoundException // The request was rejected because we can't find the specified resource. @@ -6009,9 +5911,7 @@ func (c *SecurityHub) UpdateInsightRequest(input *UpdateInsightInput) (req *requ // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - LimitExceededException // The request was rejected because it attempted to create resources beyond @@ -6107,9 +6007,7 @@ func (c *SecurityHub) UpdateOrganizationConfigurationRequest(input *UpdateOrgani // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - LimitExceededException // The request was rejected because it attempted to create resources beyond @@ -6201,9 +6099,7 @@ func (c *SecurityHub) UpdateSecurityHubConfigurationRequest(input *UpdateSecurit // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - LimitExceededException // The request was rejected because it attempted to create resources beyond @@ -6299,9 +6195,7 @@ func (c *SecurityHub) UpdateStandardsControlRequest(input *UpdateStandardsContro // value for an input parameter. // // - InvalidAccessException -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. // // - ResourceNotFoundException // The request was rejected because we can't find the specified resource. @@ -14235,18 +14129,26 @@ func (s *AwsEc2InstanceNetworkInterfacesDetails) SetNetworkInterfaceId(v string) return s } -// An association between the network ACL and a subnet. -type AwsEc2NetworkAclAssociation struct { +// Information about a block device mapping for an Amazon Elastic Compute Cloud +// (Amazon EC2) launch template. +type AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails struct { _ struct{} `type:"structure"` - // The identifier of the association between the network ACL and the subnet. - NetworkAclAssociationId *string `type:"string"` + // The device name. + DeviceName *string `type:"string"` - // The identifier of the network ACL. - NetworkAclId *string `type:"string"` + // Parameters used to automatically set up Amazon EBS volumes when the instance + // is launched. + Ebs *AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails `type:"structure"` - // The identifier of the subnet that is associated with the network ACL. - SubnetId *string `type:"string"` + // Omits the device from the block device mapping when an empty string is specified. + NoDevice *string `type:"string"` + + // The virtual device name (ephemeralN). Instance store volumes are numbered + // starting from 0. An instance type with 2 available instance store volumes + // can specify mappings for ephemeral0 and ephemeral1. The number of available + // instance store volumes depends on the instance type. + VirtualName *string `type:"string"` } // String returns the string representation. @@ -14254,7 +14156,7 @@ type AwsEc2NetworkAclAssociation struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2NetworkAclAssociation) String() string { +func (s AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails) String() string { return awsutil.Prettify(s) } @@ -14263,49 +14165,66 @@ func (s AwsEc2NetworkAclAssociation) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2NetworkAclAssociation) GoString() string { +func (s AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails) GoString() string { return s.String() } -// SetNetworkAclAssociationId sets the NetworkAclAssociationId field's value. -func (s *AwsEc2NetworkAclAssociation) SetNetworkAclAssociationId(v string) *AwsEc2NetworkAclAssociation { - s.NetworkAclAssociationId = &v +// SetDeviceName sets the DeviceName field's value. +func (s *AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails) SetDeviceName(v string) *AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails { + s.DeviceName = &v return s } -// SetNetworkAclId sets the NetworkAclId field's value. -func (s *AwsEc2NetworkAclAssociation) SetNetworkAclId(v string) *AwsEc2NetworkAclAssociation { - s.NetworkAclId = &v +// SetEbs sets the Ebs field's value. +func (s *AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails) SetEbs(v *AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails) *AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails { + s.Ebs = v return s } -// SetSubnetId sets the SubnetId field's value. -func (s *AwsEc2NetworkAclAssociation) SetSubnetId(v string) *AwsEc2NetworkAclAssociation { - s.SubnetId = &v +// SetNoDevice sets the NoDevice field's value. +func (s *AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails) SetNoDevice(v string) *AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails { + s.NoDevice = &v return s } -// Contains details about an Amazon EC2 network access control list (ACL). -type AwsEc2NetworkAclDetails struct { +// SetVirtualName sets the VirtualName field's value. +func (s *AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails) SetVirtualName(v string) *AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails { + s.VirtualName = &v + return s +} + +// Parameters for a block device for an Amazon Elastic Block Store (Amazon EBS) +// volume in an Amazon EC2 launch template. +type AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails struct { _ struct{} `type:"structure"` - // Associations between the network ACL and subnets. - Associations []*AwsEc2NetworkAclAssociation `type:"list"` + // Indicates whether the EBS volume is deleted on instance termination. + DeleteOnTermination *bool `type:"boolean"` - // The set of rules in the network ACL. - Entries []*AwsEc2NetworkAclEntry `type:"list"` + // Indicates whether the EBS volume is encrypted. Encrypted volumes can only + // be attached to instances that support Amazon EBS encryption. If you're creating + // a volume from a snapshot, you can't specify an encryption value. + Encrypted *bool `type:"boolean"` - // Whether this is the default network ACL for the VPC. - IsDefault *bool `type:"boolean"` + // The number of I/O operations per second (IOPS). + Iops *int64 `type:"integer"` - // The identifier of the network ACL. - NetworkAclId *string `type:"string"` + // The Amazon Resource Name (ARN) of the symmetric Key Management Service (KMS) + // customer managed key used for encryption. + KmsKeyId *string `type:"string"` - // The identifier of the Amazon Web Services account that owns the network ACL. - OwnerId *string `type:"string"` + // The ID of the EBS snapshot. + SnapshotId *string `type:"string"` - // The identifier of the VPC for the network ACL. - VpcId *string `type:"string"` + // The throughput to provision for a gp3 volume, with a maximum of 1,000 MiB/s. + Throughput *int64 `type:"integer"` + + // The size of the volume, in GiBs. You must specify either a snapshot ID or + // a volume size. + VolumeSize *int64 `type:"integer"` + + // The volume type. + VolumeType *string `type:"string"` } // String returns the string representation. @@ -14313,7 +14232,7 @@ type AwsEc2NetworkAclDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2NetworkAclDetails) String() string { +func (s AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails) String() string { return awsutil.Prettify(s) } @@ -14322,77 +14241,114 @@ func (s AwsEc2NetworkAclDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2NetworkAclDetails) GoString() string { +func (s AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails) GoString() string { return s.String() } -// SetAssociations sets the Associations field's value. -func (s *AwsEc2NetworkAclDetails) SetAssociations(v []*AwsEc2NetworkAclAssociation) *AwsEc2NetworkAclDetails { - s.Associations = v +// SetDeleteOnTermination sets the DeleteOnTermination field's value. +func (s *AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails) SetDeleteOnTermination(v bool) *AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails { + s.DeleteOnTermination = &v return s } -// SetEntries sets the Entries field's value. -func (s *AwsEc2NetworkAclDetails) SetEntries(v []*AwsEc2NetworkAclEntry) *AwsEc2NetworkAclDetails { - s.Entries = v +// SetEncrypted sets the Encrypted field's value. +func (s *AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails) SetEncrypted(v bool) *AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails { + s.Encrypted = &v return s } -// SetIsDefault sets the IsDefault field's value. -func (s *AwsEc2NetworkAclDetails) SetIsDefault(v bool) *AwsEc2NetworkAclDetails { - s.IsDefault = &v +// SetIops sets the Iops field's value. +func (s *AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails) SetIops(v int64) *AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails { + s.Iops = &v return s } -// SetNetworkAclId sets the NetworkAclId field's value. -func (s *AwsEc2NetworkAclDetails) SetNetworkAclId(v string) *AwsEc2NetworkAclDetails { - s.NetworkAclId = &v +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails) SetKmsKeyId(v string) *AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails { + s.KmsKeyId = &v return s } -// SetOwnerId sets the OwnerId field's value. -func (s *AwsEc2NetworkAclDetails) SetOwnerId(v string) *AwsEc2NetworkAclDetails { - s.OwnerId = &v +// SetSnapshotId sets the SnapshotId field's value. +func (s *AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails) SetSnapshotId(v string) *AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails { + s.SnapshotId = &v return s } -// SetVpcId sets the VpcId field's value. -func (s *AwsEc2NetworkAclDetails) SetVpcId(v string) *AwsEc2NetworkAclDetails { - s.VpcId = &v +// SetThroughput sets the Throughput field's value. +func (s *AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails) SetThroughput(v int64) *AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails { + s.Throughput = &v return s } -// A rule for the network ACL. Each rule allows or denies access based on the -// IP address, traffic direction, port, and protocol. -type AwsEc2NetworkAclEntry struct { +// SetVolumeSize sets the VolumeSize field's value. +func (s *AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails) SetVolumeSize(v int64) *AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails { + s.VolumeSize = &v + return s +} + +// SetVolumeType sets the VolumeType field's value. +func (s *AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails) SetVolumeType(v string) *AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetails { + s.VolumeType = &v + return s +} + +// Information about the target Capacity Reservation or Capacity Reservation +// group in which to run an Amazon EC2 instance. +type AwsEc2LaunchTemplateDataCapacityReservationSpecificationCapacityReservationTargetDetails struct { _ struct{} `type:"structure"` - // The IPV4 network range for which to deny or allow access. - CidrBlock *string `type:"string"` + // The ID of the Capacity Reservation in which to run the instance. + CapacityReservationId *string `type:"string"` - // Whether the rule is an egress rule. An egress rule is a rule that applies - // to traffic that leaves the subnet. - Egress *bool `type:"boolean"` + // The Amazon Resource Name (ARN) of the Capacity Reservation resource group + // in which to run the instance. + CapacityReservationResourceGroupArn *string `type:"string"` +} - // The Internet Control Message Protocol (ICMP) type and code for which to deny - // or allow access. - IcmpTypeCode *IcmpTypeCode `type:"structure"` +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2LaunchTemplateDataCapacityReservationSpecificationCapacityReservationTargetDetails) String() string { + return awsutil.Prettify(s) +} - // The IPV6 network range for which to deny or allow access. - Ipv6CidrBlock *string `type:"string"` +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2LaunchTemplateDataCapacityReservationSpecificationCapacityReservationTargetDetails) GoString() string { + return s.String() +} - // For TCP or UDP protocols, the range of ports that the rule applies to. - PortRange *PortRangeFromTo `type:"structure"` +// SetCapacityReservationId sets the CapacityReservationId field's value. +func (s *AwsEc2LaunchTemplateDataCapacityReservationSpecificationCapacityReservationTargetDetails) SetCapacityReservationId(v string) *AwsEc2LaunchTemplateDataCapacityReservationSpecificationCapacityReservationTargetDetails { + s.CapacityReservationId = &v + return s +} - // The protocol that the rule applies to. To deny or allow access to all protocols, - // use the value -1. - Protocol *string `type:"string"` +// SetCapacityReservationResourceGroupArn sets the CapacityReservationResourceGroupArn field's value. +func (s *AwsEc2LaunchTemplateDataCapacityReservationSpecificationCapacityReservationTargetDetails) SetCapacityReservationResourceGroupArn(v string) *AwsEc2LaunchTemplateDataCapacityReservationSpecificationCapacityReservationTargetDetails { + s.CapacityReservationResourceGroupArn = &v + return s +} - // Whether the rule is used to allow access or deny access. - RuleAction *string `type:"string"` +// Specifies the Capacity Reservation targeting option of an Amazon EC2 instance. +type AwsEc2LaunchTemplateDataCapacityReservationSpecificationDetails struct { + _ struct{} `type:"structure"` - // The rule number. The rules are processed in order by their number. - RuleNumber *int64 `type:"integer"` + // Indicates the instance's Capacity Reservation preferences. If equal to open, + // the instance can run in any open Capacity Reservation that has matching attributes + // (instance type, platform, Availability Zone). If equal to none, the instance + // avoids running in a Capacity Reservation even if one is available. The instance + // runs in On-Demand capacity. + CapacityReservationPreference *string `type:"string"` + + // Specifies a target Capacity Reservation. + CapacityReservationTarget *AwsEc2LaunchTemplateDataCapacityReservationSpecificationCapacityReservationTargetDetails `type:"structure"` } // String returns the string representation. @@ -14400,7 +14356,7 @@ type AwsEc2NetworkAclEntry struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2NetworkAclEntry) String() string { +func (s AwsEc2LaunchTemplateDataCapacityReservationSpecificationDetails) String() string { return awsutil.Prettify(s) } @@ -14409,88 +14365,210 @@ func (s AwsEc2NetworkAclEntry) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2NetworkAclEntry) GoString() string { +func (s AwsEc2LaunchTemplateDataCapacityReservationSpecificationDetails) GoString() string { return s.String() } -// SetCidrBlock sets the CidrBlock field's value. -func (s *AwsEc2NetworkAclEntry) SetCidrBlock(v string) *AwsEc2NetworkAclEntry { - s.CidrBlock = &v +// SetCapacityReservationPreference sets the CapacityReservationPreference field's value. +func (s *AwsEc2LaunchTemplateDataCapacityReservationSpecificationDetails) SetCapacityReservationPreference(v string) *AwsEc2LaunchTemplateDataCapacityReservationSpecificationDetails { + s.CapacityReservationPreference = &v return s } -// SetEgress sets the Egress field's value. -func (s *AwsEc2NetworkAclEntry) SetEgress(v bool) *AwsEc2NetworkAclEntry { - s.Egress = &v +// SetCapacityReservationTarget sets the CapacityReservationTarget field's value. +func (s *AwsEc2LaunchTemplateDataCapacityReservationSpecificationDetails) SetCapacityReservationTarget(v *AwsEc2LaunchTemplateDataCapacityReservationSpecificationCapacityReservationTargetDetails) *AwsEc2LaunchTemplateDataCapacityReservationSpecificationDetails { + s.CapacityReservationTarget = v return s } -// SetIcmpTypeCode sets the IcmpTypeCode field's value. -func (s *AwsEc2NetworkAclEntry) SetIcmpTypeCode(v *IcmpTypeCode) *AwsEc2NetworkAclEntry { - s.IcmpTypeCode = v - return s +// Specifies the CPU options for an Amazon EC2 instance. For more information, +// see Optimize CPU options (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html) +// in the Amazon Elastic Compute Cloud User Guide. +type AwsEc2LaunchTemplateDataCpuOptionsDetails struct { + _ struct{} `type:"structure"` + + // The number of CPU cores for the instance. + CoreCount *int64 `type:"integer"` + + // The number of threads per CPU core. A value of 1 disables multithreading + // for the instance, The default value is 2. + ThreadsPerCore *int64 `type:"integer"` } -// SetIpv6CidrBlock sets the Ipv6CidrBlock field's value. -func (s *AwsEc2NetworkAclEntry) SetIpv6CidrBlock(v string) *AwsEc2NetworkAclEntry { - s.Ipv6CidrBlock = &v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2LaunchTemplateDataCpuOptionsDetails) String() string { + return awsutil.Prettify(s) } -// SetPortRange sets the PortRange field's value. -func (s *AwsEc2NetworkAclEntry) SetPortRange(v *PortRangeFromTo) *AwsEc2NetworkAclEntry { - s.PortRange = v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2LaunchTemplateDataCpuOptionsDetails) GoString() string { + return s.String() } -// SetProtocol sets the Protocol field's value. -func (s *AwsEc2NetworkAclEntry) SetProtocol(v string) *AwsEc2NetworkAclEntry { - s.Protocol = &v +// SetCoreCount sets the CoreCount field's value. +func (s *AwsEc2LaunchTemplateDataCpuOptionsDetails) SetCoreCount(v int64) *AwsEc2LaunchTemplateDataCpuOptionsDetails { + s.CoreCount = &v return s } -// SetRuleAction sets the RuleAction field's value. -func (s *AwsEc2NetworkAclEntry) SetRuleAction(v string) *AwsEc2NetworkAclEntry { - s.RuleAction = &v +// SetThreadsPerCore sets the ThreadsPerCore field's value. +func (s *AwsEc2LaunchTemplateDataCpuOptionsDetails) SetThreadsPerCore(v int64) *AwsEc2LaunchTemplateDataCpuOptionsDetails { + s.ThreadsPerCore = &v return s } -// SetRuleNumber sets the RuleNumber field's value. -func (s *AwsEc2NetworkAclEntry) SetRuleNumber(v int64) *AwsEc2NetworkAclEntry { - s.RuleNumber = &v +// Specifies the credit option for CPU usage of a T2, T3, or T3a Amazon EC2 +// instance. +type AwsEc2LaunchTemplateDataCreditSpecificationDetails struct { + _ struct{} `type:"structure"` + + // The credit option for CPU usage of a T instance. + CpuCredits *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2LaunchTemplateDataCreditSpecificationDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2LaunchTemplateDataCreditSpecificationDetails) GoString() string { + return s.String() +} + +// SetCpuCredits sets the CpuCredits field's value. +func (s *AwsEc2LaunchTemplateDataCreditSpecificationDetails) SetCpuCredits(v string) *AwsEc2LaunchTemplateDataCreditSpecificationDetails { + s.CpuCredits = &v return s } -// Information about the network interface attachment. -type AwsEc2NetworkInterfaceAttachment struct { +// The information to include in an Amazon Elastic Compute Cloud (Amazon EC2) +// launch template. +type AwsEc2LaunchTemplateDataDetails struct { _ struct{} `type:"structure"` - // Indicates when the attachment initiated. - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - AttachTime *string `type:"string"` + // Information about a block device mapping for an Amazon EC2 launch template. + BlockDeviceMappingSet []*AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails `type:"list"` - // The identifier of the network interface attachment - AttachmentId *string `type:"string"` + // Specifies an instance's Capacity Reservation targeting option. You can specify + // only one option at a time. + CapacityReservationSpecification *AwsEc2LaunchTemplateDataCapacityReservationSpecificationDetails `type:"structure"` - // Indicates whether the network interface is deleted when the instance is terminated. - DeleteOnTermination *bool `type:"boolean"` + // Specifies the CPU options for an instance. For more information, see Optimize + // CPU options (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html) + // in the Amazon Elastic Compute Cloud User Guide. + CpuOptions *AwsEc2LaunchTemplateDataCpuOptionsDetails `type:"structure"` - // The device index of the network interface attachment on the instance. - DeviceIndex *int64 `type:"integer"` + // Specifies the credit option for CPU usage of a T2, T3, or T3a instance. + CreditSpecification *AwsEc2LaunchTemplateDataCreditSpecificationDetails `type:"structure"` - // The ID of the instance. - InstanceId *string `type:"string"` + // Indicates whether to enable the instance for stop protection. For more information, + // see Enable stop protection (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Stop_Start.html#Using_StopProtection) + // in the Amazon EC2 User Guide. + DisableApiStop *bool `type:"boolean"` - // The Amazon Web Services account ID of the owner of the instance. - InstanceOwnerId *string `type:"string"` + // If you set this parameter to true, you can't terminate the instance using + // the Amazon EC2 console, CLI, or API. If set to true, you can. + DisableApiTermination *bool `type:"boolean"` - // The attachment state. - // - // Valid values: attaching | attached | detaching | detached - Status *string `type:"string"` + // Indicates whether the instance is optimized for Amazon EBS I/O. + EbsOptimized *bool `type:"boolean"` + + // Provides details about Elastic Graphics accelerators to associate with the + // instance. + ElasticGpuSpecificationSet []*AwsEc2LaunchTemplateDataElasticGpuSpecificationSetDetails `type:"list"` + + // The Amazon Elastic Inference accelerator for the instance. + ElasticInferenceAcceleratorSet []*AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetDetails `type:"list"` + + // Indicates whether the Amazon EC2 instance is enabled for Amazon Web Services + // Nitro Enclaves. + EnclaveOptions *AwsEc2LaunchTemplateDataEnclaveOptionsDetails `type:"structure"` + + // Specifies whether your Amazon EC2 instance is configured for hibernation. + HibernationOptions *AwsEc2LaunchTemplateDataHibernationOptionsDetails `type:"structure"` + + // The name or Amazon Resource Name (ARN) of an IAM instance profile. + IamInstanceProfile *AwsEc2LaunchTemplateDataIamInstanceProfileDetails `type:"structure"` + + // The ID of the Amazon Machine Image (AMI). + ImageId *string `type:"string"` + + // Provides the options for specifying the instance initiated shutdown behavior. + InstanceInitiatedShutdownBehavior *string `type:"string"` + + // Specifies the market (purchasing) option for an instance. + InstanceMarketOptions *AwsEc2LaunchTemplateDataInstanceMarketOptionsDetails `type:"structure"` + + // The attributes for the instance types. When you specify instance attributes, + // Amazon EC2 will identify instance types with these attributes. If you specify + // InstanceRequirements, you can't specify InstanceType. + InstanceRequirements *AwsEc2LaunchTemplateDataInstanceRequirementsDetails `type:"structure"` + + // The instance type. For more information, see Instance types (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) + // in the Amazon EC2 User Guide. If you specify InstanceType, you can't specify + // InstanceRequirements. + InstanceType *string `type:"string"` + + // The ID of the kernel. + KernelId *string `type:"string"` + + // The name of the key pair that allows users to connect to the instance. + KeyName *string `type:"string"` + + // Specifies a license configuration for an instance. + LicenseSet []*AwsEc2LaunchTemplateDataLicenseSetDetails `type:"list"` + + // The maintenance options of your instance. + MaintenanceOptions *AwsEc2LaunchTemplateDataMaintenanceOptionsDetails `type:"structure"` + + // The metadata options for the instance. For more information, see Instance + // metadata and user data (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html) + // in the Amazon EC2 User Guide. + MetadataOptions *AwsEc2LaunchTemplateDataMetadataOptionsDetails `type:"structure"` + + // The monitoring for the instance. + Monitoring *AwsEc2LaunchTemplateDataMonitoringDetails `type:"structure"` + + // Specifies the parameters for a network interface that is attached to the + // instance. + NetworkInterfaceSet []*AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails `type:"list"` + + // Specifies the placement of an instance. + Placement *AwsEc2LaunchTemplateDataPlacementDetails `type:"structure"` + + // The options for the instance hostname. + PrivateDnsNameOptions *AwsEc2LaunchTemplateDataPrivateDnsNameOptionsDetails `type:"structure"` + + // The ID of the RAM disk. + RamDiskId *string `type:"string"` + + // One or more security group IDs. + SecurityGroupIdSet []*string `type:"list"` + + // One or more security group names. For a nondefault VPC, you must use security + // group IDs instead. You cannot specify both a security group ID and security + // name in the same request. + SecurityGroupSet []*string `type:"list"` + + // The user data to make available to the instance. + UserData *string `type:"string"` } // String returns the string representation. @@ -14498,7 +14576,7 @@ type AwsEc2NetworkInterfaceAttachment struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2NetworkInterfaceAttachment) String() string { +func (s AwsEc2LaunchTemplateDataDetails) String() string { return awsutil.Prettify(s) } @@ -14507,154 +14585,197 @@ func (s AwsEc2NetworkInterfaceAttachment) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2NetworkInterfaceAttachment) GoString() string { +func (s AwsEc2LaunchTemplateDataDetails) GoString() string { return s.String() } -// SetAttachTime sets the AttachTime field's value. -func (s *AwsEc2NetworkInterfaceAttachment) SetAttachTime(v string) *AwsEc2NetworkInterfaceAttachment { - s.AttachTime = &v +// SetBlockDeviceMappingSet sets the BlockDeviceMappingSet field's value. +func (s *AwsEc2LaunchTemplateDataDetails) SetBlockDeviceMappingSet(v []*AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails) *AwsEc2LaunchTemplateDataDetails { + s.BlockDeviceMappingSet = v return s } -// SetAttachmentId sets the AttachmentId field's value. -func (s *AwsEc2NetworkInterfaceAttachment) SetAttachmentId(v string) *AwsEc2NetworkInterfaceAttachment { - s.AttachmentId = &v +// SetCapacityReservationSpecification sets the CapacityReservationSpecification field's value. +func (s *AwsEc2LaunchTemplateDataDetails) SetCapacityReservationSpecification(v *AwsEc2LaunchTemplateDataCapacityReservationSpecificationDetails) *AwsEc2LaunchTemplateDataDetails { + s.CapacityReservationSpecification = v return s } -// SetDeleteOnTermination sets the DeleteOnTermination field's value. -func (s *AwsEc2NetworkInterfaceAttachment) SetDeleteOnTermination(v bool) *AwsEc2NetworkInterfaceAttachment { - s.DeleteOnTermination = &v +// SetCpuOptions sets the CpuOptions field's value. +func (s *AwsEc2LaunchTemplateDataDetails) SetCpuOptions(v *AwsEc2LaunchTemplateDataCpuOptionsDetails) *AwsEc2LaunchTemplateDataDetails { + s.CpuOptions = v return s } -// SetDeviceIndex sets the DeviceIndex field's value. -func (s *AwsEc2NetworkInterfaceAttachment) SetDeviceIndex(v int64) *AwsEc2NetworkInterfaceAttachment { - s.DeviceIndex = &v +// SetCreditSpecification sets the CreditSpecification field's value. +func (s *AwsEc2LaunchTemplateDataDetails) SetCreditSpecification(v *AwsEc2LaunchTemplateDataCreditSpecificationDetails) *AwsEc2LaunchTemplateDataDetails { + s.CreditSpecification = v return s } -// SetInstanceId sets the InstanceId field's value. -func (s *AwsEc2NetworkInterfaceAttachment) SetInstanceId(v string) *AwsEc2NetworkInterfaceAttachment { - s.InstanceId = &v +// SetDisableApiStop sets the DisableApiStop field's value. +func (s *AwsEc2LaunchTemplateDataDetails) SetDisableApiStop(v bool) *AwsEc2LaunchTemplateDataDetails { + s.DisableApiStop = &v return s } -// SetInstanceOwnerId sets the InstanceOwnerId field's value. -func (s *AwsEc2NetworkInterfaceAttachment) SetInstanceOwnerId(v string) *AwsEc2NetworkInterfaceAttachment { - s.InstanceOwnerId = &v +// SetDisableApiTermination sets the DisableApiTermination field's value. +func (s *AwsEc2LaunchTemplateDataDetails) SetDisableApiTermination(v bool) *AwsEc2LaunchTemplateDataDetails { + s.DisableApiTermination = &v return s } -// SetStatus sets the Status field's value. -func (s *AwsEc2NetworkInterfaceAttachment) SetStatus(v string) *AwsEc2NetworkInterfaceAttachment { - s.Status = &v +// SetEbsOptimized sets the EbsOptimized field's value. +func (s *AwsEc2LaunchTemplateDataDetails) SetEbsOptimized(v bool) *AwsEc2LaunchTemplateDataDetails { + s.EbsOptimized = &v return s } -// Details about the network interface -type AwsEc2NetworkInterfaceDetails struct { - _ struct{} `type:"structure"` +// SetElasticGpuSpecificationSet sets the ElasticGpuSpecificationSet field's value. +func (s *AwsEc2LaunchTemplateDataDetails) SetElasticGpuSpecificationSet(v []*AwsEc2LaunchTemplateDataElasticGpuSpecificationSetDetails) *AwsEc2LaunchTemplateDataDetails { + s.ElasticGpuSpecificationSet = v + return s +} - // The network interface attachment. - Attachment *AwsEc2NetworkInterfaceAttachment `type:"structure"` +// SetElasticInferenceAcceleratorSet sets the ElasticInferenceAcceleratorSet field's value. +func (s *AwsEc2LaunchTemplateDataDetails) SetElasticInferenceAcceleratorSet(v []*AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetDetails) *AwsEc2LaunchTemplateDataDetails { + s.ElasticInferenceAcceleratorSet = v + return s +} - // The IPv6 addresses associated with the network interface. - IpV6Addresses []*AwsEc2NetworkInterfaceIpV6AddressDetail `type:"list"` +// SetEnclaveOptions sets the EnclaveOptions field's value. +func (s *AwsEc2LaunchTemplateDataDetails) SetEnclaveOptions(v *AwsEc2LaunchTemplateDataEnclaveOptionsDetails) *AwsEc2LaunchTemplateDataDetails { + s.EnclaveOptions = v + return s +} - // The ID of the network interface. - NetworkInterfaceId *string `type:"string"` +// SetHibernationOptions sets the HibernationOptions field's value. +func (s *AwsEc2LaunchTemplateDataDetails) SetHibernationOptions(v *AwsEc2LaunchTemplateDataHibernationOptionsDetails) *AwsEc2LaunchTemplateDataDetails { + s.HibernationOptions = v + return s +} - // The private IPv4 addresses associated with the network interface. - PrivateIpAddresses []*AwsEc2NetworkInterfacePrivateIpAddressDetail `type:"list"` +// SetIamInstanceProfile sets the IamInstanceProfile field's value. +func (s *AwsEc2LaunchTemplateDataDetails) SetIamInstanceProfile(v *AwsEc2LaunchTemplateDataIamInstanceProfileDetails) *AwsEc2LaunchTemplateDataDetails { + s.IamInstanceProfile = v + return s +} - // The public DNS name of the network interface. - PublicDnsName *string `type:"string"` +// SetImageId sets the ImageId field's value. +func (s *AwsEc2LaunchTemplateDataDetails) SetImageId(v string) *AwsEc2LaunchTemplateDataDetails { + s.ImageId = &v + return s +} - // The address of the Elastic IP address bound to the network interface. - PublicIp *string `type:"string"` +// SetInstanceInitiatedShutdownBehavior sets the InstanceInitiatedShutdownBehavior field's value. +func (s *AwsEc2LaunchTemplateDataDetails) SetInstanceInitiatedShutdownBehavior(v string) *AwsEc2LaunchTemplateDataDetails { + s.InstanceInitiatedShutdownBehavior = &v + return s +} - // Security groups for the network interface. - SecurityGroups []*AwsEc2NetworkInterfaceSecurityGroup `type:"list"` +// SetInstanceMarketOptions sets the InstanceMarketOptions field's value. +func (s *AwsEc2LaunchTemplateDataDetails) SetInstanceMarketOptions(v *AwsEc2LaunchTemplateDataInstanceMarketOptionsDetails) *AwsEc2LaunchTemplateDataDetails { + s.InstanceMarketOptions = v + return s +} - // Indicates whether traffic to or from the instance is validated. - SourceDestCheck *bool `type:"boolean"` +// SetInstanceRequirements sets the InstanceRequirements field's value. +func (s *AwsEc2LaunchTemplateDataDetails) SetInstanceRequirements(v *AwsEc2LaunchTemplateDataInstanceRequirementsDetails) *AwsEc2LaunchTemplateDataDetails { + s.InstanceRequirements = v + return s } -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsEc2NetworkInterfaceDetails) String() string { - return awsutil.Prettify(s) +// SetInstanceType sets the InstanceType field's value. +func (s *AwsEc2LaunchTemplateDataDetails) SetInstanceType(v string) *AwsEc2LaunchTemplateDataDetails { + s.InstanceType = &v + return s } -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsEc2NetworkInterfaceDetails) GoString() string { - return s.String() +// SetKernelId sets the KernelId field's value. +func (s *AwsEc2LaunchTemplateDataDetails) SetKernelId(v string) *AwsEc2LaunchTemplateDataDetails { + s.KernelId = &v + return s } -// SetAttachment sets the Attachment field's value. -func (s *AwsEc2NetworkInterfaceDetails) SetAttachment(v *AwsEc2NetworkInterfaceAttachment) *AwsEc2NetworkInterfaceDetails { - s.Attachment = v +// SetKeyName sets the KeyName field's value. +func (s *AwsEc2LaunchTemplateDataDetails) SetKeyName(v string) *AwsEc2LaunchTemplateDataDetails { + s.KeyName = &v return s } -// SetIpV6Addresses sets the IpV6Addresses field's value. -func (s *AwsEc2NetworkInterfaceDetails) SetIpV6Addresses(v []*AwsEc2NetworkInterfaceIpV6AddressDetail) *AwsEc2NetworkInterfaceDetails { - s.IpV6Addresses = v +// SetLicenseSet sets the LicenseSet field's value. +func (s *AwsEc2LaunchTemplateDataDetails) SetLicenseSet(v []*AwsEc2LaunchTemplateDataLicenseSetDetails) *AwsEc2LaunchTemplateDataDetails { + s.LicenseSet = v return s } -// SetNetworkInterfaceId sets the NetworkInterfaceId field's value. -func (s *AwsEc2NetworkInterfaceDetails) SetNetworkInterfaceId(v string) *AwsEc2NetworkInterfaceDetails { - s.NetworkInterfaceId = &v +// SetMaintenanceOptions sets the MaintenanceOptions field's value. +func (s *AwsEc2LaunchTemplateDataDetails) SetMaintenanceOptions(v *AwsEc2LaunchTemplateDataMaintenanceOptionsDetails) *AwsEc2LaunchTemplateDataDetails { + s.MaintenanceOptions = v return s } -// SetPrivateIpAddresses sets the PrivateIpAddresses field's value. -func (s *AwsEc2NetworkInterfaceDetails) SetPrivateIpAddresses(v []*AwsEc2NetworkInterfacePrivateIpAddressDetail) *AwsEc2NetworkInterfaceDetails { - s.PrivateIpAddresses = v +// SetMetadataOptions sets the MetadataOptions field's value. +func (s *AwsEc2LaunchTemplateDataDetails) SetMetadataOptions(v *AwsEc2LaunchTemplateDataMetadataOptionsDetails) *AwsEc2LaunchTemplateDataDetails { + s.MetadataOptions = v return s } -// SetPublicDnsName sets the PublicDnsName field's value. -func (s *AwsEc2NetworkInterfaceDetails) SetPublicDnsName(v string) *AwsEc2NetworkInterfaceDetails { - s.PublicDnsName = &v +// SetMonitoring sets the Monitoring field's value. +func (s *AwsEc2LaunchTemplateDataDetails) SetMonitoring(v *AwsEc2LaunchTemplateDataMonitoringDetails) *AwsEc2LaunchTemplateDataDetails { + s.Monitoring = v return s } -// SetPublicIp sets the PublicIp field's value. -func (s *AwsEc2NetworkInterfaceDetails) SetPublicIp(v string) *AwsEc2NetworkInterfaceDetails { - s.PublicIp = &v +// SetNetworkInterfaceSet sets the NetworkInterfaceSet field's value. +func (s *AwsEc2LaunchTemplateDataDetails) SetNetworkInterfaceSet(v []*AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails) *AwsEc2LaunchTemplateDataDetails { + s.NetworkInterfaceSet = v return s } -// SetSecurityGroups sets the SecurityGroups field's value. -func (s *AwsEc2NetworkInterfaceDetails) SetSecurityGroups(v []*AwsEc2NetworkInterfaceSecurityGroup) *AwsEc2NetworkInterfaceDetails { - s.SecurityGroups = v +// SetPlacement sets the Placement field's value. +func (s *AwsEc2LaunchTemplateDataDetails) SetPlacement(v *AwsEc2LaunchTemplateDataPlacementDetails) *AwsEc2LaunchTemplateDataDetails { + s.Placement = v return s } -// SetSourceDestCheck sets the SourceDestCheck field's value. -func (s *AwsEc2NetworkInterfaceDetails) SetSourceDestCheck(v bool) *AwsEc2NetworkInterfaceDetails { - s.SourceDestCheck = &v +// SetPrivateDnsNameOptions sets the PrivateDnsNameOptions field's value. +func (s *AwsEc2LaunchTemplateDataDetails) SetPrivateDnsNameOptions(v *AwsEc2LaunchTemplateDataPrivateDnsNameOptionsDetails) *AwsEc2LaunchTemplateDataDetails { + s.PrivateDnsNameOptions = v return s } -// Provides information about an IPV6 address that is associated with the network -// interface. -type AwsEc2NetworkInterfaceIpV6AddressDetail struct { +// SetRamDiskId sets the RamDiskId field's value. +func (s *AwsEc2LaunchTemplateDataDetails) SetRamDiskId(v string) *AwsEc2LaunchTemplateDataDetails { + s.RamDiskId = &v + return s +} + +// SetSecurityGroupIdSet sets the SecurityGroupIdSet field's value. +func (s *AwsEc2LaunchTemplateDataDetails) SetSecurityGroupIdSet(v []*string) *AwsEc2LaunchTemplateDataDetails { + s.SecurityGroupIdSet = v + return s +} + +// SetSecurityGroupSet sets the SecurityGroupSet field's value. +func (s *AwsEc2LaunchTemplateDataDetails) SetSecurityGroupSet(v []*string) *AwsEc2LaunchTemplateDataDetails { + s.SecurityGroupSet = v + return s +} + +// SetUserData sets the UserData field's value. +func (s *AwsEc2LaunchTemplateDataDetails) SetUserData(v string) *AwsEc2LaunchTemplateDataDetails { + s.UserData = &v + return s +} + +// Provides details about an Elastic Graphics specification for an Amazon EC2 +// launch template. +type AwsEc2LaunchTemplateDataElasticGpuSpecificationSetDetails struct { _ struct{} `type:"structure"` - // The IPV6 address. - IpV6Address *string `type:"string"` + // The type of Elastic Graphics accelerator. + Type *string `type:"string"` } // String returns the string representation. @@ -14662,7 +14783,7 @@ type AwsEc2NetworkInterfaceIpV6AddressDetail struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2NetworkInterfaceIpV6AddressDetail) String() string { +func (s AwsEc2LaunchTemplateDataElasticGpuSpecificationSetDetails) String() string { return awsutil.Prettify(s) } @@ -14671,26 +14792,25 @@ func (s AwsEc2NetworkInterfaceIpV6AddressDetail) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2NetworkInterfaceIpV6AddressDetail) GoString() string { +func (s AwsEc2LaunchTemplateDataElasticGpuSpecificationSetDetails) GoString() string { return s.String() } -// SetIpV6Address sets the IpV6Address field's value. -func (s *AwsEc2NetworkInterfaceIpV6AddressDetail) SetIpV6Address(v string) *AwsEc2NetworkInterfaceIpV6AddressDetail { - s.IpV6Address = &v +// SetType sets the Type field's value. +func (s *AwsEc2LaunchTemplateDataElasticGpuSpecificationSetDetails) SetType(v string) *AwsEc2LaunchTemplateDataElasticGpuSpecificationSetDetails { + s.Type = &v return s } -// Provides information about a private IPv4 address that is with the network -// interface. -type AwsEc2NetworkInterfacePrivateIpAddressDetail struct { +// Provides details for an Amazon Elastic Inference accelerator. +type AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetDetails struct { _ struct{} `type:"structure"` - // The private DNS name for the IP address. - PrivateDnsName *string `type:"string"` + // The number of Elastic Inference accelerators to attach to the instance. + Count *int64 `type:"integer"` - // The IP address. - PrivateIpAddress *string `type:"string"` + // The type of Elastic Inference accelerator. + Type *string `type:"string"` } // String returns the string representation. @@ -14698,7 +14818,7 @@ type AwsEc2NetworkInterfacePrivateIpAddressDetail struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2NetworkInterfacePrivateIpAddressDetail) String() string { +func (s AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetDetails) String() string { return awsutil.Prettify(s) } @@ -14707,31 +14827,29 @@ func (s AwsEc2NetworkInterfacePrivateIpAddressDetail) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2NetworkInterfacePrivateIpAddressDetail) GoString() string { +func (s AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetDetails) GoString() string { return s.String() } -// SetPrivateDnsName sets the PrivateDnsName field's value. -func (s *AwsEc2NetworkInterfacePrivateIpAddressDetail) SetPrivateDnsName(v string) *AwsEc2NetworkInterfacePrivateIpAddressDetail { - s.PrivateDnsName = &v +// SetCount sets the Count field's value. +func (s *AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetDetails) SetCount(v int64) *AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetDetails { + s.Count = &v return s } -// SetPrivateIpAddress sets the PrivateIpAddress field's value. -func (s *AwsEc2NetworkInterfacePrivateIpAddressDetail) SetPrivateIpAddress(v string) *AwsEc2NetworkInterfacePrivateIpAddressDetail { - s.PrivateIpAddress = &v +// SetType sets the Type field's value. +func (s *AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetDetails) SetType(v string) *AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetDetails { + s.Type = &v return s } -// A security group associated with the network interface. -type AwsEc2NetworkInterfaceSecurityGroup struct { +// Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves. +type AwsEc2LaunchTemplateDataEnclaveOptionsDetails struct { _ struct{} `type:"structure"` - // The ID of the security group. - GroupId *string `type:"string"` - - // The name of the security group. - GroupName *string `type:"string"` + // If this parameter is set to true, the instance is enabled for Amazon Web + // Services Nitro Enclaves. + Enabled *bool `type:"boolean"` } // String returns the string representation. @@ -14739,7 +14857,7 @@ type AwsEc2NetworkInterfaceSecurityGroup struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2NetworkInterfaceSecurityGroup) String() string { +func (s AwsEc2LaunchTemplateDataEnclaveOptionsDetails) String() string { return awsutil.Prettify(s) } @@ -14748,43 +14866,22 @@ func (s AwsEc2NetworkInterfaceSecurityGroup) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2NetworkInterfaceSecurityGroup) GoString() string { +func (s AwsEc2LaunchTemplateDataEnclaveOptionsDetails) GoString() string { return s.String() } -// SetGroupId sets the GroupId field's value. -func (s *AwsEc2NetworkInterfaceSecurityGroup) SetGroupId(v string) *AwsEc2NetworkInterfaceSecurityGroup { - s.GroupId = &v - return s -} - -// SetGroupName sets the GroupName field's value. -func (s *AwsEc2NetworkInterfaceSecurityGroup) SetGroupName(v string) *AwsEc2NetworkInterfaceSecurityGroup { - s.GroupName = &v +// SetEnabled sets the Enabled field's value. +func (s *AwsEc2LaunchTemplateDataEnclaveOptionsDetails) SetEnabled(v bool) *AwsEc2LaunchTemplateDataEnclaveOptionsDetails { + s.Enabled = &v return s } -// Details about an Amazon EC2 security group. -type AwsEc2SecurityGroupDetails struct { +// Specifies whether your Amazon EC2 instance is configured for hibernation. +type AwsEc2LaunchTemplateDataHibernationOptionsDetails struct { _ struct{} `type:"structure"` - // The ID of the security group. - GroupId *string `type:"string"` - - // The name of the security group. - GroupName *string `type:"string"` - - // The inbound rules associated with the security group. - IpPermissions []*AwsEc2SecurityGroupIpPermission `type:"list"` - - // [VPC only] The outbound rules associated with the security group. - IpPermissionsEgress []*AwsEc2SecurityGroupIpPermission `type:"list"` - - // The Amazon Web Services account ID of the owner of the security group. - OwnerId *string `type:"string"` - - // [VPC only] The ID of the VPC for the security group. - VpcId *string `type:"string"` + // If you set this parameter to true, the instance is enabled for hibernation. + Configured *bool `type:"boolean"` } // String returns the string representation. @@ -14792,7 +14889,7 @@ type AwsEc2SecurityGroupDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2SecurityGroupDetails) String() string { +func (s AwsEc2LaunchTemplateDataHibernationOptionsDetails) String() string { return awsutil.Prettify(s) } @@ -14801,91 +14898,67 @@ func (s AwsEc2SecurityGroupDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2SecurityGroupDetails) GoString() string { +func (s AwsEc2LaunchTemplateDataHibernationOptionsDetails) GoString() string { return s.String() } -// SetGroupId sets the GroupId field's value. -func (s *AwsEc2SecurityGroupDetails) SetGroupId(v string) *AwsEc2SecurityGroupDetails { - s.GroupId = &v +// SetConfigured sets the Configured field's value. +func (s *AwsEc2LaunchTemplateDataHibernationOptionsDetails) SetConfigured(v bool) *AwsEc2LaunchTemplateDataHibernationOptionsDetails { + s.Configured = &v return s } -// SetGroupName sets the GroupName field's value. -func (s *AwsEc2SecurityGroupDetails) SetGroupName(v string) *AwsEc2SecurityGroupDetails { - s.GroupName = &v - return s +// Provides details for an Identity and Access Management (IAM) instance profile, +// which is a container for an IAM role for your instance. +type AwsEc2LaunchTemplateDataIamInstanceProfileDetails struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the instance profile. + Arn *string `type:"string"` + + // The name of the instance profile. + Name *string `type:"string"` } -// SetIpPermissions sets the IpPermissions field's value. -func (s *AwsEc2SecurityGroupDetails) SetIpPermissions(v []*AwsEc2SecurityGroupIpPermission) *AwsEc2SecurityGroupDetails { - s.IpPermissions = v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2LaunchTemplateDataIamInstanceProfileDetails) String() string { + return awsutil.Prettify(s) } -// SetIpPermissionsEgress sets the IpPermissionsEgress field's value. -func (s *AwsEc2SecurityGroupDetails) SetIpPermissionsEgress(v []*AwsEc2SecurityGroupIpPermission) *AwsEc2SecurityGroupDetails { - s.IpPermissionsEgress = v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2LaunchTemplateDataIamInstanceProfileDetails) GoString() string { + return s.String() } -// SetOwnerId sets the OwnerId field's value. -func (s *AwsEc2SecurityGroupDetails) SetOwnerId(v string) *AwsEc2SecurityGroupDetails { - s.OwnerId = &v +// SetArn sets the Arn field's value. +func (s *AwsEc2LaunchTemplateDataIamInstanceProfileDetails) SetArn(v string) *AwsEc2LaunchTemplateDataIamInstanceProfileDetails { + s.Arn = &v return s } -// SetVpcId sets the VpcId field's value. -func (s *AwsEc2SecurityGroupDetails) SetVpcId(v string) *AwsEc2SecurityGroupDetails { - s.VpcId = &v +// SetName sets the Name field's value. +func (s *AwsEc2LaunchTemplateDataIamInstanceProfileDetails) SetName(v string) *AwsEc2LaunchTemplateDataIamInstanceProfileDetails { + s.Name = &v return s } -// An IP permission for an EC2 security group. -type AwsEc2SecurityGroupIpPermission struct { +// Provides details about the market (purchasing) option for an Amazon EC2 instance. +type AwsEc2LaunchTemplateDataInstanceMarketOptionsDetails struct { _ struct{} `type:"structure"` - // The start of the port range for the TCP and UDP protocols, or an ICMP/ICMPv6 - // type number. - // - // A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 - // types, you must specify all codes. - FromPort *int64 `type:"integer"` + // The market type. + MarketType *string `type:"string"` - // The IP protocol name (tcp, udp, icmp, icmpv6) or number. - // - // [VPC only] Use -1 to specify all protocols. - // - // When authorizing security group rules, specifying -1 or a protocol number - // other than tcp, udp, icmp, or icmpv6 allows traffic on all ports, regardless - // of any port range you specify. - // - // For tcp, udp, and icmp, you must specify a port range. - // - // For icmpv6, the port range is optional. If you omit the port range, traffic - // for all types and codes is allowed. - IpProtocol *string `type:"string"` - - // The IPv4 ranges. - IpRanges []*AwsEc2SecurityGroupIpRange `type:"list"` - - // The IPv6 ranges. - Ipv6Ranges []*AwsEc2SecurityGroupIpv6Range `type:"list"` - - // [VPC only] The prefix list IDs for an Amazon Web Services service. With outbound - // rules, this is the Amazon Web Services service to access through a VPC endpoint - // from instances associated with the security group. - PrefixListIds []*AwsEc2SecurityGroupPrefixListId `type:"list"` - - // The end of the port range for the TCP and UDP protocols, or an ICMP/ICMPv6 - // code. - // - // A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 - // types, you must specify all codes. - ToPort *int64 `type:"integer"` - - // The security group and Amazon Web Services account ID pairs. - UserIdGroupPairs []*AwsEc2SecurityGroupUserIdGroupPair `type:"list"` + // The options for Spot Instances. + SpotOptions *AwsEc2LaunchTemplateDataInstanceMarketOptionsSpotOptionsDetails `type:"structure"` } // String returns the string representation. @@ -14893,7 +14966,7 @@ type AwsEc2SecurityGroupIpPermission struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2SecurityGroupIpPermission) String() string { +func (s AwsEc2LaunchTemplateDataInstanceMarketOptionsDetails) String() string { return awsutil.Prettify(s) } @@ -14902,60 +14975,41 @@ func (s AwsEc2SecurityGroupIpPermission) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2SecurityGroupIpPermission) GoString() string { +func (s AwsEc2LaunchTemplateDataInstanceMarketOptionsDetails) GoString() string { return s.String() } -// SetFromPort sets the FromPort field's value. -func (s *AwsEc2SecurityGroupIpPermission) SetFromPort(v int64) *AwsEc2SecurityGroupIpPermission { - s.FromPort = &v - return s -} - -// SetIpProtocol sets the IpProtocol field's value. -func (s *AwsEc2SecurityGroupIpPermission) SetIpProtocol(v string) *AwsEc2SecurityGroupIpPermission { - s.IpProtocol = &v +// SetMarketType sets the MarketType field's value. +func (s *AwsEc2LaunchTemplateDataInstanceMarketOptionsDetails) SetMarketType(v string) *AwsEc2LaunchTemplateDataInstanceMarketOptionsDetails { + s.MarketType = &v return s } -// SetIpRanges sets the IpRanges field's value. -func (s *AwsEc2SecurityGroupIpPermission) SetIpRanges(v []*AwsEc2SecurityGroupIpRange) *AwsEc2SecurityGroupIpPermission { - s.IpRanges = v +// SetSpotOptions sets the SpotOptions field's value. +func (s *AwsEc2LaunchTemplateDataInstanceMarketOptionsDetails) SetSpotOptions(v *AwsEc2LaunchTemplateDataInstanceMarketOptionsSpotOptionsDetails) *AwsEc2LaunchTemplateDataInstanceMarketOptionsDetails { + s.SpotOptions = v return s } -// SetIpv6Ranges sets the Ipv6Ranges field's value. -func (s *AwsEc2SecurityGroupIpPermission) SetIpv6Ranges(v []*AwsEc2SecurityGroupIpv6Range) *AwsEc2SecurityGroupIpPermission { - s.Ipv6Ranges = v - return s -} +// Provides details about the market (purchasing) options for Spot Instances. +type AwsEc2LaunchTemplateDataInstanceMarketOptionsSpotOptionsDetails struct { + _ struct{} `type:"structure"` -// SetPrefixListIds sets the PrefixListIds field's value. -func (s *AwsEc2SecurityGroupIpPermission) SetPrefixListIds(v []*AwsEc2SecurityGroupPrefixListId) *AwsEc2SecurityGroupIpPermission { - s.PrefixListIds = v - return s -} + // Deprecated. + BlockDurationMinutes *int64 `type:"integer"` -// SetToPort sets the ToPort field's value. -func (s *AwsEc2SecurityGroupIpPermission) SetToPort(v int64) *AwsEc2SecurityGroupIpPermission { - s.ToPort = &v - return s -} + // The behavior when a Spot Instance is interrupted. + InstanceInterruptionBehavior *string `type:"string"` -// SetUserIdGroupPairs sets the UserIdGroupPairs field's value. -func (s *AwsEc2SecurityGroupIpPermission) SetUserIdGroupPairs(v []*AwsEc2SecurityGroupUserIdGroupPair) *AwsEc2SecurityGroupIpPermission { - s.UserIdGroupPairs = v - return s -} + // The maximum hourly price you're willing to pay for the Spot Instances. + MaxPrice *string `type:"string"` -// A range of IPv4 addresses. -type AwsEc2SecurityGroupIpRange struct { - _ struct{} `type:"structure"` + // The Spot Instance request type. + SpotInstanceType *string `type:"string"` - // The IPv4 CIDR range. You can specify either a CIDR range or a source security - // group, but not both. To specify a single IPv4 address, use the /32 prefix - // length. - CidrIp *string `type:"string"` + // The end date of the request, in UTC format (YYYY-MM-DDTHH:MM:SSZ), for persistent + // requests. + ValidUntil *string `type:"string"` } // String returns the string representation. @@ -14963,7 +15017,7 @@ type AwsEc2SecurityGroupIpRange struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2SecurityGroupIpRange) String() string { +func (s AwsEc2LaunchTemplateDataInstanceMarketOptionsSpotOptionsDetails) String() string { return awsutil.Prettify(s) } @@ -14972,24 +15026,53 @@ func (s AwsEc2SecurityGroupIpRange) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2SecurityGroupIpRange) GoString() string { +func (s AwsEc2LaunchTemplateDataInstanceMarketOptionsSpotOptionsDetails) GoString() string { return s.String() } -// SetCidrIp sets the CidrIp field's value. -func (s *AwsEc2SecurityGroupIpRange) SetCidrIp(v string) *AwsEc2SecurityGroupIpRange { - s.CidrIp = &v +// SetBlockDurationMinutes sets the BlockDurationMinutes field's value. +func (s *AwsEc2LaunchTemplateDataInstanceMarketOptionsSpotOptionsDetails) SetBlockDurationMinutes(v int64) *AwsEc2LaunchTemplateDataInstanceMarketOptionsSpotOptionsDetails { + s.BlockDurationMinutes = &v return s } -// A range of IPv6 addresses. -type AwsEc2SecurityGroupIpv6Range struct { +// SetInstanceInterruptionBehavior sets the InstanceInterruptionBehavior field's value. +func (s *AwsEc2LaunchTemplateDataInstanceMarketOptionsSpotOptionsDetails) SetInstanceInterruptionBehavior(v string) *AwsEc2LaunchTemplateDataInstanceMarketOptionsSpotOptionsDetails { + s.InstanceInterruptionBehavior = &v + return s +} + +// SetMaxPrice sets the MaxPrice field's value. +func (s *AwsEc2LaunchTemplateDataInstanceMarketOptionsSpotOptionsDetails) SetMaxPrice(v string) *AwsEc2LaunchTemplateDataInstanceMarketOptionsSpotOptionsDetails { + s.MaxPrice = &v + return s +} + +// SetSpotInstanceType sets the SpotInstanceType field's value. +func (s *AwsEc2LaunchTemplateDataInstanceMarketOptionsSpotOptionsDetails) SetSpotInstanceType(v string) *AwsEc2LaunchTemplateDataInstanceMarketOptionsSpotOptionsDetails { + s.SpotInstanceType = &v + return s +} + +// SetValidUntil sets the ValidUntil field's value. +func (s *AwsEc2LaunchTemplateDataInstanceMarketOptionsSpotOptionsDetails) SetValidUntil(v string) *AwsEc2LaunchTemplateDataInstanceMarketOptionsSpotOptionsDetails { + s.ValidUntil = &v + return s +} + +// The minimum and maximum number of accelerators (GPUs, FPGAs, or Amazon Web +// Services Inferentia chips) on an Amazon EC2 instance. +type AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorCountDetails struct { _ struct{} `type:"structure"` - // The IPv6 CIDR range. You can specify either a CIDR range or a source security - // group, but not both. To specify a single IPv6 address, use the /128 prefix - // length. - CidrIpv6 *string `type:"string"` + // The maximum number of accelerators. If this parameter isn't specified, there's + // no maximum limit. To exclude accelerator-enabled instance types, set Max + // to 0. + Max *int64 `type:"integer"` + + // The minimum number of accelerators. If this parameter isn't specified, there's + // no minimum limit. + Min *int64 `type:"integer"` } // String returns the string representation. @@ -14997,7 +15080,7 @@ type AwsEc2SecurityGroupIpv6Range struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2SecurityGroupIpv6Range) String() string { +func (s AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorCountDetails) String() string { return awsutil.Prettify(s) } @@ -15006,22 +15089,34 @@ func (s AwsEc2SecurityGroupIpv6Range) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2SecurityGroupIpv6Range) GoString() string { +func (s AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorCountDetails) GoString() string { return s.String() } -// SetCidrIpv6 sets the CidrIpv6 field's value. -func (s *AwsEc2SecurityGroupIpv6Range) SetCidrIpv6(v string) *AwsEc2SecurityGroupIpv6Range { - s.CidrIpv6 = &v +// SetMax sets the Max field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorCountDetails) SetMax(v int64) *AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorCountDetails { + s.Max = &v return s } -// A prefix list ID. -type AwsEc2SecurityGroupPrefixListId struct { +// SetMin sets the Min field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorCountDetails) SetMin(v int64) *AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorCountDetails { + s.Min = &v + return s +} + +// The minimum and maximum amount of memory, in MiB, for the accelerators on +// an Amazon EC2 instance. +type AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorTotalMemoryMiBDetails struct { _ struct{} `type:"structure"` - // The ID of the prefix. - PrefixListId *string `type:"string"` + // The maximum amount of memory, in MiB. If this parameter isn't specified, + // there's no maximum limit. + Max *int64 `type:"integer"` + + // The minimum amount of memory, in MiB. If 0 is specified, there's no maximum + // limit. + Min *int64 `type:"integer"` } // String returns the string representation. @@ -15029,7 +15124,7 @@ type AwsEc2SecurityGroupPrefixListId struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2SecurityGroupPrefixListId) String() string { +func (s AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorTotalMemoryMiBDetails) String() string { return awsutil.Prettify(s) } @@ -15038,44 +15133,36 @@ func (s AwsEc2SecurityGroupPrefixListId) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2SecurityGroupPrefixListId) GoString() string { +func (s AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorTotalMemoryMiBDetails) GoString() string { return s.String() } -// SetPrefixListId sets the PrefixListId field's value. -func (s *AwsEc2SecurityGroupPrefixListId) SetPrefixListId(v string) *AwsEc2SecurityGroupPrefixListId { - s.PrefixListId = &v +// SetMax sets the Max field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorTotalMemoryMiBDetails) SetMax(v int64) *AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorTotalMemoryMiBDetails { + s.Max = &v return s } -// A relationship between a security group and a user. -type AwsEc2SecurityGroupUserIdGroupPair struct { - _ struct{} `type:"structure"` - - // The ID of the security group. - GroupId *string `type:"string"` - - // The name of the security group. - GroupName *string `type:"string"` - - // The status of a VPC peering connection, if applicable. - PeeringStatus *string `type:"string"` +// SetMin sets the Min field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorTotalMemoryMiBDetails) SetMin(v int64) *AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorTotalMemoryMiBDetails { + s.Min = &v + return s +} - // The ID of an Amazon Web Services account. - // - // For a referenced security group in another VPC, the account ID of the referenced - // security group is returned in the response. If the referenced security group - // is deleted, this value is not returned. - // - // [EC2-Classic] Required when adding or removing rules that reference a security - // group in another VPC. - UserId *string `type:"string"` +// The minimum and maximum baseline bandwidth to Amazon Elastic Block Store +// (Amazon EBS), in Mbps. For more information, see Amazon EBS–optimized instances +// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-optimized.html) +// in the Amazon EC2 User Guide. +type AwsEc2LaunchTemplateDataInstanceRequirementsBaselineEbsBandwidthMbpsDetails struct { + _ struct{} `type:"structure"` - // The ID of the VPC for the referenced security group, if applicable. - VpcId *string `type:"string"` + // The maximum baseline bandwidth, in Mbps. If this parameter is omitted, there's + // no maximum limit. + Max *int64 `type:"integer"` - // The ID of the VPC peering connection, if applicable. - VpcPeeringConnectionId *string `type:"string"` + // The minimum baseline bandwidth, in Mbps. If this parameter is omitted, there's + // no minimum limit. + Min *int64 `type:"integer"` } // String returns the string representation. @@ -15083,7 +15170,7 @@ type AwsEc2SecurityGroupUserIdGroupPair struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2SecurityGroupUserIdGroupPair) String() string { +func (s AwsEc2LaunchTemplateDataInstanceRequirementsBaselineEbsBandwidthMbpsDetails) String() string { return awsutil.Prettify(s) } @@ -15092,90 +15179,113 @@ func (s AwsEc2SecurityGroupUserIdGroupPair) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2SecurityGroupUserIdGroupPair) GoString() string { +func (s AwsEc2LaunchTemplateDataInstanceRequirementsBaselineEbsBandwidthMbpsDetails) GoString() string { return s.String() } -// SetGroupId sets the GroupId field's value. -func (s *AwsEc2SecurityGroupUserIdGroupPair) SetGroupId(v string) *AwsEc2SecurityGroupUserIdGroupPair { - s.GroupId = &v +// SetMax sets the Max field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsBaselineEbsBandwidthMbpsDetails) SetMax(v int64) *AwsEc2LaunchTemplateDataInstanceRequirementsBaselineEbsBandwidthMbpsDetails { + s.Max = &v return s } -// SetGroupName sets the GroupName field's value. -func (s *AwsEc2SecurityGroupUserIdGroupPair) SetGroupName(v string) *AwsEc2SecurityGroupUserIdGroupPair { - s.GroupName = &v +// SetMin sets the Min field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsBaselineEbsBandwidthMbpsDetails) SetMin(v int64) *AwsEc2LaunchTemplateDataInstanceRequirementsBaselineEbsBandwidthMbpsDetails { + s.Min = &v return s } -// SetPeeringStatus sets the PeeringStatus field's value. -func (s *AwsEc2SecurityGroupUserIdGroupPair) SetPeeringStatus(v string) *AwsEc2SecurityGroupUserIdGroupPair { - s.PeeringStatus = &v - return s -} +// The attributes for the Amazon EC2 instance types. +type AwsEc2LaunchTemplateDataInstanceRequirementsDetails struct { + _ struct{} `type:"structure"` -// SetUserId sets the UserId field's value. -func (s *AwsEc2SecurityGroupUserIdGroupPair) SetUserId(v string) *AwsEc2SecurityGroupUserIdGroupPair { - s.UserId = &v - return s -} + // The minimum and maximum number of accelerators (GPUs, FPGAs, or Amazon Web + // Services Inferentia chips) on an instance. + AcceleratorCount *AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorCountDetails `type:"structure"` -// SetVpcId sets the VpcId field's value. -func (s *AwsEc2SecurityGroupUserIdGroupPair) SetVpcId(v string) *AwsEc2SecurityGroupUserIdGroupPair { - s.VpcId = &v - return s -} + // Indicates whether instance types must have accelerators by specific manufacturers. + AcceleratorManufacturers []*string `type:"list"` -// SetVpcPeeringConnectionId sets the VpcPeeringConnectionId field's value. -func (s *AwsEc2SecurityGroupUserIdGroupPair) SetVpcPeeringConnectionId(v string) *AwsEc2SecurityGroupUserIdGroupPair { - s.VpcPeeringConnectionId = &v - return s -} + // The accelerators that must be on the instance type. + AcceleratorNames []*string `type:"list"` -// Contains information about a subnet in Amazon EC2. -type AwsEc2SubnetDetails struct { - _ struct{} `type:"structure"` + // The minimum and maximum amount of total accelerator memory, in MiB. + AcceleratorTotalMemoryMiB *AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorTotalMemoryMiBDetails `type:"structure"` - // Whether to assign an IPV6 address to a network interface that is created - // in this subnet. - AssignIpv6AddressOnCreation *bool `type:"boolean"` + // The accelerator types that must be on the instance type. + AcceleratorTypes []*string `type:"list"` - // The Availability Zone for the subnet. - AvailabilityZone *string `type:"string"` + // Indicates whether bare metal instance types must be included, excluded, or + // required. + BareMetal *string `type:"string"` - // The identifier of the Availability Zone for the subnet. - AvailabilityZoneId *string `type:"string"` + // The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For more + // information, see Amazon EBS optimized instances (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-optimized.html) + // in the Amazon EC2 User Guide. + BaselineEbsBandwidthMbps *AwsEc2LaunchTemplateDataInstanceRequirementsBaselineEbsBandwidthMbpsDetails `type:"structure"` - // The number of available IPV4 addresses in the subnet. Does not include addresses - // for stopped instances. - AvailableIpAddressCount *int64 `type:"integer"` + // Indicates whether burstable performance T instance types are included, excluded, + // or required. For more information, Burstable performance instances (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html) + // in the Amazon EC2 User Guide. + BurstablePerformance *string `type:"string"` - // The IPV4 CIDR block that is assigned to the subnet. - CidrBlock *string `type:"string"` + // The CPU manufacturers to include. + CpuManufacturers []*string `type:"list"` - // Whether this subnet is the default subnet for the Availability Zone. - DefaultForAz *bool `type:"boolean"` + // The instance types to exclude. + ExcludedInstanceTypes []*string `type:"list"` - // The IPV6 CIDR blocks that are associated with the subnet. - Ipv6CidrBlockAssociationSet []*Ipv6CidrBlockAssociation `type:"list"` + // Indicates whether current or previous generation instance types are included. + InstanceGenerations []*string `type:"list"` - // Whether instances in this subnet receive a public IP address. - MapPublicIpOnLaunch *bool `type:"boolean"` + // Indicates whether instance types with instance store volumes are included, + // excluded, or required. For more information, see Amazon EC2 instance store + // (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html) + // in the Amazon EC2 User Guide. + LocalStorage *string `type:"string"` - // The identifier of the Amazon Web Services account that owns the subnet. - OwnerId *string `type:"string"` + // The type of local storage that is required. + LocalStorageTypes []*string `type:"list"` - // The current state of the subnet. Valid values are available or pending. - State *string `type:"string"` + // The minimum and maximum amount of memory per vCPU, in GiB. + MemoryGiBPerVCpu *AwsEc2LaunchTemplateDataInstanceRequirementsMemoryGiBPerVCpuDetails `type:"structure"` - // The ARN of the subnet. - SubnetArn *string `type:"string"` + // The minimum and maximum amount of memory, in MiB. + MemoryMiB *AwsEc2LaunchTemplateDataInstanceRequirementsMemoryMiBDetails `type:"structure"` - // The identifier of the subnet. - SubnetId *string `type:"string"` + // The minimum and maximum number of network interfaces. + NetworkInterfaceCount *AwsEc2LaunchTemplateDataInstanceRequirementsNetworkInterfaceCountDetails `type:"structure"` - // The identifier of the VPC that contains the subnet. - VpcId *string `type:"string"` + // The price protection threshold for On-Demand Instances. This is the maximum + // you’ll pay for an On-Demand Instance, expressed as a percentage above the + // least expensive current generation M, C, or R instance type with your specified + // attributes. When Amazon EC2 selects instance types with your attributes, + // it excludes instance types priced above your threshold. + // + // The parameter accepts an integer, which Amazon EC2 interprets as a percentage. + // + // A high value, such as 999999, turns off price protection. + OnDemandMaxPricePercentageOverLowestPrice *int64 `type:"integer"` + + // Indicates whether instance types must support hibernation for On-Demand Instances. + RequireHibernateSupport *bool `type:"boolean"` + + // The price protection threshold for Spot Instances. This is the maximum you’ll + // pay for a Spot Instance, expressed as a percentage above the least expensive + // current generation M, C, or R instance type with your specified attributes. + // When Amazon EC2 selects instance types with your attributes, it excludes + // instance types priced above your threshold. + // + // The parameter accepts an integer, which Amazon EC2 interprets as a percentage. + // + // A high value, such as 999999, turns off price protection. + SpotMaxPricePercentageOverLowestPrice *int64 `type:"integer"` + + // The minimum and maximum amount of total local storage, in GB. + TotalLocalStorageGB *AwsEc2LaunchTemplateDataInstanceRequirementsTotalLocalStorageGBDetails `type:"structure"` + + // The minimum and maximum number of vCPUs. + VCpuCount *AwsEc2LaunchTemplateDataInstanceRequirementsVCpuCountDetails `type:"structure"` } // String returns the string representation. @@ -15183,7 +15293,7 @@ type AwsEc2SubnetDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2SubnetDetails) String() string { +func (s AwsEc2LaunchTemplateDataInstanceRequirementsDetails) String() string { return awsutil.Prettify(s) } @@ -15192,130 +15302,147 @@ func (s AwsEc2SubnetDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2SubnetDetails) GoString() string { +func (s AwsEc2LaunchTemplateDataInstanceRequirementsDetails) GoString() string { return s.String() } -// SetAssignIpv6AddressOnCreation sets the AssignIpv6AddressOnCreation field's value. -func (s *AwsEc2SubnetDetails) SetAssignIpv6AddressOnCreation(v bool) *AwsEc2SubnetDetails { - s.AssignIpv6AddressOnCreation = &v +// SetAcceleratorCount sets the AcceleratorCount field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsDetails) SetAcceleratorCount(v *AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorCountDetails) *AwsEc2LaunchTemplateDataInstanceRequirementsDetails { + s.AcceleratorCount = v return s } -// SetAvailabilityZone sets the AvailabilityZone field's value. -func (s *AwsEc2SubnetDetails) SetAvailabilityZone(v string) *AwsEc2SubnetDetails { - s.AvailabilityZone = &v +// SetAcceleratorManufacturers sets the AcceleratorManufacturers field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsDetails) SetAcceleratorManufacturers(v []*string) *AwsEc2LaunchTemplateDataInstanceRequirementsDetails { + s.AcceleratorManufacturers = v return s } -// SetAvailabilityZoneId sets the AvailabilityZoneId field's value. -func (s *AwsEc2SubnetDetails) SetAvailabilityZoneId(v string) *AwsEc2SubnetDetails { - s.AvailabilityZoneId = &v +// SetAcceleratorNames sets the AcceleratorNames field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsDetails) SetAcceleratorNames(v []*string) *AwsEc2LaunchTemplateDataInstanceRequirementsDetails { + s.AcceleratorNames = v return s } -// SetAvailableIpAddressCount sets the AvailableIpAddressCount field's value. -func (s *AwsEc2SubnetDetails) SetAvailableIpAddressCount(v int64) *AwsEc2SubnetDetails { - s.AvailableIpAddressCount = &v +// SetAcceleratorTotalMemoryMiB sets the AcceleratorTotalMemoryMiB field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsDetails) SetAcceleratorTotalMemoryMiB(v *AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorTotalMemoryMiBDetails) *AwsEc2LaunchTemplateDataInstanceRequirementsDetails { + s.AcceleratorTotalMemoryMiB = v return s } -// SetCidrBlock sets the CidrBlock field's value. -func (s *AwsEc2SubnetDetails) SetCidrBlock(v string) *AwsEc2SubnetDetails { - s.CidrBlock = &v +// SetAcceleratorTypes sets the AcceleratorTypes field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsDetails) SetAcceleratorTypes(v []*string) *AwsEc2LaunchTemplateDataInstanceRequirementsDetails { + s.AcceleratorTypes = v return s } -// SetDefaultForAz sets the DefaultForAz field's value. -func (s *AwsEc2SubnetDetails) SetDefaultForAz(v bool) *AwsEc2SubnetDetails { - s.DefaultForAz = &v +// SetBareMetal sets the BareMetal field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsDetails) SetBareMetal(v string) *AwsEc2LaunchTemplateDataInstanceRequirementsDetails { + s.BareMetal = &v return s } -// SetIpv6CidrBlockAssociationSet sets the Ipv6CidrBlockAssociationSet field's value. -func (s *AwsEc2SubnetDetails) SetIpv6CidrBlockAssociationSet(v []*Ipv6CidrBlockAssociation) *AwsEc2SubnetDetails { - s.Ipv6CidrBlockAssociationSet = v +// SetBaselineEbsBandwidthMbps sets the BaselineEbsBandwidthMbps field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsDetails) SetBaselineEbsBandwidthMbps(v *AwsEc2LaunchTemplateDataInstanceRequirementsBaselineEbsBandwidthMbpsDetails) *AwsEc2LaunchTemplateDataInstanceRequirementsDetails { + s.BaselineEbsBandwidthMbps = v return s } -// SetMapPublicIpOnLaunch sets the MapPublicIpOnLaunch field's value. -func (s *AwsEc2SubnetDetails) SetMapPublicIpOnLaunch(v bool) *AwsEc2SubnetDetails { - s.MapPublicIpOnLaunch = &v +// SetBurstablePerformance sets the BurstablePerformance field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsDetails) SetBurstablePerformance(v string) *AwsEc2LaunchTemplateDataInstanceRequirementsDetails { + s.BurstablePerformance = &v return s } -// SetOwnerId sets the OwnerId field's value. -func (s *AwsEc2SubnetDetails) SetOwnerId(v string) *AwsEc2SubnetDetails { - s.OwnerId = &v +// SetCpuManufacturers sets the CpuManufacturers field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsDetails) SetCpuManufacturers(v []*string) *AwsEc2LaunchTemplateDataInstanceRequirementsDetails { + s.CpuManufacturers = v return s } -// SetState sets the State field's value. -func (s *AwsEc2SubnetDetails) SetState(v string) *AwsEc2SubnetDetails { - s.State = &v +// SetExcludedInstanceTypes sets the ExcludedInstanceTypes field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsDetails) SetExcludedInstanceTypes(v []*string) *AwsEc2LaunchTemplateDataInstanceRequirementsDetails { + s.ExcludedInstanceTypes = v return s } -// SetSubnetArn sets the SubnetArn field's value. -func (s *AwsEc2SubnetDetails) SetSubnetArn(v string) *AwsEc2SubnetDetails { - s.SubnetArn = &v +// SetInstanceGenerations sets the InstanceGenerations field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsDetails) SetInstanceGenerations(v []*string) *AwsEc2LaunchTemplateDataInstanceRequirementsDetails { + s.InstanceGenerations = v return s } -// SetSubnetId sets the SubnetId field's value. -func (s *AwsEc2SubnetDetails) SetSubnetId(v string) *AwsEc2SubnetDetails { - s.SubnetId = &v +// SetLocalStorage sets the LocalStorage field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsDetails) SetLocalStorage(v string) *AwsEc2LaunchTemplateDataInstanceRequirementsDetails { + s.LocalStorage = &v return s } -// SetVpcId sets the VpcId field's value. -func (s *AwsEc2SubnetDetails) SetVpcId(v string) *AwsEc2SubnetDetails { - s.VpcId = &v +// SetLocalStorageTypes sets the LocalStorageTypes field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsDetails) SetLocalStorageTypes(v []*string) *AwsEc2LaunchTemplateDataInstanceRequirementsDetails { + s.LocalStorageTypes = v return s } -// Information about an Amazon Web Services Amazon EC2 Transit Gateway that -// interconnects virtual private clouds (VPCs) and on-premises networks. -type AwsEc2TransitGatewayDetails struct { - _ struct{} `type:"structure"` - - // A private Autonomous System Number (ASN) for the Amazon side of a BGP session. - AmazonSideAsn *int64 `type:"integer"` - - // The ID of the default association route table. - AssociationDefaultRouteTableId *string `type:"string"` +// SetMemoryGiBPerVCpu sets the MemoryGiBPerVCpu field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsDetails) SetMemoryGiBPerVCpu(v *AwsEc2LaunchTemplateDataInstanceRequirementsMemoryGiBPerVCpuDetails) *AwsEc2LaunchTemplateDataInstanceRequirementsDetails { + s.MemoryGiBPerVCpu = v + return s +} - // Turn on or turn off automatic acceptance of attachment requests. - AutoAcceptSharedAttachments *string `type:"string"` +// SetMemoryMiB sets the MemoryMiB field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsDetails) SetMemoryMiB(v *AwsEc2LaunchTemplateDataInstanceRequirementsMemoryMiBDetails) *AwsEc2LaunchTemplateDataInstanceRequirementsDetails { + s.MemoryMiB = v + return s +} - // Turn on or turn off automatic association with the default association route - // table. - DefaultRouteTableAssociation *string `type:"string"` +// SetNetworkInterfaceCount sets the NetworkInterfaceCount field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsDetails) SetNetworkInterfaceCount(v *AwsEc2LaunchTemplateDataInstanceRequirementsNetworkInterfaceCountDetails) *AwsEc2LaunchTemplateDataInstanceRequirementsDetails { + s.NetworkInterfaceCount = v + return s +} - // Turn on or turn off automatic propagation of routes to the default propagation - // route table. - DefaultRouteTablePropagation *string `type:"string"` +// SetOnDemandMaxPricePercentageOverLowestPrice sets the OnDemandMaxPricePercentageOverLowestPrice field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsDetails) SetOnDemandMaxPricePercentageOverLowestPrice(v int64) *AwsEc2LaunchTemplateDataInstanceRequirementsDetails { + s.OnDemandMaxPricePercentageOverLowestPrice = &v + return s +} - // The description of the transit gateway. - Description *string `type:"string"` +// SetRequireHibernateSupport sets the RequireHibernateSupport field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsDetails) SetRequireHibernateSupport(v bool) *AwsEc2LaunchTemplateDataInstanceRequirementsDetails { + s.RequireHibernateSupport = &v + return s +} - // Turn on or turn off DNS support. - DnsSupport *string `type:"string"` +// SetSpotMaxPricePercentageOverLowestPrice sets the SpotMaxPricePercentageOverLowestPrice field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsDetails) SetSpotMaxPricePercentageOverLowestPrice(v int64) *AwsEc2LaunchTemplateDataInstanceRequirementsDetails { + s.SpotMaxPricePercentageOverLowestPrice = &v + return s +} - // The ID of the transit gateway. - Id *string `type:"string"` +// SetTotalLocalStorageGB sets the TotalLocalStorageGB field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsDetails) SetTotalLocalStorageGB(v *AwsEc2LaunchTemplateDataInstanceRequirementsTotalLocalStorageGBDetails) *AwsEc2LaunchTemplateDataInstanceRequirementsDetails { + s.TotalLocalStorageGB = v + return s +} - // Indicates whether multicast is supported on the transit gateway. - MulticastSupport *string `type:"string"` +// SetVCpuCount sets the VCpuCount field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsDetails) SetVCpuCount(v *AwsEc2LaunchTemplateDataInstanceRequirementsVCpuCountDetails) *AwsEc2LaunchTemplateDataInstanceRequirementsDetails { + s.VCpuCount = v + return s +} - // The ID of the default propagation route table. - PropagationDefaultRouteTableId *string `type:"string"` +// The minimum and maximum amount of memory per vCPU, in GiB. +type AwsEc2LaunchTemplateDataInstanceRequirementsMemoryGiBPerVCpuDetails struct { + _ struct{} `type:"structure"` - // The transit gateway Classless Inter-Domain Routing (CIDR) blocks. - TransitGatewayCidrBlocks []*string `type:"list"` + // The maximum amount of memory per vCPU, in GiB. If this parameter is omitted, + // there's no maximum limit. + Max *float64 `type:"double"` - // Turn on or turn off Equal Cost Multipath Protocol (ECMP) support. - VpnEcmpSupport *string `type:"string"` + // The minimum amount of memory per vCPU, in GiB. If this parameter is omitted, + // there's no maximum limit. + Min *float64 `type:"double"` } // String returns the string representation. @@ -15323,7 +15450,7 @@ type AwsEc2TransitGatewayDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2TransitGatewayDetails) String() string { +func (s AwsEc2LaunchTemplateDataInstanceRequirementsMemoryGiBPerVCpuDetails) String() string { return awsutil.Prettify(s) } @@ -15332,107 +15459,115 @@ func (s AwsEc2TransitGatewayDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2TransitGatewayDetails) GoString() string { +func (s AwsEc2LaunchTemplateDataInstanceRequirementsMemoryGiBPerVCpuDetails) GoString() string { return s.String() } -// SetAmazonSideAsn sets the AmazonSideAsn field's value. -func (s *AwsEc2TransitGatewayDetails) SetAmazonSideAsn(v int64) *AwsEc2TransitGatewayDetails { - s.AmazonSideAsn = &v +// SetMax sets the Max field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsMemoryGiBPerVCpuDetails) SetMax(v float64) *AwsEc2LaunchTemplateDataInstanceRequirementsMemoryGiBPerVCpuDetails { + s.Max = &v return s } -// SetAssociationDefaultRouteTableId sets the AssociationDefaultRouteTableId field's value. -func (s *AwsEc2TransitGatewayDetails) SetAssociationDefaultRouteTableId(v string) *AwsEc2TransitGatewayDetails { - s.AssociationDefaultRouteTableId = &v +// SetMin sets the Min field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsMemoryGiBPerVCpuDetails) SetMin(v float64) *AwsEc2LaunchTemplateDataInstanceRequirementsMemoryGiBPerVCpuDetails { + s.Min = &v return s } -// SetAutoAcceptSharedAttachments sets the AutoAcceptSharedAttachments field's value. -func (s *AwsEc2TransitGatewayDetails) SetAutoAcceptSharedAttachments(v string) *AwsEc2TransitGatewayDetails { - s.AutoAcceptSharedAttachments = &v - return s +// The minimum and maximum amount of memory, in MiB, for an Amazon EC2 instance. +type AwsEc2LaunchTemplateDataInstanceRequirementsMemoryMiBDetails struct { + _ struct{} `type:"structure"` + + // The maximum amount of memory, in MiB. + Max *int64 `type:"integer"` + + // The minimum amount of memory, in MiB. + Min *int64 `type:"integer"` } -// SetDefaultRouteTableAssociation sets the DefaultRouteTableAssociation field's value. -func (s *AwsEc2TransitGatewayDetails) SetDefaultRouteTableAssociation(v string) *AwsEc2TransitGatewayDetails { - s.DefaultRouteTableAssociation = &v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2LaunchTemplateDataInstanceRequirementsMemoryMiBDetails) String() string { + return awsutil.Prettify(s) } -// SetDefaultRouteTablePropagation sets the DefaultRouteTablePropagation field's value. -func (s *AwsEc2TransitGatewayDetails) SetDefaultRouteTablePropagation(v string) *AwsEc2TransitGatewayDetails { - s.DefaultRouteTablePropagation = &v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2LaunchTemplateDataInstanceRequirementsMemoryMiBDetails) GoString() string { + return s.String() } -// SetDescription sets the Description field's value. -func (s *AwsEc2TransitGatewayDetails) SetDescription(v string) *AwsEc2TransitGatewayDetails { - s.Description = &v +// SetMax sets the Max field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsMemoryMiBDetails) SetMax(v int64) *AwsEc2LaunchTemplateDataInstanceRequirementsMemoryMiBDetails { + s.Max = &v return s } -// SetDnsSupport sets the DnsSupport field's value. -func (s *AwsEc2TransitGatewayDetails) SetDnsSupport(v string) *AwsEc2TransitGatewayDetails { - s.DnsSupport = &v +// SetMin sets the Min field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsMemoryMiBDetails) SetMin(v int64) *AwsEc2LaunchTemplateDataInstanceRequirementsMemoryMiBDetails { + s.Min = &v return s } -// SetId sets the Id field's value. -func (s *AwsEc2TransitGatewayDetails) SetId(v string) *AwsEc2TransitGatewayDetails { - s.Id = &v - return s +// The minimum and maximum number of network interfaces to be attached to an +// Amazon EC2 instance. +type AwsEc2LaunchTemplateDataInstanceRequirementsNetworkInterfaceCountDetails struct { + _ struct{} `type:"structure"` + + // The maximum number of network interfaces. + Max *int64 `type:"integer"` + + // The minimum number of network interfaces. + Min *int64 `type:"integer"` } -// SetMulticastSupport sets the MulticastSupport field's value. -func (s *AwsEc2TransitGatewayDetails) SetMulticastSupport(v string) *AwsEc2TransitGatewayDetails { - s.MulticastSupport = &v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2LaunchTemplateDataInstanceRequirementsNetworkInterfaceCountDetails) String() string { + return awsutil.Prettify(s) } -// SetPropagationDefaultRouteTableId sets the PropagationDefaultRouteTableId field's value. -func (s *AwsEc2TransitGatewayDetails) SetPropagationDefaultRouteTableId(v string) *AwsEc2TransitGatewayDetails { - s.PropagationDefaultRouteTableId = &v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2LaunchTemplateDataInstanceRequirementsNetworkInterfaceCountDetails) GoString() string { + return s.String() } -// SetTransitGatewayCidrBlocks sets the TransitGatewayCidrBlocks field's value. -func (s *AwsEc2TransitGatewayDetails) SetTransitGatewayCidrBlocks(v []*string) *AwsEc2TransitGatewayDetails { - s.TransitGatewayCidrBlocks = v +// SetMax sets the Max field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsNetworkInterfaceCountDetails) SetMax(v int64) *AwsEc2LaunchTemplateDataInstanceRequirementsNetworkInterfaceCountDetails { + s.Max = &v return s } -// SetVpnEcmpSupport sets the VpnEcmpSupport field's value. -func (s *AwsEc2TransitGatewayDetails) SetVpnEcmpSupport(v string) *AwsEc2TransitGatewayDetails { - s.VpnEcmpSupport = &v +// SetMin sets the Min field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsNetworkInterfaceCountDetails) SetMin(v int64) *AwsEc2LaunchTemplateDataInstanceRequirementsNetworkInterfaceCountDetails { + s.Min = &v return s } -// An attachment to an Amazon EC2 volume. -type AwsEc2VolumeAttachment struct { +// The minimum and maximum amount of total local storage, in GB, that an Amazon +// EC2 instance uses. +type AwsEc2LaunchTemplateDataInstanceRequirementsTotalLocalStorageGBDetails struct { _ struct{} `type:"structure"` - // The datetime when the attachment initiated. - AttachTime *string `type:"string"` - - // Whether the EBS volume is deleted when the EC2 instance is terminated. - DeleteOnTermination *bool `type:"boolean"` - - // The identifier of the EC2 instance. - InstanceId *string `type:"string"` + // The maximum amount of total local storage, in GB. + Max *float64 `type:"double"` - // The attachment state of the volume. Valid values are as follows: - // - // * attaching - // - // * attached - // - // * busy - // - // * detaching - // - // * detached - Status *string `type:"string"` + // The minimum amount of total local storage, in GB. + Min *float64 `type:"double"` } // String returns the string representation. @@ -15440,7 +15575,7 @@ type AwsEc2VolumeAttachment struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2VolumeAttachment) String() string { +func (s AwsEc2LaunchTemplateDataInstanceRequirementsTotalLocalStorageGBDetails) String() string { return awsutil.Prettify(s) } @@ -15449,87 +15584,31 @@ func (s AwsEc2VolumeAttachment) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2VolumeAttachment) GoString() string { +func (s AwsEc2LaunchTemplateDataInstanceRequirementsTotalLocalStorageGBDetails) GoString() string { return s.String() } -// SetAttachTime sets the AttachTime field's value. -func (s *AwsEc2VolumeAttachment) SetAttachTime(v string) *AwsEc2VolumeAttachment { - s.AttachTime = &v - return s -} - -// SetDeleteOnTermination sets the DeleteOnTermination field's value. -func (s *AwsEc2VolumeAttachment) SetDeleteOnTermination(v bool) *AwsEc2VolumeAttachment { - s.DeleteOnTermination = &v - return s -} - -// SetInstanceId sets the InstanceId field's value. -func (s *AwsEc2VolumeAttachment) SetInstanceId(v string) *AwsEc2VolumeAttachment { - s.InstanceId = &v +// SetMax sets the Max field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsTotalLocalStorageGBDetails) SetMax(v float64) *AwsEc2LaunchTemplateDataInstanceRequirementsTotalLocalStorageGBDetails { + s.Max = &v return s } -// SetStatus sets the Status field's value. -func (s *AwsEc2VolumeAttachment) SetStatus(v string) *AwsEc2VolumeAttachment { - s.Status = &v +// SetMin sets the Min field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsTotalLocalStorageGBDetails) SetMin(v float64) *AwsEc2LaunchTemplateDataInstanceRequirementsTotalLocalStorageGBDetails { + s.Min = &v return s } -// Details about an EC2 volume. -type AwsEc2VolumeDetails struct { +// The minimum and maximum number of vCPUs for an Amazon EC2 instance. +type AwsEc2LaunchTemplateDataInstanceRequirementsVCpuCountDetails struct { _ struct{} `type:"structure"` - // The volume attachments. - Attachments []*AwsEc2VolumeAttachment `type:"list"` - - // Indicates when the volume was created. - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - CreateTime *string `type:"string"` - - // The device name for the volume that is attached to the instance. - DeviceName *string `type:"string"` - - // Specifies whether the volume is encrypted. - Encrypted *bool `type:"boolean"` - - // The ARN of the KMS key that was used to protect the volume encryption key - // for the volume. - KmsKeyId *string `type:"string"` - - // The size of the volume, in GiBs. - Size *int64 `type:"integer"` - - // The snapshot from which the volume was created. - SnapshotId *string `type:"string"` - - // The volume state. Valid values are as follows: - // - // * available - // - // * creating - // - // * deleted - // - // * deleting - // - // * error - // - // * in-use - Status *string `type:"string"` - - // The ID of the volume. - VolumeId *string `type:"string"` - - // Indicates whether the volume was scanned or skipped. - VolumeScanStatus *string `type:"string"` + // The maximum number of vCPUs. + Max *int64 `type:"integer"` - // The volume type. - VolumeType *string `type:"string"` + // The minimum number of vCPUs. + Min *int64 `type:"integer"` } // String returns the string representation. @@ -15537,7 +15616,7 @@ type AwsEc2VolumeDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2VolumeDetails) String() string { +func (s AwsEc2LaunchTemplateDataInstanceRequirementsVCpuCountDetails) String() string { return awsutil.Prettify(s) } @@ -15546,93 +15625,111 @@ func (s AwsEc2VolumeDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2VolumeDetails) GoString() string { +func (s AwsEc2LaunchTemplateDataInstanceRequirementsVCpuCountDetails) GoString() string { return s.String() } -// SetAttachments sets the Attachments field's value. -func (s *AwsEc2VolumeDetails) SetAttachments(v []*AwsEc2VolumeAttachment) *AwsEc2VolumeDetails { - s.Attachments = v +// SetMax sets the Max field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsVCpuCountDetails) SetMax(v int64) *AwsEc2LaunchTemplateDataInstanceRequirementsVCpuCountDetails { + s.Max = &v return s } -// SetCreateTime sets the CreateTime field's value. -func (s *AwsEc2VolumeDetails) SetCreateTime(v string) *AwsEc2VolumeDetails { - s.CreateTime = &v +// SetMin sets the Min field's value. +func (s *AwsEc2LaunchTemplateDataInstanceRequirementsVCpuCountDetails) SetMin(v int64) *AwsEc2LaunchTemplateDataInstanceRequirementsVCpuCountDetails { + s.Min = &v return s } -// SetDeviceName sets the DeviceName field's value. -func (s *AwsEc2VolumeDetails) SetDeviceName(v string) *AwsEc2VolumeDetails { - s.DeviceName = &v - return s +// Provides details about the license configuration for an Amazon EC2 instance. +type AwsEc2LaunchTemplateDataLicenseSetDetails struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the license configuration. + LicenseConfigurationArn *string `type:"string"` } -// SetEncrypted sets the Encrypted field's value. -func (s *AwsEc2VolumeDetails) SetEncrypted(v bool) *AwsEc2VolumeDetails { - s.Encrypted = &v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2LaunchTemplateDataLicenseSetDetails) String() string { + return awsutil.Prettify(s) } -// SetKmsKeyId sets the KmsKeyId field's value. -func (s *AwsEc2VolumeDetails) SetKmsKeyId(v string) *AwsEc2VolumeDetails { - s.KmsKeyId = &v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2LaunchTemplateDataLicenseSetDetails) GoString() string { + return s.String() } -// SetSize sets the Size field's value. -func (s *AwsEc2VolumeDetails) SetSize(v int64) *AwsEc2VolumeDetails { - s.Size = &v +// SetLicenseConfigurationArn sets the LicenseConfigurationArn field's value. +func (s *AwsEc2LaunchTemplateDataLicenseSetDetails) SetLicenseConfigurationArn(v string) *AwsEc2LaunchTemplateDataLicenseSetDetails { + s.LicenseConfigurationArn = &v return s } -// SetSnapshotId sets the SnapshotId field's value. -func (s *AwsEc2VolumeDetails) SetSnapshotId(v string) *AwsEc2VolumeDetails { - s.SnapshotId = &v - return s +// The maintenance options of an Amazon EC2 instance. +type AwsEc2LaunchTemplateDataMaintenanceOptionsDetails struct { + _ struct{} `type:"structure"` + + // Disables the automatic recovery behavior of your instance or sets it to default. + AutoRecovery *string `type:"string"` } -// SetStatus sets the Status field's value. -func (s *AwsEc2VolumeDetails) SetStatus(v string) *AwsEc2VolumeDetails { - s.Status = &v - return s -} - -// SetVolumeId sets the VolumeId field's value. -func (s *AwsEc2VolumeDetails) SetVolumeId(v string) *AwsEc2VolumeDetails { - s.VolumeId = &v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2LaunchTemplateDataMaintenanceOptionsDetails) String() string { + return awsutil.Prettify(s) } -// SetVolumeScanStatus sets the VolumeScanStatus field's value. -func (s *AwsEc2VolumeDetails) SetVolumeScanStatus(v string) *AwsEc2VolumeDetails { - s.VolumeScanStatus = &v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2LaunchTemplateDataMaintenanceOptionsDetails) GoString() string { + return s.String() } -// SetVolumeType sets the VolumeType field's value. -func (s *AwsEc2VolumeDetails) SetVolumeType(v string) *AwsEc2VolumeDetails { - s.VolumeType = &v +// SetAutoRecovery sets the AutoRecovery field's value. +func (s *AwsEc2LaunchTemplateDataMaintenanceOptionsDetails) SetAutoRecovery(v string) *AwsEc2LaunchTemplateDataMaintenanceOptionsDetails { + s.AutoRecovery = &v return s } -// Details about an EC2 VPC. -type AwsEc2VpcDetails struct { +// Specifies the metadata options for an Amazon EC2 instance. +type AwsEc2LaunchTemplateDataMetadataOptionsDetails struct { _ struct{} `type:"structure"` - // Information about the IPv4 CIDR blocks associated with the VPC. - CidrBlockAssociationSet []*CidrBlockAssociation `type:"list"` + // Enables or disables the HTTP metadata endpoint on your instances. If the + // parameter is not specified, the default state is enabled, and you won’t + // be able to access your instance metadata. + HttpEndpoint *string `type:"string"` - // The identifier of the set of Dynamic Host Configuration Protocol (DHCP) options - // that are associated with the VPC. If the default options are associated with - // the VPC, then this is default. - DhcpOptionsId *string `type:"string"` + // Enables or disables the IPv6 endpoint for the instance metadata service. + HttpProtocolIpv6 *string `type:"string"` - // Information about the IPv6 CIDR blocks associated with the VPC. - Ipv6CidrBlockAssociationSet []*Ipv6CidrBlockAssociation `type:"list"` + // The desired HTTP PUT response hop limit for instance metadata requests. The + // larger the number, the further instance metadata requests can travel. + HttpPutResponseHopLimit *int64 `type:"integer"` - // The current state of the VPC. Valid values are available or pending. - State *string `type:"string"` + // The state of token usage for your instance metadata requests. + HttpTokens *string `type:"string"` + + // When set to enabled, this parameter allows access to instance tags from the + // instance metadata. When set to disabled, it turns off access to instance + // tags from the instance metadata. For more information, see Work with instance + // tags in instance metadata (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#work-with-tags-in-IMDS) + // in the Amazon EC2 User Guide. + InstanceMetadataTags *string `type:"string"` } // String returns the string representation. @@ -15640,7 +15737,7 @@ type AwsEc2VpcDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2VpcDetails) String() string { +func (s AwsEc2LaunchTemplateDataMetadataOptionsDetails) String() string { return awsutil.Prettify(s) } @@ -15649,81 +15746,150 @@ func (s AwsEc2VpcDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2VpcDetails) GoString() string { +func (s AwsEc2LaunchTemplateDataMetadataOptionsDetails) GoString() string { return s.String() } -// SetCidrBlockAssociationSet sets the CidrBlockAssociationSet field's value. -func (s *AwsEc2VpcDetails) SetCidrBlockAssociationSet(v []*CidrBlockAssociation) *AwsEc2VpcDetails { - s.CidrBlockAssociationSet = v +// SetHttpEndpoint sets the HttpEndpoint field's value. +func (s *AwsEc2LaunchTemplateDataMetadataOptionsDetails) SetHttpEndpoint(v string) *AwsEc2LaunchTemplateDataMetadataOptionsDetails { + s.HttpEndpoint = &v return s } -// SetDhcpOptionsId sets the DhcpOptionsId field's value. -func (s *AwsEc2VpcDetails) SetDhcpOptionsId(v string) *AwsEc2VpcDetails { - s.DhcpOptionsId = &v +// SetHttpProtocolIpv6 sets the HttpProtocolIpv6 field's value. +func (s *AwsEc2LaunchTemplateDataMetadataOptionsDetails) SetHttpProtocolIpv6(v string) *AwsEc2LaunchTemplateDataMetadataOptionsDetails { + s.HttpProtocolIpv6 = &v return s } -// SetIpv6CidrBlockAssociationSet sets the Ipv6CidrBlockAssociationSet field's value. -func (s *AwsEc2VpcDetails) SetIpv6CidrBlockAssociationSet(v []*Ipv6CidrBlockAssociation) *AwsEc2VpcDetails { - s.Ipv6CidrBlockAssociationSet = v +// SetHttpPutResponseHopLimit sets the HttpPutResponseHopLimit field's value. +func (s *AwsEc2LaunchTemplateDataMetadataOptionsDetails) SetHttpPutResponseHopLimit(v int64) *AwsEc2LaunchTemplateDataMetadataOptionsDetails { + s.HttpPutResponseHopLimit = &v return s } -// SetState sets the State field's value. -func (s *AwsEc2VpcDetails) SetState(v string) *AwsEc2VpcDetails { - s.State = &v +// SetHttpTokens sets the HttpTokens field's value. +func (s *AwsEc2LaunchTemplateDataMetadataOptionsDetails) SetHttpTokens(v string) *AwsEc2LaunchTemplateDataMetadataOptionsDetails { + s.HttpTokens = &v return s } -// Contains details about the service configuration for a VPC endpoint service. -type AwsEc2VpcEndpointServiceDetails struct { +// SetInstanceMetadataTags sets the InstanceMetadataTags field's value. +func (s *AwsEc2LaunchTemplateDataMetadataOptionsDetails) SetInstanceMetadataTags(v string) *AwsEc2LaunchTemplateDataMetadataOptionsDetails { + s.InstanceMetadataTags = &v + return s +} + +// The monitoring for an Amazon EC2 instance. +type AwsEc2LaunchTemplateDataMonitoringDetails struct { _ struct{} `type:"structure"` - // Whether requests from other Amazon Web Services accounts to create an endpoint - // to the service must first be accepted. - AcceptanceRequired *bool `type:"boolean"` + // Enables detailed monitoring when true is specified. Otherwise, basic monitoring + // is enabled. For more information about detailed monitoring, see Enable or + // turn off detailed monitoring for your instances (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-cloudwatch-new.html) + // in the Amazon EC2 User Guide. + Enabled *bool `type:"boolean"` +} - // The Availability Zones where the service is available. - AvailabilityZones []*string `type:"list"` +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2LaunchTemplateDataMonitoringDetails) String() string { + return awsutil.Prettify(s) +} - // The DNS names for the service. - BaseEndpointDnsNames []*string `type:"list"` +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2LaunchTemplateDataMonitoringDetails) GoString() string { + return s.String() +} - // The ARNs of the Gateway Load Balancers for the service. - GatewayLoadBalancerArns []*string `type:"list"` +// SetEnabled sets the Enabled field's value. +func (s *AwsEc2LaunchTemplateDataMonitoringDetails) SetEnabled(v bool) *AwsEc2LaunchTemplateDataMonitoringDetails { + s.Enabled = &v + return s +} - // Whether the service manages its VPC endpoints. - ManagesVpcEndpoints *bool `type:"boolean"` +// One or more network interfaces to attach to an Amazon EC2 instance. If you +// specify a network interface, you must specify security groups and subnets +// as part of the network interface. +type AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails struct { + _ struct{} `type:"structure"` - // The ARNs of the Network Load Balancers for the service. - NetworkLoadBalancerArns []*string `type:"list"` + // Indicates whether to associate a Carrier IP address with eth0 for a new network + // interface. You use this option when you launch an instance in a Wavelength + // Zone and want to associate a Carrier IP address with the network interface. + // For more information, see Carrier IP address (https://docs.aws.amazon.com/wavelength/latest/developerguide/how-wavelengths-work.html#provider-owned-ip) + // in the Wavelength Developer Guide. + AssociateCarrierIpAddress *bool `type:"boolean"` - // The private DNS name for the service. - PrivateDnsName *string `type:"string"` + // Associates a public IPv4 address with eth0 for a new network interface. + AssociatePublicIpAddress *bool `type:"boolean"` - // The identifier of the service. - ServiceId *string `type:"string"` + // Indicates whether the network interface is deleted when the instance is terminated. + DeleteOnTermination *bool `type:"boolean"` - // The name of the service. - ServiceName *string `type:"string"` + // A description for the network interface. + Description *string `type:"string"` - // The current state of the service. Valid values are as follows: - // - // * Available - // - // * Deleted - // - // * Deleting - // - // * Failed - // - // * Pending - ServiceState *string `type:"string"` + // The device index for the network interface attachment. + DeviceIndex *int64 `type:"integer"` - // The types for the service. - ServiceType []*AwsEc2VpcEndpointServiceServiceTypeDetails `type:"list"` + // The IDs of one or more security groups. + Groups []*string `type:"list"` + + // The type of network interface. + InterfaceType *string `type:"string"` + + // The number of IPv4 prefixes to be automatically assigned to the network interface. + // You cannot use this option if you use the Ipv4Prefixes option. + Ipv4PrefixCount *int64 `type:"integer"` + + // One or more IPv4 prefixes to be assigned to the network interface. You cannot + // use this option if you use the Ipv4PrefixCount option. + Ipv4Prefixes []*AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv4PrefixesDetails `type:"list"` + + // The number of IPv6 addresses to assign to a network interface. Amazon EC2 + // automatically selects the IPv6 addresses from the subnet range. You can't + // use this option if you use Ipv6Addresses. + Ipv6AddressCount *int64 `type:"integer"` + + // One or more specific IPv6 addresses from the IPv6 CIDR block range of your + // subnet. You can't use this option if you use Ipv6AddressCount. + Ipv6Addresses []*AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6AddressesDetails `type:"list"` + + // The number of IPv6 prefixes to be automatically assigned to the network interface. + // You cannot use this option if you use the Ipv6Prefix option. + Ipv6PrefixCount *int64 `type:"integer"` + + // One or more IPv6 prefixes to be assigned to the network interface. You cannot + // use this option if you use the Ipv6PrefixCount option. + Ipv6Prefixes []*AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6PrefixesDetails `type:"list"` + + // The index of the network card. Some instance types support multiple network + // cards. The primary network interface must be assigned to network card index + // 0. The default is network card index 0. + NetworkCardIndex *int64 `type:"integer"` + + // The ID of the network interface. + NetworkInterfaceId *string `type:"string"` + + // The primary private IPv4 address of the network interface. + PrivateIpAddress *string `type:"string"` + + // One or more private IPv4 addresses. + PrivateIpAddresses []*AwsEc2LaunchTemplateDataNetworkInterfaceSetPrivateIpAddressesDetails `type:"list"` + + // The number of secondary private IPv4 addresses to assign to a network interface. + SecondaryPrivateIpAddressCount *int64 `type:"integer"` + + // The ID of the subnet for the network interface. + SubnetId *string `type:"string"` } // String returns the string representation. @@ -15731,7 +15897,7 @@ type AwsEc2VpcEndpointServiceDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2VpcEndpointServiceDetails) String() string { +func (s AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails) String() string { return awsutil.Prettify(s) } @@ -15740,82 +15906,132 @@ func (s AwsEc2VpcEndpointServiceDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2VpcEndpointServiceDetails) GoString() string { +func (s AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails) GoString() string { return s.String() } -// SetAcceptanceRequired sets the AcceptanceRequired field's value. -func (s *AwsEc2VpcEndpointServiceDetails) SetAcceptanceRequired(v bool) *AwsEc2VpcEndpointServiceDetails { - s.AcceptanceRequired = &v +// SetAssociateCarrierIpAddress sets the AssociateCarrierIpAddress field's value. +func (s *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails) SetAssociateCarrierIpAddress(v bool) *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails { + s.AssociateCarrierIpAddress = &v return s } -// SetAvailabilityZones sets the AvailabilityZones field's value. -func (s *AwsEc2VpcEndpointServiceDetails) SetAvailabilityZones(v []*string) *AwsEc2VpcEndpointServiceDetails { - s.AvailabilityZones = v +// SetAssociatePublicIpAddress sets the AssociatePublicIpAddress field's value. +func (s *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails) SetAssociatePublicIpAddress(v bool) *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails { + s.AssociatePublicIpAddress = &v return s } -// SetBaseEndpointDnsNames sets the BaseEndpointDnsNames field's value. -func (s *AwsEc2VpcEndpointServiceDetails) SetBaseEndpointDnsNames(v []*string) *AwsEc2VpcEndpointServiceDetails { - s.BaseEndpointDnsNames = v +// SetDeleteOnTermination sets the DeleteOnTermination field's value. +func (s *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails) SetDeleteOnTermination(v bool) *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails { + s.DeleteOnTermination = &v return s } -// SetGatewayLoadBalancerArns sets the GatewayLoadBalancerArns field's value. -func (s *AwsEc2VpcEndpointServiceDetails) SetGatewayLoadBalancerArns(v []*string) *AwsEc2VpcEndpointServiceDetails { - s.GatewayLoadBalancerArns = v +// SetDescription sets the Description field's value. +func (s *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails) SetDescription(v string) *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails { + s.Description = &v return s } -// SetManagesVpcEndpoints sets the ManagesVpcEndpoints field's value. -func (s *AwsEc2VpcEndpointServiceDetails) SetManagesVpcEndpoints(v bool) *AwsEc2VpcEndpointServiceDetails { - s.ManagesVpcEndpoints = &v +// SetDeviceIndex sets the DeviceIndex field's value. +func (s *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails) SetDeviceIndex(v int64) *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails { + s.DeviceIndex = &v return s } -// SetNetworkLoadBalancerArns sets the NetworkLoadBalancerArns field's value. -func (s *AwsEc2VpcEndpointServiceDetails) SetNetworkLoadBalancerArns(v []*string) *AwsEc2VpcEndpointServiceDetails { - s.NetworkLoadBalancerArns = v +// SetGroups sets the Groups field's value. +func (s *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails) SetGroups(v []*string) *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails { + s.Groups = v return s } -// SetPrivateDnsName sets the PrivateDnsName field's value. -func (s *AwsEc2VpcEndpointServiceDetails) SetPrivateDnsName(v string) *AwsEc2VpcEndpointServiceDetails { - s.PrivateDnsName = &v +// SetInterfaceType sets the InterfaceType field's value. +func (s *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails) SetInterfaceType(v string) *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails { + s.InterfaceType = &v return s } -// SetServiceId sets the ServiceId field's value. -func (s *AwsEc2VpcEndpointServiceDetails) SetServiceId(v string) *AwsEc2VpcEndpointServiceDetails { - s.ServiceId = &v +// SetIpv4PrefixCount sets the Ipv4PrefixCount field's value. +func (s *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails) SetIpv4PrefixCount(v int64) *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails { + s.Ipv4PrefixCount = &v return s } -// SetServiceName sets the ServiceName field's value. -func (s *AwsEc2VpcEndpointServiceDetails) SetServiceName(v string) *AwsEc2VpcEndpointServiceDetails { - s.ServiceName = &v +// SetIpv4Prefixes sets the Ipv4Prefixes field's value. +func (s *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails) SetIpv4Prefixes(v []*AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv4PrefixesDetails) *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails { + s.Ipv4Prefixes = v return s } -// SetServiceState sets the ServiceState field's value. -func (s *AwsEc2VpcEndpointServiceDetails) SetServiceState(v string) *AwsEc2VpcEndpointServiceDetails { - s.ServiceState = &v +// SetIpv6AddressCount sets the Ipv6AddressCount field's value. +func (s *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails) SetIpv6AddressCount(v int64) *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails { + s.Ipv6AddressCount = &v return s } -// SetServiceType sets the ServiceType field's value. -func (s *AwsEc2VpcEndpointServiceDetails) SetServiceType(v []*AwsEc2VpcEndpointServiceServiceTypeDetails) *AwsEc2VpcEndpointServiceDetails { - s.ServiceType = v +// SetIpv6Addresses sets the Ipv6Addresses field's value. +func (s *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails) SetIpv6Addresses(v []*AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6AddressesDetails) *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails { + s.Ipv6Addresses = v return s } -// The service type information for a VPC endpoint service. -type AwsEc2VpcEndpointServiceServiceTypeDetails struct { +// SetIpv6PrefixCount sets the Ipv6PrefixCount field's value. +func (s *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails) SetIpv6PrefixCount(v int64) *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails { + s.Ipv6PrefixCount = &v + return s +} + +// SetIpv6Prefixes sets the Ipv6Prefixes field's value. +func (s *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails) SetIpv6Prefixes(v []*AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6PrefixesDetails) *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails { + s.Ipv6Prefixes = v + return s +} + +// SetNetworkCardIndex sets the NetworkCardIndex field's value. +func (s *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails) SetNetworkCardIndex(v int64) *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails { + s.NetworkCardIndex = &v + return s +} + +// SetNetworkInterfaceId sets the NetworkInterfaceId field's value. +func (s *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails) SetNetworkInterfaceId(v string) *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails { + s.NetworkInterfaceId = &v + return s +} + +// SetPrivateIpAddress sets the PrivateIpAddress field's value. +func (s *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails) SetPrivateIpAddress(v string) *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails { + s.PrivateIpAddress = &v + return s +} + +// SetPrivateIpAddresses sets the PrivateIpAddresses field's value. +func (s *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails) SetPrivateIpAddresses(v []*AwsEc2LaunchTemplateDataNetworkInterfaceSetPrivateIpAddressesDetails) *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails { + s.PrivateIpAddresses = v + return s +} + +// SetSecondaryPrivateIpAddressCount sets the SecondaryPrivateIpAddressCount field's value. +func (s *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails) SetSecondaryPrivateIpAddressCount(v int64) *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails { + s.SecondaryPrivateIpAddressCount = &v + return s +} + +// SetSubnetId sets the SubnetId field's value. +func (s *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails) SetSubnetId(v string) *AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails { + s.SubnetId = &v + return s +} + +// Provides details on one or more IPv4 prefixes for a network interface. +type AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv4PrefixesDetails struct { _ struct{} `type:"structure"` - // The type of service. - ServiceType *string `type:"string"` + // The IPv4 prefix. For more information, see Assigning prefixes to Amazon EC2 + // network interfaces (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-prefix-eni.html) + // in the Amazon Elastic Compute Cloud User Guide. + Ipv4Prefix *string `type:"string"` } // String returns the string representation. @@ -15823,7 +16039,7 @@ type AwsEc2VpcEndpointServiceServiceTypeDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2VpcEndpointServiceServiceTypeDetails) String() string { +func (s AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv4PrefixesDetails) String() string { return awsutil.Prettify(s) } @@ -15832,35 +16048,23 @@ func (s AwsEc2VpcEndpointServiceServiceTypeDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2VpcEndpointServiceServiceTypeDetails) GoString() string { +func (s AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv4PrefixesDetails) GoString() string { return s.String() } -// SetServiceType sets the ServiceType field's value. -func (s *AwsEc2VpcEndpointServiceServiceTypeDetails) SetServiceType(v string) *AwsEc2VpcEndpointServiceServiceTypeDetails { - s.ServiceType = &v +// SetIpv4Prefix sets the Ipv4Prefix field's value. +func (s *AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv4PrefixesDetails) SetIpv4Prefix(v string) *AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv4PrefixesDetails { + s.Ipv4Prefix = &v return s } -// Provides information about a VPC peering connection between two VPCs: a requester -// VPC that you own and an accepter VPC with which to create the connection. -type AwsEc2VpcPeeringConnectionDetails struct { +// Specifies an IPv6 address in an Amazon EC2 launch template. +type AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6AddressesDetails struct { _ struct{} `type:"structure"` - // Information about the accepter VPC. - AccepterVpcInfo *AwsEc2VpcPeeringConnectionVpcInfoDetails `type:"structure"` - - // The time at which an unaccepted VPC peering connection will expire. - ExpirationTime *string `type:"string"` - - // Information about the requester VPC. - RequesterVpcInfo *AwsEc2VpcPeeringConnectionVpcInfoDetails `type:"structure"` - - // The status of the VPC peering connection. - Status *AwsEc2VpcPeeringConnectionStatusDetails `type:"structure"` - - // The ID of the VPC peering connection. - VpcPeeringConnectionId *string `type:"string"` + // One or more specific IPv6 addresses from the IPv6 CIDR block range of your + // subnet. + Ipv6Address *string `type:"string"` } // String returns the string representation. @@ -15868,7 +16072,7 @@ type AwsEc2VpcPeeringConnectionDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2VpcPeeringConnectionDetails) String() string { +func (s AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6AddressesDetails) String() string { return awsutil.Prettify(s) } @@ -15877,49 +16081,59 @@ func (s AwsEc2VpcPeeringConnectionDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2VpcPeeringConnectionDetails) GoString() string { +func (s AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6AddressesDetails) GoString() string { return s.String() } -// SetAccepterVpcInfo sets the AccepterVpcInfo field's value. -func (s *AwsEc2VpcPeeringConnectionDetails) SetAccepterVpcInfo(v *AwsEc2VpcPeeringConnectionVpcInfoDetails) *AwsEc2VpcPeeringConnectionDetails { - s.AccepterVpcInfo = v +// SetIpv6Address sets the Ipv6Address field's value. +func (s *AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6AddressesDetails) SetIpv6Address(v string) *AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6AddressesDetails { + s.Ipv6Address = &v return s } -// SetExpirationTime sets the ExpirationTime field's value. -func (s *AwsEc2VpcPeeringConnectionDetails) SetExpirationTime(v string) *AwsEc2VpcPeeringConnectionDetails { - s.ExpirationTime = &v - return s +// Provides details on one or more IPv6 prefixes to be assigned to the network +// interface. +type AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6PrefixesDetails struct { + _ struct{} `type:"structure"` + + // The IPv6 prefix. + Ipv6Prefix *string `type:"string"` } -// SetRequesterVpcInfo sets the RequesterVpcInfo field's value. -func (s *AwsEc2VpcPeeringConnectionDetails) SetRequesterVpcInfo(v *AwsEc2VpcPeeringConnectionVpcInfoDetails) *AwsEc2VpcPeeringConnectionDetails { - s.RequesterVpcInfo = v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6PrefixesDetails) String() string { + return awsutil.Prettify(s) } -// SetStatus sets the Status field's value. -func (s *AwsEc2VpcPeeringConnectionDetails) SetStatus(v *AwsEc2VpcPeeringConnectionStatusDetails) *AwsEc2VpcPeeringConnectionDetails { - s.Status = v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6PrefixesDetails) GoString() string { + return s.String() } -// SetVpcPeeringConnectionId sets the VpcPeeringConnectionId field's value. -func (s *AwsEc2VpcPeeringConnectionDetails) SetVpcPeeringConnectionId(v string) *AwsEc2VpcPeeringConnectionDetails { - s.VpcPeeringConnectionId = &v +// SetIpv6Prefix sets the Ipv6Prefix field's value. +func (s *AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6PrefixesDetails) SetIpv6Prefix(v string) *AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6PrefixesDetails { + s.Ipv6Prefix = &v return s } -// Details about the status of the VPC peering connection. -type AwsEc2VpcPeeringConnectionStatusDetails struct { +// One or more private IPv4 addresses. +type AwsEc2LaunchTemplateDataNetworkInterfaceSetPrivateIpAddressesDetails struct { _ struct{} `type:"structure"` - // The status of the VPC peering connection. - Code *string `type:"string"` + // Indicates whether the private IPv4 address is the primary private IPv4 address. + // Only one IPv4 address can be designated as primary. + Primary *bool `type:"boolean"` - // A message that provides more information about the status, if applicable. - Message *string `type:"string"` + // The private IPv4 address. + PrivateIpAddress *string `type:"string"` } // String returns the string representation. @@ -15927,7 +16141,7 @@ type AwsEc2VpcPeeringConnectionStatusDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2VpcPeeringConnectionStatusDetails) String() string { +func (s AwsEc2LaunchTemplateDataNetworkInterfaceSetPrivateIpAddressesDetails) String() string { return awsutil.Prettify(s) } @@ -15936,47 +16150,51 @@ func (s AwsEc2VpcPeeringConnectionStatusDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2VpcPeeringConnectionStatusDetails) GoString() string { +func (s AwsEc2LaunchTemplateDataNetworkInterfaceSetPrivateIpAddressesDetails) GoString() string { return s.String() } -// SetCode sets the Code field's value. -func (s *AwsEc2VpcPeeringConnectionStatusDetails) SetCode(v string) *AwsEc2VpcPeeringConnectionStatusDetails { - s.Code = &v +// SetPrimary sets the Primary field's value. +func (s *AwsEc2LaunchTemplateDataNetworkInterfaceSetPrivateIpAddressesDetails) SetPrimary(v bool) *AwsEc2LaunchTemplateDataNetworkInterfaceSetPrivateIpAddressesDetails { + s.Primary = &v return s } -// SetMessage sets the Message field's value. -func (s *AwsEc2VpcPeeringConnectionStatusDetails) SetMessage(v string) *AwsEc2VpcPeeringConnectionStatusDetails { - s.Message = &v +// SetPrivateIpAddress sets the PrivateIpAddress field's value. +func (s *AwsEc2LaunchTemplateDataNetworkInterfaceSetPrivateIpAddressesDetails) SetPrivateIpAddress(v string) *AwsEc2LaunchTemplateDataNetworkInterfaceSetPrivateIpAddressesDetails { + s.PrivateIpAddress = &v return s } -// Describes a VPC in a VPC peering connection. -type AwsEc2VpcPeeringConnectionVpcInfoDetails struct { +// Provides details about the placement of an Amazon EC2 instance. +type AwsEc2LaunchTemplateDataPlacementDetails struct { _ struct{} `type:"structure"` - // The IPv4 CIDR block for the VPC. - CidrBlock *string `type:"string"` + // The affinity setting for an instance on an EC2 Dedicated Host. + Affinity *string `type:"string"` - // Information about the IPv4 CIDR blocks for the VPC. - CidrBlockSet []*VpcInfoCidrBlockSetDetails `type:"list"` + // The Availability Zone for the instance. + AvailabilityZone *string `type:"string"` - // The IPv6 CIDR block for the VPC. - Ipv6CidrBlockSet []*VpcInfoIpv6CidrBlockSetDetails `type:"list"` + // The name of the placement group for the instance. + GroupName *string `type:"string"` - // The ID of the Amazon Web Services account that owns the VPC. - OwnerId *string `type:"string"` + // The ID of the Dedicated Host for the instance. + HostId *string `type:"string"` - // Information about the VPC peering connection options for the accepter or - // requester VPC. - PeeringOptions *VpcInfoPeeringOptionsDetails `type:"structure"` + // The Amazon Resource Name (ARN) of the host resource group in which to launch + // the instances. + HostResourceGroupArn *string `type:"string"` - // The Amazon Web Services Region in which the VPC is located. - Region *string `type:"string"` + // The number of the partition the instance should launch in. + PartitionNumber *int64 `type:"integer"` - // The ID of the VPC. - VpcId *string `type:"string"` + // Reserved for future use. + SpreadDomain *string `type:"string"` + + // The tenancy of the instance (if the instance is running in a VPC). An instance + // with a tenancy of dedicated runs on single-tenant hardware. + Tenancy *string `type:"string"` } // String returns the string representation. @@ -15984,7 +16202,7 @@ type AwsEc2VpcPeeringConnectionVpcInfoDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2VpcPeeringConnectionVpcInfoDetails) String() string { +func (s AwsEc2LaunchTemplateDataPlacementDetails) String() string { return awsutil.Prettify(s) } @@ -15993,100 +16211,72 @@ func (s AwsEc2VpcPeeringConnectionVpcInfoDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2VpcPeeringConnectionVpcInfoDetails) GoString() string { +func (s AwsEc2LaunchTemplateDataPlacementDetails) GoString() string { return s.String() } -// SetCidrBlock sets the CidrBlock field's value. -func (s *AwsEc2VpcPeeringConnectionVpcInfoDetails) SetCidrBlock(v string) *AwsEc2VpcPeeringConnectionVpcInfoDetails { - s.CidrBlock = &v +// SetAffinity sets the Affinity field's value. +func (s *AwsEc2LaunchTemplateDataPlacementDetails) SetAffinity(v string) *AwsEc2LaunchTemplateDataPlacementDetails { + s.Affinity = &v return s } -// SetCidrBlockSet sets the CidrBlockSet field's value. -func (s *AwsEc2VpcPeeringConnectionVpcInfoDetails) SetCidrBlockSet(v []*VpcInfoCidrBlockSetDetails) *AwsEc2VpcPeeringConnectionVpcInfoDetails { - s.CidrBlockSet = v +// SetAvailabilityZone sets the AvailabilityZone field's value. +func (s *AwsEc2LaunchTemplateDataPlacementDetails) SetAvailabilityZone(v string) *AwsEc2LaunchTemplateDataPlacementDetails { + s.AvailabilityZone = &v return s } -// SetIpv6CidrBlockSet sets the Ipv6CidrBlockSet field's value. -func (s *AwsEc2VpcPeeringConnectionVpcInfoDetails) SetIpv6CidrBlockSet(v []*VpcInfoIpv6CidrBlockSetDetails) *AwsEc2VpcPeeringConnectionVpcInfoDetails { - s.Ipv6CidrBlockSet = v +// SetGroupName sets the GroupName field's value. +func (s *AwsEc2LaunchTemplateDataPlacementDetails) SetGroupName(v string) *AwsEc2LaunchTemplateDataPlacementDetails { + s.GroupName = &v return s } -// SetOwnerId sets the OwnerId field's value. -func (s *AwsEc2VpcPeeringConnectionVpcInfoDetails) SetOwnerId(v string) *AwsEc2VpcPeeringConnectionVpcInfoDetails { - s.OwnerId = &v +// SetHostId sets the HostId field's value. +func (s *AwsEc2LaunchTemplateDataPlacementDetails) SetHostId(v string) *AwsEc2LaunchTemplateDataPlacementDetails { + s.HostId = &v return s } -// SetPeeringOptions sets the PeeringOptions field's value. -func (s *AwsEc2VpcPeeringConnectionVpcInfoDetails) SetPeeringOptions(v *VpcInfoPeeringOptionsDetails) *AwsEc2VpcPeeringConnectionVpcInfoDetails { - s.PeeringOptions = v +// SetHostResourceGroupArn sets the HostResourceGroupArn field's value. +func (s *AwsEc2LaunchTemplateDataPlacementDetails) SetHostResourceGroupArn(v string) *AwsEc2LaunchTemplateDataPlacementDetails { + s.HostResourceGroupArn = &v return s } -// SetRegion sets the Region field's value. -func (s *AwsEc2VpcPeeringConnectionVpcInfoDetails) SetRegion(v string) *AwsEc2VpcPeeringConnectionVpcInfoDetails { - s.Region = &v +// SetPartitionNumber sets the PartitionNumber field's value. +func (s *AwsEc2LaunchTemplateDataPlacementDetails) SetPartitionNumber(v int64) *AwsEc2LaunchTemplateDataPlacementDetails { + s.PartitionNumber = &v return s } -// SetVpcId sets the VpcId field's value. -func (s *AwsEc2VpcPeeringConnectionVpcInfoDetails) SetVpcId(v string) *AwsEc2VpcPeeringConnectionVpcInfoDetails { - s.VpcId = &v +// SetSpreadDomain sets the SpreadDomain field's value. +func (s *AwsEc2LaunchTemplateDataPlacementDetails) SetSpreadDomain(v string) *AwsEc2LaunchTemplateDataPlacementDetails { + s.SpreadDomain = &v return s } -// Details about an Amazon EC2 VPN connection. -type AwsEc2VpnConnectionDetails struct { - _ struct{} `type:"structure"` - - // The category of the VPN connection. VPN indicates an Amazon Web Services - // VPN connection. VPN-Classic indicates an Amazon Web Services Classic VPN - // connection. - Category *string `type:"string"` - - // The configuration information for the VPN connection's customer gateway, - // in the native XML format. - CustomerGatewayConfiguration *string `type:"string"` - - // The identifier of the customer gateway that is at your end of the VPN connection. - CustomerGatewayId *string `type:"string"` - - // The VPN connection options. - Options *AwsEc2VpnConnectionOptionsDetails `type:"structure"` - - // The static routes that are associated with the VPN connection. - Routes []*AwsEc2VpnConnectionRoutesDetails `type:"list"` - - // The current state of the VPN connection. Valid values are as follows: - // - // * available - // - // * deleted - // - // * deleting - // - // * pending - State *string `type:"string"` - - // The identifier of the transit gateway that is associated with the VPN connection. - TransitGatewayId *string `type:"string"` +// SetTenancy sets the Tenancy field's value. +func (s *AwsEc2LaunchTemplateDataPlacementDetails) SetTenancy(v string) *AwsEc2LaunchTemplateDataPlacementDetails { + s.Tenancy = &v + return s +} - // The type of VPN connection. - Type *string `type:"string"` +// Describes the options for Amazon EC2 instance hostnames. +type AwsEc2LaunchTemplateDataPrivateDnsNameOptionsDetails struct { + _ struct{} `type:"structure"` - // Information about the VPN tunnel. - VgwTelemetry []*AwsEc2VpnConnectionVgwTelemetryDetails `type:"list"` + // Indicates whether to respond to DNS queries for instance hostnames with DNS + // AAAA records. + EnableResourceNameDnsAAAARecord *bool `type:"boolean"` - // The identifier of the VPN connection. - VpnConnectionId *string `type:"string"` + // Indicates whether to respond to DNS queries for instance hostnames with DNS + // A records. + EnableResourceNameDnsARecord *bool `type:"boolean"` - // The identifier of the virtual private gateway that is at the Amazon Web Services - // side of the VPN connection. - VpnGatewayId *string `type:"string"` + // The type of hostname for EC2 instances. + HostnameType *string `type:"string"` } // String returns the string representation. @@ -16094,7 +16284,7 @@ type AwsEc2VpnConnectionDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2VpnConnectionDetails) String() string { +func (s AwsEc2LaunchTemplateDataPrivateDnsNameOptionsDetails) String() string { return awsutil.Prettify(s) } @@ -16103,85 +16293,109 @@ func (s AwsEc2VpnConnectionDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2VpnConnectionDetails) GoString() string { +func (s AwsEc2LaunchTemplateDataPrivateDnsNameOptionsDetails) GoString() string { return s.String() } -// SetCategory sets the Category field's value. -func (s *AwsEc2VpnConnectionDetails) SetCategory(v string) *AwsEc2VpnConnectionDetails { - s.Category = &v +// SetEnableResourceNameDnsAAAARecord sets the EnableResourceNameDnsAAAARecord field's value. +func (s *AwsEc2LaunchTemplateDataPrivateDnsNameOptionsDetails) SetEnableResourceNameDnsAAAARecord(v bool) *AwsEc2LaunchTemplateDataPrivateDnsNameOptionsDetails { + s.EnableResourceNameDnsAAAARecord = &v return s } -// SetCustomerGatewayConfiguration sets the CustomerGatewayConfiguration field's value. -func (s *AwsEc2VpnConnectionDetails) SetCustomerGatewayConfiguration(v string) *AwsEc2VpnConnectionDetails { - s.CustomerGatewayConfiguration = &v +// SetEnableResourceNameDnsARecord sets the EnableResourceNameDnsARecord field's value. +func (s *AwsEc2LaunchTemplateDataPrivateDnsNameOptionsDetails) SetEnableResourceNameDnsARecord(v bool) *AwsEc2LaunchTemplateDataPrivateDnsNameOptionsDetails { + s.EnableResourceNameDnsARecord = &v return s } -// SetCustomerGatewayId sets the CustomerGatewayId field's value. -func (s *AwsEc2VpnConnectionDetails) SetCustomerGatewayId(v string) *AwsEc2VpnConnectionDetails { - s.CustomerGatewayId = &v +// SetHostnameType sets the HostnameType field's value. +func (s *AwsEc2LaunchTemplateDataPrivateDnsNameOptionsDetails) SetHostnameType(v string) *AwsEc2LaunchTemplateDataPrivateDnsNameOptionsDetails { + s.HostnameType = &v return s } -// SetOptions sets the Options field's value. -func (s *AwsEc2VpnConnectionDetails) SetOptions(v *AwsEc2VpnConnectionOptionsDetails) *AwsEc2VpnConnectionDetails { - s.Options = v - return s +// Specifies the properties for creating an Amazon Elastic Compute Cloud (Amazon +// EC2) launch template. +type AwsEc2LaunchTemplateDetails struct { + _ struct{} `type:"structure"` + + // The default version of the launch template. + DefaultVersionNumber *int64 `type:"long"` + + // An ID for the launch template. + Id *string `type:"string"` + + // The latest version of the launch template. + LatestVersionNumber *int64 `type:"long"` + + // The information to include in the launch template. + LaunchTemplateData *AwsEc2LaunchTemplateDataDetails `type:"structure"` + + // A name for the launch template. + LaunchTemplateName *string `type:"string"` } -// SetRoutes sets the Routes field's value. -func (s *AwsEc2VpnConnectionDetails) SetRoutes(v []*AwsEc2VpnConnectionRoutesDetails) *AwsEc2VpnConnectionDetails { - s.Routes = v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2LaunchTemplateDetails) String() string { + return awsutil.Prettify(s) } -// SetState sets the State field's value. -func (s *AwsEc2VpnConnectionDetails) SetState(v string) *AwsEc2VpnConnectionDetails { - s.State = &v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2LaunchTemplateDetails) GoString() string { + return s.String() } -// SetTransitGatewayId sets the TransitGatewayId field's value. -func (s *AwsEc2VpnConnectionDetails) SetTransitGatewayId(v string) *AwsEc2VpnConnectionDetails { - s.TransitGatewayId = &v +// SetDefaultVersionNumber sets the DefaultVersionNumber field's value. +func (s *AwsEc2LaunchTemplateDetails) SetDefaultVersionNumber(v int64) *AwsEc2LaunchTemplateDetails { + s.DefaultVersionNumber = &v return s } -// SetType sets the Type field's value. -func (s *AwsEc2VpnConnectionDetails) SetType(v string) *AwsEc2VpnConnectionDetails { - s.Type = &v +// SetId sets the Id field's value. +func (s *AwsEc2LaunchTemplateDetails) SetId(v string) *AwsEc2LaunchTemplateDetails { + s.Id = &v return s } -// SetVgwTelemetry sets the VgwTelemetry field's value. -func (s *AwsEc2VpnConnectionDetails) SetVgwTelemetry(v []*AwsEc2VpnConnectionVgwTelemetryDetails) *AwsEc2VpnConnectionDetails { - s.VgwTelemetry = v +// SetLatestVersionNumber sets the LatestVersionNumber field's value. +func (s *AwsEc2LaunchTemplateDetails) SetLatestVersionNumber(v int64) *AwsEc2LaunchTemplateDetails { + s.LatestVersionNumber = &v return s } -// SetVpnConnectionId sets the VpnConnectionId field's value. -func (s *AwsEc2VpnConnectionDetails) SetVpnConnectionId(v string) *AwsEc2VpnConnectionDetails { - s.VpnConnectionId = &v +// SetLaunchTemplateData sets the LaunchTemplateData field's value. +func (s *AwsEc2LaunchTemplateDetails) SetLaunchTemplateData(v *AwsEc2LaunchTemplateDataDetails) *AwsEc2LaunchTemplateDetails { + s.LaunchTemplateData = v return s } -// SetVpnGatewayId sets the VpnGatewayId field's value. -func (s *AwsEc2VpnConnectionDetails) SetVpnGatewayId(v string) *AwsEc2VpnConnectionDetails { - s.VpnGatewayId = &v +// SetLaunchTemplateName sets the LaunchTemplateName field's value. +func (s *AwsEc2LaunchTemplateDetails) SetLaunchTemplateName(v string) *AwsEc2LaunchTemplateDetails { + s.LaunchTemplateName = &v return s } -// VPN connection options. -type AwsEc2VpnConnectionOptionsDetails struct { +// An association between the network ACL and a subnet. +type AwsEc2NetworkAclAssociation struct { _ struct{} `type:"structure"` - // Whether the VPN connection uses static routes only. - StaticRoutesOnly *bool `type:"boolean"` + // The identifier of the association between the network ACL and the subnet. + NetworkAclAssociationId *string `type:"string"` - // The VPN tunnel options. - TunnelOptions []*AwsEc2VpnConnectionOptionsTunnelOptionsDetails `type:"list"` + // The identifier of the network ACL. + NetworkAclId *string `type:"string"` + + // The identifier of the subnet that is associated with the network ACL. + SubnetId *string `type:"string"` } // String returns the string representation. @@ -16189,7 +16403,7 @@ type AwsEc2VpnConnectionOptionsDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2VpnConnectionOptionsDetails) String() string { +func (s AwsEc2NetworkAclAssociation) String() string { return awsutil.Prettify(s) } @@ -16198,79 +16412,49 @@ func (s AwsEc2VpnConnectionOptionsDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2VpnConnectionOptionsDetails) GoString() string { +func (s AwsEc2NetworkAclAssociation) GoString() string { return s.String() } -// SetStaticRoutesOnly sets the StaticRoutesOnly field's value. -func (s *AwsEc2VpnConnectionOptionsDetails) SetStaticRoutesOnly(v bool) *AwsEc2VpnConnectionOptionsDetails { - s.StaticRoutesOnly = &v +// SetNetworkAclAssociationId sets the NetworkAclAssociationId field's value. +func (s *AwsEc2NetworkAclAssociation) SetNetworkAclAssociationId(v string) *AwsEc2NetworkAclAssociation { + s.NetworkAclAssociationId = &v return s } -// SetTunnelOptions sets the TunnelOptions field's value. -func (s *AwsEc2VpnConnectionOptionsDetails) SetTunnelOptions(v []*AwsEc2VpnConnectionOptionsTunnelOptionsDetails) *AwsEc2VpnConnectionOptionsDetails { - s.TunnelOptions = v +// SetNetworkAclId sets the NetworkAclId field's value. +func (s *AwsEc2NetworkAclAssociation) SetNetworkAclId(v string) *AwsEc2NetworkAclAssociation { + s.NetworkAclId = &v return s } -// The VPN tunnel options. -type AwsEc2VpnConnectionOptionsTunnelOptionsDetails struct { +// SetSubnetId sets the SubnetId field's value. +func (s *AwsEc2NetworkAclAssociation) SetSubnetId(v string) *AwsEc2NetworkAclAssociation { + s.SubnetId = &v + return s +} + +// Contains details about an Amazon EC2 network access control list (ACL). +type AwsEc2NetworkAclDetails struct { _ struct{} `type:"structure"` - // The number of seconds after which a Dead Peer Detection (DPD) timeout occurs. - DpdTimeoutSeconds *int64 `type:"integer"` + // Associations between the network ACL and subnets. + Associations []*AwsEc2NetworkAclAssociation `type:"list"` - // The Internet Key Exchange (IKE) versions that are permitted for the VPN tunnel. - IkeVersions []*string `type:"list"` + // The set of rules in the network ACL. + Entries []*AwsEc2NetworkAclEntry `type:"list"` - // The external IP address of the VPN tunnel. - OutsideIpAddress *string `type:"string"` - - // The permitted Diffie-Hellman group numbers for the VPN tunnel for phase 1 - // IKE negotiations. - Phase1DhGroupNumbers []*int64 `type:"list"` - - // The permitted encryption algorithms for the VPN tunnel for phase 1 IKE negotiations. - Phase1EncryptionAlgorithms []*string `type:"list"` - - // The permitted integrity algorithms for the VPN tunnel for phase 1 IKE negotiations. - Phase1IntegrityAlgorithms []*string `type:"list"` - - // The lifetime for phase 1 of the IKE negotiation, in seconds. - Phase1LifetimeSeconds *int64 `type:"integer"` - - // The permitted Diffie-Hellman group numbers for the VPN tunnel for phase 2 - // IKE negotiations. - Phase2DhGroupNumbers []*int64 `type:"list"` - - // The permitted encryption algorithms for the VPN tunnel for phase 2 IKE negotiations. - Phase2EncryptionAlgorithms []*string `type:"list"` - - // The permitted integrity algorithms for the VPN tunnel for phase 2 IKE negotiations. - Phase2IntegrityAlgorithms []*string `type:"list"` - - // The lifetime for phase 2 of the IKE negotiation, in seconds. - Phase2LifetimeSeconds *int64 `type:"integer"` - - // The preshared key to establish initial authentication between the virtual - // private gateway and the customer gateway. - PreSharedKey *string `type:"string"` - - // The percentage of the rekey window, which is determined by RekeyMarginTimeSeconds - // during which the rekey time is randomly selected. - RekeyFuzzPercentage *int64 `type:"integer"` + // Whether this is the default network ACL for the VPC. + IsDefault *bool `type:"boolean"` - // The margin time, in seconds, before the phase 2 lifetime expires, during - // which the Amazon Web Services side of the VPN connection performs an IKE - // rekey. - RekeyMarginTimeSeconds *int64 `type:"integer"` + // The identifier of the network ACL. + NetworkAclId *string `type:"string"` - // The number of packets in an IKE replay window. - ReplayWindowSize *int64 `type:"integer"` + // The identifier of the Amazon Web Services account that owns the network ACL. + OwnerId *string `type:"string"` - // The range of inside IPv4 addresses for the tunnel. - TunnelInsideCidr *string `type:"string"` + // The identifier of the VPC for the network ACL. + VpcId *string `type:"string"` } // String returns the string representation. @@ -16278,7 +16462,7 @@ type AwsEc2VpnConnectionOptionsTunnelOptionsDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2VpnConnectionOptionsTunnelOptionsDetails) String() string { +func (s AwsEc2NetworkAclDetails) String() string { return awsutil.Prettify(s) } @@ -16287,115 +16471,77 @@ func (s AwsEc2VpnConnectionOptionsTunnelOptionsDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2VpnConnectionOptionsTunnelOptionsDetails) GoString() string { +func (s AwsEc2NetworkAclDetails) GoString() string { return s.String() } -// SetDpdTimeoutSeconds sets the DpdTimeoutSeconds field's value. -func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetDpdTimeoutSeconds(v int64) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { - s.DpdTimeoutSeconds = &v - return s -} - -// SetIkeVersions sets the IkeVersions field's value. -func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetIkeVersions(v []*string) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { - s.IkeVersions = v - return s -} - -// SetOutsideIpAddress sets the OutsideIpAddress field's value. -func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetOutsideIpAddress(v string) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { - s.OutsideIpAddress = &v - return s -} - -// SetPhase1DhGroupNumbers sets the Phase1DhGroupNumbers field's value. -func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetPhase1DhGroupNumbers(v []*int64) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { - s.Phase1DhGroupNumbers = v - return s -} - -// SetPhase1EncryptionAlgorithms sets the Phase1EncryptionAlgorithms field's value. -func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetPhase1EncryptionAlgorithms(v []*string) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { - s.Phase1EncryptionAlgorithms = v +// SetAssociations sets the Associations field's value. +func (s *AwsEc2NetworkAclDetails) SetAssociations(v []*AwsEc2NetworkAclAssociation) *AwsEc2NetworkAclDetails { + s.Associations = v return s } -// SetPhase1IntegrityAlgorithms sets the Phase1IntegrityAlgorithms field's value. -func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetPhase1IntegrityAlgorithms(v []*string) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { - s.Phase1IntegrityAlgorithms = v +// SetEntries sets the Entries field's value. +func (s *AwsEc2NetworkAclDetails) SetEntries(v []*AwsEc2NetworkAclEntry) *AwsEc2NetworkAclDetails { + s.Entries = v return s } -// SetPhase1LifetimeSeconds sets the Phase1LifetimeSeconds field's value. -func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetPhase1LifetimeSeconds(v int64) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { - s.Phase1LifetimeSeconds = &v +// SetIsDefault sets the IsDefault field's value. +func (s *AwsEc2NetworkAclDetails) SetIsDefault(v bool) *AwsEc2NetworkAclDetails { + s.IsDefault = &v return s } -// SetPhase2DhGroupNumbers sets the Phase2DhGroupNumbers field's value. -func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetPhase2DhGroupNumbers(v []*int64) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { - s.Phase2DhGroupNumbers = v +// SetNetworkAclId sets the NetworkAclId field's value. +func (s *AwsEc2NetworkAclDetails) SetNetworkAclId(v string) *AwsEc2NetworkAclDetails { + s.NetworkAclId = &v return s } -// SetPhase2EncryptionAlgorithms sets the Phase2EncryptionAlgorithms field's value. -func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetPhase2EncryptionAlgorithms(v []*string) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { - s.Phase2EncryptionAlgorithms = v +// SetOwnerId sets the OwnerId field's value. +func (s *AwsEc2NetworkAclDetails) SetOwnerId(v string) *AwsEc2NetworkAclDetails { + s.OwnerId = &v return s } -// SetPhase2IntegrityAlgorithms sets the Phase2IntegrityAlgorithms field's value. -func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetPhase2IntegrityAlgorithms(v []*string) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { - s.Phase2IntegrityAlgorithms = v +// SetVpcId sets the VpcId field's value. +func (s *AwsEc2NetworkAclDetails) SetVpcId(v string) *AwsEc2NetworkAclDetails { + s.VpcId = &v return s } -// SetPhase2LifetimeSeconds sets the Phase2LifetimeSeconds field's value. -func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetPhase2LifetimeSeconds(v int64) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { - s.Phase2LifetimeSeconds = &v - return s -} +// A rule for the network ACL. Each rule allows or denies access based on the +// IP address, traffic direction, port, and protocol. +type AwsEc2NetworkAclEntry struct { + _ struct{} `type:"structure"` -// SetPreSharedKey sets the PreSharedKey field's value. -func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetPreSharedKey(v string) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { - s.PreSharedKey = &v - return s -} + // The IPV4 network range for which to deny or allow access. + CidrBlock *string `type:"string"` -// SetRekeyFuzzPercentage sets the RekeyFuzzPercentage field's value. -func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetRekeyFuzzPercentage(v int64) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { - s.RekeyFuzzPercentage = &v - return s -} + // Whether the rule is an egress rule. An egress rule is a rule that applies + // to traffic that leaves the subnet. + Egress *bool `type:"boolean"` -// SetRekeyMarginTimeSeconds sets the RekeyMarginTimeSeconds field's value. -func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetRekeyMarginTimeSeconds(v int64) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { - s.RekeyMarginTimeSeconds = &v - return s -} + // The Internet Control Message Protocol (ICMP) type and code for which to deny + // or allow access. + IcmpTypeCode *IcmpTypeCode `type:"structure"` -// SetReplayWindowSize sets the ReplayWindowSize field's value. -func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetReplayWindowSize(v int64) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { - s.ReplayWindowSize = &v - return s -} + // The IPV6 network range for which to deny or allow access. + Ipv6CidrBlock *string `type:"string"` -// SetTunnelInsideCidr sets the TunnelInsideCidr field's value. -func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetTunnelInsideCidr(v string) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { - s.TunnelInsideCidr = &v - return s -} + // For TCP or UDP protocols, the range of ports that the rule applies to. + PortRange *PortRangeFromTo `type:"structure"` -// A static routes associated with the VPN connection. -type AwsEc2VpnConnectionRoutesDetails struct { - _ struct{} `type:"structure"` + // The protocol that the rule applies to. To deny or allow access to all protocols, + // use the value -1. + Protocol *string `type:"string"` - // The CIDR block associated with the local subnet of the customer data center. - DestinationCidrBlock *string `type:"string"` + // Whether the rule is used to allow access or deny access. + RuleAction *string `type:"string"` - // The current state of the static route. - State *string `type:"string"` + // The rule number. The rules are processed in order by their number. + RuleNumber *int64 `type:"integer"` } // String returns the string representation. @@ -16403,7 +16549,7 @@ type AwsEc2VpnConnectionRoutesDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2VpnConnectionRoutesDetails) String() string { +func (s AwsEc2NetworkAclEntry) String() string { return awsutil.Prettify(s) } @@ -16412,136 +16558,88 @@ func (s AwsEc2VpnConnectionRoutesDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEc2VpnConnectionRoutesDetails) GoString() string { +func (s AwsEc2NetworkAclEntry) GoString() string { return s.String() } -// SetDestinationCidrBlock sets the DestinationCidrBlock field's value. -func (s *AwsEc2VpnConnectionRoutesDetails) SetDestinationCidrBlock(v string) *AwsEc2VpnConnectionRoutesDetails { - s.DestinationCidrBlock = &v +// SetCidrBlock sets the CidrBlock field's value. +func (s *AwsEc2NetworkAclEntry) SetCidrBlock(v string) *AwsEc2NetworkAclEntry { + s.CidrBlock = &v return s } -// SetState sets the State field's value. -func (s *AwsEc2VpnConnectionRoutesDetails) SetState(v string) *AwsEc2VpnConnectionRoutesDetails { - s.State = &v +// SetEgress sets the Egress field's value. +func (s *AwsEc2NetworkAclEntry) SetEgress(v bool) *AwsEc2NetworkAclEntry { + s.Egress = &v return s } -// Information about the VPN tunnel. -type AwsEc2VpnConnectionVgwTelemetryDetails struct { - _ struct{} `type:"structure"` - - // The number of accepted routes. - AcceptedRouteCount *int64 `type:"integer"` - - // The ARN of the VPN tunnel endpoint certificate. - CertificateArn *string `type:"string"` - - // The date and time of the last change in status. - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - LastStatusChange *string `type:"string"` - - // The Internet-routable IP address of the virtual private gateway's outside - // interface. - OutsideIpAddress *string `type:"string"` - - // The status of the VPN tunnel. Valid values are DOWN or UP. - Status *string `type:"string"` - - // If an error occurs, a description of the error. - StatusMessage *string `type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsEc2VpnConnectionVgwTelemetryDetails) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsEc2VpnConnectionVgwTelemetryDetails) GoString() string { - return s.String() -} - -// SetAcceptedRouteCount sets the AcceptedRouteCount field's value. -func (s *AwsEc2VpnConnectionVgwTelemetryDetails) SetAcceptedRouteCount(v int64) *AwsEc2VpnConnectionVgwTelemetryDetails { - s.AcceptedRouteCount = &v +// SetIcmpTypeCode sets the IcmpTypeCode field's value. +func (s *AwsEc2NetworkAclEntry) SetIcmpTypeCode(v *IcmpTypeCode) *AwsEc2NetworkAclEntry { + s.IcmpTypeCode = v return s } -// SetCertificateArn sets the CertificateArn field's value. -func (s *AwsEc2VpnConnectionVgwTelemetryDetails) SetCertificateArn(v string) *AwsEc2VpnConnectionVgwTelemetryDetails { - s.CertificateArn = &v +// SetIpv6CidrBlock sets the Ipv6CidrBlock field's value. +func (s *AwsEc2NetworkAclEntry) SetIpv6CidrBlock(v string) *AwsEc2NetworkAclEntry { + s.Ipv6CidrBlock = &v return s } -// SetLastStatusChange sets the LastStatusChange field's value. -func (s *AwsEc2VpnConnectionVgwTelemetryDetails) SetLastStatusChange(v string) *AwsEc2VpnConnectionVgwTelemetryDetails { - s.LastStatusChange = &v +// SetPortRange sets the PortRange field's value. +func (s *AwsEc2NetworkAclEntry) SetPortRange(v *PortRangeFromTo) *AwsEc2NetworkAclEntry { + s.PortRange = v return s } -// SetOutsideIpAddress sets the OutsideIpAddress field's value. -func (s *AwsEc2VpnConnectionVgwTelemetryDetails) SetOutsideIpAddress(v string) *AwsEc2VpnConnectionVgwTelemetryDetails { - s.OutsideIpAddress = &v +// SetProtocol sets the Protocol field's value. +func (s *AwsEc2NetworkAclEntry) SetProtocol(v string) *AwsEc2NetworkAclEntry { + s.Protocol = &v return s } -// SetStatus sets the Status field's value. -func (s *AwsEc2VpnConnectionVgwTelemetryDetails) SetStatus(v string) *AwsEc2VpnConnectionVgwTelemetryDetails { - s.Status = &v +// SetRuleAction sets the RuleAction field's value. +func (s *AwsEc2NetworkAclEntry) SetRuleAction(v string) *AwsEc2NetworkAclEntry { + s.RuleAction = &v return s } -// SetStatusMessage sets the StatusMessage field's value. -func (s *AwsEc2VpnConnectionVgwTelemetryDetails) SetStatusMessage(v string) *AwsEc2VpnConnectionVgwTelemetryDetails { - s.StatusMessage = &v +// SetRuleNumber sets the RuleNumber field's value. +func (s *AwsEc2NetworkAclEntry) SetRuleNumber(v int64) *AwsEc2NetworkAclEntry { + s.RuleNumber = &v return s } -// Information about an Amazon ECR image. -type AwsEcrContainerImageDetails struct { +// Information about the network interface attachment. +type AwsEc2NetworkInterfaceAttachment struct { _ struct{} `type:"structure"` - // The architecture of the image. Valid values are as follows: - // - // * arm64 - // - // * i386 - // - // * x86_64 - Architecture *string `type:"string"` - - // The sha256 digest of the image manifest. - ImageDigest *string `type:"string"` - - // The date and time when the image was pushed to the repository. + // Indicates when the attachment initiated. // // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot // contain spaces. For example, 2020-03-22T13:22:13.933Z. - ImagePublishedAt *string `type:"string"` + AttachTime *string `type:"string"` - // The list of tags that are associated with the image. - ImageTags []*string `type:"list"` + // The identifier of the network interface attachment + AttachmentId *string `type:"string"` - // The Amazon Web Services account identifier that is associated with the registry - // that the image belongs to. - RegistryId *string `type:"string"` + // Indicates whether the network interface is deleted when the instance is terminated. + DeleteOnTermination *bool `type:"boolean"` - // The name of the repository that the image belongs to. - RepositoryName *string `type:"string"` + // The device index of the network interface attachment on the instance. + DeviceIndex *int64 `type:"integer"` + + // The ID of the instance. + InstanceId *string `type:"string"` + + // The Amazon Web Services account ID of the owner of the instance. + InstanceOwnerId *string `type:"string"` + + // The attachment state. + // + // Valid values: attaching | attached | detaching | detached + Status *string `type:"string"` } // String returns the string representation. @@ -16549,7 +16647,7 @@ type AwsEcrContainerImageDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcrContainerImageDetails) String() string { +func (s AwsEc2NetworkInterfaceAttachment) String() string { return awsutil.Prettify(s) } @@ -16558,68 +16656,79 @@ func (s AwsEcrContainerImageDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcrContainerImageDetails) GoString() string { +func (s AwsEc2NetworkInterfaceAttachment) GoString() string { return s.String() } -// SetArchitecture sets the Architecture field's value. -func (s *AwsEcrContainerImageDetails) SetArchitecture(v string) *AwsEcrContainerImageDetails { - s.Architecture = &v +// SetAttachTime sets the AttachTime field's value. +func (s *AwsEc2NetworkInterfaceAttachment) SetAttachTime(v string) *AwsEc2NetworkInterfaceAttachment { + s.AttachTime = &v return s } -// SetImageDigest sets the ImageDigest field's value. -func (s *AwsEcrContainerImageDetails) SetImageDigest(v string) *AwsEcrContainerImageDetails { - s.ImageDigest = &v +// SetAttachmentId sets the AttachmentId field's value. +func (s *AwsEc2NetworkInterfaceAttachment) SetAttachmentId(v string) *AwsEc2NetworkInterfaceAttachment { + s.AttachmentId = &v return s } -// SetImagePublishedAt sets the ImagePublishedAt field's value. -func (s *AwsEcrContainerImageDetails) SetImagePublishedAt(v string) *AwsEcrContainerImageDetails { - s.ImagePublishedAt = &v +// SetDeleteOnTermination sets the DeleteOnTermination field's value. +func (s *AwsEc2NetworkInterfaceAttachment) SetDeleteOnTermination(v bool) *AwsEc2NetworkInterfaceAttachment { + s.DeleteOnTermination = &v return s } -// SetImageTags sets the ImageTags field's value. -func (s *AwsEcrContainerImageDetails) SetImageTags(v []*string) *AwsEcrContainerImageDetails { - s.ImageTags = v +// SetDeviceIndex sets the DeviceIndex field's value. +func (s *AwsEc2NetworkInterfaceAttachment) SetDeviceIndex(v int64) *AwsEc2NetworkInterfaceAttachment { + s.DeviceIndex = &v return s } -// SetRegistryId sets the RegistryId field's value. -func (s *AwsEcrContainerImageDetails) SetRegistryId(v string) *AwsEcrContainerImageDetails { - s.RegistryId = &v +// SetInstanceId sets the InstanceId field's value. +func (s *AwsEc2NetworkInterfaceAttachment) SetInstanceId(v string) *AwsEc2NetworkInterfaceAttachment { + s.InstanceId = &v return s } -// SetRepositoryName sets the RepositoryName field's value. -func (s *AwsEcrContainerImageDetails) SetRepositoryName(v string) *AwsEcrContainerImageDetails { - s.RepositoryName = &v +// SetInstanceOwnerId sets the InstanceOwnerId field's value. +func (s *AwsEc2NetworkInterfaceAttachment) SetInstanceOwnerId(v string) *AwsEc2NetworkInterfaceAttachment { + s.InstanceOwnerId = &v return s } -// Provides information about an Amazon Elastic Container Registry repository. -type AwsEcrRepositoryDetails struct { +// SetStatus sets the Status field's value. +func (s *AwsEc2NetworkInterfaceAttachment) SetStatus(v string) *AwsEc2NetworkInterfaceAttachment { + s.Status = &v + return s +} + +// Details about the network interface +type AwsEc2NetworkInterfaceDetails struct { _ struct{} `type:"structure"` - // The ARN of the repository. - Arn *string `type:"string"` + // The network interface attachment. + Attachment *AwsEc2NetworkInterfaceAttachment `type:"structure"` - // The image scanning configuration for a repository. - ImageScanningConfiguration *AwsEcrRepositoryImageScanningConfigurationDetails `type:"structure"` + // The IPv6 addresses associated with the network interface. + IpV6Addresses []*AwsEc2NetworkInterfaceIpV6AddressDetail `type:"list"` - // The tag mutability setting for the repository. Valid values are IMMUTABLE - // or MUTABLE. - ImageTagMutability *string `type:"string"` + // The ID of the network interface. + NetworkInterfaceId *string `type:"string"` - // Information about the lifecycle policy for the repository. - LifecyclePolicy *AwsEcrRepositoryLifecyclePolicyDetails `type:"structure"` + // The private IPv4 addresses associated with the network interface. + PrivateIpAddresses []*AwsEc2NetworkInterfacePrivateIpAddressDetail `type:"list"` - // The name of the repository. - RepositoryName *string `type:"string"` + // The public DNS name of the network interface. + PublicDnsName *string `type:"string"` - // The text of the repository policy. - RepositoryPolicyText *string `type:"string"` + // The address of the Elastic IP address bound to the network interface. + PublicIp *string `type:"string"` + + // Security groups for the network interface. + SecurityGroups []*AwsEc2NetworkInterfaceSecurityGroup `type:"list"` + + // Indicates whether traffic to or from the instance is validated. + SourceDestCheck *bool `type:"boolean"` } // String returns the string representation. @@ -16627,7 +16736,7 @@ type AwsEcrRepositoryDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcrRepositoryDetails) String() string { +func (s AwsEc2NetworkInterfaceDetails) String() string { return awsutil.Prettify(s) } @@ -16636,52 +16745,65 @@ func (s AwsEcrRepositoryDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcrRepositoryDetails) GoString() string { +func (s AwsEc2NetworkInterfaceDetails) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *AwsEcrRepositoryDetails) SetArn(v string) *AwsEcrRepositoryDetails { - s.Arn = &v +// SetAttachment sets the Attachment field's value. +func (s *AwsEc2NetworkInterfaceDetails) SetAttachment(v *AwsEc2NetworkInterfaceAttachment) *AwsEc2NetworkInterfaceDetails { + s.Attachment = v return s } -// SetImageScanningConfiguration sets the ImageScanningConfiguration field's value. -func (s *AwsEcrRepositoryDetails) SetImageScanningConfiguration(v *AwsEcrRepositoryImageScanningConfigurationDetails) *AwsEcrRepositoryDetails { - s.ImageScanningConfiguration = v +// SetIpV6Addresses sets the IpV6Addresses field's value. +func (s *AwsEc2NetworkInterfaceDetails) SetIpV6Addresses(v []*AwsEc2NetworkInterfaceIpV6AddressDetail) *AwsEc2NetworkInterfaceDetails { + s.IpV6Addresses = v return s } -// SetImageTagMutability sets the ImageTagMutability field's value. -func (s *AwsEcrRepositoryDetails) SetImageTagMutability(v string) *AwsEcrRepositoryDetails { - s.ImageTagMutability = &v +// SetNetworkInterfaceId sets the NetworkInterfaceId field's value. +func (s *AwsEc2NetworkInterfaceDetails) SetNetworkInterfaceId(v string) *AwsEc2NetworkInterfaceDetails { + s.NetworkInterfaceId = &v return s } -// SetLifecyclePolicy sets the LifecyclePolicy field's value. -func (s *AwsEcrRepositoryDetails) SetLifecyclePolicy(v *AwsEcrRepositoryLifecyclePolicyDetails) *AwsEcrRepositoryDetails { - s.LifecyclePolicy = v +// SetPrivateIpAddresses sets the PrivateIpAddresses field's value. +func (s *AwsEc2NetworkInterfaceDetails) SetPrivateIpAddresses(v []*AwsEc2NetworkInterfacePrivateIpAddressDetail) *AwsEc2NetworkInterfaceDetails { + s.PrivateIpAddresses = v return s } -// SetRepositoryName sets the RepositoryName field's value. -func (s *AwsEcrRepositoryDetails) SetRepositoryName(v string) *AwsEcrRepositoryDetails { - s.RepositoryName = &v +// SetPublicDnsName sets the PublicDnsName field's value. +func (s *AwsEc2NetworkInterfaceDetails) SetPublicDnsName(v string) *AwsEc2NetworkInterfaceDetails { + s.PublicDnsName = &v return s } -// SetRepositoryPolicyText sets the RepositoryPolicyText field's value. -func (s *AwsEcrRepositoryDetails) SetRepositoryPolicyText(v string) *AwsEcrRepositoryDetails { - s.RepositoryPolicyText = &v +// SetPublicIp sets the PublicIp field's value. +func (s *AwsEc2NetworkInterfaceDetails) SetPublicIp(v string) *AwsEc2NetworkInterfaceDetails { + s.PublicIp = &v return s } -// The image scanning configuration for a repository. -type AwsEcrRepositoryImageScanningConfigurationDetails struct { +// SetSecurityGroups sets the SecurityGroups field's value. +func (s *AwsEc2NetworkInterfaceDetails) SetSecurityGroups(v []*AwsEc2NetworkInterfaceSecurityGroup) *AwsEc2NetworkInterfaceDetails { + s.SecurityGroups = v + return s +} + +// SetSourceDestCheck sets the SourceDestCheck field's value. +func (s *AwsEc2NetworkInterfaceDetails) SetSourceDestCheck(v bool) *AwsEc2NetworkInterfaceDetails { + s.SourceDestCheck = &v + return s +} + +// Provides information about an IPV6 address that is associated with the network +// interface. +type AwsEc2NetworkInterfaceIpV6AddressDetail struct { _ struct{} `type:"structure"` - // Whether to scan images after they are pushed to a repository. - ScanOnPush *bool `type:"boolean"` + // The IPV6 address. + IpV6Address *string `type:"string"` } // String returns the string representation. @@ -16689,7 +16811,7 @@ type AwsEcrRepositoryImageScanningConfigurationDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcrRepositoryImageScanningConfigurationDetails) String() string { +func (s AwsEc2NetworkInterfaceIpV6AddressDetail) String() string { return awsutil.Prettify(s) } @@ -16698,26 +16820,26 @@ func (s AwsEcrRepositoryImageScanningConfigurationDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcrRepositoryImageScanningConfigurationDetails) GoString() string { +func (s AwsEc2NetworkInterfaceIpV6AddressDetail) GoString() string { return s.String() } -// SetScanOnPush sets the ScanOnPush field's value. -func (s *AwsEcrRepositoryImageScanningConfigurationDetails) SetScanOnPush(v bool) *AwsEcrRepositoryImageScanningConfigurationDetails { - s.ScanOnPush = &v +// SetIpV6Address sets the IpV6Address field's value. +func (s *AwsEc2NetworkInterfaceIpV6AddressDetail) SetIpV6Address(v string) *AwsEc2NetworkInterfaceIpV6AddressDetail { + s.IpV6Address = &v return s } -// Information about the lifecycle policy for the repository. -type AwsEcrRepositoryLifecyclePolicyDetails struct { +// Provides information about a private IPv4 address that is with the network +// interface. +type AwsEc2NetworkInterfacePrivateIpAddressDetail struct { _ struct{} `type:"structure"` - // The text of the lifecycle policy. - LifecyclePolicyText *string `type:"string"` + // The private DNS name for the IP address. + PrivateDnsName *string `type:"string"` - // The Amazon Web Services account identifier that is associated with the registry - // that contains the repository. - RegistryId *string `type:"string"` + // The IP address. + PrivateIpAddress *string `type:"string"` } // String returns the string representation. @@ -16725,7 +16847,7 @@ type AwsEcrRepositoryLifecyclePolicyDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcrRepositoryLifecyclePolicyDetails) String() string { +func (s AwsEc2NetworkInterfacePrivateIpAddressDetail) String() string { return awsutil.Prettify(s) } @@ -16734,31 +16856,31 @@ func (s AwsEcrRepositoryLifecyclePolicyDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcrRepositoryLifecyclePolicyDetails) GoString() string { +func (s AwsEc2NetworkInterfacePrivateIpAddressDetail) GoString() string { return s.String() } -// SetLifecyclePolicyText sets the LifecyclePolicyText field's value. -func (s *AwsEcrRepositoryLifecyclePolicyDetails) SetLifecyclePolicyText(v string) *AwsEcrRepositoryLifecyclePolicyDetails { - s.LifecyclePolicyText = &v +// SetPrivateDnsName sets the PrivateDnsName field's value. +func (s *AwsEc2NetworkInterfacePrivateIpAddressDetail) SetPrivateDnsName(v string) *AwsEc2NetworkInterfacePrivateIpAddressDetail { + s.PrivateDnsName = &v return s } -// SetRegistryId sets the RegistryId field's value. -func (s *AwsEcrRepositoryLifecyclePolicyDetails) SetRegistryId(v string) *AwsEcrRepositoryLifecyclePolicyDetails { - s.RegistryId = &v +// SetPrivateIpAddress sets the PrivateIpAddress field's value. +func (s *AwsEc2NetworkInterfacePrivateIpAddressDetail) SetPrivateIpAddress(v string) *AwsEc2NetworkInterfacePrivateIpAddressDetail { + s.PrivateIpAddress = &v return s } -// Indicates whether to enable CloudWatch Container Insights for the ECS cluster. -type AwsEcsClusterClusterSettingsDetails struct { +// A security group associated with the network interface. +type AwsEc2NetworkInterfaceSecurityGroup struct { _ struct{} `type:"structure"` - // The name of the setting. The valid value is containerInsights. - Name *string `type:"string"` + // The ID of the security group. + GroupId *string `type:"string"` - // The value of the setting. Valid values are disabled or enabled. - Value *string `type:"string"` + // The name of the security group. + GroupName *string `type:"string"` } // String returns the string representation. @@ -16766,7 +16888,7 @@ type AwsEcsClusterClusterSettingsDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsClusterClusterSettingsDetails) String() string { +func (s AwsEc2NetworkInterfaceSecurityGroup) String() string { return awsutil.Prettify(s) } @@ -16775,28 +16897,43 @@ func (s AwsEcsClusterClusterSettingsDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsClusterClusterSettingsDetails) GoString() string { +func (s AwsEc2NetworkInterfaceSecurityGroup) GoString() string { return s.String() } -// SetName sets the Name field's value. -func (s *AwsEcsClusterClusterSettingsDetails) SetName(v string) *AwsEcsClusterClusterSettingsDetails { - s.Name = &v +// SetGroupId sets the GroupId field's value. +func (s *AwsEc2NetworkInterfaceSecurityGroup) SetGroupId(v string) *AwsEc2NetworkInterfaceSecurityGroup { + s.GroupId = &v return s } -// SetValue sets the Value field's value. -func (s *AwsEcsClusterClusterSettingsDetails) SetValue(v string) *AwsEcsClusterClusterSettingsDetails { - s.Value = &v +// SetGroupName sets the GroupName field's value. +func (s *AwsEc2NetworkInterfaceSecurityGroup) SetGroupName(v string) *AwsEc2NetworkInterfaceSecurityGroup { + s.GroupName = &v return s } -// The run command configuration for the cluster. -type AwsEcsClusterConfigurationDetails struct { +// Details about an Amazon EC2 security group. +type AwsEc2SecurityGroupDetails struct { _ struct{} `type:"structure"` - // Contains the run command configuration for the cluster. - ExecuteCommandConfiguration *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails `type:"structure"` + // The ID of the security group. + GroupId *string `type:"string"` + + // The name of the security group. + GroupName *string `type:"string"` + + // The inbound rules associated with the security group. + IpPermissions []*AwsEc2SecurityGroupIpPermission `type:"list"` + + // [VPC only] The outbound rules associated with the security group. + IpPermissionsEgress []*AwsEc2SecurityGroupIpPermission `type:"list"` + + // The Amazon Web Services account ID of the owner of the security group. + OwnerId *string `type:"string"` + + // [VPC only] The ID of the VPC for the security group. + VpcId *string `type:"string"` } // String returns the string representation. @@ -16804,7 +16941,7 @@ type AwsEcsClusterConfigurationDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsClusterConfigurationDetails) String() string { +func (s AwsEc2SecurityGroupDetails) String() string { return awsutil.Prettify(s) } @@ -16813,86 +16950,91 @@ func (s AwsEcsClusterConfigurationDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsClusterConfigurationDetails) GoString() string { +func (s AwsEc2SecurityGroupDetails) GoString() string { return s.String() } -// SetExecuteCommandConfiguration sets the ExecuteCommandConfiguration field's value. -func (s *AwsEcsClusterConfigurationDetails) SetExecuteCommandConfiguration(v *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails) *AwsEcsClusterConfigurationDetails { - s.ExecuteCommandConfiguration = v +// SetGroupId sets the GroupId field's value. +func (s *AwsEc2SecurityGroupDetails) SetGroupId(v string) *AwsEc2SecurityGroupDetails { + s.GroupId = &v return s } -// Contains the run command configuration for the cluster. -type AwsEcsClusterConfigurationExecuteCommandConfigurationDetails struct { - _ struct{} `type:"structure"` - - // The identifier of the KMS key that is used to encrypt the data between the - // local client and the container. - KmsKeyId *string `type:"string"` - - // The log configuration for the results of the run command actions. Required - // if Logging is NONE. - LogConfiguration *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails `type:"structure"` - - // The log setting to use for redirecting logs for run command results. - Logging *string `type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsEcsClusterConfigurationExecuteCommandConfigurationDetails) String() string { - return awsutil.Prettify(s) +// SetGroupName sets the GroupName field's value. +func (s *AwsEc2SecurityGroupDetails) SetGroupName(v string) *AwsEc2SecurityGroupDetails { + s.GroupName = &v + return s } -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsEcsClusterConfigurationExecuteCommandConfigurationDetails) GoString() string { - return s.String() +// SetIpPermissions sets the IpPermissions field's value. +func (s *AwsEc2SecurityGroupDetails) SetIpPermissions(v []*AwsEc2SecurityGroupIpPermission) *AwsEc2SecurityGroupDetails { + s.IpPermissions = v + return s } -// SetKmsKeyId sets the KmsKeyId field's value. -func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails) SetKmsKeyId(v string) *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails { - s.KmsKeyId = &v +// SetIpPermissionsEgress sets the IpPermissionsEgress field's value. +func (s *AwsEc2SecurityGroupDetails) SetIpPermissionsEgress(v []*AwsEc2SecurityGroupIpPermission) *AwsEc2SecurityGroupDetails { + s.IpPermissionsEgress = v return s } -// SetLogConfiguration sets the LogConfiguration field's value. -func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails) SetLogConfiguration(v *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails { - s.LogConfiguration = v +// SetOwnerId sets the OwnerId field's value. +func (s *AwsEc2SecurityGroupDetails) SetOwnerId(v string) *AwsEc2SecurityGroupDetails { + s.OwnerId = &v return s } -// SetLogging sets the Logging field's value. -func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails) SetLogging(v string) *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails { - s.Logging = &v +// SetVpcId sets the VpcId field's value. +func (s *AwsEc2SecurityGroupDetails) SetVpcId(v string) *AwsEc2SecurityGroupDetails { + s.VpcId = &v return s } -// The log configuration for the results of the run command actions. -type AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails struct { +// An IP permission for an EC2 security group. +type AwsEc2SecurityGroupIpPermission struct { _ struct{} `type:"structure"` - // Whether to enable encryption on the CloudWatch logs. - CloudWatchEncryptionEnabled *bool `type:"boolean"` + // The start of the port range for the TCP and UDP protocols, or an ICMP/ICMPv6 + // type number. + // + // A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 + // types, you must specify all codes. + FromPort *int64 `type:"integer"` - // The name of the CloudWatch log group to send the logs to. - CloudWatchLogGroupName *string `type:"string"` + // The IP protocol name (tcp, udp, icmp, icmpv6) or number. + // + // [VPC only] Use -1 to specify all protocols. + // + // When authorizing security group rules, specifying -1 or a protocol number + // other than tcp, udp, icmp, or icmpv6 allows traffic on all ports, regardless + // of any port range you specify. + // + // For tcp, udp, and icmp, you must specify a port range. + // + // For icmpv6, the port range is optional. If you omit the port range, traffic + // for all types and codes is allowed. + IpProtocol *string `type:"string"` - // The name of the S3 bucket to send logs to. - S3BucketName *string `type:"string"` + // The IPv4 ranges. + IpRanges []*AwsEc2SecurityGroupIpRange `type:"list"` - // Whether to encrypt the logs that are sent to the S3 bucket. - S3EncryptionEnabled *bool `type:"boolean"` + // The IPv6 ranges. + Ipv6Ranges []*AwsEc2SecurityGroupIpv6Range `type:"list"` - // Identifies the folder in the S3 bucket to send the logs to. - S3KeyPrefix *string `type:"string"` + // [VPC only] The prefix list IDs for an Amazon Web Services service. With outbound + // rules, this is the Amazon Web Services service to access through a VPC endpoint + // from instances associated with the security group. + PrefixListIds []*AwsEc2SecurityGroupPrefixListId `type:"list"` + + // The end of the port range for the TCP and UDP protocols, or an ICMP/ICMPv6 + // code. + // + // A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 + // types, you must specify all codes. + ToPort *int64 `type:"integer"` + + // The security group and Amazon Web Services account ID pairs. + UserIdGroupPairs []*AwsEc2SecurityGroupUserIdGroupPair `type:"list"` } // String returns the string representation. @@ -16900,7 +17042,7 @@ type AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetail // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) String() string { +func (s AwsEc2SecurityGroupIpPermission) String() string { return awsutil.Prettify(s) } @@ -16909,55 +17051,60 @@ func (s AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDet // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) GoString() string { +func (s AwsEc2SecurityGroupIpPermission) GoString() string { return s.String() } -// SetCloudWatchEncryptionEnabled sets the CloudWatchEncryptionEnabled field's value. -func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) SetCloudWatchEncryptionEnabled(v bool) *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails { - s.CloudWatchEncryptionEnabled = &v +// SetFromPort sets the FromPort field's value. +func (s *AwsEc2SecurityGroupIpPermission) SetFromPort(v int64) *AwsEc2SecurityGroupIpPermission { + s.FromPort = &v return s } -// SetCloudWatchLogGroupName sets the CloudWatchLogGroupName field's value. -func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) SetCloudWatchLogGroupName(v string) *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails { - s.CloudWatchLogGroupName = &v +// SetIpProtocol sets the IpProtocol field's value. +func (s *AwsEc2SecurityGroupIpPermission) SetIpProtocol(v string) *AwsEc2SecurityGroupIpPermission { + s.IpProtocol = &v return s } -// SetS3BucketName sets the S3BucketName field's value. -func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) SetS3BucketName(v string) *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails { - s.S3BucketName = &v +// SetIpRanges sets the IpRanges field's value. +func (s *AwsEc2SecurityGroupIpPermission) SetIpRanges(v []*AwsEc2SecurityGroupIpRange) *AwsEc2SecurityGroupIpPermission { + s.IpRanges = v return s } -// SetS3EncryptionEnabled sets the S3EncryptionEnabled field's value. -func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) SetS3EncryptionEnabled(v bool) *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails { - s.S3EncryptionEnabled = &v +// SetIpv6Ranges sets the Ipv6Ranges field's value. +func (s *AwsEc2SecurityGroupIpPermission) SetIpv6Ranges(v []*AwsEc2SecurityGroupIpv6Range) *AwsEc2SecurityGroupIpPermission { + s.Ipv6Ranges = v return s } -// SetS3KeyPrefix sets the S3KeyPrefix field's value. -func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) SetS3KeyPrefix(v string) *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails { - s.S3KeyPrefix = &v +// SetPrefixListIds sets the PrefixListIds field's value. +func (s *AwsEc2SecurityGroupIpPermission) SetPrefixListIds(v []*AwsEc2SecurityGroupPrefixListId) *AwsEc2SecurityGroupIpPermission { + s.PrefixListIds = v return s } -// The default capacity provider strategy for the cluster. The default capacity -// provider strategy is used when services or tasks are run without a specified -// launch type or capacity provider strategy. -type AwsEcsClusterDefaultCapacityProviderStrategyDetails struct { - _ struct{} `type:"structure"` +// SetToPort sets the ToPort field's value. +func (s *AwsEc2SecurityGroupIpPermission) SetToPort(v int64) *AwsEc2SecurityGroupIpPermission { + s.ToPort = &v + return s +} - // The minimum number of tasks to run on the specified capacity provider. - Base *int64 `type:"integer"` +// SetUserIdGroupPairs sets the UserIdGroupPairs field's value. +func (s *AwsEc2SecurityGroupIpPermission) SetUserIdGroupPairs(v []*AwsEc2SecurityGroupUserIdGroupPair) *AwsEc2SecurityGroupIpPermission { + s.UserIdGroupPairs = v + return s +} - // The name of the capacity provider. - CapacityProvider *string `type:"string"` +// A range of IPv4 addresses. +type AwsEc2SecurityGroupIpRange struct { + _ struct{} `type:"structure"` - // The relative percentage of the total number of tasks launched that should - // use the capacity provider. - Weight *int64 `type:"integer"` + // The IPv4 CIDR range. You can specify either a CIDR range or a source security + // group, but not both. To specify a single IPv4 address, use the /32 prefix + // length. + CidrIp *string `type:"string"` } // String returns the string representation. @@ -16965,7 +17112,7 @@ type AwsEcsClusterDefaultCapacityProviderStrategyDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsClusterDefaultCapacityProviderStrategyDetails) String() string { +func (s AwsEc2SecurityGroupIpRange) String() string { return awsutil.Prettify(s) } @@ -16974,67 +17121,24 @@ func (s AwsEcsClusterDefaultCapacityProviderStrategyDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsClusterDefaultCapacityProviderStrategyDetails) GoString() string { +func (s AwsEc2SecurityGroupIpRange) GoString() string { return s.String() } -// SetBase sets the Base field's value. -func (s *AwsEcsClusterDefaultCapacityProviderStrategyDetails) SetBase(v int64) *AwsEcsClusterDefaultCapacityProviderStrategyDetails { - s.Base = &v - return s -} - -// SetCapacityProvider sets the CapacityProvider field's value. -func (s *AwsEcsClusterDefaultCapacityProviderStrategyDetails) SetCapacityProvider(v string) *AwsEcsClusterDefaultCapacityProviderStrategyDetails { - s.CapacityProvider = &v - return s -} - -// SetWeight sets the Weight field's value. -func (s *AwsEcsClusterDefaultCapacityProviderStrategyDetails) SetWeight(v int64) *AwsEcsClusterDefaultCapacityProviderStrategyDetails { - s.Weight = &v +// SetCidrIp sets the CidrIp field's value. +func (s *AwsEc2SecurityGroupIpRange) SetCidrIp(v string) *AwsEc2SecurityGroupIpRange { + s.CidrIp = &v return s } -// Provides details about an Amazon ECS cluster. -type AwsEcsClusterDetails struct { +// A range of IPv6 addresses. +type AwsEc2SecurityGroupIpv6Range struct { _ struct{} `type:"structure"` - // The number of services that are running on the cluster in an ACTIVE state. - // You can view these services with the Amazon ECS ListServices (https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ListServices.html) - // API operation. - ActiveServicesCount *int64 `type:"integer"` - - // The short name of one or more capacity providers to associate with the cluster. - CapacityProviders []*string `type:"list"` - - // The Amazon Resource Name (ARN) that identifies the cluster. - ClusterArn *string `type:"string"` - - // A name that you use to identify your cluster. - ClusterName *string `type:"string"` - - // The setting to use to create the cluster. Specifically used to configure - // whether to enable CloudWatch Container Insights for the cluster. - ClusterSettings []*AwsEcsClusterClusterSettingsDetails `type:"list"` - - // The run command configuration for the cluster. - Configuration *AwsEcsClusterConfigurationDetails `type:"structure"` - - // The default capacity provider strategy for the cluster. The default capacity - // provider strategy is used when services or tasks are run without a specified - // launch type or capacity provider strategy. - DefaultCapacityProviderStrategy []*AwsEcsClusterDefaultCapacityProviderStrategyDetails `type:"list"` - - // The number of container instances registered into the cluster. This includes - // container instances in both ACTIVE and DRAINING status. - RegisteredContainerInstancesCount *int64 `type:"integer"` - - // The number of tasks in the cluster that are in the RUNNING state. - RunningTasksCount *int64 `type:"integer"` - - // The status of the cluster. - Status *string `type:"string"` + // The IPv6 CIDR range. You can specify either a CIDR range or a source security + // group, but not both. To specify a single IPv6 address, use the /128 prefix + // length. + CidrIpv6 *string `type:"string"` } // String returns the string representation. @@ -17042,7 +17146,7 @@ type AwsEcsClusterDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsClusterDetails) String() string { +func (s AwsEc2SecurityGroupIpv6Range) String() string { return awsutil.Prettify(s) } @@ -17051,86 +17155,76 @@ func (s AwsEcsClusterDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsClusterDetails) GoString() string { +func (s AwsEc2SecurityGroupIpv6Range) GoString() string { return s.String() } -// SetActiveServicesCount sets the ActiveServicesCount field's value. -func (s *AwsEcsClusterDetails) SetActiveServicesCount(v int64) *AwsEcsClusterDetails { - s.ActiveServicesCount = &v - return s -} - -// SetCapacityProviders sets the CapacityProviders field's value. -func (s *AwsEcsClusterDetails) SetCapacityProviders(v []*string) *AwsEcsClusterDetails { - s.CapacityProviders = v - return s -} - -// SetClusterArn sets the ClusterArn field's value. -func (s *AwsEcsClusterDetails) SetClusterArn(v string) *AwsEcsClusterDetails { - s.ClusterArn = &v +// SetCidrIpv6 sets the CidrIpv6 field's value. +func (s *AwsEc2SecurityGroupIpv6Range) SetCidrIpv6(v string) *AwsEc2SecurityGroupIpv6Range { + s.CidrIpv6 = &v return s } -// SetClusterName sets the ClusterName field's value. -func (s *AwsEcsClusterDetails) SetClusterName(v string) *AwsEcsClusterDetails { - s.ClusterName = &v - return s -} +// A prefix list ID. +type AwsEc2SecurityGroupPrefixListId struct { + _ struct{} `type:"structure"` -// SetClusterSettings sets the ClusterSettings field's value. -func (s *AwsEcsClusterDetails) SetClusterSettings(v []*AwsEcsClusterClusterSettingsDetails) *AwsEcsClusterDetails { - s.ClusterSettings = v - return s + // The ID of the prefix. + PrefixListId *string `type:"string"` } -// SetConfiguration sets the Configuration field's value. -func (s *AwsEcsClusterDetails) SetConfiguration(v *AwsEcsClusterConfigurationDetails) *AwsEcsClusterDetails { - s.Configuration = v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2SecurityGroupPrefixListId) String() string { + return awsutil.Prettify(s) } -// SetDefaultCapacityProviderStrategy sets the DefaultCapacityProviderStrategy field's value. -func (s *AwsEcsClusterDetails) SetDefaultCapacityProviderStrategy(v []*AwsEcsClusterDefaultCapacityProviderStrategyDetails) *AwsEcsClusterDetails { - s.DefaultCapacityProviderStrategy = v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2SecurityGroupPrefixListId) GoString() string { + return s.String() } -// SetRegisteredContainerInstancesCount sets the RegisteredContainerInstancesCount field's value. -func (s *AwsEcsClusterDetails) SetRegisteredContainerInstancesCount(v int64) *AwsEcsClusterDetails { - s.RegisteredContainerInstancesCount = &v +// SetPrefixListId sets the PrefixListId field's value. +func (s *AwsEc2SecurityGroupPrefixListId) SetPrefixListId(v string) *AwsEc2SecurityGroupPrefixListId { + s.PrefixListId = &v return s } -// SetRunningTasksCount sets the RunningTasksCount field's value. -func (s *AwsEcsClusterDetails) SetRunningTasksCount(v int64) *AwsEcsClusterDetails { - s.RunningTasksCount = &v - return s -} +// A relationship between a security group and a user. +type AwsEc2SecurityGroupUserIdGroupPair struct { + _ struct{} `type:"structure"` -// SetStatus sets the Status field's value. -func (s *AwsEcsClusterDetails) SetStatus(v string) *AwsEcsClusterDetails { - s.Status = &v - return s -} + // The ID of the security group. + GroupId *string `type:"string"` -// Provides information about an Amazon ECS container. -type AwsEcsContainerDetails struct { - _ struct{} `type:"structure"` + // The name of the security group. + GroupName *string `type:"string"` - // The image used for the container. - Image *string `type:"string"` + // The status of a VPC peering connection, if applicable. + PeeringStatus *string `type:"string"` - // The mount points for data volumes in your container. - MountPoints []*AwsMountPoint `type:"list"` + // The ID of an Amazon Web Services account. + // + // For a referenced security group in another VPC, the account ID of the referenced + // security group is returned in the response. If the referenced security group + // is deleted, this value is not returned. + // + // [EC2-Classic] Required when adding or removing rules that reference a security + // group in another VPC. + UserId *string `type:"string"` - // The name of the container. - Name *string `type:"string"` + // The ID of the VPC for the referenced security group, if applicable. + VpcId *string `type:"string"` - // When this parameter is true, the container is given elevated privileges on - // the host container instance (similar to the root user). - Privileged *bool `type:"boolean"` + // The ID of the VPC peering connection, if applicable. + VpcPeeringConnectionId *string `type:"string"` } // String returns the string representation. @@ -17138,7 +17232,7 @@ type AwsEcsContainerDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsContainerDetails) String() string { +func (s AwsEc2SecurityGroupUserIdGroupPair) String() string { return awsutil.Prettify(s) } @@ -17147,55 +17241,90 @@ func (s AwsEcsContainerDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsContainerDetails) GoString() string { +func (s AwsEc2SecurityGroupUserIdGroupPair) GoString() string { return s.String() } -// SetImage sets the Image field's value. -func (s *AwsEcsContainerDetails) SetImage(v string) *AwsEcsContainerDetails { - s.Image = &v +// SetGroupId sets the GroupId field's value. +func (s *AwsEc2SecurityGroupUserIdGroupPair) SetGroupId(v string) *AwsEc2SecurityGroupUserIdGroupPair { + s.GroupId = &v return s } -// SetMountPoints sets the MountPoints field's value. -func (s *AwsEcsContainerDetails) SetMountPoints(v []*AwsMountPoint) *AwsEcsContainerDetails { - s.MountPoints = v +// SetGroupName sets the GroupName field's value. +func (s *AwsEc2SecurityGroupUserIdGroupPair) SetGroupName(v string) *AwsEc2SecurityGroupUserIdGroupPair { + s.GroupName = &v return s } -// SetName sets the Name field's value. -func (s *AwsEcsContainerDetails) SetName(v string) *AwsEcsContainerDetails { - s.Name = &v +// SetPeeringStatus sets the PeeringStatus field's value. +func (s *AwsEc2SecurityGroupUserIdGroupPair) SetPeeringStatus(v string) *AwsEc2SecurityGroupUserIdGroupPair { + s.PeeringStatus = &v return s } -// SetPrivileged sets the Privileged field's value. -func (s *AwsEcsContainerDetails) SetPrivileged(v bool) *AwsEcsContainerDetails { - s.Privileged = &v +// SetUserId sets the UserId field's value. +func (s *AwsEc2SecurityGroupUserIdGroupPair) SetUserId(v string) *AwsEc2SecurityGroupUserIdGroupPair { + s.UserId = &v return s } -// Strategy item for the capacity provider strategy that the service uses. -type AwsEcsServiceCapacityProviderStrategyDetails struct { +// SetVpcId sets the VpcId field's value. +func (s *AwsEc2SecurityGroupUserIdGroupPair) SetVpcId(v string) *AwsEc2SecurityGroupUserIdGroupPair { + s.VpcId = &v + return s +} + +// SetVpcPeeringConnectionId sets the VpcPeeringConnectionId field's value. +func (s *AwsEc2SecurityGroupUserIdGroupPair) SetVpcPeeringConnectionId(v string) *AwsEc2SecurityGroupUserIdGroupPair { + s.VpcPeeringConnectionId = &v + return s +} + +// Contains information about a subnet in Amazon EC2. +type AwsEc2SubnetDetails struct { _ struct{} `type:"structure"` - // The minimum number of tasks to run on the capacity provider. Only one strategy - // item can specify a value for Base. - // - // The value must be between 0 and 100000. - Base *int64 `type:"integer"` + // Whether to assign an IPV6 address to a network interface that is created + // in this subnet. + AssignIpv6AddressOnCreation *bool `type:"boolean"` - // The short name of the capacity provider. - CapacityProvider *string `type:"string"` + // The Availability Zone for the subnet. + AvailabilityZone *string `type:"string"` - // The relative percentage of the total number of tasks that should use the - // capacity provider. - // - // If no weight is specified, the default value is 0. At least one capacity - // provider must have a weight greater than 0. - // - // The value can be between 0 and 1000. - Weight *int64 `type:"integer"` + // The identifier of the Availability Zone for the subnet. + AvailabilityZoneId *string `type:"string"` + + // The number of available IPV4 addresses in the subnet. Does not include addresses + // for stopped instances. + AvailableIpAddressCount *int64 `type:"integer"` + + // The IPV4 CIDR block that is assigned to the subnet. + CidrBlock *string `type:"string"` + + // Whether this subnet is the default subnet for the Availability Zone. + DefaultForAz *bool `type:"boolean"` + + // The IPV6 CIDR blocks that are associated with the subnet. + Ipv6CidrBlockAssociationSet []*Ipv6CidrBlockAssociation `type:"list"` + + // Whether instances in this subnet receive a public IP address. + MapPublicIpOnLaunch *bool `type:"boolean"` + + // The identifier of the Amazon Web Services account that owns the subnet. + OwnerId *string `type:"string"` + + // The current state of the subnet. Valid values are available or pending. + State *string `type:"string"` + + // The ARN of the subnet. + SubnetArn *string `type:"string"` + + // The identifier of the subnet. + SubnetId *string `type:"string"` + + // The identifier of the VPC that contains the subnet. + VpcId *string `type:"string"` } // String returns the string representation. @@ -17203,7 +17332,7 @@ type AwsEcsServiceCapacityProviderStrategyDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsServiceCapacityProviderStrategyDetails) String() string { +func (s AwsEc2SubnetDetails) String() string { return awsutil.Prettify(s) } @@ -17212,107 +17341,130 @@ func (s AwsEcsServiceCapacityProviderStrategyDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsServiceCapacityProviderStrategyDetails) GoString() string { +func (s AwsEc2SubnetDetails) GoString() string { return s.String() } -// SetBase sets the Base field's value. -func (s *AwsEcsServiceCapacityProviderStrategyDetails) SetBase(v int64) *AwsEcsServiceCapacityProviderStrategyDetails { - s.Base = &v +// SetAssignIpv6AddressOnCreation sets the AssignIpv6AddressOnCreation field's value. +func (s *AwsEc2SubnetDetails) SetAssignIpv6AddressOnCreation(v bool) *AwsEc2SubnetDetails { + s.AssignIpv6AddressOnCreation = &v return s } -// SetCapacityProvider sets the CapacityProvider field's value. -func (s *AwsEcsServiceCapacityProviderStrategyDetails) SetCapacityProvider(v string) *AwsEcsServiceCapacityProviderStrategyDetails { - s.CapacityProvider = &v +// SetAvailabilityZone sets the AvailabilityZone field's value. +func (s *AwsEc2SubnetDetails) SetAvailabilityZone(v string) *AwsEc2SubnetDetails { + s.AvailabilityZone = &v return s } -// SetWeight sets the Weight field's value. -func (s *AwsEcsServiceCapacityProviderStrategyDetails) SetWeight(v int64) *AwsEcsServiceCapacityProviderStrategyDetails { - s.Weight = &v +// SetAvailabilityZoneId sets the AvailabilityZoneId field's value. +func (s *AwsEc2SubnetDetails) SetAvailabilityZoneId(v string) *AwsEc2SubnetDetails { + s.AvailabilityZoneId = &v return s } -// Determines whether a service deployment fails if a service cannot reach a -// steady state. -type AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails struct { - _ struct{} `type:"structure"` +// SetAvailableIpAddressCount sets the AvailableIpAddressCount field's value. +func (s *AwsEc2SubnetDetails) SetAvailableIpAddressCount(v int64) *AwsEc2SubnetDetails { + s.AvailableIpAddressCount = &v + return s +} - // Whether to enable the deployment circuit breaker logic for the service. - Enable *bool `type:"boolean"` +// SetCidrBlock sets the CidrBlock field's value. +func (s *AwsEc2SubnetDetails) SetCidrBlock(v string) *AwsEc2SubnetDetails { + s.CidrBlock = &v + return s +} - // Whether to roll back the service if a service deployment fails. If rollback - // is enabled, when a service deployment fails, the service is rolled back to - // the last deployment that completed successfully. - Rollback *bool `type:"boolean"` +// SetDefaultForAz sets the DefaultForAz field's value. +func (s *AwsEc2SubnetDetails) SetDefaultForAz(v bool) *AwsEc2SubnetDetails { + s.DefaultForAz = &v + return s } -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails) String() string { - return awsutil.Prettify(s) +// SetIpv6CidrBlockAssociationSet sets the Ipv6CidrBlockAssociationSet field's value. +func (s *AwsEc2SubnetDetails) SetIpv6CidrBlockAssociationSet(v []*Ipv6CidrBlockAssociation) *AwsEc2SubnetDetails { + s.Ipv6CidrBlockAssociationSet = v + return s } -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails) GoString() string { - return s.String() +// SetMapPublicIpOnLaunch sets the MapPublicIpOnLaunch field's value. +func (s *AwsEc2SubnetDetails) SetMapPublicIpOnLaunch(v bool) *AwsEc2SubnetDetails { + s.MapPublicIpOnLaunch = &v + return s } -// SetEnable sets the Enable field's value. -func (s *AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails) SetEnable(v bool) *AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails { - s.Enable = &v +// SetOwnerId sets the OwnerId field's value. +func (s *AwsEc2SubnetDetails) SetOwnerId(v string) *AwsEc2SubnetDetails { + s.OwnerId = &v return s } -// SetRollback sets the Rollback field's value. -func (s *AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails) SetRollback(v bool) *AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails { - s.Rollback = &v +// SetState sets the State field's value. +func (s *AwsEc2SubnetDetails) SetState(v string) *AwsEc2SubnetDetails { + s.State = &v return s } -// Optional deployment parameters for the service. -type AwsEcsServiceDeploymentConfigurationDetails struct { +// SetSubnetArn sets the SubnetArn field's value. +func (s *AwsEc2SubnetDetails) SetSubnetArn(v string) *AwsEc2SubnetDetails { + s.SubnetArn = &v + return s +} + +// SetSubnetId sets the SubnetId field's value. +func (s *AwsEc2SubnetDetails) SetSubnetId(v string) *AwsEc2SubnetDetails { + s.SubnetId = &v + return s +} + +// SetVpcId sets the VpcId field's value. +func (s *AwsEc2SubnetDetails) SetVpcId(v string) *AwsEc2SubnetDetails { + s.VpcId = &v + return s +} + +// Information about an Amazon Web Services Amazon EC2 Transit Gateway that +// interconnects virtual private clouds (VPCs) and on-premises networks. +type AwsEc2TransitGatewayDetails struct { _ struct{} `type:"structure"` - // Determines whether a service deployment fails if a service cannot reach a - // steady state. - DeploymentCircuitBreaker *AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails `type:"structure"` + // A private Autonomous System Number (ASN) for the Amazon side of a BGP session. + AmazonSideAsn *int64 `type:"integer"` - // For a service that uses the rolling update (ECS) deployment type, the maximum - // number of tasks in a service that are allowed in the RUNNING or PENDING state - // during a deployment, and for tasks that use the EC2 launch type, when any - // container instances are in the DRAINING state. Provided as a percentage of - // the desired number of tasks. The default value is 200%. - // - // For a service that uses the blue/green (CODE_DEPLOY) or EXTERNAL deployment - // types, and tasks that use the EC2 launch type, the maximum number of tasks - // in the service that remain in the RUNNING state while the container instances - // are in the DRAINING state. - // - // For the Fargate launch type, the maximum percent value is not used. - MaximumPercent *int64 `type:"integer"` + // The ID of the default association route table. + AssociationDefaultRouteTableId *string `type:"string"` - // For a service that uses the rolling update (ECS) deployment type, the minimum - // number of tasks in a service that must remain in the RUNNING state during - // a deployment, and while any container instances are in the DRAINING state - // if the service contains tasks using the EC2 launch type. Expressed as a percentage - // of the desired number of tasks. The default value is 100%. - // - // For a service that uses the blue/green (CODE_DEPLOY) or EXTERNAL deployment - // types and tasks that use the EC2 launch type, the minimum number of the tasks - // in the service that remain in the RUNNING state while the container instances - // are in the DRAINING state. - // - // For the Fargate launch type, the minimum healthy percent value is not used. - MinimumHealthyPercent *int64 `type:"integer"` + // Turn on or turn off automatic acceptance of attachment requests. + AutoAcceptSharedAttachments *string `type:"string"` + + // Turn on or turn off automatic association with the default association route + // table. + DefaultRouteTableAssociation *string `type:"string"` + + // Turn on or turn off automatic propagation of routes to the default propagation + // route table. + DefaultRouteTablePropagation *string `type:"string"` + + // The description of the transit gateway. + Description *string `type:"string"` + + // Turn on or turn off DNS support. + DnsSupport *string `type:"string"` + + // The ID of the transit gateway. + Id *string `type:"string"` + + // Indicates whether multicast is supported on the transit gateway. + MulticastSupport *string `type:"string"` + + // The ID of the default propagation route table. + PropagationDefaultRouteTableId *string `type:"string"` + + // The transit gateway Classless Inter-Domain Routing (CIDR) blocks. + TransitGatewayCidrBlocks []*string `type:"list"` + + // Turn on or turn off Equal Cost Multipath Protocol (ECMP) support. + VpnEcmpSupport *string `type:"string"` } // String returns the string representation. @@ -17320,7 +17472,7 @@ type AwsEcsServiceDeploymentConfigurationDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsServiceDeploymentConfigurationDetails) String() string { +func (s AwsEc2TransitGatewayDetails) String() string { return awsutil.Prettify(s) } @@ -17329,45 +17481,107 @@ func (s AwsEcsServiceDeploymentConfigurationDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsServiceDeploymentConfigurationDetails) GoString() string { +func (s AwsEc2TransitGatewayDetails) GoString() string { return s.String() } -// SetDeploymentCircuitBreaker sets the DeploymentCircuitBreaker field's value. -func (s *AwsEcsServiceDeploymentConfigurationDetails) SetDeploymentCircuitBreaker(v *AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails) *AwsEcsServiceDeploymentConfigurationDetails { - s.DeploymentCircuitBreaker = v +// SetAmazonSideAsn sets the AmazonSideAsn field's value. +func (s *AwsEc2TransitGatewayDetails) SetAmazonSideAsn(v int64) *AwsEc2TransitGatewayDetails { + s.AmazonSideAsn = &v return s } -// SetMaximumPercent sets the MaximumPercent field's value. -func (s *AwsEcsServiceDeploymentConfigurationDetails) SetMaximumPercent(v int64) *AwsEcsServiceDeploymentConfigurationDetails { - s.MaximumPercent = &v +// SetAssociationDefaultRouteTableId sets the AssociationDefaultRouteTableId field's value. +func (s *AwsEc2TransitGatewayDetails) SetAssociationDefaultRouteTableId(v string) *AwsEc2TransitGatewayDetails { + s.AssociationDefaultRouteTableId = &v return s } -// SetMinimumHealthyPercent sets the MinimumHealthyPercent field's value. -func (s *AwsEcsServiceDeploymentConfigurationDetails) SetMinimumHealthyPercent(v int64) *AwsEcsServiceDeploymentConfigurationDetails { - s.MinimumHealthyPercent = &v +// SetAutoAcceptSharedAttachments sets the AutoAcceptSharedAttachments field's value. +func (s *AwsEc2TransitGatewayDetails) SetAutoAcceptSharedAttachments(v string) *AwsEc2TransitGatewayDetails { + s.AutoAcceptSharedAttachments = &v return s } -// Information about the deployment controller type that the service uses. -type AwsEcsServiceDeploymentControllerDetails struct { +// SetDefaultRouteTableAssociation sets the DefaultRouteTableAssociation field's value. +func (s *AwsEc2TransitGatewayDetails) SetDefaultRouteTableAssociation(v string) *AwsEc2TransitGatewayDetails { + s.DefaultRouteTableAssociation = &v + return s +} + +// SetDefaultRouteTablePropagation sets the DefaultRouteTablePropagation field's value. +func (s *AwsEc2TransitGatewayDetails) SetDefaultRouteTablePropagation(v string) *AwsEc2TransitGatewayDetails { + s.DefaultRouteTablePropagation = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *AwsEc2TransitGatewayDetails) SetDescription(v string) *AwsEc2TransitGatewayDetails { + s.Description = &v + return s +} + +// SetDnsSupport sets the DnsSupport field's value. +func (s *AwsEc2TransitGatewayDetails) SetDnsSupport(v string) *AwsEc2TransitGatewayDetails { + s.DnsSupport = &v + return s +} + +// SetId sets the Id field's value. +func (s *AwsEc2TransitGatewayDetails) SetId(v string) *AwsEc2TransitGatewayDetails { + s.Id = &v + return s +} + +// SetMulticastSupport sets the MulticastSupport field's value. +func (s *AwsEc2TransitGatewayDetails) SetMulticastSupport(v string) *AwsEc2TransitGatewayDetails { + s.MulticastSupport = &v + return s +} + +// SetPropagationDefaultRouteTableId sets the PropagationDefaultRouteTableId field's value. +func (s *AwsEc2TransitGatewayDetails) SetPropagationDefaultRouteTableId(v string) *AwsEc2TransitGatewayDetails { + s.PropagationDefaultRouteTableId = &v + return s +} + +// SetTransitGatewayCidrBlocks sets the TransitGatewayCidrBlocks field's value. +func (s *AwsEc2TransitGatewayDetails) SetTransitGatewayCidrBlocks(v []*string) *AwsEc2TransitGatewayDetails { + s.TransitGatewayCidrBlocks = v + return s +} + +// SetVpnEcmpSupport sets the VpnEcmpSupport field's value. +func (s *AwsEc2TransitGatewayDetails) SetVpnEcmpSupport(v string) *AwsEc2TransitGatewayDetails { + s.VpnEcmpSupport = &v + return s +} + +// An attachment to an Amazon EC2 volume. +type AwsEc2VolumeAttachment struct { _ struct{} `type:"structure"` - // The rolling update (ECS) deployment type replaces the current running version - // of the container with the latest version. + // The datetime when the attachment initiated. + AttachTime *string `type:"string"` + + // Whether the EBS volume is deleted when the EC2 instance is terminated. + DeleteOnTermination *bool `type:"boolean"` + + // The identifier of the EC2 instance. + InstanceId *string `type:"string"` + + // The attachment state of the volume. Valid values are as follows: // - // The blue/green (CODE_DEPLOY) deployment type uses the blue/green deployment - // model that is powered by CodeDeploy. This deployment model a new deployment - // of a service can be verified before production traffic is sent to it. + // * attaching // - // The external (EXTERNAL) deployment type allows the use of any third-party - // deployment controller for full control over the deployment process for an - // Amazon ECS service. + // * attached // - // Valid values: ECS | CODE_DEPLOY | EXTERNAL - Type *string `type:"string"` + // * busy + // + // * detaching + // + // * detached + Status *string `type:"string"` } // String returns the string representation. @@ -17375,7 +17589,7 @@ type AwsEcsServiceDeploymentControllerDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsServiceDeploymentControllerDetails) String() string { +func (s AwsEc2VolumeAttachment) String() string { return awsutil.Prettify(s) } @@ -17384,113 +17598,87 @@ func (s AwsEcsServiceDeploymentControllerDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsServiceDeploymentControllerDetails) GoString() string { +func (s AwsEc2VolumeAttachment) GoString() string { return s.String() } -// SetType sets the Type field's value. -func (s *AwsEcsServiceDeploymentControllerDetails) SetType(v string) *AwsEcsServiceDeploymentControllerDetails { - s.Type = &v +// SetAttachTime sets the AttachTime field's value. +func (s *AwsEc2VolumeAttachment) SetAttachTime(v string) *AwsEc2VolumeAttachment { + s.AttachTime = &v return s } -// Provides details about a service within an ECS cluster. -type AwsEcsServiceDetails struct { - _ struct{} `type:"structure"` - - // The capacity provider strategy that the service uses. - CapacityProviderStrategy []*AwsEcsServiceCapacityProviderStrategyDetails `type:"list"` - - // The ARN of the cluster that hosts the service. - Cluster *string `type:"string"` - - // Deployment parameters for the service. Includes the number of tasks that - // run and the order in which to start and stop tasks. - DeploymentConfiguration *AwsEcsServiceDeploymentConfigurationDetails `type:"structure"` - - // Contains the deployment controller type that the service uses. - DeploymentController *AwsEcsServiceDeploymentControllerDetails `type:"structure"` +// SetDeleteOnTermination sets the DeleteOnTermination field's value. +func (s *AwsEc2VolumeAttachment) SetDeleteOnTermination(v bool) *AwsEc2VolumeAttachment { + s.DeleteOnTermination = &v + return s +} - // The number of instantiations of the task definition to run on the service. - DesiredCount *int64 `type:"integer"` +// SetInstanceId sets the InstanceId field's value. +func (s *AwsEc2VolumeAttachment) SetInstanceId(v string) *AwsEc2VolumeAttachment { + s.InstanceId = &v + return s +} - // Whether to enable Amazon ECS managed tags for the tasks in the service. - EnableEcsManagedTags *bool `type:"boolean"` +// SetStatus sets the Status field's value. +func (s *AwsEc2VolumeAttachment) SetStatus(v string) *AwsEc2VolumeAttachment { + s.Status = &v + return s +} - // Whether the execute command functionality is enabled for the service. - EnableExecuteCommand *bool `type:"boolean"` +// Details about an EC2 volume. +type AwsEc2VolumeDetails struct { + _ struct{} `type:"structure"` - // After a task starts, the amount of time in seconds that the Amazon ECS service - // scheduler ignores unhealthy Elastic Load Balancing target health checks. - HealthCheckGracePeriodSeconds *int64 `type:"integer"` + // The volume attachments. + Attachments []*AwsEc2VolumeAttachment `type:"list"` - // The launch type that the service uses. + // Indicates when the volume was created. // - // Valid values: EC2 | FARGATE | EXTERNAL - LaunchType *string `type:"string"` - - // Information about the load balancers that the service uses. - LoadBalancers []*AwsEcsServiceLoadBalancersDetails `type:"list"` + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + CreateTime *string `type:"string"` - // The name of the service. - Name *string `type:"string"` + // The device name for the volume that is attached to the instance. + DeviceName *string `type:"string"` - // For tasks that use the awsvpc networking mode, the VPC subnet and security - // group configuration. - NetworkConfiguration *AwsEcsServiceNetworkConfigurationDetails `type:"structure"` + // Specifies whether the volume is encrypted. + Encrypted *bool `type:"boolean"` - // The placement constraints for the tasks in the service. - PlacementConstraints []*AwsEcsServicePlacementConstraintsDetails `type:"list"` + // The ARN of the KMS key that was used to protect the volume encryption key + // for the volume. + KmsKeyId *string `type:"string"` - // Information about how tasks for the service are placed. - PlacementStrategies []*AwsEcsServicePlacementStrategiesDetails `type:"list"` + // The size of the volume, in GiBs. + Size *int64 `type:"integer"` - // The platform version on which to run the service. Only specified for tasks - // that are hosted on Fargate. If a platform version is not specified, the LATEST - // platform version is used by default. - PlatformVersion *string `type:"string"` + // The snapshot from which the volume was created. + SnapshotId *string `type:"string"` - // Indicates whether to propagate the tags from the task definition to the task - // or from the service to the task. If no value is provided, then tags are not - // propagated. + // The volume state. Valid values are as follows: // - // Valid values: TASK_DEFINITION | SERVICE - PropagateTags *string `type:"string"` - - // The ARN of the IAM role that is associated with the service. The role allows - // the Amazon ECS container agent to register container instances with an Elastic - // Load Balancing load balancer. - Role *string `type:"string"` - - // The scheduling strategy to use for the service. + // * available // - // The REPLICA scheduling strategy places and maintains the desired number of - // tasks across the cluster. By default, the service scheduler spreads tasks - // across Availability Zones. Task placement strategies and constraints are - // used to customize task placement decisions. + // * creating // - // The DAEMON scheduling strategy deploys exactly one task on each active container - // instance that meets all of the task placement constraints that are specified - // in the cluster. The service scheduler also evaluates the task placement constraints - // for running tasks and stops tasks that do not meet the placement constraints. + // * deleted // - // Valid values: REPLICA | DAEMON - SchedulingStrategy *string `type:"string"` - - // The ARN of the service. - ServiceArn *string `type:"string"` - - // The name of the service. + // * deleting // - // The name can contain up to 255 characters. It can use letters, numbers, underscores, - // and hyphens. - ServiceName *string `type:"string"` + // * error + // + // * in-use + Status *string `type:"string"` - // Information about the service discovery registries to assign to the service. - ServiceRegistries []*AwsEcsServiceServiceRegistriesDetails `type:"list"` + // The ID of the volume. + VolumeId *string `type:"string"` - // The task definition to use for tasks in the service. - TaskDefinition *string `type:"string"` + // Indicates whether the volume was scanned or skipped. + VolumeScanStatus *string `type:"string"` + + // The volume type. + VolumeType *string `type:"string"` } // String returns the string representation. @@ -17498,7 +17686,7 @@ type AwsEcsServiceDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsServiceDetails) String() string { +func (s AwsEc2VolumeDetails) String() string { return awsutil.Prettify(s) } @@ -17507,169 +17695,184 @@ func (s AwsEcsServiceDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsServiceDetails) GoString() string { +func (s AwsEc2VolumeDetails) GoString() string { return s.String() } -// SetCapacityProviderStrategy sets the CapacityProviderStrategy field's value. -func (s *AwsEcsServiceDetails) SetCapacityProviderStrategy(v []*AwsEcsServiceCapacityProviderStrategyDetails) *AwsEcsServiceDetails { - s.CapacityProviderStrategy = v +// SetAttachments sets the Attachments field's value. +func (s *AwsEc2VolumeDetails) SetAttachments(v []*AwsEc2VolumeAttachment) *AwsEc2VolumeDetails { + s.Attachments = v return s } -// SetCluster sets the Cluster field's value. -func (s *AwsEcsServiceDetails) SetCluster(v string) *AwsEcsServiceDetails { - s.Cluster = &v +// SetCreateTime sets the CreateTime field's value. +func (s *AwsEc2VolumeDetails) SetCreateTime(v string) *AwsEc2VolumeDetails { + s.CreateTime = &v return s } -// SetDeploymentConfiguration sets the DeploymentConfiguration field's value. -func (s *AwsEcsServiceDetails) SetDeploymentConfiguration(v *AwsEcsServiceDeploymentConfigurationDetails) *AwsEcsServiceDetails { - s.DeploymentConfiguration = v +// SetDeviceName sets the DeviceName field's value. +func (s *AwsEc2VolumeDetails) SetDeviceName(v string) *AwsEc2VolumeDetails { + s.DeviceName = &v return s } -// SetDeploymentController sets the DeploymentController field's value. -func (s *AwsEcsServiceDetails) SetDeploymentController(v *AwsEcsServiceDeploymentControllerDetails) *AwsEcsServiceDetails { - s.DeploymentController = v +// SetEncrypted sets the Encrypted field's value. +func (s *AwsEc2VolumeDetails) SetEncrypted(v bool) *AwsEc2VolumeDetails { + s.Encrypted = &v return s } -// SetDesiredCount sets the DesiredCount field's value. -func (s *AwsEcsServiceDetails) SetDesiredCount(v int64) *AwsEcsServiceDetails { - s.DesiredCount = &v +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *AwsEc2VolumeDetails) SetKmsKeyId(v string) *AwsEc2VolumeDetails { + s.KmsKeyId = &v return s } -// SetEnableEcsManagedTags sets the EnableEcsManagedTags field's value. -func (s *AwsEcsServiceDetails) SetEnableEcsManagedTags(v bool) *AwsEcsServiceDetails { - s.EnableEcsManagedTags = &v +// SetSize sets the Size field's value. +func (s *AwsEc2VolumeDetails) SetSize(v int64) *AwsEc2VolumeDetails { + s.Size = &v return s } -// SetEnableExecuteCommand sets the EnableExecuteCommand field's value. -func (s *AwsEcsServiceDetails) SetEnableExecuteCommand(v bool) *AwsEcsServiceDetails { - s.EnableExecuteCommand = &v +// SetSnapshotId sets the SnapshotId field's value. +func (s *AwsEc2VolumeDetails) SetSnapshotId(v string) *AwsEc2VolumeDetails { + s.SnapshotId = &v return s } -// SetHealthCheckGracePeriodSeconds sets the HealthCheckGracePeriodSeconds field's value. -func (s *AwsEcsServiceDetails) SetHealthCheckGracePeriodSeconds(v int64) *AwsEcsServiceDetails { - s.HealthCheckGracePeriodSeconds = &v +// SetStatus sets the Status field's value. +func (s *AwsEc2VolumeDetails) SetStatus(v string) *AwsEc2VolumeDetails { + s.Status = &v return s } -// SetLaunchType sets the LaunchType field's value. -func (s *AwsEcsServiceDetails) SetLaunchType(v string) *AwsEcsServiceDetails { - s.LaunchType = &v +// SetVolumeId sets the VolumeId field's value. +func (s *AwsEc2VolumeDetails) SetVolumeId(v string) *AwsEc2VolumeDetails { + s.VolumeId = &v return s } -// SetLoadBalancers sets the LoadBalancers field's value. -func (s *AwsEcsServiceDetails) SetLoadBalancers(v []*AwsEcsServiceLoadBalancersDetails) *AwsEcsServiceDetails { - s.LoadBalancers = v +// SetVolumeScanStatus sets the VolumeScanStatus field's value. +func (s *AwsEc2VolumeDetails) SetVolumeScanStatus(v string) *AwsEc2VolumeDetails { + s.VolumeScanStatus = &v return s } -// SetName sets the Name field's value. -func (s *AwsEcsServiceDetails) SetName(v string) *AwsEcsServiceDetails { - s.Name = &v +// SetVolumeType sets the VolumeType field's value. +func (s *AwsEc2VolumeDetails) SetVolumeType(v string) *AwsEc2VolumeDetails { + s.VolumeType = &v return s } -// SetNetworkConfiguration sets the NetworkConfiguration field's value. -func (s *AwsEcsServiceDetails) SetNetworkConfiguration(v *AwsEcsServiceNetworkConfigurationDetails) *AwsEcsServiceDetails { - s.NetworkConfiguration = v - return s +// Details about an EC2 VPC. +type AwsEc2VpcDetails struct { + _ struct{} `type:"structure"` + + // Information about the IPv4 CIDR blocks associated with the VPC. + CidrBlockAssociationSet []*CidrBlockAssociation `type:"list"` + + // The identifier of the set of Dynamic Host Configuration Protocol (DHCP) options + // that are associated with the VPC. If the default options are associated with + // the VPC, then this is default. + DhcpOptionsId *string `type:"string"` + + // Information about the IPv6 CIDR blocks associated with the VPC. + Ipv6CidrBlockAssociationSet []*Ipv6CidrBlockAssociation `type:"list"` + + // The current state of the VPC. Valid values are available or pending. + State *string `type:"string"` } -// SetPlacementConstraints sets the PlacementConstraints field's value. -func (s *AwsEcsServiceDetails) SetPlacementConstraints(v []*AwsEcsServicePlacementConstraintsDetails) *AwsEcsServiceDetails { - s.PlacementConstraints = v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2VpcDetails) String() string { + return awsutil.Prettify(s) } -// SetPlacementStrategies sets the PlacementStrategies field's value. -func (s *AwsEcsServiceDetails) SetPlacementStrategies(v []*AwsEcsServicePlacementStrategiesDetails) *AwsEcsServiceDetails { - s.PlacementStrategies = v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2VpcDetails) GoString() string { + return s.String() } -// SetPlatformVersion sets the PlatformVersion field's value. -func (s *AwsEcsServiceDetails) SetPlatformVersion(v string) *AwsEcsServiceDetails { - s.PlatformVersion = &v +// SetCidrBlockAssociationSet sets the CidrBlockAssociationSet field's value. +func (s *AwsEc2VpcDetails) SetCidrBlockAssociationSet(v []*CidrBlockAssociation) *AwsEc2VpcDetails { + s.CidrBlockAssociationSet = v return s } -// SetPropagateTags sets the PropagateTags field's value. -func (s *AwsEcsServiceDetails) SetPropagateTags(v string) *AwsEcsServiceDetails { - s.PropagateTags = &v +// SetDhcpOptionsId sets the DhcpOptionsId field's value. +func (s *AwsEc2VpcDetails) SetDhcpOptionsId(v string) *AwsEc2VpcDetails { + s.DhcpOptionsId = &v return s } -// SetRole sets the Role field's value. -func (s *AwsEcsServiceDetails) SetRole(v string) *AwsEcsServiceDetails { - s.Role = &v +// SetIpv6CidrBlockAssociationSet sets the Ipv6CidrBlockAssociationSet field's value. +func (s *AwsEc2VpcDetails) SetIpv6CidrBlockAssociationSet(v []*Ipv6CidrBlockAssociation) *AwsEc2VpcDetails { + s.Ipv6CidrBlockAssociationSet = v return s } -// SetSchedulingStrategy sets the SchedulingStrategy field's value. -func (s *AwsEcsServiceDetails) SetSchedulingStrategy(v string) *AwsEcsServiceDetails { - s.SchedulingStrategy = &v +// SetState sets the State field's value. +func (s *AwsEc2VpcDetails) SetState(v string) *AwsEc2VpcDetails { + s.State = &v return s } -// SetServiceArn sets the ServiceArn field's value. -func (s *AwsEcsServiceDetails) SetServiceArn(v string) *AwsEcsServiceDetails { - s.ServiceArn = &v - return s -} +// Contains details about the service configuration for a VPC endpoint service. +type AwsEc2VpcEndpointServiceDetails struct { + _ struct{} `type:"structure"` -// SetServiceName sets the ServiceName field's value. -func (s *AwsEcsServiceDetails) SetServiceName(v string) *AwsEcsServiceDetails { - s.ServiceName = &v - return s -} + // Whether requests from other Amazon Web Services accounts to create an endpoint + // to the service must first be accepted. + AcceptanceRequired *bool `type:"boolean"` -// SetServiceRegistries sets the ServiceRegistries field's value. -func (s *AwsEcsServiceDetails) SetServiceRegistries(v []*AwsEcsServiceServiceRegistriesDetails) *AwsEcsServiceDetails { - s.ServiceRegistries = v - return s -} + // The Availability Zones where the service is available. + AvailabilityZones []*string `type:"list"` -// SetTaskDefinition sets the TaskDefinition field's value. -func (s *AwsEcsServiceDetails) SetTaskDefinition(v string) *AwsEcsServiceDetails { - s.TaskDefinition = &v - return s -} + // The DNS names for the service. + BaseEndpointDnsNames []*string `type:"list"` -// Information about a load balancer that the service uses. -type AwsEcsServiceLoadBalancersDetails struct { - _ struct{} `type:"structure"` + // The ARNs of the Gateway Load Balancers for the service. + GatewayLoadBalancerArns []*string `type:"list"` - // The name of the container to associate with the load balancer. - ContainerName *string `type:"string"` + // Whether the service manages its VPC endpoints. + ManagesVpcEndpoints *bool `type:"boolean"` - // The port on the container to associate with the load balancer. This port - // must correspond to a containerPort in the task definition the tasks in the - // service are using. For tasks that use the EC2 launch type, the container - // instance they are launched on must allow ingress traffic on the hostPort - // of the port mapping. - ContainerPort *int64 `type:"integer"` + // The ARNs of the Network Load Balancers for the service. + NetworkLoadBalancerArns []*string `type:"list"` - // The name of the load balancer to associate with the Amazon ECS service or - // task set. - // - // Only specified when using a Classic Load Balancer. For an Application Load - // Balancer or a Network Load Balancer, the load balancer name is omitted. - LoadBalancerName *string `type:"string"` + // The private DNS name for the service. + PrivateDnsName *string `type:"string"` - // The ARN of the Elastic Load Balancing target group or groups associated with - // a service or task set. + // The identifier of the service. + ServiceId *string `type:"string"` + + // The name of the service. + ServiceName *string `type:"string"` + + // The current state of the service. Valid values are as follows: // - // Only specified when using an Application Load Balancer or a Network Load - // Balancer. For a Classic Load Balancer, the target group ARN is omitted. - TargetGroupArn *string `type:"string"` + // * Available + // + // * Deleted + // + // * Deleting + // + // * Failed + // + // * Pending + ServiceState *string `type:"string"` + + // The types for the service. + ServiceType []*AwsEc2VpcEndpointServiceServiceTypeDetails `type:"list"` } // String returns the string representation. @@ -17677,7 +17880,7 @@ type AwsEcsServiceLoadBalancersDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsServiceLoadBalancersDetails) String() string { +func (s AwsEc2VpcEndpointServiceDetails) String() string { return awsutil.Prettify(s) } @@ -17686,99 +17889,82 @@ func (s AwsEcsServiceLoadBalancersDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsServiceLoadBalancersDetails) GoString() string { +func (s AwsEc2VpcEndpointServiceDetails) GoString() string { return s.String() } -// SetContainerName sets the ContainerName field's value. -func (s *AwsEcsServiceLoadBalancersDetails) SetContainerName(v string) *AwsEcsServiceLoadBalancersDetails { - s.ContainerName = &v +// SetAcceptanceRequired sets the AcceptanceRequired field's value. +func (s *AwsEc2VpcEndpointServiceDetails) SetAcceptanceRequired(v bool) *AwsEc2VpcEndpointServiceDetails { + s.AcceptanceRequired = &v return s } -// SetContainerPort sets the ContainerPort field's value. -func (s *AwsEcsServiceLoadBalancersDetails) SetContainerPort(v int64) *AwsEcsServiceLoadBalancersDetails { - s.ContainerPort = &v +// SetAvailabilityZones sets the AvailabilityZones field's value. +func (s *AwsEc2VpcEndpointServiceDetails) SetAvailabilityZones(v []*string) *AwsEc2VpcEndpointServiceDetails { + s.AvailabilityZones = v return s } -// SetLoadBalancerName sets the LoadBalancerName field's value. -func (s *AwsEcsServiceLoadBalancersDetails) SetLoadBalancerName(v string) *AwsEcsServiceLoadBalancersDetails { - s.LoadBalancerName = &v +// SetBaseEndpointDnsNames sets the BaseEndpointDnsNames field's value. +func (s *AwsEc2VpcEndpointServiceDetails) SetBaseEndpointDnsNames(v []*string) *AwsEc2VpcEndpointServiceDetails { + s.BaseEndpointDnsNames = v return s } -// SetTargetGroupArn sets the TargetGroupArn field's value. -func (s *AwsEcsServiceLoadBalancersDetails) SetTargetGroupArn(v string) *AwsEcsServiceLoadBalancersDetails { - s.TargetGroupArn = &v +// SetGatewayLoadBalancerArns sets the GatewayLoadBalancerArns field's value. +func (s *AwsEc2VpcEndpointServiceDetails) SetGatewayLoadBalancerArns(v []*string) *AwsEc2VpcEndpointServiceDetails { + s.GatewayLoadBalancerArns = v return s } -// For tasks that use the awsvpc networking mode, the VPC subnet and security -// group configuration. -type AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails struct { - _ struct{} `type:"structure"` - - // Whether the task's elastic network interface receives a public IP address. - // The default value is DISABLED. - // - // Valid values: ENABLED | DISABLED - AssignPublicIp *string `type:"string"` - - // The IDs of the security groups associated with the task or service. - // - // You can provide up to five security groups. - SecurityGroups []*string `type:"list"` +// SetManagesVpcEndpoints sets the ManagesVpcEndpoints field's value. +func (s *AwsEc2VpcEndpointServiceDetails) SetManagesVpcEndpoints(v bool) *AwsEc2VpcEndpointServiceDetails { + s.ManagesVpcEndpoints = &v + return s +} - // The IDs of the subnets associated with the task or service. - // - // You can provide up to 16 subnets. - Subnets []*string `type:"list"` +// SetNetworkLoadBalancerArns sets the NetworkLoadBalancerArns field's value. +func (s *AwsEc2VpcEndpointServiceDetails) SetNetworkLoadBalancerArns(v []*string) *AwsEc2VpcEndpointServiceDetails { + s.NetworkLoadBalancerArns = v + return s } -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails) String() string { - return awsutil.Prettify(s) +// SetPrivateDnsName sets the PrivateDnsName field's value. +func (s *AwsEc2VpcEndpointServiceDetails) SetPrivateDnsName(v string) *AwsEc2VpcEndpointServiceDetails { + s.PrivateDnsName = &v + return s } -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails) GoString() string { - return s.String() +// SetServiceId sets the ServiceId field's value. +func (s *AwsEc2VpcEndpointServiceDetails) SetServiceId(v string) *AwsEc2VpcEndpointServiceDetails { + s.ServiceId = &v + return s } -// SetAssignPublicIp sets the AssignPublicIp field's value. -func (s *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails) SetAssignPublicIp(v string) *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails { - s.AssignPublicIp = &v +// SetServiceName sets the ServiceName field's value. +func (s *AwsEc2VpcEndpointServiceDetails) SetServiceName(v string) *AwsEc2VpcEndpointServiceDetails { + s.ServiceName = &v return s } -// SetSecurityGroups sets the SecurityGroups field's value. -func (s *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails) SetSecurityGroups(v []*string) *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails { - s.SecurityGroups = v +// SetServiceState sets the ServiceState field's value. +func (s *AwsEc2VpcEndpointServiceDetails) SetServiceState(v string) *AwsEc2VpcEndpointServiceDetails { + s.ServiceState = &v return s } -// SetSubnets sets the Subnets field's value. -func (s *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails) SetSubnets(v []*string) *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails { - s.Subnets = v +// SetServiceType sets the ServiceType field's value. +func (s *AwsEc2VpcEndpointServiceDetails) SetServiceType(v []*AwsEc2VpcEndpointServiceServiceTypeDetails) *AwsEc2VpcEndpointServiceDetails { + s.ServiceType = v return s } -// For tasks that use the awsvpc networking mode, the VPC subnet and security -// group configuration. -type AwsEcsServiceNetworkConfigurationDetails struct { +// The service type information for a VPC endpoint service. +type AwsEc2VpcEndpointServiceServiceTypeDetails struct { _ struct{} `type:"structure"` - // The VPC subnet and security group configuration. - AwsVpcConfiguration *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails `type:"structure"` + // The type of service. + ServiceType *string `type:"string"` } // String returns the string representation. @@ -17786,7 +17972,7 @@ type AwsEcsServiceNetworkConfigurationDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsServiceNetworkConfigurationDetails) String() string { +func (s AwsEc2VpcEndpointServiceServiceTypeDetails) String() string { return awsutil.Prettify(s) } @@ -17795,30 +17981,35 @@ func (s AwsEcsServiceNetworkConfigurationDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsServiceNetworkConfigurationDetails) GoString() string { +func (s AwsEc2VpcEndpointServiceServiceTypeDetails) GoString() string { return s.String() } -// SetAwsVpcConfiguration sets the AwsVpcConfiguration field's value. -func (s *AwsEcsServiceNetworkConfigurationDetails) SetAwsVpcConfiguration(v *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails) *AwsEcsServiceNetworkConfigurationDetails { - s.AwsVpcConfiguration = v +// SetServiceType sets the ServiceType field's value. +func (s *AwsEc2VpcEndpointServiceServiceTypeDetails) SetServiceType(v string) *AwsEc2VpcEndpointServiceServiceTypeDetails { + s.ServiceType = &v return s } -// A placement constraint for the tasks in the service. -type AwsEcsServicePlacementConstraintsDetails struct { +// Provides information about a VPC peering connection between two VPCs: a requester +// VPC that you own and an accepter VPC with which to create the connection. +type AwsEc2VpcPeeringConnectionDetails struct { _ struct{} `type:"structure"` - // A cluster query language expression to apply to the constraint. You cannot - // specify an expression if the constraint type is distinctInstance. - Expression *string `type:"string"` + // Information about the accepter VPC. + AccepterVpcInfo *AwsEc2VpcPeeringConnectionVpcInfoDetails `type:"structure"` - // The type of constraint. Use distinctInstance to run each task in a particular - // group on a different container instance. Use memberOf to restrict the selection - // to a group of valid candidates. - // - // Valid values: distinctInstance | memberOf - Type *string `type:"string"` + // The time at which an unaccepted VPC peering connection will expire. + ExpirationTime *string `type:"string"` + + // Information about the requester VPC. + RequesterVpcInfo *AwsEc2VpcPeeringConnectionVpcInfoDetails `type:"structure"` + + // The status of the VPC peering connection. + Status *AwsEc2VpcPeeringConnectionStatusDetails `type:"structure"` + + // The ID of the VPC peering connection. + VpcPeeringConnectionId *string `type:"string"` } // String returns the string representation. @@ -17826,7 +18017,7 @@ type AwsEcsServicePlacementConstraintsDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsServicePlacementConstraintsDetails) String() string { +func (s AwsEc2VpcPeeringConnectionDetails) String() string { return awsutil.Prettify(s) } @@ -17835,49 +18026,49 @@ func (s AwsEcsServicePlacementConstraintsDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsServicePlacementConstraintsDetails) GoString() string { +func (s AwsEc2VpcPeeringConnectionDetails) GoString() string { return s.String() } -// SetExpression sets the Expression field's value. -func (s *AwsEcsServicePlacementConstraintsDetails) SetExpression(v string) *AwsEcsServicePlacementConstraintsDetails { - s.Expression = &v +// SetAccepterVpcInfo sets the AccepterVpcInfo field's value. +func (s *AwsEc2VpcPeeringConnectionDetails) SetAccepterVpcInfo(v *AwsEc2VpcPeeringConnectionVpcInfoDetails) *AwsEc2VpcPeeringConnectionDetails { + s.AccepterVpcInfo = v return s } -// SetType sets the Type field's value. -func (s *AwsEcsServicePlacementConstraintsDetails) SetType(v string) *AwsEcsServicePlacementConstraintsDetails { - s.Type = &v +// SetExpirationTime sets the ExpirationTime field's value. +func (s *AwsEc2VpcPeeringConnectionDetails) SetExpirationTime(v string) *AwsEc2VpcPeeringConnectionDetails { + s.ExpirationTime = &v return s } -// A placement strategy that determines how to place the tasks for the service. -type AwsEcsServicePlacementStrategiesDetails struct { +// SetRequesterVpcInfo sets the RequesterVpcInfo field's value. +func (s *AwsEc2VpcPeeringConnectionDetails) SetRequesterVpcInfo(v *AwsEc2VpcPeeringConnectionVpcInfoDetails) *AwsEc2VpcPeeringConnectionDetails { + s.RequesterVpcInfo = v + return s +} + +// SetStatus sets the Status field's value. +func (s *AwsEc2VpcPeeringConnectionDetails) SetStatus(v *AwsEc2VpcPeeringConnectionStatusDetails) *AwsEc2VpcPeeringConnectionDetails { + s.Status = v + return s +} + +// SetVpcPeeringConnectionId sets the VpcPeeringConnectionId field's value. +func (s *AwsEc2VpcPeeringConnectionDetails) SetVpcPeeringConnectionId(v string) *AwsEc2VpcPeeringConnectionDetails { + s.VpcPeeringConnectionId = &v + return s +} + +// Details about the status of the VPC peering connection. +type AwsEc2VpcPeeringConnectionStatusDetails struct { _ struct{} `type:"structure"` - // The field to apply the placement strategy against. - // - // For the spread placement strategy, valid values are instanceId (or host, - // which has the same effect), or any platform or custom attribute that is applied - // to a container instance, such as attribute:ecs.availability-zone. - // - // For the binpack placement strategy, valid values are cpu and memory. - // - // For the random placement strategy, this attribute is not used. - Field *string `type:"string"` + // The status of the VPC peering connection. + Code *string `type:"string"` - // The type of placement strategy. - // - // The random placement strategy randomly places tasks on available candidates. - // - // The spread placement strategy spreads placement across available candidates - // evenly based on the value of Field. - // - // The binpack strategy places tasks on available candidates that have the least - // available amount of the resource that is specified in Field. - // - // Valid values: random | spread | binpack - Type *string `type:"string"` + // A message that provides more information about the status, if applicable. + Message *string `type:"string"` } // String returns the string representation. @@ -17885,7 +18076,7 @@ type AwsEcsServicePlacementStrategiesDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsServicePlacementStrategiesDetails) String() string { +func (s AwsEc2VpcPeeringConnectionStatusDetails) String() string { return awsutil.Prettify(s) } @@ -17894,53 +18085,47 @@ func (s AwsEcsServicePlacementStrategiesDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsServicePlacementStrategiesDetails) GoString() string { +func (s AwsEc2VpcPeeringConnectionStatusDetails) GoString() string { return s.String() } -// SetField sets the Field field's value. -func (s *AwsEcsServicePlacementStrategiesDetails) SetField(v string) *AwsEcsServicePlacementStrategiesDetails { - s.Field = &v +// SetCode sets the Code field's value. +func (s *AwsEc2VpcPeeringConnectionStatusDetails) SetCode(v string) *AwsEc2VpcPeeringConnectionStatusDetails { + s.Code = &v return s } -// SetType sets the Type field's value. -func (s *AwsEcsServicePlacementStrategiesDetails) SetType(v string) *AwsEcsServicePlacementStrategiesDetails { - s.Type = &v +// SetMessage sets the Message field's value. +func (s *AwsEc2VpcPeeringConnectionStatusDetails) SetMessage(v string) *AwsEc2VpcPeeringConnectionStatusDetails { + s.Message = &v return s } -// Information about a service discovery registry to assign to the service. -type AwsEcsServiceServiceRegistriesDetails struct { +// Describes a VPC in a VPC peering connection. +type AwsEc2VpcPeeringConnectionVpcInfoDetails struct { _ struct{} `type:"structure"` - // The container name value to use for the service discovery service. - // - // If the task definition uses the bridge or host network mode, you must specify - // ContainerName and ContainerPort. - // - // If the task definition uses the awsvpc network mode and a type SRV DNS record, - // you must specify either ContainerName and ContainerPort, or Port , but not - // both. - ContainerName *string `type:"string"` + // The IPv4 CIDR block for the VPC. + CidrBlock *string `type:"string"` - // The port value to use for the service discovery service. - // - // If the task definition uses the bridge or host network mode, you must specify - // ContainerName and ContainerPort. - // - // If the task definition uses the awsvpc network mode and a type SRV DNS record, - // you must specify either ContainerName and ContainerPort, or Port , but not - // both. - ContainerPort *int64 `type:"integer"` + // Information about the IPv4 CIDR blocks for the VPC. + CidrBlockSet []*VpcInfoCidrBlockSetDetails `type:"list"` - // The port value to use for a service discovery service that specifies an SRV - // record. This field can be used if both the awsvpcawsvpc network mode and - // SRV records are used. - Port *int64 `type:"integer"` + // The IPv6 CIDR block for the VPC. + Ipv6CidrBlockSet []*VpcInfoIpv6CidrBlockSetDetails `type:"list"` - // The ARN of the service registry. - RegistryArn *string `type:"string"` + // The ID of the Amazon Web Services account that owns the VPC. + OwnerId *string `type:"string"` + + // Information about the VPC peering connection options for the accepter or + // requester VPC. + PeeringOptions *VpcInfoPeeringOptionsDetails `type:"structure"` + + // The Amazon Web Services Region in which the VPC is located. + Region *string `type:"string"` + + // The ID of the VPC. + VpcId *string `type:"string"` } // String returns the string representation. @@ -17948,7 +18133,7 @@ type AwsEcsServiceServiceRegistriesDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsServiceServiceRegistriesDetails) String() string { +func (s AwsEc2VpcPeeringConnectionVpcInfoDetails) String() string { return awsutil.Prettify(s) } @@ -17957,53 +18142,100 @@ func (s AwsEcsServiceServiceRegistriesDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsServiceServiceRegistriesDetails) GoString() string { +func (s AwsEc2VpcPeeringConnectionVpcInfoDetails) GoString() string { return s.String() } -// SetContainerName sets the ContainerName field's value. -func (s *AwsEcsServiceServiceRegistriesDetails) SetContainerName(v string) *AwsEcsServiceServiceRegistriesDetails { - s.ContainerName = &v +// SetCidrBlock sets the CidrBlock field's value. +func (s *AwsEc2VpcPeeringConnectionVpcInfoDetails) SetCidrBlock(v string) *AwsEc2VpcPeeringConnectionVpcInfoDetails { + s.CidrBlock = &v return s } -// SetContainerPort sets the ContainerPort field's value. -func (s *AwsEcsServiceServiceRegistriesDetails) SetContainerPort(v int64) *AwsEcsServiceServiceRegistriesDetails { - s.ContainerPort = &v +// SetCidrBlockSet sets the CidrBlockSet field's value. +func (s *AwsEc2VpcPeeringConnectionVpcInfoDetails) SetCidrBlockSet(v []*VpcInfoCidrBlockSetDetails) *AwsEc2VpcPeeringConnectionVpcInfoDetails { + s.CidrBlockSet = v return s } -// SetPort sets the Port field's value. -func (s *AwsEcsServiceServiceRegistriesDetails) SetPort(v int64) *AwsEcsServiceServiceRegistriesDetails { - s.Port = &v +// SetIpv6CidrBlockSet sets the Ipv6CidrBlockSet field's value. +func (s *AwsEc2VpcPeeringConnectionVpcInfoDetails) SetIpv6CidrBlockSet(v []*VpcInfoIpv6CidrBlockSetDetails) *AwsEc2VpcPeeringConnectionVpcInfoDetails { + s.Ipv6CidrBlockSet = v return s } -// SetRegistryArn sets the RegistryArn field's value. -func (s *AwsEcsServiceServiceRegistriesDetails) SetRegistryArn(v string) *AwsEcsServiceServiceRegistriesDetails { - s.RegistryArn = &v +// SetOwnerId sets the OwnerId field's value. +func (s *AwsEc2VpcPeeringConnectionVpcInfoDetails) SetOwnerId(v string) *AwsEc2VpcPeeringConnectionVpcInfoDetails { + s.OwnerId = &v return s } -// A dependency that is defined for container startup and shutdown. -type AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails struct { +// SetPeeringOptions sets the PeeringOptions field's value. +func (s *AwsEc2VpcPeeringConnectionVpcInfoDetails) SetPeeringOptions(v *VpcInfoPeeringOptionsDetails) *AwsEc2VpcPeeringConnectionVpcInfoDetails { + s.PeeringOptions = v + return s +} + +// SetRegion sets the Region field's value. +func (s *AwsEc2VpcPeeringConnectionVpcInfoDetails) SetRegion(v string) *AwsEc2VpcPeeringConnectionVpcInfoDetails { + s.Region = &v + return s +} + +// SetVpcId sets the VpcId field's value. +func (s *AwsEc2VpcPeeringConnectionVpcInfoDetails) SetVpcId(v string) *AwsEc2VpcPeeringConnectionVpcInfoDetails { + s.VpcId = &v + return s +} + +// Details about an Amazon EC2 VPN connection. +type AwsEc2VpnConnectionDetails struct { _ struct{} `type:"structure"` - // The dependency condition of the dependent container. Indicates the required - // status of the dependent container before the current container can start. - // Valid values are as follows: + // The category of the VPN connection. VPN indicates an Amazon Web Services + // VPN connection. VPN-Classic indicates an Amazon Web Services Classic VPN + // connection. + Category *string `type:"string"` + + // The configuration information for the VPN connection's customer gateway, + // in the native XML format. + CustomerGatewayConfiguration *string `type:"string"` + + // The identifier of the customer gateway that is at your end of the VPN connection. + CustomerGatewayId *string `type:"string"` + + // The VPN connection options. + Options *AwsEc2VpnConnectionOptionsDetails `type:"structure"` + + // The static routes that are associated with the VPN connection. + Routes []*AwsEc2VpnConnectionRoutesDetails `type:"list"` + + // The current state of the VPN connection. Valid values are as follows: // - // * COMPLETE + // * available // - // * HEALTHY + // * deleted // - // * SUCCESS + // * deleting // - // * START - Condition *string `type:"string"` + // * pending + State *string `type:"string"` - // The name of the dependent container. - ContainerName *string `type:"string"` + // The identifier of the transit gateway that is associated with the VPN connection. + TransitGatewayId *string `type:"string"` + + // The type of VPN connection. + Type *string `type:"string"` + + // Information about the VPN tunnel. + VgwTelemetry []*AwsEc2VpnConnectionVgwTelemetryDetails `type:"list"` + + // The identifier of the VPN connection. + VpnConnectionId *string `type:"string"` + + // The identifier of the virtual private gateway that is at the Amazon Web Services + // side of the VPN connection. + VpnGatewayId *string `type:"string"` } // String returns the string representation. @@ -18011,7 +18243,7 @@ type AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails) String() string { +func (s AwsEc2VpnConnectionDetails) String() string { return awsutil.Prettify(s) } @@ -18020,171 +18252,85 @@ func (s AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails) String() strin // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails) GoString() string { +func (s AwsEc2VpnConnectionDetails) GoString() string { return s.String() } -// SetCondition sets the Condition field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails) SetCondition(v string) *AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails { - s.Condition = &v +// SetCategory sets the Category field's value. +func (s *AwsEc2VpnConnectionDetails) SetCategory(v string) *AwsEc2VpnConnectionDetails { + s.Category = &v return s } -// SetContainerName sets the ContainerName field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails) SetContainerName(v string) *AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails { - s.ContainerName = &v +// SetCustomerGatewayConfiguration sets the CustomerGatewayConfiguration field's value. +func (s *AwsEc2VpnConnectionDetails) SetCustomerGatewayConfiguration(v string) *AwsEc2VpnConnectionDetails { + s.CustomerGatewayConfiguration = &v return s } -// A container definition that describes a container in the task. -type AwsEcsTaskDefinitionContainerDefinitionsDetails struct { - _ struct{} `type:"structure"` - - // The command that is passed to the container. - Command []*string `type:"list"` +// SetCustomerGatewayId sets the CustomerGatewayId field's value. +func (s *AwsEc2VpnConnectionDetails) SetCustomerGatewayId(v string) *AwsEc2VpnConnectionDetails { + s.CustomerGatewayId = &v + return s +} - // The number of CPU units reserved for the container. - Cpu *int64 `type:"integer"` +// SetOptions sets the Options field's value. +func (s *AwsEc2VpnConnectionDetails) SetOptions(v *AwsEc2VpnConnectionOptionsDetails) *AwsEc2VpnConnectionDetails { + s.Options = v + return s +} - // The dependencies that are defined for container startup and shutdown. - DependsOn []*AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails `type:"list"` +// SetRoutes sets the Routes field's value. +func (s *AwsEc2VpnConnectionDetails) SetRoutes(v []*AwsEc2VpnConnectionRoutesDetails) *AwsEc2VpnConnectionDetails { + s.Routes = v + return s +} - // Whether to disable networking within the container. - DisableNetworking *bool `type:"boolean"` +// SetState sets the State field's value. +func (s *AwsEc2VpnConnectionDetails) SetState(v string) *AwsEc2VpnConnectionDetails { + s.State = &v + return s +} - // A list of DNS search domains that are presented to the container. - DnsSearchDomains []*string `type:"list"` - - // A list of DNS servers that are presented to the container. - DnsServers []*string `type:"list"` - - // A key-value map of labels to add to the container. - DockerLabels map[string]*string `type:"map"` - - // A list of strings to provide custom labels for SELinux and AppArmor multi-level - // security systems. - DockerSecurityOptions []*string `type:"list"` - - // The entry point that is passed to the container. - EntryPoint []*string `type:"list"` - - // The environment variables to pass to a container. - Environment []*AwsEcsTaskDefinitionContainerDefinitionsEnvironmentDetails `type:"list"` - - // A list of files containing the environment variables to pass to a container. - EnvironmentFiles []*AwsEcsTaskDefinitionContainerDefinitionsEnvironmentFilesDetails `type:"list"` - - // Whether the container is essential. All tasks must have at least one essential - // container. - Essential *bool `type:"boolean"` - - // A list of hostnames and IP address mappings to append to the /etc/hosts file - // on the container. - ExtraHosts []*AwsEcsTaskDefinitionContainerDefinitionsExtraHostsDetails `type:"list"` - - // The FireLens configuration for the container. Specifies and configures a - // log router for container logs. - FirelensConfiguration *AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetails `type:"structure"` - - // The container health check command and associated configuration parameters - // for the container. - HealthCheck *AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails `type:"structure"` - - // The hostname to use for the container. - Hostname *string `type:"string"` - - // The image used to start the container. - Image *string `type:"string"` - - // If set to true, then containerized applications can be deployed that require - // stdin or a tty to be allocated. - Interactive *bool `type:"boolean"` - - // A list of links for the container in the form container_name:alias . Allows - // containers to communicate with each other without the need for port mappings. - Links []*string `type:"list"` - - // Linux-specific modifications that are applied to the container, such as Linux - // kernel capabilities. - LinuxParameters *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails `type:"structure"` - - // The log configuration specification for the container. - LogConfiguration *AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetails `type:"structure"` - - // The amount (in MiB) of memory to present to the container. If the container - // attempts to exceed the memory specified here, the container is shut down. - // The total amount of memory reserved for all containers within a task must - // be lower than the task memory value, if one is specified. - Memory *int64 `type:"integer"` - - // The soft limit (in MiB) of memory to reserve for the container. - MemoryReservation *int64 `type:"integer"` - - // The mount points for the data volumes in the container. - MountPoints []*AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetails `type:"list"` - - // The name of the container. - Name *string `type:"string"` - - // The list of port mappings for the container. - PortMappings []*AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetails `type:"list"` - - // Whether the container is given elevated privileges on the host container - // instance. The elevated privileges are similar to the root user. - Privileged *bool `type:"boolean"` - - // Whether to allocate a TTY to the container. - PseudoTerminal *bool `type:"boolean"` - - // Whether the container is given read-only access to its root file system. - ReadonlyRootFilesystem *bool `type:"boolean"` - - // The private repository authentication credentials to use. - RepositoryCredentials *AwsEcsTaskDefinitionContainerDefinitionsRepositoryCredentialsDetails `type:"structure"` - - // The type and amount of a resource to assign to a container. The only supported - // resource is a GPU. - ResourceRequirements []*AwsEcsTaskDefinitionContainerDefinitionsResourceRequirementsDetails `type:"list"` - - // The secrets to pass to the container. - Secrets []*AwsEcsTaskDefinitionContainerDefinitionsSecretsDetails `type:"list"` +// SetTransitGatewayId sets the TransitGatewayId field's value. +func (s *AwsEc2VpnConnectionDetails) SetTransitGatewayId(v string) *AwsEc2VpnConnectionDetails { + s.TransitGatewayId = &v + return s +} - // The number of seconds to wait before giving up on resolving dependencies - // for a container. - StartTimeout *int64 `type:"integer"` +// SetType sets the Type field's value. +func (s *AwsEc2VpnConnectionDetails) SetType(v string) *AwsEc2VpnConnectionDetails { + s.Type = &v + return s +} - // The number of seconds to wait before the container is stopped if it doesn't - // shut down normally on its own. - StopTimeout *int64 `type:"integer"` +// SetVgwTelemetry sets the VgwTelemetry field's value. +func (s *AwsEc2VpnConnectionDetails) SetVgwTelemetry(v []*AwsEc2VpnConnectionVgwTelemetryDetails) *AwsEc2VpnConnectionDetails { + s.VgwTelemetry = v + return s +} - // A list of namespaced kernel parameters to set in the container. - SystemControls []*AwsEcsTaskDefinitionContainerDefinitionsSystemControlsDetails `type:"list"` +// SetVpnConnectionId sets the VpnConnectionId field's value. +func (s *AwsEc2VpnConnectionDetails) SetVpnConnectionId(v string) *AwsEc2VpnConnectionDetails { + s.VpnConnectionId = &v + return s +} - // A list of ulimits to set in the container. - Ulimits []*AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetails `type:"list"` +// SetVpnGatewayId sets the VpnGatewayId field's value. +func (s *AwsEc2VpnConnectionDetails) SetVpnGatewayId(v string) *AwsEc2VpnConnectionDetails { + s.VpnGatewayId = &v + return s +} - // The user to use inside the container. - // - // The value can use one of the following formats. - // - // * user - // - // * user :group - // - // * uid - // - // * uid :gid - // - // * user :gid - // - // * uid :group - User *string `type:"string"` +// VPN connection options. +type AwsEc2VpnConnectionOptionsDetails struct { + _ struct{} `type:"structure"` - // Data volumes to mount from another container. - VolumesFrom []*AwsEcsTaskDefinitionContainerDefinitionsVolumesFromDetails `type:"list"` + // Whether the VPN connection uses static routes only. + StaticRoutesOnly *bool `type:"boolean"` - // The working directory in which to run commands inside the container. - WorkingDirectory *string `type:"string"` + // The VPN tunnel options. + TunnelOptions []*AwsEc2VpnConnectionOptionsTunnelOptionsDetails `type:"list"` } // String returns the string representation. @@ -18192,7 +18338,7 @@ type AwsEcsTaskDefinitionContainerDefinitionsDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsDetails) String() string { +func (s AwsEc2VpnConnectionOptionsDetails) String() string { return awsutil.Prettify(s) } @@ -18201,253 +18347,204 @@ func (s AwsEcsTaskDefinitionContainerDefinitionsDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsDetails) GoString() string { +func (s AwsEc2VpnConnectionOptionsDetails) GoString() string { return s.String() } -// SetCommand sets the Command field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetCommand(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.Command = v - return s -} - -// SetCpu sets the Cpu field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetCpu(v int64) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.Cpu = &v - return s -} - -// SetDependsOn sets the DependsOn field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetDependsOn(v []*AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.DependsOn = v +// SetStaticRoutesOnly sets the StaticRoutesOnly field's value. +func (s *AwsEc2VpnConnectionOptionsDetails) SetStaticRoutesOnly(v bool) *AwsEc2VpnConnectionOptionsDetails { + s.StaticRoutesOnly = &v return s } -// SetDisableNetworking sets the DisableNetworking field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetDisableNetworking(v bool) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.DisableNetworking = &v +// SetTunnelOptions sets the TunnelOptions field's value. +func (s *AwsEc2VpnConnectionOptionsDetails) SetTunnelOptions(v []*AwsEc2VpnConnectionOptionsTunnelOptionsDetails) *AwsEc2VpnConnectionOptionsDetails { + s.TunnelOptions = v return s } -// SetDnsSearchDomains sets the DnsSearchDomains field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetDnsSearchDomains(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.DnsSearchDomains = v - return s -} +// The VPN tunnel options. +type AwsEc2VpnConnectionOptionsTunnelOptionsDetails struct { + _ struct{} `type:"structure"` -// SetDnsServers sets the DnsServers field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetDnsServers(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.DnsServers = v - return s -} + // The number of seconds after which a Dead Peer Detection (DPD) timeout occurs. + DpdTimeoutSeconds *int64 `type:"integer"` -// SetDockerLabels sets the DockerLabels field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetDockerLabels(v map[string]*string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.DockerLabels = v - return s -} + // The Internet Key Exchange (IKE) versions that are permitted for the VPN tunnel. + IkeVersions []*string `type:"list"` -// SetDockerSecurityOptions sets the DockerSecurityOptions field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetDockerSecurityOptions(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.DockerSecurityOptions = v - return s -} + // The external IP address of the VPN tunnel. + OutsideIpAddress *string `type:"string"` -// SetEntryPoint sets the EntryPoint field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetEntryPoint(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.EntryPoint = v - return s -} + // The permitted Diffie-Hellman group numbers for the VPN tunnel for phase 1 + // IKE negotiations. + Phase1DhGroupNumbers []*int64 `type:"list"` -// SetEnvironment sets the Environment field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetEnvironment(v []*AwsEcsTaskDefinitionContainerDefinitionsEnvironmentDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.Environment = v - return s -} + // The permitted encryption algorithms for the VPN tunnel for phase 1 IKE negotiations. + Phase1EncryptionAlgorithms []*string `type:"list"` -// SetEnvironmentFiles sets the EnvironmentFiles field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetEnvironmentFiles(v []*AwsEcsTaskDefinitionContainerDefinitionsEnvironmentFilesDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.EnvironmentFiles = v - return s -} + // The permitted integrity algorithms for the VPN tunnel for phase 1 IKE negotiations. + Phase1IntegrityAlgorithms []*string `type:"list"` -// SetEssential sets the Essential field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetEssential(v bool) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.Essential = &v - return s -} + // The lifetime for phase 1 of the IKE negotiation, in seconds. + Phase1LifetimeSeconds *int64 `type:"integer"` -// SetExtraHosts sets the ExtraHosts field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetExtraHosts(v []*AwsEcsTaskDefinitionContainerDefinitionsExtraHostsDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.ExtraHosts = v - return s -} + // The permitted Diffie-Hellman group numbers for the VPN tunnel for phase 2 + // IKE negotiations. + Phase2DhGroupNumbers []*int64 `type:"list"` -// SetFirelensConfiguration sets the FirelensConfiguration field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetFirelensConfiguration(v *AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.FirelensConfiguration = v - return s -} + // The permitted encryption algorithms for the VPN tunnel for phase 2 IKE negotiations. + Phase2EncryptionAlgorithms []*string `type:"list"` -// SetHealthCheck sets the HealthCheck field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetHealthCheck(v *AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.HealthCheck = v - return s -} + // The permitted integrity algorithms for the VPN tunnel for phase 2 IKE negotiations. + Phase2IntegrityAlgorithms []*string `type:"list"` -// SetHostname sets the Hostname field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetHostname(v string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.Hostname = &v - return s -} + // The lifetime for phase 2 of the IKE negotiation, in seconds. + Phase2LifetimeSeconds *int64 `type:"integer"` -// SetImage sets the Image field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetImage(v string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.Image = &v - return s -} + // The preshared key to establish initial authentication between the virtual + // private gateway and the customer gateway. + PreSharedKey *string `type:"string"` -// SetInteractive sets the Interactive field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetInteractive(v bool) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.Interactive = &v - return s -} + // The percentage of the rekey window, which is determined by RekeyMarginTimeSeconds + // during which the rekey time is randomly selected. + RekeyFuzzPercentage *int64 `type:"integer"` -// SetLinks sets the Links field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetLinks(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.Links = v - return s -} + // The margin time, in seconds, before the phase 2 lifetime expires, during + // which the Amazon Web Services side of the VPN connection performs an IKE + // rekey. + RekeyMarginTimeSeconds *int64 `type:"integer"` -// SetLinuxParameters sets the LinuxParameters field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetLinuxParameters(v *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.LinuxParameters = v - return s -} + // The number of packets in an IKE replay window. + ReplayWindowSize *int64 `type:"integer"` -// SetLogConfiguration sets the LogConfiguration field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetLogConfiguration(v *AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.LogConfiguration = v - return s + // The range of inside IPv4 addresses for the tunnel. + TunnelInsideCidr *string `type:"string"` } -// SetMemory sets the Memory field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetMemory(v int64) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.Memory = &v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2VpnConnectionOptionsTunnelOptionsDetails) String() string { + return awsutil.Prettify(s) } -// SetMemoryReservation sets the MemoryReservation field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetMemoryReservation(v int64) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.MemoryReservation = &v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2VpnConnectionOptionsTunnelOptionsDetails) GoString() string { + return s.String() } -// SetMountPoints sets the MountPoints field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetMountPoints(v []*AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.MountPoints = v +// SetDpdTimeoutSeconds sets the DpdTimeoutSeconds field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetDpdTimeoutSeconds(v int64) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.DpdTimeoutSeconds = &v return s } -// SetName sets the Name field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetName(v string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.Name = &v +// SetIkeVersions sets the IkeVersions field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetIkeVersions(v []*string) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.IkeVersions = v return s } -// SetPortMappings sets the PortMappings field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetPortMappings(v []*AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.PortMappings = v +// SetOutsideIpAddress sets the OutsideIpAddress field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetOutsideIpAddress(v string) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.OutsideIpAddress = &v return s } -// SetPrivileged sets the Privileged field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetPrivileged(v bool) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.Privileged = &v +// SetPhase1DhGroupNumbers sets the Phase1DhGroupNumbers field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetPhase1DhGroupNumbers(v []*int64) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.Phase1DhGroupNumbers = v return s } -// SetPseudoTerminal sets the PseudoTerminal field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetPseudoTerminal(v bool) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.PseudoTerminal = &v +// SetPhase1EncryptionAlgorithms sets the Phase1EncryptionAlgorithms field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetPhase1EncryptionAlgorithms(v []*string) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.Phase1EncryptionAlgorithms = v return s } -// SetReadonlyRootFilesystem sets the ReadonlyRootFilesystem field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetReadonlyRootFilesystem(v bool) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.ReadonlyRootFilesystem = &v +// SetPhase1IntegrityAlgorithms sets the Phase1IntegrityAlgorithms field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetPhase1IntegrityAlgorithms(v []*string) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.Phase1IntegrityAlgorithms = v return s } -// SetRepositoryCredentials sets the RepositoryCredentials field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetRepositoryCredentials(v *AwsEcsTaskDefinitionContainerDefinitionsRepositoryCredentialsDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.RepositoryCredentials = v +// SetPhase1LifetimeSeconds sets the Phase1LifetimeSeconds field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetPhase1LifetimeSeconds(v int64) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.Phase1LifetimeSeconds = &v return s } -// SetResourceRequirements sets the ResourceRequirements field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetResourceRequirements(v []*AwsEcsTaskDefinitionContainerDefinitionsResourceRequirementsDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.ResourceRequirements = v +// SetPhase2DhGroupNumbers sets the Phase2DhGroupNumbers field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetPhase2DhGroupNumbers(v []*int64) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.Phase2DhGroupNumbers = v return s } -// SetSecrets sets the Secrets field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetSecrets(v []*AwsEcsTaskDefinitionContainerDefinitionsSecretsDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.Secrets = v +// SetPhase2EncryptionAlgorithms sets the Phase2EncryptionAlgorithms field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetPhase2EncryptionAlgorithms(v []*string) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.Phase2EncryptionAlgorithms = v return s } -// SetStartTimeout sets the StartTimeout field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetStartTimeout(v int64) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.StartTimeout = &v +// SetPhase2IntegrityAlgorithms sets the Phase2IntegrityAlgorithms field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetPhase2IntegrityAlgorithms(v []*string) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.Phase2IntegrityAlgorithms = v return s } -// SetStopTimeout sets the StopTimeout field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetStopTimeout(v int64) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.StopTimeout = &v +// SetPhase2LifetimeSeconds sets the Phase2LifetimeSeconds field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetPhase2LifetimeSeconds(v int64) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.Phase2LifetimeSeconds = &v return s } -// SetSystemControls sets the SystemControls field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetSystemControls(v []*AwsEcsTaskDefinitionContainerDefinitionsSystemControlsDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.SystemControls = v +// SetPreSharedKey sets the PreSharedKey field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetPreSharedKey(v string) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.PreSharedKey = &v return s } -// SetUlimits sets the Ulimits field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetUlimits(v []*AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.Ulimits = v +// SetRekeyFuzzPercentage sets the RekeyFuzzPercentage field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetRekeyFuzzPercentage(v int64) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.RekeyFuzzPercentage = &v return s } -// SetUser sets the User field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetUser(v string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.User = &v +// SetRekeyMarginTimeSeconds sets the RekeyMarginTimeSeconds field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetRekeyMarginTimeSeconds(v int64) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.RekeyMarginTimeSeconds = &v return s } -// SetVolumesFrom sets the VolumesFrom field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetVolumesFrom(v []*AwsEcsTaskDefinitionContainerDefinitionsVolumesFromDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.VolumesFrom = v +// SetReplayWindowSize sets the ReplayWindowSize field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetReplayWindowSize(v int64) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.ReplayWindowSize = &v return s } -// SetWorkingDirectory sets the WorkingDirectory field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetWorkingDirectory(v string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.WorkingDirectory = &v +// SetTunnelInsideCidr sets the TunnelInsideCidr field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetTunnelInsideCidr(v string) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.TunnelInsideCidr = &v return s } -// An environment variable to pass to the container. -type AwsEcsTaskDefinitionContainerDefinitionsEnvironmentDetails struct { +// A static routes associated with the VPN connection. +type AwsEc2VpnConnectionRoutesDetails struct { _ struct{} `type:"structure"` - // The name of the environment variable. - Name *string `type:"string"` + // The CIDR block associated with the local subnet of the customer data center. + DestinationCidrBlock *string `type:"string"` - // The value of the environment variable. - Value *string `type:"string"` + // The current state of the static route. + State *string `type:"string"` } // String returns the string representation. @@ -18455,7 +18552,7 @@ type AwsEcsTaskDefinitionContainerDefinitionsEnvironmentDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsEnvironmentDetails) String() string { +func (s AwsEc2VpnConnectionRoutesDetails) String() string { return awsutil.Prettify(s) } @@ -18464,31 +18561,48 @@ func (s AwsEcsTaskDefinitionContainerDefinitionsEnvironmentDetails) String() str // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsEnvironmentDetails) GoString() string { +func (s AwsEc2VpnConnectionRoutesDetails) GoString() string { return s.String() } -// SetName sets the Name field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsEnvironmentDetails) SetName(v string) *AwsEcsTaskDefinitionContainerDefinitionsEnvironmentDetails { - s.Name = &v +// SetDestinationCidrBlock sets the DestinationCidrBlock field's value. +func (s *AwsEc2VpnConnectionRoutesDetails) SetDestinationCidrBlock(v string) *AwsEc2VpnConnectionRoutesDetails { + s.DestinationCidrBlock = &v return s } -// SetValue sets the Value field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsEnvironmentDetails) SetValue(v string) *AwsEcsTaskDefinitionContainerDefinitionsEnvironmentDetails { - s.Value = &v +// SetState sets the State field's value. +func (s *AwsEc2VpnConnectionRoutesDetails) SetState(v string) *AwsEc2VpnConnectionRoutesDetails { + s.State = &v return s } -// A file that contain environment variables to pass to a container. -type AwsEcsTaskDefinitionContainerDefinitionsEnvironmentFilesDetails struct { +// Information about the VPN tunnel. +type AwsEc2VpnConnectionVgwTelemetryDetails struct { _ struct{} `type:"structure"` - // The type of environment file. The valid value is s3. - Type *string `type:"string"` + // The number of accepted routes. + AcceptedRouteCount *int64 `type:"integer"` - // The ARN of the S3 object that contains the environment variable file. - Value *string `type:"string"` + // The ARN of the VPN tunnel endpoint certificate. + CertificateArn *string `type:"string"` + + // The date and time of the last change in status. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + LastStatusChange *string `type:"string"` + + // The Internet-routable IP address of the virtual private gateway's outside + // interface. + OutsideIpAddress *string `type:"string"` + + // The status of the VPN tunnel. Valid values are DOWN or UP. + Status *string `type:"string"` + + // If an error occurs, a description of the error. + StatusMessage *string `type:"string"` } // String returns the string representation. @@ -18496,7 +18610,7 @@ type AwsEcsTaskDefinitionContainerDefinitionsEnvironmentFilesDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsEnvironmentFilesDetails) String() string { +func (s AwsEc2VpnConnectionVgwTelemetryDetails) String() string { return awsutil.Prettify(s) } @@ -18505,82 +18619,78 @@ func (s AwsEcsTaskDefinitionContainerDefinitionsEnvironmentFilesDetails) String( // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsEnvironmentFilesDetails) GoString() string { +func (s AwsEc2VpnConnectionVgwTelemetryDetails) GoString() string { return s.String() } -// SetType sets the Type field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsEnvironmentFilesDetails) SetType(v string) *AwsEcsTaskDefinitionContainerDefinitionsEnvironmentFilesDetails { - s.Type = &v +// SetAcceptedRouteCount sets the AcceptedRouteCount field's value. +func (s *AwsEc2VpnConnectionVgwTelemetryDetails) SetAcceptedRouteCount(v int64) *AwsEc2VpnConnectionVgwTelemetryDetails { + s.AcceptedRouteCount = &v return s } -// SetValue sets the Value field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsEnvironmentFilesDetails) SetValue(v string) *AwsEcsTaskDefinitionContainerDefinitionsEnvironmentFilesDetails { - s.Value = &v +// SetCertificateArn sets the CertificateArn field's value. +func (s *AwsEc2VpnConnectionVgwTelemetryDetails) SetCertificateArn(v string) *AwsEc2VpnConnectionVgwTelemetryDetails { + s.CertificateArn = &v return s } -// A hostname and IP address mapping to append to the /etc/hosts file on the -// container. -type AwsEcsTaskDefinitionContainerDefinitionsExtraHostsDetails struct { - _ struct{} `type:"structure"` +// SetLastStatusChange sets the LastStatusChange field's value. +func (s *AwsEc2VpnConnectionVgwTelemetryDetails) SetLastStatusChange(v string) *AwsEc2VpnConnectionVgwTelemetryDetails { + s.LastStatusChange = &v + return s +} - // The hostname to use in the /etc/hosts entry. - Hostname *string `type:"string"` - - // The IP address to use in the /etc/hosts entry. - IpAddress *string `type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsExtraHostsDetails) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsExtraHostsDetails) GoString() string { - return s.String() +// SetOutsideIpAddress sets the OutsideIpAddress field's value. +func (s *AwsEc2VpnConnectionVgwTelemetryDetails) SetOutsideIpAddress(v string) *AwsEc2VpnConnectionVgwTelemetryDetails { + s.OutsideIpAddress = &v + return s } -// SetHostname sets the Hostname field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsExtraHostsDetails) SetHostname(v string) *AwsEcsTaskDefinitionContainerDefinitionsExtraHostsDetails { - s.Hostname = &v +// SetStatus sets the Status field's value. +func (s *AwsEc2VpnConnectionVgwTelemetryDetails) SetStatus(v string) *AwsEc2VpnConnectionVgwTelemetryDetails { + s.Status = &v return s } -// SetIpAddress sets the IpAddress field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsExtraHostsDetails) SetIpAddress(v string) *AwsEcsTaskDefinitionContainerDefinitionsExtraHostsDetails { - s.IpAddress = &v +// SetStatusMessage sets the StatusMessage field's value. +func (s *AwsEc2VpnConnectionVgwTelemetryDetails) SetStatusMessage(v string) *AwsEc2VpnConnectionVgwTelemetryDetails { + s.StatusMessage = &v return s } -// The FireLens configuration for the container. The configuration specifies -// and configures a log router for container logs. -type AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetails struct { +// Information about an Amazon ECR image. +type AwsEcrContainerImageDetails struct { _ struct{} `type:"structure"` - // The options to use to configure the log router. + // The architecture of the image. Valid values are as follows: // - // The valid option keys are as follows: + // * arm64 // - // * enable-ecs-log-metadata. The value can be true or false. + // * i386 // - // * config-file-type. The value can be s3 or file. + // * x86_64 + Architecture *string `type:"string"` + + // The sha256 digest of the image manifest. + ImageDigest *string `type:"string"` + + // The date and time when the image was pushed to the repository. // - // * config-file-value. The value is either an S3 ARN or a file path. - Options map[string]*string `type:"map"` + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + ImagePublishedAt *string `type:"string"` - // The log router to use. Valid values are fluentbit or fluentd. - Type *string `type:"string"` + // The list of tags that are associated with the image. + ImageTags []*string `type:"list"` + + // The Amazon Web Services account identifier that is associated with the registry + // that the image belongs to. + RegistryId *string `type:"string"` + + // The name of the repository that the image belongs to. + RepositoryName *string `type:"string"` } // String returns the string representation. @@ -18588,7 +18698,7 @@ type AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetails struct // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetails) String() string { +func (s AwsEcrContainerImageDetails) String() string { return awsutil.Prettify(s) } @@ -18597,45 +18707,68 @@ func (s AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetails) St // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetails) GoString() string { +func (s AwsEcrContainerImageDetails) GoString() string { return s.String() } -// SetOptions sets the Options field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetails) SetOptions(v map[string]*string) *AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetails { - s.Options = v +// SetArchitecture sets the Architecture field's value. +func (s *AwsEcrContainerImageDetails) SetArchitecture(v string) *AwsEcrContainerImageDetails { + s.Architecture = &v return s } -// SetType sets the Type field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetails) SetType(v string) *AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetails { - s.Type = &v +// SetImageDigest sets the ImageDigest field's value. +func (s *AwsEcrContainerImageDetails) SetImageDigest(v string) *AwsEcrContainerImageDetails { + s.ImageDigest = &v return s } -// The container health check command and associated configuration parameters -// for the container. -type AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails struct { +// SetImagePublishedAt sets the ImagePublishedAt field's value. +func (s *AwsEcrContainerImageDetails) SetImagePublishedAt(v string) *AwsEcrContainerImageDetails { + s.ImagePublishedAt = &v + return s +} + +// SetImageTags sets the ImageTags field's value. +func (s *AwsEcrContainerImageDetails) SetImageTags(v []*string) *AwsEcrContainerImageDetails { + s.ImageTags = v + return s +} + +// SetRegistryId sets the RegistryId field's value. +func (s *AwsEcrContainerImageDetails) SetRegistryId(v string) *AwsEcrContainerImageDetails { + s.RegistryId = &v + return s +} + +// SetRepositoryName sets the RepositoryName field's value. +func (s *AwsEcrContainerImageDetails) SetRepositoryName(v string) *AwsEcrContainerImageDetails { + s.RepositoryName = &v + return s +} + +// Provides information about an Amazon Elastic Container Registry repository. +type AwsEcrRepositoryDetails struct { _ struct{} `type:"structure"` - // The command that the container runs to determine whether it is healthy. - Command []*string `type:"list"` + // The ARN of the repository. + Arn *string `type:"string"` - // The time period in seconds between each health check execution. The default - // value is 30 seconds. - Interval *int64 `type:"integer"` + // The image scanning configuration for a repository. + ImageScanningConfiguration *AwsEcrRepositoryImageScanningConfigurationDetails `type:"structure"` - // The number of times to retry a failed health check before the container is - // considered unhealthy. The default value is 3. - Retries *int64 `type:"integer"` + // The tag mutability setting for the repository. Valid values are IMMUTABLE + // or MUTABLE. + ImageTagMutability *string `type:"string"` - // The optional grace period in seconds that allows containers time to bootstrap - // before failed health checks count towards the maximum number of retries. - StartPeriod *int64 `type:"integer"` + // Information about the lifecycle policy for the repository. + LifecyclePolicy *AwsEcrRepositoryLifecyclePolicyDetails `type:"structure"` - // The time period in seconds to wait for a health check to succeed before it - // is considered a failure. The default value is 5. - Timeout *int64 `type:"integer"` + // The name of the repository. + RepositoryName *string `type:"string"` + + // The text of the repository policy. + RepositoryPolicyText *string `type:"string"` } // String returns the string representation. @@ -18643,7 +18776,7 @@ type AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails) String() string { +func (s AwsEcrRepositoryDetails) String() string { return awsutil.Prettify(s) } @@ -18652,70 +18785,52 @@ func (s AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails) String() str // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails) GoString() string { +func (s AwsEcrRepositoryDetails) GoString() string { return s.String() } -// SetCommand sets the Command field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails) SetCommand(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails { - s.Command = v +// SetArn sets the Arn field's value. +func (s *AwsEcrRepositoryDetails) SetArn(v string) *AwsEcrRepositoryDetails { + s.Arn = &v return s } -// SetInterval sets the Interval field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails) SetInterval(v int64) *AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails { - s.Interval = &v +// SetImageScanningConfiguration sets the ImageScanningConfiguration field's value. +func (s *AwsEcrRepositoryDetails) SetImageScanningConfiguration(v *AwsEcrRepositoryImageScanningConfigurationDetails) *AwsEcrRepositoryDetails { + s.ImageScanningConfiguration = v return s } -// SetRetries sets the Retries field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails) SetRetries(v int64) *AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails { - s.Retries = &v +// SetImageTagMutability sets the ImageTagMutability field's value. +func (s *AwsEcrRepositoryDetails) SetImageTagMutability(v string) *AwsEcrRepositoryDetails { + s.ImageTagMutability = &v return s } -// SetStartPeriod sets the StartPeriod field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails) SetStartPeriod(v int64) *AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails { - s.StartPeriod = &v +// SetLifecyclePolicy sets the LifecyclePolicy field's value. +func (s *AwsEcrRepositoryDetails) SetLifecyclePolicy(v *AwsEcrRepositoryLifecyclePolicyDetails) *AwsEcrRepositoryDetails { + s.LifecyclePolicy = v return s } -// SetTimeout sets the Timeout field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails) SetTimeout(v int64) *AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails { - s.Timeout = &v +// SetRepositoryName sets the RepositoryName field's value. +func (s *AwsEcrRepositoryDetails) SetRepositoryName(v string) *AwsEcrRepositoryDetails { + s.RepositoryName = &v return s } -// The Linux capabilities for the container that are added to or dropped from -// the default configuration provided by Docker. -type AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersCapabilitiesDetails struct { - _ struct{} `type:"structure"` +// SetRepositoryPolicyText sets the RepositoryPolicyText field's value. +func (s *AwsEcrRepositoryDetails) SetRepositoryPolicyText(v string) *AwsEcrRepositoryDetails { + s.RepositoryPolicyText = &v + return s +} - // The Linux capabilities for the container that are added to the default configuration - // provided by Docker. Valid values are as follows: - // - // Valid values: "ALL" | "AUDIT_CONTROL" |"AUDIT_WRITE" | "BLOCK_SUSPEND" | - // "CHOWN" | "DAC_OVERRIDE" | "DAC_READ_SEARCH" | "FOWNER" | "FSETID" | "IPC_LOCK" - // | "IPC_OWNER" | "KILL" | "LEASE" | "LINUX_IMMUTABLE" | "MAC_ADMIN" |"MAC_OVERRIDE" - // | "MKNOD" | "NET_ADMIN" | "NET_BIND_SERVICE" | "NET_BROADCAST" | "NET_RAW" - // | "SETFCAP" | "SETGID" | "SETPCAP" | "SETUID" | "SYS_ADMIN" | "SYS_BOOT" - // | "SYS_CHROOT" | "SYS_MODULE" | "SYS_NICE" | "SYS_PACCT" | "SYS_PTRACE" | - // "SYS_RAWIO" | "SYS_RESOURCE" | "SYS_TIME" | "SYS_TTY_CONFIG" | "SYSLOG" | - // "WAKE_ALARM" - Add []*string `type:"list"` +// The image scanning configuration for a repository. +type AwsEcrRepositoryImageScanningConfigurationDetails struct { + _ struct{} `type:"structure"` - // The Linux capabilities for the container that are dropped from the default - // configuration provided by Docker. - // - // Valid values: "ALL" | "AUDIT_CONTROL" |"AUDIT_WRITE" | "BLOCK_SUSPEND" | - // "CHOWN" | "DAC_OVERRIDE" | "DAC_READ_SEARCH" | "FOWNER" | "FSETID" | "IPC_LOCK" - // | "IPC_OWNER" | "KILL" | "LEASE" | "LINUX_IMMUTABLE" | "MAC_ADMIN" |"MAC_OVERRIDE" - // | "MKNOD" | "NET_ADMIN" | "NET_BIND_SERVICE" | "NET_BROADCAST" | "NET_RAW" - // | "SETFCAP" | "SETGID" | "SETPCAP" | "SETUID" | "SYS_ADMIN" | "SYS_BOOT" - // | "SYS_CHROOT" | "SYS_MODULE" | "SYS_NICE" | "SYS_PACCT" | "SYS_PTRACE" | - // "SYS_RAWIO" | "SYS_RESOURCE" | "SYS_TIME" | "SYS_TTY_CONFIG" | "SYSLOG" | - // "WAKE_ALARM" - Drop []*string `type:"list"` + // Whether to scan images after they are pushed to a repository. + ScanOnPush *bool `type:"boolean"` } // String returns the string representation. @@ -18723,7 +18838,7 @@ type AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersCapabilitiesDetails // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersCapabilitiesDetails) String() string { +func (s AwsEcrRepositoryImageScanningConfigurationDetails) String() string { return awsutil.Prettify(s) } @@ -18732,51 +18847,26 @@ func (s AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersCapabilitiesDetai // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersCapabilitiesDetails) GoString() string { +func (s AwsEcrRepositoryImageScanningConfigurationDetails) GoString() string { return s.String() } -// SetAdd sets the Add field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersCapabilitiesDetails) SetAdd(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersCapabilitiesDetails { - s.Add = v - return s -} - -// SetDrop sets the Drop field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersCapabilitiesDetails) SetDrop(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersCapabilitiesDetails { - s.Drop = v +// SetScanOnPush sets the ScanOnPush field's value. +func (s *AwsEcrRepositoryImageScanningConfigurationDetails) SetScanOnPush(v bool) *AwsEcrRepositoryImageScanningConfigurationDetails { + s.ScanOnPush = &v return s } -// >Linux-specific modifications that are applied to the container, such as -// Linux kernel capabilities. -type AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails struct { +// Information about the lifecycle policy for the repository. +type AwsEcrRepositoryLifecyclePolicyDetails struct { _ struct{} `type:"structure"` - // The Linux capabilities for the container that are added to or dropped from - // the default configuration provided by Docker. - Capabilities *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersCapabilitiesDetails `type:"structure"` - - // The host devices to expose to the container. - Devices []*AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetails `type:"list"` - - // Whether to run an init process inside the container that forwards signals - // and reaps processes. - InitProcessEnabled *bool `type:"boolean"` - - // The total amount of swap memory (in MiB) that a container can use. - MaxSwap *int64 `type:"integer"` - - // The value for the size (in MiB) of the /dev/shm volume. - SharedMemorySize *int64 `type:"integer"` - - // Configures the container's memory swappiness behavior. Determines how aggressively - // pages are swapped. The higher the value, the more aggressive the swappiness. - // The default is 60. - Swappiness *int64 `type:"integer"` + // The text of the lifecycle policy. + LifecyclePolicyText *string `type:"string"` - // The container path, mount options, and size (in MiB) of the tmpfs mount. - Tmpfs []*AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetails `type:"list"` + // The Amazon Web Services account identifier that is associated with the registry + // that contains the repository. + RegistryId *string `type:"string"` } // String returns the string representation. @@ -18784,7 +18874,7 @@ type AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails) String() string { +func (s AwsEcrRepositoryLifecyclePolicyDetails) String() string { return awsutil.Prettify(s) } @@ -18793,65 +18883,31 @@ func (s AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails) String() // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails) GoString() string { +func (s AwsEcrRepositoryLifecyclePolicyDetails) GoString() string { return s.String() } -// SetCapabilities sets the Capabilities field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails) SetCapabilities(v *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersCapabilitiesDetails) *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails { - s.Capabilities = v - return s -} - -// SetDevices sets the Devices field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails) SetDevices(v []*AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetails) *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails { - s.Devices = v - return s -} - -// SetInitProcessEnabled sets the InitProcessEnabled field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails) SetInitProcessEnabled(v bool) *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails { - s.InitProcessEnabled = &v - return s -} - -// SetMaxSwap sets the MaxSwap field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails) SetMaxSwap(v int64) *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails { - s.MaxSwap = &v - return s -} - -// SetSharedMemorySize sets the SharedMemorySize field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails) SetSharedMemorySize(v int64) *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails { - s.SharedMemorySize = &v - return s -} - -// SetSwappiness sets the Swappiness field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails) SetSwappiness(v int64) *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails { - s.Swappiness = &v +// SetLifecyclePolicyText sets the LifecyclePolicyText field's value. +func (s *AwsEcrRepositoryLifecyclePolicyDetails) SetLifecyclePolicyText(v string) *AwsEcrRepositoryLifecyclePolicyDetails { + s.LifecyclePolicyText = &v return s } -// SetTmpfs sets the Tmpfs field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails) SetTmpfs(v []*AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetails) *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails { - s.Tmpfs = v +// SetRegistryId sets the RegistryId field's value. +func (s *AwsEcrRepositoryLifecyclePolicyDetails) SetRegistryId(v string) *AwsEcrRepositoryLifecyclePolicyDetails { + s.RegistryId = &v return s } -// A host device to expose to the container. -type AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetails struct { +// Indicates whether to enable CloudWatch Container Insights for the ECS cluster. +type AwsEcsClusterClusterSettingsDetails struct { _ struct{} `type:"structure"` - // The path inside the container at which to expose the host device. - ContainerPath *string `type:"string"` - - // The path for the device on the host container instance. - HostPath *string `type:"string"` + // The name of the setting. The valid value is containerInsights. + Name *string `type:"string"` - // The explicit permissions to provide to the container for the device. By default, - // the container has permissions for read, write, and mknod for the device. - Permissions []*string `type:"list"` + // The value of the setting. Valid values are disabled or enabled. + Value *string `type:"string"` } // String returns the string representation. @@ -18859,7 +18915,7 @@ type AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetails struc // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetails) String() string { +func (s AwsEcsClusterClusterSettingsDetails) String() string { return awsutil.Prettify(s) } @@ -18868,47 +18924,28 @@ func (s AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetails) S // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetails) GoString() string { +func (s AwsEcsClusterClusterSettingsDetails) GoString() string { return s.String() } -// SetContainerPath sets the ContainerPath field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetails) SetContainerPath(v string) *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetails { - s.ContainerPath = &v - return s -} - -// SetHostPath sets the HostPath field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetails) SetHostPath(v string) *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetails { - s.HostPath = &v +// SetName sets the Name field's value. +func (s *AwsEcsClusterClusterSettingsDetails) SetName(v string) *AwsEcsClusterClusterSettingsDetails { + s.Name = &v return s } -// SetPermissions sets the Permissions field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetails) SetPermissions(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetails { - s.Permissions = v +// SetValue sets the Value field's value. +func (s *AwsEcsClusterClusterSettingsDetails) SetValue(v string) *AwsEcsClusterClusterSettingsDetails { + s.Value = &v return s } -// The container path, mount options, and size (in MiB) of a tmpfs mount. -type AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetails struct { +// The run command configuration for the cluster. +type AwsEcsClusterConfigurationDetails struct { _ struct{} `type:"structure"` - // The absolute file path where the tmpfs volume is to be mounted. - ContainerPath *string `type:"string"` - - // The list of tmpfs volume mount options. - // - // Valid values: "defaults" | "ro" | "rw" | "suid" | "nosuid" | "dev" | "nodev" - // |"exec" | "noexec" | "sync" | "async" | "dirsync" | "remount" | "mand" | - // "nomand" | "atime" | "noatime" | "diratime" | "nodiratime" | "bind" | "rbind" - // | "unbindable" | "runbindable" | "private" | "rprivate" | "shared" | "rshared" - // | "slave" | "rslave" | "relatime" | "norelatime" | "strictatime" | "nostrictatime" - // |"mode" | "uid" | "gid" | "nr_inodes" |"nr_blocks" | "mpol" - MountOptions []*string `type:"list"` - - // The maximum size (in MiB) of the tmpfs volume. - Size *int64 `type:"integer"` + // Contains the run command configuration for the cluster. + ExecuteCommandConfiguration *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails `type:"structure"` } // String returns the string representation. @@ -18916,7 +18953,7 @@ type AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetails struct // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetails) String() string { +func (s AwsEcsClusterConfigurationDetails) String() string { return awsutil.Prettify(s) } @@ -18925,69 +18962,30 @@ func (s AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetails) Str // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetails) GoString() string { +func (s AwsEcsClusterConfigurationDetails) GoString() string { return s.String() } -// SetContainerPath sets the ContainerPath field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetails) SetContainerPath(v string) *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetails { - s.ContainerPath = &v - return s -} - -// SetMountOptions sets the MountOptions field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetails) SetMountOptions(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetails { - s.MountOptions = v - return s -} - -// SetSize sets the Size field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetails) SetSize(v int64) *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetails { - s.Size = &v +// SetExecuteCommandConfiguration sets the ExecuteCommandConfiguration field's value. +func (s *AwsEcsClusterConfigurationDetails) SetExecuteCommandConfiguration(v *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails) *AwsEcsClusterConfigurationDetails { + s.ExecuteCommandConfiguration = v return s } -// The log configuration specification for the container. -type AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetails struct { +// Contains the run command configuration for the cluster. +type AwsEcsClusterConfigurationExecuteCommandConfigurationDetails struct { _ struct{} `type:"structure"` - // The log driver to use for the container. - // - // Valid values on Fargate are as follows: - // - // * awsfirelens - // - // * awslogs - // - // * splunk - // - // Valid values on Amazon EC2 are as follows: - // - // * awsfirelens - // - // * awslogs - // - // * fluentd - // - // * gelf - // - // * journald - // - // * json-file - // - // * logentries - // - // * splunk - // - // * syslog - LogDriver *string `type:"string"` + // The identifier of the KMS key that is used to encrypt the data between the + // local client and the container. + KmsKeyId *string `type:"string"` - // The configuration options to send to the log driver. Requires version 1.19 - // of the Docker Remote API or greater on your container instance. - Options map[string]*string `type:"map"` + // The log configuration for the results of the run command actions. Required + // if Logging is NONE. + LogConfiguration *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails `type:"structure"` - // The secrets to pass to the log configuration. - SecretOptions []*AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationSecretOptionsDetails `type:"list"` + // The log setting to use for redirecting logs for run command results. + Logging *string `type:"string"` } // String returns the string representation. @@ -18995,7 +18993,7 @@ type AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetails) String() string { +func (s AwsEcsClusterConfigurationExecuteCommandConfigurationDetails) String() string { return awsutil.Prettify(s) } @@ -19004,40 +19002,46 @@ func (s AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetails) String( // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetails) GoString() string { +func (s AwsEcsClusterConfigurationExecuteCommandConfigurationDetails) GoString() string { return s.String() } -// SetLogDriver sets the LogDriver field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetails) SetLogDriver(v string) *AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetails { - s.LogDriver = &v +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails) SetKmsKeyId(v string) *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails { + s.KmsKeyId = &v return s } -// SetOptions sets the Options field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetails) SetOptions(v map[string]*string) *AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetails { - s.Options = v +// SetLogConfiguration sets the LogConfiguration field's value. +func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails) SetLogConfiguration(v *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails { + s.LogConfiguration = v return s } -// SetSecretOptions sets the SecretOptions field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetails) SetSecretOptions(v []*AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationSecretOptionsDetails) *AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetails { - s.SecretOptions = v +// SetLogging sets the Logging field's value. +func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails) SetLogging(v string) *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails { + s.Logging = &v return s } -// A secret to pass to the log configuration. -type AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationSecretOptionsDetails struct { +// The log configuration for the results of the run command actions. +type AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails struct { _ struct{} `type:"structure"` - // The name of the secret. - Name *string `type:"string"` + // Whether to enable encryption on the CloudWatch logs. + CloudWatchEncryptionEnabled *bool `type:"boolean"` - // The secret to expose to the container. - // - // The value is either the full ARN of the Secrets Manager secret or the full - // ARN of the parameter in the Systems Manager Parameter Store. - ValueFrom *string `type:"string"` + // The name of the CloudWatch log group to send the logs to. + CloudWatchLogGroupName *string `type:"string"` + + // The name of the S3 bucket to send logs to. + S3BucketName *string `type:"string"` + + // Whether to encrypt the logs that are sent to the S3 bucket. + S3EncryptionEnabled *bool `type:"boolean"` + + // Identifies the folder in the S3 bucket to send the logs to. + S3KeyPrefix *string `type:"string"` } // String returns the string representation. @@ -19045,7 +19049,7 @@ type AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationSecretOptionsDetail // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationSecretOptionsDetails) String() string { +func (s AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) String() string { return awsutil.Prettify(s) } @@ -19054,35 +19058,55 @@ func (s AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationSecretOptionsDet // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationSecretOptionsDetails) GoString() string { +func (s AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) GoString() string { return s.String() } -// SetName sets the Name field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationSecretOptionsDetails) SetName(v string) *AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationSecretOptionsDetails { - s.Name = &v +// SetCloudWatchEncryptionEnabled sets the CloudWatchEncryptionEnabled field's value. +func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) SetCloudWatchEncryptionEnabled(v bool) *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails { + s.CloudWatchEncryptionEnabled = &v return s } -// SetValueFrom sets the ValueFrom field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationSecretOptionsDetails) SetValueFrom(v string) *AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationSecretOptionsDetails { - s.ValueFrom = &v +// SetCloudWatchLogGroupName sets the CloudWatchLogGroupName field's value. +func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) SetCloudWatchLogGroupName(v string) *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails { + s.CloudWatchLogGroupName = &v return s } -// A mount point for the data volumes in the container. -type AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetails struct { - _ struct{} `type:"structure"` +// SetS3BucketName sets the S3BucketName field's value. +func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) SetS3BucketName(v string) *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails { + s.S3BucketName = &v + return s +} - // The path on the container to mount the host volume at. - ContainerPath *string `type:"string"` +// SetS3EncryptionEnabled sets the S3EncryptionEnabled field's value. +func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) SetS3EncryptionEnabled(v bool) *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails { + s.S3EncryptionEnabled = &v + return s +} - // Whether the container has read-only access to the volume. - ReadOnly *bool `type:"boolean"` +// SetS3KeyPrefix sets the S3KeyPrefix field's value. +func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) SetS3KeyPrefix(v string) *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails { + s.S3KeyPrefix = &v + return s +} - // The name of the volume to mount. Must match the name of a volume listed in - // VolumeDetails for the task definition. - SourceVolume *string `type:"string"` +// The default capacity provider strategy for the cluster. The default capacity +// provider strategy is used when services or tasks are run without a specified +// launch type or capacity provider strategy. +type AwsEcsClusterDefaultCapacityProviderStrategyDetails struct { + _ struct{} `type:"structure"` + + // The minimum number of tasks to run on the specified capacity provider. + Base *int64 `type:"integer"` + + // The name of the capacity provider. + CapacityProvider *string `type:"string"` + + // The relative percentage of the total number of tasks launched that should + // use the capacity provider. + Weight *int64 `type:"integer"` } // String returns the string representation. @@ -19090,7 +19114,7 @@ type AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetails) String() string { +func (s AwsEcsClusterDefaultCapacityProviderStrategyDetails) String() string { return awsutil.Prettify(s) } @@ -19099,41 +19123,67 @@ func (s AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetails) String() str // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetails) GoString() string { +func (s AwsEcsClusterDefaultCapacityProviderStrategyDetails) GoString() string { return s.String() } -// SetContainerPath sets the ContainerPath field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetails) SetContainerPath(v string) *AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetails { - s.ContainerPath = &v +// SetBase sets the Base field's value. +func (s *AwsEcsClusterDefaultCapacityProviderStrategyDetails) SetBase(v int64) *AwsEcsClusterDefaultCapacityProviderStrategyDetails { + s.Base = &v return s } -// SetReadOnly sets the ReadOnly field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetails) SetReadOnly(v bool) *AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetails { - s.ReadOnly = &v +// SetCapacityProvider sets the CapacityProvider field's value. +func (s *AwsEcsClusterDefaultCapacityProviderStrategyDetails) SetCapacityProvider(v string) *AwsEcsClusterDefaultCapacityProviderStrategyDetails { + s.CapacityProvider = &v return s } -// SetSourceVolume sets the SourceVolume field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetails) SetSourceVolume(v string) *AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetails { - s.SourceVolume = &v +// SetWeight sets the Weight field's value. +func (s *AwsEcsClusterDefaultCapacityProviderStrategyDetails) SetWeight(v int64) *AwsEcsClusterDefaultCapacityProviderStrategyDetails { + s.Weight = &v return s } -// A port mapping for the container. -type AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetails struct { +// Provides details about an Amazon ECS cluster. +type AwsEcsClusterDetails struct { _ struct{} `type:"structure"` - // The port number on the container that is bound to the user-specified or automatically - // assigned host port. - ContainerPort *int64 `type:"integer"` + // The number of services that are running on the cluster in an ACTIVE state. + // You can view these services with the Amazon ECS ListServices (https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ListServices.html) + // API operation. + ActiveServicesCount *int64 `type:"integer"` - // The port number on the container instance to reserve for the container. - HostPort *int64 `type:"integer"` + // The short name of one or more capacity providers to associate with the cluster. + CapacityProviders []*string `type:"list"` - // The protocol used for the port mapping. The default is tcp. - Protocol *string `type:"string"` + // The Amazon Resource Name (ARN) that identifies the cluster. + ClusterArn *string `type:"string"` + + // A name that you use to identify your cluster. + ClusterName *string `type:"string"` + + // The setting to use to create the cluster. Specifically used to configure + // whether to enable CloudWatch Container Insights for the cluster. + ClusterSettings []*AwsEcsClusterClusterSettingsDetails `type:"list"` + + // The run command configuration for the cluster. + Configuration *AwsEcsClusterConfigurationDetails `type:"structure"` + + // The default capacity provider strategy for the cluster. The default capacity + // provider strategy is used when services or tasks are run without a specified + // launch type or capacity provider strategy. + DefaultCapacityProviderStrategy []*AwsEcsClusterDefaultCapacityProviderStrategyDetails `type:"list"` + + // The number of container instances registered into the cluster. This includes + // container instances in both ACTIVE and DRAINING status. + RegisteredContainerInstancesCount *int64 `type:"integer"` + + // The number of tasks in the cluster that are in the RUNNING state. + RunningTasksCount *int64 `type:"integer"` + + // The status of the cluster. + Status *string `type:"string"` } // String returns the string representation. @@ -19141,7 +19191,7 @@ type AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetails) String() string { +func (s AwsEcsClusterDetails) String() string { return awsutil.Prettify(s) } @@ -19150,75 +19200,86 @@ func (s AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetails) String() st // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetails) GoString() string { +func (s AwsEcsClusterDetails) GoString() string { return s.String() } -// SetContainerPort sets the ContainerPort field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetails) SetContainerPort(v int64) *AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetails { - s.ContainerPort = &v +// SetActiveServicesCount sets the ActiveServicesCount field's value. +func (s *AwsEcsClusterDetails) SetActiveServicesCount(v int64) *AwsEcsClusterDetails { + s.ActiveServicesCount = &v return s } -// SetHostPort sets the HostPort field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetails) SetHostPort(v int64) *AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetails { - s.HostPort = &v +// SetCapacityProviders sets the CapacityProviders field's value. +func (s *AwsEcsClusterDetails) SetCapacityProviders(v []*string) *AwsEcsClusterDetails { + s.CapacityProviders = v return s } -// SetProtocol sets the Protocol field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetails) SetProtocol(v string) *AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetails { - s.Protocol = &v +// SetClusterArn sets the ClusterArn field's value. +func (s *AwsEcsClusterDetails) SetClusterArn(v string) *AwsEcsClusterDetails { + s.ClusterArn = &v return s } -// The private repository authentication credentials to use. -type AwsEcsTaskDefinitionContainerDefinitionsRepositoryCredentialsDetails struct { - _ struct{} `type:"structure"` +// SetClusterName sets the ClusterName field's value. +func (s *AwsEcsClusterDetails) SetClusterName(v string) *AwsEcsClusterDetails { + s.ClusterName = &v + return s +} - // The ARN of the secret that contains the private repository credentials. - CredentialsParameter *string `type:"string"` +// SetClusterSettings sets the ClusterSettings field's value. +func (s *AwsEcsClusterDetails) SetClusterSettings(v []*AwsEcsClusterClusterSettingsDetails) *AwsEcsClusterDetails { + s.ClusterSettings = v + return s } -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsRepositoryCredentialsDetails) String() string { - return awsutil.Prettify(s) +// SetConfiguration sets the Configuration field's value. +func (s *AwsEcsClusterDetails) SetConfiguration(v *AwsEcsClusterConfigurationDetails) *AwsEcsClusterDetails { + s.Configuration = v + return s } -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsRepositoryCredentialsDetails) GoString() string { - return s.String() +// SetDefaultCapacityProviderStrategy sets the DefaultCapacityProviderStrategy field's value. +func (s *AwsEcsClusterDetails) SetDefaultCapacityProviderStrategy(v []*AwsEcsClusterDefaultCapacityProviderStrategyDetails) *AwsEcsClusterDetails { + s.DefaultCapacityProviderStrategy = v + return s } -// SetCredentialsParameter sets the CredentialsParameter field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsRepositoryCredentialsDetails) SetCredentialsParameter(v string) *AwsEcsTaskDefinitionContainerDefinitionsRepositoryCredentialsDetails { - s.CredentialsParameter = &v +// SetRegisteredContainerInstancesCount sets the RegisteredContainerInstancesCount field's value. +func (s *AwsEcsClusterDetails) SetRegisteredContainerInstancesCount(v int64) *AwsEcsClusterDetails { + s.RegisteredContainerInstancesCount = &v return s } -// A resource to assign to a container. -type AwsEcsTaskDefinitionContainerDefinitionsResourceRequirementsDetails struct { +// SetRunningTasksCount sets the RunningTasksCount field's value. +func (s *AwsEcsClusterDetails) SetRunningTasksCount(v int64) *AwsEcsClusterDetails { + s.RunningTasksCount = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *AwsEcsClusterDetails) SetStatus(v string) *AwsEcsClusterDetails { + s.Status = &v + return s +} + +// Provides information about an Amazon ECS container. +type AwsEcsContainerDetails struct { _ struct{} `type:"structure"` - // The type of resource to assign to a container. Valid values are GPU or InferenceAccelerator. - Type *string `type:"string"` + // The image used for the container. + Image *string `type:"string"` - // The value for the specified resource type. - // - // For GPU, the value is the number of physical GPUs the Amazon ECS container - // agent reserves for the container. - // - // For InferenceAccelerator, the value should match the DeviceName attribute - // of an entry in InferenceAccelerators. - Value *string `type:"string"` + // The mount points for data volumes in your container. + MountPoints []*AwsMountPoint `type:"list"` + + // The name of the container. + Name *string `type:"string"` + + // When this parameter is true, the container is given elevated privileges on + // the host container instance (similar to the root user). + Privileged *bool `type:"boolean"` } // String returns the string representation. @@ -19226,7 +19287,7 @@ type AwsEcsTaskDefinitionContainerDefinitionsResourceRequirementsDetails struct // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsResourceRequirementsDetails) String() string { +func (s AwsEcsContainerDetails) String() string { return awsutil.Prettify(s) } @@ -19235,33 +19296,55 @@ func (s AwsEcsTaskDefinitionContainerDefinitionsResourceRequirementsDetails) Str // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsResourceRequirementsDetails) GoString() string { +func (s AwsEcsContainerDetails) GoString() string { return s.String() } -// SetType sets the Type field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsResourceRequirementsDetails) SetType(v string) *AwsEcsTaskDefinitionContainerDefinitionsResourceRequirementsDetails { - s.Type = &v +// SetImage sets the Image field's value. +func (s *AwsEcsContainerDetails) SetImage(v string) *AwsEcsContainerDetails { + s.Image = &v return s } -// SetValue sets the Value field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsResourceRequirementsDetails) SetValue(v string) *AwsEcsTaskDefinitionContainerDefinitionsResourceRequirementsDetails { - s.Value = &v +// SetMountPoints sets the MountPoints field's value. +func (s *AwsEcsContainerDetails) SetMountPoints(v []*AwsMountPoint) *AwsEcsContainerDetails { + s.MountPoints = v return s } -// A secret to pass to the container. -type AwsEcsTaskDefinitionContainerDefinitionsSecretsDetails struct { +// SetName sets the Name field's value. +func (s *AwsEcsContainerDetails) SetName(v string) *AwsEcsContainerDetails { + s.Name = &v + return s +} + +// SetPrivileged sets the Privileged field's value. +func (s *AwsEcsContainerDetails) SetPrivileged(v bool) *AwsEcsContainerDetails { + s.Privileged = &v + return s +} + +// Strategy item for the capacity provider strategy that the service uses. +type AwsEcsServiceCapacityProviderStrategyDetails struct { _ struct{} `type:"structure"` - // The name of the secret. - Name *string `type:"string"` + // The minimum number of tasks to run on the capacity provider. Only one strategy + // item can specify a value for Base. + // + // The value must be between 0 and 100000. + Base *int64 `type:"integer"` - // The secret to expose to the container. The value is either the full ARN of - // the Secrets Manager secret or the full ARN of the parameter in the Systems - // Manager Parameter Store. - ValueFrom *string `type:"string"` + // The short name of the capacity provider. + CapacityProvider *string `type:"string"` + + // The relative percentage of the total number of tasks that should use the + // capacity provider. + // + // If no weight is specified, the default value is 0. At least one capacity + // provider must have a weight greater than 0. + // + // The value can be between 0 and 1000. + Weight *int64 `type:"integer"` } // String returns the string representation. @@ -19269,7 +19352,7 @@ type AwsEcsTaskDefinitionContainerDefinitionsSecretsDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsSecretsDetails) String() string { +func (s AwsEcsServiceCapacityProviderStrategyDetails) String() string { return awsutil.Prettify(s) } @@ -19278,31 +19361,40 @@ func (s AwsEcsTaskDefinitionContainerDefinitionsSecretsDetails) String() string // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsSecretsDetails) GoString() string { +func (s AwsEcsServiceCapacityProviderStrategyDetails) GoString() string { return s.String() } -// SetName sets the Name field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsSecretsDetails) SetName(v string) *AwsEcsTaskDefinitionContainerDefinitionsSecretsDetails { - s.Name = &v +// SetBase sets the Base field's value. +func (s *AwsEcsServiceCapacityProviderStrategyDetails) SetBase(v int64) *AwsEcsServiceCapacityProviderStrategyDetails { + s.Base = &v return s } -// SetValueFrom sets the ValueFrom field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsSecretsDetails) SetValueFrom(v string) *AwsEcsTaskDefinitionContainerDefinitionsSecretsDetails { - s.ValueFrom = &v +// SetCapacityProvider sets the CapacityProvider field's value. +func (s *AwsEcsServiceCapacityProviderStrategyDetails) SetCapacityProvider(v string) *AwsEcsServiceCapacityProviderStrategyDetails { + s.CapacityProvider = &v return s } -// A namespaced kernel parameter to set in the container. -type AwsEcsTaskDefinitionContainerDefinitionsSystemControlsDetails struct { +// SetWeight sets the Weight field's value. +func (s *AwsEcsServiceCapacityProviderStrategyDetails) SetWeight(v int64) *AwsEcsServiceCapacityProviderStrategyDetails { + s.Weight = &v + return s +} + +// Determines whether a service deployment fails if a service cannot reach a +// steady state. +type AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails struct { _ struct{} `type:"structure"` - // The namespaced kernel parameter for which to set a value. - Namespace *string `type:"string"` + // Whether to enable the deployment circuit breaker logic for the service. + Enable *bool `type:"boolean"` - // The value of the parameter. - Value *string `type:"string"` + // Whether to roll back the service if a service deployment fails. If rollback + // is enabled, when a service deployment fails, the service is rolled back to + // the last deployment that completed successfully. + Rollback *bool `type:"boolean"` } // String returns the string representation. @@ -19310,7 +19402,7 @@ type AwsEcsTaskDefinitionContainerDefinitionsSystemControlsDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsSystemControlsDetails) String() string { +func (s AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails) String() string { return awsutil.Prettify(s) } @@ -19319,64 +19411,57 @@ func (s AwsEcsTaskDefinitionContainerDefinitionsSystemControlsDetails) String() // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsSystemControlsDetails) GoString() string { +func (s AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails) GoString() string { return s.String() } -// SetNamespace sets the Namespace field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsSystemControlsDetails) SetNamespace(v string) *AwsEcsTaskDefinitionContainerDefinitionsSystemControlsDetails { - s.Namespace = &v +// SetEnable sets the Enable field's value. +func (s *AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails) SetEnable(v bool) *AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails { + s.Enable = &v return s } -// SetValue sets the Value field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsSystemControlsDetails) SetValue(v string) *AwsEcsTaskDefinitionContainerDefinitionsSystemControlsDetails { - s.Value = &v +// SetRollback sets the Rollback field's value. +func (s *AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails) SetRollback(v bool) *AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails { + s.Rollback = &v return s } -// A ulimit to set in the container. -type AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetails struct { +// Optional deployment parameters for the service. +type AwsEcsServiceDeploymentConfigurationDetails struct { _ struct{} `type:"structure"` - // The hard limit for the ulimit type. - HardLimit *int64 `type:"integer"` + // Determines whether a service deployment fails if a service cannot reach a + // steady state. + DeploymentCircuitBreaker *AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails `type:"structure"` - // The type of the ulimit. Valid values are as follows: - // - // * core - // - // * cpu - // - // * data - // - // * fsize - // - // * locks - // - // * memlock - // - // * msgqueue - // - // * nice - // - // * nofile - // - // * nproc - // - // * rss + // For a service that uses the rolling update (ECS) deployment type, the maximum + // number of tasks in a service that are allowed in the RUNNING or PENDING state + // during a deployment, and for tasks that use the EC2 launch type, when any + // container instances are in the DRAINING state. Provided as a percentage of + // the desired number of tasks. The default value is 200%. // - // * rtprio + // For a service that uses the blue/green (CODE_DEPLOY) or EXTERNAL deployment + // types, and tasks that use the EC2 launch type, the maximum number of tasks + // in the service that remain in the RUNNING state while the container instances + // are in the DRAINING state. // - // * rttime + // For the Fargate launch type, the maximum percent value is not used. + MaximumPercent *int64 `type:"integer"` + + // For a service that uses the rolling update (ECS) deployment type, the minimum + // number of tasks in a service that must remain in the RUNNING state during + // a deployment, and while any container instances are in the DRAINING state + // if the service contains tasks using the EC2 launch type. Expressed as a percentage + // of the desired number of tasks. The default value is 100%. // - // * sigpending + // For a service that uses the blue/green (CODE_DEPLOY) or EXTERNAL deployment + // types and tasks that use the EC2 launch type, the minimum number of the tasks + // in the service that remain in the RUNNING state while the container instances + // are in the DRAINING state. // - // * stack - Name *string `type:"string"` - - // The soft limit for the ulimit type. - SoftLimit *int64 `type:"integer"` + // For the Fargate launch type, the minimum healthy percent value is not used. + MinimumHealthyPercent *int64 `type:"integer"` } // String returns the string representation. @@ -19384,7 +19469,7 @@ type AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetails) String() string { +func (s AwsEcsServiceDeploymentConfigurationDetails) String() string { return awsutil.Prettify(s) } @@ -19393,38 +19478,45 @@ func (s AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetails) String() string // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetails) GoString() string { +func (s AwsEcsServiceDeploymentConfigurationDetails) GoString() string { return s.String() } -// SetHardLimit sets the HardLimit field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetails) SetHardLimit(v int64) *AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetails { - s.HardLimit = &v +// SetDeploymentCircuitBreaker sets the DeploymentCircuitBreaker field's value. +func (s *AwsEcsServiceDeploymentConfigurationDetails) SetDeploymentCircuitBreaker(v *AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails) *AwsEcsServiceDeploymentConfigurationDetails { + s.DeploymentCircuitBreaker = v return s } -// SetName sets the Name field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetails) SetName(v string) *AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetails { - s.Name = &v +// SetMaximumPercent sets the MaximumPercent field's value. +func (s *AwsEcsServiceDeploymentConfigurationDetails) SetMaximumPercent(v int64) *AwsEcsServiceDeploymentConfigurationDetails { + s.MaximumPercent = &v return s } -// SetSoftLimit sets the SoftLimit field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetails) SetSoftLimit(v int64) *AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetails { - s.SoftLimit = &v +// SetMinimumHealthyPercent sets the MinimumHealthyPercent field's value. +func (s *AwsEcsServiceDeploymentConfigurationDetails) SetMinimumHealthyPercent(v int64) *AwsEcsServiceDeploymentConfigurationDetails { + s.MinimumHealthyPercent = &v return s } -// A data volume to mount from another container. -type AwsEcsTaskDefinitionContainerDefinitionsVolumesFromDetails struct { +// Information about the deployment controller type that the service uses. +type AwsEcsServiceDeploymentControllerDetails struct { _ struct{} `type:"structure"` - // Whether the container has read-only access to the volume. - ReadOnly *bool `type:"boolean"` - - // The name of another container within the same task definition from which - // to mount volumes. - SourceContainer *string `type:"string"` + // The rolling update (ECS) deployment type replaces the current running version + // of the container with the latest version. + // + // The blue/green (CODE_DEPLOY) deployment type uses the blue/green deployment + // model that is powered by CodeDeploy. This deployment model a new deployment + // of a service can be verified before production traffic is sent to it. + // + // The external (EXTERNAL) deployment type allows the use of any third-party + // deployment controller for full control over the deployment process for an + // Amazon ECS service. + // + // Valid values: ECS | CODE_DEPLOY | EXTERNAL + Type *string `type:"string"` } // String returns the string representation. @@ -19432,7 +19524,7 @@ type AwsEcsTaskDefinitionContainerDefinitionsVolumesFromDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsVolumesFromDetails) String() string { +func (s AwsEcsServiceDeploymentControllerDetails) String() string { return awsutil.Prettify(s) } @@ -19441,103 +19533,113 @@ func (s AwsEcsTaskDefinitionContainerDefinitionsVolumesFromDetails) String() str // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionContainerDefinitionsVolumesFromDetails) GoString() string { +func (s AwsEcsServiceDeploymentControllerDetails) GoString() string { return s.String() } -// SetReadOnly sets the ReadOnly field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsVolumesFromDetails) SetReadOnly(v bool) *AwsEcsTaskDefinitionContainerDefinitionsVolumesFromDetails { - s.ReadOnly = &v - return s -} - -// SetSourceContainer sets the SourceContainer field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsVolumesFromDetails) SetSourceContainer(v string) *AwsEcsTaskDefinitionContainerDefinitionsVolumesFromDetails { - s.SourceContainer = &v +// SetType sets the Type field's value. +func (s *AwsEcsServiceDeploymentControllerDetails) SetType(v string) *AwsEcsServiceDeploymentControllerDetails { + s.Type = &v return s } -// Details about a task definition. A task definition describes the container -// and volume definitions of an Amazon Elastic Container Service task. -type AwsEcsTaskDefinitionDetails struct { +// Provides details about a service within an ECS cluster. +type AwsEcsServiceDetails struct { _ struct{} `type:"structure"` - // The container definitions that describe the containers that make up the task. - ContainerDefinitions []*AwsEcsTaskDefinitionContainerDefinitionsDetails `type:"list"` + // The capacity provider strategy that the service uses. + CapacityProviderStrategy []*AwsEcsServiceCapacityProviderStrategyDetails `type:"list"` - // The number of CPU units used by the task.Valid values are as follows: - // - // * 256 (.25 vCPU) - // - // * 512 (.5 vCPU) - // - // * 1024 (1 vCPU) - // - // * 2048 (2 vCPU) - // - // * 4096 (4 vCPU) - Cpu *string `type:"string"` + // The ARN of the cluster that hosts the service. + Cluster *string `type:"string"` - // The ARN of the task execution role that grants the container agent permission - // to make API calls on behalf of the container user. - ExecutionRoleArn *string `type:"string"` + // Deployment parameters for the service. Includes the number of tasks that + // run and the order in which to start and stop tasks. + DeploymentConfiguration *AwsEcsServiceDeploymentConfigurationDetails `type:"structure"` - // The name of a family that this task definition is registered to. - Family *string `type:"string"` + // Contains the deployment controller type that the service uses. + DeploymentController *AwsEcsServiceDeploymentControllerDetails `type:"structure"` - // The Elastic Inference accelerators to use for the containers in the task. - InferenceAccelerators []*AwsEcsTaskDefinitionInferenceAcceleratorsDetails `type:"list"` + // The number of instantiations of the task definition to run on the service. + DesiredCount *int64 `type:"integer"` - // The inter-process communication (IPC) resource namespace to use for the containers - // in the task. Valid values are as follows: - // - // * host - // - // * none - // - // * task - IpcMode *string `type:"string"` + // Whether to enable Amazon ECS managed tags for the tasks in the service. + EnableEcsManagedTags *bool `type:"boolean"` - // The amount (in MiB) of memory used by the task. - // - // For tasks that are hosted on Amazon EC2, you can provide a task-level memory - // value or a container-level memory value. For tasks that are hosted on Fargate, - // you must use one of the specified values (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#task_size) - // in the Amazon Elastic Container Service Developer Guide , which determines - // your range of supported values for the Cpu and Memory parameters. - Memory *string `type:"string"` + // Whether the execute command functionality is enabled for the service. + EnableExecuteCommand *bool `type:"boolean"` - // The Docker networking mode to use for the containers in the task. Valid values - // are as follows: - // - // * awsvpc - // - // * bridge - // - // * host + // After a task starts, the amount of time in seconds that the Amazon ECS service + // scheduler ignores unhealthy Elastic Load Balancing target health checks. + HealthCheckGracePeriodSeconds *int64 `type:"integer"` + + // The launch type that the service uses. // - // * none - NetworkMode *string `type:"string"` + // Valid values: EC2 | FARGATE | EXTERNAL + LaunchType *string `type:"string"` - // The process namespace to use for the containers in the task. Valid values - // are host or task. - PidMode *string `type:"string"` + // Information about the load balancers that the service uses. + LoadBalancers []*AwsEcsServiceLoadBalancersDetails `type:"list"` - // The placement constraint objects to use for tasks. - PlacementConstraints []*AwsEcsTaskDefinitionPlacementConstraintsDetails `type:"list"` + // The name of the service. + Name *string `type:"string"` - // The configuration details for the App Mesh proxy. - ProxyConfiguration *AwsEcsTaskDefinitionProxyConfigurationDetails `type:"structure"` + // For tasks that use the awsvpc networking mode, the VPC subnet and security + // group configuration. + NetworkConfiguration *AwsEcsServiceNetworkConfigurationDetails `type:"structure"` - // The task launch types that the task definition was validated against. - RequiresCompatibilities []*string `type:"list"` + // The placement constraints for the tasks in the service. + PlacementConstraints []*AwsEcsServicePlacementConstraintsDetails `type:"list"` - // The short name or ARN of the IAM role that grants containers in the task - // permission to call Amazon Web Services API operations on your behalf. - TaskRoleArn *string `type:"string"` + // Information about how tasks for the service are placed. + PlacementStrategies []*AwsEcsServicePlacementStrategiesDetails `type:"list"` - // The data volume definitions for the task. - Volumes []*AwsEcsTaskDefinitionVolumesDetails `type:"list"` + // The platform version on which to run the service. Only specified for tasks + // that are hosted on Fargate. If a platform version is not specified, the LATEST + // platform version is used by default. + PlatformVersion *string `type:"string"` + + // Indicates whether to propagate the tags from the task definition to the task + // or from the service to the task. If no value is provided, then tags are not + // propagated. + // + // Valid values: TASK_DEFINITION | SERVICE + PropagateTags *string `type:"string"` + + // The ARN of the IAM role that is associated with the service. The role allows + // the Amazon ECS container agent to register container instances with an Elastic + // Load Balancing load balancer. + Role *string `type:"string"` + + // The scheduling strategy to use for the service. + // + // The REPLICA scheduling strategy places and maintains the desired number of + // tasks across the cluster. By default, the service scheduler spreads tasks + // across Availability Zones. Task placement strategies and constraints are + // used to customize task placement decisions. + // + // The DAEMON scheduling strategy deploys exactly one task on each active container + // instance that meets all of the task placement constraints that are specified + // in the cluster. The service scheduler also evaluates the task placement constraints + // for running tasks and stops tasks that do not meet the placement constraints. + // + // Valid values: REPLICA | DAEMON + SchedulingStrategy *string `type:"string"` + + // The ARN of the service. + ServiceArn *string `type:"string"` + + // The name of the service. + // + // The name can contain up to 255 characters. It can use letters, numbers, underscores, + // and hyphens. + ServiceName *string `type:"string"` + + // Information about the service discovery registries to assign to the service. + ServiceRegistries []*AwsEcsServiceServiceRegistriesDetails `type:"list"` + + // The task definition to use for tasks in the service. + TaskDefinition *string `type:"string"` } // String returns the string representation. @@ -19545,7 +19647,7 @@ type AwsEcsTaskDefinitionDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionDetails) String() string { +func (s AwsEcsServiceDetails) String() string { return awsutil.Prettify(s) } @@ -19554,144 +19656,169 @@ func (s AwsEcsTaskDefinitionDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionDetails) GoString() string { +func (s AwsEcsServiceDetails) GoString() string { return s.String() } -// SetContainerDefinitions sets the ContainerDefinitions field's value. -func (s *AwsEcsTaskDefinitionDetails) SetContainerDefinitions(v []*AwsEcsTaskDefinitionContainerDefinitionsDetails) *AwsEcsTaskDefinitionDetails { - s.ContainerDefinitions = v +// SetCapacityProviderStrategy sets the CapacityProviderStrategy field's value. +func (s *AwsEcsServiceDetails) SetCapacityProviderStrategy(v []*AwsEcsServiceCapacityProviderStrategyDetails) *AwsEcsServiceDetails { + s.CapacityProviderStrategy = v return s } -// SetCpu sets the Cpu field's value. -func (s *AwsEcsTaskDefinitionDetails) SetCpu(v string) *AwsEcsTaskDefinitionDetails { - s.Cpu = &v +// SetCluster sets the Cluster field's value. +func (s *AwsEcsServiceDetails) SetCluster(v string) *AwsEcsServiceDetails { + s.Cluster = &v return s } -// SetExecutionRoleArn sets the ExecutionRoleArn field's value. -func (s *AwsEcsTaskDefinitionDetails) SetExecutionRoleArn(v string) *AwsEcsTaskDefinitionDetails { - s.ExecutionRoleArn = &v +// SetDeploymentConfiguration sets the DeploymentConfiguration field's value. +func (s *AwsEcsServiceDetails) SetDeploymentConfiguration(v *AwsEcsServiceDeploymentConfigurationDetails) *AwsEcsServiceDetails { + s.DeploymentConfiguration = v return s } -// SetFamily sets the Family field's value. -func (s *AwsEcsTaskDefinitionDetails) SetFamily(v string) *AwsEcsTaskDefinitionDetails { - s.Family = &v +// SetDeploymentController sets the DeploymentController field's value. +func (s *AwsEcsServiceDetails) SetDeploymentController(v *AwsEcsServiceDeploymentControllerDetails) *AwsEcsServiceDetails { + s.DeploymentController = v return s } -// SetInferenceAccelerators sets the InferenceAccelerators field's value. -func (s *AwsEcsTaskDefinitionDetails) SetInferenceAccelerators(v []*AwsEcsTaskDefinitionInferenceAcceleratorsDetails) *AwsEcsTaskDefinitionDetails { - s.InferenceAccelerators = v +// SetDesiredCount sets the DesiredCount field's value. +func (s *AwsEcsServiceDetails) SetDesiredCount(v int64) *AwsEcsServiceDetails { + s.DesiredCount = &v return s } -// SetIpcMode sets the IpcMode field's value. -func (s *AwsEcsTaskDefinitionDetails) SetIpcMode(v string) *AwsEcsTaskDefinitionDetails { - s.IpcMode = &v +// SetEnableEcsManagedTags sets the EnableEcsManagedTags field's value. +func (s *AwsEcsServiceDetails) SetEnableEcsManagedTags(v bool) *AwsEcsServiceDetails { + s.EnableEcsManagedTags = &v return s } -// SetMemory sets the Memory field's value. -func (s *AwsEcsTaskDefinitionDetails) SetMemory(v string) *AwsEcsTaskDefinitionDetails { - s.Memory = &v +// SetEnableExecuteCommand sets the EnableExecuteCommand field's value. +func (s *AwsEcsServiceDetails) SetEnableExecuteCommand(v bool) *AwsEcsServiceDetails { + s.EnableExecuteCommand = &v return s } -// SetNetworkMode sets the NetworkMode field's value. -func (s *AwsEcsTaskDefinitionDetails) SetNetworkMode(v string) *AwsEcsTaskDefinitionDetails { - s.NetworkMode = &v +// SetHealthCheckGracePeriodSeconds sets the HealthCheckGracePeriodSeconds field's value. +func (s *AwsEcsServiceDetails) SetHealthCheckGracePeriodSeconds(v int64) *AwsEcsServiceDetails { + s.HealthCheckGracePeriodSeconds = &v return s } -// SetPidMode sets the PidMode field's value. -func (s *AwsEcsTaskDefinitionDetails) SetPidMode(v string) *AwsEcsTaskDefinitionDetails { - s.PidMode = &v +// SetLaunchType sets the LaunchType field's value. +func (s *AwsEcsServiceDetails) SetLaunchType(v string) *AwsEcsServiceDetails { + s.LaunchType = &v return s } -// SetPlacementConstraints sets the PlacementConstraints field's value. -func (s *AwsEcsTaskDefinitionDetails) SetPlacementConstraints(v []*AwsEcsTaskDefinitionPlacementConstraintsDetails) *AwsEcsTaskDefinitionDetails { - s.PlacementConstraints = v +// SetLoadBalancers sets the LoadBalancers field's value. +func (s *AwsEcsServiceDetails) SetLoadBalancers(v []*AwsEcsServiceLoadBalancersDetails) *AwsEcsServiceDetails { + s.LoadBalancers = v return s } -// SetProxyConfiguration sets the ProxyConfiguration field's value. -func (s *AwsEcsTaskDefinitionDetails) SetProxyConfiguration(v *AwsEcsTaskDefinitionProxyConfigurationDetails) *AwsEcsTaskDefinitionDetails { - s.ProxyConfiguration = v +// SetName sets the Name field's value. +func (s *AwsEcsServiceDetails) SetName(v string) *AwsEcsServiceDetails { + s.Name = &v return s } -// SetRequiresCompatibilities sets the RequiresCompatibilities field's value. -func (s *AwsEcsTaskDefinitionDetails) SetRequiresCompatibilities(v []*string) *AwsEcsTaskDefinitionDetails { - s.RequiresCompatibilities = v +// SetNetworkConfiguration sets the NetworkConfiguration field's value. +func (s *AwsEcsServiceDetails) SetNetworkConfiguration(v *AwsEcsServiceNetworkConfigurationDetails) *AwsEcsServiceDetails { + s.NetworkConfiguration = v return s } -// SetTaskRoleArn sets the TaskRoleArn field's value. -func (s *AwsEcsTaskDefinitionDetails) SetTaskRoleArn(v string) *AwsEcsTaskDefinitionDetails { - s.TaskRoleArn = &v +// SetPlacementConstraints sets the PlacementConstraints field's value. +func (s *AwsEcsServiceDetails) SetPlacementConstraints(v []*AwsEcsServicePlacementConstraintsDetails) *AwsEcsServiceDetails { + s.PlacementConstraints = v return s } -// SetVolumes sets the Volumes field's value. -func (s *AwsEcsTaskDefinitionDetails) SetVolumes(v []*AwsEcsTaskDefinitionVolumesDetails) *AwsEcsTaskDefinitionDetails { - s.Volumes = v +// SetPlacementStrategies sets the PlacementStrategies field's value. +func (s *AwsEcsServiceDetails) SetPlacementStrategies(v []*AwsEcsServicePlacementStrategiesDetails) *AwsEcsServiceDetails { + s.PlacementStrategies = v return s } -// An Elastic Inference accelerator to use for the containers in the task. -type AwsEcsTaskDefinitionInferenceAcceleratorsDetails struct { - _ struct{} `type:"structure"` +// SetPlatformVersion sets the PlatformVersion field's value. +func (s *AwsEcsServiceDetails) SetPlatformVersion(v string) *AwsEcsServiceDetails { + s.PlatformVersion = &v + return s +} - // The Elastic Inference accelerator device name. - DeviceName *string `type:"string"` +// SetPropagateTags sets the PropagateTags field's value. +func (s *AwsEcsServiceDetails) SetPropagateTags(v string) *AwsEcsServiceDetails { + s.PropagateTags = &v + return s +} - // The Elastic Inference accelerator type to use. - DeviceType *string `type:"string"` +// SetRole sets the Role field's value. +func (s *AwsEcsServiceDetails) SetRole(v string) *AwsEcsServiceDetails { + s.Role = &v + return s } -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionInferenceAcceleratorsDetails) String() string { - return awsutil.Prettify(s) +// SetSchedulingStrategy sets the SchedulingStrategy field's value. +func (s *AwsEcsServiceDetails) SetSchedulingStrategy(v string) *AwsEcsServiceDetails { + s.SchedulingStrategy = &v + return s } -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionInferenceAcceleratorsDetails) GoString() string { - return s.String() +// SetServiceArn sets the ServiceArn field's value. +func (s *AwsEcsServiceDetails) SetServiceArn(v string) *AwsEcsServiceDetails { + s.ServiceArn = &v + return s } -// SetDeviceName sets the DeviceName field's value. -func (s *AwsEcsTaskDefinitionInferenceAcceleratorsDetails) SetDeviceName(v string) *AwsEcsTaskDefinitionInferenceAcceleratorsDetails { - s.DeviceName = &v +// SetServiceName sets the ServiceName field's value. +func (s *AwsEcsServiceDetails) SetServiceName(v string) *AwsEcsServiceDetails { + s.ServiceName = &v return s } -// SetDeviceType sets the DeviceType field's value. -func (s *AwsEcsTaskDefinitionInferenceAcceleratorsDetails) SetDeviceType(v string) *AwsEcsTaskDefinitionInferenceAcceleratorsDetails { - s.DeviceType = &v +// SetServiceRegistries sets the ServiceRegistries field's value. +func (s *AwsEcsServiceDetails) SetServiceRegistries(v []*AwsEcsServiceServiceRegistriesDetails) *AwsEcsServiceDetails { + s.ServiceRegistries = v return s } -// A placement constraint object to use for tasks. -type AwsEcsTaskDefinitionPlacementConstraintsDetails struct { +// SetTaskDefinition sets the TaskDefinition field's value. +func (s *AwsEcsServiceDetails) SetTaskDefinition(v string) *AwsEcsServiceDetails { + s.TaskDefinition = &v + return s +} + +// Information about a load balancer that the service uses. +type AwsEcsServiceLoadBalancersDetails struct { _ struct{} `type:"structure"` - // A cluster query language expression to apply to the constraint. - Expression *string `type:"string"` + // The name of the container to associate with the load balancer. + ContainerName *string `type:"string"` - // The type of constraint. - Type *string `type:"string"` + // The port on the container to associate with the load balancer. This port + // must correspond to a containerPort in the task definition the tasks in the + // service are using. For tasks that use the EC2 launch type, the container + // instance they are launched on must allow ingress traffic on the hostPort + // of the port mapping. + ContainerPort *int64 `type:"integer"` + + // The name of the load balancer to associate with the Amazon ECS service or + // task set. + // + // Only specified when using a Classic Load Balancer. For an Application Load + // Balancer or a Network Load Balancer, the load balancer name is omitted. + LoadBalancerName *string `type:"string"` + + // The ARN of the Elastic Load Balancing target group or groups associated with + // a service or task set. + // + // Only specified when using an Application Load Balancer or a Network Load + // Balancer. For a Classic Load Balancer, the target group ARN is omitted. + TargetGroupArn *string `type:"string"` } // String returns the string representation. @@ -19699,7 +19826,7 @@ type AwsEcsTaskDefinitionPlacementConstraintsDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionPlacementConstraintsDetails) String() string { +func (s AwsEcsServiceLoadBalancersDetails) String() string { return awsutil.Prettify(s) } @@ -19708,35 +19835,54 @@ func (s AwsEcsTaskDefinitionPlacementConstraintsDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionPlacementConstraintsDetails) GoString() string { +func (s AwsEcsServiceLoadBalancersDetails) GoString() string { return s.String() } -// SetExpression sets the Expression field's value. -func (s *AwsEcsTaskDefinitionPlacementConstraintsDetails) SetExpression(v string) *AwsEcsTaskDefinitionPlacementConstraintsDetails { - s.Expression = &v +// SetContainerName sets the ContainerName field's value. +func (s *AwsEcsServiceLoadBalancersDetails) SetContainerName(v string) *AwsEcsServiceLoadBalancersDetails { + s.ContainerName = &v return s } -// SetType sets the Type field's value. -func (s *AwsEcsTaskDefinitionPlacementConstraintsDetails) SetType(v string) *AwsEcsTaskDefinitionPlacementConstraintsDetails { - s.Type = &v +// SetContainerPort sets the ContainerPort field's value. +func (s *AwsEcsServiceLoadBalancersDetails) SetContainerPort(v int64) *AwsEcsServiceLoadBalancersDetails { + s.ContainerPort = &v return s } -// The configuration details for the App Mesh proxy. -type AwsEcsTaskDefinitionProxyConfigurationDetails struct { +// SetLoadBalancerName sets the LoadBalancerName field's value. +func (s *AwsEcsServiceLoadBalancersDetails) SetLoadBalancerName(v string) *AwsEcsServiceLoadBalancersDetails { + s.LoadBalancerName = &v + return s +} + +// SetTargetGroupArn sets the TargetGroupArn field's value. +func (s *AwsEcsServiceLoadBalancersDetails) SetTargetGroupArn(v string) *AwsEcsServiceLoadBalancersDetails { + s.TargetGroupArn = &v + return s +} + +// For tasks that use the awsvpc networking mode, the VPC subnet and security +// group configuration. +type AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails struct { _ struct{} `type:"structure"` - // The name of the container that will serve as the App Mesh proxy. - ContainerName *string `type:"string"` + // Whether the task's elastic network interface receives a public IP address. + // The default value is DISABLED. + // + // Valid values: ENABLED | DISABLED + AssignPublicIp *string `type:"string"` - // The set of network configuration parameters to provide to the Container Network - // Interface (CNI) plugin, specified as key-value pairs. - ProxyConfigurationProperties []*AwsEcsTaskDefinitionProxyConfigurationProxyConfigurationPropertiesDetails `type:"list"` + // The IDs of the security groups associated with the task or service. + // + // You can provide up to five security groups. + SecurityGroups []*string `type:"list"` - // The proxy type. - Type *string `type:"string"` + // The IDs of the subnets associated with the task or service. + // + // You can provide up to 16 subnets. + Subnets []*string `type:"list"` } // String returns the string representation. @@ -19744,7 +19890,7 @@ type AwsEcsTaskDefinitionProxyConfigurationDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionProxyConfigurationDetails) String() string { +func (s AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails) String() string { return awsutil.Prettify(s) } @@ -19753,38 +19899,35 @@ func (s AwsEcsTaskDefinitionProxyConfigurationDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionProxyConfigurationDetails) GoString() string { +func (s AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails) GoString() string { return s.String() } -// SetContainerName sets the ContainerName field's value. -func (s *AwsEcsTaskDefinitionProxyConfigurationDetails) SetContainerName(v string) *AwsEcsTaskDefinitionProxyConfigurationDetails { - s.ContainerName = &v +// SetAssignPublicIp sets the AssignPublicIp field's value. +func (s *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails) SetAssignPublicIp(v string) *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails { + s.AssignPublicIp = &v return s } -// SetProxyConfigurationProperties sets the ProxyConfigurationProperties field's value. -func (s *AwsEcsTaskDefinitionProxyConfigurationDetails) SetProxyConfigurationProperties(v []*AwsEcsTaskDefinitionProxyConfigurationProxyConfigurationPropertiesDetails) *AwsEcsTaskDefinitionProxyConfigurationDetails { - s.ProxyConfigurationProperties = v +// SetSecurityGroups sets the SecurityGroups field's value. +func (s *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails) SetSecurityGroups(v []*string) *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails { + s.SecurityGroups = v return s } -// SetType sets the Type field's value. -func (s *AwsEcsTaskDefinitionProxyConfigurationDetails) SetType(v string) *AwsEcsTaskDefinitionProxyConfigurationDetails { - s.Type = &v +// SetSubnets sets the Subnets field's value. +func (s *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails) SetSubnets(v []*string) *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails { + s.Subnets = v return s } -// A network configuration parameter to provide to the Container Network Interface -// (CNI) plugin. -type AwsEcsTaskDefinitionProxyConfigurationProxyConfigurationPropertiesDetails struct { +// For tasks that use the awsvpc networking mode, the VPC subnet and security +// group configuration. +type AwsEcsServiceNetworkConfigurationDetails struct { _ struct{} `type:"structure"` - // The name of the property. - Name *string `type:"string"` - - // The value of the property. - Value *string `type:"string"` + // The VPC subnet and security group configuration. + AwsVpcConfiguration *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails `type:"structure"` } // String returns the string representation. @@ -19792,7 +19935,7 @@ type AwsEcsTaskDefinitionProxyConfigurationProxyConfigurationPropertiesDetails s // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionProxyConfigurationProxyConfigurationPropertiesDetails) String() string { +func (s AwsEcsServiceNetworkConfigurationDetails) String() string { return awsutil.Prettify(s) } @@ -19801,38 +19944,30 @@ func (s AwsEcsTaskDefinitionProxyConfigurationProxyConfigurationPropertiesDetail // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionProxyConfigurationProxyConfigurationPropertiesDetails) GoString() string { +func (s AwsEcsServiceNetworkConfigurationDetails) GoString() string { return s.String() } -// SetName sets the Name field's value. -func (s *AwsEcsTaskDefinitionProxyConfigurationProxyConfigurationPropertiesDetails) SetName(v string) *AwsEcsTaskDefinitionProxyConfigurationProxyConfigurationPropertiesDetails { - s.Name = &v - return s -} - -// SetValue sets the Value field's value. -func (s *AwsEcsTaskDefinitionProxyConfigurationProxyConfigurationPropertiesDetails) SetValue(v string) *AwsEcsTaskDefinitionProxyConfigurationProxyConfigurationPropertiesDetails { - s.Value = &v +// SetAwsVpcConfiguration sets the AwsVpcConfiguration field's value. +func (s *AwsEcsServiceNetworkConfigurationDetails) SetAwsVpcConfiguration(v *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails) *AwsEcsServiceNetworkConfigurationDetails { + s.AwsVpcConfiguration = v return s } -// A data volume to mount from another container. -type AwsEcsTaskDefinitionVolumesDetails struct { +// A placement constraint for the tasks in the service. +type AwsEcsServicePlacementConstraintsDetails struct { _ struct{} `type:"structure"` - // Information about a Docker volume. - DockerVolumeConfiguration *AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails `type:"structure"` - - // Information about the Amazon Elastic File System file system that is used - // for task storage. - EfsVolumeConfiguration *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails `type:"structure"` - - // Information about a bind mount host volume. - Host *AwsEcsTaskDefinitionVolumesHostDetails `type:"structure"` + // A cluster query language expression to apply to the constraint. You cannot + // specify an expression if the constraint type is distinctInstance. + Expression *string `type:"string"` - // The name of the data volume. - Name *string `type:"string"` + // The type of constraint. Use distinctInstance to run each task in a particular + // group on a different container instance. Use memberOf to restrict the selection + // to a group of valid candidates. + // + // Valid values: distinctInstance | memberOf + Type *string `type:"string"` } // String returns the string representation. @@ -19840,7 +19975,7 @@ type AwsEcsTaskDefinitionVolumesDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionVolumesDetails) String() string { +func (s AwsEcsServicePlacementConstraintsDetails) String() string { return awsutil.Prettify(s) } @@ -19849,56 +19984,49 @@ func (s AwsEcsTaskDefinitionVolumesDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionVolumesDetails) GoString() string { +func (s AwsEcsServicePlacementConstraintsDetails) GoString() string { return s.String() } -// SetDockerVolumeConfiguration sets the DockerVolumeConfiguration field's value. -func (s *AwsEcsTaskDefinitionVolumesDetails) SetDockerVolumeConfiguration(v *AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails) *AwsEcsTaskDefinitionVolumesDetails { - s.DockerVolumeConfiguration = v - return s -} - -// SetEfsVolumeConfiguration sets the EfsVolumeConfiguration field's value. -func (s *AwsEcsTaskDefinitionVolumesDetails) SetEfsVolumeConfiguration(v *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails) *AwsEcsTaskDefinitionVolumesDetails { - s.EfsVolumeConfiguration = v - return s -} - -// SetHost sets the Host field's value. -func (s *AwsEcsTaskDefinitionVolumesDetails) SetHost(v *AwsEcsTaskDefinitionVolumesHostDetails) *AwsEcsTaskDefinitionVolumesDetails { - s.Host = v +// SetExpression sets the Expression field's value. +func (s *AwsEcsServicePlacementConstraintsDetails) SetExpression(v string) *AwsEcsServicePlacementConstraintsDetails { + s.Expression = &v return s } -// SetName sets the Name field's value. -func (s *AwsEcsTaskDefinitionVolumesDetails) SetName(v string) *AwsEcsTaskDefinitionVolumesDetails { - s.Name = &v +// SetType sets the Type field's value. +func (s *AwsEcsServicePlacementConstraintsDetails) SetType(v string) *AwsEcsServicePlacementConstraintsDetails { + s.Type = &v return s } -// Information about a Docker volume. -type AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails struct { +// A placement strategy that determines how to place the tasks for the service. +type AwsEcsServicePlacementStrategiesDetails struct { _ struct{} `type:"structure"` - // Whether to create the Docker volume automatically if it does not already - // exist. - Autoprovision *bool `type:"boolean"` - - // The Docker volume driver to use. - Driver *string `type:"string"` - - // A map of Docker driver-specific options that are passed through. - DriverOpts map[string]*string `type:"map"` - - // Custom metadata to add to the Docker volume. - Labels map[string]*string `type:"map"` + // The field to apply the placement strategy against. + // + // For the spread placement strategy, valid values are instanceId (or host, + // which has the same effect), or any platform or custom attribute that is applied + // to a container instance, such as attribute:ecs.availability-zone. + // + // For the binpack placement strategy, valid values are cpu and memory. + // + // For the random placement strategy, this attribute is not used. + Field *string `type:"string"` - // The scope for the Docker volume that determines its lifecycle. Docker volumes - // that are scoped to a task are provisioned automatically when the task starts - // and destroyed when the task stops. Docker volumes that are shared persist - // after the task stops. Valid values are shared or task. - Scope *string `type:"string"` + // The type of placement strategy. + // + // The random placement strategy randomly places tasks on available candidates. + // + // The spread placement strategy spreads placement across available candidates + // evenly based on the value of Field. + // + // The binpack strategy places tasks on available candidates that have the least + // available amount of the resource that is specified in Field. + // + // Valid values: random | spread | binpack + Type *string `type:"string"` } // String returns the string representation. @@ -19906,7 +20034,7 @@ type AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails) String() string { +func (s AwsEcsServicePlacementStrategiesDetails) String() string { return awsutil.Prettify(s) } @@ -19915,49 +20043,53 @@ func (s AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails) String() st // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails) GoString() string { +func (s AwsEcsServicePlacementStrategiesDetails) GoString() string { return s.String() } -// SetAutoprovision sets the Autoprovision field's value. -func (s *AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails) SetAutoprovision(v bool) *AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails { - s.Autoprovision = &v - return s -} - -// SetDriver sets the Driver field's value. -func (s *AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails) SetDriver(v string) *AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails { - s.Driver = &v +// SetField sets the Field field's value. +func (s *AwsEcsServicePlacementStrategiesDetails) SetField(v string) *AwsEcsServicePlacementStrategiesDetails { + s.Field = &v return s } -// SetDriverOpts sets the DriverOpts field's value. -func (s *AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails) SetDriverOpts(v map[string]*string) *AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails { - s.DriverOpts = v +// SetType sets the Type field's value. +func (s *AwsEcsServicePlacementStrategiesDetails) SetType(v string) *AwsEcsServicePlacementStrategiesDetails { + s.Type = &v return s } -// SetLabels sets the Labels field's value. -func (s *AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails) SetLabels(v map[string]*string) *AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails { - s.Labels = v - return s -} +// Information about a service discovery registry to assign to the service. +type AwsEcsServiceServiceRegistriesDetails struct { + _ struct{} `type:"structure"` -// SetScope sets the Scope field's value. -func (s *AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails) SetScope(v string) *AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails { - s.Scope = &v - return s -} + // The container name value to use for the service discovery service. + // + // If the task definition uses the bridge or host network mode, you must specify + // ContainerName and ContainerPort. + // + // If the task definition uses the awsvpc network mode and a type SRV DNS record, + // you must specify either ContainerName and ContainerPort, or Port , but not + // both. + ContainerName *string `type:"string"` -type AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationAuthorizationConfigDetails struct { - _ struct{} `type:"structure"` + // The port value to use for the service discovery service. + // + // If the task definition uses the bridge or host network mode, you must specify + // ContainerName and ContainerPort. + // + // If the task definition uses the awsvpc network mode and a type SRV DNS record, + // you must specify either ContainerName and ContainerPort, or Port , but not + // both. + ContainerPort *int64 `type:"integer"` - // The Amazon EFS access point identifier to use. - AccessPointId *string `type:"string"` + // The port value to use for a service discovery service that specifies an SRV + // record. This field can be used if both the awsvpcawsvpc network mode and + // SRV records are used. + Port *int64 `type:"integer"` - // Whether to use the Amazon ECS task IAM role defined in a task definition - // when mounting the Amazon EFS file system. - Iam *string `type:"string"` + // The ARN of the service registry. + RegistryArn *string `type:"string"` } // String returns the string representation. @@ -19965,7 +20097,7 @@ type AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationAuthorizationConfigDetails // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationAuthorizationConfigDetails) String() string { +func (s AwsEcsServiceServiceRegistriesDetails) String() string { return awsutil.Prettify(s) } @@ -19974,44 +20106,53 @@ func (s AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationAuthorizationConfigDeta // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationAuthorizationConfigDetails) GoString() string { +func (s AwsEcsServiceServiceRegistriesDetails) GoString() string { return s.String() } -// SetAccessPointId sets the AccessPointId field's value. -func (s *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationAuthorizationConfigDetails) SetAccessPointId(v string) *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationAuthorizationConfigDetails { - s.AccessPointId = &v +// SetContainerName sets the ContainerName field's value. +func (s *AwsEcsServiceServiceRegistriesDetails) SetContainerName(v string) *AwsEcsServiceServiceRegistriesDetails { + s.ContainerName = &v return s } -// SetIam sets the Iam field's value. -func (s *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationAuthorizationConfigDetails) SetIam(v string) *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationAuthorizationConfigDetails { - s.Iam = &v +// SetContainerPort sets the ContainerPort field's value. +func (s *AwsEcsServiceServiceRegistriesDetails) SetContainerPort(v int64) *AwsEcsServiceServiceRegistriesDetails { + s.ContainerPort = &v return s } -// Information about the Amazon Elastic File System file system that is used -// for task storage. -type AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails struct { - _ struct{} `type:"structure"` - - // The authorization configuration details for the Amazon EFS file system. - AuthorizationConfig *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationAuthorizationConfigDetails `type:"structure"` +// SetPort sets the Port field's value. +func (s *AwsEcsServiceServiceRegistriesDetails) SetPort(v int64) *AwsEcsServiceServiceRegistriesDetails { + s.Port = &v + return s +} - // The Amazon EFS file system identifier to use. - FilesystemId *string `type:"string"` +// SetRegistryArn sets the RegistryArn field's value. +func (s *AwsEcsServiceServiceRegistriesDetails) SetRegistryArn(v string) *AwsEcsServiceServiceRegistriesDetails { + s.RegistryArn = &v + return s +} - // The directory within the Amazon EFS file system to mount as the root directory - // inside the host. - RootDirectory *string `type:"string"` +// A dependency that is defined for container startup and shutdown. +type AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails struct { + _ struct{} `type:"structure"` - // Whether to enable encryption for Amazon EFS data in transit between the Amazon - // ECS host and the Amazon EFS server. - TransitEncryption *string `type:"string"` + // The dependency condition of the dependent container. Indicates the required + // status of the dependent container before the current container can start. + // Valid values are as follows: + // + // * COMPLETE + // + // * HEALTHY + // + // * SUCCESS + // + // * START + Condition *string `type:"string"` - // The port to use when sending encrypted data between the Amazon ECS host and - // the Amazon EFS server. - TransitEncryptionPort *int64 `type:"integer"` + // The name of the dependent container. + ContainerName *string `type:"string"` } // String returns the string representation. @@ -20019,7 +20160,7 @@ type AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails) String() string { +func (s AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails) String() string { return awsutil.Prettify(s) } @@ -20028,106 +20169,171 @@ func (s AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails) String() strin // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails) GoString() string { +func (s AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails) GoString() string { return s.String() } -// SetAuthorizationConfig sets the AuthorizationConfig field's value. -func (s *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails) SetAuthorizationConfig(v *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationAuthorizationConfigDetails) *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails { - s.AuthorizationConfig = v +// SetCondition sets the Condition field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails) SetCondition(v string) *AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails { + s.Condition = &v return s } -// SetFilesystemId sets the FilesystemId field's value. -func (s *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails) SetFilesystemId(v string) *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails { - s.FilesystemId = &v +// SetContainerName sets the ContainerName field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails) SetContainerName(v string) *AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails { + s.ContainerName = &v return s } -// SetRootDirectory sets the RootDirectory field's value. -func (s *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails) SetRootDirectory(v string) *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails { - s.RootDirectory = &v - return s -} +// A container definition that describes a container in the task. +type AwsEcsTaskDefinitionContainerDefinitionsDetails struct { + _ struct{} `type:"structure"` -// SetTransitEncryption sets the TransitEncryption field's value. -func (s *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails) SetTransitEncryption(v string) *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails { - s.TransitEncryption = &v - return s -} + // The command that is passed to the container. + Command []*string `type:"list"` -// SetTransitEncryptionPort sets the TransitEncryptionPort field's value. -func (s *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails) SetTransitEncryptionPort(v int64) *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails { - s.TransitEncryptionPort = &v - return s -} + // The number of CPU units reserved for the container. + Cpu *int64 `type:"integer"` -// Information about a bind mount host volume. -type AwsEcsTaskDefinitionVolumesHostDetails struct { - _ struct{} `type:"structure"` + // The dependencies that are defined for container startup and shutdown. + DependsOn []*AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails `type:"list"` - // The path on the host container instance that is presented to the container. - SourcePath *string `type:"string"` -} + // Whether to disable networking within the container. + DisableNetworking *bool `type:"boolean"` -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionVolumesHostDetails) String() string { - return awsutil.Prettify(s) -} + // A list of DNS search domains that are presented to the container. + DnsSearchDomains []*string `type:"list"` -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsEcsTaskDefinitionVolumesHostDetails) GoString() string { - return s.String() -} + // A list of DNS servers that are presented to the container. + DnsServers []*string `type:"list"` -// SetSourcePath sets the SourcePath field's value. -func (s *AwsEcsTaskDefinitionVolumesHostDetails) SetSourcePath(v string) *AwsEcsTaskDefinitionVolumesHostDetails { - s.SourcePath = &v - return s -} + // A key-value map of labels to add to the container. + DockerLabels map[string]*string `type:"map"` -// Provides details about a task in a cluster. -type AwsEcsTaskDetails struct { - _ struct{} `type:"structure"` + // A list of strings to provide custom labels for SELinux and AppArmor multi-level + // security systems. + DockerSecurityOptions []*string `type:"list"` - // The Amazon Resource Name (ARN) of the cluster that hosts the task. - ClusterArn *string `type:"string"` + // The entry point that is passed to the container. + EntryPoint []*string `type:"list"` - // The containers that are associated with the task. - Containers []*AwsEcsContainerDetails `type:"list"` + // The environment variables to pass to a container. + Environment []*AwsEcsTaskDefinitionContainerDefinitionsEnvironmentDetails `type:"list"` - // The Unix timestamp for the time when the task was created. More specifically, - // it's for the time when the task entered the PENDING state. - CreatedAt *string `type:"string"` + // A list of files containing the environment variables to pass to a container. + EnvironmentFiles []*AwsEcsTaskDefinitionContainerDefinitionsEnvironmentFilesDetails `type:"list"` - // The name of the task group that's associated with the task. - Group *string `type:"string"` + // Whether the container is essential. All tasks must have at least one essential + // container. + Essential *bool `type:"boolean"` - // The Unix timestamp for the time when the task started. More specifically, - // it's for the time when the task transitioned from the PENDING state to the - // RUNNING state. - StartedAt *string `type:"string"` + // A list of hostnames and IP address mappings to append to the /etc/hosts file + // on the container. + ExtraHosts []*AwsEcsTaskDefinitionContainerDefinitionsExtraHostsDetails `type:"list"` - // The tag specified when a task is started. If an Amazon ECS service started - // the task, the startedBy parameter contains the deployment ID of that service. - StartedBy *string `type:"string"` + // The FireLens configuration for the container. Specifies and configures a + // log router for container logs. + FirelensConfiguration *AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetails `type:"structure"` - // The ARN of the task definition that creates the task. - TaskDefinitionArn *string `type:"string"` + // The container health check command and associated configuration parameters + // for the container. + HealthCheck *AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails `type:"structure"` - // The version counter for the task. - Version *string `type:"string"` + // The hostname to use for the container. + Hostname *string `type:"string"` - // Details about the data volume that is used in a task definition. - Volumes []*AwsEcsTaskVolumeDetails `type:"list"` + // The image used to start the container. + Image *string `type:"string"` + + // If set to true, then containerized applications can be deployed that require + // stdin or a tty to be allocated. + Interactive *bool `type:"boolean"` + + // A list of links for the container in the form container_name:alias . Allows + // containers to communicate with each other without the need for port mappings. + Links []*string `type:"list"` + + // Linux-specific modifications that are applied to the container, such as Linux + // kernel capabilities. + LinuxParameters *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails `type:"structure"` + + // The log configuration specification for the container. + LogConfiguration *AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetails `type:"structure"` + + // The amount (in MiB) of memory to present to the container. If the container + // attempts to exceed the memory specified here, the container is shut down. + // The total amount of memory reserved for all containers within a task must + // be lower than the task memory value, if one is specified. + Memory *int64 `type:"integer"` + + // The soft limit (in MiB) of memory to reserve for the container. + MemoryReservation *int64 `type:"integer"` + + // The mount points for the data volumes in the container. + MountPoints []*AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetails `type:"list"` + + // The name of the container. + Name *string `type:"string"` + + // The list of port mappings for the container. + PortMappings []*AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetails `type:"list"` + + // Whether the container is given elevated privileges on the host container + // instance. The elevated privileges are similar to the root user. + Privileged *bool `type:"boolean"` + + // Whether to allocate a TTY to the container. + PseudoTerminal *bool `type:"boolean"` + + // Whether the container is given read-only access to its root file system. + ReadonlyRootFilesystem *bool `type:"boolean"` + + // The private repository authentication credentials to use. + RepositoryCredentials *AwsEcsTaskDefinitionContainerDefinitionsRepositoryCredentialsDetails `type:"structure"` + + // The type and amount of a resource to assign to a container. The only supported + // resource is a GPU. + ResourceRequirements []*AwsEcsTaskDefinitionContainerDefinitionsResourceRequirementsDetails `type:"list"` + + // The secrets to pass to the container. + Secrets []*AwsEcsTaskDefinitionContainerDefinitionsSecretsDetails `type:"list"` + + // The number of seconds to wait before giving up on resolving dependencies + // for a container. + StartTimeout *int64 `type:"integer"` + + // The number of seconds to wait before the container is stopped if it doesn't + // shut down normally on its own. + StopTimeout *int64 `type:"integer"` + + // A list of namespaced kernel parameters to set in the container. + SystemControls []*AwsEcsTaskDefinitionContainerDefinitionsSystemControlsDetails `type:"list"` + + // A list of ulimits to set in the container. + Ulimits []*AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetails `type:"list"` + + // The user to use inside the container. + // + // The value can use one of the following formats. + // + // * user + // + // * user :group + // + // * uid + // + // * uid :gid + // + // * user :gid + // + // * uid :group + User *string `type:"string"` + + // Data volumes to mount from another container. + VolumesFrom []*AwsEcsTaskDefinitionContainerDefinitionsVolumesFromDetails `type:"list"` + + // The working directory in which to run commands inside the container. + WorkingDirectory *string `type:"string"` } // String returns the string representation. @@ -20135,7 +20341,7 @@ type AwsEcsTaskDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDetails) String() string { +func (s AwsEcsTaskDefinitionContainerDefinitionsDetails) String() string { return awsutil.Prettify(s) } @@ -20144,237 +20350,253 @@ func (s AwsEcsTaskDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEcsTaskDetails) GoString() string { +func (s AwsEcsTaskDefinitionContainerDefinitionsDetails) GoString() string { return s.String() } -// SetClusterArn sets the ClusterArn field's value. -func (s *AwsEcsTaskDetails) SetClusterArn(v string) *AwsEcsTaskDetails { - s.ClusterArn = &v +// SetCommand sets the Command field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetCommand(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.Command = v return s } -// SetContainers sets the Containers field's value. -func (s *AwsEcsTaskDetails) SetContainers(v []*AwsEcsContainerDetails) *AwsEcsTaskDetails { - s.Containers = v +// SetCpu sets the Cpu field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetCpu(v int64) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.Cpu = &v return s } -// SetCreatedAt sets the CreatedAt field's value. -func (s *AwsEcsTaskDetails) SetCreatedAt(v string) *AwsEcsTaskDetails { - s.CreatedAt = &v +// SetDependsOn sets the DependsOn field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetDependsOn(v []*AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.DependsOn = v return s } -// SetGroup sets the Group field's value. -func (s *AwsEcsTaskDetails) SetGroup(v string) *AwsEcsTaskDetails { - s.Group = &v +// SetDisableNetworking sets the DisableNetworking field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetDisableNetworking(v bool) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.DisableNetworking = &v return s } -// SetStartedAt sets the StartedAt field's value. -func (s *AwsEcsTaskDetails) SetStartedAt(v string) *AwsEcsTaskDetails { - s.StartedAt = &v +// SetDnsSearchDomains sets the DnsSearchDomains field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetDnsSearchDomains(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.DnsSearchDomains = v return s } -// SetStartedBy sets the StartedBy field's value. -func (s *AwsEcsTaskDetails) SetStartedBy(v string) *AwsEcsTaskDetails { - s.StartedBy = &v +// SetDnsServers sets the DnsServers field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetDnsServers(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.DnsServers = v return s } -// SetTaskDefinitionArn sets the TaskDefinitionArn field's value. -func (s *AwsEcsTaskDetails) SetTaskDefinitionArn(v string) *AwsEcsTaskDetails { - s.TaskDefinitionArn = &v +// SetDockerLabels sets the DockerLabels field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetDockerLabels(v map[string]*string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.DockerLabels = v return s } -// SetVersion sets the Version field's value. -func (s *AwsEcsTaskDetails) SetVersion(v string) *AwsEcsTaskDetails { - s.Version = &v +// SetDockerSecurityOptions sets the DockerSecurityOptions field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetDockerSecurityOptions(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.DockerSecurityOptions = v return s } -// SetVolumes sets the Volumes field's value. -func (s *AwsEcsTaskDetails) SetVolumes(v []*AwsEcsTaskVolumeDetails) *AwsEcsTaskDetails { - s.Volumes = v +// SetEntryPoint sets the EntryPoint field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetEntryPoint(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.EntryPoint = v return s } -// Provides information about a data volume that's used in a task definition. -type AwsEcsTaskVolumeDetails struct { - _ struct{} `type:"structure"` - - // This parameter is specified when you use bind mount host volumes. The contents - // of the host parameter determine whether your bind mount host volume persists - // on the host container instance and where it's stored. - Host *AwsEcsTaskVolumeHostDetails `type:"structure"` - - // The name of the volume. Up to 255 letters (uppercase and lowercase), numbers, - // underscores, and hyphens are allowed. This name is referenced in the sourceVolume - // parameter of container definition mountPoints. - Name *string `type:"string"` +// SetEnvironment sets the Environment field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetEnvironment(v []*AwsEcsTaskDefinitionContainerDefinitionsEnvironmentDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.Environment = v + return s } -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsEcsTaskVolumeDetails) String() string { - return awsutil.Prettify(s) +// SetEnvironmentFiles sets the EnvironmentFiles field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetEnvironmentFiles(v []*AwsEcsTaskDefinitionContainerDefinitionsEnvironmentFilesDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.EnvironmentFiles = v + return s } -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsEcsTaskVolumeDetails) GoString() string { - return s.String() +// SetEssential sets the Essential field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetEssential(v bool) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.Essential = &v + return s } -// SetHost sets the Host field's value. -func (s *AwsEcsTaskVolumeDetails) SetHost(v *AwsEcsTaskVolumeHostDetails) *AwsEcsTaskVolumeDetails { - s.Host = v +// SetExtraHosts sets the ExtraHosts field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetExtraHosts(v []*AwsEcsTaskDefinitionContainerDefinitionsExtraHostsDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.ExtraHosts = v return s } -// SetName sets the Name field's value. -func (s *AwsEcsTaskVolumeDetails) SetName(v string) *AwsEcsTaskVolumeDetails { - s.Name = &v +// SetFirelensConfiguration sets the FirelensConfiguration field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetFirelensConfiguration(v *AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.FirelensConfiguration = v return s } -// Provides details on a container instance bind mount host volume. -type AwsEcsTaskVolumeHostDetails struct { - _ struct{} `type:"structure"` - - // When the host parameter is used, specify a sourcePath to declare the path - // on the host container instance that's presented to the container. - SourcePath *string `type:"string"` +// SetHealthCheck sets the HealthCheck field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetHealthCheck(v *AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.HealthCheck = v + return s } -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsEcsTaskVolumeHostDetails) String() string { - return awsutil.Prettify(s) +// SetHostname sets the Hostname field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetHostname(v string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.Hostname = &v + return s } -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsEcsTaskVolumeHostDetails) GoString() string { - return s.String() +// SetImage sets the Image field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetImage(v string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.Image = &v + return s } -// SetSourcePath sets the SourcePath field's value. -func (s *AwsEcsTaskVolumeHostDetails) SetSourcePath(v string) *AwsEcsTaskVolumeHostDetails { - s.SourcePath = &v +// SetInteractive sets the Interactive field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetInteractive(v bool) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.Interactive = &v return s } -// Provides information about an Amazon EFS access point. -type AwsEfsAccessPointDetails struct { - _ struct{} `type:"structure"` - - // The ID of the Amazon EFS access point. - AccessPointId *string `type:"string"` - - // The Amazon Resource Name (ARN) of the Amazon EFS access point. - Arn *string `type:"string"` - - // The opaque string specified in the request to ensure idempotent creation. - ClientToken *string `type:"string"` - - // The ID of the Amazon EFS file system that the access point applies to. - FileSystemId *string `type:"string"` - - // The full POSIX identity, including the user ID, group ID, and secondary group - // IDs on the access point, that is used for all file operations by NFS clients - // using the access point. - PosixUser *AwsEfsAccessPointPosixUserDetails `type:"structure"` +// SetLinks sets the Links field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetLinks(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.Links = v + return s +} - // The directory on the Amazon EFS file system that the access point exposes - // as the root directory to NFS clients using the access point. - RootDirectory *AwsEfsAccessPointRootDirectoryDetails `type:"structure"` +// SetLinuxParameters sets the LinuxParameters field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetLinuxParameters(v *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.LinuxParameters = v + return s } -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsEfsAccessPointDetails) String() string { - return awsutil.Prettify(s) +// SetLogConfiguration sets the LogConfiguration field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetLogConfiguration(v *AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.LogConfiguration = v + return s } -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsEfsAccessPointDetails) GoString() string { - return s.String() +// SetMemory sets the Memory field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetMemory(v int64) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.Memory = &v + return s } -// SetAccessPointId sets the AccessPointId field's value. -func (s *AwsEfsAccessPointDetails) SetAccessPointId(v string) *AwsEfsAccessPointDetails { - s.AccessPointId = &v +// SetMemoryReservation sets the MemoryReservation field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetMemoryReservation(v int64) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.MemoryReservation = &v return s } -// SetArn sets the Arn field's value. -func (s *AwsEfsAccessPointDetails) SetArn(v string) *AwsEfsAccessPointDetails { - s.Arn = &v +// SetMountPoints sets the MountPoints field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetMountPoints(v []*AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.MountPoints = v return s } -// SetClientToken sets the ClientToken field's value. -func (s *AwsEfsAccessPointDetails) SetClientToken(v string) *AwsEfsAccessPointDetails { - s.ClientToken = &v +// SetName sets the Name field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetName(v string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.Name = &v return s } -// SetFileSystemId sets the FileSystemId field's value. -func (s *AwsEfsAccessPointDetails) SetFileSystemId(v string) *AwsEfsAccessPointDetails { - s.FileSystemId = &v +// SetPortMappings sets the PortMappings field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetPortMappings(v []*AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.PortMappings = v return s } -// SetPosixUser sets the PosixUser field's value. -func (s *AwsEfsAccessPointDetails) SetPosixUser(v *AwsEfsAccessPointPosixUserDetails) *AwsEfsAccessPointDetails { - s.PosixUser = v +// SetPrivileged sets the Privileged field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetPrivileged(v bool) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.Privileged = &v return s } -// SetRootDirectory sets the RootDirectory field's value. -func (s *AwsEfsAccessPointDetails) SetRootDirectory(v *AwsEfsAccessPointRootDirectoryDetails) *AwsEfsAccessPointDetails { - s.RootDirectory = v +// SetPseudoTerminal sets the PseudoTerminal field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetPseudoTerminal(v bool) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.PseudoTerminal = &v return s } -// Provides details for all file system operations using this Amazon EFS access -// point. -type AwsEfsAccessPointPosixUserDetails struct { - _ struct{} `type:"structure"` +// SetReadonlyRootFilesystem sets the ReadonlyRootFilesystem field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetReadonlyRootFilesystem(v bool) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.ReadonlyRootFilesystem = &v + return s +} - // The POSIX group ID used for all file system operations using this access - // point. - Gid *string `type:"string"` +// SetRepositoryCredentials sets the RepositoryCredentials field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetRepositoryCredentials(v *AwsEcsTaskDefinitionContainerDefinitionsRepositoryCredentialsDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.RepositoryCredentials = v + return s +} - // Secondary POSIX group IDs used for all file system operations using this - // access point. - SecondaryGids []*string `type:"list"` +// SetResourceRequirements sets the ResourceRequirements field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetResourceRequirements(v []*AwsEcsTaskDefinitionContainerDefinitionsResourceRequirementsDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.ResourceRequirements = v + return s +} - // The POSIX user ID used for all file system operations using this access point. - Uid *string `type:"string"` +// SetSecrets sets the Secrets field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetSecrets(v []*AwsEcsTaskDefinitionContainerDefinitionsSecretsDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.Secrets = v + return s +} + +// SetStartTimeout sets the StartTimeout field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetStartTimeout(v int64) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.StartTimeout = &v + return s +} + +// SetStopTimeout sets the StopTimeout field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetStopTimeout(v int64) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.StopTimeout = &v + return s +} + +// SetSystemControls sets the SystemControls field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetSystemControls(v []*AwsEcsTaskDefinitionContainerDefinitionsSystemControlsDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.SystemControls = v + return s +} + +// SetUlimits sets the Ulimits field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetUlimits(v []*AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.Ulimits = v + return s +} + +// SetUser sets the User field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetUser(v string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.User = &v + return s +} + +// SetVolumesFrom sets the VolumesFrom field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetVolumesFrom(v []*AwsEcsTaskDefinitionContainerDefinitionsVolumesFromDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.VolumesFrom = v + return s +} + +// SetWorkingDirectory sets the WorkingDirectory field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetWorkingDirectory(v string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.WorkingDirectory = &v + return s +} + +// An environment variable to pass to the container. +type AwsEcsTaskDefinitionContainerDefinitionsEnvironmentDetails struct { + _ struct{} `type:"structure"` + + // The name of the environment variable. + Name *string `type:"string"` + + // The value of the environment variable. + Value *string `type:"string"` } // String returns the string representation. @@ -20382,7 +20604,7 @@ type AwsEfsAccessPointPosixUserDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEfsAccessPointPosixUserDetails) String() string { +func (s AwsEcsTaskDefinitionContainerDefinitionsEnvironmentDetails) String() string { return awsutil.Prettify(s) } @@ -20391,42 +20613,31 @@ func (s AwsEfsAccessPointPosixUserDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEfsAccessPointPosixUserDetails) GoString() string { +func (s AwsEcsTaskDefinitionContainerDefinitionsEnvironmentDetails) GoString() string { return s.String() } -// SetGid sets the Gid field's value. -func (s *AwsEfsAccessPointPosixUserDetails) SetGid(v string) *AwsEfsAccessPointPosixUserDetails { - s.Gid = &v - return s -} - -// SetSecondaryGids sets the SecondaryGids field's value. -func (s *AwsEfsAccessPointPosixUserDetails) SetSecondaryGids(v []*string) *AwsEfsAccessPointPosixUserDetails { - s.SecondaryGids = v +// SetName sets the Name field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsEnvironmentDetails) SetName(v string) *AwsEcsTaskDefinitionContainerDefinitionsEnvironmentDetails { + s.Name = &v return s } -// SetUid sets the Uid field's value. -func (s *AwsEfsAccessPointPosixUserDetails) SetUid(v string) *AwsEfsAccessPointPosixUserDetails { - s.Uid = &v +// SetValue sets the Value field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsEnvironmentDetails) SetValue(v string) *AwsEcsTaskDefinitionContainerDefinitionsEnvironmentDetails { + s.Value = &v return s } -// Provides information about the settings that Amazon EFS uses to create the -// root directory when a client connects to an access point. -type AwsEfsAccessPointRootDirectoryCreationInfoDetails struct { +// A file that contain environment variables to pass to a container. +type AwsEcsTaskDefinitionContainerDefinitionsEnvironmentFilesDetails struct { _ struct{} `type:"structure"` - // Specifies the POSIX group ID to apply to the root directory. - OwnerGid *string `type:"string"` - - // Specifies the POSIX user ID to apply to the root directory. - OwnerUid *string `type:"string"` + // The type of environment file. The valid value is s3. + Type *string `type:"string"` - // Specifies the POSIX permissions to apply to the root directory, in the format - // of an octal number representing the file's mode bits. - Permissions *string `type:"string"` + // The ARN of the S3 object that contains the environment variable file. + Value *string `type:"string"` } // String returns the string representation. @@ -20434,7 +20645,7 @@ type AwsEfsAccessPointRootDirectoryCreationInfoDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEfsAccessPointRootDirectoryCreationInfoDetails) String() string { +func (s AwsEcsTaskDefinitionContainerDefinitionsEnvironmentFilesDetails) String() string { return awsutil.Prettify(s) } @@ -20443,43 +20654,32 @@ func (s AwsEfsAccessPointRootDirectoryCreationInfoDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEfsAccessPointRootDirectoryCreationInfoDetails) GoString() string { +func (s AwsEcsTaskDefinitionContainerDefinitionsEnvironmentFilesDetails) GoString() string { return s.String() } -// SetOwnerGid sets the OwnerGid field's value. -func (s *AwsEfsAccessPointRootDirectoryCreationInfoDetails) SetOwnerGid(v string) *AwsEfsAccessPointRootDirectoryCreationInfoDetails { - s.OwnerGid = &v - return s -} - -// SetOwnerUid sets the OwnerUid field's value. -func (s *AwsEfsAccessPointRootDirectoryCreationInfoDetails) SetOwnerUid(v string) *AwsEfsAccessPointRootDirectoryCreationInfoDetails { - s.OwnerUid = &v +// SetType sets the Type field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsEnvironmentFilesDetails) SetType(v string) *AwsEcsTaskDefinitionContainerDefinitionsEnvironmentFilesDetails { + s.Type = &v return s } -// SetPermissions sets the Permissions field's value. -func (s *AwsEfsAccessPointRootDirectoryCreationInfoDetails) SetPermissions(v string) *AwsEfsAccessPointRootDirectoryCreationInfoDetails { - s.Permissions = &v +// SetValue sets the Value field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsEnvironmentFilesDetails) SetValue(v string) *AwsEcsTaskDefinitionContainerDefinitionsEnvironmentFilesDetails { + s.Value = &v return s } -// Provides information about the directory on the Amazon EFS file system that -// the access point exposes as the root directory to NFS clients using the access -// point. -type AwsEfsAccessPointRootDirectoryDetails struct { +// A hostname and IP address mapping to append to the /etc/hosts file on the +// container. +type AwsEcsTaskDefinitionContainerDefinitionsExtraHostsDetails struct { _ struct{} `type:"structure"` - // Specifies the POSIX IDs and permissions to apply to the access point's root - // directory. - CreationInfo *AwsEfsAccessPointRootDirectoryCreationInfoDetails `type:"structure"` + // The hostname to use in the /etc/hosts entry. + Hostname *string `type:"string"` - // Specifies the path on the Amazon EFS file system to expose as the root directory - // to NFS clients using the access point to access the EFS file system. A path - // can have up to four subdirectories. If the specified path does not exist, - // you are required to provide CreationInfo. - Path *string `type:"string"` + // The IP address to use in the /etc/hosts entry. + IpAddress *string `type:"string"` } // String returns the string representation. @@ -20487,7 +20687,7 @@ type AwsEfsAccessPointRootDirectoryDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEfsAccessPointRootDirectoryDetails) String() string { +func (s AwsEcsTaskDefinitionContainerDefinitionsExtraHostsDetails) String() string { return awsutil.Prettify(s) } @@ -20496,65 +20696,40 @@ func (s AwsEfsAccessPointRootDirectoryDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEfsAccessPointRootDirectoryDetails) GoString() string { +func (s AwsEcsTaskDefinitionContainerDefinitionsExtraHostsDetails) GoString() string { return s.String() } -// SetCreationInfo sets the CreationInfo field's value. -func (s *AwsEfsAccessPointRootDirectoryDetails) SetCreationInfo(v *AwsEfsAccessPointRootDirectoryCreationInfoDetails) *AwsEfsAccessPointRootDirectoryDetails { - s.CreationInfo = v +// SetHostname sets the Hostname field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsExtraHostsDetails) SetHostname(v string) *AwsEcsTaskDefinitionContainerDefinitionsExtraHostsDetails { + s.Hostname = &v return s } -// SetPath sets the Path field's value. -func (s *AwsEfsAccessPointRootDirectoryDetails) SetPath(v string) *AwsEfsAccessPointRootDirectoryDetails { - s.Path = &v +// SetIpAddress sets the IpAddress field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsExtraHostsDetails) SetIpAddress(v string) *AwsEcsTaskDefinitionContainerDefinitionsExtraHostsDetails { + s.IpAddress = &v return s } -// Provides details about an Amazon EKS cluster. -type AwsEksClusterDetails struct { +// The FireLens configuration for the container. The configuration specifies +// and configures a log router for container logs. +type AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetails struct { _ struct{} `type:"structure"` - // The ARN of the cluster. - Arn *string `type:"string"` - - // The certificate authority data for the cluster. - CertificateAuthorityData *string `type:"string"` - - // The status of the cluster. Valid values are as follows: - // - // * ACTIVE - // - // * CREATING + // The options to use to configure the log router. // - // * DELETING + // The valid option keys are as follows: // - // * FAILED + // * enable-ecs-log-metadata. The value can be true or false. // - // * PENDING + // * config-file-type. The value can be s3 or file. // - // * UPDATING - ClusterStatus *string `type:"string"` - - // The endpoint for the Amazon EKS API server. - Endpoint *string `type:"string"` - - // The logging configuration for the cluster. - Logging *AwsEksClusterLoggingDetails `type:"structure"` - - // The name of the cluster. - Name *string `type:"string"` - - // The VPC configuration used by the cluster control plane. - ResourcesVpcConfig *AwsEksClusterResourcesVpcConfigDetails `type:"structure"` - - // The ARN of the IAM role that provides permissions for the Amazon EKS control - // plane to make calls to Amazon Web Services API operations on your behalf. - RoleArn *string `type:"string"` + // * config-file-value. The value is either an S3 ARN or a file path. + Options map[string]*string `type:"map"` - // The Amazon EKS server version for the cluster. - Version *string `type:"string"` + // The log router to use. Valid values are fluentbit or fluentd. + Type *string `type:"string"` } // String returns the string representation. @@ -20562,7 +20737,7 @@ type AwsEksClusterDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEksClusterDetails) String() string { +func (s AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetails) String() string { return awsutil.Prettify(s) } @@ -20571,83 +20746,125 @@ func (s AwsEksClusterDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEksClusterDetails) GoString() string { +func (s AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetails) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *AwsEksClusterDetails) SetArn(v string) *AwsEksClusterDetails { - s.Arn = &v +// SetOptions sets the Options field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetails) SetOptions(v map[string]*string) *AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetails { + s.Options = v return s } -// SetCertificateAuthorityData sets the CertificateAuthorityData field's value. -func (s *AwsEksClusterDetails) SetCertificateAuthorityData(v string) *AwsEksClusterDetails { - s.CertificateAuthorityData = &v +// SetType sets the Type field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetails) SetType(v string) *AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetails { + s.Type = &v return s } -// SetClusterStatus sets the ClusterStatus field's value. -func (s *AwsEksClusterDetails) SetClusterStatus(v string) *AwsEksClusterDetails { - s.ClusterStatus = &v - return s +// The container health check command and associated configuration parameters +// for the container. +type AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails struct { + _ struct{} `type:"structure"` + + // The command that the container runs to determine whether it is healthy. + Command []*string `type:"list"` + + // The time period in seconds between each health check execution. The default + // value is 30 seconds. + Interval *int64 `type:"integer"` + + // The number of times to retry a failed health check before the container is + // considered unhealthy. The default value is 3. + Retries *int64 `type:"integer"` + + // The optional grace period in seconds that allows containers time to bootstrap + // before failed health checks count towards the maximum number of retries. + StartPeriod *int64 `type:"integer"` + + // The time period in seconds to wait for a health check to succeed before it + // is considered a failure. The default value is 5. + Timeout *int64 `type:"integer"` } -// SetEndpoint sets the Endpoint field's value. -func (s *AwsEksClusterDetails) SetEndpoint(v string) *AwsEksClusterDetails { - s.Endpoint = &v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails) String() string { + return awsutil.Prettify(s) } -// SetLogging sets the Logging field's value. -func (s *AwsEksClusterDetails) SetLogging(v *AwsEksClusterLoggingDetails) *AwsEksClusterDetails { - s.Logging = v +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails) GoString() string { + return s.String() +} + +// SetCommand sets the Command field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails) SetCommand(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails { + s.Command = v return s } -// SetName sets the Name field's value. -func (s *AwsEksClusterDetails) SetName(v string) *AwsEksClusterDetails { - s.Name = &v +// SetInterval sets the Interval field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails) SetInterval(v int64) *AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails { + s.Interval = &v return s } -// SetResourcesVpcConfig sets the ResourcesVpcConfig field's value. -func (s *AwsEksClusterDetails) SetResourcesVpcConfig(v *AwsEksClusterResourcesVpcConfigDetails) *AwsEksClusterDetails { - s.ResourcesVpcConfig = v +// SetRetries sets the Retries field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails) SetRetries(v int64) *AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails { + s.Retries = &v return s } -// SetRoleArn sets the RoleArn field's value. -func (s *AwsEksClusterDetails) SetRoleArn(v string) *AwsEksClusterDetails { - s.RoleArn = &v +// SetStartPeriod sets the StartPeriod field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails) SetStartPeriod(v int64) *AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails { + s.StartPeriod = &v return s } -// SetVersion sets the Version field's value. -func (s *AwsEksClusterDetails) SetVersion(v string) *AwsEksClusterDetails { - s.Version = &v +// SetTimeout sets the Timeout field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails) SetTimeout(v int64) *AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails { + s.Timeout = &v return s } -// Details for a cluster logging configuration. -type AwsEksClusterLoggingClusterLoggingDetails struct { +// The Linux capabilities for the container that are added to or dropped from +// the default configuration provided by Docker. +type AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersCapabilitiesDetails struct { _ struct{} `type:"structure"` - // Whether the logging types that are listed in Types are enabled. - Enabled *bool `type:"boolean"` - - // A list of logging types. Valid values are as follows: - // - // * api - // - // * audit - // - // * authenticator + // The Linux capabilities for the container that are added to the default configuration + // provided by Docker. Valid values are as follows: // - // * controllerManager + // Valid values: "ALL" | "AUDIT_CONTROL" |"AUDIT_WRITE" | "BLOCK_SUSPEND" | + // "CHOWN" | "DAC_OVERRIDE" | "DAC_READ_SEARCH" | "FOWNER" | "FSETID" | "IPC_LOCK" + // | "IPC_OWNER" | "KILL" | "LEASE" | "LINUX_IMMUTABLE" | "MAC_ADMIN" |"MAC_OVERRIDE" + // | "MKNOD" | "NET_ADMIN" | "NET_BIND_SERVICE" | "NET_BROADCAST" | "NET_RAW" + // | "SETFCAP" | "SETGID" | "SETPCAP" | "SETUID" | "SYS_ADMIN" | "SYS_BOOT" + // | "SYS_CHROOT" | "SYS_MODULE" | "SYS_NICE" | "SYS_PACCT" | "SYS_PTRACE" | + // "SYS_RAWIO" | "SYS_RESOURCE" | "SYS_TIME" | "SYS_TTY_CONFIG" | "SYSLOG" | + // "WAKE_ALARM" + Add []*string `type:"list"` + + // The Linux capabilities for the container that are dropped from the default + // configuration provided by Docker. // - // * scheduler - Types []*string `type:"list"` + // Valid values: "ALL" | "AUDIT_CONTROL" |"AUDIT_WRITE" | "BLOCK_SUSPEND" | + // "CHOWN" | "DAC_OVERRIDE" | "DAC_READ_SEARCH" | "FOWNER" | "FSETID" | "IPC_LOCK" + // | "IPC_OWNER" | "KILL" | "LEASE" | "LINUX_IMMUTABLE" | "MAC_ADMIN" |"MAC_OVERRIDE" + // | "MKNOD" | "NET_ADMIN" | "NET_BIND_SERVICE" | "NET_BROADCAST" | "NET_RAW" + // | "SETFCAP" | "SETGID" | "SETPCAP" | "SETUID" | "SYS_ADMIN" | "SYS_BOOT" + // | "SYS_CHROOT" | "SYS_MODULE" | "SYS_NICE" | "SYS_PACCT" | "SYS_PTRACE" | + // "SYS_RAWIO" | "SYS_RESOURCE" | "SYS_TIME" | "SYS_TTY_CONFIG" | "SYSLOG" | + // "WAKE_ALARM" + Drop []*string `type:"list"` } // String returns the string representation. @@ -20655,7 +20872,7 @@ type AwsEksClusterLoggingClusterLoggingDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEksClusterLoggingClusterLoggingDetails) String() string { +func (s AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersCapabilitiesDetails) String() string { return awsutil.Prettify(s) } @@ -20664,28 +20881,51 @@ func (s AwsEksClusterLoggingClusterLoggingDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEksClusterLoggingClusterLoggingDetails) GoString() string { +func (s AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersCapabilitiesDetails) GoString() string { return s.String() } -// SetEnabled sets the Enabled field's value. -func (s *AwsEksClusterLoggingClusterLoggingDetails) SetEnabled(v bool) *AwsEksClusterLoggingClusterLoggingDetails { - s.Enabled = &v +// SetAdd sets the Add field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersCapabilitiesDetails) SetAdd(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersCapabilitiesDetails { + s.Add = v return s } -// SetTypes sets the Types field's value. -func (s *AwsEksClusterLoggingClusterLoggingDetails) SetTypes(v []*string) *AwsEksClusterLoggingClusterLoggingDetails { - s.Types = v +// SetDrop sets the Drop field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersCapabilitiesDetails) SetDrop(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersCapabilitiesDetails { + s.Drop = v return s } -// The logging configuration for an Amazon EKS cluster. -type AwsEksClusterLoggingDetails struct { +// >Linux-specific modifications that are applied to the container, such as +// Linux kernel capabilities. +type AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails struct { _ struct{} `type:"structure"` - // Cluster logging configurations. - ClusterLogging []*AwsEksClusterLoggingClusterLoggingDetails `type:"list"` + // The Linux capabilities for the container that are added to or dropped from + // the default configuration provided by Docker. + Capabilities *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersCapabilitiesDetails `type:"structure"` + + // The host devices to expose to the container. + Devices []*AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetails `type:"list"` + + // Whether to run an init process inside the container that forwards signals + // and reaps processes. + InitProcessEnabled *bool `type:"boolean"` + + // The total amount of swap memory (in MiB) that a container can use. + MaxSwap *int64 `type:"integer"` + + // The value for the size (in MiB) of the /dev/shm volume. + SharedMemorySize *int64 `type:"integer"` + + // Configures the container's memory swappiness behavior. Determines how aggressively + // pages are swapped. The higher the value, the more aggressive the swappiness. + // The default is 60. + Swappiness *int64 `type:"integer"` + + // The container path, mount options, and size (in MiB) of the tmpfs mount. + Tmpfs []*AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetails `type:"list"` } // String returns the string representation. @@ -20693,7 +20933,7 @@ type AwsEksClusterLoggingDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEksClusterLoggingDetails) String() string { +func (s AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails) String() string { return awsutil.Prettify(s) } @@ -20702,27 +20942,65 @@ func (s AwsEksClusterLoggingDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEksClusterLoggingDetails) GoString() string { +func (s AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails) GoString() string { return s.String() } -// SetClusterLogging sets the ClusterLogging field's value. -func (s *AwsEksClusterLoggingDetails) SetClusterLogging(v []*AwsEksClusterLoggingClusterLoggingDetails) *AwsEksClusterLoggingDetails { - s.ClusterLogging = v +// SetCapabilities sets the Capabilities field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails) SetCapabilities(v *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersCapabilitiesDetails) *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails { + s.Capabilities = v return s } -// Information about the VPC configuration used by the cluster control plane. -type AwsEksClusterResourcesVpcConfigDetails struct { +// SetDevices sets the Devices field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails) SetDevices(v []*AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetails) *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails { + s.Devices = v + return s +} + +// SetInitProcessEnabled sets the InitProcessEnabled field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails) SetInitProcessEnabled(v bool) *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails { + s.InitProcessEnabled = &v + return s +} + +// SetMaxSwap sets the MaxSwap field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails) SetMaxSwap(v int64) *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails { + s.MaxSwap = &v + return s +} + +// SetSharedMemorySize sets the SharedMemorySize field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails) SetSharedMemorySize(v int64) *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails { + s.SharedMemorySize = &v + return s +} + +// SetSwappiness sets the Swappiness field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails) SetSwappiness(v int64) *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails { + s.Swappiness = &v + return s +} + +// SetTmpfs sets the Tmpfs field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails) SetTmpfs(v []*AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetails) *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails { + s.Tmpfs = v + return s +} + +// A host device to expose to the container. +type AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetails struct { _ struct{} `type:"structure"` - // The security groups that are associated with the cross-account elastic network - // interfaces that are used to allow communication between your nodes and the - // Amazon EKS control plane. - SecurityGroupIds []*string `type:"list"` + // The path inside the container at which to expose the host device. + ContainerPath *string `type:"string"` - // The subnets that are associated with the cluster. - SubnetIds []*string `type:"list"` + // The path for the device on the host container instance. + HostPath *string `type:"string"` + + // The explicit permissions to provide to the container for the device. By default, + // the container has permissions for read, write, and mknod for the device. + Permissions []*string `type:"list"` } // String returns the string representation. @@ -20730,7 +21008,7 @@ type AwsEksClusterResourcesVpcConfigDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEksClusterResourcesVpcConfigDetails) String() string { +func (s AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetails) String() string { return awsutil.Prettify(s) } @@ -20739,90 +21017,126 @@ func (s AwsEksClusterResourcesVpcConfigDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsEksClusterResourcesVpcConfigDetails) GoString() string { +func (s AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetails) GoString() string { return s.String() } -// SetSecurityGroupIds sets the SecurityGroupIds field's value. -func (s *AwsEksClusterResourcesVpcConfigDetails) SetSecurityGroupIds(v []*string) *AwsEksClusterResourcesVpcConfigDetails { - s.SecurityGroupIds = v +// SetContainerPath sets the ContainerPath field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetails) SetContainerPath(v string) *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetails { + s.ContainerPath = &v return s } -// SetSubnetIds sets the SubnetIds field's value. -func (s *AwsEksClusterResourcesVpcConfigDetails) SetSubnetIds(v []*string) *AwsEksClusterResourcesVpcConfigDetails { - s.SubnetIds = v +// SetHostPath sets the HostPath field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetails) SetHostPath(v string) *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetails { + s.HostPath = &v return s } -// Contains details about an Elastic Beanstalk environment. -type AwsElasticBeanstalkEnvironmentDetails struct { +// SetPermissions sets the Permissions field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetails) SetPermissions(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetails { + s.Permissions = v + return s +} + +// The container path, mount options, and size (in MiB) of a tmpfs mount. +type AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetails struct { _ struct{} `type:"structure"` - // The name of the application that is associated with the environment. - ApplicationName *string `type:"string"` + // The absolute file path where the tmpfs volume is to be mounted. + ContainerPath *string `type:"string"` - // The URL to the CNAME for this environment. - Cname *string `type:"string"` + // The list of tmpfs volume mount options. + // + // Valid values: "defaults" | "ro" | "rw" | "suid" | "nosuid" | "dev" | "nodev" + // |"exec" | "noexec" | "sync" | "async" | "dirsync" | "remount" | "mand" | + // "nomand" | "atime" | "noatime" | "diratime" | "nodiratime" | "bind" | "rbind" + // | "unbindable" | "runbindable" | "private" | "rprivate" | "shared" | "rshared" + // | "slave" | "rslave" | "relatime" | "norelatime" | "strictatime" | "nostrictatime" + // |"mode" | "uid" | "gid" | "nr_inodes" |"nr_blocks" | "mpol" + MountOptions []*string `type:"list"` - // The creation date for this environment. - DateCreated *string `type:"string"` - - // The date when this environment was last modified. - DateUpdated *string `type:"string"` - - // A description of the environment. - Description *string `type:"string"` - - // For load-balanced, autoscaling environments, the URL to the load balancer. - // For single-instance environments, the IP address of the instance. - EndpointUrl *string `type:"string"` - - // The ARN of the environment. - EnvironmentArn *string `type:"string"` + // The maximum size (in MiB) of the tmpfs volume. + Size *int64 `type:"integer"` +} - // The identifier of the environment. - EnvironmentId *string `type:"string"` +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetails) String() string { + return awsutil.Prettify(s) +} - // Links to other environments in the same group. - EnvironmentLinks []*AwsElasticBeanstalkEnvironmentEnvironmentLink `type:"list"` +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetails) GoString() string { + return s.String() +} - // The name of the environment. - EnvironmentName *string `type:"string"` +// SetContainerPath sets the ContainerPath field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetails) SetContainerPath(v string) *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetails { + s.ContainerPath = &v + return s +} - // The configuration setting for the environment. - OptionSettings []*AwsElasticBeanstalkEnvironmentOptionSetting `type:"list"` +// SetMountOptions sets the MountOptions field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetails) SetMountOptions(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetails { + s.MountOptions = v + return s +} - // The ARN of the platform version for the environment. - PlatformArn *string `type:"string"` +// SetSize sets the Size field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetails) SetSize(v int64) *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetails { + s.Size = &v + return s +} - // The name of the solution stack that is deployed with the environment. - SolutionStackName *string `type:"string"` +// The log configuration specification for the container. +type AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetails struct { + _ struct{} `type:"structure"` - // The current operational status of the environment. Valid values are as follows: + // The log driver to use for the container. // - // * Aborting + // Valid values on Fargate are as follows: // - // * Launching + // * awsfirelens // - // * LinkingFrom + // * awslogs // - // * LinkingTo + // * splunk // - // * Ready + // Valid values on Amazon EC2 are as follows: // - // * Terminated + // * awsfirelens // - // * Terminating + // * awslogs // - // * Updating - Status *string `type:"string"` + // * fluentd + // + // * gelf + // + // * journald + // + // * json-file + // + // * logentries + // + // * splunk + // + // * syslog + LogDriver *string `type:"string"` - // The tier of the environment. - Tier *AwsElasticBeanstalkEnvironmentTier `type:"structure"` + // The configuration options to send to the log driver. Requires version 1.19 + // of the Docker Remote API or greater on your container instance. + Options map[string]*string `type:"map"` - // The application version of the environment. - VersionLabel *string `type:"string"` + // The secrets to pass to the log configuration. + SecretOptions []*AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationSecretOptionsDetails `type:"list"` } // String returns the string representation. @@ -20830,7 +21144,7 @@ type AwsElasticBeanstalkEnvironmentDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElasticBeanstalkEnvironmentDetails) String() string { +func (s AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetails) String() string { return awsutil.Prettify(s) } @@ -20839,116 +21153,136 @@ func (s AwsElasticBeanstalkEnvironmentDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElasticBeanstalkEnvironmentDetails) GoString() string { +func (s AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetails) GoString() string { return s.String() } -// SetApplicationName sets the ApplicationName field's value. -func (s *AwsElasticBeanstalkEnvironmentDetails) SetApplicationName(v string) *AwsElasticBeanstalkEnvironmentDetails { - s.ApplicationName = &v +// SetLogDriver sets the LogDriver field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetails) SetLogDriver(v string) *AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetails { + s.LogDriver = &v return s } -// SetCname sets the Cname field's value. -func (s *AwsElasticBeanstalkEnvironmentDetails) SetCname(v string) *AwsElasticBeanstalkEnvironmentDetails { - s.Cname = &v +// SetOptions sets the Options field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetails) SetOptions(v map[string]*string) *AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetails { + s.Options = v return s } -// SetDateCreated sets the DateCreated field's value. -func (s *AwsElasticBeanstalkEnvironmentDetails) SetDateCreated(v string) *AwsElasticBeanstalkEnvironmentDetails { - s.DateCreated = &v +// SetSecretOptions sets the SecretOptions field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetails) SetSecretOptions(v []*AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationSecretOptionsDetails) *AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetails { + s.SecretOptions = v return s } -// SetDateUpdated sets the DateUpdated field's value. -func (s *AwsElasticBeanstalkEnvironmentDetails) SetDateUpdated(v string) *AwsElasticBeanstalkEnvironmentDetails { - s.DateUpdated = &v - return s -} +// A secret to pass to the log configuration. +type AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationSecretOptionsDetails struct { + _ struct{} `type:"structure"` -// SetDescription sets the Description field's value. -func (s *AwsElasticBeanstalkEnvironmentDetails) SetDescription(v string) *AwsElasticBeanstalkEnvironmentDetails { - s.Description = &v - return s -} + // The name of the secret. + Name *string `type:"string"` -// SetEndpointUrl sets the EndpointUrl field's value. -func (s *AwsElasticBeanstalkEnvironmentDetails) SetEndpointUrl(v string) *AwsElasticBeanstalkEnvironmentDetails { - s.EndpointUrl = &v - return s + // The secret to expose to the container. + // + // The value is either the full ARN of the Secrets Manager secret or the full + // ARN of the parameter in the Systems Manager Parameter Store. + ValueFrom *string `type:"string"` } -// SetEnvironmentArn sets the EnvironmentArn field's value. -func (s *AwsElasticBeanstalkEnvironmentDetails) SetEnvironmentArn(v string) *AwsElasticBeanstalkEnvironmentDetails { - s.EnvironmentArn = &v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationSecretOptionsDetails) String() string { + return awsutil.Prettify(s) } -// SetEnvironmentId sets the EnvironmentId field's value. -func (s *AwsElasticBeanstalkEnvironmentDetails) SetEnvironmentId(v string) *AwsElasticBeanstalkEnvironmentDetails { - s.EnvironmentId = &v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationSecretOptionsDetails) GoString() string { + return s.String() } -// SetEnvironmentLinks sets the EnvironmentLinks field's value. -func (s *AwsElasticBeanstalkEnvironmentDetails) SetEnvironmentLinks(v []*AwsElasticBeanstalkEnvironmentEnvironmentLink) *AwsElasticBeanstalkEnvironmentDetails { - s.EnvironmentLinks = v +// SetName sets the Name field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationSecretOptionsDetails) SetName(v string) *AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationSecretOptionsDetails { + s.Name = &v return s } -// SetEnvironmentName sets the EnvironmentName field's value. -func (s *AwsElasticBeanstalkEnvironmentDetails) SetEnvironmentName(v string) *AwsElasticBeanstalkEnvironmentDetails { - s.EnvironmentName = &v +// SetValueFrom sets the ValueFrom field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationSecretOptionsDetails) SetValueFrom(v string) *AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationSecretOptionsDetails { + s.ValueFrom = &v return s } -// SetOptionSettings sets the OptionSettings field's value. -func (s *AwsElasticBeanstalkEnvironmentDetails) SetOptionSettings(v []*AwsElasticBeanstalkEnvironmentOptionSetting) *AwsElasticBeanstalkEnvironmentDetails { - s.OptionSettings = v - return s +// A mount point for the data volumes in the container. +type AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetails struct { + _ struct{} `type:"structure"` + + // The path on the container to mount the host volume at. + ContainerPath *string `type:"string"` + + // Whether the container has read-only access to the volume. + ReadOnly *bool `type:"boolean"` + + // The name of the volume to mount. Must match the name of a volume listed in + // VolumeDetails for the task definition. + SourceVolume *string `type:"string"` } -// SetPlatformArn sets the PlatformArn field's value. -func (s *AwsElasticBeanstalkEnvironmentDetails) SetPlatformArn(v string) *AwsElasticBeanstalkEnvironmentDetails { - s.PlatformArn = &v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetails) String() string { + return awsutil.Prettify(s) } -// SetSolutionStackName sets the SolutionStackName field's value. -func (s *AwsElasticBeanstalkEnvironmentDetails) SetSolutionStackName(v string) *AwsElasticBeanstalkEnvironmentDetails { - s.SolutionStackName = &v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetails) GoString() string { + return s.String() } -// SetStatus sets the Status field's value. -func (s *AwsElasticBeanstalkEnvironmentDetails) SetStatus(v string) *AwsElasticBeanstalkEnvironmentDetails { - s.Status = &v +// SetContainerPath sets the ContainerPath field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetails) SetContainerPath(v string) *AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetails { + s.ContainerPath = &v return s } -// SetTier sets the Tier field's value. -func (s *AwsElasticBeanstalkEnvironmentDetails) SetTier(v *AwsElasticBeanstalkEnvironmentTier) *AwsElasticBeanstalkEnvironmentDetails { - s.Tier = v +// SetReadOnly sets the ReadOnly field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetails) SetReadOnly(v bool) *AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetails { + s.ReadOnly = &v return s } -// SetVersionLabel sets the VersionLabel field's value. -func (s *AwsElasticBeanstalkEnvironmentDetails) SetVersionLabel(v string) *AwsElasticBeanstalkEnvironmentDetails { - s.VersionLabel = &v +// SetSourceVolume sets the SourceVolume field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetails) SetSourceVolume(v string) *AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetails { + s.SourceVolume = &v return s } -// Contains information about a link to another environment that is in the same -// group. -type AwsElasticBeanstalkEnvironmentEnvironmentLink struct { +// A port mapping for the container. +type AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetails struct { _ struct{} `type:"structure"` - // The name of the linked environment. - EnvironmentName *string `type:"string"` + // The port number on the container that is bound to the user-specified or automatically + // assigned host port. + ContainerPort *int64 `type:"integer"` - // The name of the environment link. - LinkName *string `type:"string"` + // The port number on the container instance to reserve for the container. + HostPort *int64 `type:"integer"` + + // The protocol used for the port mapping. The default is tcp. + Protocol *string `type:"string"` } // String returns the string representation. @@ -20956,7 +21290,7 @@ type AwsElasticBeanstalkEnvironmentEnvironmentLink struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElasticBeanstalkEnvironmentEnvironmentLink) String() string { +func (s AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetails) String() string { return awsutil.Prettify(s) } @@ -20965,37 +21299,34 @@ func (s AwsElasticBeanstalkEnvironmentEnvironmentLink) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElasticBeanstalkEnvironmentEnvironmentLink) GoString() string { +func (s AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetails) GoString() string { return s.String() } -// SetEnvironmentName sets the EnvironmentName field's value. -func (s *AwsElasticBeanstalkEnvironmentEnvironmentLink) SetEnvironmentName(v string) *AwsElasticBeanstalkEnvironmentEnvironmentLink { - s.EnvironmentName = &v +// SetContainerPort sets the ContainerPort field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetails) SetContainerPort(v int64) *AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetails { + s.ContainerPort = &v return s } -// SetLinkName sets the LinkName field's value. -func (s *AwsElasticBeanstalkEnvironmentEnvironmentLink) SetLinkName(v string) *AwsElasticBeanstalkEnvironmentEnvironmentLink { - s.LinkName = &v +// SetHostPort sets the HostPort field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetails) SetHostPort(v int64) *AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetails { + s.HostPort = &v return s } -// A configuration option setting for the environment. -type AwsElasticBeanstalkEnvironmentOptionSetting struct { - _ struct{} `type:"structure"` - - // The type of resource that the configuration option is associated with. - Namespace *string `type:"string"` - - // The name of the option. - OptionName *string `type:"string"` +// SetProtocol sets the Protocol field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetails) SetProtocol(v string) *AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetails { + s.Protocol = &v + return s +} - // The name of the resource. - ResourceName *string `type:"string"` +// The private repository authentication credentials to use. +type AwsEcsTaskDefinitionContainerDefinitionsRepositoryCredentialsDetails struct { + _ struct{} `type:"structure"` - // The value of the configuration setting. - Value *string `type:"string"` + // The ARN of the secret that contains the private repository credentials. + CredentialsParameter *string `type:"string"` } // String returns the string representation. @@ -21003,7 +21334,7 @@ type AwsElasticBeanstalkEnvironmentOptionSetting struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElasticBeanstalkEnvironmentOptionSetting) String() string { +func (s AwsEcsTaskDefinitionContainerDefinitionsRepositoryCredentialsDetails) String() string { return awsutil.Prettify(s) } @@ -21012,46 +21343,31 @@ func (s AwsElasticBeanstalkEnvironmentOptionSetting) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElasticBeanstalkEnvironmentOptionSetting) GoString() string { +func (s AwsEcsTaskDefinitionContainerDefinitionsRepositoryCredentialsDetails) GoString() string { return s.String() } -// SetNamespace sets the Namespace field's value. -func (s *AwsElasticBeanstalkEnvironmentOptionSetting) SetNamespace(v string) *AwsElasticBeanstalkEnvironmentOptionSetting { - s.Namespace = &v - return s -} - -// SetOptionName sets the OptionName field's value. -func (s *AwsElasticBeanstalkEnvironmentOptionSetting) SetOptionName(v string) *AwsElasticBeanstalkEnvironmentOptionSetting { - s.OptionName = &v - return s -} - -// SetResourceName sets the ResourceName field's value. -func (s *AwsElasticBeanstalkEnvironmentOptionSetting) SetResourceName(v string) *AwsElasticBeanstalkEnvironmentOptionSetting { - s.ResourceName = &v - return s -} - -// SetValue sets the Value field's value. -func (s *AwsElasticBeanstalkEnvironmentOptionSetting) SetValue(v string) *AwsElasticBeanstalkEnvironmentOptionSetting { - s.Value = &v +// SetCredentialsParameter sets the CredentialsParameter field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsRepositoryCredentialsDetails) SetCredentialsParameter(v string) *AwsEcsTaskDefinitionContainerDefinitionsRepositoryCredentialsDetails { + s.CredentialsParameter = &v return s } -// Contains information about the tier of the environment. -type AwsElasticBeanstalkEnvironmentTier struct { +// A resource to assign to a container. +type AwsEcsTaskDefinitionContainerDefinitionsResourceRequirementsDetails struct { _ struct{} `type:"structure"` - // The name of the environment tier. Valid values are WebServer or Worker. - Name *string `type:"string"` - - // The type of environment tier. Valid values are Standard or SQS/HTTP. + // The type of resource to assign to a container. Valid values are GPU or InferenceAccelerator. Type *string `type:"string"` - // The version of the environment tier. - Version *string `type:"string"` + // The value for the specified resource type. + // + // For GPU, the value is the number of physical GPUs the Amazon ECS container + // agent reserves for the container. + // + // For InferenceAccelerator, the value should match the DeviceName attribute + // of an entry in InferenceAccelerators. + Value *string `type:"string"` } // String returns the string representation. @@ -21059,7 +21375,7 @@ type AwsElasticBeanstalkEnvironmentTier struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElasticBeanstalkEnvironmentTier) String() string { +func (s AwsEcsTaskDefinitionContainerDefinitionsResourceRequirementsDetails) String() string { return awsutil.Prettify(s) } @@ -21068,82 +21384,33 @@ func (s AwsElasticBeanstalkEnvironmentTier) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElasticBeanstalkEnvironmentTier) GoString() string { +func (s AwsEcsTaskDefinitionContainerDefinitionsResourceRequirementsDetails) GoString() string { return s.String() } -// SetName sets the Name field's value. -func (s *AwsElasticBeanstalkEnvironmentTier) SetName(v string) *AwsElasticBeanstalkEnvironmentTier { - s.Name = &v - return s -} - // SetType sets the Type field's value. -func (s *AwsElasticBeanstalkEnvironmentTier) SetType(v string) *AwsElasticBeanstalkEnvironmentTier { +func (s *AwsEcsTaskDefinitionContainerDefinitionsResourceRequirementsDetails) SetType(v string) *AwsEcsTaskDefinitionContainerDefinitionsResourceRequirementsDetails { s.Type = &v return s } -// SetVersion sets the Version field's value. -func (s *AwsElasticBeanstalkEnvironmentTier) SetVersion(v string) *AwsElasticBeanstalkEnvironmentTier { - s.Version = &v +// SetValue sets the Value field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsResourceRequirementsDetails) SetValue(v string) *AwsEcsTaskDefinitionContainerDefinitionsResourceRequirementsDetails { + s.Value = &v return s } -// Information about an Elasticsearch domain. -type AwsElasticsearchDomainDetails struct { +// A secret to pass to the container. +type AwsEcsTaskDefinitionContainerDefinitionsSecretsDetails struct { _ struct{} `type:"structure"` - // IAM policy document specifying the access policies for the new Elasticsearch - // domain. - AccessPolicies *string `type:"string"` - - // Additional options for the domain endpoint. - DomainEndpointOptions *AwsElasticsearchDomainDomainEndpointOptions `type:"structure"` - - // Unique identifier for an Elasticsearch domain. - DomainId *string `type:"string"` - - // Name of an Elasticsearch domain. - // - // Domain names are unique across all domains owned by the same account within - // an Amazon Web Services Region. - // - // Domain names must start with a lowercase letter and must be between 3 and - // 28 characters. - // - // Valid characters are a-z (lowercase only), 0-9, and – (hyphen). - DomainName *string `type:"string"` - - // Information about an OpenSearch cluster configuration. - ElasticsearchClusterConfig *AwsElasticsearchDomainElasticsearchClusterConfigDetails `type:"structure"` - - // OpenSearch version. - ElasticsearchVersion *string `type:"string"` - - // Details about the configuration for encryption at rest. - EncryptionAtRestOptions *AwsElasticsearchDomainEncryptionAtRestOptions `type:"structure"` - - // Domain-specific endpoint used to submit index, search, and data upload requests - // to an Elasticsearch domain. - // - // The endpoint is a service URL. - Endpoint *string `type:"string"` - - // The key-value pair that exists if the Elasticsearch domain uses VPC endpoints. - Endpoints map[string]*string `type:"map"` - - // Configures the CloudWatch Logs to publish for the Elasticsearch domain. - LogPublishingOptions *AwsElasticsearchDomainLogPublishingOptions `type:"structure"` - - // Details about the configuration for node-to-node encryption. - NodeToNodeEncryptionOptions *AwsElasticsearchDomainNodeToNodeEncryptionOptions `type:"structure"` - - // Information about the status of a domain relative to the latest service software. - ServiceSoftwareOptions *AwsElasticsearchDomainServiceSoftwareOptions `type:"structure"` + // The name of the secret. + Name *string `type:"string"` - // Information that OpenSearch derives based on VPCOptions for the domain. - VPCOptions *AwsElasticsearchDomainVPCOptions `type:"structure"` + // The secret to expose to the container. The value is either the full ARN of + // the Secrets Manager secret or the full ARN of the parameter in the Systems + // Manager Parameter Store. + ValueFrom *string `type:"string"` } // String returns the string representation. @@ -21151,7 +21418,7 @@ type AwsElasticsearchDomainDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElasticsearchDomainDetails) String() string { +func (s AwsEcsTaskDefinitionContainerDefinitionsSecretsDetails) String() string { return awsutil.Prettify(s) } @@ -21160,105 +21427,153 @@ func (s AwsElasticsearchDomainDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElasticsearchDomainDetails) GoString() string { +func (s AwsEcsTaskDefinitionContainerDefinitionsSecretsDetails) GoString() string { return s.String() } -// SetAccessPolicies sets the AccessPolicies field's value. -func (s *AwsElasticsearchDomainDetails) SetAccessPolicies(v string) *AwsElasticsearchDomainDetails { - s.AccessPolicies = &v +// SetName sets the Name field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsSecretsDetails) SetName(v string) *AwsEcsTaskDefinitionContainerDefinitionsSecretsDetails { + s.Name = &v return s } -// SetDomainEndpointOptions sets the DomainEndpointOptions field's value. -func (s *AwsElasticsearchDomainDetails) SetDomainEndpointOptions(v *AwsElasticsearchDomainDomainEndpointOptions) *AwsElasticsearchDomainDetails { - s.DomainEndpointOptions = v +// SetValueFrom sets the ValueFrom field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsSecretsDetails) SetValueFrom(v string) *AwsEcsTaskDefinitionContainerDefinitionsSecretsDetails { + s.ValueFrom = &v return s } -// SetDomainId sets the DomainId field's value. -func (s *AwsElasticsearchDomainDetails) SetDomainId(v string) *AwsElasticsearchDomainDetails { - s.DomainId = &v - return s -} +// A namespaced kernel parameter to set in the container. +type AwsEcsTaskDefinitionContainerDefinitionsSystemControlsDetails struct { + _ struct{} `type:"structure"` -// SetDomainName sets the DomainName field's value. -func (s *AwsElasticsearchDomainDetails) SetDomainName(v string) *AwsElasticsearchDomainDetails { - s.DomainName = &v - return s -} + // The namespaced kernel parameter for which to set a value. + Namespace *string `type:"string"` -// SetElasticsearchClusterConfig sets the ElasticsearchClusterConfig field's value. -func (s *AwsElasticsearchDomainDetails) SetElasticsearchClusterConfig(v *AwsElasticsearchDomainElasticsearchClusterConfigDetails) *AwsElasticsearchDomainDetails { - s.ElasticsearchClusterConfig = v - return s + // The value of the parameter. + Value *string `type:"string"` } -// SetElasticsearchVersion sets the ElasticsearchVersion field's value. -func (s *AwsElasticsearchDomainDetails) SetElasticsearchVersion(v string) *AwsElasticsearchDomainDetails { - s.ElasticsearchVersion = &v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEcsTaskDefinitionContainerDefinitionsSystemControlsDetails) String() string { + return awsutil.Prettify(s) } -// SetEncryptionAtRestOptions sets the EncryptionAtRestOptions field's value. -func (s *AwsElasticsearchDomainDetails) SetEncryptionAtRestOptions(v *AwsElasticsearchDomainEncryptionAtRestOptions) *AwsElasticsearchDomainDetails { - s.EncryptionAtRestOptions = v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEcsTaskDefinitionContainerDefinitionsSystemControlsDetails) GoString() string { + return s.String() } -// SetEndpoint sets the Endpoint field's value. -func (s *AwsElasticsearchDomainDetails) SetEndpoint(v string) *AwsElasticsearchDomainDetails { - s.Endpoint = &v +// SetNamespace sets the Namespace field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsSystemControlsDetails) SetNamespace(v string) *AwsEcsTaskDefinitionContainerDefinitionsSystemControlsDetails { + s.Namespace = &v return s } -// SetEndpoints sets the Endpoints field's value. -func (s *AwsElasticsearchDomainDetails) SetEndpoints(v map[string]*string) *AwsElasticsearchDomainDetails { - s.Endpoints = v +// SetValue sets the Value field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsSystemControlsDetails) SetValue(v string) *AwsEcsTaskDefinitionContainerDefinitionsSystemControlsDetails { + s.Value = &v return s } -// SetLogPublishingOptions sets the LogPublishingOptions field's value. -func (s *AwsElasticsearchDomainDetails) SetLogPublishingOptions(v *AwsElasticsearchDomainLogPublishingOptions) *AwsElasticsearchDomainDetails { - s.LogPublishingOptions = v - return s -} +// A ulimit to set in the container. +type AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetails struct { + _ struct{} `type:"structure"` -// SetNodeToNodeEncryptionOptions sets the NodeToNodeEncryptionOptions field's value. -func (s *AwsElasticsearchDomainDetails) SetNodeToNodeEncryptionOptions(v *AwsElasticsearchDomainNodeToNodeEncryptionOptions) *AwsElasticsearchDomainDetails { - s.NodeToNodeEncryptionOptions = v - return s -} + // The hard limit for the ulimit type. + HardLimit *int64 `type:"integer"` -// SetServiceSoftwareOptions sets the ServiceSoftwareOptions field's value. -func (s *AwsElasticsearchDomainDetails) SetServiceSoftwareOptions(v *AwsElasticsearchDomainServiceSoftwareOptions) *AwsElasticsearchDomainDetails { - s.ServiceSoftwareOptions = v - return s -} + // The type of the ulimit. Valid values are as follows: + // + // * core + // + // * cpu + // + // * data + // + // * fsize + // + // * locks + // + // * memlock + // + // * msgqueue + // + // * nice + // + // * nofile + // + // * nproc + // + // * rss + // + // * rtprio + // + // * rttime + // + // * sigpending + // + // * stack + Name *string `type:"string"` -// SetVPCOptions sets the VPCOptions field's value. -func (s *AwsElasticsearchDomainDetails) SetVPCOptions(v *AwsElasticsearchDomainVPCOptions) *AwsElasticsearchDomainDetails { - s.VPCOptions = v + // The soft limit for the ulimit type. + SoftLimit *int64 `type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetails) GoString() string { + return s.String() +} + +// SetHardLimit sets the HardLimit field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetails) SetHardLimit(v int64) *AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetails { + s.HardLimit = &v return s } -// Additional options for the domain endpoint, such as whether to require HTTPS -// for all traffic. -type AwsElasticsearchDomainDomainEndpointOptions struct { +// SetName sets the Name field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetails) SetName(v string) *AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetails { + s.Name = &v + return s +} + +// SetSoftLimit sets the SoftLimit field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetails) SetSoftLimit(v int64) *AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetails { + s.SoftLimit = &v + return s +} + +// A data volume to mount from another container. +type AwsEcsTaskDefinitionContainerDefinitionsVolumesFromDetails struct { _ struct{} `type:"structure"` - // Whether to require that all traffic to the domain arrive over HTTPS. - EnforceHTTPS *bool `type:"boolean"` + // Whether the container has read-only access to the volume. + ReadOnly *bool `type:"boolean"` - // The TLS security policy to apply to the HTTPS endpoint of the OpenSearch - // domain. - // - // Valid values: - // - // * Policy-Min-TLS-1-0-2019-07, which supports TLSv1.0 and higher - // - // * Policy-Min-TLS-1-2-2019-07, which only supports TLSv1.2 - TLSSecurityPolicy *string `type:"string"` + // The name of another container within the same task definition from which + // to mount volumes. + SourceContainer *string `type:"string"` } // String returns the string representation. @@ -21266,7 +21581,7 @@ type AwsElasticsearchDomainDomainEndpointOptions struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElasticsearchDomainDomainEndpointOptions) String() string { +func (s AwsEcsTaskDefinitionContainerDefinitionsVolumesFromDetails) String() string { return awsutil.Prettify(s) } @@ -21275,63 +21590,103 @@ func (s AwsElasticsearchDomainDomainEndpointOptions) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElasticsearchDomainDomainEndpointOptions) GoString() string { +func (s AwsEcsTaskDefinitionContainerDefinitionsVolumesFromDetails) GoString() string { return s.String() } -// SetEnforceHTTPS sets the EnforceHTTPS field's value. -func (s *AwsElasticsearchDomainDomainEndpointOptions) SetEnforceHTTPS(v bool) *AwsElasticsearchDomainDomainEndpointOptions { - s.EnforceHTTPS = &v +// SetReadOnly sets the ReadOnly field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsVolumesFromDetails) SetReadOnly(v bool) *AwsEcsTaskDefinitionContainerDefinitionsVolumesFromDetails { + s.ReadOnly = &v return s } -// SetTLSSecurityPolicy sets the TLSSecurityPolicy field's value. -func (s *AwsElasticsearchDomainDomainEndpointOptions) SetTLSSecurityPolicy(v string) *AwsElasticsearchDomainDomainEndpointOptions { - s.TLSSecurityPolicy = &v +// SetSourceContainer sets the SourceContainer field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsVolumesFromDetails) SetSourceContainer(v string) *AwsEcsTaskDefinitionContainerDefinitionsVolumesFromDetails { + s.SourceContainer = &v return s } -// details about the configuration of an OpenSearch cluster. -type AwsElasticsearchDomainElasticsearchClusterConfigDetails struct { +// Details about a task definition. A task definition describes the container +// and volume definitions of an Amazon Elastic Container Service task. +type AwsEcsTaskDefinitionDetails struct { _ struct{} `type:"structure"` - // The number of instances to use for the master node. If this attribute is - // specified, then DedicatedMasterEnabled must be true. - DedicatedMasterCount *int64 `type:"integer"` + // The container definitions that describe the containers that make up the task. + ContainerDefinitions []*AwsEcsTaskDefinitionContainerDefinitionsDetails `type:"list"` - // Whether to use a dedicated master node for the Elasticsearch domain. A dedicated - // master node performs cluster management tasks, but doesn't hold data or respond - // to data upload requests. - DedicatedMasterEnabled *bool `type:"boolean"` + // The number of CPU units used by the task.Valid values are as follows: + // + // * 256 (.25 vCPU) + // + // * 512 (.5 vCPU) + // + // * 1024 (1 vCPU) + // + // * 2048 (2 vCPU) + // + // * 4096 (4 vCPU) + Cpu *string `type:"string"` - // The hardware configuration of the computer that hosts the dedicated master - // node. A sample value is m3.medium.elasticsearch. If this attribute is specified, - // then DedicatedMasterEnabled must be true. + // The ARN of the task execution role that grants the container agent permission + // to make API calls on behalf of the container user. + ExecutionRoleArn *string `type:"string"` + + // The name of a family that this task definition is registered to. + Family *string `type:"string"` + + // The Elastic Inference accelerators to use for the containers in the task. + InferenceAccelerators []*AwsEcsTaskDefinitionInferenceAcceleratorsDetails `type:"list"` + + // The inter-process communication (IPC) resource namespace to use for the containers + // in the task. Valid values are as follows: // - // For a list of valid values, see Supported instance types in Amazon OpenSearch - // Service (https://docs.aws.amazon.com/opensearch-service/latest/developerguide/supported-instance-types.html) - // in the Amazon OpenSearch Service Developer Guide. - DedicatedMasterType *string `type:"string"` + // * host + // + // * none + // + // * task + IpcMode *string `type:"string"` - // The number of data nodes to use in the Elasticsearch domain. - InstanceCount *int64 `type:"integer"` + // The amount (in MiB) of memory used by the task. + // + // For tasks that are hosted on Amazon EC2, you can provide a task-level memory + // value or a container-level memory value. For tasks that are hosted on Fargate, + // you must use one of the specified values (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#task_size) + // in the Amazon Elastic Container Service Developer Guide , which determines + // your range of supported values for the Cpu and Memory parameters. + Memory *string `type:"string"` - // The instance type for your data nodes. For example, m3.medium.elasticsearch. + // The Docker networking mode to use for the containers in the task. Valid values + // are as follows: // - // For a list of valid values, see Supported instance types in Amazon OpenSearch - // Service (https://docs.aws.amazon.com/opensearch-service/latest/developerguide/supported-instance-types.html) - // in the Amazon OpenSearch Service Developer Guide. - InstanceType *string `type:"string"` + // * awsvpc + // + // * bridge + // + // * host + // + // * none + NetworkMode *string `type:"string"` - // Configuration options for zone awareness. Provided if ZoneAwarenessEnabled - // is true. - ZoneAwarenessConfig *AwsElasticsearchDomainElasticsearchClusterConfigZoneAwarenessConfigDetails `type:"structure"` + // The process namespace to use for the containers in the task. Valid values + // are host or task. + PidMode *string `type:"string"` - // Whether to enable zone awareness for the Elasticsearch domain. When zone - // awareness is enabled, OpenSearch allocates the cluster's nodes and replica - // index shards across Availability Zones in the same Region. This prevents - // data loss and minimizes downtime if a node or data center fails. - ZoneAwarenessEnabled *bool `type:"boolean"` + // The placement constraint objects to use for tasks. + PlacementConstraints []*AwsEcsTaskDefinitionPlacementConstraintsDetails `type:"list"` + + // The configuration details for the App Mesh proxy. + ProxyConfiguration *AwsEcsTaskDefinitionProxyConfigurationDetails `type:"structure"` + + // The task launch types that the task definition was validated against. + RequiresCompatibilities []*string `type:"list"` + + // The short name or ARN of the IAM role that grants containers in the task + // permission to call Amazon Web Services API operations on your behalf. + TaskRoleArn *string `type:"string"` + + // The data volume definitions for the task. + Volumes []*AwsEcsTaskDefinitionVolumesDetails `type:"list"` } // String returns the string representation. @@ -21339,7 +21694,7 @@ type AwsElasticsearchDomainElasticsearchClusterConfigDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElasticsearchDomainElasticsearchClusterConfigDetails) String() string { +func (s AwsEcsTaskDefinitionDetails) String() string { return awsutil.Prettify(s) } @@ -21348,94 +21703,103 @@ func (s AwsElasticsearchDomainElasticsearchClusterConfigDetails) String() string // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElasticsearchDomainElasticsearchClusterConfigDetails) GoString() string { +func (s AwsEcsTaskDefinitionDetails) GoString() string { return s.String() } -// SetDedicatedMasterCount sets the DedicatedMasterCount field's value. -func (s *AwsElasticsearchDomainElasticsearchClusterConfigDetails) SetDedicatedMasterCount(v int64) *AwsElasticsearchDomainElasticsearchClusterConfigDetails { - s.DedicatedMasterCount = &v +// SetContainerDefinitions sets the ContainerDefinitions field's value. +func (s *AwsEcsTaskDefinitionDetails) SetContainerDefinitions(v []*AwsEcsTaskDefinitionContainerDefinitionsDetails) *AwsEcsTaskDefinitionDetails { + s.ContainerDefinitions = v return s } -// SetDedicatedMasterEnabled sets the DedicatedMasterEnabled field's value. -func (s *AwsElasticsearchDomainElasticsearchClusterConfigDetails) SetDedicatedMasterEnabled(v bool) *AwsElasticsearchDomainElasticsearchClusterConfigDetails { - s.DedicatedMasterEnabled = &v +// SetCpu sets the Cpu field's value. +func (s *AwsEcsTaskDefinitionDetails) SetCpu(v string) *AwsEcsTaskDefinitionDetails { + s.Cpu = &v return s } -// SetDedicatedMasterType sets the DedicatedMasterType field's value. -func (s *AwsElasticsearchDomainElasticsearchClusterConfigDetails) SetDedicatedMasterType(v string) *AwsElasticsearchDomainElasticsearchClusterConfigDetails { - s.DedicatedMasterType = &v +// SetExecutionRoleArn sets the ExecutionRoleArn field's value. +func (s *AwsEcsTaskDefinitionDetails) SetExecutionRoleArn(v string) *AwsEcsTaskDefinitionDetails { + s.ExecutionRoleArn = &v return s } -// SetInstanceCount sets the InstanceCount field's value. -func (s *AwsElasticsearchDomainElasticsearchClusterConfigDetails) SetInstanceCount(v int64) *AwsElasticsearchDomainElasticsearchClusterConfigDetails { - s.InstanceCount = &v +// SetFamily sets the Family field's value. +func (s *AwsEcsTaskDefinitionDetails) SetFamily(v string) *AwsEcsTaskDefinitionDetails { + s.Family = &v return s } -// SetInstanceType sets the InstanceType field's value. -func (s *AwsElasticsearchDomainElasticsearchClusterConfigDetails) SetInstanceType(v string) *AwsElasticsearchDomainElasticsearchClusterConfigDetails { - s.InstanceType = &v +// SetInferenceAccelerators sets the InferenceAccelerators field's value. +func (s *AwsEcsTaskDefinitionDetails) SetInferenceAccelerators(v []*AwsEcsTaskDefinitionInferenceAcceleratorsDetails) *AwsEcsTaskDefinitionDetails { + s.InferenceAccelerators = v return s } -// SetZoneAwarenessConfig sets the ZoneAwarenessConfig field's value. -func (s *AwsElasticsearchDomainElasticsearchClusterConfigDetails) SetZoneAwarenessConfig(v *AwsElasticsearchDomainElasticsearchClusterConfigZoneAwarenessConfigDetails) *AwsElasticsearchDomainElasticsearchClusterConfigDetails { - s.ZoneAwarenessConfig = v +// SetIpcMode sets the IpcMode field's value. +func (s *AwsEcsTaskDefinitionDetails) SetIpcMode(v string) *AwsEcsTaskDefinitionDetails { + s.IpcMode = &v return s } -// SetZoneAwarenessEnabled sets the ZoneAwarenessEnabled field's value. -func (s *AwsElasticsearchDomainElasticsearchClusterConfigDetails) SetZoneAwarenessEnabled(v bool) *AwsElasticsearchDomainElasticsearchClusterConfigDetails { - s.ZoneAwarenessEnabled = &v +// SetMemory sets the Memory field's value. +func (s *AwsEcsTaskDefinitionDetails) SetMemory(v string) *AwsEcsTaskDefinitionDetails { + s.Memory = &v return s } -// Configuration options for zone awareness. -type AwsElasticsearchDomainElasticsearchClusterConfigZoneAwarenessConfigDetails struct { - _ struct{} `type:"structure"` +// SetNetworkMode sets the NetworkMode field's value. +func (s *AwsEcsTaskDefinitionDetails) SetNetworkMode(v string) *AwsEcsTaskDefinitionDetails { + s.NetworkMode = &v + return s +} - // he number of Availability Zones that the domain uses. Valid values are 2 - // and 3. The default is 2. - AvailabilityZoneCount *int64 `type:"integer"` +// SetPidMode sets the PidMode field's value. +func (s *AwsEcsTaskDefinitionDetails) SetPidMode(v string) *AwsEcsTaskDefinitionDetails { + s.PidMode = &v + return s } -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsElasticsearchDomainElasticsearchClusterConfigZoneAwarenessConfigDetails) String() string { - return awsutil.Prettify(s) +// SetPlacementConstraints sets the PlacementConstraints field's value. +func (s *AwsEcsTaskDefinitionDetails) SetPlacementConstraints(v []*AwsEcsTaskDefinitionPlacementConstraintsDetails) *AwsEcsTaskDefinitionDetails { + s.PlacementConstraints = v + return s } -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsElasticsearchDomainElasticsearchClusterConfigZoneAwarenessConfigDetails) GoString() string { - return s.String() +// SetProxyConfiguration sets the ProxyConfiguration field's value. +func (s *AwsEcsTaskDefinitionDetails) SetProxyConfiguration(v *AwsEcsTaskDefinitionProxyConfigurationDetails) *AwsEcsTaskDefinitionDetails { + s.ProxyConfiguration = v + return s } -// SetAvailabilityZoneCount sets the AvailabilityZoneCount field's value. -func (s *AwsElasticsearchDomainElasticsearchClusterConfigZoneAwarenessConfigDetails) SetAvailabilityZoneCount(v int64) *AwsElasticsearchDomainElasticsearchClusterConfigZoneAwarenessConfigDetails { - s.AvailabilityZoneCount = &v +// SetRequiresCompatibilities sets the RequiresCompatibilities field's value. +func (s *AwsEcsTaskDefinitionDetails) SetRequiresCompatibilities(v []*string) *AwsEcsTaskDefinitionDetails { + s.RequiresCompatibilities = v return s } -// Details about the configuration for encryption at rest. -type AwsElasticsearchDomainEncryptionAtRestOptions struct { +// SetTaskRoleArn sets the TaskRoleArn field's value. +func (s *AwsEcsTaskDefinitionDetails) SetTaskRoleArn(v string) *AwsEcsTaskDefinitionDetails { + s.TaskRoleArn = &v + return s +} + +// SetVolumes sets the Volumes field's value. +func (s *AwsEcsTaskDefinitionDetails) SetVolumes(v []*AwsEcsTaskDefinitionVolumesDetails) *AwsEcsTaskDefinitionDetails { + s.Volumes = v + return s +} + +// An Elastic Inference accelerator to use for the containers in the task. +type AwsEcsTaskDefinitionInferenceAcceleratorsDetails struct { _ struct{} `type:"structure"` - // Whether encryption at rest is enabled. - Enabled *bool `type:"boolean"` + // The Elastic Inference accelerator device name. + DeviceName *string `type:"string"` - // The KMS key ID. Takes the form 1a2a3a4-1a2a-3a4a-5a6a-1a2a3a4a5a6a. - KmsKeyId *string `type:"string"` + // The Elastic Inference accelerator type to use. + DeviceType *string `type:"string"` } // String returns the string representation. @@ -21443,7 +21807,7 @@ type AwsElasticsearchDomainEncryptionAtRestOptions struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElasticsearchDomainEncryptionAtRestOptions) String() string { +func (s AwsEcsTaskDefinitionInferenceAcceleratorsDetails) String() string { return awsutil.Prettify(s) } @@ -21452,34 +21816,31 @@ func (s AwsElasticsearchDomainEncryptionAtRestOptions) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElasticsearchDomainEncryptionAtRestOptions) GoString() string { +func (s AwsEcsTaskDefinitionInferenceAcceleratorsDetails) GoString() string { return s.String() } -// SetEnabled sets the Enabled field's value. -func (s *AwsElasticsearchDomainEncryptionAtRestOptions) SetEnabled(v bool) *AwsElasticsearchDomainEncryptionAtRestOptions { - s.Enabled = &v +// SetDeviceName sets the DeviceName field's value. +func (s *AwsEcsTaskDefinitionInferenceAcceleratorsDetails) SetDeviceName(v string) *AwsEcsTaskDefinitionInferenceAcceleratorsDetails { + s.DeviceName = &v return s } -// SetKmsKeyId sets the KmsKeyId field's value. -func (s *AwsElasticsearchDomainEncryptionAtRestOptions) SetKmsKeyId(v string) *AwsElasticsearchDomainEncryptionAtRestOptions { - s.KmsKeyId = &v +// SetDeviceType sets the DeviceType field's value. +func (s *AwsEcsTaskDefinitionInferenceAcceleratorsDetails) SetDeviceType(v string) *AwsEcsTaskDefinitionInferenceAcceleratorsDetails { + s.DeviceType = &v return s } -// configures the CloudWatch Logs to publish for the Elasticsearch domain. -type AwsElasticsearchDomainLogPublishingOptions struct { +// A placement constraint object to use for tasks. +type AwsEcsTaskDefinitionPlacementConstraintsDetails struct { _ struct{} `type:"structure"` - // The log configuration. - AuditLogs *AwsElasticsearchDomainLogPublishingOptionsLogConfig `type:"structure"` - - // Configures the OpenSearch index logs publishing. - IndexSlowLogs *AwsElasticsearchDomainLogPublishingOptionsLogConfig `type:"structure"` + // A cluster query language expression to apply to the constraint. + Expression *string `type:"string"` - // Configures the OpenSearch search slow log publishing. - SearchSlowLogs *AwsElasticsearchDomainLogPublishingOptionsLogConfig `type:"structure"` + // The type of constraint. + Type *string `type:"string"` } // String returns the string representation. @@ -21487,7 +21848,7 @@ type AwsElasticsearchDomainLogPublishingOptions struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElasticsearchDomainLogPublishingOptions) String() string { +func (s AwsEcsTaskDefinitionPlacementConstraintsDetails) String() string { return awsutil.Prettify(s) } @@ -21496,37 +21857,35 @@ func (s AwsElasticsearchDomainLogPublishingOptions) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElasticsearchDomainLogPublishingOptions) GoString() string { +func (s AwsEcsTaskDefinitionPlacementConstraintsDetails) GoString() string { return s.String() } -// SetAuditLogs sets the AuditLogs field's value. -func (s *AwsElasticsearchDomainLogPublishingOptions) SetAuditLogs(v *AwsElasticsearchDomainLogPublishingOptionsLogConfig) *AwsElasticsearchDomainLogPublishingOptions { - s.AuditLogs = v - return s -} - -// SetIndexSlowLogs sets the IndexSlowLogs field's value. -func (s *AwsElasticsearchDomainLogPublishingOptions) SetIndexSlowLogs(v *AwsElasticsearchDomainLogPublishingOptionsLogConfig) *AwsElasticsearchDomainLogPublishingOptions { - s.IndexSlowLogs = v +// SetExpression sets the Expression field's value. +func (s *AwsEcsTaskDefinitionPlacementConstraintsDetails) SetExpression(v string) *AwsEcsTaskDefinitionPlacementConstraintsDetails { + s.Expression = &v return s } -// SetSearchSlowLogs sets the SearchSlowLogs field's value. -func (s *AwsElasticsearchDomainLogPublishingOptions) SetSearchSlowLogs(v *AwsElasticsearchDomainLogPublishingOptionsLogConfig) *AwsElasticsearchDomainLogPublishingOptions { - s.SearchSlowLogs = v +// SetType sets the Type field's value. +func (s *AwsEcsTaskDefinitionPlacementConstraintsDetails) SetType(v string) *AwsEcsTaskDefinitionPlacementConstraintsDetails { + s.Type = &v return s } -// The log configuration. -type AwsElasticsearchDomainLogPublishingOptionsLogConfig struct { +// The configuration details for the App Mesh proxy. +type AwsEcsTaskDefinitionProxyConfigurationDetails struct { _ struct{} `type:"structure"` - // The ARN of the CloudWatch Logs group to publish the logs to. - CloudWatchLogsLogGroupArn *string `type:"string"` + // The name of the container that will serve as the App Mesh proxy. + ContainerName *string `type:"string"` - // Whether the log publishing is enabled. - Enabled *bool `type:"boolean"` + // The set of network configuration parameters to provide to the Container Network + // Interface (CNI) plugin, specified as key-value pairs. + ProxyConfigurationProperties []*AwsEcsTaskDefinitionProxyConfigurationProxyConfigurationPropertiesDetails `type:"list"` + + // The proxy type. + Type *string `type:"string"` } // String returns the string representation. @@ -21534,7 +21893,7 @@ type AwsElasticsearchDomainLogPublishingOptionsLogConfig struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElasticsearchDomainLogPublishingOptionsLogConfig) String() string { +func (s AwsEcsTaskDefinitionProxyConfigurationDetails) String() string { return awsutil.Prettify(s) } @@ -21543,28 +21902,38 @@ func (s AwsElasticsearchDomainLogPublishingOptionsLogConfig) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElasticsearchDomainLogPublishingOptionsLogConfig) GoString() string { +func (s AwsEcsTaskDefinitionProxyConfigurationDetails) GoString() string { return s.String() } -// SetCloudWatchLogsLogGroupArn sets the CloudWatchLogsLogGroupArn field's value. -func (s *AwsElasticsearchDomainLogPublishingOptionsLogConfig) SetCloudWatchLogsLogGroupArn(v string) *AwsElasticsearchDomainLogPublishingOptionsLogConfig { - s.CloudWatchLogsLogGroupArn = &v +// SetContainerName sets the ContainerName field's value. +func (s *AwsEcsTaskDefinitionProxyConfigurationDetails) SetContainerName(v string) *AwsEcsTaskDefinitionProxyConfigurationDetails { + s.ContainerName = &v return s } -// SetEnabled sets the Enabled field's value. -func (s *AwsElasticsearchDomainLogPublishingOptionsLogConfig) SetEnabled(v bool) *AwsElasticsearchDomainLogPublishingOptionsLogConfig { - s.Enabled = &v +// SetProxyConfigurationProperties sets the ProxyConfigurationProperties field's value. +func (s *AwsEcsTaskDefinitionProxyConfigurationDetails) SetProxyConfigurationProperties(v []*AwsEcsTaskDefinitionProxyConfigurationProxyConfigurationPropertiesDetails) *AwsEcsTaskDefinitionProxyConfigurationDetails { + s.ProxyConfigurationProperties = v return s } -// Details about the configuration for node-to-node encryption. -type AwsElasticsearchDomainNodeToNodeEncryptionOptions struct { +// SetType sets the Type field's value. +func (s *AwsEcsTaskDefinitionProxyConfigurationDetails) SetType(v string) *AwsEcsTaskDefinitionProxyConfigurationDetails { + s.Type = &v + return s +} + +// A network configuration parameter to provide to the Container Network Interface +// (CNI) plugin. +type AwsEcsTaskDefinitionProxyConfigurationProxyConfigurationPropertiesDetails struct { _ struct{} `type:"structure"` - // Whether node-to-node encryption is enabled. - Enabled *bool `type:"boolean"` + // The name of the property. + Name *string `type:"string"` + + // The value of the property. + Value *string `type:"string"` } // String returns the string representation. @@ -21572,7 +21941,7 @@ type AwsElasticsearchDomainNodeToNodeEncryptionOptions struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElasticsearchDomainNodeToNodeEncryptionOptions) String() string { +func (s AwsEcsTaskDefinitionProxyConfigurationProxyConfigurationPropertiesDetails) String() string { return awsutil.Prettify(s) } @@ -21581,52 +21950,38 @@ func (s AwsElasticsearchDomainNodeToNodeEncryptionOptions) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElasticsearchDomainNodeToNodeEncryptionOptions) GoString() string { +func (s AwsEcsTaskDefinitionProxyConfigurationProxyConfigurationPropertiesDetails) GoString() string { return s.String() } -// SetEnabled sets the Enabled field's value. -func (s *AwsElasticsearchDomainNodeToNodeEncryptionOptions) SetEnabled(v bool) *AwsElasticsearchDomainNodeToNodeEncryptionOptions { - s.Enabled = &v +// SetName sets the Name field's value. +func (s *AwsEcsTaskDefinitionProxyConfigurationProxyConfigurationPropertiesDetails) SetName(v string) *AwsEcsTaskDefinitionProxyConfigurationProxyConfigurationPropertiesDetails { + s.Name = &v return s } -// Information about the state of the domain relative to the latest service -// software. -type AwsElasticsearchDomainServiceSoftwareOptions struct { - _ struct{} `type:"structure"` - - // The epoch time when the deployment window closes for required updates. After - // this time, Amazon OpenSearch Service schedules the software upgrade automatically. - AutomatedUpdateDate *string `type:"string"` - - // Whether a request to update the domain can be canceled. - Cancellable *bool `type:"boolean"` +// SetValue sets the Value field's value. +func (s *AwsEcsTaskDefinitionProxyConfigurationProxyConfigurationPropertiesDetails) SetValue(v string) *AwsEcsTaskDefinitionProxyConfigurationProxyConfigurationPropertiesDetails { + s.Value = &v + return s +} - // The version of the service software that is currently installed on the domain. - CurrentVersion *string `type:"string"` +// A data volume to mount from another container. +type AwsEcsTaskDefinitionVolumesDetails struct { + _ struct{} `type:"structure"` - // A more detailed description of the service software status. - Description *string `type:"string"` + // Information about a Docker volume. + DockerVolumeConfiguration *AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails `type:"structure"` - // The most recent version of the service software. - NewVersion *string `type:"string"` + // Information about the Amazon Elastic File System file system that is used + // for task storage. + EfsVolumeConfiguration *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails `type:"structure"` - // Whether a service software update is available for the domain. - UpdateAvailable *bool `type:"boolean"` + // Information about a bind mount host volume. + Host *AwsEcsTaskDefinitionVolumesHostDetails `type:"structure"` - // The status of the service software update. Valid values are as follows: - // - // * COMPLETED - // - // * ELIGIBLE - // - // * IN_PROGRESS - // - // * NOT_ELIGIBLE - // - // * PENDING_UPDATE - UpdateStatus *string `type:"string"` + // The name of the data volume. + Name *string `type:"string"` } // String returns the string representation. @@ -21634,7 +21989,7 @@ type AwsElasticsearchDomainServiceSoftwareOptions struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElasticsearchDomainServiceSoftwareOptions) String() string { +func (s AwsEcsTaskDefinitionVolumesDetails) String() string { return awsutil.Prettify(s) } @@ -21643,68 +21998,56 @@ func (s AwsElasticsearchDomainServiceSoftwareOptions) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElasticsearchDomainServiceSoftwareOptions) GoString() string { +func (s AwsEcsTaskDefinitionVolumesDetails) GoString() string { return s.String() } -// SetAutomatedUpdateDate sets the AutomatedUpdateDate field's value. -func (s *AwsElasticsearchDomainServiceSoftwareOptions) SetAutomatedUpdateDate(v string) *AwsElasticsearchDomainServiceSoftwareOptions { - s.AutomatedUpdateDate = &v +// SetDockerVolumeConfiguration sets the DockerVolumeConfiguration field's value. +func (s *AwsEcsTaskDefinitionVolumesDetails) SetDockerVolumeConfiguration(v *AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails) *AwsEcsTaskDefinitionVolumesDetails { + s.DockerVolumeConfiguration = v return s } -// SetCancellable sets the Cancellable field's value. -func (s *AwsElasticsearchDomainServiceSoftwareOptions) SetCancellable(v bool) *AwsElasticsearchDomainServiceSoftwareOptions { - s.Cancellable = &v +// SetEfsVolumeConfiguration sets the EfsVolumeConfiguration field's value. +func (s *AwsEcsTaskDefinitionVolumesDetails) SetEfsVolumeConfiguration(v *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails) *AwsEcsTaskDefinitionVolumesDetails { + s.EfsVolumeConfiguration = v return s } -// SetCurrentVersion sets the CurrentVersion field's value. -func (s *AwsElasticsearchDomainServiceSoftwareOptions) SetCurrentVersion(v string) *AwsElasticsearchDomainServiceSoftwareOptions { - s.CurrentVersion = &v +// SetHost sets the Host field's value. +func (s *AwsEcsTaskDefinitionVolumesDetails) SetHost(v *AwsEcsTaskDefinitionVolumesHostDetails) *AwsEcsTaskDefinitionVolumesDetails { + s.Host = v return s } -// SetDescription sets the Description field's value. -func (s *AwsElasticsearchDomainServiceSoftwareOptions) SetDescription(v string) *AwsElasticsearchDomainServiceSoftwareOptions { - s.Description = &v - return s -} - -// SetNewVersion sets the NewVersion field's value. -func (s *AwsElasticsearchDomainServiceSoftwareOptions) SetNewVersion(v string) *AwsElasticsearchDomainServiceSoftwareOptions { - s.NewVersion = &v - return s -} - -// SetUpdateAvailable sets the UpdateAvailable field's value. -func (s *AwsElasticsearchDomainServiceSoftwareOptions) SetUpdateAvailable(v bool) *AwsElasticsearchDomainServiceSoftwareOptions { - s.UpdateAvailable = &v - return s -} - -// SetUpdateStatus sets the UpdateStatus field's value. -func (s *AwsElasticsearchDomainServiceSoftwareOptions) SetUpdateStatus(v string) *AwsElasticsearchDomainServiceSoftwareOptions { - s.UpdateStatus = &v +// SetName sets the Name field's value. +func (s *AwsEcsTaskDefinitionVolumesDetails) SetName(v string) *AwsEcsTaskDefinitionVolumesDetails { + s.Name = &v return s } -// Information that OpenSearch derives based on VPCOptions for the domain. -type AwsElasticsearchDomainVPCOptions struct { +// Information about a Docker volume. +type AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails struct { _ struct{} `type:"structure"` - // The list of Availability Zones associated with the VPC subnets. - AvailabilityZones []*string `type:"list"` + // Whether to create the Docker volume automatically if it does not already + // exist. + Autoprovision *bool `type:"boolean"` - // The list of security group IDs associated with the VPC endpoints for the - // domain. - SecurityGroupIds []*string `type:"list"` + // The Docker volume driver to use. + Driver *string `type:"string"` - // A list of subnet IDs associated with the VPC endpoints for the domain. - SubnetIds []*string `type:"list"` + // A map of Docker driver-specific options that are passed through. + DriverOpts map[string]*string `type:"map"` - // ID for the VPC. - VPCId *string `type:"string"` + // Custom metadata to add to the Docker volume. + Labels map[string]*string `type:"map"` + + // The scope for the Docker volume that determines its lifecycle. Docker volumes + // that are scoped to a task are provisioned automatically when the task starts + // and destroyed when the task stops. Docker volumes that are shared persist + // after the task stops. Valid values are shared or task. + Scope *string `type:"string"` } // String returns the string representation. @@ -21712,7 +22055,7 @@ type AwsElasticsearchDomainVPCOptions struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElasticsearchDomainVPCOptions) String() string { +func (s AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails) String() string { return awsutil.Prettify(s) } @@ -21721,88 +22064,49 @@ func (s AwsElasticsearchDomainVPCOptions) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElasticsearchDomainVPCOptions) GoString() string { +func (s AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails) GoString() string { return s.String() } -// SetAvailabilityZones sets the AvailabilityZones field's value. -func (s *AwsElasticsearchDomainVPCOptions) SetAvailabilityZones(v []*string) *AwsElasticsearchDomainVPCOptions { - s.AvailabilityZones = v - return s -} - -// SetSecurityGroupIds sets the SecurityGroupIds field's value. -func (s *AwsElasticsearchDomainVPCOptions) SetSecurityGroupIds(v []*string) *AwsElasticsearchDomainVPCOptions { - s.SecurityGroupIds = v +// SetAutoprovision sets the Autoprovision field's value. +func (s *AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails) SetAutoprovision(v bool) *AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails { + s.Autoprovision = &v return s } -// SetSubnetIds sets the SubnetIds field's value. -func (s *AwsElasticsearchDomainVPCOptions) SetSubnetIds(v []*string) *AwsElasticsearchDomainVPCOptions { - s.SubnetIds = v +// SetDriver sets the Driver field's value. +func (s *AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails) SetDriver(v string) *AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails { + s.Driver = &v return s } -// SetVPCId sets the VPCId field's value. -func (s *AwsElasticsearchDomainVPCOptions) SetVPCId(v string) *AwsElasticsearchDomainVPCOptions { - s.VPCId = &v +// SetDriverOpts sets the DriverOpts field's value. +func (s *AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails) SetDriverOpts(v map[string]*string) *AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails { + s.DriverOpts = v return s } -// Contains information about a stickiness policy that was created using CreateAppCookieStickinessPolicy. -type AwsElbAppCookieStickinessPolicy struct { - _ struct{} `type:"structure"` - - // The name of the application cookie used for stickiness. - CookieName *string `type:"string"` - - // The mnemonic name for the policy being created. The name must be unique within - // the set of policies for the load balancer. - PolicyName *string `type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsElbAppCookieStickinessPolicy) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsElbAppCookieStickinessPolicy) GoString() string { - return s.String() -} - -// SetCookieName sets the CookieName field's value. -func (s *AwsElbAppCookieStickinessPolicy) SetCookieName(v string) *AwsElbAppCookieStickinessPolicy { - s.CookieName = &v +// SetLabels sets the Labels field's value. +func (s *AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails) SetLabels(v map[string]*string) *AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails { + s.Labels = v return s } -// SetPolicyName sets the PolicyName field's value. -func (s *AwsElbAppCookieStickinessPolicy) SetPolicyName(v string) *AwsElbAppCookieStickinessPolicy { - s.PolicyName = &v +// SetScope sets the Scope field's value. +func (s *AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails) SetScope(v string) *AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails { + s.Scope = &v return s } -// Contains information about a stickiness policy that was created using CreateLBCookieStickinessPolicy. -type AwsElbLbCookieStickinessPolicy struct { +type AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationAuthorizationConfigDetails struct { _ struct{} `type:"structure"` - // The amount of time, in seconds, after which the cookie is considered stale. - // If an expiration period is not specified, the stickiness session lasts for - // the duration of the browser session. - CookieExpirationPeriod *int64 `type:"long"` + // The Amazon EFS access point identifier to use. + AccessPointId *string `type:"string"` - // The name of the policy. The name must be unique within the set of policies - // for the load balancer. - PolicyName *string `type:"string"` + // Whether to use the Amazon ECS task IAM role defined in a task definition + // when mounting the Amazon EFS file system. + Iam *string `type:"string"` } // String returns the string representation. @@ -21810,7 +22114,7 @@ type AwsElbLbCookieStickinessPolicy struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElbLbCookieStickinessPolicy) String() string { +func (s AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationAuthorizationConfigDetails) String() string { return awsutil.Prettify(s) } @@ -21819,41 +22123,44 @@ func (s AwsElbLbCookieStickinessPolicy) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElbLbCookieStickinessPolicy) GoString() string { +func (s AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationAuthorizationConfigDetails) GoString() string { return s.String() } -// SetCookieExpirationPeriod sets the CookieExpirationPeriod field's value. -func (s *AwsElbLbCookieStickinessPolicy) SetCookieExpirationPeriod(v int64) *AwsElbLbCookieStickinessPolicy { - s.CookieExpirationPeriod = &v +// SetAccessPointId sets the AccessPointId field's value. +func (s *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationAuthorizationConfigDetails) SetAccessPointId(v string) *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationAuthorizationConfigDetails { + s.AccessPointId = &v return s } -// SetPolicyName sets the PolicyName field's value. -func (s *AwsElbLbCookieStickinessPolicy) SetPolicyName(v string) *AwsElbLbCookieStickinessPolicy { - s.PolicyName = &v +// SetIam sets the Iam field's value. +func (s *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationAuthorizationConfigDetails) SetIam(v string) *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationAuthorizationConfigDetails { + s.Iam = &v return s } -// Contains information about the access log configuration for the load balancer. -type AwsElbLoadBalancerAccessLog struct { +// Information about the Amazon Elastic File System file system that is used +// for task storage. +type AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails struct { _ struct{} `type:"structure"` - // The interval in minutes for publishing the access logs. - // - // You can publish access logs either every 5 minutes or every 60 minutes. - EmitInterval *int64 `type:"integer"` + // The authorization configuration details for the Amazon EFS file system. + AuthorizationConfig *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationAuthorizationConfigDetails `type:"structure"` - // Indicates whether access logs are enabled for the load balancer. - Enabled *bool `type:"boolean"` + // The Amazon EFS file system identifier to use. + FilesystemId *string `type:"string"` - // The name of the S3 bucket where the access logs are stored. - S3BucketName *string `type:"string"` + // The directory within the Amazon EFS file system to mount as the root directory + // inside the host. + RootDirectory *string `type:"string"` - // The logical hierarchy that was created for the S3 bucket. - // - // If a prefix is not provided, the log is placed at the root level of the bucket. - S3BucketPrefix *string `type:"string"` + // Whether to enable encryption for Amazon EFS data in transit between the Amazon + // ECS host and the Amazon EFS server. + TransitEncryption *string `type:"string"` + + // The port to use when sending encrypted data between the Amazon ECS host and + // the Amazon EFS server. + TransitEncryptionPort *int64 `type:"integer"` } // String returns the string representation. @@ -21861,7 +22168,7 @@ type AwsElbLoadBalancerAccessLog struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElbLoadBalancerAccessLog) String() string { +func (s AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails) String() string { return awsutil.Prettify(s) } @@ -21870,43 +22177,46 @@ func (s AwsElbLoadBalancerAccessLog) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElbLoadBalancerAccessLog) GoString() string { +func (s AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails) GoString() string { return s.String() } -// SetEmitInterval sets the EmitInterval field's value. -func (s *AwsElbLoadBalancerAccessLog) SetEmitInterval(v int64) *AwsElbLoadBalancerAccessLog { - s.EmitInterval = &v +// SetAuthorizationConfig sets the AuthorizationConfig field's value. +func (s *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails) SetAuthorizationConfig(v *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationAuthorizationConfigDetails) *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails { + s.AuthorizationConfig = v return s } -// SetEnabled sets the Enabled field's value. -func (s *AwsElbLoadBalancerAccessLog) SetEnabled(v bool) *AwsElbLoadBalancerAccessLog { - s.Enabled = &v +// SetFilesystemId sets the FilesystemId field's value. +func (s *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails) SetFilesystemId(v string) *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails { + s.FilesystemId = &v return s } -// SetS3BucketName sets the S3BucketName field's value. -func (s *AwsElbLoadBalancerAccessLog) SetS3BucketName(v string) *AwsElbLoadBalancerAccessLog { - s.S3BucketName = &v +// SetRootDirectory sets the RootDirectory field's value. +func (s *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails) SetRootDirectory(v string) *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails { + s.RootDirectory = &v return s } -// SetS3BucketPrefix sets the S3BucketPrefix field's value. -func (s *AwsElbLoadBalancerAccessLog) SetS3BucketPrefix(v string) *AwsElbLoadBalancerAccessLog { - s.S3BucketPrefix = &v +// SetTransitEncryption sets the TransitEncryption field's value. +func (s *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails) SetTransitEncryption(v string) *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails { + s.TransitEncryption = &v return s } -// Provides information about additional attributes for the load balancer. -type AwsElbLoadBalancerAdditionalAttribute struct { - _ struct{} `type:"structure"` +// SetTransitEncryptionPort sets the TransitEncryptionPort field's value. +func (s *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails) SetTransitEncryptionPort(v int64) *AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails { + s.TransitEncryptionPort = &v + return s +} - // The name of the attribute. - Key *string `type:"string"` +// Information about a bind mount host volume. +type AwsEcsTaskDefinitionVolumesHostDetails struct { + _ struct{} `type:"structure"` - // The value of the attribute. - Value *string `type:"string"` + // The path on the host container instance that is presented to the container. + SourcePath *string `type:"string"` } // String returns the string representation. @@ -21914,7 +22224,7 @@ type AwsElbLoadBalancerAdditionalAttribute struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElbLoadBalancerAdditionalAttribute) String() string { +func (s AwsEcsTaskDefinitionVolumesHostDetails) String() string { return awsutil.Prettify(s) } @@ -21923,54 +22233,50 @@ func (s AwsElbLoadBalancerAdditionalAttribute) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElbLoadBalancerAdditionalAttribute) GoString() string { +func (s AwsEcsTaskDefinitionVolumesHostDetails) GoString() string { return s.String() } -// SetKey sets the Key field's value. -func (s *AwsElbLoadBalancerAdditionalAttribute) SetKey(v string) *AwsElbLoadBalancerAdditionalAttribute { - s.Key = &v - return s -} - -// SetValue sets the Value field's value. -func (s *AwsElbLoadBalancerAdditionalAttribute) SetValue(v string) *AwsElbLoadBalancerAdditionalAttribute { - s.Value = &v +// SetSourcePath sets the SourcePath field's value. +func (s *AwsEcsTaskDefinitionVolumesHostDetails) SetSourcePath(v string) *AwsEcsTaskDefinitionVolumesHostDetails { + s.SourcePath = &v return s } -// Contains attributes for the load balancer. -type AwsElbLoadBalancerAttributes struct { +// Provides details about a task in a cluster. +type AwsEcsTaskDetails struct { _ struct{} `type:"structure"` - // Information about the access log configuration for the load balancer. - // - // If the access log is enabled, the load balancer captures detailed information - // about all requests. It delivers the information to a specified S3 bucket. - AccessLog *AwsElbLoadBalancerAccessLog `type:"structure"` + // The Amazon Resource Name (ARN) of the cluster that hosts the task. + ClusterArn *string `type:"string"` - // Any additional attributes for a load balancer. - AdditionalAttributes []*AwsElbLoadBalancerAdditionalAttribute `type:"list"` + // The containers that are associated with the task. + Containers []*AwsEcsContainerDetails `type:"list"` - // Information about the connection draining configuration for the load balancer. - // - // If connection draining is enabled, the load balancer allows existing requests - // to complete before it shifts traffic away from a deregistered or unhealthy - // instance. - ConnectionDraining *AwsElbLoadBalancerConnectionDraining `type:"structure"` + // The Unix timestamp for the time when the task was created. More specifically, + // it's for the time when the task entered the PENDING state. + CreatedAt *string `type:"string"` - // Connection settings for the load balancer. - // - // If an idle timeout is configured, the load balancer allows connections to - // remain idle for the specified duration. When a connection is idle, no data - // is sent over the connection. - ConnectionSettings *AwsElbLoadBalancerConnectionSettings `type:"structure"` + // The name of the task group that's associated with the task. + Group *string `type:"string"` - // Cross-zone load balancing settings for the load balancer. - // - // If cross-zone load balancing is enabled, the load balancer routes the request - // traffic evenly across all instances regardless of the Availability Zones. - CrossZoneLoadBalancing *AwsElbLoadBalancerCrossZoneLoadBalancing `type:"structure"` + // The Unix timestamp for the time when the task started. More specifically, + // it's for the time when the task transitioned from the PENDING state to the + // RUNNING state. + StartedAt *string `type:"string"` + + // The tag specified when a task is started. If an Amazon ECS service started + // the task, the startedBy parameter contains the deployment ID of that service. + StartedBy *string `type:"string"` + + // The ARN of the task definition that creates the task. + TaskDefinitionArn *string `type:"string"` + + // The version counter for the task. + Version *string `type:"string"` + + // Details about the data volume that is used in a task definition. + Volumes []*AwsEcsTaskVolumeDetails `type:"list"` } // String returns the string representation. @@ -21978,7 +22284,7 @@ type AwsElbLoadBalancerAttributes struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElbLoadBalancerAttributes) String() string { +func (s AwsEcsTaskDetails) String() string { return awsutil.Prettify(s) } @@ -21987,50 +22293,77 @@ func (s AwsElbLoadBalancerAttributes) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElbLoadBalancerAttributes) GoString() string { +func (s AwsEcsTaskDetails) GoString() string { return s.String() } -// SetAccessLog sets the AccessLog field's value. -func (s *AwsElbLoadBalancerAttributes) SetAccessLog(v *AwsElbLoadBalancerAccessLog) *AwsElbLoadBalancerAttributes { - s.AccessLog = v +// SetClusterArn sets the ClusterArn field's value. +func (s *AwsEcsTaskDetails) SetClusterArn(v string) *AwsEcsTaskDetails { + s.ClusterArn = &v return s } -// SetAdditionalAttributes sets the AdditionalAttributes field's value. -func (s *AwsElbLoadBalancerAttributes) SetAdditionalAttributes(v []*AwsElbLoadBalancerAdditionalAttribute) *AwsElbLoadBalancerAttributes { - s.AdditionalAttributes = v +// SetContainers sets the Containers field's value. +func (s *AwsEcsTaskDetails) SetContainers(v []*AwsEcsContainerDetails) *AwsEcsTaskDetails { + s.Containers = v return s } -// SetConnectionDraining sets the ConnectionDraining field's value. -func (s *AwsElbLoadBalancerAttributes) SetConnectionDraining(v *AwsElbLoadBalancerConnectionDraining) *AwsElbLoadBalancerAttributes { - s.ConnectionDraining = v +// SetCreatedAt sets the CreatedAt field's value. +func (s *AwsEcsTaskDetails) SetCreatedAt(v string) *AwsEcsTaskDetails { + s.CreatedAt = &v return s } -// SetConnectionSettings sets the ConnectionSettings field's value. -func (s *AwsElbLoadBalancerAttributes) SetConnectionSettings(v *AwsElbLoadBalancerConnectionSettings) *AwsElbLoadBalancerAttributes { - s.ConnectionSettings = v +// SetGroup sets the Group field's value. +func (s *AwsEcsTaskDetails) SetGroup(v string) *AwsEcsTaskDetails { + s.Group = &v return s } -// SetCrossZoneLoadBalancing sets the CrossZoneLoadBalancing field's value. -func (s *AwsElbLoadBalancerAttributes) SetCrossZoneLoadBalancing(v *AwsElbLoadBalancerCrossZoneLoadBalancing) *AwsElbLoadBalancerAttributes { - s.CrossZoneLoadBalancing = v +// SetStartedAt sets the StartedAt field's value. +func (s *AwsEcsTaskDetails) SetStartedAt(v string) *AwsEcsTaskDetails { + s.StartedAt = &v return s } -// Provides information about the configuration of an EC2 instance for the load -// balancer. -type AwsElbLoadBalancerBackendServerDescription struct { +// SetStartedBy sets the StartedBy field's value. +func (s *AwsEcsTaskDetails) SetStartedBy(v string) *AwsEcsTaskDetails { + s.StartedBy = &v + return s +} + +// SetTaskDefinitionArn sets the TaskDefinitionArn field's value. +func (s *AwsEcsTaskDetails) SetTaskDefinitionArn(v string) *AwsEcsTaskDetails { + s.TaskDefinitionArn = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *AwsEcsTaskDetails) SetVersion(v string) *AwsEcsTaskDetails { + s.Version = &v + return s +} + +// SetVolumes sets the Volumes field's value. +func (s *AwsEcsTaskDetails) SetVolumes(v []*AwsEcsTaskVolumeDetails) *AwsEcsTaskDetails { + s.Volumes = v + return s +} + +// Provides information about a data volume that's used in a task definition. +type AwsEcsTaskVolumeDetails struct { _ struct{} `type:"structure"` - // The port on which the EC2 instance is listening. - InstancePort *int64 `type:"integer"` + // This parameter is specified when you use bind mount host volumes. The contents + // of the host parameter determine whether your bind mount host volume persists + // on the host container instance and where it's stored. + Host *AwsEcsTaskVolumeHostDetails `type:"structure"` - // The names of the policies that are enabled for the EC2 instance. - PolicyNames []*string `type:"list"` + // The name of the volume. Up to 255 letters (uppercase and lowercase), numbers, + // underscores, and hyphens are allowed. This name is referenced in the sourceVolume + // parameter of container definition mountPoints. + Name *string `type:"string"` } // String returns the string representation. @@ -22038,7 +22371,7 @@ type AwsElbLoadBalancerBackendServerDescription struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElbLoadBalancerBackendServerDescription) String() string { +func (s AwsEcsTaskVolumeDetails) String() string { return awsutil.Prettify(s) } @@ -22047,33 +22380,29 @@ func (s AwsElbLoadBalancerBackendServerDescription) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElbLoadBalancerBackendServerDescription) GoString() string { +func (s AwsEcsTaskVolumeDetails) GoString() string { return s.String() } -// SetInstancePort sets the InstancePort field's value. -func (s *AwsElbLoadBalancerBackendServerDescription) SetInstancePort(v int64) *AwsElbLoadBalancerBackendServerDescription { - s.InstancePort = &v +// SetHost sets the Host field's value. +func (s *AwsEcsTaskVolumeDetails) SetHost(v *AwsEcsTaskVolumeHostDetails) *AwsEcsTaskVolumeDetails { + s.Host = v return s } -// SetPolicyNames sets the PolicyNames field's value. -func (s *AwsElbLoadBalancerBackendServerDescription) SetPolicyNames(v []*string) *AwsElbLoadBalancerBackendServerDescription { - s.PolicyNames = v +// SetName sets the Name field's value. +func (s *AwsEcsTaskVolumeDetails) SetName(v string) *AwsEcsTaskVolumeDetails { + s.Name = &v return s } -// Contains information about the connection draining configuration for the -// load balancer. -type AwsElbLoadBalancerConnectionDraining struct { +// Provides details on a container instance bind mount host volume. +type AwsEcsTaskVolumeHostDetails struct { _ struct{} `type:"structure"` - // Indicates whether connection draining is enabled for the load balancer. - Enabled *bool `type:"boolean"` - - // The maximum time, in seconds, to keep the existing connections open before - // deregistering the instances. - Timeout *int64 `type:"integer"` + // When the host parameter is used, specify a sourcePath to declare the path + // on the host container instance that's presented to the container. + SourcePath *string `type:"string"` } // String returns the string representation. @@ -22081,7 +22410,7 @@ type AwsElbLoadBalancerConnectionDraining struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElbLoadBalancerConnectionDraining) String() string { +func (s AwsEcsTaskVolumeHostDetails) String() string { return awsutil.Prettify(s) } @@ -22090,29 +22419,40 @@ func (s AwsElbLoadBalancerConnectionDraining) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElbLoadBalancerConnectionDraining) GoString() string { +func (s AwsEcsTaskVolumeHostDetails) GoString() string { return s.String() } -// SetEnabled sets the Enabled field's value. -func (s *AwsElbLoadBalancerConnectionDraining) SetEnabled(v bool) *AwsElbLoadBalancerConnectionDraining { - s.Enabled = &v - return s -} - -// SetTimeout sets the Timeout field's value. -func (s *AwsElbLoadBalancerConnectionDraining) SetTimeout(v int64) *AwsElbLoadBalancerConnectionDraining { - s.Timeout = &v +// SetSourcePath sets the SourcePath field's value. +func (s *AwsEcsTaskVolumeHostDetails) SetSourcePath(v string) *AwsEcsTaskVolumeHostDetails { + s.SourcePath = &v return s } -// Contains connection settings for the load balancer. -type AwsElbLoadBalancerConnectionSettings struct { +// Provides information about an Amazon EFS access point. +type AwsEfsAccessPointDetails struct { _ struct{} `type:"structure"` - // The time, in seconds, that the connection can be idle (no data is sent over - // the connection) before it is closed by the load balancer. - IdleTimeout *int64 `type:"integer"` + // The ID of the Amazon EFS access point. + AccessPointId *string `type:"string"` + + // The Amazon Resource Name (ARN) of the Amazon EFS access point. + Arn *string `type:"string"` + + // The opaque string specified in the request to ensure idempotent creation. + ClientToken *string `type:"string"` + + // The ID of the Amazon EFS file system that the access point applies to. + FileSystemId *string `type:"string"` + + // The full POSIX identity, including the user ID, group ID, and secondary group + // IDs on the access point, that is used for all file operations by NFS clients + // using the access point. + PosixUser *AwsEfsAccessPointPosixUserDetails `type:"structure"` + + // The directory on the Amazon EFS file system that the access point exposes + // as the root directory to NFS clients using the access point. + RootDirectory *AwsEfsAccessPointRootDirectoryDetails `type:"structure"` } // String returns the string representation. @@ -22120,7 +22460,7 @@ type AwsElbLoadBalancerConnectionSettings struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElbLoadBalancerConnectionSettings) String() string { +func (s AwsEfsAccessPointDetails) String() string { return awsutil.Prettify(s) } @@ -22129,22 +22469,61 @@ func (s AwsElbLoadBalancerConnectionSettings) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElbLoadBalancerConnectionSettings) GoString() string { +func (s AwsEfsAccessPointDetails) GoString() string { return s.String() } -// SetIdleTimeout sets the IdleTimeout field's value. -func (s *AwsElbLoadBalancerConnectionSettings) SetIdleTimeout(v int64) *AwsElbLoadBalancerConnectionSettings { - s.IdleTimeout = &v +// SetAccessPointId sets the AccessPointId field's value. +func (s *AwsEfsAccessPointDetails) SetAccessPointId(v string) *AwsEfsAccessPointDetails { + s.AccessPointId = &v return s } -// Contains cross-zone load balancing settings for the load balancer. -type AwsElbLoadBalancerCrossZoneLoadBalancing struct { +// SetArn sets the Arn field's value. +func (s *AwsEfsAccessPointDetails) SetArn(v string) *AwsEfsAccessPointDetails { + s.Arn = &v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *AwsEfsAccessPointDetails) SetClientToken(v string) *AwsEfsAccessPointDetails { + s.ClientToken = &v + return s +} + +// SetFileSystemId sets the FileSystemId field's value. +func (s *AwsEfsAccessPointDetails) SetFileSystemId(v string) *AwsEfsAccessPointDetails { + s.FileSystemId = &v + return s +} + +// SetPosixUser sets the PosixUser field's value. +func (s *AwsEfsAccessPointDetails) SetPosixUser(v *AwsEfsAccessPointPosixUserDetails) *AwsEfsAccessPointDetails { + s.PosixUser = v + return s +} + +// SetRootDirectory sets the RootDirectory field's value. +func (s *AwsEfsAccessPointDetails) SetRootDirectory(v *AwsEfsAccessPointRootDirectoryDetails) *AwsEfsAccessPointDetails { + s.RootDirectory = v + return s +} + +// Provides details for all file system operations using this Amazon EFS access +// point. +type AwsEfsAccessPointPosixUserDetails struct { _ struct{} `type:"structure"` - // Indicates whether cross-zone load balancing is enabled for the load balancer. - Enabled *bool `type:"boolean"` + // The POSIX group ID used for all file system operations using this access + // point. + Gid *string `type:"string"` + + // Secondary POSIX group IDs used for all file system operations using this + // access point. + SecondaryGids []*string `type:"list"` + + // The POSIX user ID used for all file system operations using this access point. + Uid *string `type:"string"` } // String returns the string representation. @@ -22152,7 +22531,7 @@ type AwsElbLoadBalancerCrossZoneLoadBalancing struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElbLoadBalancerCrossZoneLoadBalancing) String() string { +func (s AwsEfsAccessPointPosixUserDetails) String() string { return awsutil.Prettify(s) } @@ -22161,82 +22540,42 @@ func (s AwsElbLoadBalancerCrossZoneLoadBalancing) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElbLoadBalancerCrossZoneLoadBalancing) GoString() string { +func (s AwsEfsAccessPointPosixUserDetails) GoString() string { return s.String() } -// SetEnabled sets the Enabled field's value. -func (s *AwsElbLoadBalancerCrossZoneLoadBalancing) SetEnabled(v bool) *AwsElbLoadBalancerCrossZoneLoadBalancing { - s.Enabled = &v +// SetGid sets the Gid field's value. +func (s *AwsEfsAccessPointPosixUserDetails) SetGid(v string) *AwsEfsAccessPointPosixUserDetails { + s.Gid = &v return s } -// Contains details about a Classic Load Balancer. -type AwsElbLoadBalancerDetails struct { - _ struct{} `type:"structure"` - - // The list of Availability Zones for the load balancer. - AvailabilityZones []*string `type:"list"` - - // Information about the configuration of the EC2 instances. - BackendServerDescriptions []*AwsElbLoadBalancerBackendServerDescription `type:"list"` - - // The name of the Amazon Route 53 hosted zone for the load balancer. - CanonicalHostedZoneName *string `type:"string"` - - // The ID of the Amazon Route 53 hosted zone for the load balancer. - CanonicalHostedZoneNameID *string `type:"string"` - - // Indicates when the load balancer was created. - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - CreatedTime *string `type:"string"` - - // The DNS name of the load balancer. - DnsName *string `type:"string"` - - // Information about the health checks that are conducted on the load balancer. - HealthCheck *AwsElbLoadBalancerHealthCheck `type:"structure"` - - // List of EC2 instances for the load balancer. - Instances []*AwsElbLoadBalancerInstance `type:"list"` - - // The policies that are enabled for the load balancer listeners. - ListenerDescriptions []*AwsElbLoadBalancerListenerDescription `type:"list"` - - // The attributes for a load balancer. - LoadBalancerAttributes *AwsElbLoadBalancerAttributes `type:"structure"` - - // The name of the load balancer. - LoadBalancerName *string `type:"string"` - - // The policies for a load balancer. - Policies *AwsElbLoadBalancerPolicies `type:"structure"` +// SetSecondaryGids sets the SecondaryGids field's value. +func (s *AwsEfsAccessPointPosixUserDetails) SetSecondaryGids(v []*string) *AwsEfsAccessPointPosixUserDetails { + s.SecondaryGids = v + return s +} - // The type of load balancer. Only provided if the load balancer is in a VPC. - // - // If Scheme is internet-facing, the load balancer has a public DNS name that - // resolves to a public IP address. - // - // If Scheme is internal, the load balancer has a public DNS name that resolves - // to a private IP address. - Scheme *string `type:"string"` +// SetUid sets the Uid field's value. +func (s *AwsEfsAccessPointPosixUserDetails) SetUid(v string) *AwsEfsAccessPointPosixUserDetails { + s.Uid = &v + return s +} - // The security groups for the load balancer. Only provided if the load balancer - // is in a VPC. - SecurityGroups []*string `type:"list"` +// Provides information about the settings that Amazon EFS uses to create the +// root directory when a client connects to an access point. +type AwsEfsAccessPointRootDirectoryCreationInfoDetails struct { + _ struct{} `type:"structure"` - // Information about the security group for the load balancer. This is the security - // group that is used for inbound rules. - SourceSecurityGroup *AwsElbLoadBalancerSourceSecurityGroup `type:"structure"` + // Specifies the POSIX group ID to apply to the root directory. + OwnerGid *string `type:"string"` - // The list of subnet identifiers for the load balancer. - Subnets []*string `type:"list"` + // Specifies the POSIX user ID to apply to the root directory. + OwnerUid *string `type:"string"` - // The identifier of the VPC for the load balancer. - VpcId *string `type:"string"` + // Specifies the POSIX permissions to apply to the root directory, in the format + // of an octal number representing the file's mode bits. + Permissions *string `type:"string"` } // String returns the string representation. @@ -22244,7 +22583,7 @@ type AwsElbLoadBalancerDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElbLoadBalancerDetails) String() string { +func (s AwsEfsAccessPointRootDirectoryCreationInfoDetails) String() string { return awsutil.Prettify(s) } @@ -22253,146 +22592,118 @@ func (s AwsElbLoadBalancerDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElbLoadBalancerDetails) GoString() string { +func (s AwsEfsAccessPointRootDirectoryCreationInfoDetails) GoString() string { return s.String() } -// SetAvailabilityZones sets the AvailabilityZones field's value. -func (s *AwsElbLoadBalancerDetails) SetAvailabilityZones(v []*string) *AwsElbLoadBalancerDetails { - s.AvailabilityZones = v - return s -} - -// SetBackendServerDescriptions sets the BackendServerDescriptions field's value. -func (s *AwsElbLoadBalancerDetails) SetBackendServerDescriptions(v []*AwsElbLoadBalancerBackendServerDescription) *AwsElbLoadBalancerDetails { - s.BackendServerDescriptions = v - return s -} - -// SetCanonicalHostedZoneName sets the CanonicalHostedZoneName field's value. -func (s *AwsElbLoadBalancerDetails) SetCanonicalHostedZoneName(v string) *AwsElbLoadBalancerDetails { - s.CanonicalHostedZoneName = &v - return s -} - -// SetCanonicalHostedZoneNameID sets the CanonicalHostedZoneNameID field's value. -func (s *AwsElbLoadBalancerDetails) SetCanonicalHostedZoneNameID(v string) *AwsElbLoadBalancerDetails { - s.CanonicalHostedZoneNameID = &v - return s -} - -// SetCreatedTime sets the CreatedTime field's value. -func (s *AwsElbLoadBalancerDetails) SetCreatedTime(v string) *AwsElbLoadBalancerDetails { - s.CreatedTime = &v - return s -} - -// SetDnsName sets the DnsName field's value. -func (s *AwsElbLoadBalancerDetails) SetDnsName(v string) *AwsElbLoadBalancerDetails { - s.DnsName = &v - return s -} - -// SetHealthCheck sets the HealthCheck field's value. -func (s *AwsElbLoadBalancerDetails) SetHealthCheck(v *AwsElbLoadBalancerHealthCheck) *AwsElbLoadBalancerDetails { - s.HealthCheck = v - return s -} - -// SetInstances sets the Instances field's value. -func (s *AwsElbLoadBalancerDetails) SetInstances(v []*AwsElbLoadBalancerInstance) *AwsElbLoadBalancerDetails { - s.Instances = v +// SetOwnerGid sets the OwnerGid field's value. +func (s *AwsEfsAccessPointRootDirectoryCreationInfoDetails) SetOwnerGid(v string) *AwsEfsAccessPointRootDirectoryCreationInfoDetails { + s.OwnerGid = &v return s } -// SetListenerDescriptions sets the ListenerDescriptions field's value. -func (s *AwsElbLoadBalancerDetails) SetListenerDescriptions(v []*AwsElbLoadBalancerListenerDescription) *AwsElbLoadBalancerDetails { - s.ListenerDescriptions = v +// SetOwnerUid sets the OwnerUid field's value. +func (s *AwsEfsAccessPointRootDirectoryCreationInfoDetails) SetOwnerUid(v string) *AwsEfsAccessPointRootDirectoryCreationInfoDetails { + s.OwnerUid = &v return s } -// SetLoadBalancerAttributes sets the LoadBalancerAttributes field's value. -func (s *AwsElbLoadBalancerDetails) SetLoadBalancerAttributes(v *AwsElbLoadBalancerAttributes) *AwsElbLoadBalancerDetails { - s.LoadBalancerAttributes = v +// SetPermissions sets the Permissions field's value. +func (s *AwsEfsAccessPointRootDirectoryCreationInfoDetails) SetPermissions(v string) *AwsEfsAccessPointRootDirectoryCreationInfoDetails { + s.Permissions = &v return s } -// SetLoadBalancerName sets the LoadBalancerName field's value. -func (s *AwsElbLoadBalancerDetails) SetLoadBalancerName(v string) *AwsElbLoadBalancerDetails { - s.LoadBalancerName = &v - return s -} +// Provides information about the directory on the Amazon EFS file system that +// the access point exposes as the root directory to NFS clients using the access +// point. +type AwsEfsAccessPointRootDirectoryDetails struct { + _ struct{} `type:"structure"` -// SetPolicies sets the Policies field's value. -func (s *AwsElbLoadBalancerDetails) SetPolicies(v *AwsElbLoadBalancerPolicies) *AwsElbLoadBalancerDetails { - s.Policies = v - return s -} + // Specifies the POSIX IDs and permissions to apply to the access point's root + // directory. + CreationInfo *AwsEfsAccessPointRootDirectoryCreationInfoDetails `type:"structure"` -// SetScheme sets the Scheme field's value. -func (s *AwsElbLoadBalancerDetails) SetScheme(v string) *AwsElbLoadBalancerDetails { - s.Scheme = &v - return s + // Specifies the path on the Amazon EFS file system to expose as the root directory + // to NFS clients using the access point to access the EFS file system. A path + // can have up to four subdirectories. If the specified path does not exist, + // you are required to provide CreationInfo. + Path *string `type:"string"` } -// SetSecurityGroups sets the SecurityGroups field's value. -func (s *AwsElbLoadBalancerDetails) SetSecurityGroups(v []*string) *AwsElbLoadBalancerDetails { - s.SecurityGroups = v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEfsAccessPointRootDirectoryDetails) String() string { + return awsutil.Prettify(s) } -// SetSourceSecurityGroup sets the SourceSecurityGroup field's value. -func (s *AwsElbLoadBalancerDetails) SetSourceSecurityGroup(v *AwsElbLoadBalancerSourceSecurityGroup) *AwsElbLoadBalancerDetails { - s.SourceSecurityGroup = v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEfsAccessPointRootDirectoryDetails) GoString() string { + return s.String() } -// SetSubnets sets the Subnets field's value. -func (s *AwsElbLoadBalancerDetails) SetSubnets(v []*string) *AwsElbLoadBalancerDetails { - s.Subnets = v +// SetCreationInfo sets the CreationInfo field's value. +func (s *AwsEfsAccessPointRootDirectoryDetails) SetCreationInfo(v *AwsEfsAccessPointRootDirectoryCreationInfoDetails) *AwsEfsAccessPointRootDirectoryDetails { + s.CreationInfo = v return s } -// SetVpcId sets the VpcId field's value. -func (s *AwsElbLoadBalancerDetails) SetVpcId(v string) *AwsElbLoadBalancerDetails { - s.VpcId = &v +// SetPath sets the Path field's value. +func (s *AwsEfsAccessPointRootDirectoryDetails) SetPath(v string) *AwsEfsAccessPointRootDirectoryDetails { + s.Path = &v return s } -// Contains information about the health checks that are conducted on the load -// balancer. -type AwsElbLoadBalancerHealthCheck struct { +// Provides details about an Amazon EKS cluster. +type AwsEksClusterDetails struct { _ struct{} `type:"structure"` - // The number of consecutive health check successes required before the instance - // is moved to the Healthy state. - HealthyThreshold *int64 `type:"integer"` + // The ARN of the cluster. + Arn *string `type:"string"` - // The approximate interval, in seconds, between health checks of an individual - // instance. - Interval *int64 `type:"integer"` + // The certificate authority data for the cluster. + CertificateAuthorityData *string `type:"string"` - // The instance that is being checked. The target specifies the protocol and - // port. The available protocols are TCP, SSL, HTTP, and HTTPS. The range of - // valid ports is 1 through 65535. + // The status of the cluster. Valid values are as follows: // - // For the HTTP and HTTPS protocols, the target also specifies the ping path. + // * ACTIVE // - // For the TCP protocol, the target is specified as TCP: . + // * CREATING // - // For the SSL protocol, the target is specified as SSL. . + // * DELETING // - // For the HTTP and HTTPS protocols, the target is specified as :/ . - Target *string `type:"string"` + // * FAILED + // + // * PENDING + // + // * UPDATING + ClusterStatus *string `type:"string"` - // The amount of time, in seconds, during which no response means a failed health - // check. - Timeout *int64 `type:"integer"` + // The endpoint for the Amazon EKS API server. + Endpoint *string `type:"string"` - // The number of consecutive health check failures that must occur before the - // instance is moved to the Unhealthy state. - UnhealthyThreshold *int64 `type:"integer"` + // The logging configuration for the cluster. + Logging *AwsEksClusterLoggingDetails `type:"structure"` + + // The name of the cluster. + Name *string `type:"string"` + + // The VPC configuration used by the cluster control plane. + ResourcesVpcConfig *AwsEksClusterResourcesVpcConfigDetails `type:"structure"` + + // The ARN of the IAM role that provides permissions for the Amazon EKS control + // plane to make calls to Amazon Web Services API operations on your behalf. + RoleArn *string `type:"string"` + + // The Amazon EKS server version for the cluster. + Version *string `type:"string"` } // String returns the string representation. @@ -22400,7 +22711,7 @@ type AwsElbLoadBalancerHealthCheck struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElbLoadBalancerHealthCheck) String() string { +func (s AwsEksClusterDetails) String() string { return awsutil.Prettify(s) } @@ -22409,99 +22720,83 @@ func (s AwsElbLoadBalancerHealthCheck) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElbLoadBalancerHealthCheck) GoString() string { +func (s AwsEksClusterDetails) GoString() string { return s.String() } -// SetHealthyThreshold sets the HealthyThreshold field's value. -func (s *AwsElbLoadBalancerHealthCheck) SetHealthyThreshold(v int64) *AwsElbLoadBalancerHealthCheck { - s.HealthyThreshold = &v +// SetArn sets the Arn field's value. +func (s *AwsEksClusterDetails) SetArn(v string) *AwsEksClusterDetails { + s.Arn = &v return s } -// SetInterval sets the Interval field's value. -func (s *AwsElbLoadBalancerHealthCheck) SetInterval(v int64) *AwsElbLoadBalancerHealthCheck { - s.Interval = &v +// SetCertificateAuthorityData sets the CertificateAuthorityData field's value. +func (s *AwsEksClusterDetails) SetCertificateAuthorityData(v string) *AwsEksClusterDetails { + s.CertificateAuthorityData = &v return s } -// SetTarget sets the Target field's value. -func (s *AwsElbLoadBalancerHealthCheck) SetTarget(v string) *AwsElbLoadBalancerHealthCheck { - s.Target = &v +// SetClusterStatus sets the ClusterStatus field's value. +func (s *AwsEksClusterDetails) SetClusterStatus(v string) *AwsEksClusterDetails { + s.ClusterStatus = &v return s } -// SetTimeout sets the Timeout field's value. -func (s *AwsElbLoadBalancerHealthCheck) SetTimeout(v int64) *AwsElbLoadBalancerHealthCheck { - s.Timeout = &v +// SetEndpoint sets the Endpoint field's value. +func (s *AwsEksClusterDetails) SetEndpoint(v string) *AwsEksClusterDetails { + s.Endpoint = &v return s } -// SetUnhealthyThreshold sets the UnhealthyThreshold field's value. -func (s *AwsElbLoadBalancerHealthCheck) SetUnhealthyThreshold(v int64) *AwsElbLoadBalancerHealthCheck { - s.UnhealthyThreshold = &v +// SetLogging sets the Logging field's value. +func (s *AwsEksClusterDetails) SetLogging(v *AwsEksClusterLoggingDetails) *AwsEksClusterDetails { + s.Logging = v return s } -// Provides information about an EC2 instance for a load balancer. -type AwsElbLoadBalancerInstance struct { - _ struct{} `type:"structure"` - - // The instance identifier. - InstanceId *string `type:"string"` +// SetName sets the Name field's value. +func (s *AwsEksClusterDetails) SetName(v string) *AwsEksClusterDetails { + s.Name = &v + return s } -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsElbLoadBalancerInstance) String() string { - return awsutil.Prettify(s) +// SetResourcesVpcConfig sets the ResourcesVpcConfig field's value. +func (s *AwsEksClusterDetails) SetResourcesVpcConfig(v *AwsEksClusterResourcesVpcConfigDetails) *AwsEksClusterDetails { + s.ResourcesVpcConfig = v + return s } -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsElbLoadBalancerInstance) GoString() string { - return s.String() +// SetRoleArn sets the RoleArn field's value. +func (s *AwsEksClusterDetails) SetRoleArn(v string) *AwsEksClusterDetails { + s.RoleArn = &v + return s } -// SetInstanceId sets the InstanceId field's value. -func (s *AwsElbLoadBalancerInstance) SetInstanceId(v string) *AwsElbLoadBalancerInstance { - s.InstanceId = &v +// SetVersion sets the Version field's value. +func (s *AwsEksClusterDetails) SetVersion(v string) *AwsEksClusterDetails { + s.Version = &v return s } -// Information about a load balancer listener. -type AwsElbLoadBalancerListener struct { +// Details for a cluster logging configuration. +type AwsEksClusterLoggingClusterLoggingDetails struct { _ struct{} `type:"structure"` - // The port on which the instance is listening. - InstancePort *int64 `type:"integer"` + // Whether the logging types that are listed in Types are enabled. + Enabled *bool `type:"boolean"` - // The protocol to use to route traffic to instances. + // A list of logging types. Valid values are as follows: // - // Valid values: HTTP | HTTPS | TCP | SSL - InstanceProtocol *string `type:"string"` - - // The port on which the load balancer is listening. + // * api // - // On EC2-VPC, you can specify any port from the range 1-65535. + // * audit // - // On EC2-Classic, you can specify any port from the following list: 25, 80, - // 443, 465, 587, 1024-65535. - LoadBalancerPort *int64 `type:"integer"` - - // The load balancer transport protocol to use for routing. + // * authenticator // - // Valid values: HTTP | HTTPS | TCP | SSL - Protocol *string `type:"string"` - - // The ARN of the server certificate. - SslCertificateId *string `type:"string"` + // * controllerManager + // + // * scheduler + Types []*string `type:"list"` } // String returns the string representation. @@ -22509,7 +22804,7 @@ type AwsElbLoadBalancerListener struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElbLoadBalancerListener) String() string { +func (s AwsEksClusterLoggingClusterLoggingDetails) String() string { return awsutil.Prettify(s) } @@ -22518,49 +22813,28 @@ func (s AwsElbLoadBalancerListener) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElbLoadBalancerListener) GoString() string { +func (s AwsEksClusterLoggingClusterLoggingDetails) GoString() string { return s.String() } -// SetInstancePort sets the InstancePort field's value. -func (s *AwsElbLoadBalancerListener) SetInstancePort(v int64) *AwsElbLoadBalancerListener { - s.InstancePort = &v - return s -} - -// SetInstanceProtocol sets the InstanceProtocol field's value. -func (s *AwsElbLoadBalancerListener) SetInstanceProtocol(v string) *AwsElbLoadBalancerListener { - s.InstanceProtocol = &v - return s -} - -// SetLoadBalancerPort sets the LoadBalancerPort field's value. -func (s *AwsElbLoadBalancerListener) SetLoadBalancerPort(v int64) *AwsElbLoadBalancerListener { - s.LoadBalancerPort = &v - return s -} - -// SetProtocol sets the Protocol field's value. -func (s *AwsElbLoadBalancerListener) SetProtocol(v string) *AwsElbLoadBalancerListener { - s.Protocol = &v +// SetEnabled sets the Enabled field's value. +func (s *AwsEksClusterLoggingClusterLoggingDetails) SetEnabled(v bool) *AwsEksClusterLoggingClusterLoggingDetails { + s.Enabled = &v return s } -// SetSslCertificateId sets the SslCertificateId field's value. -func (s *AwsElbLoadBalancerListener) SetSslCertificateId(v string) *AwsElbLoadBalancerListener { - s.SslCertificateId = &v +// SetTypes sets the Types field's value. +func (s *AwsEksClusterLoggingClusterLoggingDetails) SetTypes(v []*string) *AwsEksClusterLoggingClusterLoggingDetails { + s.Types = v return s } -// Lists the policies that are enabled for a load balancer listener. -type AwsElbLoadBalancerListenerDescription struct { +// The logging configuration for an Amazon EKS cluster. +type AwsEksClusterLoggingDetails struct { _ struct{} `type:"structure"` - // Information about the listener. - Listener *AwsElbLoadBalancerListener `type:"structure"` - - // The policies enabled for the listener. - PolicyNames []*string `type:"list"` + // Cluster logging configurations. + ClusterLogging []*AwsEksClusterLoggingClusterLoggingDetails `type:"list"` } // String returns the string representation. @@ -22568,7 +22842,7 @@ type AwsElbLoadBalancerListenerDescription struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElbLoadBalancerListenerDescription) String() string { +func (s AwsEksClusterLoggingDetails) String() string { return awsutil.Prettify(s) } @@ -22577,34 +22851,27 @@ func (s AwsElbLoadBalancerListenerDescription) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElbLoadBalancerListenerDescription) GoString() string { +func (s AwsEksClusterLoggingDetails) GoString() string { return s.String() } -// SetListener sets the Listener field's value. -func (s *AwsElbLoadBalancerListenerDescription) SetListener(v *AwsElbLoadBalancerListener) *AwsElbLoadBalancerListenerDescription { - s.Listener = v - return s -} - -// SetPolicyNames sets the PolicyNames field's value. -func (s *AwsElbLoadBalancerListenerDescription) SetPolicyNames(v []*string) *AwsElbLoadBalancerListenerDescription { - s.PolicyNames = v +// SetClusterLogging sets the ClusterLogging field's value. +func (s *AwsEksClusterLoggingDetails) SetClusterLogging(v []*AwsEksClusterLoggingClusterLoggingDetails) *AwsEksClusterLoggingDetails { + s.ClusterLogging = v return s } -// Contains information about the policies for a load balancer. -type AwsElbLoadBalancerPolicies struct { +// Information about the VPC configuration used by the cluster control plane. +type AwsEksClusterResourcesVpcConfigDetails struct { _ struct{} `type:"structure"` - // The stickiness policies that are created using CreateAppCookieStickinessPolicy. - AppCookieStickinessPolicies []*AwsElbAppCookieStickinessPolicy `type:"list"` - - // The stickiness policies that are created using CreateLBCookieStickinessPolicy. - LbCookieStickinessPolicies []*AwsElbLbCookieStickinessPolicy `type:"list"` + // The security groups that are associated with the cross-account elastic network + // interfaces that are used to allow communication between your nodes and the + // Amazon EKS control plane. + SecurityGroupIds []*string `type:"list"` - // The policies other than the stickiness policies. - OtherPolicies []*string `type:"list"` + // The subnets that are associated with the cluster. + SubnetIds []*string `type:"list"` } // String returns the string representation. @@ -22612,7 +22879,7 @@ type AwsElbLoadBalancerPolicies struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElbLoadBalancerPolicies) String() string { +func (s AwsEksClusterResourcesVpcConfigDetails) String() string { return awsutil.Prettify(s) } @@ -22621,152 +22888,90 @@ func (s AwsElbLoadBalancerPolicies) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElbLoadBalancerPolicies) GoString() string { +func (s AwsEksClusterResourcesVpcConfigDetails) GoString() string { return s.String() } -// SetAppCookieStickinessPolicies sets the AppCookieStickinessPolicies field's value. -func (s *AwsElbLoadBalancerPolicies) SetAppCookieStickinessPolicies(v []*AwsElbAppCookieStickinessPolicy) *AwsElbLoadBalancerPolicies { - s.AppCookieStickinessPolicies = v - return s -} - -// SetLbCookieStickinessPolicies sets the LbCookieStickinessPolicies field's value. -func (s *AwsElbLoadBalancerPolicies) SetLbCookieStickinessPolicies(v []*AwsElbLbCookieStickinessPolicy) *AwsElbLoadBalancerPolicies { - s.LbCookieStickinessPolicies = v +// SetSecurityGroupIds sets the SecurityGroupIds field's value. +func (s *AwsEksClusterResourcesVpcConfigDetails) SetSecurityGroupIds(v []*string) *AwsEksClusterResourcesVpcConfigDetails { + s.SecurityGroupIds = v return s } -// SetOtherPolicies sets the OtherPolicies field's value. -func (s *AwsElbLoadBalancerPolicies) SetOtherPolicies(v []*string) *AwsElbLoadBalancerPolicies { - s.OtherPolicies = v +// SetSubnetIds sets the SubnetIds field's value. +func (s *AwsEksClusterResourcesVpcConfigDetails) SetSubnetIds(v []*string) *AwsEksClusterResourcesVpcConfigDetails { + s.SubnetIds = v return s } -// Contains information about the security group for the load balancer. -type AwsElbLoadBalancerSourceSecurityGroup struct { +// Contains details about an Elastic Beanstalk environment. +type AwsElasticBeanstalkEnvironmentDetails struct { _ struct{} `type:"structure"` - // The name of the security group. - GroupName *string `type:"string"` - - // The owner of the security group. - OwnerAlias *string `type:"string"` -} + // The name of the application that is associated with the environment. + ApplicationName *string `type:"string"` -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsElbLoadBalancerSourceSecurityGroup) String() string { - return awsutil.Prettify(s) -} + // The URL to the CNAME for this environment. + Cname *string `type:"string"` -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsElbLoadBalancerSourceSecurityGroup) GoString() string { - return s.String() -} + // The creation date for this environment. + DateCreated *string `type:"string"` -// SetGroupName sets the GroupName field's value. -func (s *AwsElbLoadBalancerSourceSecurityGroup) SetGroupName(v string) *AwsElbLoadBalancerSourceSecurityGroup { - s.GroupName = &v - return s -} + // The date when this environment was last modified. + DateUpdated *string `type:"string"` -// SetOwnerAlias sets the OwnerAlias field's value. -func (s *AwsElbLoadBalancerSourceSecurityGroup) SetOwnerAlias(v string) *AwsElbLoadBalancerSourceSecurityGroup { - s.OwnerAlias = &v - return s -} + // A description of the environment. + Description *string `type:"string"` -// A load balancer attribute. -type AwsElbv2LoadBalancerAttribute struct { - _ struct{} `type:"structure"` - - // The name of the load balancer attribute. - Key *string `type:"string"` - - // The value of the load balancer attribute. - Value *string `type:"string"` -} + // For load-balanced, autoscaling environments, the URL to the load balancer. + // For single-instance environments, the IP address of the instance. + EndpointUrl *string `type:"string"` -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsElbv2LoadBalancerAttribute) String() string { - return awsutil.Prettify(s) -} + // The ARN of the environment. + EnvironmentArn *string `type:"string"` -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsElbv2LoadBalancerAttribute) GoString() string { - return s.String() -} + // The identifier of the environment. + EnvironmentId *string `type:"string"` -// SetKey sets the Key field's value. -func (s *AwsElbv2LoadBalancerAttribute) SetKey(v string) *AwsElbv2LoadBalancerAttribute { - s.Key = &v - return s -} + // Links to other environments in the same group. + EnvironmentLinks []*AwsElasticBeanstalkEnvironmentEnvironmentLink `type:"list"` -// SetValue sets the Value field's value. -func (s *AwsElbv2LoadBalancerAttribute) SetValue(v string) *AwsElbv2LoadBalancerAttribute { - s.Value = &v - return s -} + // The name of the environment. + EnvironmentName *string `type:"string"` -// Information about a load balancer. -type AwsElbv2LoadBalancerDetails struct { - _ struct{} `type:"structure"` + // The configuration setting for the environment. + OptionSettings []*AwsElasticBeanstalkEnvironmentOptionSetting `type:"list"` - // The Availability Zones for the load balancer. - AvailabilityZones []*AvailabilityZone `type:"list"` + // The ARN of the platform version for the environment. + PlatformArn *string `type:"string"` - // The ID of the Amazon Route 53 hosted zone associated with the load balancer. - CanonicalHostedZoneId *string `type:"string"` + // The name of the solution stack that is deployed with the environment. + SolutionStackName *string `type:"string"` - // Indicates when the load balancer was created. + // The current operational status of the environment. Valid values are as follows: // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - CreatedTime *string `type:"string"` - - // The public DNS name of the load balancer. - DNSName *string `type:"string"` - - // The type of IP addresses used by the subnets for your load balancer. The - // possible values are ipv4 (for IPv4 addresses) and dualstack (for IPv4 and - // IPv6 addresses). - IpAddressType *string `type:"string"` - - // Attributes of the load balancer. - LoadBalancerAttributes []*AwsElbv2LoadBalancerAttribute `type:"list"` - - // The nodes of an Internet-facing load balancer have public IP addresses. - Scheme *string `type:"string"` - - // The IDs of the security groups for the load balancer. - SecurityGroups []*string `type:"list"` - - // The state of the load balancer. - State *LoadBalancerState `type:"structure"` + // * Aborting + // + // * Launching + // + // * LinkingFrom + // + // * LinkingTo + // + // * Ready + // + // * Terminated + // + // * Terminating + // + // * Updating + Status *string `type:"string"` - // The type of load balancer. - Type *string `type:"string"` + // The tier of the environment. + Tier *AwsElasticBeanstalkEnvironmentTier `type:"structure"` - // The ID of the VPC for the load balancer. - VpcId *string `type:"string"` + // The application version of the environment. + VersionLabel *string `type:"string"` } // String returns the string representation. @@ -22774,7 +22979,7 @@ type AwsElbv2LoadBalancerDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElbv2LoadBalancerDetails) String() string { +func (s AwsElasticBeanstalkEnvironmentDetails) String() string { return awsutil.Prettify(s) } @@ -22783,198 +22988,116 @@ func (s AwsElbv2LoadBalancerDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsElbv2LoadBalancerDetails) GoString() string { +func (s AwsElasticBeanstalkEnvironmentDetails) GoString() string { return s.String() } -// SetAvailabilityZones sets the AvailabilityZones field's value. -func (s *AwsElbv2LoadBalancerDetails) SetAvailabilityZones(v []*AvailabilityZone) *AwsElbv2LoadBalancerDetails { - s.AvailabilityZones = v - return s -} - -// SetCanonicalHostedZoneId sets the CanonicalHostedZoneId field's value. -func (s *AwsElbv2LoadBalancerDetails) SetCanonicalHostedZoneId(v string) *AwsElbv2LoadBalancerDetails { - s.CanonicalHostedZoneId = &v - return s -} - -// SetCreatedTime sets the CreatedTime field's value. -func (s *AwsElbv2LoadBalancerDetails) SetCreatedTime(v string) *AwsElbv2LoadBalancerDetails { - s.CreatedTime = &v - return s -} - -// SetDNSName sets the DNSName field's value. -func (s *AwsElbv2LoadBalancerDetails) SetDNSName(v string) *AwsElbv2LoadBalancerDetails { - s.DNSName = &v - return s -} - -// SetIpAddressType sets the IpAddressType field's value. -func (s *AwsElbv2LoadBalancerDetails) SetIpAddressType(v string) *AwsElbv2LoadBalancerDetails { - s.IpAddressType = &v +// SetApplicationName sets the ApplicationName field's value. +func (s *AwsElasticBeanstalkEnvironmentDetails) SetApplicationName(v string) *AwsElasticBeanstalkEnvironmentDetails { + s.ApplicationName = &v return s } -// SetLoadBalancerAttributes sets the LoadBalancerAttributes field's value. -func (s *AwsElbv2LoadBalancerDetails) SetLoadBalancerAttributes(v []*AwsElbv2LoadBalancerAttribute) *AwsElbv2LoadBalancerDetails { - s.LoadBalancerAttributes = v +// SetCname sets the Cname field's value. +func (s *AwsElasticBeanstalkEnvironmentDetails) SetCname(v string) *AwsElasticBeanstalkEnvironmentDetails { + s.Cname = &v return s } -// SetScheme sets the Scheme field's value. -func (s *AwsElbv2LoadBalancerDetails) SetScheme(v string) *AwsElbv2LoadBalancerDetails { - s.Scheme = &v +// SetDateCreated sets the DateCreated field's value. +func (s *AwsElasticBeanstalkEnvironmentDetails) SetDateCreated(v string) *AwsElasticBeanstalkEnvironmentDetails { + s.DateCreated = &v return s } -// SetSecurityGroups sets the SecurityGroups field's value. -func (s *AwsElbv2LoadBalancerDetails) SetSecurityGroups(v []*string) *AwsElbv2LoadBalancerDetails { - s.SecurityGroups = v +// SetDateUpdated sets the DateUpdated field's value. +func (s *AwsElasticBeanstalkEnvironmentDetails) SetDateUpdated(v string) *AwsElasticBeanstalkEnvironmentDetails { + s.DateUpdated = &v return s } -// SetState sets the State field's value. -func (s *AwsElbv2LoadBalancerDetails) SetState(v *LoadBalancerState) *AwsElbv2LoadBalancerDetails { - s.State = v +// SetDescription sets the Description field's value. +func (s *AwsElasticBeanstalkEnvironmentDetails) SetDescription(v string) *AwsElasticBeanstalkEnvironmentDetails { + s.Description = &v return s } -// SetType sets the Type field's value. -func (s *AwsElbv2LoadBalancerDetails) SetType(v string) *AwsElbv2LoadBalancerDetails { - s.Type = &v +// SetEndpointUrl sets the EndpointUrl field's value. +func (s *AwsElasticBeanstalkEnvironmentDetails) SetEndpointUrl(v string) *AwsElasticBeanstalkEnvironmentDetails { + s.EndpointUrl = &v return s } -// SetVpcId sets the VpcId field's value. -func (s *AwsElbv2LoadBalancerDetails) SetVpcId(v string) *AwsElbv2LoadBalancerDetails { - s.VpcId = &v +// SetEnvironmentArn sets the EnvironmentArn field's value. +func (s *AwsElasticBeanstalkEnvironmentDetails) SetEnvironmentArn(v string) *AwsElasticBeanstalkEnvironmentDetails { + s.EnvironmentArn = &v return s } -// IAM access key details related to a finding. -type AwsIamAccessKeyDetails struct { - _ struct{} `type:"structure"` - - // The identifier of the access key. - AccessKeyId *string `type:"string"` - - // The Amazon Web Services account ID of the account for the key. - AccountId *string `type:"string"` - - // Indicates when the IAM access key was created. - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - CreatedAt *string `type:"string"` - - // The ID of the principal associated with an access key. - PrincipalId *string `type:"string"` - - // The name of the principal. - PrincipalName *string `type:"string"` - - // The type of principal associated with an access key. - PrincipalType *string `type:"string"` - - // Information about the session that the key was used for. - SessionContext *AwsIamAccessKeySessionContext `type:"structure"` - - // The status of the IAM access key related to a finding. - Status *string `type:"string" enum:"AwsIamAccessKeyStatus"` - - // The user associated with the IAM access key related to a finding. - // - // The UserName parameter has been replaced with the PrincipalName parameter - // because access keys can also be assigned to principals that are not IAM users. - // - // Deprecated: This filter is deprecated. Instead, use PrincipalName. - UserName *string `deprecated:"true" type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsIamAccessKeyDetails) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsIamAccessKeyDetails) GoString() string { - return s.String() -} - -// SetAccessKeyId sets the AccessKeyId field's value. -func (s *AwsIamAccessKeyDetails) SetAccessKeyId(v string) *AwsIamAccessKeyDetails { - s.AccessKeyId = &v +// SetEnvironmentId sets the EnvironmentId field's value. +func (s *AwsElasticBeanstalkEnvironmentDetails) SetEnvironmentId(v string) *AwsElasticBeanstalkEnvironmentDetails { + s.EnvironmentId = &v return s } -// SetAccountId sets the AccountId field's value. -func (s *AwsIamAccessKeyDetails) SetAccountId(v string) *AwsIamAccessKeyDetails { - s.AccountId = &v +// SetEnvironmentLinks sets the EnvironmentLinks field's value. +func (s *AwsElasticBeanstalkEnvironmentDetails) SetEnvironmentLinks(v []*AwsElasticBeanstalkEnvironmentEnvironmentLink) *AwsElasticBeanstalkEnvironmentDetails { + s.EnvironmentLinks = v return s } -// SetCreatedAt sets the CreatedAt field's value. -func (s *AwsIamAccessKeyDetails) SetCreatedAt(v string) *AwsIamAccessKeyDetails { - s.CreatedAt = &v +// SetEnvironmentName sets the EnvironmentName field's value. +func (s *AwsElasticBeanstalkEnvironmentDetails) SetEnvironmentName(v string) *AwsElasticBeanstalkEnvironmentDetails { + s.EnvironmentName = &v return s } -// SetPrincipalId sets the PrincipalId field's value. -func (s *AwsIamAccessKeyDetails) SetPrincipalId(v string) *AwsIamAccessKeyDetails { - s.PrincipalId = &v +// SetOptionSettings sets the OptionSettings field's value. +func (s *AwsElasticBeanstalkEnvironmentDetails) SetOptionSettings(v []*AwsElasticBeanstalkEnvironmentOptionSetting) *AwsElasticBeanstalkEnvironmentDetails { + s.OptionSettings = v return s } -// SetPrincipalName sets the PrincipalName field's value. -func (s *AwsIamAccessKeyDetails) SetPrincipalName(v string) *AwsIamAccessKeyDetails { - s.PrincipalName = &v +// SetPlatformArn sets the PlatformArn field's value. +func (s *AwsElasticBeanstalkEnvironmentDetails) SetPlatformArn(v string) *AwsElasticBeanstalkEnvironmentDetails { + s.PlatformArn = &v return s } -// SetPrincipalType sets the PrincipalType field's value. -func (s *AwsIamAccessKeyDetails) SetPrincipalType(v string) *AwsIamAccessKeyDetails { - s.PrincipalType = &v +// SetSolutionStackName sets the SolutionStackName field's value. +func (s *AwsElasticBeanstalkEnvironmentDetails) SetSolutionStackName(v string) *AwsElasticBeanstalkEnvironmentDetails { + s.SolutionStackName = &v return s } -// SetSessionContext sets the SessionContext field's value. -func (s *AwsIamAccessKeyDetails) SetSessionContext(v *AwsIamAccessKeySessionContext) *AwsIamAccessKeyDetails { - s.SessionContext = v +// SetStatus sets the Status field's value. +func (s *AwsElasticBeanstalkEnvironmentDetails) SetStatus(v string) *AwsElasticBeanstalkEnvironmentDetails { + s.Status = &v return s } -// SetStatus sets the Status field's value. -func (s *AwsIamAccessKeyDetails) SetStatus(v string) *AwsIamAccessKeyDetails { - s.Status = &v +// SetTier sets the Tier field's value. +func (s *AwsElasticBeanstalkEnvironmentDetails) SetTier(v *AwsElasticBeanstalkEnvironmentTier) *AwsElasticBeanstalkEnvironmentDetails { + s.Tier = v return s } -// SetUserName sets the UserName field's value. -func (s *AwsIamAccessKeyDetails) SetUserName(v string) *AwsIamAccessKeyDetails { - s.UserName = &v +// SetVersionLabel sets the VersionLabel field's value. +func (s *AwsElasticBeanstalkEnvironmentDetails) SetVersionLabel(v string) *AwsElasticBeanstalkEnvironmentDetails { + s.VersionLabel = &v return s } -// Provides information about the session that the key was used for. -type AwsIamAccessKeySessionContext struct { +// Contains information about a link to another environment that is in the same +// group. +type AwsElasticBeanstalkEnvironmentEnvironmentLink struct { _ struct{} `type:"structure"` - // Attributes of the session that the key was used for. - Attributes *AwsIamAccessKeySessionContextAttributes `type:"structure"` + // The name of the linked environment. + EnvironmentName *string `type:"string"` - // Information about the entity that created the session. - SessionIssuer *AwsIamAccessKeySessionContextSessionIssuer `type:"structure"` + // The name of the environment link. + LinkName *string `type:"string"` } // String returns the string representation. @@ -22982,7 +23105,7 @@ type AwsIamAccessKeySessionContext struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsIamAccessKeySessionContext) String() string { +func (s AwsElasticBeanstalkEnvironmentEnvironmentLink) String() string { return awsutil.Prettify(s) } @@ -22991,35 +23114,37 @@ func (s AwsIamAccessKeySessionContext) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsIamAccessKeySessionContext) GoString() string { +func (s AwsElasticBeanstalkEnvironmentEnvironmentLink) GoString() string { return s.String() } -// SetAttributes sets the Attributes field's value. -func (s *AwsIamAccessKeySessionContext) SetAttributes(v *AwsIamAccessKeySessionContextAttributes) *AwsIamAccessKeySessionContext { - s.Attributes = v +// SetEnvironmentName sets the EnvironmentName field's value. +func (s *AwsElasticBeanstalkEnvironmentEnvironmentLink) SetEnvironmentName(v string) *AwsElasticBeanstalkEnvironmentEnvironmentLink { + s.EnvironmentName = &v return s } -// SetSessionIssuer sets the SessionIssuer field's value. -func (s *AwsIamAccessKeySessionContext) SetSessionIssuer(v *AwsIamAccessKeySessionContextSessionIssuer) *AwsIamAccessKeySessionContext { - s.SessionIssuer = v +// SetLinkName sets the LinkName field's value. +func (s *AwsElasticBeanstalkEnvironmentEnvironmentLink) SetLinkName(v string) *AwsElasticBeanstalkEnvironmentEnvironmentLink { + s.LinkName = &v return s } -// Attributes of the session that the key was used for. -type AwsIamAccessKeySessionContextAttributes struct { +// A configuration option setting for the environment. +type AwsElasticBeanstalkEnvironmentOptionSetting struct { _ struct{} `type:"structure"` - // Indicates when the session was created. - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - CreationDate *string `type:"string"` + // The type of resource that the configuration option is associated with. + Namespace *string `type:"string"` - // Indicates whether the session used multi-factor authentication (MFA). - MfaAuthenticated *bool `type:"boolean"` + // The name of the option. + OptionName *string `type:"string"` + + // The name of the resource. + ResourceName *string `type:"string"` + + // The value of the configuration setting. + Value *string `type:"string"` } // String returns the string representation. @@ -23027,7 +23152,7 @@ type AwsIamAccessKeySessionContextAttributes struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsIamAccessKeySessionContextAttributes) String() string { +func (s AwsElasticBeanstalkEnvironmentOptionSetting) String() string { return awsutil.Prettify(s) } @@ -23036,41 +23161,46 @@ func (s AwsIamAccessKeySessionContextAttributes) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsIamAccessKeySessionContextAttributes) GoString() string { +func (s AwsElasticBeanstalkEnvironmentOptionSetting) GoString() string { return s.String() } -// SetCreationDate sets the CreationDate field's value. -func (s *AwsIamAccessKeySessionContextAttributes) SetCreationDate(v string) *AwsIamAccessKeySessionContextAttributes { - s.CreationDate = &v +// SetNamespace sets the Namespace field's value. +func (s *AwsElasticBeanstalkEnvironmentOptionSetting) SetNamespace(v string) *AwsElasticBeanstalkEnvironmentOptionSetting { + s.Namespace = &v return s } -// SetMfaAuthenticated sets the MfaAuthenticated field's value. -func (s *AwsIamAccessKeySessionContextAttributes) SetMfaAuthenticated(v bool) *AwsIamAccessKeySessionContextAttributes { - s.MfaAuthenticated = &v +// SetOptionName sets the OptionName field's value. +func (s *AwsElasticBeanstalkEnvironmentOptionSetting) SetOptionName(v string) *AwsElasticBeanstalkEnvironmentOptionSetting { + s.OptionName = &v return s } -// Information about the entity that created the session. -type AwsIamAccessKeySessionContextSessionIssuer struct { - _ struct{} `type:"structure"` +// SetResourceName sets the ResourceName field's value. +func (s *AwsElasticBeanstalkEnvironmentOptionSetting) SetResourceName(v string) *AwsElasticBeanstalkEnvironmentOptionSetting { + s.ResourceName = &v + return s +} - // The identifier of the Amazon Web Services account that created the session. - AccountId *string `type:"string"` +// SetValue sets the Value field's value. +func (s *AwsElasticBeanstalkEnvironmentOptionSetting) SetValue(v string) *AwsElasticBeanstalkEnvironmentOptionSetting { + s.Value = &v + return s +} - // The ARN of the session. - Arn *string `type:"string"` +// Contains information about the tier of the environment. +type AwsElasticBeanstalkEnvironmentTier struct { + _ struct{} `type:"structure"` - // The principal ID of the principal (user, role, or group) that created the - // session. - PrincipalId *string `type:"string"` + // The name of the environment tier. Valid values are WebServer or Worker. + Name *string `type:"string"` - // The type of principal (user, role, or group) that created the session. + // The type of environment tier. Valid values are Standard or SQS/HTTP. Type *string `type:"string"` - // The name of the principal that created the session. - UserName *string `type:"string"` + // The version of the environment tier. + Version *string `type:"string"` } // String returns the string representation. @@ -23078,7 +23208,7 @@ type AwsIamAccessKeySessionContextSessionIssuer struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsIamAccessKeySessionContextSessionIssuer) String() string { +func (s AwsElasticBeanstalkEnvironmentTier) String() string { return awsutil.Prettify(s) } @@ -23087,49 +23217,82 @@ func (s AwsIamAccessKeySessionContextSessionIssuer) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsIamAccessKeySessionContextSessionIssuer) GoString() string { +func (s AwsElasticBeanstalkEnvironmentTier) GoString() string { return s.String() } -// SetAccountId sets the AccountId field's value. -func (s *AwsIamAccessKeySessionContextSessionIssuer) SetAccountId(v string) *AwsIamAccessKeySessionContextSessionIssuer { - s.AccountId = &v - return s -} - -// SetArn sets the Arn field's value. -func (s *AwsIamAccessKeySessionContextSessionIssuer) SetArn(v string) *AwsIamAccessKeySessionContextSessionIssuer { - s.Arn = &v - return s -} - -// SetPrincipalId sets the PrincipalId field's value. -func (s *AwsIamAccessKeySessionContextSessionIssuer) SetPrincipalId(v string) *AwsIamAccessKeySessionContextSessionIssuer { - s.PrincipalId = &v +// SetName sets the Name field's value. +func (s *AwsElasticBeanstalkEnvironmentTier) SetName(v string) *AwsElasticBeanstalkEnvironmentTier { + s.Name = &v return s } // SetType sets the Type field's value. -func (s *AwsIamAccessKeySessionContextSessionIssuer) SetType(v string) *AwsIamAccessKeySessionContextSessionIssuer { +func (s *AwsElasticBeanstalkEnvironmentTier) SetType(v string) *AwsElasticBeanstalkEnvironmentTier { s.Type = &v return s } -// SetUserName sets the UserName field's value. -func (s *AwsIamAccessKeySessionContextSessionIssuer) SetUserName(v string) *AwsIamAccessKeySessionContextSessionIssuer { - s.UserName = &v +// SetVersion sets the Version field's value. +func (s *AwsElasticBeanstalkEnvironmentTier) SetVersion(v string) *AwsElasticBeanstalkEnvironmentTier { + s.Version = &v return s } -// A managed policy that is attached to an IAM principal. -type AwsIamAttachedManagedPolicy struct { +// Information about an Elasticsearch domain. +type AwsElasticsearchDomainDetails struct { _ struct{} `type:"structure"` - // The ARN of the policy. - PolicyArn *string `type:"string"` + // IAM policy document specifying the access policies for the new Elasticsearch + // domain. + AccessPolicies *string `type:"string"` - // The name of the policy. - PolicyName *string `type:"string"` + // Additional options for the domain endpoint. + DomainEndpointOptions *AwsElasticsearchDomainDomainEndpointOptions `type:"structure"` + + // Unique identifier for an Elasticsearch domain. + DomainId *string `type:"string"` + + // Name of an Elasticsearch domain. + // + // Domain names are unique across all domains owned by the same account within + // an Amazon Web Services Region. + // + // Domain names must start with a lowercase letter and must be between 3 and + // 28 characters. + // + // Valid characters are a-z (lowercase only), 0-9, and – (hyphen). + DomainName *string `type:"string"` + + // Information about an OpenSearch cluster configuration. + ElasticsearchClusterConfig *AwsElasticsearchDomainElasticsearchClusterConfigDetails `type:"structure"` + + // OpenSearch version. + ElasticsearchVersion *string `type:"string"` + + // Details about the configuration for encryption at rest. + EncryptionAtRestOptions *AwsElasticsearchDomainEncryptionAtRestOptions `type:"structure"` + + // Domain-specific endpoint used to submit index, search, and data upload requests + // to an Elasticsearch domain. + // + // The endpoint is a service URL. + Endpoint *string `type:"string"` + + // The key-value pair that exists if the Elasticsearch domain uses VPC endpoints. + Endpoints map[string]*string `type:"map"` + + // Configures the CloudWatch Logs to publish for the Elasticsearch domain. + LogPublishingOptions *AwsElasticsearchDomainLogPublishingOptions `type:"structure"` + + // Details about the configuration for node-to-node encryption. + NodeToNodeEncryptionOptions *AwsElasticsearchDomainNodeToNodeEncryptionOptions `type:"structure"` + + // Information about the status of a domain relative to the latest service software. + ServiceSoftwareOptions *AwsElasticsearchDomainServiceSoftwareOptions `type:"structure"` + + // Information that OpenSearch derives based on VPCOptions for the domain. + VPCOptions *AwsElasticsearchDomainVPCOptions `type:"structure"` } // String returns the string representation. @@ -23137,7 +23300,7 @@ type AwsIamAttachedManagedPolicy struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsIamAttachedManagedPolicy) String() string { +func (s AwsElasticsearchDomainDetails) String() string { return awsutil.Prettify(s) } @@ -23146,109 +23309,105 @@ func (s AwsIamAttachedManagedPolicy) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsIamAttachedManagedPolicy) GoString() string { +func (s AwsElasticsearchDomainDetails) GoString() string { return s.String() } -// SetPolicyArn sets the PolicyArn field's value. -func (s *AwsIamAttachedManagedPolicy) SetPolicyArn(v string) *AwsIamAttachedManagedPolicy { - s.PolicyArn = &v +// SetAccessPolicies sets the AccessPolicies field's value. +func (s *AwsElasticsearchDomainDetails) SetAccessPolicies(v string) *AwsElasticsearchDomainDetails { + s.AccessPolicies = &v return s } -// SetPolicyName sets the PolicyName field's value. -func (s *AwsIamAttachedManagedPolicy) SetPolicyName(v string) *AwsIamAttachedManagedPolicy { - s.PolicyName = &v +// SetDomainEndpointOptions sets the DomainEndpointOptions field's value. +func (s *AwsElasticsearchDomainDetails) SetDomainEndpointOptions(v *AwsElasticsearchDomainDomainEndpointOptions) *AwsElasticsearchDomainDetails { + s.DomainEndpointOptions = v return s } -// Contains details about an IAM group. -type AwsIamGroupDetails struct { - _ struct{} `type:"structure"` +// SetDomainId sets the DomainId field's value. +func (s *AwsElasticsearchDomainDetails) SetDomainId(v string) *AwsElasticsearchDomainDetails { + s.DomainId = &v + return s +} - // A list of the managed policies that are attached to the IAM group. - AttachedManagedPolicies []*AwsIamAttachedManagedPolicy `type:"list"` +// SetDomainName sets the DomainName field's value. +func (s *AwsElasticsearchDomainDetails) SetDomainName(v string) *AwsElasticsearchDomainDetails { + s.DomainName = &v + return s +} - // Indicates when the IAM group was created. - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - CreateDate *string `type:"string"` - - // The identifier of the IAM group. - GroupId *string `type:"string"` - - // The name of the IAM group. - GroupName *string `type:"string"` - - // The list of inline policies that are embedded in the group. - GroupPolicyList []*AwsIamGroupPolicy `type:"list"` - - // The path to the group. - Path *string `type:"string"` +// SetElasticsearchClusterConfig sets the ElasticsearchClusterConfig field's value. +func (s *AwsElasticsearchDomainDetails) SetElasticsearchClusterConfig(v *AwsElasticsearchDomainElasticsearchClusterConfigDetails) *AwsElasticsearchDomainDetails { + s.ElasticsearchClusterConfig = v + return s } -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsIamGroupDetails) String() string { - return awsutil.Prettify(s) +// SetElasticsearchVersion sets the ElasticsearchVersion field's value. +func (s *AwsElasticsearchDomainDetails) SetElasticsearchVersion(v string) *AwsElasticsearchDomainDetails { + s.ElasticsearchVersion = &v + return s } -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsIamGroupDetails) GoString() string { - return s.String() +// SetEncryptionAtRestOptions sets the EncryptionAtRestOptions field's value. +func (s *AwsElasticsearchDomainDetails) SetEncryptionAtRestOptions(v *AwsElasticsearchDomainEncryptionAtRestOptions) *AwsElasticsearchDomainDetails { + s.EncryptionAtRestOptions = v + return s } -// SetAttachedManagedPolicies sets the AttachedManagedPolicies field's value. -func (s *AwsIamGroupDetails) SetAttachedManagedPolicies(v []*AwsIamAttachedManagedPolicy) *AwsIamGroupDetails { - s.AttachedManagedPolicies = v +// SetEndpoint sets the Endpoint field's value. +func (s *AwsElasticsearchDomainDetails) SetEndpoint(v string) *AwsElasticsearchDomainDetails { + s.Endpoint = &v return s } -// SetCreateDate sets the CreateDate field's value. -func (s *AwsIamGroupDetails) SetCreateDate(v string) *AwsIamGroupDetails { - s.CreateDate = &v +// SetEndpoints sets the Endpoints field's value. +func (s *AwsElasticsearchDomainDetails) SetEndpoints(v map[string]*string) *AwsElasticsearchDomainDetails { + s.Endpoints = v return s } -// SetGroupId sets the GroupId field's value. -func (s *AwsIamGroupDetails) SetGroupId(v string) *AwsIamGroupDetails { - s.GroupId = &v +// SetLogPublishingOptions sets the LogPublishingOptions field's value. +func (s *AwsElasticsearchDomainDetails) SetLogPublishingOptions(v *AwsElasticsearchDomainLogPublishingOptions) *AwsElasticsearchDomainDetails { + s.LogPublishingOptions = v return s } -// SetGroupName sets the GroupName field's value. -func (s *AwsIamGroupDetails) SetGroupName(v string) *AwsIamGroupDetails { - s.GroupName = &v +// SetNodeToNodeEncryptionOptions sets the NodeToNodeEncryptionOptions field's value. +func (s *AwsElasticsearchDomainDetails) SetNodeToNodeEncryptionOptions(v *AwsElasticsearchDomainNodeToNodeEncryptionOptions) *AwsElasticsearchDomainDetails { + s.NodeToNodeEncryptionOptions = v return s } -// SetGroupPolicyList sets the GroupPolicyList field's value. -func (s *AwsIamGroupDetails) SetGroupPolicyList(v []*AwsIamGroupPolicy) *AwsIamGroupDetails { - s.GroupPolicyList = v +// SetServiceSoftwareOptions sets the ServiceSoftwareOptions field's value. +func (s *AwsElasticsearchDomainDetails) SetServiceSoftwareOptions(v *AwsElasticsearchDomainServiceSoftwareOptions) *AwsElasticsearchDomainDetails { + s.ServiceSoftwareOptions = v return s } -// SetPath sets the Path field's value. -func (s *AwsIamGroupDetails) SetPath(v string) *AwsIamGroupDetails { - s.Path = &v +// SetVPCOptions sets the VPCOptions field's value. +func (s *AwsElasticsearchDomainDetails) SetVPCOptions(v *AwsElasticsearchDomainVPCOptions) *AwsElasticsearchDomainDetails { + s.VPCOptions = v return s } -// A managed policy that is attached to the IAM group. -type AwsIamGroupPolicy struct { +// Additional options for the domain endpoint, such as whether to require HTTPS +// for all traffic. +type AwsElasticsearchDomainDomainEndpointOptions struct { _ struct{} `type:"structure"` - // The name of the policy. - PolicyName *string `type:"string"` + // Whether to require that all traffic to the domain arrive over HTTPS. + EnforceHTTPS *bool `type:"boolean"` + + // The TLS security policy to apply to the HTTPS endpoint of the OpenSearch + // domain. + // + // Valid values: + // + // * Policy-Min-TLS-1-0-2019-07, which supports TLSv1.0 and higher + // + // * Policy-Min-TLS-1-2-2019-07, which only supports TLSv1.2 + TLSSecurityPolicy *string `type:"string"` } // String returns the string representation. @@ -23256,7 +23415,7 @@ type AwsIamGroupPolicy struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsIamGroupPolicy) String() string { +func (s AwsElasticsearchDomainDomainEndpointOptions) String() string { return awsutil.Prettify(s) } @@ -23265,41 +23424,63 @@ func (s AwsIamGroupPolicy) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsIamGroupPolicy) GoString() string { +func (s AwsElasticsearchDomainDomainEndpointOptions) GoString() string { return s.String() } -// SetPolicyName sets the PolicyName field's value. -func (s *AwsIamGroupPolicy) SetPolicyName(v string) *AwsIamGroupPolicy { - s.PolicyName = &v +// SetEnforceHTTPS sets the EnforceHTTPS field's value. +func (s *AwsElasticsearchDomainDomainEndpointOptions) SetEnforceHTTPS(v bool) *AwsElasticsearchDomainDomainEndpointOptions { + s.EnforceHTTPS = &v return s } -// Information about an instance profile. -type AwsIamInstanceProfile struct { +// SetTLSSecurityPolicy sets the TLSSecurityPolicy field's value. +func (s *AwsElasticsearchDomainDomainEndpointOptions) SetTLSSecurityPolicy(v string) *AwsElasticsearchDomainDomainEndpointOptions { + s.TLSSecurityPolicy = &v + return s +} + +// details about the configuration of an OpenSearch cluster. +type AwsElasticsearchDomainElasticsearchClusterConfigDetails struct { _ struct{} `type:"structure"` - // The ARN of the instance profile. - Arn *string `type:"string"` + // The number of instances to use for the master node. If this attribute is + // specified, then DedicatedMasterEnabled must be true. + DedicatedMasterCount *int64 `type:"integer"` - // Indicates when the instance profile was created. + // Whether to use a dedicated master node for the Elasticsearch domain. A dedicated + // master node performs cluster management tasks, but doesn't hold data or respond + // to data upload requests. + DedicatedMasterEnabled *bool `type:"boolean"` + + // The hardware configuration of the computer that hosts the dedicated master + // node. A sample value is m3.medium.elasticsearch. If this attribute is specified, + // then DedicatedMasterEnabled must be true. // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - CreateDate *string `type:"string"` + // For a list of valid values, see Supported instance types in Amazon OpenSearch + // Service (https://docs.aws.amazon.com/opensearch-service/latest/developerguide/supported-instance-types.html) + // in the Amazon OpenSearch Service Developer Guide. + DedicatedMasterType *string `type:"string"` - // The identifier of the instance profile. - InstanceProfileId *string `type:"string"` + // The number of data nodes to use in the Elasticsearch domain. + InstanceCount *int64 `type:"integer"` - // The name of the instance profile. - InstanceProfileName *string `type:"string"` + // The instance type for your data nodes. For example, m3.medium.elasticsearch. + // + // For a list of valid values, see Supported instance types in Amazon OpenSearch + // Service (https://docs.aws.amazon.com/opensearch-service/latest/developerguide/supported-instance-types.html) + // in the Amazon OpenSearch Service Developer Guide. + InstanceType *string `type:"string"` - // The path to the instance profile. - Path *string `type:"string"` + // Configuration options for zone awareness. Provided if ZoneAwarenessEnabled + // is true. + ZoneAwarenessConfig *AwsElasticsearchDomainElasticsearchClusterConfigZoneAwarenessConfigDetails `type:"structure"` - // The roles associated with the instance profile. - Roles []*AwsIamInstanceProfileRole `type:"list"` + // Whether to enable zone awareness for the Elasticsearch domain. When zone + // awareness is enabled, OpenSearch allocates the cluster's nodes and replica + // index shards across Availability Zones in the same Region. This prevents + // data loss and minimizes downtime if a node or data center fails. + ZoneAwarenessEnabled *bool `type:"boolean"` } // String returns the string representation. @@ -23307,7 +23488,7 @@ type AwsIamInstanceProfile struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsIamInstanceProfile) String() string { +func (s AwsElasticsearchDomainElasticsearchClusterConfigDetails) String() string { return awsutil.Prettify(s) } @@ -23316,91 +23497,94 @@ func (s AwsIamInstanceProfile) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsIamInstanceProfile) GoString() string { +func (s AwsElasticsearchDomainElasticsearchClusterConfigDetails) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *AwsIamInstanceProfile) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "AwsIamInstanceProfile"} - if s.Roles != nil { - for i, v := range s.Roles { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Roles", i), err.(request.ErrInvalidParams)) - } - } - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetDedicatedMasterCount sets the DedicatedMasterCount field's value. +func (s *AwsElasticsearchDomainElasticsearchClusterConfigDetails) SetDedicatedMasterCount(v int64) *AwsElasticsearchDomainElasticsearchClusterConfigDetails { + s.DedicatedMasterCount = &v + return s } -// SetArn sets the Arn field's value. -func (s *AwsIamInstanceProfile) SetArn(v string) *AwsIamInstanceProfile { - s.Arn = &v +// SetDedicatedMasterEnabled sets the DedicatedMasterEnabled field's value. +func (s *AwsElasticsearchDomainElasticsearchClusterConfigDetails) SetDedicatedMasterEnabled(v bool) *AwsElasticsearchDomainElasticsearchClusterConfigDetails { + s.DedicatedMasterEnabled = &v return s } -// SetCreateDate sets the CreateDate field's value. -func (s *AwsIamInstanceProfile) SetCreateDate(v string) *AwsIamInstanceProfile { - s.CreateDate = &v +// SetDedicatedMasterType sets the DedicatedMasterType field's value. +func (s *AwsElasticsearchDomainElasticsearchClusterConfigDetails) SetDedicatedMasterType(v string) *AwsElasticsearchDomainElasticsearchClusterConfigDetails { + s.DedicatedMasterType = &v return s } -// SetInstanceProfileId sets the InstanceProfileId field's value. -func (s *AwsIamInstanceProfile) SetInstanceProfileId(v string) *AwsIamInstanceProfile { - s.InstanceProfileId = &v +// SetInstanceCount sets the InstanceCount field's value. +func (s *AwsElasticsearchDomainElasticsearchClusterConfigDetails) SetInstanceCount(v int64) *AwsElasticsearchDomainElasticsearchClusterConfigDetails { + s.InstanceCount = &v return s } -// SetInstanceProfileName sets the InstanceProfileName field's value. -func (s *AwsIamInstanceProfile) SetInstanceProfileName(v string) *AwsIamInstanceProfile { - s.InstanceProfileName = &v +// SetInstanceType sets the InstanceType field's value. +func (s *AwsElasticsearchDomainElasticsearchClusterConfigDetails) SetInstanceType(v string) *AwsElasticsearchDomainElasticsearchClusterConfigDetails { + s.InstanceType = &v return s } -// SetPath sets the Path field's value. -func (s *AwsIamInstanceProfile) SetPath(v string) *AwsIamInstanceProfile { - s.Path = &v +// SetZoneAwarenessConfig sets the ZoneAwarenessConfig field's value. +func (s *AwsElasticsearchDomainElasticsearchClusterConfigDetails) SetZoneAwarenessConfig(v *AwsElasticsearchDomainElasticsearchClusterConfigZoneAwarenessConfigDetails) *AwsElasticsearchDomainElasticsearchClusterConfigDetails { + s.ZoneAwarenessConfig = v return s } -// SetRoles sets the Roles field's value. -func (s *AwsIamInstanceProfile) SetRoles(v []*AwsIamInstanceProfileRole) *AwsIamInstanceProfile { - s.Roles = v +// SetZoneAwarenessEnabled sets the ZoneAwarenessEnabled field's value. +func (s *AwsElasticsearchDomainElasticsearchClusterConfigDetails) SetZoneAwarenessEnabled(v bool) *AwsElasticsearchDomainElasticsearchClusterConfigDetails { + s.ZoneAwarenessEnabled = &v return s } -// Information about a role associated with an instance profile. -type AwsIamInstanceProfileRole struct { +// Configuration options for zone awareness. +type AwsElasticsearchDomainElasticsearchClusterConfigZoneAwarenessConfigDetails struct { _ struct{} `type:"structure"` - // The ARN of the role. - Arn *string `type:"string"` + // he number of Availability Zones that the domain uses. Valid values are 2 + // and 3. The default is 2. + AvailabilityZoneCount *int64 `type:"integer"` +} - // The policy that grants an entity permission to assume the role. - AssumeRolePolicyDocument *string `min:"1" type:"string"` +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsElasticsearchDomainElasticsearchClusterConfigZoneAwarenessConfigDetails) String() string { + return awsutil.Prettify(s) +} - // Indicates when the role was created. - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - CreateDate *string `type:"string"` +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsElasticsearchDomainElasticsearchClusterConfigZoneAwarenessConfigDetails) GoString() string { + return s.String() +} - // The path to the role. - Path *string `type:"string"` +// SetAvailabilityZoneCount sets the AvailabilityZoneCount field's value. +func (s *AwsElasticsearchDomainElasticsearchClusterConfigZoneAwarenessConfigDetails) SetAvailabilityZoneCount(v int64) *AwsElasticsearchDomainElasticsearchClusterConfigZoneAwarenessConfigDetails { + s.AvailabilityZoneCount = &v + return s +} - // The identifier of the role. - RoleId *string `type:"string"` +// Details about the configuration for encryption at rest. +type AwsElasticsearchDomainEncryptionAtRestOptions struct { + _ struct{} `type:"structure"` - // The name of the role. - RoleName *string `type:"string"` + // Whether encryption at rest is enabled. + Enabled *bool `type:"boolean"` + + // The KMS key ID. Takes the form 1a2a3a4-1a2a-3a4a-5a6a-1a2a3a4a5a6a. + KmsKeyId *string `type:"string"` } // String returns the string representation. @@ -23408,7 +23592,7 @@ type AwsIamInstanceProfileRole struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsIamInstanceProfileRole) String() string { +func (s AwsElasticsearchDomainEncryptionAtRestOptions) String() string { return awsutil.Prettify(s) } @@ -23417,69 +23601,81 @@ func (s AwsIamInstanceProfileRole) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsIamInstanceProfileRole) GoString() string { +func (s AwsElasticsearchDomainEncryptionAtRestOptions) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *AwsIamInstanceProfileRole) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "AwsIamInstanceProfileRole"} - if s.AssumeRolePolicyDocument != nil && len(*s.AssumeRolePolicyDocument) < 1 { - invalidParams.Add(request.NewErrParamMinLen("AssumeRolePolicyDocument", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetEnabled sets the Enabled field's value. +func (s *AwsElasticsearchDomainEncryptionAtRestOptions) SetEnabled(v bool) *AwsElasticsearchDomainEncryptionAtRestOptions { + s.Enabled = &v + return s } -// SetArn sets the Arn field's value. -func (s *AwsIamInstanceProfileRole) SetArn(v string) *AwsIamInstanceProfileRole { - s.Arn = &v +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *AwsElasticsearchDomainEncryptionAtRestOptions) SetKmsKeyId(v string) *AwsElasticsearchDomainEncryptionAtRestOptions { + s.KmsKeyId = &v return s } -// SetAssumeRolePolicyDocument sets the AssumeRolePolicyDocument field's value. -func (s *AwsIamInstanceProfileRole) SetAssumeRolePolicyDocument(v string) *AwsIamInstanceProfileRole { - s.AssumeRolePolicyDocument = &v - return s +// configures the CloudWatch Logs to publish for the Elasticsearch domain. +type AwsElasticsearchDomainLogPublishingOptions struct { + _ struct{} `type:"structure"` + + // The log configuration. + AuditLogs *AwsElasticsearchDomainLogPublishingOptionsLogConfig `type:"structure"` + + // Configures the OpenSearch index logs publishing. + IndexSlowLogs *AwsElasticsearchDomainLogPublishingOptionsLogConfig `type:"structure"` + + // Configures the OpenSearch search slow log publishing. + SearchSlowLogs *AwsElasticsearchDomainLogPublishingOptionsLogConfig `type:"structure"` } -// SetCreateDate sets the CreateDate field's value. -func (s *AwsIamInstanceProfileRole) SetCreateDate(v string) *AwsIamInstanceProfileRole { - s.CreateDate = &v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsElasticsearchDomainLogPublishingOptions) String() string { + return awsutil.Prettify(s) } -// SetPath sets the Path field's value. -func (s *AwsIamInstanceProfileRole) SetPath(v string) *AwsIamInstanceProfileRole { - s.Path = &v +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsElasticsearchDomainLogPublishingOptions) GoString() string { + return s.String() +} + +// SetAuditLogs sets the AuditLogs field's value. +func (s *AwsElasticsearchDomainLogPublishingOptions) SetAuditLogs(v *AwsElasticsearchDomainLogPublishingOptionsLogConfig) *AwsElasticsearchDomainLogPublishingOptions { + s.AuditLogs = v return s } -// SetRoleId sets the RoleId field's value. -func (s *AwsIamInstanceProfileRole) SetRoleId(v string) *AwsIamInstanceProfileRole { - s.RoleId = &v +// SetIndexSlowLogs sets the IndexSlowLogs field's value. +func (s *AwsElasticsearchDomainLogPublishingOptions) SetIndexSlowLogs(v *AwsElasticsearchDomainLogPublishingOptionsLogConfig) *AwsElasticsearchDomainLogPublishingOptions { + s.IndexSlowLogs = v return s } -// SetRoleName sets the RoleName field's value. -func (s *AwsIamInstanceProfileRole) SetRoleName(v string) *AwsIamInstanceProfileRole { - s.RoleName = &v +// SetSearchSlowLogs sets the SearchSlowLogs field's value. +func (s *AwsElasticsearchDomainLogPublishingOptions) SetSearchSlowLogs(v *AwsElasticsearchDomainLogPublishingOptionsLogConfig) *AwsElasticsearchDomainLogPublishingOptions { + s.SearchSlowLogs = v return s } -// Information about the policy used to set the permissions boundary for an -// IAM principal. -type AwsIamPermissionsBoundary struct { +// The log configuration. +type AwsElasticsearchDomainLogPublishingOptionsLogConfig struct { _ struct{} `type:"structure"` - // The ARN of the policy used to set the permissions boundary. - PermissionsBoundaryArn *string `type:"string"` + // The ARN of the CloudWatch Logs group to publish the logs to. + CloudWatchLogsLogGroupArn *string `type:"string"` - // The usage type for the permissions boundary. - PermissionsBoundaryType *string `type:"string"` + // Whether the log publishing is enabled. + Enabled *bool `type:"boolean"` } // String returns the string representation. @@ -23487,7 +23683,7 @@ type AwsIamPermissionsBoundary struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsIamPermissionsBoundary) String() string { +func (s AwsElasticsearchDomainLogPublishingOptionsLogConfig) String() string { return awsutil.Prettify(s) } @@ -23496,67 +23692,90 @@ func (s AwsIamPermissionsBoundary) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsIamPermissionsBoundary) GoString() string { +func (s AwsElasticsearchDomainLogPublishingOptionsLogConfig) GoString() string { return s.String() } -// SetPermissionsBoundaryArn sets the PermissionsBoundaryArn field's value. -func (s *AwsIamPermissionsBoundary) SetPermissionsBoundaryArn(v string) *AwsIamPermissionsBoundary { - s.PermissionsBoundaryArn = &v +// SetCloudWatchLogsLogGroupArn sets the CloudWatchLogsLogGroupArn field's value. +func (s *AwsElasticsearchDomainLogPublishingOptionsLogConfig) SetCloudWatchLogsLogGroupArn(v string) *AwsElasticsearchDomainLogPublishingOptionsLogConfig { + s.CloudWatchLogsLogGroupArn = &v return s } -// SetPermissionsBoundaryType sets the PermissionsBoundaryType field's value. -func (s *AwsIamPermissionsBoundary) SetPermissionsBoundaryType(v string) *AwsIamPermissionsBoundary { - s.PermissionsBoundaryType = &v +// SetEnabled sets the Enabled field's value. +func (s *AwsElasticsearchDomainLogPublishingOptionsLogConfig) SetEnabled(v bool) *AwsElasticsearchDomainLogPublishingOptionsLogConfig { + s.Enabled = &v return s } -// Represents an IAM permissions policy. -type AwsIamPolicyDetails struct { +// Details about the configuration for node-to-node encryption. +type AwsElasticsearchDomainNodeToNodeEncryptionOptions struct { _ struct{} `type:"structure"` - // The number of users, groups, and roles that the policy is attached to. - AttachmentCount *int64 `type:"integer"` + // Whether node-to-node encryption is enabled. + Enabled *bool `type:"boolean"` +} - // When the policy was created. - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - CreateDate *string `type:"string"` +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsElasticsearchDomainNodeToNodeEncryptionOptions) String() string { + return awsutil.Prettify(s) +} - // The identifier of the default version of the policy. - DefaultVersionId *string `type:"string"` +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsElasticsearchDomainNodeToNodeEncryptionOptions) GoString() string { + return s.String() +} - // A description of the policy. - Description *string `type:"string"` +// SetEnabled sets the Enabled field's value. +func (s *AwsElasticsearchDomainNodeToNodeEncryptionOptions) SetEnabled(v bool) *AwsElasticsearchDomainNodeToNodeEncryptionOptions { + s.Enabled = &v + return s +} - // Whether the policy can be attached to a user, group, or role. - IsAttachable *bool `type:"boolean"` +// Information about the state of the domain relative to the latest service +// software. +type AwsElasticsearchDomainServiceSoftwareOptions struct { + _ struct{} `type:"structure"` - // The path to the policy. - Path *string `type:"string"` + // The epoch time when the deployment window closes for required updates. After + // this time, Amazon OpenSearch Service schedules the software upgrade automatically. + AutomatedUpdateDate *string `type:"string"` - // The number of users and roles that use the policy to set the permissions - // boundary. - PermissionsBoundaryUsageCount *int64 `type:"integer"` + // Whether a request to update the domain can be canceled. + Cancellable *bool `type:"boolean"` - // The unique identifier of the policy. - PolicyId *string `type:"string"` + // The version of the service software that is currently installed on the domain. + CurrentVersion *string `type:"string"` - // The name of the policy. - PolicyName *string `type:"string"` + // A more detailed description of the service software status. + Description *string `type:"string"` - // List of versions of the policy. - PolicyVersionList []*AwsIamPolicyVersion `type:"list"` + // The most recent version of the service software. + NewVersion *string `type:"string"` - // When the policy was most recently updated. + // Whether a service software update is available for the domain. + UpdateAvailable *bool `type:"boolean"` + + // The status of the service software update. Valid values are as follows: // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - UpdateDate *string `type:"string"` + // * COMPLETED + // + // * ELIGIBLE + // + // * IN_PROGRESS + // + // * NOT_ELIGIBLE + // + // * PENDING_UPDATE + UpdateStatus *string `type:"string"` } // String returns the string representation. @@ -23564,7 +23783,7 @@ type AwsIamPolicyDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsIamPolicyDetails) String() string { +func (s AwsElasticsearchDomainServiceSoftwareOptions) String() string { return awsutil.Prettify(s) } @@ -23573,92 +23792,68 @@ func (s AwsIamPolicyDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsIamPolicyDetails) GoString() string { +func (s AwsElasticsearchDomainServiceSoftwareOptions) GoString() string { return s.String() } -// SetAttachmentCount sets the AttachmentCount field's value. -func (s *AwsIamPolicyDetails) SetAttachmentCount(v int64) *AwsIamPolicyDetails { - s.AttachmentCount = &v +// SetAutomatedUpdateDate sets the AutomatedUpdateDate field's value. +func (s *AwsElasticsearchDomainServiceSoftwareOptions) SetAutomatedUpdateDate(v string) *AwsElasticsearchDomainServiceSoftwareOptions { + s.AutomatedUpdateDate = &v return s } -// SetCreateDate sets the CreateDate field's value. -func (s *AwsIamPolicyDetails) SetCreateDate(v string) *AwsIamPolicyDetails { - s.CreateDate = &v +// SetCancellable sets the Cancellable field's value. +func (s *AwsElasticsearchDomainServiceSoftwareOptions) SetCancellable(v bool) *AwsElasticsearchDomainServiceSoftwareOptions { + s.Cancellable = &v return s } -// SetDefaultVersionId sets the DefaultVersionId field's value. -func (s *AwsIamPolicyDetails) SetDefaultVersionId(v string) *AwsIamPolicyDetails { - s.DefaultVersionId = &v +// SetCurrentVersion sets the CurrentVersion field's value. +func (s *AwsElasticsearchDomainServiceSoftwareOptions) SetCurrentVersion(v string) *AwsElasticsearchDomainServiceSoftwareOptions { + s.CurrentVersion = &v return s } // SetDescription sets the Description field's value. -func (s *AwsIamPolicyDetails) SetDescription(v string) *AwsIamPolicyDetails { +func (s *AwsElasticsearchDomainServiceSoftwareOptions) SetDescription(v string) *AwsElasticsearchDomainServiceSoftwareOptions { s.Description = &v return s } -// SetIsAttachable sets the IsAttachable field's value. -func (s *AwsIamPolicyDetails) SetIsAttachable(v bool) *AwsIamPolicyDetails { - s.IsAttachable = &v +// SetNewVersion sets the NewVersion field's value. +func (s *AwsElasticsearchDomainServiceSoftwareOptions) SetNewVersion(v string) *AwsElasticsearchDomainServiceSoftwareOptions { + s.NewVersion = &v return s } -// SetPath sets the Path field's value. -func (s *AwsIamPolicyDetails) SetPath(v string) *AwsIamPolicyDetails { - s.Path = &v +// SetUpdateAvailable sets the UpdateAvailable field's value. +func (s *AwsElasticsearchDomainServiceSoftwareOptions) SetUpdateAvailable(v bool) *AwsElasticsearchDomainServiceSoftwareOptions { + s.UpdateAvailable = &v return s } -// SetPermissionsBoundaryUsageCount sets the PermissionsBoundaryUsageCount field's value. -func (s *AwsIamPolicyDetails) SetPermissionsBoundaryUsageCount(v int64) *AwsIamPolicyDetails { - s.PermissionsBoundaryUsageCount = &v - return s -} - -// SetPolicyId sets the PolicyId field's value. -func (s *AwsIamPolicyDetails) SetPolicyId(v string) *AwsIamPolicyDetails { - s.PolicyId = &v - return s -} - -// SetPolicyName sets the PolicyName field's value. -func (s *AwsIamPolicyDetails) SetPolicyName(v string) *AwsIamPolicyDetails { - s.PolicyName = &v - return s -} - -// SetPolicyVersionList sets the PolicyVersionList field's value. -func (s *AwsIamPolicyDetails) SetPolicyVersionList(v []*AwsIamPolicyVersion) *AwsIamPolicyDetails { - s.PolicyVersionList = v - return s -} - -// SetUpdateDate sets the UpdateDate field's value. -func (s *AwsIamPolicyDetails) SetUpdateDate(v string) *AwsIamPolicyDetails { - s.UpdateDate = &v +// SetUpdateStatus sets the UpdateStatus field's value. +func (s *AwsElasticsearchDomainServiceSoftwareOptions) SetUpdateStatus(v string) *AwsElasticsearchDomainServiceSoftwareOptions { + s.UpdateStatus = &v return s } -// A version of an IAM policy. -type AwsIamPolicyVersion struct { +// Information that OpenSearch derives based on VPCOptions for the domain. +type AwsElasticsearchDomainVPCOptions struct { _ struct{} `type:"structure"` - // Indicates when the version was created. - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - CreateDate *string `type:"string"` + // The list of Availability Zones associated with the VPC subnets. + AvailabilityZones []*string `type:"list"` - // Whether the version is the default version. - IsDefaultVersion *bool `type:"boolean"` + // The list of security group IDs associated with the VPC endpoints for the + // domain. + SecurityGroupIds []*string `type:"list"` - // The identifier of the policy version. - VersionId *string `type:"string"` + // A list of subnet IDs associated with the VPC endpoints for the domain. + SubnetIds []*string `type:"list"` + + // ID for the VPC. + VPCId *string `type:"string"` } // String returns the string representation. @@ -23666,7 +23861,7 @@ type AwsIamPolicyVersion struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsIamPolicyVersion) String() string { +func (s AwsElasticsearchDomainVPCOptions) String() string { return awsutil.Prettify(s) } @@ -23675,67 +23870,44 @@ func (s AwsIamPolicyVersion) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsIamPolicyVersion) GoString() string { +func (s AwsElasticsearchDomainVPCOptions) GoString() string { return s.String() } -// SetCreateDate sets the CreateDate field's value. -func (s *AwsIamPolicyVersion) SetCreateDate(v string) *AwsIamPolicyVersion { - s.CreateDate = &v +// SetAvailabilityZones sets the AvailabilityZones field's value. +func (s *AwsElasticsearchDomainVPCOptions) SetAvailabilityZones(v []*string) *AwsElasticsearchDomainVPCOptions { + s.AvailabilityZones = v return s } -// SetIsDefaultVersion sets the IsDefaultVersion field's value. -func (s *AwsIamPolicyVersion) SetIsDefaultVersion(v bool) *AwsIamPolicyVersion { - s.IsDefaultVersion = &v +// SetSecurityGroupIds sets the SecurityGroupIds field's value. +func (s *AwsElasticsearchDomainVPCOptions) SetSecurityGroupIds(v []*string) *AwsElasticsearchDomainVPCOptions { + s.SecurityGroupIds = v return s } -// SetVersionId sets the VersionId field's value. -func (s *AwsIamPolicyVersion) SetVersionId(v string) *AwsIamPolicyVersion { - s.VersionId = &v +// SetSubnetIds sets the SubnetIds field's value. +func (s *AwsElasticsearchDomainVPCOptions) SetSubnetIds(v []*string) *AwsElasticsearchDomainVPCOptions { + s.SubnetIds = v return s } -// Contains information about an IAM role, including all of the role's policies. -type AwsIamRoleDetails struct { - _ struct{} `type:"structure"` - - // The trust policy that grants permission to assume the role. - AssumeRolePolicyDocument *string `min:"1" type:"string"` - - // The list of the managed policies that are attached to the role. - AttachedManagedPolicies []*AwsIamAttachedManagedPolicy `type:"list"` - - // Indicates when the role was created. - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - CreateDate *string `type:"string"` - - // The list of instance profiles that contain this role. - InstanceProfileList []*AwsIamInstanceProfile `type:"list"` - - // The maximum session duration (in seconds) that you want to set for the specified - // role. - MaxSessionDuration *int64 `type:"integer"` - - // The path to the role. - Path *string `type:"string"` - - // Information about the policy used to set the permissions boundary for an - // IAM principal. - PermissionsBoundary *AwsIamPermissionsBoundary `type:"structure"` +// SetVPCId sets the VPCId field's value. +func (s *AwsElasticsearchDomainVPCOptions) SetVPCId(v string) *AwsElasticsearchDomainVPCOptions { + s.VPCId = &v + return s +} - // The stable and unique string identifying the role. - RoleId *string `type:"string"` +// Contains information about a stickiness policy that was created using CreateAppCookieStickinessPolicy. +type AwsElbAppCookieStickinessPolicy struct { + _ struct{} `type:"structure"` - // The friendly name that identifies the role. - RoleName *string `type:"string"` + // The name of the application cookie used for stickiness. + CookieName *string `type:"string"` - // The list of inline policies that are embedded in the role. - RolePolicyList []*AwsIamRolePolicy `type:"list"` + // The mnemonic name for the policy being created. The name must be unique within + // the set of policies for the load balancer. + PolicyName *string `type:"string"` } // String returns the string representation. @@ -23743,7 +23915,7 @@ type AwsIamRoleDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsIamRoleDetails) String() string { +func (s AwsElbAppCookieStickinessPolicy) String() string { return awsutil.Prettify(s) } @@ -23752,98 +23924,33 @@ func (s AwsIamRoleDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsIamRoleDetails) GoString() string { +func (s AwsElbAppCookieStickinessPolicy) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *AwsIamRoleDetails) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "AwsIamRoleDetails"} - if s.AssumeRolePolicyDocument != nil && len(*s.AssumeRolePolicyDocument) < 1 { - invalidParams.Add(request.NewErrParamMinLen("AssumeRolePolicyDocument", 1)) - } - if s.InstanceProfileList != nil { - for i, v := range s.InstanceProfileList { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InstanceProfileList", i), err.(request.ErrInvalidParams)) - } - } - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetAssumeRolePolicyDocument sets the AssumeRolePolicyDocument field's value. -func (s *AwsIamRoleDetails) SetAssumeRolePolicyDocument(v string) *AwsIamRoleDetails { - s.AssumeRolePolicyDocument = &v - return s -} - -// SetAttachedManagedPolicies sets the AttachedManagedPolicies field's value. -func (s *AwsIamRoleDetails) SetAttachedManagedPolicies(v []*AwsIamAttachedManagedPolicy) *AwsIamRoleDetails { - s.AttachedManagedPolicies = v - return s -} - -// SetCreateDate sets the CreateDate field's value. -func (s *AwsIamRoleDetails) SetCreateDate(v string) *AwsIamRoleDetails { - s.CreateDate = &v - return s -} - -// SetInstanceProfileList sets the InstanceProfileList field's value. -func (s *AwsIamRoleDetails) SetInstanceProfileList(v []*AwsIamInstanceProfile) *AwsIamRoleDetails { - s.InstanceProfileList = v - return s -} - -// SetMaxSessionDuration sets the MaxSessionDuration field's value. -func (s *AwsIamRoleDetails) SetMaxSessionDuration(v int64) *AwsIamRoleDetails { - s.MaxSessionDuration = &v - return s -} - -// SetPath sets the Path field's value. -func (s *AwsIamRoleDetails) SetPath(v string) *AwsIamRoleDetails { - s.Path = &v - return s -} - -// SetPermissionsBoundary sets the PermissionsBoundary field's value. -func (s *AwsIamRoleDetails) SetPermissionsBoundary(v *AwsIamPermissionsBoundary) *AwsIamRoleDetails { - s.PermissionsBoundary = v - return s -} - -// SetRoleId sets the RoleId field's value. -func (s *AwsIamRoleDetails) SetRoleId(v string) *AwsIamRoleDetails { - s.RoleId = &v - return s -} - -// SetRoleName sets the RoleName field's value. -func (s *AwsIamRoleDetails) SetRoleName(v string) *AwsIamRoleDetails { - s.RoleName = &v +// SetCookieName sets the CookieName field's value. +func (s *AwsElbAppCookieStickinessPolicy) SetCookieName(v string) *AwsElbAppCookieStickinessPolicy { + s.CookieName = &v return s } -// SetRolePolicyList sets the RolePolicyList field's value. -func (s *AwsIamRoleDetails) SetRolePolicyList(v []*AwsIamRolePolicy) *AwsIamRoleDetails { - s.RolePolicyList = v +// SetPolicyName sets the PolicyName field's value. +func (s *AwsElbAppCookieStickinessPolicy) SetPolicyName(v string) *AwsElbAppCookieStickinessPolicy { + s.PolicyName = &v return s } -// An inline policy that is embedded in the role. -type AwsIamRolePolicy struct { +// Contains information about a stickiness policy that was created using CreateLBCookieStickinessPolicy. +type AwsElbLbCookieStickinessPolicy struct { _ struct{} `type:"structure"` - // The name of the policy. + // The amount of time, in seconds, after which the cookie is considered stale. + // If an expiration period is not specified, the stickiness session lasts for + // the duration of the browser session. + CookieExpirationPeriod *int64 `type:"long"` + + // The name of the policy. The name must be unique within the set of policies + // for the load balancer. PolicyName *string `type:"string"` } @@ -23852,7 +23959,7 @@ type AwsIamRolePolicy struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsIamRolePolicy) String() string { +func (s AwsElbLbCookieStickinessPolicy) String() string { return awsutil.Prettify(s) } @@ -23861,47 +23968,41 @@ func (s AwsIamRolePolicy) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsIamRolePolicy) GoString() string { +func (s AwsElbLbCookieStickinessPolicy) GoString() string { return s.String() } +// SetCookieExpirationPeriod sets the CookieExpirationPeriod field's value. +func (s *AwsElbLbCookieStickinessPolicy) SetCookieExpirationPeriod(v int64) *AwsElbLbCookieStickinessPolicy { + s.CookieExpirationPeriod = &v + return s +} + // SetPolicyName sets the PolicyName field's value. -func (s *AwsIamRolePolicy) SetPolicyName(v string) *AwsIamRolePolicy { +func (s *AwsElbLbCookieStickinessPolicy) SetPolicyName(v string) *AwsElbLbCookieStickinessPolicy { s.PolicyName = &v return s } -// Information about an IAM user. -type AwsIamUserDetails struct { +// Contains information about the access log configuration for the load balancer. +type AwsElbLoadBalancerAccessLog struct { _ struct{} `type:"structure"` - // A list of the managed policies that are attached to the user. - AttachedManagedPolicies []*AwsIamAttachedManagedPolicy `type:"list"` - - // Indicates when the user was created. + // The interval in minutes for publishing the access logs. // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - CreateDate *string `type:"string"` - - // A list of IAM groups that the user belongs to. - GroupList []*string `type:"list"` - - // The path to the user. - Path *string `type:"string"` - - // The permissions boundary for the user. - PermissionsBoundary *AwsIamPermissionsBoundary `type:"structure"` + // You can publish access logs either every 5 minutes or every 60 minutes. + EmitInterval *int64 `type:"integer"` - // The unique identifier for the user. - UserId *string `type:"string"` + // Indicates whether access logs are enabled for the load balancer. + Enabled *bool `type:"boolean"` - // The name of the user. - UserName *string `type:"string"` + // The name of the S3 bucket where the access logs are stored. + S3BucketName *string `type:"string"` - // The list of inline policies that are embedded in the user. - UserPolicyList []*AwsIamUserPolicy `type:"list"` + // The logical hierarchy that was created for the S3 bucket. + // + // If a prefix is not provided, the log is placed at the root level of the bucket. + S3BucketPrefix *string `type:"string"` } // String returns the string representation. @@ -23909,7 +24010,7 @@ type AwsIamUserDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsIamUserDetails) String() string { +func (s AwsElbLoadBalancerAccessLog) String() string { return awsutil.Prettify(s) } @@ -23918,64 +24019,43 @@ func (s AwsIamUserDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsIamUserDetails) GoString() string { +func (s AwsElbLoadBalancerAccessLog) GoString() string { return s.String() } -// SetAttachedManagedPolicies sets the AttachedManagedPolicies field's value. -func (s *AwsIamUserDetails) SetAttachedManagedPolicies(v []*AwsIamAttachedManagedPolicy) *AwsIamUserDetails { - s.AttachedManagedPolicies = v - return s -} - -// SetCreateDate sets the CreateDate field's value. -func (s *AwsIamUserDetails) SetCreateDate(v string) *AwsIamUserDetails { - s.CreateDate = &v - return s -} - -// SetGroupList sets the GroupList field's value. -func (s *AwsIamUserDetails) SetGroupList(v []*string) *AwsIamUserDetails { - s.GroupList = v - return s -} - -// SetPath sets the Path field's value. -func (s *AwsIamUserDetails) SetPath(v string) *AwsIamUserDetails { - s.Path = &v - return s -} - -// SetPermissionsBoundary sets the PermissionsBoundary field's value. -func (s *AwsIamUserDetails) SetPermissionsBoundary(v *AwsIamPermissionsBoundary) *AwsIamUserDetails { - s.PermissionsBoundary = v +// SetEmitInterval sets the EmitInterval field's value. +func (s *AwsElbLoadBalancerAccessLog) SetEmitInterval(v int64) *AwsElbLoadBalancerAccessLog { + s.EmitInterval = &v return s } -// SetUserId sets the UserId field's value. -func (s *AwsIamUserDetails) SetUserId(v string) *AwsIamUserDetails { - s.UserId = &v +// SetEnabled sets the Enabled field's value. +func (s *AwsElbLoadBalancerAccessLog) SetEnabled(v bool) *AwsElbLoadBalancerAccessLog { + s.Enabled = &v return s } -// SetUserName sets the UserName field's value. -func (s *AwsIamUserDetails) SetUserName(v string) *AwsIamUserDetails { - s.UserName = &v +// SetS3BucketName sets the S3BucketName field's value. +func (s *AwsElbLoadBalancerAccessLog) SetS3BucketName(v string) *AwsElbLoadBalancerAccessLog { + s.S3BucketName = &v return s } -// SetUserPolicyList sets the UserPolicyList field's value. -func (s *AwsIamUserDetails) SetUserPolicyList(v []*AwsIamUserPolicy) *AwsIamUserDetails { - s.UserPolicyList = v +// SetS3BucketPrefix sets the S3BucketPrefix field's value. +func (s *AwsElbLoadBalancerAccessLog) SetS3BucketPrefix(v string) *AwsElbLoadBalancerAccessLog { + s.S3BucketPrefix = &v return s } -// Information about an inline policy that is embedded in the user. -type AwsIamUserPolicy struct { +// Provides information about additional attributes for the load balancer. +type AwsElbLoadBalancerAdditionalAttribute struct { _ struct{} `type:"structure"` - // The name of the policy. - PolicyName *string `type:"string"` + // The name of the attribute. + Key *string `type:"string"` + + // The value of the attribute. + Value *string `type:"string"` } // String returns the string representation. @@ -23983,7 +24063,7 @@ type AwsIamUserPolicy struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsIamUserPolicy) String() string { +func (s AwsElbLoadBalancerAdditionalAttribute) String() string { return awsutil.Prettify(s) } @@ -23992,38 +24072,54 @@ func (s AwsIamUserPolicy) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsIamUserPolicy) GoString() string { +func (s AwsElbLoadBalancerAdditionalAttribute) GoString() string { return s.String() } -// SetPolicyName sets the PolicyName field's value. -func (s *AwsIamUserPolicy) SetPolicyName(v string) *AwsIamUserPolicy { - s.PolicyName = &v +// SetKey sets the Key field's value. +func (s *AwsElbLoadBalancerAdditionalAttribute) SetKey(v string) *AwsElbLoadBalancerAdditionalAttribute { + s.Key = &v return s } -// Provides information about an Amazon Kinesis data stream. -type AwsKinesisStreamDetails struct { +// SetValue sets the Value field's value. +func (s *AwsElbLoadBalancerAdditionalAttribute) SetValue(v string) *AwsElbLoadBalancerAdditionalAttribute { + s.Value = &v + return s +} + +// Contains attributes for the load balancer. +type AwsElbLoadBalancerAttributes struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the Kinesis data stream. - Arn *string `type:"string"` + // Information about the access log configuration for the load balancer. + // + // If the access log is enabled, the load balancer captures detailed information + // about all requests. It delivers the information to a specified S3 bucket. + AccessLog *AwsElbLoadBalancerAccessLog `type:"structure"` - // The name of the Kinesis stream. If you don't specify a name, CloudFront generates - // a unique physical ID and uses that ID for the stream name. - Name *string `type:"string"` + // Any additional attributes for a load balancer. + AdditionalAttributes []*AwsElbLoadBalancerAdditionalAttribute `type:"list"` - // The number of hours for the data records that are stored in shards to remain - // accessible. - RetentionPeriodHours *int64 `type:"integer"` + // Information about the connection draining configuration for the load balancer. + // + // If connection draining is enabled, the load balancer allows existing requests + // to complete before it shifts traffic away from a deregistered or unhealthy + // instance. + ConnectionDraining *AwsElbLoadBalancerConnectionDraining `type:"structure"` - // The number of shards that the stream uses. - ShardCount *int64 `type:"integer"` + // Connection settings for the load balancer. + // + // If an idle timeout is configured, the load balancer allows connections to + // remain idle for the specified duration. When a connection is idle, no data + // is sent over the connection. + ConnectionSettings *AwsElbLoadBalancerConnectionSettings `type:"structure"` - // When specified, enables or updates server-side encryption using an KMS key - // for a specified stream. Removing this property from your stack template and - // updating your stack disables encryption. - StreamEncryption *AwsKinesisStreamStreamEncryptionDetails `type:"structure"` + // Cross-zone load balancing settings for the load balancer. + // + // If cross-zone load balancing is enabled, the load balancer routes the request + // traffic evenly across all instances regardless of the Availability Zones. + CrossZoneLoadBalancing *AwsElbLoadBalancerCrossZoneLoadBalancing `type:"structure"` } // String returns the string representation. @@ -24031,7 +24127,7 @@ type AwsKinesisStreamDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsKinesisStreamDetails) String() string { +func (s AwsElbLoadBalancerAttributes) String() string { return awsutil.Prettify(s) } @@ -24040,50 +24136,50 @@ func (s AwsKinesisStreamDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsKinesisStreamDetails) GoString() string { +func (s AwsElbLoadBalancerAttributes) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *AwsKinesisStreamDetails) SetArn(v string) *AwsKinesisStreamDetails { - s.Arn = &v +// SetAccessLog sets the AccessLog field's value. +func (s *AwsElbLoadBalancerAttributes) SetAccessLog(v *AwsElbLoadBalancerAccessLog) *AwsElbLoadBalancerAttributes { + s.AccessLog = v return s } -// SetName sets the Name field's value. -func (s *AwsKinesisStreamDetails) SetName(v string) *AwsKinesisStreamDetails { - s.Name = &v +// SetAdditionalAttributes sets the AdditionalAttributes field's value. +func (s *AwsElbLoadBalancerAttributes) SetAdditionalAttributes(v []*AwsElbLoadBalancerAdditionalAttribute) *AwsElbLoadBalancerAttributes { + s.AdditionalAttributes = v return s } -// SetRetentionPeriodHours sets the RetentionPeriodHours field's value. -func (s *AwsKinesisStreamDetails) SetRetentionPeriodHours(v int64) *AwsKinesisStreamDetails { - s.RetentionPeriodHours = &v +// SetConnectionDraining sets the ConnectionDraining field's value. +func (s *AwsElbLoadBalancerAttributes) SetConnectionDraining(v *AwsElbLoadBalancerConnectionDraining) *AwsElbLoadBalancerAttributes { + s.ConnectionDraining = v return s } -// SetShardCount sets the ShardCount field's value. -func (s *AwsKinesisStreamDetails) SetShardCount(v int64) *AwsKinesisStreamDetails { - s.ShardCount = &v +// SetConnectionSettings sets the ConnectionSettings field's value. +func (s *AwsElbLoadBalancerAttributes) SetConnectionSettings(v *AwsElbLoadBalancerConnectionSettings) *AwsElbLoadBalancerAttributes { + s.ConnectionSettings = v return s } -// SetStreamEncryption sets the StreamEncryption field's value. -func (s *AwsKinesisStreamDetails) SetStreamEncryption(v *AwsKinesisStreamStreamEncryptionDetails) *AwsKinesisStreamDetails { - s.StreamEncryption = v +// SetCrossZoneLoadBalancing sets the CrossZoneLoadBalancing field's value. +func (s *AwsElbLoadBalancerAttributes) SetCrossZoneLoadBalancing(v *AwsElbLoadBalancerCrossZoneLoadBalancing) *AwsElbLoadBalancerAttributes { + s.CrossZoneLoadBalancing = v return s } -// Provides information about stream encryption. -type AwsKinesisStreamStreamEncryptionDetails struct { +// Provides information about the configuration of an EC2 instance for the load +// balancer. +type AwsElbLoadBalancerBackendServerDescription struct { _ struct{} `type:"structure"` - // The encryption type to use. - EncryptionType *string `type:"string"` + // The port on which the EC2 instance is listening. + InstancePort *int64 `type:"integer"` - // The globally unique identifier for the customer-managed KMS key to use for - // encryption. - KeyId *string `type:"string"` + // The names of the policies that are enabled for the EC2 instance. + PolicyNames []*string `type:"list"` } // String returns the string representation. @@ -24091,7 +24187,7 @@ type AwsKinesisStreamStreamEncryptionDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsKinesisStreamStreamEncryptionDetails) String() string { +func (s AwsElbLoadBalancerBackendServerDescription) String() string { return awsutil.Prettify(s) } @@ -24100,73 +24196,33 @@ func (s AwsKinesisStreamStreamEncryptionDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsKinesisStreamStreamEncryptionDetails) GoString() string { +func (s AwsElbLoadBalancerBackendServerDescription) GoString() string { return s.String() } -// SetEncryptionType sets the EncryptionType field's value. -func (s *AwsKinesisStreamStreamEncryptionDetails) SetEncryptionType(v string) *AwsKinesisStreamStreamEncryptionDetails { - s.EncryptionType = &v +// SetInstancePort sets the InstancePort field's value. +func (s *AwsElbLoadBalancerBackendServerDescription) SetInstancePort(v int64) *AwsElbLoadBalancerBackendServerDescription { + s.InstancePort = &v return s } -// SetKeyId sets the KeyId field's value. -func (s *AwsKinesisStreamStreamEncryptionDetails) SetKeyId(v string) *AwsKinesisStreamStreamEncryptionDetails { - s.KeyId = &v +// SetPolicyNames sets the PolicyNames field's value. +func (s *AwsElbLoadBalancerBackendServerDescription) SetPolicyNames(v []*string) *AwsElbLoadBalancerBackendServerDescription { + s.PolicyNames = v return s } -// Contains metadata about an KMS key. -type AwsKmsKeyDetails struct { +// Contains information about the connection draining configuration for the +// load balancer. +type AwsElbLoadBalancerConnectionDraining struct { _ struct{} `type:"structure"` - // The twelve-digit account ID of the Amazon Web Services account that owns - // the KMS key. - AWSAccountId *string `type:"string"` - - // Indicates when the KMS key was created. - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - CreationDate *float64 `type:"double"` - - // A description of the KMS key. - Description *string `type:"string"` - - // The globally unique identifier for the KMS key. - KeyId *string `type:"string"` - - // The manager of the KMS key. KMS keys in your Amazon Web Services account - // are either customer managed or Amazon Web Services managed. - KeyManager *string `type:"string"` - - // Whether the key has key rotation enabled. - KeyRotationStatus *bool `type:"boolean"` - - // The state of the KMS key. Valid values are as follows: - // - // * Disabled - // - // * Enabled - // - // * PendingDeletion - // - // * PendingImport - // - // * Unavailable - KeyState *string `type:"string"` + // Indicates whether connection draining is enabled for the load balancer. + Enabled *bool `type:"boolean"` - // The source of the KMS key material. - // - // When this value is AWS_KMS, KMS created the key material. - // - // When this value is EXTERNAL, the key material was imported from your existing - // key management infrastructure or the KMS key lacks key material. - // - // When this value is AWS_CLOUDHSM, the key material was created in the CloudHSM - // cluster associated with a custom key store. - Origin *string `type:"string"` + // The maximum time, in seconds, to keep the existing connections open before + // deregistering the instances. + Timeout *int64 `type:"integer"` } // String returns the string representation. @@ -24174,7 +24230,7 @@ type AwsKmsKeyDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsKmsKeyDetails) String() string { +func (s AwsElbLoadBalancerConnectionDraining) String() string { return awsutil.Prettify(s) } @@ -24183,76 +24239,29 @@ func (s AwsKmsKeyDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsKmsKeyDetails) GoString() string { +func (s AwsElbLoadBalancerConnectionDraining) GoString() string { return s.String() } -// SetAWSAccountId sets the AWSAccountId field's value. -func (s *AwsKmsKeyDetails) SetAWSAccountId(v string) *AwsKmsKeyDetails { - s.AWSAccountId = &v - return s -} - -// SetCreationDate sets the CreationDate field's value. -func (s *AwsKmsKeyDetails) SetCreationDate(v float64) *AwsKmsKeyDetails { - s.CreationDate = &v - return s -} - -// SetDescription sets the Description field's value. -func (s *AwsKmsKeyDetails) SetDescription(v string) *AwsKmsKeyDetails { - s.Description = &v - return s -} - -// SetKeyId sets the KeyId field's value. -func (s *AwsKmsKeyDetails) SetKeyId(v string) *AwsKmsKeyDetails { - s.KeyId = &v - return s -} - -// SetKeyManager sets the KeyManager field's value. -func (s *AwsKmsKeyDetails) SetKeyManager(v string) *AwsKmsKeyDetails { - s.KeyManager = &v - return s -} - -// SetKeyRotationStatus sets the KeyRotationStatus field's value. -func (s *AwsKmsKeyDetails) SetKeyRotationStatus(v bool) *AwsKmsKeyDetails { - s.KeyRotationStatus = &v - return s -} - -// SetKeyState sets the KeyState field's value. -func (s *AwsKmsKeyDetails) SetKeyState(v string) *AwsKmsKeyDetails { - s.KeyState = &v +// SetEnabled sets the Enabled field's value. +func (s *AwsElbLoadBalancerConnectionDraining) SetEnabled(v bool) *AwsElbLoadBalancerConnectionDraining { + s.Enabled = &v return s } -// SetOrigin sets the Origin field's value. -func (s *AwsKmsKeyDetails) SetOrigin(v string) *AwsKmsKeyDetails { - s.Origin = &v +// SetTimeout sets the Timeout field's value. +func (s *AwsElbLoadBalancerConnectionDraining) SetTimeout(v int64) *AwsElbLoadBalancerConnectionDraining { + s.Timeout = &v return s } -// The code for the Lambda function. You can specify either an object in Amazon -// S3, or upload a deployment package directly. -type AwsLambdaFunctionCode struct { +// Contains connection settings for the load balancer. +type AwsElbLoadBalancerConnectionSettings struct { _ struct{} `type:"structure"` - // An Amazon S3 bucket in the same Amazon Web Services Region as your function. - // The bucket can be in a different Amazon Web Services account. - S3Bucket *string `type:"string"` - - // The Amazon S3 key of the deployment package. - S3Key *string `type:"string"` - - // For versioned objects, the version of the deployment package object to use. - S3ObjectVersion *string `type:"string"` - - // The base64-encoded contents of the deployment package. Amazon Web Services - // SDK and Amazon Web Services CLI clients handle the encoding for you. - ZipFile *string `type:"string"` + // The time, in seconds, that the connection can be idle (no data is sent over + // the connection) before it is closed by the load balancer. + IdleTimeout *int64 `type:"integer"` } // String returns the string representation. @@ -24260,7 +24269,7 @@ type AwsLambdaFunctionCode struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsLambdaFunctionCode) String() string { +func (s AwsElbLoadBalancerConnectionSettings) String() string { return awsutil.Prettify(s) } @@ -24269,40 +24278,22 @@ func (s AwsLambdaFunctionCode) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsLambdaFunctionCode) GoString() string { +func (s AwsElbLoadBalancerConnectionSettings) GoString() string { return s.String() } -// SetS3Bucket sets the S3Bucket field's value. -func (s *AwsLambdaFunctionCode) SetS3Bucket(v string) *AwsLambdaFunctionCode { - s.S3Bucket = &v - return s -} - -// SetS3Key sets the S3Key field's value. -func (s *AwsLambdaFunctionCode) SetS3Key(v string) *AwsLambdaFunctionCode { - s.S3Key = &v - return s -} - -// SetS3ObjectVersion sets the S3ObjectVersion field's value. -func (s *AwsLambdaFunctionCode) SetS3ObjectVersion(v string) *AwsLambdaFunctionCode { - s.S3ObjectVersion = &v - return s -} - -// SetZipFile sets the ZipFile field's value. -func (s *AwsLambdaFunctionCode) SetZipFile(v string) *AwsLambdaFunctionCode { - s.ZipFile = &v +// SetIdleTimeout sets the IdleTimeout field's value. +func (s *AwsElbLoadBalancerConnectionSettings) SetIdleTimeout(v int64) *AwsElbLoadBalancerConnectionSettings { + s.IdleTimeout = &v return s } -// The dead-letter queue for failed asynchronous invocations. -type AwsLambdaFunctionDeadLetterConfig struct { +// Contains cross-zone load balancing settings for the load balancer. +type AwsElbLoadBalancerCrossZoneLoadBalancing struct { _ struct{} `type:"structure"` - // The ARN of an SQS queue or SNS topic. - TargetArn *string `type:"string"` + // Indicates whether cross-zone load balancing is enabled for the load balancer. + Enabled *bool `type:"boolean"` } // String returns the string representation. @@ -24310,7 +24301,7 @@ type AwsLambdaFunctionDeadLetterConfig struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsLambdaFunctionDeadLetterConfig) String() string { +func (s AwsElbLoadBalancerCrossZoneLoadBalancing) String() string { return awsutil.Prettify(s) } @@ -24319,87 +24310,82 @@ func (s AwsLambdaFunctionDeadLetterConfig) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsLambdaFunctionDeadLetterConfig) GoString() string { +func (s AwsElbLoadBalancerCrossZoneLoadBalancing) GoString() string { return s.String() } -// SetTargetArn sets the TargetArn field's value. -func (s *AwsLambdaFunctionDeadLetterConfig) SetTargetArn(v string) *AwsLambdaFunctionDeadLetterConfig { - s.TargetArn = &v +// SetEnabled sets the Enabled field's value. +func (s *AwsElbLoadBalancerCrossZoneLoadBalancing) SetEnabled(v bool) *AwsElbLoadBalancerCrossZoneLoadBalancing { + s.Enabled = &v return s } -// Details about an Lambda function's configuration. -type AwsLambdaFunctionDetails struct { +// Contains details about a Classic Load Balancer. +type AwsElbLoadBalancerDetails struct { _ struct{} `type:"structure"` - // The instruction set architecture that the function uses. Valid values are - // x86_64 or arm64. - Architectures []*string `type:"list"` - - // An AwsLambdaFunctionCode object. - Code *AwsLambdaFunctionCode `type:"structure"` - - // The SHA256 hash of the function's deployment package. - CodeSha256 *string `type:"string"` - - // The function's dead letter queue. - DeadLetterConfig *AwsLambdaFunctionDeadLetterConfig `type:"structure"` - - // The function's environment variables. - Environment *AwsLambdaFunctionEnvironment `type:"structure"` + // The list of Availability Zones for the load balancer. + AvailabilityZones []*string `type:"list"` - // The name of the function. - FunctionName *string `type:"string"` + // Information about the configuration of the EC2 instances. + BackendServerDescriptions []*AwsElbLoadBalancerBackendServerDescription `type:"list"` - // The function that Lambda calls to begin executing your function. - Handler *string `type:"string"` + // The name of the Amazon Route 53 hosted zone for the load balancer. + CanonicalHostedZoneName *string `type:"string"` - // The KMS key that is used to encrypt the function's environment variables. - // This key is only returned if you've configured a customer managed customer - // managed key. - KmsKeyArn *string `type:"string"` + // The ID of the Amazon Route 53 hosted zone for the load balancer. + CanonicalHostedZoneNameID *string `type:"string"` - // Indicates when the function was last updated. + // Indicates when the load balancer was created. // // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot // contain spaces. For example, 2020-03-22T13:22:13.933Z. - LastModified *string `type:"string"` + CreatedTime *string `type:"string"` - // The function's layers. - Layers []*AwsLambdaFunctionLayer `type:"list"` + // The DNS name of the load balancer. + DnsName *string `type:"string"` - // For Lambda@Edge functions, the ARN of the master function. - MasterArn *string `type:"string"` + // Information about the health checks that are conducted on the load balancer. + HealthCheck *AwsElbLoadBalancerHealthCheck `type:"structure"` - // The memory that is allocated to the function. - MemorySize *int64 `type:"integer"` + // List of EC2 instances for the load balancer. + Instances []*AwsElbLoadBalancerInstance `type:"list"` - // The type of deployment package that's used to deploy the function code to - // Lambda. Set to Image for a container image and Zip for a .zip file archive. - PackageType *string `type:"string"` + // The policies that are enabled for the load balancer listeners. + ListenerDescriptions []*AwsElbLoadBalancerListenerDescription `type:"list"` - // The latest updated revision of the function or alias. - RevisionId *string `type:"string"` + // The attributes for a load balancer. + LoadBalancerAttributes *AwsElbLoadBalancerAttributes `type:"structure"` - // The function's execution role. - Role *string `type:"string"` + // The name of the load balancer. + LoadBalancerName *string `type:"string"` - // The runtime environment for the Lambda function. - Runtime *string `type:"string"` + // The policies for a load balancer. + Policies *AwsElbLoadBalancerPolicies `type:"structure"` - // The amount of time that Lambda allows a function to run before stopping it. - Timeout *int64 `type:"integer"` + // The type of load balancer. Only provided if the load balancer is in a VPC. + // + // If Scheme is internet-facing, the load balancer has a public DNS name that + // resolves to a public IP address. + // + // If Scheme is internal, the load balancer has a public DNS name that resolves + // to a private IP address. + Scheme *string `type:"string"` - // The function's X-Ray tracing configuration. - TracingConfig *AwsLambdaFunctionTracingConfig `type:"structure"` + // The security groups for the load balancer. Only provided if the load balancer + // is in a VPC. + SecurityGroups []*string `type:"list"` - // The version of the Lambda function. - Version *string `type:"string"` + // Information about the security group for the load balancer. This is the security + // group that is used for inbound rules. + SourceSecurityGroup *AwsElbLoadBalancerSourceSecurityGroup `type:"structure"` - // The function's networking configuration. - VpcConfig *AwsLambdaFunctionVpcConfig `type:"structure"` + // The list of subnet identifiers for the load balancer. + Subnets []*string `type:"list"` + + // The identifier of the VPC for the load balancer. + VpcId *string `type:"string"` } // String returns the string representation. @@ -24407,7 +24393,7 @@ type AwsLambdaFunctionDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsLambdaFunctionDetails) String() string { +func (s AwsElbLoadBalancerDetails) String() string { return awsutil.Prettify(s) } @@ -24416,139 +24402,146 @@ func (s AwsLambdaFunctionDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsLambdaFunctionDetails) GoString() string { +func (s AwsElbLoadBalancerDetails) GoString() string { return s.String() } -// SetArchitectures sets the Architectures field's value. -func (s *AwsLambdaFunctionDetails) SetArchitectures(v []*string) *AwsLambdaFunctionDetails { - s.Architectures = v +// SetAvailabilityZones sets the AvailabilityZones field's value. +func (s *AwsElbLoadBalancerDetails) SetAvailabilityZones(v []*string) *AwsElbLoadBalancerDetails { + s.AvailabilityZones = v return s } -// SetCode sets the Code field's value. -func (s *AwsLambdaFunctionDetails) SetCode(v *AwsLambdaFunctionCode) *AwsLambdaFunctionDetails { - s.Code = v +// SetBackendServerDescriptions sets the BackendServerDescriptions field's value. +func (s *AwsElbLoadBalancerDetails) SetBackendServerDescriptions(v []*AwsElbLoadBalancerBackendServerDescription) *AwsElbLoadBalancerDetails { + s.BackendServerDescriptions = v return s } -// SetCodeSha256 sets the CodeSha256 field's value. -func (s *AwsLambdaFunctionDetails) SetCodeSha256(v string) *AwsLambdaFunctionDetails { - s.CodeSha256 = &v +// SetCanonicalHostedZoneName sets the CanonicalHostedZoneName field's value. +func (s *AwsElbLoadBalancerDetails) SetCanonicalHostedZoneName(v string) *AwsElbLoadBalancerDetails { + s.CanonicalHostedZoneName = &v return s } -// SetDeadLetterConfig sets the DeadLetterConfig field's value. -func (s *AwsLambdaFunctionDetails) SetDeadLetterConfig(v *AwsLambdaFunctionDeadLetterConfig) *AwsLambdaFunctionDetails { - s.DeadLetterConfig = v +// SetCanonicalHostedZoneNameID sets the CanonicalHostedZoneNameID field's value. +func (s *AwsElbLoadBalancerDetails) SetCanonicalHostedZoneNameID(v string) *AwsElbLoadBalancerDetails { + s.CanonicalHostedZoneNameID = &v return s } -// SetEnvironment sets the Environment field's value. -func (s *AwsLambdaFunctionDetails) SetEnvironment(v *AwsLambdaFunctionEnvironment) *AwsLambdaFunctionDetails { - s.Environment = v +// SetCreatedTime sets the CreatedTime field's value. +func (s *AwsElbLoadBalancerDetails) SetCreatedTime(v string) *AwsElbLoadBalancerDetails { + s.CreatedTime = &v return s } -// SetFunctionName sets the FunctionName field's value. -func (s *AwsLambdaFunctionDetails) SetFunctionName(v string) *AwsLambdaFunctionDetails { - s.FunctionName = &v +// SetDnsName sets the DnsName field's value. +func (s *AwsElbLoadBalancerDetails) SetDnsName(v string) *AwsElbLoadBalancerDetails { + s.DnsName = &v return s } -// SetHandler sets the Handler field's value. -func (s *AwsLambdaFunctionDetails) SetHandler(v string) *AwsLambdaFunctionDetails { - s.Handler = &v +// SetHealthCheck sets the HealthCheck field's value. +func (s *AwsElbLoadBalancerDetails) SetHealthCheck(v *AwsElbLoadBalancerHealthCheck) *AwsElbLoadBalancerDetails { + s.HealthCheck = v return s } -// SetKmsKeyArn sets the KmsKeyArn field's value. -func (s *AwsLambdaFunctionDetails) SetKmsKeyArn(v string) *AwsLambdaFunctionDetails { - s.KmsKeyArn = &v +// SetInstances sets the Instances field's value. +func (s *AwsElbLoadBalancerDetails) SetInstances(v []*AwsElbLoadBalancerInstance) *AwsElbLoadBalancerDetails { + s.Instances = v return s } -// SetLastModified sets the LastModified field's value. -func (s *AwsLambdaFunctionDetails) SetLastModified(v string) *AwsLambdaFunctionDetails { - s.LastModified = &v +// SetListenerDescriptions sets the ListenerDescriptions field's value. +func (s *AwsElbLoadBalancerDetails) SetListenerDescriptions(v []*AwsElbLoadBalancerListenerDescription) *AwsElbLoadBalancerDetails { + s.ListenerDescriptions = v return s } -// SetLayers sets the Layers field's value. -func (s *AwsLambdaFunctionDetails) SetLayers(v []*AwsLambdaFunctionLayer) *AwsLambdaFunctionDetails { - s.Layers = v +// SetLoadBalancerAttributes sets the LoadBalancerAttributes field's value. +func (s *AwsElbLoadBalancerDetails) SetLoadBalancerAttributes(v *AwsElbLoadBalancerAttributes) *AwsElbLoadBalancerDetails { + s.LoadBalancerAttributes = v return s } -// SetMasterArn sets the MasterArn field's value. -func (s *AwsLambdaFunctionDetails) SetMasterArn(v string) *AwsLambdaFunctionDetails { - s.MasterArn = &v +// SetLoadBalancerName sets the LoadBalancerName field's value. +func (s *AwsElbLoadBalancerDetails) SetLoadBalancerName(v string) *AwsElbLoadBalancerDetails { + s.LoadBalancerName = &v return s } -// SetMemorySize sets the MemorySize field's value. -func (s *AwsLambdaFunctionDetails) SetMemorySize(v int64) *AwsLambdaFunctionDetails { - s.MemorySize = &v +// SetPolicies sets the Policies field's value. +func (s *AwsElbLoadBalancerDetails) SetPolicies(v *AwsElbLoadBalancerPolicies) *AwsElbLoadBalancerDetails { + s.Policies = v return s } -// SetPackageType sets the PackageType field's value. -func (s *AwsLambdaFunctionDetails) SetPackageType(v string) *AwsLambdaFunctionDetails { - s.PackageType = &v +// SetScheme sets the Scheme field's value. +func (s *AwsElbLoadBalancerDetails) SetScheme(v string) *AwsElbLoadBalancerDetails { + s.Scheme = &v return s } -// SetRevisionId sets the RevisionId field's value. -func (s *AwsLambdaFunctionDetails) SetRevisionId(v string) *AwsLambdaFunctionDetails { - s.RevisionId = &v +// SetSecurityGroups sets the SecurityGroups field's value. +func (s *AwsElbLoadBalancerDetails) SetSecurityGroups(v []*string) *AwsElbLoadBalancerDetails { + s.SecurityGroups = v return s } -// SetRole sets the Role field's value. -func (s *AwsLambdaFunctionDetails) SetRole(v string) *AwsLambdaFunctionDetails { - s.Role = &v +// SetSourceSecurityGroup sets the SourceSecurityGroup field's value. +func (s *AwsElbLoadBalancerDetails) SetSourceSecurityGroup(v *AwsElbLoadBalancerSourceSecurityGroup) *AwsElbLoadBalancerDetails { + s.SourceSecurityGroup = v return s } -// SetRuntime sets the Runtime field's value. -func (s *AwsLambdaFunctionDetails) SetRuntime(v string) *AwsLambdaFunctionDetails { - s.Runtime = &v +// SetSubnets sets the Subnets field's value. +func (s *AwsElbLoadBalancerDetails) SetSubnets(v []*string) *AwsElbLoadBalancerDetails { + s.Subnets = v return s } -// SetTimeout sets the Timeout field's value. -func (s *AwsLambdaFunctionDetails) SetTimeout(v int64) *AwsLambdaFunctionDetails { - s.Timeout = &v +// SetVpcId sets the VpcId field's value. +func (s *AwsElbLoadBalancerDetails) SetVpcId(v string) *AwsElbLoadBalancerDetails { + s.VpcId = &v return s } -// SetTracingConfig sets the TracingConfig field's value. -func (s *AwsLambdaFunctionDetails) SetTracingConfig(v *AwsLambdaFunctionTracingConfig) *AwsLambdaFunctionDetails { - s.TracingConfig = v - return s -} +// Contains information about the health checks that are conducted on the load +// balancer. +type AwsElbLoadBalancerHealthCheck struct { + _ struct{} `type:"structure"` -// SetVersion sets the Version field's value. -func (s *AwsLambdaFunctionDetails) SetVersion(v string) *AwsLambdaFunctionDetails { - s.Version = &v - return s -} + // The number of consecutive health check successes required before the instance + // is moved to the Healthy state. + HealthyThreshold *int64 `type:"integer"` -// SetVpcConfig sets the VpcConfig field's value. -func (s *AwsLambdaFunctionDetails) SetVpcConfig(v *AwsLambdaFunctionVpcConfig) *AwsLambdaFunctionDetails { - s.VpcConfig = v - return s -} + // The approximate interval, in seconds, between health checks of an individual + // instance. + Interval *int64 `type:"integer"` -// A function's environment variable settings. -type AwsLambdaFunctionEnvironment struct { - _ struct{} `type:"structure"` + // The instance that is being checked. The target specifies the protocol and + // port. The available protocols are TCP, SSL, HTTP, and HTTPS. The range of + // valid ports is 1 through 65535. + // + // For the HTTP and HTTPS protocols, the target also specifies the ping path. + // + // For the TCP protocol, the target is specified as TCP: . + // + // For the SSL protocol, the target is specified as SSL. . + // + // For the HTTP and HTTPS protocols, the target is specified as :/ . + Target *string `type:"string"` - // An AwsLambdaFunctionEnvironmentError object. - Error *AwsLambdaFunctionEnvironmentError `type:"structure"` + // The amount of time, in seconds, during which no response means a failed health + // check. + Timeout *int64 `type:"integer"` - // Environment variable key-value pairs. - Variables map[string]*string `type:"map"` + // The number of consecutive health check failures that must occur before the + // instance is moved to the Unhealthy state. + UnhealthyThreshold *int64 `type:"integer"` } // String returns the string representation. @@ -24556,7 +24549,7 @@ type AwsLambdaFunctionEnvironment struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsLambdaFunctionEnvironment) String() string { +func (s AwsElbLoadBalancerHealthCheck) String() string { return awsutil.Prettify(s) } @@ -24565,31 +24558,46 @@ func (s AwsLambdaFunctionEnvironment) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsLambdaFunctionEnvironment) GoString() string { +func (s AwsElbLoadBalancerHealthCheck) GoString() string { return s.String() } -// SetError sets the Error field's value. -func (s *AwsLambdaFunctionEnvironment) SetError(v *AwsLambdaFunctionEnvironmentError) *AwsLambdaFunctionEnvironment { - s.Error = v +// SetHealthyThreshold sets the HealthyThreshold field's value. +func (s *AwsElbLoadBalancerHealthCheck) SetHealthyThreshold(v int64) *AwsElbLoadBalancerHealthCheck { + s.HealthyThreshold = &v return s } -// SetVariables sets the Variables field's value. -func (s *AwsLambdaFunctionEnvironment) SetVariables(v map[string]*string) *AwsLambdaFunctionEnvironment { - s.Variables = v +// SetInterval sets the Interval field's value. +func (s *AwsElbLoadBalancerHealthCheck) SetInterval(v int64) *AwsElbLoadBalancerHealthCheck { + s.Interval = &v return s } -// Error messages for environment variables that could not be applied. -type AwsLambdaFunctionEnvironmentError struct { - _ struct{} `type:"structure"` +// SetTarget sets the Target field's value. +func (s *AwsElbLoadBalancerHealthCheck) SetTarget(v string) *AwsElbLoadBalancerHealthCheck { + s.Target = &v + return s +} - // The error code. - ErrorCode *string `type:"string"` +// SetTimeout sets the Timeout field's value. +func (s *AwsElbLoadBalancerHealthCheck) SetTimeout(v int64) *AwsElbLoadBalancerHealthCheck { + s.Timeout = &v + return s +} - // The error message. - Message *string `type:"string"` +// SetUnhealthyThreshold sets the UnhealthyThreshold field's value. +func (s *AwsElbLoadBalancerHealthCheck) SetUnhealthyThreshold(v int64) *AwsElbLoadBalancerHealthCheck { + s.UnhealthyThreshold = &v + return s +} + +// Provides information about an EC2 instance for a load balancer. +type AwsElbLoadBalancerInstance struct { + _ struct{} `type:"structure"` + + // The instance identifier. + InstanceId *string `type:"string"` } // String returns the string representation. @@ -24597,7 +24605,7 @@ type AwsLambdaFunctionEnvironmentError struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsLambdaFunctionEnvironmentError) String() string { +func (s AwsElbLoadBalancerInstance) String() string { return awsutil.Prettify(s) } @@ -24606,31 +24614,43 @@ func (s AwsLambdaFunctionEnvironmentError) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsLambdaFunctionEnvironmentError) GoString() string { +func (s AwsElbLoadBalancerInstance) GoString() string { return s.String() } -// SetErrorCode sets the ErrorCode field's value. -func (s *AwsLambdaFunctionEnvironmentError) SetErrorCode(v string) *AwsLambdaFunctionEnvironmentError { - s.ErrorCode = &v - return s -} - -// SetMessage sets the Message field's value. -func (s *AwsLambdaFunctionEnvironmentError) SetMessage(v string) *AwsLambdaFunctionEnvironmentError { - s.Message = &v +// SetInstanceId sets the InstanceId field's value. +func (s *AwsElbLoadBalancerInstance) SetInstanceId(v string) *AwsElbLoadBalancerInstance { + s.InstanceId = &v return s } -// An Lambda layer. -type AwsLambdaFunctionLayer struct { +// Information about a load balancer listener. +type AwsElbLoadBalancerListener struct { _ struct{} `type:"structure"` - // The ARN of the function layer. - Arn *string `type:"string"` + // The port on which the instance is listening. + InstancePort *int64 `type:"integer"` - // The size of the layer archive in bytes. - CodeSize *int64 `type:"integer"` + // The protocol to use to route traffic to instances. + // + // Valid values: HTTP | HTTPS | TCP | SSL + InstanceProtocol *string `type:"string"` + + // The port on which the load balancer is listening. + // + // On EC2-VPC, you can specify any port from the range 1-65535. + // + // On EC2-Classic, you can specify any port from the following list: 25, 80, + // 443, 465, 587, 1024-65535. + LoadBalancerPort *int64 `type:"integer"` + + // The load balancer transport protocol to use for routing. + // + // Valid values: HTTP | HTTPS | TCP | SSL + Protocol *string `type:"string"` + + // The ARN of the server certificate. + SslCertificateId *string `type:"string"` } // String returns the string representation. @@ -24638,7 +24658,7 @@ type AwsLambdaFunctionLayer struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsLambdaFunctionLayer) String() string { +func (s AwsElbLoadBalancerListener) String() string { return awsutil.Prettify(s) } @@ -24647,28 +24667,49 @@ func (s AwsLambdaFunctionLayer) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsLambdaFunctionLayer) GoString() string { +func (s AwsElbLoadBalancerListener) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *AwsLambdaFunctionLayer) SetArn(v string) *AwsLambdaFunctionLayer { - s.Arn = &v +// SetInstancePort sets the InstancePort field's value. +func (s *AwsElbLoadBalancerListener) SetInstancePort(v int64) *AwsElbLoadBalancerListener { + s.InstancePort = &v return s } -// SetCodeSize sets the CodeSize field's value. -func (s *AwsLambdaFunctionLayer) SetCodeSize(v int64) *AwsLambdaFunctionLayer { - s.CodeSize = &v +// SetInstanceProtocol sets the InstanceProtocol field's value. +func (s *AwsElbLoadBalancerListener) SetInstanceProtocol(v string) *AwsElbLoadBalancerListener { + s.InstanceProtocol = &v return s } -// The function's X-Ray tracing configuration. -type AwsLambdaFunctionTracingConfig struct { +// SetLoadBalancerPort sets the LoadBalancerPort field's value. +func (s *AwsElbLoadBalancerListener) SetLoadBalancerPort(v int64) *AwsElbLoadBalancerListener { + s.LoadBalancerPort = &v + return s +} + +// SetProtocol sets the Protocol field's value. +func (s *AwsElbLoadBalancerListener) SetProtocol(v string) *AwsElbLoadBalancerListener { + s.Protocol = &v + return s +} + +// SetSslCertificateId sets the SslCertificateId field's value. +func (s *AwsElbLoadBalancerListener) SetSslCertificateId(v string) *AwsElbLoadBalancerListener { + s.SslCertificateId = &v + return s +} + +// Lists the policies that are enabled for a load balancer listener. +type AwsElbLoadBalancerListenerDescription struct { _ struct{} `type:"structure"` - // The tracing mode. - Mode *string `type:"string"` + // Information about the listener. + Listener *AwsElbLoadBalancerListener `type:"structure"` + + // The policies enabled for the listener. + PolicyNames []*string `type:"list"` } // String returns the string representation. @@ -24676,7 +24717,7 @@ type AwsLambdaFunctionTracingConfig struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsLambdaFunctionTracingConfig) String() string { +func (s AwsElbLoadBalancerListenerDescription) String() string { return awsutil.Prettify(s) } @@ -24685,28 +24726,34 @@ func (s AwsLambdaFunctionTracingConfig) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsLambdaFunctionTracingConfig) GoString() string { +func (s AwsElbLoadBalancerListenerDescription) GoString() string { return s.String() } -// SetMode sets the Mode field's value. -func (s *AwsLambdaFunctionTracingConfig) SetMode(v string) *AwsLambdaFunctionTracingConfig { - s.Mode = &v +// SetListener sets the Listener field's value. +func (s *AwsElbLoadBalancerListenerDescription) SetListener(v *AwsElbLoadBalancerListener) *AwsElbLoadBalancerListenerDescription { + s.Listener = v return s } -// The VPC security groups and subnets that are attached to a Lambda function. -type AwsLambdaFunctionVpcConfig struct { +// SetPolicyNames sets the PolicyNames field's value. +func (s *AwsElbLoadBalancerListenerDescription) SetPolicyNames(v []*string) *AwsElbLoadBalancerListenerDescription { + s.PolicyNames = v + return s +} + +// Contains information about the policies for a load balancer. +type AwsElbLoadBalancerPolicies struct { _ struct{} `type:"structure"` - // A list of VPC security groups IDs. - SecurityGroupIds []*string `type:"list"` + // The stickiness policies that are created using CreateAppCookieStickinessPolicy. + AppCookieStickinessPolicies []*AwsElbAppCookieStickinessPolicy `type:"list"` - // A list of VPC subnet IDs. - SubnetIds []*string `type:"list"` + // The stickiness policies that are created using CreateLBCookieStickinessPolicy. + LbCookieStickinessPolicies []*AwsElbLbCookieStickinessPolicy `type:"list"` - // The ID of the VPC. - VpcId *string `type:"string"` + // The policies other than the stickiness policies. + OtherPolicies []*string `type:"list"` } // String returns the string representation. @@ -24714,7 +24761,7 @@ type AwsLambdaFunctionVpcConfig struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsLambdaFunctionVpcConfig) String() string { +func (s AwsElbLoadBalancerPolicies) String() string { return awsutil.Prettify(s) } @@ -24723,48 +24770,37 @@ func (s AwsLambdaFunctionVpcConfig) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsLambdaFunctionVpcConfig) GoString() string { +func (s AwsElbLoadBalancerPolicies) GoString() string { return s.String() } -// SetSecurityGroupIds sets the SecurityGroupIds field's value. -func (s *AwsLambdaFunctionVpcConfig) SetSecurityGroupIds(v []*string) *AwsLambdaFunctionVpcConfig { - s.SecurityGroupIds = v +// SetAppCookieStickinessPolicies sets the AppCookieStickinessPolicies field's value. +func (s *AwsElbLoadBalancerPolicies) SetAppCookieStickinessPolicies(v []*AwsElbAppCookieStickinessPolicy) *AwsElbLoadBalancerPolicies { + s.AppCookieStickinessPolicies = v return s } -// SetSubnetIds sets the SubnetIds field's value. -func (s *AwsLambdaFunctionVpcConfig) SetSubnetIds(v []*string) *AwsLambdaFunctionVpcConfig { - s.SubnetIds = v +// SetLbCookieStickinessPolicies sets the LbCookieStickinessPolicies field's value. +func (s *AwsElbLoadBalancerPolicies) SetLbCookieStickinessPolicies(v []*AwsElbLbCookieStickinessPolicy) *AwsElbLoadBalancerPolicies { + s.LbCookieStickinessPolicies = v return s } -// SetVpcId sets the VpcId field's value. -func (s *AwsLambdaFunctionVpcConfig) SetVpcId(v string) *AwsLambdaFunctionVpcConfig { - s.VpcId = &v +// SetOtherPolicies sets the OtherPolicies field's value. +func (s *AwsElbLoadBalancerPolicies) SetOtherPolicies(v []*string) *AwsElbLoadBalancerPolicies { + s.OtherPolicies = v return s } -// Details about a Lambda layer version. -type AwsLambdaLayerVersionDetails struct { +// Contains information about the security group for the load balancer. +type AwsElbLoadBalancerSourceSecurityGroup struct { _ struct{} `type:"structure"` - // The layer's compatible runtimes. Maximum number of five items. - // - // Valid values: nodejs10.x | nodejs12.x | java8 | java11 | python2.7 | python3.6 - // | python3.7 | python3.8 | dotnetcore1.0 | dotnetcore2.1 | go1.x | ruby2.5 - // | provided - CompatibleRuntimes []*string `type:"list"` - - // Indicates when the version was created. - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - CreatedDate *string `type:"string"` + // The name of the security group. + GroupName *string `type:"string"` - // The version number. - Version *int64 `type:"long"` + // The owner of the security group. + OwnerAlias *string `type:"string"` } // String returns the string representation. @@ -24772,7 +24808,7 @@ type AwsLambdaLayerVersionDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsLambdaLayerVersionDetails) String() string { +func (s AwsElbLoadBalancerSourceSecurityGroup) String() string { return awsutil.Prettify(s) } @@ -24781,38 +24817,31 @@ func (s AwsLambdaLayerVersionDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsLambdaLayerVersionDetails) GoString() string { +func (s AwsElbLoadBalancerSourceSecurityGroup) GoString() string { return s.String() } -// SetCompatibleRuntimes sets the CompatibleRuntimes field's value. -func (s *AwsLambdaLayerVersionDetails) SetCompatibleRuntimes(v []*string) *AwsLambdaLayerVersionDetails { - s.CompatibleRuntimes = v - return s -} - -// SetCreatedDate sets the CreatedDate field's value. -func (s *AwsLambdaLayerVersionDetails) SetCreatedDate(v string) *AwsLambdaLayerVersionDetails { - s.CreatedDate = &v +// SetGroupName sets the GroupName field's value. +func (s *AwsElbLoadBalancerSourceSecurityGroup) SetGroupName(v string) *AwsElbLoadBalancerSourceSecurityGroup { + s.GroupName = &v return s } -// SetVersion sets the Version field's value. -func (s *AwsLambdaLayerVersionDetails) SetVersion(v int64) *AwsLambdaLayerVersionDetails { - s.Version = &v +// SetOwnerAlias sets the OwnerAlias field's value. +func (s *AwsElbLoadBalancerSourceSecurityGroup) SetOwnerAlias(v string) *AwsElbLoadBalancerSourceSecurityGroup { + s.OwnerAlias = &v return s } -// Details for a volume mount point that's used in a container definition. -type AwsMountPoint struct { +// A load balancer attribute. +type AwsElbv2LoadBalancerAttribute struct { _ struct{} `type:"structure"` - // The path on the container to mount the host volume at. - ContainerPath *string `type:"string"` + // The name of the load balancer attribute. + Key *string `type:"string"` - // The name of the volume to mount. Must be a volume name referenced in the - // name parameter of task definition volume. - SourceVolume *string `type:"string"` + // The value of the load balancer attribute. + Value *string `type:"string"` } // String returns the string representation. @@ -24820,7 +24849,7 @@ type AwsMountPoint struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsMountPoint) String() string { +func (s AwsElbv2LoadBalancerAttribute) String() string { return awsutil.Prettify(s) } @@ -24829,58 +24858,63 @@ func (s AwsMountPoint) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsMountPoint) GoString() string { +func (s AwsElbv2LoadBalancerAttribute) GoString() string { return s.String() } -// SetContainerPath sets the ContainerPath field's value. -func (s *AwsMountPoint) SetContainerPath(v string) *AwsMountPoint { - s.ContainerPath = &v +// SetKey sets the Key field's value. +func (s *AwsElbv2LoadBalancerAttribute) SetKey(v string) *AwsElbv2LoadBalancerAttribute { + s.Key = &v return s } -// SetSourceVolume sets the SourceVolume field's value. -func (s *AwsMountPoint) SetSourceVolume(v string) *AwsMountPoint { - s.SourceVolume = &v +// SetValue sets the Value field's value. +func (s *AwsElbv2LoadBalancerAttribute) SetValue(v string) *AwsElbv2LoadBalancerAttribute { + s.Value = &v return s } -// Details about an Network Firewall firewall. -type AwsNetworkFirewallFirewallDetails struct { +// Information about a load balancer. +type AwsElbv2LoadBalancerDetails struct { _ struct{} `type:"structure"` - // Whether the firewall is protected from deletion. If set to true, then the - // firewall cannot be deleted. - DeleteProtection *bool `type:"boolean"` + // The Availability Zones for the load balancer. + AvailabilityZones []*AvailabilityZone `type:"list"` - // A description of the firewall. - Description *string `type:"string"` + // The ID of the Amazon Route 53 hosted zone associated with the load balancer. + CanonicalHostedZoneId *string `type:"string"` - // The ARN of the firewall. - FirewallArn *string `type:"string"` + // Indicates when the load balancer was created. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + CreatedTime *string `type:"string"` - // The identifier of the firewall. - FirewallId *string `type:"string"` + // The public DNS name of the load balancer. + DNSName *string `type:"string"` - // A descriptive name of the firewall. - FirewallName *string `type:"string"` + // The type of IP addresses used by the subnets for your load balancer. The + // possible values are ipv4 (for IPv4 addresses) and dualstack (for IPv4 and + // IPv6 addresses). + IpAddressType *string `type:"string"` - // The ARN of the firewall policy. - FirewallPolicyArn *string `type:"string"` + // Attributes of the load balancer. + LoadBalancerAttributes []*AwsElbv2LoadBalancerAttribute `type:"list"` - // Whether the firewall is protected from a change to the firewall policy. If - // set to true, you cannot associate a different policy with the firewall. - FirewallPolicyChangeProtection *bool `type:"boolean"` + // The nodes of an Internet-facing load balancer have public IP addresses. + Scheme *string `type:"string"` - // Whether the firewall is protected from a change to the subnet associations. - // If set to true, you cannot map different subnets to the firewall. - SubnetChangeProtection *bool `type:"boolean"` + // The IDs of the security groups for the load balancer. + SecurityGroups []*string `type:"list"` - // The public subnets that Network Firewall uses for the firewall. Each subnet - // must belong to a different Availability Zone. - SubnetMappings []*AwsNetworkFirewallFirewallSubnetMappingsDetails `type:"list"` + // The state of the load balancer. + State *LoadBalancerState `type:"structure"` - // The identifier of the VPC where the firewall is used. + // The type of load balancer. + Type *string `type:"string"` + + // The ID of the VPC for the load balancer. VpcId *string `type:"string"` } @@ -24889,7 +24923,7 @@ type AwsNetworkFirewallFirewallDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsNetworkFirewallFirewallDetails) String() string { +func (s AwsElbv2LoadBalancerDetails) String() string { return awsutil.Prettify(s) } @@ -24898,89 +24932,115 @@ func (s AwsNetworkFirewallFirewallDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsNetworkFirewallFirewallDetails) GoString() string { +func (s AwsElbv2LoadBalancerDetails) GoString() string { return s.String() } -// SetDeleteProtection sets the DeleteProtection field's value. -func (s *AwsNetworkFirewallFirewallDetails) SetDeleteProtection(v bool) *AwsNetworkFirewallFirewallDetails { - s.DeleteProtection = &v +// SetAvailabilityZones sets the AvailabilityZones field's value. +func (s *AwsElbv2LoadBalancerDetails) SetAvailabilityZones(v []*AvailabilityZone) *AwsElbv2LoadBalancerDetails { + s.AvailabilityZones = v return s } -// SetDescription sets the Description field's value. -func (s *AwsNetworkFirewallFirewallDetails) SetDescription(v string) *AwsNetworkFirewallFirewallDetails { - s.Description = &v +// SetCanonicalHostedZoneId sets the CanonicalHostedZoneId field's value. +func (s *AwsElbv2LoadBalancerDetails) SetCanonicalHostedZoneId(v string) *AwsElbv2LoadBalancerDetails { + s.CanonicalHostedZoneId = &v return s } -// SetFirewallArn sets the FirewallArn field's value. -func (s *AwsNetworkFirewallFirewallDetails) SetFirewallArn(v string) *AwsNetworkFirewallFirewallDetails { - s.FirewallArn = &v +// SetCreatedTime sets the CreatedTime field's value. +func (s *AwsElbv2LoadBalancerDetails) SetCreatedTime(v string) *AwsElbv2LoadBalancerDetails { + s.CreatedTime = &v return s } -// SetFirewallId sets the FirewallId field's value. -func (s *AwsNetworkFirewallFirewallDetails) SetFirewallId(v string) *AwsNetworkFirewallFirewallDetails { - s.FirewallId = &v +// SetDNSName sets the DNSName field's value. +func (s *AwsElbv2LoadBalancerDetails) SetDNSName(v string) *AwsElbv2LoadBalancerDetails { + s.DNSName = &v return s } -// SetFirewallName sets the FirewallName field's value. -func (s *AwsNetworkFirewallFirewallDetails) SetFirewallName(v string) *AwsNetworkFirewallFirewallDetails { - s.FirewallName = &v +// SetIpAddressType sets the IpAddressType field's value. +func (s *AwsElbv2LoadBalancerDetails) SetIpAddressType(v string) *AwsElbv2LoadBalancerDetails { + s.IpAddressType = &v return s } -// SetFirewallPolicyArn sets the FirewallPolicyArn field's value. -func (s *AwsNetworkFirewallFirewallDetails) SetFirewallPolicyArn(v string) *AwsNetworkFirewallFirewallDetails { - s.FirewallPolicyArn = &v +// SetLoadBalancerAttributes sets the LoadBalancerAttributes field's value. +func (s *AwsElbv2LoadBalancerDetails) SetLoadBalancerAttributes(v []*AwsElbv2LoadBalancerAttribute) *AwsElbv2LoadBalancerDetails { + s.LoadBalancerAttributes = v return s } -// SetFirewallPolicyChangeProtection sets the FirewallPolicyChangeProtection field's value. -func (s *AwsNetworkFirewallFirewallDetails) SetFirewallPolicyChangeProtection(v bool) *AwsNetworkFirewallFirewallDetails { - s.FirewallPolicyChangeProtection = &v +// SetScheme sets the Scheme field's value. +func (s *AwsElbv2LoadBalancerDetails) SetScheme(v string) *AwsElbv2LoadBalancerDetails { + s.Scheme = &v return s } -// SetSubnetChangeProtection sets the SubnetChangeProtection field's value. -func (s *AwsNetworkFirewallFirewallDetails) SetSubnetChangeProtection(v bool) *AwsNetworkFirewallFirewallDetails { - s.SubnetChangeProtection = &v +// SetSecurityGroups sets the SecurityGroups field's value. +func (s *AwsElbv2LoadBalancerDetails) SetSecurityGroups(v []*string) *AwsElbv2LoadBalancerDetails { + s.SecurityGroups = v return s } -// SetSubnetMappings sets the SubnetMappings field's value. -func (s *AwsNetworkFirewallFirewallDetails) SetSubnetMappings(v []*AwsNetworkFirewallFirewallSubnetMappingsDetails) *AwsNetworkFirewallFirewallDetails { - s.SubnetMappings = v +// SetState sets the State field's value. +func (s *AwsElbv2LoadBalancerDetails) SetState(v *LoadBalancerState) *AwsElbv2LoadBalancerDetails { + s.State = v + return s +} + +// SetType sets the Type field's value. +func (s *AwsElbv2LoadBalancerDetails) SetType(v string) *AwsElbv2LoadBalancerDetails { + s.Type = &v return s } // SetVpcId sets the VpcId field's value. -func (s *AwsNetworkFirewallFirewallDetails) SetVpcId(v string) *AwsNetworkFirewallFirewallDetails { +func (s *AwsElbv2LoadBalancerDetails) SetVpcId(v string) *AwsElbv2LoadBalancerDetails { s.VpcId = &v return s } -// Details about a firewall policy. A firewall policy defines the behavior of -// a network firewall. -type AwsNetworkFirewallFirewallPolicyDetails struct { +// IAM access key details related to a finding. +type AwsIamAccessKeyDetails struct { _ struct{} `type:"structure"` - // A description of the firewall policy. - Description *string `type:"string"` + // The identifier of the access key. + AccessKeyId *string `type:"string"` - // The firewall policy configuration. - FirewallPolicy *FirewallPolicyDetails `type:"structure"` + // The Amazon Web Services account ID of the account for the key. + AccountId *string `type:"string"` - // The ARN of the firewall policy. - FirewallPolicyArn *string `type:"string"` + // Indicates when the IAM access key was created. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + CreatedAt *string `type:"string"` - // The identifier of the firewall policy. - FirewallPolicyId *string `type:"string"` + // The ID of the principal associated with an access key. + PrincipalId *string `type:"string"` - // The name of the firewall policy. - FirewallPolicyName *string `type:"string"` + // The name of the principal. + PrincipalName *string `type:"string"` + + // The type of principal associated with an access key. + PrincipalType *string `type:"string"` + + // Information about the session that the key was used for. + SessionContext *AwsIamAccessKeySessionContext `type:"structure"` + + // The status of the IAM access key related to a finding. + Status *string `type:"string" enum:"AwsIamAccessKeyStatus"` + + // The user associated with the IAM access key related to a finding. + // + // The UserName parameter has been replaced with the PrincipalName parameter + // because access keys can also be assigned to principals that are not IAM users. + // + // Deprecated: This filter is deprecated. Instead, use PrincipalName. + UserName *string `deprecated:"true" type:"string"` } // String returns the string representation. @@ -24988,7 +25048,7 @@ type AwsNetworkFirewallFirewallPolicyDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsNetworkFirewallFirewallPolicyDetails) String() string { +func (s AwsIamAccessKeyDetails) String() string { return awsutil.Prettify(s) } @@ -24997,46 +25057,73 @@ func (s AwsNetworkFirewallFirewallPolicyDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsNetworkFirewallFirewallPolicyDetails) GoString() string { +func (s AwsIamAccessKeyDetails) GoString() string { return s.String() } -// SetDescription sets the Description field's value. -func (s *AwsNetworkFirewallFirewallPolicyDetails) SetDescription(v string) *AwsNetworkFirewallFirewallPolicyDetails { - s.Description = &v +// SetAccessKeyId sets the AccessKeyId field's value. +func (s *AwsIamAccessKeyDetails) SetAccessKeyId(v string) *AwsIamAccessKeyDetails { + s.AccessKeyId = &v return s } -// SetFirewallPolicy sets the FirewallPolicy field's value. -func (s *AwsNetworkFirewallFirewallPolicyDetails) SetFirewallPolicy(v *FirewallPolicyDetails) *AwsNetworkFirewallFirewallPolicyDetails { - s.FirewallPolicy = v +// SetAccountId sets the AccountId field's value. +func (s *AwsIamAccessKeyDetails) SetAccountId(v string) *AwsIamAccessKeyDetails { + s.AccountId = &v return s } -// SetFirewallPolicyArn sets the FirewallPolicyArn field's value. -func (s *AwsNetworkFirewallFirewallPolicyDetails) SetFirewallPolicyArn(v string) *AwsNetworkFirewallFirewallPolicyDetails { - s.FirewallPolicyArn = &v +// SetCreatedAt sets the CreatedAt field's value. +func (s *AwsIamAccessKeyDetails) SetCreatedAt(v string) *AwsIamAccessKeyDetails { + s.CreatedAt = &v return s } -// SetFirewallPolicyId sets the FirewallPolicyId field's value. -func (s *AwsNetworkFirewallFirewallPolicyDetails) SetFirewallPolicyId(v string) *AwsNetworkFirewallFirewallPolicyDetails { - s.FirewallPolicyId = &v +// SetPrincipalId sets the PrincipalId field's value. +func (s *AwsIamAccessKeyDetails) SetPrincipalId(v string) *AwsIamAccessKeyDetails { + s.PrincipalId = &v return s } -// SetFirewallPolicyName sets the FirewallPolicyName field's value. -func (s *AwsNetworkFirewallFirewallPolicyDetails) SetFirewallPolicyName(v string) *AwsNetworkFirewallFirewallPolicyDetails { - s.FirewallPolicyName = &v +// SetPrincipalName sets the PrincipalName field's value. +func (s *AwsIamAccessKeyDetails) SetPrincipalName(v string) *AwsIamAccessKeyDetails { + s.PrincipalName = &v return s } -// A public subnet that Network Firewall uses for the firewall. -type AwsNetworkFirewallFirewallSubnetMappingsDetails struct { +// SetPrincipalType sets the PrincipalType field's value. +func (s *AwsIamAccessKeyDetails) SetPrincipalType(v string) *AwsIamAccessKeyDetails { + s.PrincipalType = &v + return s +} + +// SetSessionContext sets the SessionContext field's value. +func (s *AwsIamAccessKeyDetails) SetSessionContext(v *AwsIamAccessKeySessionContext) *AwsIamAccessKeyDetails { + s.SessionContext = v + return s +} + +// SetStatus sets the Status field's value. +func (s *AwsIamAccessKeyDetails) SetStatus(v string) *AwsIamAccessKeyDetails { + s.Status = &v + return s +} + +// SetUserName sets the UserName field's value. +func (s *AwsIamAccessKeyDetails) SetUserName(v string) *AwsIamAccessKeyDetails { + s.UserName = &v + return s +} + +// Provides information about the session that the key was used for. +type AwsIamAccessKeySessionContext struct { _ struct{} `type:"structure"` - // The identifier of the subnet - SubnetId *string `type:"string"` + // Attributes of the session that the key was used for. + Attributes *AwsIamAccessKeySessionContextAttributes `type:"structure"` + + // Information about the entity that created the session. + SessionIssuer *AwsIamAccessKeySessionContextSessionIssuer `type:"structure"` } // String returns the string representation. @@ -25044,7 +25131,7 @@ type AwsNetworkFirewallFirewallSubnetMappingsDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsNetworkFirewallFirewallSubnetMappingsDetails) String() string { +func (s AwsIamAccessKeySessionContext) String() string { return awsutil.Prettify(s) } @@ -25053,44 +25140,35 @@ func (s AwsNetworkFirewallFirewallSubnetMappingsDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsNetworkFirewallFirewallSubnetMappingsDetails) GoString() string { +func (s AwsIamAccessKeySessionContext) GoString() string { return s.String() } -// SetSubnetId sets the SubnetId field's value. -func (s *AwsNetworkFirewallFirewallSubnetMappingsDetails) SetSubnetId(v string) *AwsNetworkFirewallFirewallSubnetMappingsDetails { - s.SubnetId = &v +// SetAttributes sets the Attributes field's value. +func (s *AwsIamAccessKeySessionContext) SetAttributes(v *AwsIamAccessKeySessionContextAttributes) *AwsIamAccessKeySessionContext { + s.Attributes = v return s } -// Details about an Network Firewall rule group. Rule groups are used to inspect -// and control network traffic. Stateless rule groups apply to individual packets. -// Stateful rule groups apply to packets in the context of their traffic flow. -// -// Rule groups are referenced in firewall policies. -type AwsNetworkFirewallRuleGroupDetails struct { - _ struct{} `type:"structure"` - - // The maximum number of operating resources that this rule group can use. - Capacity *int64 `type:"integer"` - - // A description of the rule group. - Description *string `type:"string"` - - // Details about the rule group. - RuleGroup *RuleGroupDetails `type:"structure"` - - // The ARN of the rule group. - RuleGroupArn *string `type:"string"` +// SetSessionIssuer sets the SessionIssuer field's value. +func (s *AwsIamAccessKeySessionContext) SetSessionIssuer(v *AwsIamAccessKeySessionContextSessionIssuer) *AwsIamAccessKeySessionContext { + s.SessionIssuer = v + return s +} - // The identifier of the rule group. - RuleGroupId *string `type:"string"` +// Attributes of the session that the key was used for. +type AwsIamAccessKeySessionContextAttributes struct { + _ struct{} `type:"structure"` - // The descriptive name of the rule group. - RuleGroupName *string `type:"string"` + // Indicates when the session was created. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + CreationDate *string `type:"string"` - // The type of rule group. A rule group can be stateful or stateless. - Type *string `type:"string"` + // Indicates whether the session used multi-factor authentication (MFA). + MfaAuthenticated *bool `type:"boolean"` } // String returns the string representation. @@ -25098,7 +25176,7 @@ type AwsNetworkFirewallRuleGroupDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsNetworkFirewallRuleGroupDetails) String() string { +func (s AwsIamAccessKeySessionContextAttributes) String() string { return awsutil.Prettify(s) } @@ -25107,64 +25185,100 @@ func (s AwsNetworkFirewallRuleGroupDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsNetworkFirewallRuleGroupDetails) GoString() string { +func (s AwsIamAccessKeySessionContextAttributes) GoString() string { return s.String() } -// SetCapacity sets the Capacity field's value. -func (s *AwsNetworkFirewallRuleGroupDetails) SetCapacity(v int64) *AwsNetworkFirewallRuleGroupDetails { - s.Capacity = &v +// SetCreationDate sets the CreationDate field's value. +func (s *AwsIamAccessKeySessionContextAttributes) SetCreationDate(v string) *AwsIamAccessKeySessionContextAttributes { + s.CreationDate = &v return s } -// SetDescription sets the Description field's value. -func (s *AwsNetworkFirewallRuleGroupDetails) SetDescription(v string) *AwsNetworkFirewallRuleGroupDetails { - s.Description = &v +// SetMfaAuthenticated sets the MfaAuthenticated field's value. +func (s *AwsIamAccessKeySessionContextAttributes) SetMfaAuthenticated(v bool) *AwsIamAccessKeySessionContextAttributes { + s.MfaAuthenticated = &v return s } -// SetRuleGroup sets the RuleGroup field's value. -func (s *AwsNetworkFirewallRuleGroupDetails) SetRuleGroup(v *RuleGroupDetails) *AwsNetworkFirewallRuleGroupDetails { - s.RuleGroup = v - return s +// Information about the entity that created the session. +type AwsIamAccessKeySessionContextSessionIssuer struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Web Services account that created the session. + AccountId *string `type:"string"` + + // The ARN of the session. + Arn *string `type:"string"` + + // The principal ID of the principal (user, role, or group) that created the + // session. + PrincipalId *string `type:"string"` + + // The type of principal (user, role, or group) that created the session. + Type *string `type:"string"` + + // The name of the principal that created the session. + UserName *string `type:"string"` } -// SetRuleGroupArn sets the RuleGroupArn field's value. -func (s *AwsNetworkFirewallRuleGroupDetails) SetRuleGroupArn(v string) *AwsNetworkFirewallRuleGroupDetails { - s.RuleGroupArn = &v +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsIamAccessKeySessionContextSessionIssuer) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsIamAccessKeySessionContextSessionIssuer) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *AwsIamAccessKeySessionContextSessionIssuer) SetAccountId(v string) *AwsIamAccessKeySessionContextSessionIssuer { + s.AccountId = &v return s } -// SetRuleGroupId sets the RuleGroupId field's value. -func (s *AwsNetworkFirewallRuleGroupDetails) SetRuleGroupId(v string) *AwsNetworkFirewallRuleGroupDetails { - s.RuleGroupId = &v +// SetArn sets the Arn field's value. +func (s *AwsIamAccessKeySessionContextSessionIssuer) SetArn(v string) *AwsIamAccessKeySessionContextSessionIssuer { + s.Arn = &v return s } -// SetRuleGroupName sets the RuleGroupName field's value. -func (s *AwsNetworkFirewallRuleGroupDetails) SetRuleGroupName(v string) *AwsNetworkFirewallRuleGroupDetails { - s.RuleGroupName = &v +// SetPrincipalId sets the PrincipalId field's value. +func (s *AwsIamAccessKeySessionContextSessionIssuer) SetPrincipalId(v string) *AwsIamAccessKeySessionContextSessionIssuer { + s.PrincipalId = &v return s } // SetType sets the Type field's value. -func (s *AwsNetworkFirewallRuleGroupDetails) SetType(v string) *AwsNetworkFirewallRuleGroupDetails { +func (s *AwsIamAccessKeySessionContextSessionIssuer) SetType(v string) *AwsIamAccessKeySessionContextSessionIssuer { s.Type = &v return s } -// Provides information about domain access control options. -type AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails struct { - _ struct{} `type:"structure"` +// SetUserName sets the UserName field's value. +func (s *AwsIamAccessKeySessionContextSessionIssuer) SetUserName(v string) *AwsIamAccessKeySessionContextSessionIssuer { + s.UserName = &v + return s +} - // Enables fine-grained access control. - Enabled *bool `type:"boolean"` +// A managed policy that is attached to an IAM principal. +type AwsIamAttachedManagedPolicy struct { + _ struct{} `type:"structure"` - // Enables the internal user database. - InternalUserDatabaseEnabled *bool `type:"boolean"` + // The ARN of the policy. + PolicyArn *string `type:"string"` - // Specifies information about the master user of the domain. - MasterUserOptions *AwsOpenSearchServiceDomainMasterUserOptionsDetails `type:"structure"` + // The name of the policy. + PolicyName *string `type:"string"` } // String returns the string representation. @@ -25172,7 +25286,7 @@ type AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails) String() string { +func (s AwsIamAttachedManagedPolicy) String() string { return awsutil.Prettify(s) } @@ -25181,75 +25295,47 @@ func (s AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails) String() strin // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails) GoString() string { +func (s AwsIamAttachedManagedPolicy) GoString() string { return s.String() } -// SetEnabled sets the Enabled field's value. -func (s *AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails) SetEnabled(v bool) *AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails { - s.Enabled = &v - return s -} - -// SetInternalUserDatabaseEnabled sets the InternalUserDatabaseEnabled field's value. -func (s *AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails) SetInternalUserDatabaseEnabled(v bool) *AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails { - s.InternalUserDatabaseEnabled = &v +// SetPolicyArn sets the PolicyArn field's value. +func (s *AwsIamAttachedManagedPolicy) SetPolicyArn(v string) *AwsIamAttachedManagedPolicy { + s.PolicyArn = &v return s } -// SetMasterUserOptions sets the MasterUserOptions field's value. -func (s *AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails) SetMasterUserOptions(v *AwsOpenSearchServiceDomainMasterUserOptionsDetails) *AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails { - s.MasterUserOptions = v +// SetPolicyName sets the PolicyName field's value. +func (s *AwsIamAttachedManagedPolicy) SetPolicyName(v string) *AwsIamAttachedManagedPolicy { + s.PolicyName = &v return s } -// Details about the configuration of an OpenSearch cluster. -type AwsOpenSearchServiceDomainClusterConfigDetails struct { +// Contains details about an IAM group. +type AwsIamGroupDetails struct { _ struct{} `type:"structure"` - // The number of instances to use for the master node. If this attribute is - // specified, then DedicatedMasterEnabled must be true. - DedicatedMasterCount *int64 `type:"integer"` - - // Whether to use a dedicated master node for the OpenSearch domain. A dedicated - // master node performs cluster management tasks, but does not hold data or - // respond to data upload requests. - DedicatedMasterEnabled *bool `type:"boolean"` - - // The hardware configuration of the computer that hosts the dedicated master - // node. - // - // If this attribute is specified, then DedicatedMasterEnabled must be true. - DedicatedMasterType *string `type:"string"` - - // The number of data nodes to use in the OpenSearch domain. - InstanceCount *int64 `type:"integer"` + // A list of the managed policies that are attached to the IAM group. + AttachedManagedPolicies []*AwsIamAttachedManagedPolicy `type:"list"` - // The instance type for your data nodes. + // Indicates when the IAM group was created. // - // For a list of valid values, see Supported instance types in Amazon OpenSearch - // Service (https://docs.aws.amazon.com/opensearch-service/latest/developerguide/supported-instance-types.html) - // in the Amazon OpenSearch Service Developer Guide. - InstanceType *string `type:"string"` - - // The number of UltraWarm instances. - WarmCount *int64 `type:"integer"` + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + CreateDate *string `type:"string"` - // Whether UltraWarm is enabled. - WarmEnabled *bool `type:"boolean"` + // The identifier of the IAM group. + GroupId *string `type:"string"` - // The type of UltraWarm instance. - WarmType *string `type:"string"` + // The name of the IAM group. + GroupName *string `type:"string"` - // Configuration options for zone awareness. Provided if ZoneAwarenessEnabled - // is true. - ZoneAwarenessConfig *AwsOpenSearchServiceDomainClusterConfigZoneAwarenessConfigDetails `type:"structure"` + // The list of inline policies that are embedded in the group. + GroupPolicyList []*AwsIamGroupPolicy `type:"list"` - // Whether to enable zone awareness for the OpenSearch domain. When zone awareness - // is enabled, OpenSearch Service allocates the cluster's nodes and replica - // index shards across Availability Zones (AZs) in the same Region. This prevents - // data loss and minimizes downtime if a node or data center fails. - ZoneAwarenessEnabled *bool `type:"boolean"` + // The path to the group. + Path *string `type:"string"` } // String returns the string representation. @@ -25257,7 +25343,7 @@ type AwsOpenSearchServiceDomainClusterConfigDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsOpenSearchServiceDomainClusterConfigDetails) String() string { +func (s AwsIamGroupDetails) String() string { return awsutil.Prettify(s) } @@ -25266,77 +25352,52 @@ func (s AwsOpenSearchServiceDomainClusterConfigDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsOpenSearchServiceDomainClusterConfigDetails) GoString() string { +func (s AwsIamGroupDetails) GoString() string { return s.String() } -// SetDedicatedMasterCount sets the DedicatedMasterCount field's value. -func (s *AwsOpenSearchServiceDomainClusterConfigDetails) SetDedicatedMasterCount(v int64) *AwsOpenSearchServiceDomainClusterConfigDetails { - s.DedicatedMasterCount = &v - return s -} - -// SetDedicatedMasterEnabled sets the DedicatedMasterEnabled field's value. -func (s *AwsOpenSearchServiceDomainClusterConfigDetails) SetDedicatedMasterEnabled(v bool) *AwsOpenSearchServiceDomainClusterConfigDetails { - s.DedicatedMasterEnabled = &v - return s -} - -// SetDedicatedMasterType sets the DedicatedMasterType field's value. -func (s *AwsOpenSearchServiceDomainClusterConfigDetails) SetDedicatedMasterType(v string) *AwsOpenSearchServiceDomainClusterConfigDetails { - s.DedicatedMasterType = &v - return s -} - -// SetInstanceCount sets the InstanceCount field's value. -func (s *AwsOpenSearchServiceDomainClusterConfigDetails) SetInstanceCount(v int64) *AwsOpenSearchServiceDomainClusterConfigDetails { - s.InstanceCount = &v - return s -} - -// SetInstanceType sets the InstanceType field's value. -func (s *AwsOpenSearchServiceDomainClusterConfigDetails) SetInstanceType(v string) *AwsOpenSearchServiceDomainClusterConfigDetails { - s.InstanceType = &v +// SetAttachedManagedPolicies sets the AttachedManagedPolicies field's value. +func (s *AwsIamGroupDetails) SetAttachedManagedPolicies(v []*AwsIamAttachedManagedPolicy) *AwsIamGroupDetails { + s.AttachedManagedPolicies = v return s } -// SetWarmCount sets the WarmCount field's value. -func (s *AwsOpenSearchServiceDomainClusterConfigDetails) SetWarmCount(v int64) *AwsOpenSearchServiceDomainClusterConfigDetails { - s.WarmCount = &v +// SetCreateDate sets the CreateDate field's value. +func (s *AwsIamGroupDetails) SetCreateDate(v string) *AwsIamGroupDetails { + s.CreateDate = &v return s } -// SetWarmEnabled sets the WarmEnabled field's value. -func (s *AwsOpenSearchServiceDomainClusterConfigDetails) SetWarmEnabled(v bool) *AwsOpenSearchServiceDomainClusterConfigDetails { - s.WarmEnabled = &v +// SetGroupId sets the GroupId field's value. +func (s *AwsIamGroupDetails) SetGroupId(v string) *AwsIamGroupDetails { + s.GroupId = &v return s } -// SetWarmType sets the WarmType field's value. -func (s *AwsOpenSearchServiceDomainClusterConfigDetails) SetWarmType(v string) *AwsOpenSearchServiceDomainClusterConfigDetails { - s.WarmType = &v +// SetGroupName sets the GroupName field's value. +func (s *AwsIamGroupDetails) SetGroupName(v string) *AwsIamGroupDetails { + s.GroupName = &v return s } -// SetZoneAwarenessConfig sets the ZoneAwarenessConfig field's value. -func (s *AwsOpenSearchServiceDomainClusterConfigDetails) SetZoneAwarenessConfig(v *AwsOpenSearchServiceDomainClusterConfigZoneAwarenessConfigDetails) *AwsOpenSearchServiceDomainClusterConfigDetails { - s.ZoneAwarenessConfig = v +// SetGroupPolicyList sets the GroupPolicyList field's value. +func (s *AwsIamGroupDetails) SetGroupPolicyList(v []*AwsIamGroupPolicy) *AwsIamGroupDetails { + s.GroupPolicyList = v return s } -// SetZoneAwarenessEnabled sets the ZoneAwarenessEnabled field's value. -func (s *AwsOpenSearchServiceDomainClusterConfigDetails) SetZoneAwarenessEnabled(v bool) *AwsOpenSearchServiceDomainClusterConfigDetails { - s.ZoneAwarenessEnabled = &v +// SetPath sets the Path field's value. +func (s *AwsIamGroupDetails) SetPath(v string) *AwsIamGroupDetails { + s.Path = &v return s } -// Configuration options for zone awareness. -type AwsOpenSearchServiceDomainClusterConfigZoneAwarenessConfigDetails struct { +// A managed policy that is attached to the IAM group. +type AwsIamGroupPolicy struct { _ struct{} `type:"structure"` - // The number of Availability Zones that the domain uses. Valid values are 2 - // or 3. The default is 2. - AvailabilityZoneCount *int64 `type:"integer"` + // The name of the policy. + PolicyName *string `type:"string"` } // String returns the string representation. @@ -25344,7 +25405,7 @@ type AwsOpenSearchServiceDomainClusterConfigZoneAwarenessConfigDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsOpenSearchServiceDomainClusterConfigZoneAwarenessConfigDetails) String() string { +func (s AwsIamGroupPolicy) String() string { return awsutil.Prettify(s) } @@ -25353,68 +25414,41 @@ func (s AwsOpenSearchServiceDomainClusterConfigZoneAwarenessConfigDetails) Strin // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsOpenSearchServiceDomainClusterConfigZoneAwarenessConfigDetails) GoString() string { +func (s AwsIamGroupPolicy) GoString() string { return s.String() } -// SetAvailabilityZoneCount sets the AvailabilityZoneCount field's value. -func (s *AwsOpenSearchServiceDomainClusterConfigZoneAwarenessConfigDetails) SetAvailabilityZoneCount(v int64) *AwsOpenSearchServiceDomainClusterConfigZoneAwarenessConfigDetails { - s.AvailabilityZoneCount = &v +// SetPolicyName sets the PolicyName field's value. +func (s *AwsIamGroupPolicy) SetPolicyName(v string) *AwsIamGroupPolicy { + s.PolicyName = &v return s } -// Information about an Amazon OpenSearch Service domain. -type AwsOpenSearchServiceDomainDetails struct { +// Information about an instance profile. +type AwsIamInstanceProfile struct { _ struct{} `type:"structure"` - // IAM policy document that specifies the access policies for the OpenSearch - // Service domain. - AccessPolicies *string `type:"string"` - - // Specifies options for fine-grained access control. - AdvancedSecurityOptions *AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails `type:"structure"` - - // The ARN of the OpenSearch Service domain. + // The ARN of the instance profile. Arn *string `type:"string"` - // Details about the configuration of an OpenSearch cluster. - ClusterConfig *AwsOpenSearchServiceDomainClusterConfigDetails `type:"structure"` - - // The domain endpoint. - DomainEndpoint *string `type:"string"` - - // Additional options for the domain endpoint. - DomainEndpointOptions *AwsOpenSearchServiceDomainDomainEndpointOptionsDetails `type:"structure"` - - // The domain endpoints. Used if the OpenSearch domain resides in a VPC. + // Indicates when the instance profile was created. // - // This is a map of key-value pairs. The key is always vpc. The value is the - // endpoint. - DomainEndpoints map[string]*string `type:"map"` - - // The name of the endpoint. - DomainName *string `type:"string"` - - // Details about the configuration for encryption at rest. - EncryptionAtRestOptions *AwsOpenSearchServiceDomainEncryptionAtRestOptionsDetails `type:"structure"` - - // The version of the domain engine. - EngineVersion *string `type:"string"` - - // The identifier of the domain. - Id *string `type:"string"` + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + CreateDate *string `type:"string"` - // Configures the CloudWatch Logs to publish for the OpenSearch domain. - LogPublishingOptions *AwsOpenSearchServiceDomainLogPublishingOptionsDetails `type:"structure"` + // The identifier of the instance profile. + InstanceProfileId *string `type:"string"` - // Details about the configuration for node-to-node encryption. - NodeToNodeEncryptionOptions *AwsOpenSearchServiceDomainNodeToNodeEncryptionOptionsDetails `type:"structure"` + // The name of the instance profile. + InstanceProfileName *string `type:"string"` - // Information about the status of a domain relative to the latest service software. - ServiceSoftwareOptions *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails `type:"structure"` + // The path to the instance profile. + Path *string `type:"string"` - // Information that OpenSearch Service derives based on VPCOptions for the domain. - VpcOptions *AwsOpenSearchServiceDomainVpcOptionsDetails `type:"structure"` + // The roles associated with the instance profile. + Roles []*AwsIamInstanceProfileRole `type:"list"` } // String returns the string representation. @@ -25422,7 +25456,7 @@ type AwsOpenSearchServiceDomainDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsOpenSearchServiceDomainDetails) String() string { +func (s AwsIamInstanceProfile) String() string { return awsutil.Prettify(s) } @@ -25431,119 +25465,91 @@ func (s AwsOpenSearchServiceDomainDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsOpenSearchServiceDomainDetails) GoString() string { +func (s AwsIamInstanceProfile) GoString() string { return s.String() } -// SetAccessPolicies sets the AccessPolicies field's value. -func (s *AwsOpenSearchServiceDomainDetails) SetAccessPolicies(v string) *AwsOpenSearchServiceDomainDetails { - s.AccessPolicies = &v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *AwsIamInstanceProfile) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AwsIamInstanceProfile"} + if s.Roles != nil { + for i, v := range s.Roles { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Roles", i), err.(request.ErrInvalidParams)) + } + } + } -// SetAdvancedSecurityOptions sets the AdvancedSecurityOptions field's value. -func (s *AwsOpenSearchServiceDomainDetails) SetAdvancedSecurityOptions(v *AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails) *AwsOpenSearchServiceDomainDetails { - s.AdvancedSecurityOptions = v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } // SetArn sets the Arn field's value. -func (s *AwsOpenSearchServiceDomainDetails) SetArn(v string) *AwsOpenSearchServiceDomainDetails { +func (s *AwsIamInstanceProfile) SetArn(v string) *AwsIamInstanceProfile { s.Arn = &v return s } -// SetClusterConfig sets the ClusterConfig field's value. -func (s *AwsOpenSearchServiceDomainDetails) SetClusterConfig(v *AwsOpenSearchServiceDomainClusterConfigDetails) *AwsOpenSearchServiceDomainDetails { - s.ClusterConfig = v - return s -} - -// SetDomainEndpoint sets the DomainEndpoint field's value. -func (s *AwsOpenSearchServiceDomainDetails) SetDomainEndpoint(v string) *AwsOpenSearchServiceDomainDetails { - s.DomainEndpoint = &v - return s -} - -// SetDomainEndpointOptions sets the DomainEndpointOptions field's value. -func (s *AwsOpenSearchServiceDomainDetails) SetDomainEndpointOptions(v *AwsOpenSearchServiceDomainDomainEndpointOptionsDetails) *AwsOpenSearchServiceDomainDetails { - s.DomainEndpointOptions = v - return s -} - -// SetDomainEndpoints sets the DomainEndpoints field's value. -func (s *AwsOpenSearchServiceDomainDetails) SetDomainEndpoints(v map[string]*string) *AwsOpenSearchServiceDomainDetails { - s.DomainEndpoints = v - return s -} - -// SetDomainName sets the DomainName field's value. -func (s *AwsOpenSearchServiceDomainDetails) SetDomainName(v string) *AwsOpenSearchServiceDomainDetails { - s.DomainName = &v - return s -} - -// SetEncryptionAtRestOptions sets the EncryptionAtRestOptions field's value. -func (s *AwsOpenSearchServiceDomainDetails) SetEncryptionAtRestOptions(v *AwsOpenSearchServiceDomainEncryptionAtRestOptionsDetails) *AwsOpenSearchServiceDomainDetails { - s.EncryptionAtRestOptions = v - return s -} - -// SetEngineVersion sets the EngineVersion field's value. -func (s *AwsOpenSearchServiceDomainDetails) SetEngineVersion(v string) *AwsOpenSearchServiceDomainDetails { - s.EngineVersion = &v - return s -} - -// SetId sets the Id field's value. -func (s *AwsOpenSearchServiceDomainDetails) SetId(v string) *AwsOpenSearchServiceDomainDetails { - s.Id = &v +// SetCreateDate sets the CreateDate field's value. +func (s *AwsIamInstanceProfile) SetCreateDate(v string) *AwsIamInstanceProfile { + s.CreateDate = &v return s } -// SetLogPublishingOptions sets the LogPublishingOptions field's value. -func (s *AwsOpenSearchServiceDomainDetails) SetLogPublishingOptions(v *AwsOpenSearchServiceDomainLogPublishingOptionsDetails) *AwsOpenSearchServiceDomainDetails { - s.LogPublishingOptions = v +// SetInstanceProfileId sets the InstanceProfileId field's value. +func (s *AwsIamInstanceProfile) SetInstanceProfileId(v string) *AwsIamInstanceProfile { + s.InstanceProfileId = &v return s } -// SetNodeToNodeEncryptionOptions sets the NodeToNodeEncryptionOptions field's value. -func (s *AwsOpenSearchServiceDomainDetails) SetNodeToNodeEncryptionOptions(v *AwsOpenSearchServiceDomainNodeToNodeEncryptionOptionsDetails) *AwsOpenSearchServiceDomainDetails { - s.NodeToNodeEncryptionOptions = v +// SetInstanceProfileName sets the InstanceProfileName field's value. +func (s *AwsIamInstanceProfile) SetInstanceProfileName(v string) *AwsIamInstanceProfile { + s.InstanceProfileName = &v return s } -// SetServiceSoftwareOptions sets the ServiceSoftwareOptions field's value. -func (s *AwsOpenSearchServiceDomainDetails) SetServiceSoftwareOptions(v *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails) *AwsOpenSearchServiceDomainDetails { - s.ServiceSoftwareOptions = v +// SetPath sets the Path field's value. +func (s *AwsIamInstanceProfile) SetPath(v string) *AwsIamInstanceProfile { + s.Path = &v return s } -// SetVpcOptions sets the VpcOptions field's value. -func (s *AwsOpenSearchServiceDomainDetails) SetVpcOptions(v *AwsOpenSearchServiceDomainVpcOptionsDetails) *AwsOpenSearchServiceDomainDetails { - s.VpcOptions = v +// SetRoles sets the Roles field's value. +func (s *AwsIamInstanceProfile) SetRoles(v []*AwsIamInstanceProfileRole) *AwsIamInstanceProfile { + s.Roles = v return s } -// Information about additional options for the domain endpoint. -type AwsOpenSearchServiceDomainDomainEndpointOptionsDetails struct { +// Information about a role associated with an instance profile. +type AwsIamInstanceProfileRole struct { _ struct{} `type:"structure"` - // The fully qualified URL for the custom endpoint. - CustomEndpoint *string `type:"string"` + // The ARN of the role. + Arn *string `type:"string"` - // The ARN for the security certificate. The certificate is managed in ACM. - CustomEndpointCertificateArn *string `type:"string"` + // The policy that grants an entity permission to assume the role. + AssumeRolePolicyDocument *string `min:"1" type:"string"` - // Whether to enable a custom endpoint for the domain. - CustomEndpointEnabled *bool `type:"boolean"` + // Indicates when the role was created. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + CreateDate *string `type:"string"` - // Whether to require that all traffic to the domain arrive over HTTPS. - EnforceHTTPS *bool `type:"boolean"` + // The path to the role. + Path *string `type:"string"` - // The TLS security policy to apply to the HTTPS endpoint of the OpenSearch - // domain. - TLSSecurityPolicy *string `type:"string"` + // The identifier of the role. + RoleId *string `type:"string"` + + // The name of the role. + RoleName *string `type:"string"` } // String returns the string representation. @@ -25551,7 +25557,7 @@ type AwsOpenSearchServiceDomainDomainEndpointOptionsDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsOpenSearchServiceDomainDomainEndpointOptionsDetails) String() string { +func (s AwsIamInstanceProfileRole) String() string { return awsutil.Prettify(s) } @@ -25560,50 +25566,69 @@ func (s AwsOpenSearchServiceDomainDomainEndpointOptionsDetails) String() string // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsOpenSearchServiceDomainDomainEndpointOptionsDetails) GoString() string { +func (s AwsIamInstanceProfileRole) GoString() string { return s.String() } -// SetCustomEndpoint sets the CustomEndpoint field's value. -func (s *AwsOpenSearchServiceDomainDomainEndpointOptionsDetails) SetCustomEndpoint(v string) *AwsOpenSearchServiceDomainDomainEndpointOptionsDetails { - s.CustomEndpoint = &v +// Validate inspects the fields of the type to determine if they are valid. +func (s *AwsIamInstanceProfileRole) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AwsIamInstanceProfileRole"} + if s.AssumeRolePolicyDocument != nil && len(*s.AssumeRolePolicyDocument) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssumeRolePolicyDocument", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetArn sets the Arn field's value. +func (s *AwsIamInstanceProfileRole) SetArn(v string) *AwsIamInstanceProfileRole { + s.Arn = &v return s } -// SetCustomEndpointCertificateArn sets the CustomEndpointCertificateArn field's value. -func (s *AwsOpenSearchServiceDomainDomainEndpointOptionsDetails) SetCustomEndpointCertificateArn(v string) *AwsOpenSearchServiceDomainDomainEndpointOptionsDetails { - s.CustomEndpointCertificateArn = &v +// SetAssumeRolePolicyDocument sets the AssumeRolePolicyDocument field's value. +func (s *AwsIamInstanceProfileRole) SetAssumeRolePolicyDocument(v string) *AwsIamInstanceProfileRole { + s.AssumeRolePolicyDocument = &v return s } -// SetCustomEndpointEnabled sets the CustomEndpointEnabled field's value. -func (s *AwsOpenSearchServiceDomainDomainEndpointOptionsDetails) SetCustomEndpointEnabled(v bool) *AwsOpenSearchServiceDomainDomainEndpointOptionsDetails { - s.CustomEndpointEnabled = &v +// SetCreateDate sets the CreateDate field's value. +func (s *AwsIamInstanceProfileRole) SetCreateDate(v string) *AwsIamInstanceProfileRole { + s.CreateDate = &v return s } -// SetEnforceHTTPS sets the EnforceHTTPS field's value. -func (s *AwsOpenSearchServiceDomainDomainEndpointOptionsDetails) SetEnforceHTTPS(v bool) *AwsOpenSearchServiceDomainDomainEndpointOptionsDetails { - s.EnforceHTTPS = &v +// SetPath sets the Path field's value. +func (s *AwsIamInstanceProfileRole) SetPath(v string) *AwsIamInstanceProfileRole { + s.Path = &v return s } -// SetTLSSecurityPolicy sets the TLSSecurityPolicy field's value. -func (s *AwsOpenSearchServiceDomainDomainEndpointOptionsDetails) SetTLSSecurityPolicy(v string) *AwsOpenSearchServiceDomainDomainEndpointOptionsDetails { - s.TLSSecurityPolicy = &v +// SetRoleId sets the RoleId field's value. +func (s *AwsIamInstanceProfileRole) SetRoleId(v string) *AwsIamInstanceProfileRole { + s.RoleId = &v return s } -// Details about the configuration for encryption at rest for the OpenSearch -// domain. -type AwsOpenSearchServiceDomainEncryptionAtRestOptionsDetails struct { +// SetRoleName sets the RoleName field's value. +func (s *AwsIamInstanceProfileRole) SetRoleName(v string) *AwsIamInstanceProfileRole { + s.RoleName = &v + return s +} + +// Information about the policy used to set the permissions boundary for an +// IAM principal. +type AwsIamPermissionsBoundary struct { _ struct{} `type:"structure"` - // Whether encryption at rest is enabled. - Enabled *bool `type:"boolean"` + // The ARN of the policy used to set the permissions boundary. + PermissionsBoundaryArn *string `type:"string"` - // The KMS key ID. - KmsKeyId *string `type:"string"` + // The usage type for the permissions boundary. + PermissionsBoundaryType *string `type:"string"` } // String returns the string representation. @@ -25611,7 +25636,7 @@ type AwsOpenSearchServiceDomainEncryptionAtRestOptionsDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsOpenSearchServiceDomainEncryptionAtRestOptionsDetails) String() string { +func (s AwsIamPermissionsBoundary) String() string { return awsutil.Prettify(s) } @@ -25620,31 +25645,67 @@ func (s AwsOpenSearchServiceDomainEncryptionAtRestOptionsDetails) String() strin // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsOpenSearchServiceDomainEncryptionAtRestOptionsDetails) GoString() string { +func (s AwsIamPermissionsBoundary) GoString() string { return s.String() } -// SetEnabled sets the Enabled field's value. -func (s *AwsOpenSearchServiceDomainEncryptionAtRestOptionsDetails) SetEnabled(v bool) *AwsOpenSearchServiceDomainEncryptionAtRestOptionsDetails { - s.Enabled = &v +// SetPermissionsBoundaryArn sets the PermissionsBoundaryArn field's value. +func (s *AwsIamPermissionsBoundary) SetPermissionsBoundaryArn(v string) *AwsIamPermissionsBoundary { + s.PermissionsBoundaryArn = &v return s } -// SetKmsKeyId sets the KmsKeyId field's value. -func (s *AwsOpenSearchServiceDomainEncryptionAtRestOptionsDetails) SetKmsKeyId(v string) *AwsOpenSearchServiceDomainEncryptionAtRestOptionsDetails { - s.KmsKeyId = &v +// SetPermissionsBoundaryType sets the PermissionsBoundaryType field's value. +func (s *AwsIamPermissionsBoundary) SetPermissionsBoundaryType(v string) *AwsIamPermissionsBoundary { + s.PermissionsBoundaryType = &v return s } -// Configuration details for a log publishing option. -type AwsOpenSearchServiceDomainLogPublishingOption struct { +// Represents an IAM permissions policy. +type AwsIamPolicyDetails struct { _ struct{} `type:"structure"` - // The ARN of the CloudWatch Logs group to publish the logs to. - CloudWatchLogsLogGroupArn *string `type:"string"` + // The number of users, groups, and roles that the policy is attached to. + AttachmentCount *int64 `type:"integer"` - // Whether the log publishing is enabled. - Enabled *bool `type:"boolean"` + // When the policy was created. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + CreateDate *string `type:"string"` + + // The identifier of the default version of the policy. + DefaultVersionId *string `type:"string"` + + // A description of the policy. + Description *string `type:"string"` + + // Whether the policy can be attached to a user, group, or role. + IsAttachable *bool `type:"boolean"` + + // The path to the policy. + Path *string `type:"string"` + + // The number of users and roles that use the policy to set the permissions + // boundary. + PermissionsBoundaryUsageCount *int64 `type:"integer"` + + // The unique identifier of the policy. + PolicyId *string `type:"string"` + + // The name of the policy. + PolicyName *string `type:"string"` + + // List of versions of the policy. + PolicyVersionList []*AwsIamPolicyVersion `type:"list"` + + // When the policy was most recently updated. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + UpdateDate *string `type:"string"` } // String returns the string representation. @@ -25652,7 +25713,7 @@ type AwsOpenSearchServiceDomainLogPublishingOption struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsOpenSearchServiceDomainLogPublishingOption) String() string { +func (s AwsIamPolicyDetails) String() string { return awsutil.Prettify(s) } @@ -25661,34 +25722,92 @@ func (s AwsOpenSearchServiceDomainLogPublishingOption) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsOpenSearchServiceDomainLogPublishingOption) GoString() string { +func (s AwsIamPolicyDetails) GoString() string { return s.String() } -// SetCloudWatchLogsLogGroupArn sets the CloudWatchLogsLogGroupArn field's value. -func (s *AwsOpenSearchServiceDomainLogPublishingOption) SetCloudWatchLogsLogGroupArn(v string) *AwsOpenSearchServiceDomainLogPublishingOption { - s.CloudWatchLogsLogGroupArn = &v +// SetAttachmentCount sets the AttachmentCount field's value. +func (s *AwsIamPolicyDetails) SetAttachmentCount(v int64) *AwsIamPolicyDetails { + s.AttachmentCount = &v return s } -// SetEnabled sets the Enabled field's value. -func (s *AwsOpenSearchServiceDomainLogPublishingOption) SetEnabled(v bool) *AwsOpenSearchServiceDomainLogPublishingOption { - s.Enabled = &v +// SetCreateDate sets the CreateDate field's value. +func (s *AwsIamPolicyDetails) SetCreateDate(v string) *AwsIamPolicyDetails { + s.CreateDate = &v return s } -// Configures the CloudWatch Logs to publish for the OpenSearch domain. -type AwsOpenSearchServiceDomainLogPublishingOptionsDetails struct { - _ struct{} `type:"structure"` +// SetDefaultVersionId sets the DefaultVersionId field's value. +func (s *AwsIamPolicyDetails) SetDefaultVersionId(v string) *AwsIamPolicyDetails { + s.DefaultVersionId = &v + return s +} - // Configures the OpenSearch audit logs publishing. - AuditLogs *AwsOpenSearchServiceDomainLogPublishingOption `type:"structure"` +// SetDescription sets the Description field's value. +func (s *AwsIamPolicyDetails) SetDescription(v string) *AwsIamPolicyDetails { + s.Description = &v + return s +} - // Configures the OpenSearch index logs publishing. - IndexSlowLogs *AwsOpenSearchServiceDomainLogPublishingOption `type:"structure"` +// SetIsAttachable sets the IsAttachable field's value. +func (s *AwsIamPolicyDetails) SetIsAttachable(v bool) *AwsIamPolicyDetails { + s.IsAttachable = &v + return s +} - // Configures the OpenSearch search slow log publishing. - SearchSlowLogs *AwsOpenSearchServiceDomainLogPublishingOption `type:"structure"` +// SetPath sets the Path field's value. +func (s *AwsIamPolicyDetails) SetPath(v string) *AwsIamPolicyDetails { + s.Path = &v + return s +} + +// SetPermissionsBoundaryUsageCount sets the PermissionsBoundaryUsageCount field's value. +func (s *AwsIamPolicyDetails) SetPermissionsBoundaryUsageCount(v int64) *AwsIamPolicyDetails { + s.PermissionsBoundaryUsageCount = &v + return s +} + +// SetPolicyId sets the PolicyId field's value. +func (s *AwsIamPolicyDetails) SetPolicyId(v string) *AwsIamPolicyDetails { + s.PolicyId = &v + return s +} + +// SetPolicyName sets the PolicyName field's value. +func (s *AwsIamPolicyDetails) SetPolicyName(v string) *AwsIamPolicyDetails { + s.PolicyName = &v + return s +} + +// SetPolicyVersionList sets the PolicyVersionList field's value. +func (s *AwsIamPolicyDetails) SetPolicyVersionList(v []*AwsIamPolicyVersion) *AwsIamPolicyDetails { + s.PolicyVersionList = v + return s +} + +// SetUpdateDate sets the UpdateDate field's value. +func (s *AwsIamPolicyDetails) SetUpdateDate(v string) *AwsIamPolicyDetails { + s.UpdateDate = &v + return s +} + +// A version of an IAM policy. +type AwsIamPolicyVersion struct { + _ struct{} `type:"structure"` + + // Indicates when the version was created. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + CreateDate *string `type:"string"` + + // Whether the version is the default version. + IsDefaultVersion *bool `type:"boolean"` + + // The identifier of the policy version. + VersionId *string `type:"string"` } // String returns the string representation. @@ -25696,7 +25815,7 @@ type AwsOpenSearchServiceDomainLogPublishingOptionsDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsOpenSearchServiceDomainLogPublishingOptionsDetails) String() string { +func (s AwsIamPolicyVersion) String() string { return awsutil.Prettify(s) } @@ -25705,40 +25824,67 @@ func (s AwsOpenSearchServiceDomainLogPublishingOptionsDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsOpenSearchServiceDomainLogPublishingOptionsDetails) GoString() string { +func (s AwsIamPolicyVersion) GoString() string { return s.String() } -// SetAuditLogs sets the AuditLogs field's value. -func (s *AwsOpenSearchServiceDomainLogPublishingOptionsDetails) SetAuditLogs(v *AwsOpenSearchServiceDomainLogPublishingOption) *AwsOpenSearchServiceDomainLogPublishingOptionsDetails { - s.AuditLogs = v +// SetCreateDate sets the CreateDate field's value. +func (s *AwsIamPolicyVersion) SetCreateDate(v string) *AwsIamPolicyVersion { + s.CreateDate = &v return s } -// SetIndexSlowLogs sets the IndexSlowLogs field's value. -func (s *AwsOpenSearchServiceDomainLogPublishingOptionsDetails) SetIndexSlowLogs(v *AwsOpenSearchServiceDomainLogPublishingOption) *AwsOpenSearchServiceDomainLogPublishingOptionsDetails { - s.IndexSlowLogs = v +// SetIsDefaultVersion sets the IsDefaultVersion field's value. +func (s *AwsIamPolicyVersion) SetIsDefaultVersion(v bool) *AwsIamPolicyVersion { + s.IsDefaultVersion = &v return s } -// SetSearchSlowLogs sets the SearchSlowLogs field's value. -func (s *AwsOpenSearchServiceDomainLogPublishingOptionsDetails) SetSearchSlowLogs(v *AwsOpenSearchServiceDomainLogPublishingOption) *AwsOpenSearchServiceDomainLogPublishingOptionsDetails { - s.SearchSlowLogs = v +// SetVersionId sets the VersionId field's value. +func (s *AwsIamPolicyVersion) SetVersionId(v string) *AwsIamPolicyVersion { + s.VersionId = &v return s } -// Specifies information about the master user of the domain. -type AwsOpenSearchServiceDomainMasterUserOptionsDetails struct { +// Contains information about an IAM role, including all of the role's policies. +type AwsIamRoleDetails struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) for the master user. - MasterUserArn *string `type:"string"` + // The trust policy that grants permission to assume the role. + AssumeRolePolicyDocument *string `min:"1" type:"string"` - // The username for the master user. - MasterUserName *string `type:"string"` + // The list of the managed policies that are attached to the role. + AttachedManagedPolicies []*AwsIamAttachedManagedPolicy `type:"list"` - // The password for the master user. - MasterUserPassword *string `type:"string"` + // Indicates when the role was created. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + CreateDate *string `type:"string"` + + // The list of instance profiles that contain this role. + InstanceProfileList []*AwsIamInstanceProfile `type:"list"` + + // The maximum session duration (in seconds) that you want to set for the specified + // role. + MaxSessionDuration *int64 `type:"integer"` + + // The path to the role. + Path *string `type:"string"` + + // Information about the policy used to set the permissions boundary for an + // IAM principal. + PermissionsBoundary *AwsIamPermissionsBoundary `type:"structure"` + + // The stable and unique string identifying the role. + RoleId *string `type:"string"` + + // The friendly name that identifies the role. + RoleName *string `type:"string"` + + // The list of inline policies that are embedded in the role. + RolePolicyList []*AwsIamRolePolicy `type:"list"` } // String returns the string representation. @@ -25746,7 +25892,7 @@ type AwsOpenSearchServiceDomainMasterUserOptionsDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsOpenSearchServiceDomainMasterUserOptionsDetails) String() string { +func (s AwsIamRoleDetails) String() string { return awsutil.Prettify(s) } @@ -25755,34 +25901,99 @@ func (s AwsOpenSearchServiceDomainMasterUserOptionsDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsOpenSearchServiceDomainMasterUserOptionsDetails) GoString() string { +func (s AwsIamRoleDetails) GoString() string { return s.String() } -// SetMasterUserArn sets the MasterUserArn field's value. -func (s *AwsOpenSearchServiceDomainMasterUserOptionsDetails) SetMasterUserArn(v string) *AwsOpenSearchServiceDomainMasterUserOptionsDetails { - s.MasterUserArn = &v +// Validate inspects the fields of the type to determine if they are valid. +func (s *AwsIamRoleDetails) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AwsIamRoleDetails"} + if s.AssumeRolePolicyDocument != nil && len(*s.AssumeRolePolicyDocument) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssumeRolePolicyDocument", 1)) + } + if s.InstanceProfileList != nil { + for i, v := range s.InstanceProfileList { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InstanceProfileList", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssumeRolePolicyDocument sets the AssumeRolePolicyDocument field's value. +func (s *AwsIamRoleDetails) SetAssumeRolePolicyDocument(v string) *AwsIamRoleDetails { + s.AssumeRolePolicyDocument = &v return s } -// SetMasterUserName sets the MasterUserName field's value. -func (s *AwsOpenSearchServiceDomainMasterUserOptionsDetails) SetMasterUserName(v string) *AwsOpenSearchServiceDomainMasterUserOptionsDetails { - s.MasterUserName = &v +// SetAttachedManagedPolicies sets the AttachedManagedPolicies field's value. +func (s *AwsIamRoleDetails) SetAttachedManagedPolicies(v []*AwsIamAttachedManagedPolicy) *AwsIamRoleDetails { + s.AttachedManagedPolicies = v return s } -// SetMasterUserPassword sets the MasterUserPassword field's value. -func (s *AwsOpenSearchServiceDomainMasterUserOptionsDetails) SetMasterUserPassword(v string) *AwsOpenSearchServiceDomainMasterUserOptionsDetails { - s.MasterUserPassword = &v +// SetCreateDate sets the CreateDate field's value. +func (s *AwsIamRoleDetails) SetCreateDate(v string) *AwsIamRoleDetails { + s.CreateDate = &v return s } -// Provides details about the configuration for node-to-node encryption. -type AwsOpenSearchServiceDomainNodeToNodeEncryptionOptionsDetails struct { +// SetInstanceProfileList sets the InstanceProfileList field's value. +func (s *AwsIamRoleDetails) SetInstanceProfileList(v []*AwsIamInstanceProfile) *AwsIamRoleDetails { + s.InstanceProfileList = v + return s +} + +// SetMaxSessionDuration sets the MaxSessionDuration field's value. +func (s *AwsIamRoleDetails) SetMaxSessionDuration(v int64) *AwsIamRoleDetails { + s.MaxSessionDuration = &v + return s +} + +// SetPath sets the Path field's value. +func (s *AwsIamRoleDetails) SetPath(v string) *AwsIamRoleDetails { + s.Path = &v + return s +} + +// SetPermissionsBoundary sets the PermissionsBoundary field's value. +func (s *AwsIamRoleDetails) SetPermissionsBoundary(v *AwsIamPermissionsBoundary) *AwsIamRoleDetails { + s.PermissionsBoundary = v + return s +} + +// SetRoleId sets the RoleId field's value. +func (s *AwsIamRoleDetails) SetRoleId(v string) *AwsIamRoleDetails { + s.RoleId = &v + return s +} + +// SetRoleName sets the RoleName field's value. +func (s *AwsIamRoleDetails) SetRoleName(v string) *AwsIamRoleDetails { + s.RoleName = &v + return s +} + +// SetRolePolicyList sets the RolePolicyList field's value. +func (s *AwsIamRoleDetails) SetRolePolicyList(v []*AwsIamRolePolicy) *AwsIamRoleDetails { + s.RolePolicyList = v + return s +} + +// An inline policy that is embedded in the role. +type AwsIamRolePolicy struct { _ struct{} `type:"structure"` - // Whether node-to-node encryption is enabled. - Enabled *bool `type:"boolean"` + // The name of the policy. + PolicyName *string `type:"string"` } // String returns the string representation. @@ -25790,7 +26001,7 @@ type AwsOpenSearchServiceDomainNodeToNodeEncryptionOptionsDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsOpenSearchServiceDomainNodeToNodeEncryptionOptionsDetails) String() string { +func (s AwsIamRolePolicy) String() string { return awsutil.Prettify(s) } @@ -25799,55 +26010,47 @@ func (s AwsOpenSearchServiceDomainNodeToNodeEncryptionOptionsDetails) String() s // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsOpenSearchServiceDomainNodeToNodeEncryptionOptionsDetails) GoString() string { +func (s AwsIamRolePolicy) GoString() string { return s.String() } -// SetEnabled sets the Enabled field's value. -func (s *AwsOpenSearchServiceDomainNodeToNodeEncryptionOptionsDetails) SetEnabled(v bool) *AwsOpenSearchServiceDomainNodeToNodeEncryptionOptionsDetails { - s.Enabled = &v +// SetPolicyName sets the PolicyName field's value. +func (s *AwsIamRolePolicy) SetPolicyName(v string) *AwsIamRolePolicy { + s.PolicyName = &v return s } -// Provides information about the state of the domain relative to the latest -// service software. -type AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails struct { +// Information about an IAM user. +type AwsIamUserDetails struct { _ struct{} `type:"structure"` - // The epoch time when the deployment window closes for required updates. After - // this time, OpenSearch Service schedules the software upgrade automatically. - AutomatedUpdateDate *string `type:"string"` + // A list of the managed policies that are attached to the user. + AttachedManagedPolicies []*AwsIamAttachedManagedPolicy `type:"list"` - // Whether a request to update the domain can be canceled. - Cancellable *bool `type:"boolean"` + // Indicates when the user was created. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + CreateDate *string `type:"string"` - // The version of the service software that is currently installed on the domain. - CurrentVersion *string `type:"string"` + // A list of IAM groups that the user belongs to. + GroupList []*string `type:"list"` - // A more detailed description of the service software status. - Description *string `type:"string"` + // The path to the user. + Path *string `type:"string"` - // The most recent version of the service software. - NewVersion *string `type:"string"` + // The permissions boundary for the user. + PermissionsBoundary *AwsIamPermissionsBoundary `type:"structure"` - // Whether the service software update is optional. - OptionalDeployment *bool `type:"boolean"` + // The unique identifier for the user. + UserId *string `type:"string"` - // Whether a service software update is available for the domain. - UpdateAvailable *bool `type:"boolean"` + // The name of the user. + UserName *string `type:"string"` - // The status of the service software update. Valid values are as follows: - // - // * COMPLETED - // - // * ELIGIBLE - // - // * IN_PROGRESS - // - // * NOT_ELIGIBLE - // - // * PENDING_UPDATE - UpdateStatus *string `type:"string"` + // The list of inline policies that are embedded in the user. + UserPolicyList []*AwsIamUserPolicy `type:"list"` } // String returns the string representation. @@ -25855,7 +26058,7 @@ type AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails) String() string { +func (s AwsIamUserDetails) String() string { return awsutil.Prettify(s) } @@ -25864,69 +26067,64 @@ func (s AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails) String() string // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails) GoString() string { +func (s AwsIamUserDetails) GoString() string { return s.String() } -// SetAutomatedUpdateDate sets the AutomatedUpdateDate field's value. -func (s *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails) SetAutomatedUpdateDate(v string) *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails { - s.AutomatedUpdateDate = &v +// SetAttachedManagedPolicies sets the AttachedManagedPolicies field's value. +func (s *AwsIamUserDetails) SetAttachedManagedPolicies(v []*AwsIamAttachedManagedPolicy) *AwsIamUserDetails { + s.AttachedManagedPolicies = v return s } -// SetCancellable sets the Cancellable field's value. -func (s *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails) SetCancellable(v bool) *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails { - s.Cancellable = &v +// SetCreateDate sets the CreateDate field's value. +func (s *AwsIamUserDetails) SetCreateDate(v string) *AwsIamUserDetails { + s.CreateDate = &v return s } -// SetCurrentVersion sets the CurrentVersion field's value. -func (s *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails) SetCurrentVersion(v string) *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails { - s.CurrentVersion = &v +// SetGroupList sets the GroupList field's value. +func (s *AwsIamUserDetails) SetGroupList(v []*string) *AwsIamUserDetails { + s.GroupList = v return s } -// SetDescription sets the Description field's value. -func (s *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails) SetDescription(v string) *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails { - s.Description = &v +// SetPath sets the Path field's value. +func (s *AwsIamUserDetails) SetPath(v string) *AwsIamUserDetails { + s.Path = &v return s } -// SetNewVersion sets the NewVersion field's value. -func (s *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails) SetNewVersion(v string) *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails { - s.NewVersion = &v +// SetPermissionsBoundary sets the PermissionsBoundary field's value. +func (s *AwsIamUserDetails) SetPermissionsBoundary(v *AwsIamPermissionsBoundary) *AwsIamUserDetails { + s.PermissionsBoundary = v return s } -// SetOptionalDeployment sets the OptionalDeployment field's value. -func (s *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails) SetOptionalDeployment(v bool) *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails { - s.OptionalDeployment = &v +// SetUserId sets the UserId field's value. +func (s *AwsIamUserDetails) SetUserId(v string) *AwsIamUserDetails { + s.UserId = &v return s } -// SetUpdateAvailable sets the UpdateAvailable field's value. -func (s *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails) SetUpdateAvailable(v bool) *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails { - s.UpdateAvailable = &v +// SetUserName sets the UserName field's value. +func (s *AwsIamUserDetails) SetUserName(v string) *AwsIamUserDetails { + s.UserName = &v return s } -// SetUpdateStatus sets the UpdateStatus field's value. -func (s *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails) SetUpdateStatus(v string) *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails { - s.UpdateStatus = &v +// SetUserPolicyList sets the UserPolicyList field's value. +func (s *AwsIamUserDetails) SetUserPolicyList(v []*AwsIamUserPolicy) *AwsIamUserDetails { + s.UserPolicyList = v return s } -// Contains information that OpenSearch Service derives based on the VPCOptions -// for the domain. -type AwsOpenSearchServiceDomainVpcOptionsDetails struct { +// Information about an inline policy that is embedded in the user. +type AwsIamUserPolicy struct { _ struct{} `type:"structure"` - // The list of security group IDs that are associated with the VPC endpoints - // for the domain. - SecurityGroupIds []*string `type:"list"` - - // A list of subnet IDs that are associated with the VPC endpoints for the domain. - SubnetIds []*string `type:"list"` + // The name of the policy. + PolicyName *string `type:"string"` } // String returns the string representation. @@ -25934,7 +26132,7 @@ type AwsOpenSearchServiceDomainVpcOptionsDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsOpenSearchServiceDomainVpcOptionsDetails) String() string { +func (s AwsIamUserPolicy) String() string { return awsutil.Prettify(s) } @@ -25943,38 +26141,38 @@ func (s AwsOpenSearchServiceDomainVpcOptionsDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsOpenSearchServiceDomainVpcOptionsDetails) GoString() string { +func (s AwsIamUserPolicy) GoString() string { return s.String() } -// SetSecurityGroupIds sets the SecurityGroupIds field's value. -func (s *AwsOpenSearchServiceDomainVpcOptionsDetails) SetSecurityGroupIds(v []*string) *AwsOpenSearchServiceDomainVpcOptionsDetails { - s.SecurityGroupIds = v - return s -} - -// SetSubnetIds sets the SubnetIds field's value. -func (s *AwsOpenSearchServiceDomainVpcOptionsDetails) SetSubnetIds(v []*string) *AwsOpenSearchServiceDomainVpcOptionsDetails { - s.SubnetIds = v +// SetPolicyName sets the PolicyName field's value. +func (s *AwsIamUserPolicy) SetPolicyName(v string) *AwsIamUserPolicy { + s.PolicyName = &v return s } -// An IAM role that is associated with the Amazon RDS DB cluster. -type AwsRdsDbClusterAssociatedRole struct { +// Provides information about an Amazon Kinesis data stream. +type AwsKinesisStreamDetails struct { _ struct{} `type:"structure"` - // The ARN of the IAM role. - RoleArn *string `type:"string"` + // The Amazon Resource Name (ARN) of the Kinesis data stream. + Arn *string `type:"string"` - // The status of the association between the IAM role and the DB cluster. Valid - // values are as follows: - // - // * ACTIVE - // - // * INVALID - // - // * PENDING - Status *string `type:"string"` + // The name of the Kinesis stream. If you don't specify a name, CloudFront generates + // a unique physical ID and uses that ID for the stream name. + Name *string `type:"string"` + + // The number of hours for the data records that are stored in shards to remain + // accessible. + RetentionPeriodHours *int64 `type:"integer"` + + // The number of shards that the stream uses. + ShardCount *int64 `type:"integer"` + + // When specified, enables or updates server-side encryption using an KMS key + // for a specified stream. Removing this property from your stack template and + // updating your stack disables encryption. + StreamEncryption *AwsKinesisStreamStreamEncryptionDetails `type:"structure"` } // String returns the string representation. @@ -25982,7 +26180,7 @@ type AwsRdsDbClusterAssociatedRole struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbClusterAssociatedRole) String() string { +func (s AwsKinesisStreamDetails) String() string { return awsutil.Prettify(s) } @@ -25991,186 +26189,133 @@ func (s AwsRdsDbClusterAssociatedRole) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbClusterAssociatedRole) GoString() string { +func (s AwsKinesisStreamDetails) GoString() string { return s.String() } -// SetRoleArn sets the RoleArn field's value. -func (s *AwsRdsDbClusterAssociatedRole) SetRoleArn(v string) *AwsRdsDbClusterAssociatedRole { - s.RoleArn = &v +// SetArn sets the Arn field's value. +func (s *AwsKinesisStreamDetails) SetArn(v string) *AwsKinesisStreamDetails { + s.Arn = &v return s } -// SetStatus sets the Status field's value. -func (s *AwsRdsDbClusterAssociatedRole) SetStatus(v string) *AwsRdsDbClusterAssociatedRole { - s.Status = &v +// SetName sets the Name field's value. +func (s *AwsKinesisStreamDetails) SetName(v string) *AwsKinesisStreamDetails { + s.Name = &v return s } -// Information about an Amazon RDS DB cluster. -type AwsRdsDbClusterDetails struct { +// SetRetentionPeriodHours sets the RetentionPeriodHours field's value. +func (s *AwsKinesisStreamDetails) SetRetentionPeriodHours(v int64) *AwsKinesisStreamDetails { + s.RetentionPeriodHours = &v + return s +} + +// SetShardCount sets the ShardCount field's value. +func (s *AwsKinesisStreamDetails) SetShardCount(v int64) *AwsKinesisStreamDetails { + s.ShardCount = &v + return s +} + +// SetStreamEncryption sets the StreamEncryption field's value. +func (s *AwsKinesisStreamDetails) SetStreamEncryption(v *AwsKinesisStreamStreamEncryptionDetails) *AwsKinesisStreamDetails { + s.StreamEncryption = v + return s +} + +// Provides information about stream encryption. +type AwsKinesisStreamStreamEncryptionDetails struct { _ struct{} `type:"structure"` - // The status of the database activity stream. Valid values are as follows: - // - // * started - // - // * starting - // - // * stopped - // - // * stopping - ActivityStreamStatus *string `type:"string"` + // The encryption type to use. + EncryptionType *string `type:"string"` - // For all database engines except Aurora, specifies the allocated storage size - // in gibibytes (GiB). - AllocatedStorage *int64 `type:"integer"` + // The globally unique identifier for the customer-managed KMS key to use for + // encryption. + KeyId *string `type:"string"` +} - // A list of the IAM roles that are associated with the DB cluster. - AssociatedRoles []*AwsRdsDbClusterAssociatedRole `type:"list"` +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsKinesisStreamStreamEncryptionDetails) String() string { + return awsutil.Prettify(s) +} - // A list of Availability Zones (AZs) where instances in the DB cluster can - // be created. - AvailabilityZones []*string `type:"list"` +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsKinesisStreamStreamEncryptionDetails) GoString() string { + return s.String() +} - // The number of days for which automated backups are retained. - BackupRetentionPeriod *int64 `type:"integer"` +// SetEncryptionType sets the EncryptionType field's value. +func (s *AwsKinesisStreamStreamEncryptionDetails) SetEncryptionType(v string) *AwsKinesisStreamStreamEncryptionDetails { + s.EncryptionType = &v + return s +} - // Indicates when the DB cluster was created, in Universal Coordinated Time - // (UTC). +// SetKeyId sets the KeyId field's value. +func (s *AwsKinesisStreamStreamEncryptionDetails) SetKeyId(v string) *AwsKinesisStreamStreamEncryptionDetails { + s.KeyId = &v + return s +} + +// Contains metadata about an KMS key. +type AwsKmsKeyDetails struct { + _ struct{} `type:"structure"` + + // The twelve-digit account ID of the Amazon Web Services account that owns + // the KMS key. + AWSAccountId *string `type:"string"` + + // Indicates when the KMS key was created. // // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot // contain spaces. For example, 2020-03-22T13:22:13.933Z. - ClusterCreateTime *string `type:"string"` - - // Whether tags are copied from the DB cluster to snapshots of the DB cluster. - CopyTagsToSnapshot *bool `type:"boolean"` + CreationDate *float64 `type:"double"` - // Whether the DB cluster is a clone of a DB cluster owned by a different Amazon - // Web Services account. - CrossAccountClone *bool `type:"boolean"` + // A description of the KMS key. + Description *string `type:"string"` - // A list of custom endpoints for the DB cluster. - CustomEndpoints []*string `type:"list"` + // The globally unique identifier for the KMS key. + KeyId *string `type:"string"` - // The name of the database. - DatabaseName *string `type:"string"` - - // The DB cluster identifier that the user assigned to the cluster. This identifier - // is the unique key that identifies a DB cluster. - DbClusterIdentifier *string `type:"string"` - - // The list of instances that make up the DB cluster. - DbClusterMembers []*AwsRdsDbClusterMember `type:"list"` - - // The list of option group memberships for this DB cluster. - DbClusterOptionGroupMemberships []*AwsRdsDbClusterOptionGroupMembership `type:"list"` - - // The name of the DB cluster parameter group for the DB cluster. - DbClusterParameterGroup *string `type:"string"` - - // The identifier of the DB cluster. The identifier must be unique within each - // Amazon Web Services Region and is immutable. - DbClusterResourceId *string `type:"string"` - - // The subnet group that is associated with the DB cluster, including the name, - // description, and subnets in the subnet group. - DbSubnetGroup *string `type:"string"` - - // Whether the DB cluster has deletion protection enabled. - DeletionProtection *bool `type:"boolean"` - - // The Active Directory domain membership records that are associated with the - // DB cluster. - DomainMemberships []*AwsRdsDbDomainMembership `type:"list"` - - // A list of log types that this DB cluster is configured to export to CloudWatch - // Logs. - EnabledCloudWatchLogsExports []*string `type:"list"` - - // The connection endpoint for the primary instance of the DB cluster. - Endpoint *string `type:"string"` + // The manager of the KMS key. KMS keys in your Amazon Web Services account + // are either customer managed or Amazon Web Services managed. + KeyManager *string `type:"string"` - // The name of the database engine to use for this DB cluster. Valid values - // are as follows: - // - // * aurora - // - // * aurora-mysql - // - // * aurora-postgresql - Engine *string `type:"string"` + // Whether the key has key rotation enabled. + KeyRotationStatus *bool `type:"boolean"` - // The database engine mode of the DB cluster.Valid values are as follows: - // - // * global + // The state of the KMS key. Valid values are as follows: // - // * multimaster + // * Disabled // - // * parallelquery + // * Enabled // - // * provisioned + // * PendingDeletion // - // * serverless - EngineMode *string `type:"string"` - - // The version number of the database engine to use. - EngineVersion *string `type:"string"` - - // Specifies the identifier that Amazon Route 53 assigns when you create a hosted - // zone. - HostedZoneId *string `type:"string"` - - // Whether the HTTP endpoint for an Aurora Serverless DB cluster is enabled. - HttpEndpointEnabled *bool `type:"boolean"` - - // Whether the mapping of IAM accounts to database accounts is enabled. - IamDatabaseAuthenticationEnabled *bool `type:"boolean"` - - // The ARN of the KMS master key that is used to encrypt the database instances - // in the DB cluster. - KmsKeyId *string `type:"string"` - - // The name of the master user for the DB cluster. - MasterUsername *string `type:"string"` - - // Whether the DB cluster has instances in multiple Availability Zones. - MultiAz *bool `type:"boolean"` - - // The port number on which the DB instances in the DB cluster accept connections. - Port *int64 `type:"integer"` - - // The range of time each day when automated backups are created, if automated - // backups are enabled. + // * PendingImport // - // Uses the format HH:MM-HH:MM. For example, 04:52-05:22. - PreferredBackupWindow *string `type:"string"` + // * Unavailable + KeyState *string `type:"string"` - // The weekly time range during which system maintenance can occur, in Universal - // Coordinated Time (UTC). + // The source of the KMS key material. // - // Uses the format :HH:MM-:HH:MM. + // When this value is AWS_KMS, KMS created the key material. // - // For the day values, use mon|tue|wed|thu|fri|sat|sun. + // When this value is EXTERNAL, the key material was imported from your existing + // key management infrastructure or the KMS key lacks key material. // - // For example, sun:09:32-sun:10:02. - PreferredMaintenanceWindow *string `type:"string"` - - // The identifiers of the read replicas that are associated with this DB cluster. - ReadReplicaIdentifiers []*string `type:"list"` - - // The reader endpoint for the DB cluster. - ReaderEndpoint *string `type:"string"` - - // The current status of this DB cluster. - Status *string `type:"string"` - - // Whether the DB cluster is encrypted. - StorageEncrypted *bool `type:"boolean"` - - // A list of VPC security groups that the DB cluster belongs to. - VpcSecurityGroups []*AwsRdsDbInstanceVpcSecurityGroup `type:"list"` + // When this value is AWS_CLOUDHSM, the key material was created in the CloudHSM + // cluster associated with a custom key store. + Origin *string `type:"string"` } // String returns the string representation. @@ -26178,7 +26323,7 @@ type AwsRdsDbClusterDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbClusterDetails) String() string { +func (s AwsKmsKeyDetails) String() string { return awsutil.Prettify(s) } @@ -26187,248 +26332,372 @@ func (s AwsRdsDbClusterDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbClusterDetails) GoString() string { +func (s AwsKmsKeyDetails) GoString() string { return s.String() } -// SetActivityStreamStatus sets the ActivityStreamStatus field's value. -func (s *AwsRdsDbClusterDetails) SetActivityStreamStatus(v string) *AwsRdsDbClusterDetails { - s.ActivityStreamStatus = &v +// SetAWSAccountId sets the AWSAccountId field's value. +func (s *AwsKmsKeyDetails) SetAWSAccountId(v string) *AwsKmsKeyDetails { + s.AWSAccountId = &v return s } -// SetAllocatedStorage sets the AllocatedStorage field's value. -func (s *AwsRdsDbClusterDetails) SetAllocatedStorage(v int64) *AwsRdsDbClusterDetails { - s.AllocatedStorage = &v +// SetCreationDate sets the CreationDate field's value. +func (s *AwsKmsKeyDetails) SetCreationDate(v float64) *AwsKmsKeyDetails { + s.CreationDate = &v return s } -// SetAssociatedRoles sets the AssociatedRoles field's value. -func (s *AwsRdsDbClusterDetails) SetAssociatedRoles(v []*AwsRdsDbClusterAssociatedRole) *AwsRdsDbClusterDetails { - s.AssociatedRoles = v +// SetDescription sets the Description field's value. +func (s *AwsKmsKeyDetails) SetDescription(v string) *AwsKmsKeyDetails { + s.Description = &v return s } -// SetAvailabilityZones sets the AvailabilityZones field's value. -func (s *AwsRdsDbClusterDetails) SetAvailabilityZones(v []*string) *AwsRdsDbClusterDetails { - s.AvailabilityZones = v +// SetKeyId sets the KeyId field's value. +func (s *AwsKmsKeyDetails) SetKeyId(v string) *AwsKmsKeyDetails { + s.KeyId = &v return s } -// SetBackupRetentionPeriod sets the BackupRetentionPeriod field's value. -func (s *AwsRdsDbClusterDetails) SetBackupRetentionPeriod(v int64) *AwsRdsDbClusterDetails { - s.BackupRetentionPeriod = &v +// SetKeyManager sets the KeyManager field's value. +func (s *AwsKmsKeyDetails) SetKeyManager(v string) *AwsKmsKeyDetails { + s.KeyManager = &v return s } -// SetClusterCreateTime sets the ClusterCreateTime field's value. -func (s *AwsRdsDbClusterDetails) SetClusterCreateTime(v string) *AwsRdsDbClusterDetails { - s.ClusterCreateTime = &v +// SetKeyRotationStatus sets the KeyRotationStatus field's value. +func (s *AwsKmsKeyDetails) SetKeyRotationStatus(v bool) *AwsKmsKeyDetails { + s.KeyRotationStatus = &v return s } -// SetCopyTagsToSnapshot sets the CopyTagsToSnapshot field's value. -func (s *AwsRdsDbClusterDetails) SetCopyTagsToSnapshot(v bool) *AwsRdsDbClusterDetails { - s.CopyTagsToSnapshot = &v +// SetKeyState sets the KeyState field's value. +func (s *AwsKmsKeyDetails) SetKeyState(v string) *AwsKmsKeyDetails { + s.KeyState = &v return s } -// SetCrossAccountClone sets the CrossAccountClone field's value. -func (s *AwsRdsDbClusterDetails) SetCrossAccountClone(v bool) *AwsRdsDbClusterDetails { - s.CrossAccountClone = &v +// SetOrigin sets the Origin field's value. +func (s *AwsKmsKeyDetails) SetOrigin(v string) *AwsKmsKeyDetails { + s.Origin = &v return s } -// SetCustomEndpoints sets the CustomEndpoints field's value. -func (s *AwsRdsDbClusterDetails) SetCustomEndpoints(v []*string) *AwsRdsDbClusterDetails { - s.CustomEndpoints = v - return s +// The code for the Lambda function. You can specify either an object in Amazon +// S3, or upload a deployment package directly. +type AwsLambdaFunctionCode struct { + _ struct{} `type:"structure"` + + // An Amazon S3 bucket in the same Amazon Web Services Region as your function. + // The bucket can be in a different Amazon Web Services account. + S3Bucket *string `type:"string"` + + // The Amazon S3 key of the deployment package. + S3Key *string `type:"string"` + + // For versioned objects, the version of the deployment package object to use. + S3ObjectVersion *string `type:"string"` + + // The base64-encoded contents of the deployment package. Amazon Web Services + // SDK and Amazon Web Services CLI clients handle the encoding for you. + ZipFile *string `type:"string"` } -// SetDatabaseName sets the DatabaseName field's value. -func (s *AwsRdsDbClusterDetails) SetDatabaseName(v string) *AwsRdsDbClusterDetails { - s.DatabaseName = &v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsLambdaFunctionCode) String() string { + return awsutil.Prettify(s) } -// SetDbClusterIdentifier sets the DbClusterIdentifier field's value. -func (s *AwsRdsDbClusterDetails) SetDbClusterIdentifier(v string) *AwsRdsDbClusterDetails { - s.DbClusterIdentifier = &v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsLambdaFunctionCode) GoString() string { + return s.String() } -// SetDbClusterMembers sets the DbClusterMembers field's value. -func (s *AwsRdsDbClusterDetails) SetDbClusterMembers(v []*AwsRdsDbClusterMember) *AwsRdsDbClusterDetails { - s.DbClusterMembers = v +// SetS3Bucket sets the S3Bucket field's value. +func (s *AwsLambdaFunctionCode) SetS3Bucket(v string) *AwsLambdaFunctionCode { + s.S3Bucket = &v return s } -// SetDbClusterOptionGroupMemberships sets the DbClusterOptionGroupMemberships field's value. -func (s *AwsRdsDbClusterDetails) SetDbClusterOptionGroupMemberships(v []*AwsRdsDbClusterOptionGroupMembership) *AwsRdsDbClusterDetails { - s.DbClusterOptionGroupMemberships = v +// SetS3Key sets the S3Key field's value. +func (s *AwsLambdaFunctionCode) SetS3Key(v string) *AwsLambdaFunctionCode { + s.S3Key = &v return s } -// SetDbClusterParameterGroup sets the DbClusterParameterGroup field's value. -func (s *AwsRdsDbClusterDetails) SetDbClusterParameterGroup(v string) *AwsRdsDbClusterDetails { - s.DbClusterParameterGroup = &v +// SetS3ObjectVersion sets the S3ObjectVersion field's value. +func (s *AwsLambdaFunctionCode) SetS3ObjectVersion(v string) *AwsLambdaFunctionCode { + s.S3ObjectVersion = &v return s } -// SetDbClusterResourceId sets the DbClusterResourceId field's value. -func (s *AwsRdsDbClusterDetails) SetDbClusterResourceId(v string) *AwsRdsDbClusterDetails { - s.DbClusterResourceId = &v +// SetZipFile sets the ZipFile field's value. +func (s *AwsLambdaFunctionCode) SetZipFile(v string) *AwsLambdaFunctionCode { + s.ZipFile = &v return s } -// SetDbSubnetGroup sets the DbSubnetGroup field's value. -func (s *AwsRdsDbClusterDetails) SetDbSubnetGroup(v string) *AwsRdsDbClusterDetails { - s.DbSubnetGroup = &v - return s +// The dead-letter queue for failed asynchronous invocations. +type AwsLambdaFunctionDeadLetterConfig struct { + _ struct{} `type:"structure"` + + // The ARN of an SQS queue or SNS topic. + TargetArn *string `type:"string"` } -// SetDeletionProtection sets the DeletionProtection field's value. -func (s *AwsRdsDbClusterDetails) SetDeletionProtection(v bool) *AwsRdsDbClusterDetails { - s.DeletionProtection = &v +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsLambdaFunctionDeadLetterConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsLambdaFunctionDeadLetterConfig) GoString() string { + return s.String() +} + +// SetTargetArn sets the TargetArn field's value. +func (s *AwsLambdaFunctionDeadLetterConfig) SetTargetArn(v string) *AwsLambdaFunctionDeadLetterConfig { + s.TargetArn = &v return s } -// SetDomainMemberships sets the DomainMemberships field's value. -func (s *AwsRdsDbClusterDetails) SetDomainMemberships(v []*AwsRdsDbDomainMembership) *AwsRdsDbClusterDetails { - s.DomainMemberships = v +// Details about an Lambda function's configuration. +type AwsLambdaFunctionDetails struct { + _ struct{} `type:"structure"` + + // The instruction set architecture that the function uses. Valid values are + // x86_64 or arm64. + Architectures []*string `type:"list"` + + // An AwsLambdaFunctionCode object. + Code *AwsLambdaFunctionCode `type:"structure"` + + // The SHA256 hash of the function's deployment package. + CodeSha256 *string `type:"string"` + + // The function's dead letter queue. + DeadLetterConfig *AwsLambdaFunctionDeadLetterConfig `type:"structure"` + + // The function's environment variables. + Environment *AwsLambdaFunctionEnvironment `type:"structure"` + + // The name of the function. + FunctionName *string `type:"string"` + + // The function that Lambda calls to begin executing your function. + Handler *string `type:"string"` + + // The KMS key that is used to encrypt the function's environment variables. + // This key is only returned if you've configured a customer managed customer + // managed key. + KmsKeyArn *string `type:"string"` + + // Indicates when the function was last updated. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + LastModified *string `type:"string"` + + // The function's layers. + Layers []*AwsLambdaFunctionLayer `type:"list"` + + // For Lambda@Edge functions, the ARN of the master function. + MasterArn *string `type:"string"` + + // The memory that is allocated to the function. + MemorySize *int64 `type:"integer"` + + // The type of deployment package that's used to deploy the function code to + // Lambda. Set to Image for a container image and Zip for a .zip file archive. + PackageType *string `type:"string"` + + // The latest updated revision of the function or alias. + RevisionId *string `type:"string"` + + // The function's execution role. + Role *string `type:"string"` + + // The runtime environment for the Lambda function. + Runtime *string `type:"string"` + + // The amount of time that Lambda allows a function to run before stopping it. + Timeout *int64 `type:"integer"` + + // The function's X-Ray tracing configuration. + TracingConfig *AwsLambdaFunctionTracingConfig `type:"structure"` + + // The version of the Lambda function. + Version *string `type:"string"` + + // The function's networking configuration. + VpcConfig *AwsLambdaFunctionVpcConfig `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsLambdaFunctionDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsLambdaFunctionDetails) GoString() string { + return s.String() +} + +// SetArchitectures sets the Architectures field's value. +func (s *AwsLambdaFunctionDetails) SetArchitectures(v []*string) *AwsLambdaFunctionDetails { + s.Architectures = v return s } -// SetEnabledCloudWatchLogsExports sets the EnabledCloudWatchLogsExports field's value. -func (s *AwsRdsDbClusterDetails) SetEnabledCloudWatchLogsExports(v []*string) *AwsRdsDbClusterDetails { - s.EnabledCloudWatchLogsExports = v +// SetCode sets the Code field's value. +func (s *AwsLambdaFunctionDetails) SetCode(v *AwsLambdaFunctionCode) *AwsLambdaFunctionDetails { + s.Code = v return s } -// SetEndpoint sets the Endpoint field's value. -func (s *AwsRdsDbClusterDetails) SetEndpoint(v string) *AwsRdsDbClusterDetails { - s.Endpoint = &v +// SetCodeSha256 sets the CodeSha256 field's value. +func (s *AwsLambdaFunctionDetails) SetCodeSha256(v string) *AwsLambdaFunctionDetails { + s.CodeSha256 = &v return s } -// SetEngine sets the Engine field's value. -func (s *AwsRdsDbClusterDetails) SetEngine(v string) *AwsRdsDbClusterDetails { - s.Engine = &v +// SetDeadLetterConfig sets the DeadLetterConfig field's value. +func (s *AwsLambdaFunctionDetails) SetDeadLetterConfig(v *AwsLambdaFunctionDeadLetterConfig) *AwsLambdaFunctionDetails { + s.DeadLetterConfig = v return s } -// SetEngineMode sets the EngineMode field's value. -func (s *AwsRdsDbClusterDetails) SetEngineMode(v string) *AwsRdsDbClusterDetails { - s.EngineMode = &v +// SetEnvironment sets the Environment field's value. +func (s *AwsLambdaFunctionDetails) SetEnvironment(v *AwsLambdaFunctionEnvironment) *AwsLambdaFunctionDetails { + s.Environment = v return s } -// SetEngineVersion sets the EngineVersion field's value. -func (s *AwsRdsDbClusterDetails) SetEngineVersion(v string) *AwsRdsDbClusterDetails { - s.EngineVersion = &v +// SetFunctionName sets the FunctionName field's value. +func (s *AwsLambdaFunctionDetails) SetFunctionName(v string) *AwsLambdaFunctionDetails { + s.FunctionName = &v return s } -// SetHostedZoneId sets the HostedZoneId field's value. -func (s *AwsRdsDbClusterDetails) SetHostedZoneId(v string) *AwsRdsDbClusterDetails { - s.HostedZoneId = &v +// SetHandler sets the Handler field's value. +func (s *AwsLambdaFunctionDetails) SetHandler(v string) *AwsLambdaFunctionDetails { + s.Handler = &v return s } -// SetHttpEndpointEnabled sets the HttpEndpointEnabled field's value. -func (s *AwsRdsDbClusterDetails) SetHttpEndpointEnabled(v bool) *AwsRdsDbClusterDetails { - s.HttpEndpointEnabled = &v +// SetKmsKeyArn sets the KmsKeyArn field's value. +func (s *AwsLambdaFunctionDetails) SetKmsKeyArn(v string) *AwsLambdaFunctionDetails { + s.KmsKeyArn = &v return s } -// SetIamDatabaseAuthenticationEnabled sets the IamDatabaseAuthenticationEnabled field's value. -func (s *AwsRdsDbClusterDetails) SetIamDatabaseAuthenticationEnabled(v bool) *AwsRdsDbClusterDetails { - s.IamDatabaseAuthenticationEnabled = &v +// SetLastModified sets the LastModified field's value. +func (s *AwsLambdaFunctionDetails) SetLastModified(v string) *AwsLambdaFunctionDetails { + s.LastModified = &v return s } -// SetKmsKeyId sets the KmsKeyId field's value. -func (s *AwsRdsDbClusterDetails) SetKmsKeyId(v string) *AwsRdsDbClusterDetails { - s.KmsKeyId = &v +// SetLayers sets the Layers field's value. +func (s *AwsLambdaFunctionDetails) SetLayers(v []*AwsLambdaFunctionLayer) *AwsLambdaFunctionDetails { + s.Layers = v return s } -// SetMasterUsername sets the MasterUsername field's value. -func (s *AwsRdsDbClusterDetails) SetMasterUsername(v string) *AwsRdsDbClusterDetails { - s.MasterUsername = &v +// SetMasterArn sets the MasterArn field's value. +func (s *AwsLambdaFunctionDetails) SetMasterArn(v string) *AwsLambdaFunctionDetails { + s.MasterArn = &v return s } -// SetMultiAz sets the MultiAz field's value. -func (s *AwsRdsDbClusterDetails) SetMultiAz(v bool) *AwsRdsDbClusterDetails { - s.MultiAz = &v +// SetMemorySize sets the MemorySize field's value. +func (s *AwsLambdaFunctionDetails) SetMemorySize(v int64) *AwsLambdaFunctionDetails { + s.MemorySize = &v return s } -// SetPort sets the Port field's value. -func (s *AwsRdsDbClusterDetails) SetPort(v int64) *AwsRdsDbClusterDetails { - s.Port = &v +// SetPackageType sets the PackageType field's value. +func (s *AwsLambdaFunctionDetails) SetPackageType(v string) *AwsLambdaFunctionDetails { + s.PackageType = &v return s } -// SetPreferredBackupWindow sets the PreferredBackupWindow field's value. -func (s *AwsRdsDbClusterDetails) SetPreferredBackupWindow(v string) *AwsRdsDbClusterDetails { - s.PreferredBackupWindow = &v +// SetRevisionId sets the RevisionId field's value. +func (s *AwsLambdaFunctionDetails) SetRevisionId(v string) *AwsLambdaFunctionDetails { + s.RevisionId = &v return s } -// SetPreferredMaintenanceWindow sets the PreferredMaintenanceWindow field's value. -func (s *AwsRdsDbClusterDetails) SetPreferredMaintenanceWindow(v string) *AwsRdsDbClusterDetails { - s.PreferredMaintenanceWindow = &v +// SetRole sets the Role field's value. +func (s *AwsLambdaFunctionDetails) SetRole(v string) *AwsLambdaFunctionDetails { + s.Role = &v return s } -// SetReadReplicaIdentifiers sets the ReadReplicaIdentifiers field's value. -func (s *AwsRdsDbClusterDetails) SetReadReplicaIdentifiers(v []*string) *AwsRdsDbClusterDetails { - s.ReadReplicaIdentifiers = v +// SetRuntime sets the Runtime field's value. +func (s *AwsLambdaFunctionDetails) SetRuntime(v string) *AwsLambdaFunctionDetails { + s.Runtime = &v return s } -// SetReaderEndpoint sets the ReaderEndpoint field's value. -func (s *AwsRdsDbClusterDetails) SetReaderEndpoint(v string) *AwsRdsDbClusterDetails { - s.ReaderEndpoint = &v +// SetTimeout sets the Timeout field's value. +func (s *AwsLambdaFunctionDetails) SetTimeout(v int64) *AwsLambdaFunctionDetails { + s.Timeout = &v return s } -// SetStatus sets the Status field's value. -func (s *AwsRdsDbClusterDetails) SetStatus(v string) *AwsRdsDbClusterDetails { - s.Status = &v +// SetTracingConfig sets the TracingConfig field's value. +func (s *AwsLambdaFunctionDetails) SetTracingConfig(v *AwsLambdaFunctionTracingConfig) *AwsLambdaFunctionDetails { + s.TracingConfig = v return s } -// SetStorageEncrypted sets the StorageEncrypted field's value. -func (s *AwsRdsDbClusterDetails) SetStorageEncrypted(v bool) *AwsRdsDbClusterDetails { - s.StorageEncrypted = &v +// SetVersion sets the Version field's value. +func (s *AwsLambdaFunctionDetails) SetVersion(v string) *AwsLambdaFunctionDetails { + s.Version = &v return s } -// SetVpcSecurityGroups sets the VpcSecurityGroups field's value. -func (s *AwsRdsDbClusterDetails) SetVpcSecurityGroups(v []*AwsRdsDbInstanceVpcSecurityGroup) *AwsRdsDbClusterDetails { - s.VpcSecurityGroups = v +// SetVpcConfig sets the VpcConfig field's value. +func (s *AwsLambdaFunctionDetails) SetVpcConfig(v *AwsLambdaFunctionVpcConfig) *AwsLambdaFunctionDetails { + s.VpcConfig = v return s } -// Information about an instance in the DB cluster. -type AwsRdsDbClusterMember struct { +// A function's environment variable settings. +type AwsLambdaFunctionEnvironment struct { _ struct{} `type:"structure"` - // The status of the DB cluster parameter group for this member of the DB cluster. - DbClusterParameterGroupStatus *string `type:"string"` - - // The instance identifier for this member of the DB cluster. - DbInstanceIdentifier *string `type:"string"` - - // Whether the cluster member is the primary instance for the DB cluster. - IsClusterWriter *bool `type:"boolean"` + // An AwsLambdaFunctionEnvironmentError object. + Error *AwsLambdaFunctionEnvironmentError `type:"structure"` - // Specifies the order in which an Aurora replica is promoted to the primary - // instance when the existing primary instance fails. - PromotionTier *int64 `type:"integer"` + // Environment variable key-value pairs. + Variables map[string]*string `type:"map"` } // String returns the string representation. @@ -26436,7 +26705,7 @@ type AwsRdsDbClusterMember struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbClusterMember) String() string { +func (s AwsLambdaFunctionEnvironment) String() string { return awsutil.Prettify(s) } @@ -26445,43 +26714,72 @@ func (s AwsRdsDbClusterMember) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbClusterMember) GoString() string { +func (s AwsLambdaFunctionEnvironment) GoString() string { return s.String() } -// SetDbClusterParameterGroupStatus sets the DbClusterParameterGroupStatus field's value. -func (s *AwsRdsDbClusterMember) SetDbClusterParameterGroupStatus(v string) *AwsRdsDbClusterMember { - s.DbClusterParameterGroupStatus = &v +// SetError sets the Error field's value. +func (s *AwsLambdaFunctionEnvironment) SetError(v *AwsLambdaFunctionEnvironmentError) *AwsLambdaFunctionEnvironment { + s.Error = v return s } -// SetDbInstanceIdentifier sets the DbInstanceIdentifier field's value. -func (s *AwsRdsDbClusterMember) SetDbInstanceIdentifier(v string) *AwsRdsDbClusterMember { - s.DbInstanceIdentifier = &v +// SetVariables sets the Variables field's value. +func (s *AwsLambdaFunctionEnvironment) SetVariables(v map[string]*string) *AwsLambdaFunctionEnvironment { + s.Variables = v return s } -// SetIsClusterWriter sets the IsClusterWriter field's value. -func (s *AwsRdsDbClusterMember) SetIsClusterWriter(v bool) *AwsRdsDbClusterMember { - s.IsClusterWriter = &v +// Error messages for environment variables that could not be applied. +type AwsLambdaFunctionEnvironmentError struct { + _ struct{} `type:"structure"` + + // The error code. + ErrorCode *string `type:"string"` + + // The error message. + Message *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsLambdaFunctionEnvironmentError) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsLambdaFunctionEnvironmentError) GoString() string { + return s.String() +} + +// SetErrorCode sets the ErrorCode field's value. +func (s *AwsLambdaFunctionEnvironmentError) SetErrorCode(v string) *AwsLambdaFunctionEnvironmentError { + s.ErrorCode = &v return s } -// SetPromotionTier sets the PromotionTier field's value. -func (s *AwsRdsDbClusterMember) SetPromotionTier(v int64) *AwsRdsDbClusterMember { - s.PromotionTier = &v +// SetMessage sets the Message field's value. +func (s *AwsLambdaFunctionEnvironmentError) SetMessage(v string) *AwsLambdaFunctionEnvironmentError { + s.Message = &v return s } -// Information about an option group membership for a DB cluster. -type AwsRdsDbClusterOptionGroupMembership struct { +// An Lambda layer. +type AwsLambdaFunctionLayer struct { _ struct{} `type:"structure"` - // The name of the DB cluster option group. - DbClusterOptionGroupName *string `type:"string"` + // The ARN of the function layer. + Arn *string `type:"string"` - // The status of the DB cluster option group. - Status *string `type:"string"` + // The size of the layer archive in bytes. + CodeSize *int64 `type:"integer"` } // String returns the string representation. @@ -26489,7 +26787,7 @@ type AwsRdsDbClusterOptionGroupMembership struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbClusterOptionGroupMembership) String() string { +func (s AwsLambdaFunctionLayer) String() string { return awsutil.Prettify(s) } @@ -26498,89 +26796,124 @@ func (s AwsRdsDbClusterOptionGroupMembership) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbClusterOptionGroupMembership) GoString() string { +func (s AwsLambdaFunctionLayer) GoString() string { return s.String() } -// SetDbClusterOptionGroupName sets the DbClusterOptionGroupName field's value. -func (s *AwsRdsDbClusterOptionGroupMembership) SetDbClusterOptionGroupName(v string) *AwsRdsDbClusterOptionGroupMembership { - s.DbClusterOptionGroupName = &v +// SetArn sets the Arn field's value. +func (s *AwsLambdaFunctionLayer) SetArn(v string) *AwsLambdaFunctionLayer { + s.Arn = &v return s } -// SetStatus sets the Status field's value. -func (s *AwsRdsDbClusterOptionGroupMembership) SetStatus(v string) *AwsRdsDbClusterOptionGroupMembership { - s.Status = &v +// SetCodeSize sets the CodeSize field's value. +func (s *AwsLambdaFunctionLayer) SetCodeSize(v int64) *AwsLambdaFunctionLayer { + s.CodeSize = &v return s } -// Information about an Amazon RDS DB cluster snapshot. -type AwsRdsDbClusterSnapshotDetails struct { +// The function's X-Ray tracing configuration. +type AwsLambdaFunctionTracingConfig struct { _ struct{} `type:"structure"` - // Specifies the allocated storage size in gibibytes (GiB). - AllocatedStorage *int64 `type:"integer"` + // The tracing mode. + Mode *string `type:"string"` +} - // A list of Availability Zones where instances in the DB cluster can be created. - AvailabilityZones []*string `type:"list"` +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsLambdaFunctionTracingConfig) String() string { + return awsutil.Prettify(s) +} - // Indicates when the DB cluster was created, in Universal Coordinated Time - // (UTC). - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - ClusterCreateTime *string `type:"string"` +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsLambdaFunctionTracingConfig) GoString() string { + return s.String() +} - // The DB cluster identifier. - DbClusterIdentifier *string `type:"string"` +// SetMode sets the Mode field's value. +func (s *AwsLambdaFunctionTracingConfig) SetMode(v string) *AwsLambdaFunctionTracingConfig { + s.Mode = &v + return s +} - // The identifier of the DB cluster snapshot. - DbClusterSnapshotIdentifier *string `type:"string"` +// The VPC security groups and subnets that are attached to a Lambda function. +type AwsLambdaFunctionVpcConfig struct { + _ struct{} `type:"structure"` - // The name of the database engine that you want to use for this DB instance. - Engine *string `type:"string"` + // A list of VPC security groups IDs. + SecurityGroupIds []*string `type:"list"` - // The version of the database engine to use. - EngineVersion *string `type:"string"` + // A list of VPC subnet IDs. + SubnetIds []*string `type:"list"` - // Whether mapping of IAM accounts to database accounts is enabled. - IamDatabaseAuthenticationEnabled *bool `type:"boolean"` + // The ID of the VPC. + VpcId *string `type:"string"` +} - // The ARN of the KMS master key that is used to encrypt the database instances - // in the DB cluster. - KmsKeyId *string `type:"string"` +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsLambdaFunctionVpcConfig) String() string { + return awsutil.Prettify(s) +} - // The license model information for this DB cluster snapshot. - LicenseModel *string `type:"string"` +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsLambdaFunctionVpcConfig) GoString() string { + return s.String() +} - // The name of the master user for the DB cluster. - MasterUsername *string `type:"string"` +// SetSecurityGroupIds sets the SecurityGroupIds field's value. +func (s *AwsLambdaFunctionVpcConfig) SetSecurityGroupIds(v []*string) *AwsLambdaFunctionVpcConfig { + s.SecurityGroupIds = v + return s +} - // Specifies the percentage of the estimated data that has been transferred. - PercentProgress *int64 `type:"integer"` +// SetSubnetIds sets the SubnetIds field's value. +func (s *AwsLambdaFunctionVpcConfig) SetSubnetIds(v []*string) *AwsLambdaFunctionVpcConfig { + s.SubnetIds = v + return s +} - // The port number on which the DB instances in the DB cluster accept connections. - Port *int64 `type:"integer"` +// SetVpcId sets the VpcId field's value. +func (s *AwsLambdaFunctionVpcConfig) SetVpcId(v string) *AwsLambdaFunctionVpcConfig { + s.VpcId = &v + return s +} - // Indicates when the snapshot was taken. +// Details about a Lambda layer version. +type AwsLambdaLayerVersionDetails struct { + _ struct{} `type:"structure"` + + // The layer's compatible runtimes. Maximum number of five items. + // + // Valid values: nodejs10.x | nodejs12.x | java8 | java11 | python2.7 | python3.6 + // | python3.7 | python3.8 | dotnetcore1.0 | dotnetcore2.1 | go1.x | ruby2.5 + // | provided + CompatibleRuntimes []*string `type:"list"` + + // Indicates when the version was created. // // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot // contain spaces. For example, 2020-03-22T13:22:13.933Z. - SnapshotCreateTime *string `type:"string"` - - // The type of DB cluster snapshot. - SnapshotType *string `type:"string"` - - // The status of this DB cluster snapshot. - Status *string `type:"string"` - - // Whether the DB cluster is encrypted. - StorageEncrypted *bool `type:"boolean"` + CreatedDate *string `type:"string"` - // The VPC ID that is associated with the DB cluster snapshot. - VpcId *string `type:"string"` + // The version number. + Version *int64 `type:"long"` } // String returns the string representation. @@ -26588,7 +26921,7 @@ type AwsRdsDbClusterSnapshotDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbClusterSnapshotDetails) String() string { +func (s AwsLambdaLayerVersionDetails) String() string { return awsutil.Prettify(s) } @@ -26597,134 +26930,206 @@ func (s AwsRdsDbClusterSnapshotDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbClusterSnapshotDetails) GoString() string { +func (s AwsLambdaLayerVersionDetails) GoString() string { return s.String() } -// SetAllocatedStorage sets the AllocatedStorage field's value. -func (s *AwsRdsDbClusterSnapshotDetails) SetAllocatedStorage(v int64) *AwsRdsDbClusterSnapshotDetails { - s.AllocatedStorage = &v +// SetCompatibleRuntimes sets the CompatibleRuntimes field's value. +func (s *AwsLambdaLayerVersionDetails) SetCompatibleRuntimes(v []*string) *AwsLambdaLayerVersionDetails { + s.CompatibleRuntimes = v return s } -// SetAvailabilityZones sets the AvailabilityZones field's value. -func (s *AwsRdsDbClusterSnapshotDetails) SetAvailabilityZones(v []*string) *AwsRdsDbClusterSnapshotDetails { - s.AvailabilityZones = v +// SetCreatedDate sets the CreatedDate field's value. +func (s *AwsLambdaLayerVersionDetails) SetCreatedDate(v string) *AwsLambdaLayerVersionDetails { + s.CreatedDate = &v return s } -// SetClusterCreateTime sets the ClusterCreateTime field's value. -func (s *AwsRdsDbClusterSnapshotDetails) SetClusterCreateTime(v string) *AwsRdsDbClusterSnapshotDetails { - s.ClusterCreateTime = &v +// SetVersion sets the Version field's value. +func (s *AwsLambdaLayerVersionDetails) SetVersion(v int64) *AwsLambdaLayerVersionDetails { + s.Version = &v return s } -// SetDbClusterIdentifier sets the DbClusterIdentifier field's value. -func (s *AwsRdsDbClusterSnapshotDetails) SetDbClusterIdentifier(v string) *AwsRdsDbClusterSnapshotDetails { - s.DbClusterIdentifier = &v - return s +// Details for a volume mount point that's used in a container definition. +type AwsMountPoint struct { + _ struct{} `type:"structure"` + + // The path on the container to mount the host volume at. + ContainerPath *string `type:"string"` + + // The name of the volume to mount. Must be a volume name referenced in the + // name parameter of task definition volume. + SourceVolume *string `type:"string"` } -// SetDbClusterSnapshotIdentifier sets the DbClusterSnapshotIdentifier field's value. -func (s *AwsRdsDbClusterSnapshotDetails) SetDbClusterSnapshotIdentifier(v string) *AwsRdsDbClusterSnapshotDetails { - s.DbClusterSnapshotIdentifier = &v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsMountPoint) String() string { + return awsutil.Prettify(s) } -// SetEngine sets the Engine field's value. -func (s *AwsRdsDbClusterSnapshotDetails) SetEngine(v string) *AwsRdsDbClusterSnapshotDetails { - s.Engine = &v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsMountPoint) GoString() string { + return s.String() } -// SetEngineVersion sets the EngineVersion field's value. -func (s *AwsRdsDbClusterSnapshotDetails) SetEngineVersion(v string) *AwsRdsDbClusterSnapshotDetails { - s.EngineVersion = &v +// SetContainerPath sets the ContainerPath field's value. +func (s *AwsMountPoint) SetContainerPath(v string) *AwsMountPoint { + s.ContainerPath = &v return s } -// SetIamDatabaseAuthenticationEnabled sets the IamDatabaseAuthenticationEnabled field's value. -func (s *AwsRdsDbClusterSnapshotDetails) SetIamDatabaseAuthenticationEnabled(v bool) *AwsRdsDbClusterSnapshotDetails { - s.IamDatabaseAuthenticationEnabled = &v +// SetSourceVolume sets the SourceVolume field's value. +func (s *AwsMountPoint) SetSourceVolume(v string) *AwsMountPoint { + s.SourceVolume = &v return s } -// SetKmsKeyId sets the KmsKeyId field's value. -func (s *AwsRdsDbClusterSnapshotDetails) SetKmsKeyId(v string) *AwsRdsDbClusterSnapshotDetails { - s.KmsKeyId = &v +// Details about an Network Firewall firewall. +type AwsNetworkFirewallFirewallDetails struct { + _ struct{} `type:"structure"` + + // Whether the firewall is protected from deletion. If set to true, then the + // firewall cannot be deleted. + DeleteProtection *bool `type:"boolean"` + + // A description of the firewall. + Description *string `type:"string"` + + // The ARN of the firewall. + FirewallArn *string `type:"string"` + + // The identifier of the firewall. + FirewallId *string `type:"string"` + + // A descriptive name of the firewall. + FirewallName *string `type:"string"` + + // The ARN of the firewall policy. + FirewallPolicyArn *string `type:"string"` + + // Whether the firewall is protected from a change to the firewall policy. If + // set to true, you cannot associate a different policy with the firewall. + FirewallPolicyChangeProtection *bool `type:"boolean"` + + // Whether the firewall is protected from a change to the subnet associations. + // If set to true, you cannot map different subnets to the firewall. + SubnetChangeProtection *bool `type:"boolean"` + + // The public subnets that Network Firewall uses for the firewall. Each subnet + // must belong to a different Availability Zone. + SubnetMappings []*AwsNetworkFirewallFirewallSubnetMappingsDetails `type:"list"` + + // The identifier of the VPC where the firewall is used. + VpcId *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsNetworkFirewallFirewallDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsNetworkFirewallFirewallDetails) GoString() string { + return s.String() +} + +// SetDeleteProtection sets the DeleteProtection field's value. +func (s *AwsNetworkFirewallFirewallDetails) SetDeleteProtection(v bool) *AwsNetworkFirewallFirewallDetails { + s.DeleteProtection = &v return s } -// SetLicenseModel sets the LicenseModel field's value. -func (s *AwsRdsDbClusterSnapshotDetails) SetLicenseModel(v string) *AwsRdsDbClusterSnapshotDetails { - s.LicenseModel = &v +// SetDescription sets the Description field's value. +func (s *AwsNetworkFirewallFirewallDetails) SetDescription(v string) *AwsNetworkFirewallFirewallDetails { + s.Description = &v return s } -// SetMasterUsername sets the MasterUsername field's value. -func (s *AwsRdsDbClusterSnapshotDetails) SetMasterUsername(v string) *AwsRdsDbClusterSnapshotDetails { - s.MasterUsername = &v +// SetFirewallArn sets the FirewallArn field's value. +func (s *AwsNetworkFirewallFirewallDetails) SetFirewallArn(v string) *AwsNetworkFirewallFirewallDetails { + s.FirewallArn = &v return s } -// SetPercentProgress sets the PercentProgress field's value. -func (s *AwsRdsDbClusterSnapshotDetails) SetPercentProgress(v int64) *AwsRdsDbClusterSnapshotDetails { - s.PercentProgress = &v +// SetFirewallId sets the FirewallId field's value. +func (s *AwsNetworkFirewallFirewallDetails) SetFirewallId(v string) *AwsNetworkFirewallFirewallDetails { + s.FirewallId = &v return s } -// SetPort sets the Port field's value. -func (s *AwsRdsDbClusterSnapshotDetails) SetPort(v int64) *AwsRdsDbClusterSnapshotDetails { - s.Port = &v +// SetFirewallName sets the FirewallName field's value. +func (s *AwsNetworkFirewallFirewallDetails) SetFirewallName(v string) *AwsNetworkFirewallFirewallDetails { + s.FirewallName = &v return s } -// SetSnapshotCreateTime sets the SnapshotCreateTime field's value. -func (s *AwsRdsDbClusterSnapshotDetails) SetSnapshotCreateTime(v string) *AwsRdsDbClusterSnapshotDetails { - s.SnapshotCreateTime = &v +// SetFirewallPolicyArn sets the FirewallPolicyArn field's value. +func (s *AwsNetworkFirewallFirewallDetails) SetFirewallPolicyArn(v string) *AwsNetworkFirewallFirewallDetails { + s.FirewallPolicyArn = &v return s } -// SetSnapshotType sets the SnapshotType field's value. -func (s *AwsRdsDbClusterSnapshotDetails) SetSnapshotType(v string) *AwsRdsDbClusterSnapshotDetails { - s.SnapshotType = &v +// SetFirewallPolicyChangeProtection sets the FirewallPolicyChangeProtection field's value. +func (s *AwsNetworkFirewallFirewallDetails) SetFirewallPolicyChangeProtection(v bool) *AwsNetworkFirewallFirewallDetails { + s.FirewallPolicyChangeProtection = &v return s } -// SetStatus sets the Status field's value. -func (s *AwsRdsDbClusterSnapshotDetails) SetStatus(v string) *AwsRdsDbClusterSnapshotDetails { - s.Status = &v +// SetSubnetChangeProtection sets the SubnetChangeProtection field's value. +func (s *AwsNetworkFirewallFirewallDetails) SetSubnetChangeProtection(v bool) *AwsNetworkFirewallFirewallDetails { + s.SubnetChangeProtection = &v return s } -// SetStorageEncrypted sets the StorageEncrypted field's value. -func (s *AwsRdsDbClusterSnapshotDetails) SetStorageEncrypted(v bool) *AwsRdsDbClusterSnapshotDetails { - s.StorageEncrypted = &v +// SetSubnetMappings sets the SubnetMappings field's value. +func (s *AwsNetworkFirewallFirewallDetails) SetSubnetMappings(v []*AwsNetworkFirewallFirewallSubnetMappingsDetails) *AwsNetworkFirewallFirewallDetails { + s.SubnetMappings = v return s } // SetVpcId sets the VpcId field's value. -func (s *AwsRdsDbClusterSnapshotDetails) SetVpcId(v string) *AwsRdsDbClusterSnapshotDetails { +func (s *AwsNetworkFirewallFirewallDetails) SetVpcId(v string) *AwsNetworkFirewallFirewallDetails { s.VpcId = &v return s } -// Information about an Active Directory domain membership record associated -// with the DB instance. -type AwsRdsDbDomainMembership struct { +// Details about a firewall policy. A firewall policy defines the behavior of +// a network firewall. +type AwsNetworkFirewallFirewallPolicyDetails struct { _ struct{} `type:"structure"` - // The identifier of the Active Directory domain. - Domain *string `type:"string"` + // A description of the firewall policy. + Description *string `type:"string"` - // The fully qualified domain name of the Active Directory domain. - Fqdn *string `type:"string"` + // The firewall policy configuration. + FirewallPolicy *FirewallPolicyDetails `type:"structure"` - // The name of the IAM role to use when making API calls to the Directory Service. - IamRoleName *string `type:"string"` + // The ARN of the firewall policy. + FirewallPolicyArn *string `type:"string"` - // The status of the Active Directory Domain membership for the DB instance. - Status *string `type:"string"` + // The identifier of the firewall policy. + FirewallPolicyId *string `type:"string"` + + // The name of the firewall policy. + FirewallPolicyName *string `type:"string"` } // String returns the string representation. @@ -26732,7 +27137,7 @@ type AwsRdsDbDomainMembership struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbDomainMembership) String() string { +func (s AwsNetworkFirewallFirewallPolicyDetails) String() string { return awsutil.Prettify(s) } @@ -26741,56 +27146,46 @@ func (s AwsRdsDbDomainMembership) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbDomainMembership) GoString() string { +func (s AwsNetworkFirewallFirewallPolicyDetails) GoString() string { return s.String() } -// SetDomain sets the Domain field's value. -func (s *AwsRdsDbDomainMembership) SetDomain(v string) *AwsRdsDbDomainMembership { - s.Domain = &v +// SetDescription sets the Description field's value. +func (s *AwsNetworkFirewallFirewallPolicyDetails) SetDescription(v string) *AwsNetworkFirewallFirewallPolicyDetails { + s.Description = &v return s } -// SetFqdn sets the Fqdn field's value. -func (s *AwsRdsDbDomainMembership) SetFqdn(v string) *AwsRdsDbDomainMembership { - s.Fqdn = &v +// SetFirewallPolicy sets the FirewallPolicy field's value. +func (s *AwsNetworkFirewallFirewallPolicyDetails) SetFirewallPolicy(v *FirewallPolicyDetails) *AwsNetworkFirewallFirewallPolicyDetails { + s.FirewallPolicy = v return s } -// SetIamRoleName sets the IamRoleName field's value. -func (s *AwsRdsDbDomainMembership) SetIamRoleName(v string) *AwsRdsDbDomainMembership { - s.IamRoleName = &v +// SetFirewallPolicyArn sets the FirewallPolicyArn field's value. +func (s *AwsNetworkFirewallFirewallPolicyDetails) SetFirewallPolicyArn(v string) *AwsNetworkFirewallFirewallPolicyDetails { + s.FirewallPolicyArn = &v return s } -// SetStatus sets the Status field's value. -func (s *AwsRdsDbDomainMembership) SetStatus(v string) *AwsRdsDbDomainMembership { - s.Status = &v +// SetFirewallPolicyId sets the FirewallPolicyId field's value. +func (s *AwsNetworkFirewallFirewallPolicyDetails) SetFirewallPolicyId(v string) *AwsNetworkFirewallFirewallPolicyDetails { + s.FirewallPolicyId = &v return s } -// An IAM role associated with the DB instance. -type AwsRdsDbInstanceAssociatedRole struct { - _ struct{} `type:"structure"` - - // The name of the feature associated with the IAM role. - FeatureName *string `type:"string"` +// SetFirewallPolicyName sets the FirewallPolicyName field's value. +func (s *AwsNetworkFirewallFirewallPolicyDetails) SetFirewallPolicyName(v string) *AwsNetworkFirewallFirewallPolicyDetails { + s.FirewallPolicyName = &v + return s +} - // The ARN of the IAM role that is associated with the DB instance. - RoleArn *string `type:"string"` +// A public subnet that Network Firewall uses for the firewall. +type AwsNetworkFirewallFirewallSubnetMappingsDetails struct { + _ struct{} `type:"structure"` - // Describes the state of the association between the IAM role and the DB instance. - // The Status property returns one of the following values: - // - // * ACTIVE - The IAM role ARN is associated with the DB instance and can - // be used to access other Amazon Web Services services on your behalf. - // - // * PENDING - The IAM role ARN is being associated with the DB instance. - // - // * INVALID - The IAM role ARN is associated with the DB instance. But the - // DB instance is unable to assume the IAM role in order to access other - // Amazon Web Services services on your behalf. - Status *string `type:"string"` + // The identifier of the subnet + SubnetId *string `type:"string"` } // String returns the string representation. @@ -26798,7 +27193,7 @@ type AwsRdsDbInstanceAssociatedRole struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbInstanceAssociatedRole) String() string { +func (s AwsNetworkFirewallFirewallSubnetMappingsDetails) String() string { return awsutil.Prettify(s) } @@ -26807,268 +27202,44 @@ func (s AwsRdsDbInstanceAssociatedRole) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbInstanceAssociatedRole) GoString() string { +func (s AwsNetworkFirewallFirewallSubnetMappingsDetails) GoString() string { return s.String() } -// SetFeatureName sets the FeatureName field's value. -func (s *AwsRdsDbInstanceAssociatedRole) SetFeatureName(v string) *AwsRdsDbInstanceAssociatedRole { - s.FeatureName = &v - return s -} - -// SetRoleArn sets the RoleArn field's value. -func (s *AwsRdsDbInstanceAssociatedRole) SetRoleArn(v string) *AwsRdsDbInstanceAssociatedRole { - s.RoleArn = &v - return s -} - -// SetStatus sets the Status field's value. -func (s *AwsRdsDbInstanceAssociatedRole) SetStatus(v string) *AwsRdsDbInstanceAssociatedRole { - s.Status = &v +// SetSubnetId sets the SubnetId field's value. +func (s *AwsNetworkFirewallFirewallSubnetMappingsDetails) SetSubnetId(v string) *AwsNetworkFirewallFirewallSubnetMappingsDetails { + s.SubnetId = &v return s } -// Contains the details of an Amazon RDS DB instance. -type AwsRdsDbInstanceDetails struct { +// Details about an Network Firewall rule group. Rule groups are used to inspect +// and control network traffic. Stateless rule groups apply to individual packets. +// Stateful rule groups apply to packets in the context of their traffic flow. +// +// Rule groups are referenced in firewall policies. +type AwsNetworkFirewallRuleGroupDetails struct { _ struct{} `type:"structure"` - // The amount of storage (in gigabytes) to initially allocate for the DB instance. - AllocatedStorage *int64 `type:"integer"` + // The maximum number of operating resources that this rule group can use. + Capacity *int64 `type:"integer"` - // The IAM roles associated with the DB instance. - AssociatedRoles []*AwsRdsDbInstanceAssociatedRole `type:"list"` - - // Indicates whether minor version patches are applied automatically. - AutoMinorVersionUpgrade *bool `type:"boolean"` - - // The Availability Zone where the DB instance will be created. - AvailabilityZone *string `type:"string"` - - // The number of days for which to retain automated backups. - BackupRetentionPeriod *int64 `type:"integer"` - - // The identifier of the CA certificate for this DB instance. - CACertificateIdentifier *string `type:"string"` - - // The name of the character set that this DB instance is associated with. - CharacterSetName *string `type:"string"` - - // Whether to copy resource tags to snapshots of the DB instance. - CopyTagsToSnapshot *bool `type:"boolean"` - - // If the DB instance is a member of a DB cluster, contains the name of the - // DB cluster that the DB instance is a member of. - DBClusterIdentifier *string `type:"string"` - - // Contains the name of the compute and memory capacity class of the DB instance. - DBInstanceClass *string `type:"string"` - - // Contains a user-supplied database identifier. This identifier is the unique - // key that identifies a DB instance. - DBInstanceIdentifier *string `type:"string"` - - // The meaning of this parameter differs according to the database engine you - // use. - // - // MySQL, MariaDB, SQL Server, PostgreSQL - // - // Contains the name of the initial database of this instance that was provided - // at create time, if one was specified when the DB instance was created. This - // same name is returned for the life of the DB instance. - // - // Oracle - // - // Contains the Oracle System ID (SID) of the created DB instance. Not shown - // when the returned parameters do not apply to an Oracle DB instance. - DBName *string `type:"string"` - - // Specifies the port that the DB instance listens on. If the DB instance is - // part of a DB cluster, this can be a different port than the DB cluster port. - DbInstancePort *int64 `type:"integer"` - - // The current status of the DB instance. - DbInstanceStatus *string `type:"string"` - - // A list of the DB parameter groups to assign to the DB instance. - DbParameterGroups []*AwsRdsDbParameterGroup `type:"list"` - - // A list of the DB security groups to assign to the DB instance. - DbSecurityGroups []*string `type:"list"` - - // Information about the subnet group that is associated with the DB instance. - DbSubnetGroup *AwsRdsDbSubnetGroup `type:"structure"` - - // The Amazon Web Services Region-unique, immutable identifier for the DB instance. - // This identifier is found in CloudTrail log entries whenever the KMS key for - // the DB instance is accessed. - DbiResourceId *string `type:"string"` - - // Indicates whether the DB instance has deletion protection enabled. - // - // When deletion protection is enabled, the database cannot be deleted. - DeletionProtection *bool `type:"boolean"` - - // The Active Directory domain membership records associated with the DB instance. - DomainMemberships []*AwsRdsDbDomainMembership `type:"list"` - - // A list of log types that this DB instance is configured to export to CloudWatch - // Logs. - EnabledCloudWatchLogsExports []*string `type:"list"` - - // Specifies the connection endpoint. - Endpoint *AwsRdsDbInstanceEndpoint `type:"structure"` - - // Provides the name of the database engine to use for this DB instance. - Engine *string `type:"string"` - - // Indicates the database engine version. - EngineVersion *string `type:"string"` - - // The ARN of the CloudWatch Logs log stream that receives the enhanced monitoring - // metrics data for the DB instance. - EnhancedMonitoringResourceArn *string `type:"string"` - - // True if mapping of IAM accounts to database accounts is enabled, and otherwise - // false. - // - // IAM database authentication can be enabled for the following database engines. - // - // * For MySQL 5.6, minor version 5.6.34 or higher - // - // * For MySQL 5.7, minor version 5.7.16 or higher - // - // * Aurora 5.6 or higher - IAMDatabaseAuthenticationEnabled *bool `type:"boolean"` - - // Indicates when the DB instance was created. - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - InstanceCreateTime *string `type:"string"` - - // Specifies the provisioned IOPS (I/O operations per second) for this DB instance. - Iops *int64 `type:"integer"` - - // If StorageEncrypted is true, the KMS key identifier for the encrypted DB - // instance. - KmsKeyId *string `type:"string"` - - // Specifies the latest time to which a database can be restored with point-in-time - // restore. - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - LatestRestorableTime *string `type:"string"` - - // License model information for this DB instance. - LicenseModel *string `type:"string"` - - // Specifies the connection endpoint. - ListenerEndpoint *AwsRdsDbInstanceEndpoint `type:"structure"` - - // The master user name of the DB instance. - MasterUsername *string `type:"string"` - - // The upper limit to which Amazon RDS can automatically scale the storage of - // the DB instance. - MaxAllocatedStorage *int64 `type:"integer"` - - // The interval, in seconds, between points when enhanced monitoring metrics - // are collected for the DB instance. - MonitoringInterval *int64 `type:"integer"` - - // The ARN for the IAM role that permits Amazon RDS to send enhanced monitoring - // metrics to CloudWatch Logs. - MonitoringRoleArn *string `type:"string"` - - // Whether the DB instance is a multiple Availability Zone deployment. - MultiAz *bool `type:"boolean"` - - // The list of option group memberships for this DB instance. - OptionGroupMemberships []*AwsRdsDbOptionGroupMembership `type:"list"` - - // Changes to the DB instance that are currently pending. - PendingModifiedValues *AwsRdsDbPendingModifiedValues `type:"structure"` - - // Indicates whether Performance Insights is enabled for the DB instance. - PerformanceInsightsEnabled *bool `type:"boolean"` - - // The identifier of the KMS key used to encrypt the Performance Insights data. - PerformanceInsightsKmsKeyId *string `type:"string"` - - // The number of days to retain Performance Insights data. - PerformanceInsightsRetentionPeriod *int64 `type:"integer"` - - // The range of time each day when automated backups are created, if automated - // backups are enabled. - // - // Uses the format HH:MM-HH:MM. For example, 04:52-05:22. - PreferredBackupWindow *string `type:"string"` - - // The weekly time range during which system maintenance can occur, in Universal - // Coordinated Time (UTC). - // - // Uses the format :HH:MM-:HH:MM. - // - // For the day values, use mon|tue|wed|thu|fri|sat|sun. - // - // For example, sun:09:32-sun:10:02. - PreferredMaintenanceWindow *string `type:"string"` - - // The number of CPU cores and the number of threads per core for the DB instance - // class of the DB instance. - ProcessorFeatures []*AwsRdsDbProcessorFeature `type:"list"` - - // The order in which to promote an Aurora replica to the primary instance after - // a failure of the existing primary instance. - PromotionTier *int64 `type:"integer"` - - // Specifies the accessibility options for the DB instance. - // - // A value of true specifies an Internet-facing instance with a publicly resolvable - // DNS name, which resolves to a public IP address. - // - // A value of false specifies an internal instance with a DNS name that resolves - // to a private IP address. - PubliclyAccessible *bool `type:"boolean"` - - // List of identifiers of Aurora DB clusters to which the RDS DB instance is - // replicated as a read replica. - ReadReplicaDBClusterIdentifiers []*string `type:"list"` - - // List of identifiers of the read replicas associated with this DB instance. - ReadReplicaDBInstanceIdentifiers []*string `type:"list"` - - // If this DB instance is a read replica, contains the identifier of the source - // DB instance. - ReadReplicaSourceDBInstanceIdentifier *string `type:"string"` - - // For a DB instance with multi-Availability Zone support, the name of the secondary - // Availability Zone. - SecondaryAvailabilityZone *string `type:"string"` - - // The status of a read replica. If the instance isn't a read replica, this - // is empty. - StatusInfos []*AwsRdsDbStatusInfo `type:"list"` + // A description of the rule group. + Description *string `type:"string"` - // Specifies whether the DB instance is encrypted. - StorageEncrypted *bool `type:"boolean"` + // Details about the rule group. + RuleGroup *RuleGroupDetails `type:"structure"` - // The storage type for the DB instance. - StorageType *string `type:"string"` + // The ARN of the rule group. + RuleGroupArn *string `type:"string"` - // The ARN from the key store with which the instance is associated for TDE - // encryption. - TdeCredentialArn *string `type:"string"` + // The identifier of the rule group. + RuleGroupId *string `type:"string"` - // The time zone of the DB instance. - Timezone *string `type:"string"` + // The descriptive name of the rule group. + RuleGroupName *string `type:"string"` - // A list of VPC security groups that the DB instance belongs to. - VpcSecurityGroups []*AwsRdsDbInstanceVpcSecurityGroup `type:"list"` + // The type of rule group. A rule group can be stateful or stateless. + Type *string `type:"string"` } // String returns the string representation. @@ -27076,7 +27247,7 @@ type AwsRdsDbInstanceDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbInstanceDetails) String() string { +func (s AwsNetworkFirewallRuleGroupDetails) String() string { return awsutil.Prettify(s) } @@ -27085,364 +27256,443 @@ func (s AwsRdsDbInstanceDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbInstanceDetails) GoString() string { +func (s AwsNetworkFirewallRuleGroupDetails) GoString() string { return s.String() } -// SetAllocatedStorage sets the AllocatedStorage field's value. -func (s *AwsRdsDbInstanceDetails) SetAllocatedStorage(v int64) *AwsRdsDbInstanceDetails { - s.AllocatedStorage = &v +// SetCapacity sets the Capacity field's value. +func (s *AwsNetworkFirewallRuleGroupDetails) SetCapacity(v int64) *AwsNetworkFirewallRuleGroupDetails { + s.Capacity = &v return s } -// SetAssociatedRoles sets the AssociatedRoles field's value. -func (s *AwsRdsDbInstanceDetails) SetAssociatedRoles(v []*AwsRdsDbInstanceAssociatedRole) *AwsRdsDbInstanceDetails { - s.AssociatedRoles = v +// SetDescription sets the Description field's value. +func (s *AwsNetworkFirewallRuleGroupDetails) SetDescription(v string) *AwsNetworkFirewallRuleGroupDetails { + s.Description = &v return s } -// SetAutoMinorVersionUpgrade sets the AutoMinorVersionUpgrade field's value. -func (s *AwsRdsDbInstanceDetails) SetAutoMinorVersionUpgrade(v bool) *AwsRdsDbInstanceDetails { - s.AutoMinorVersionUpgrade = &v +// SetRuleGroup sets the RuleGroup field's value. +func (s *AwsNetworkFirewallRuleGroupDetails) SetRuleGroup(v *RuleGroupDetails) *AwsNetworkFirewallRuleGroupDetails { + s.RuleGroup = v return s } -// SetAvailabilityZone sets the AvailabilityZone field's value. -func (s *AwsRdsDbInstanceDetails) SetAvailabilityZone(v string) *AwsRdsDbInstanceDetails { - s.AvailabilityZone = &v +// SetRuleGroupArn sets the RuleGroupArn field's value. +func (s *AwsNetworkFirewallRuleGroupDetails) SetRuleGroupArn(v string) *AwsNetworkFirewallRuleGroupDetails { + s.RuleGroupArn = &v return s } -// SetBackupRetentionPeriod sets the BackupRetentionPeriod field's value. -func (s *AwsRdsDbInstanceDetails) SetBackupRetentionPeriod(v int64) *AwsRdsDbInstanceDetails { - s.BackupRetentionPeriod = &v +// SetRuleGroupId sets the RuleGroupId field's value. +func (s *AwsNetworkFirewallRuleGroupDetails) SetRuleGroupId(v string) *AwsNetworkFirewallRuleGroupDetails { + s.RuleGroupId = &v return s } -// SetCACertificateIdentifier sets the CACertificateIdentifier field's value. -func (s *AwsRdsDbInstanceDetails) SetCACertificateIdentifier(v string) *AwsRdsDbInstanceDetails { - s.CACertificateIdentifier = &v +// SetRuleGroupName sets the RuleGroupName field's value. +func (s *AwsNetworkFirewallRuleGroupDetails) SetRuleGroupName(v string) *AwsNetworkFirewallRuleGroupDetails { + s.RuleGroupName = &v return s } -// SetCharacterSetName sets the CharacterSetName field's value. -func (s *AwsRdsDbInstanceDetails) SetCharacterSetName(v string) *AwsRdsDbInstanceDetails { - s.CharacterSetName = &v +// SetType sets the Type field's value. +func (s *AwsNetworkFirewallRuleGroupDetails) SetType(v string) *AwsNetworkFirewallRuleGroupDetails { + s.Type = &v return s } -// SetCopyTagsToSnapshot sets the CopyTagsToSnapshot field's value. -func (s *AwsRdsDbInstanceDetails) SetCopyTagsToSnapshot(v bool) *AwsRdsDbInstanceDetails { - s.CopyTagsToSnapshot = &v - return s -} +// Provides information about domain access control options. +type AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails struct { + _ struct{} `type:"structure"` -// SetDBClusterIdentifier sets the DBClusterIdentifier field's value. -func (s *AwsRdsDbInstanceDetails) SetDBClusterIdentifier(v string) *AwsRdsDbInstanceDetails { - s.DBClusterIdentifier = &v - return s -} + // Enables fine-grained access control. + Enabled *bool `type:"boolean"` -// SetDBInstanceClass sets the DBInstanceClass field's value. -func (s *AwsRdsDbInstanceDetails) SetDBInstanceClass(v string) *AwsRdsDbInstanceDetails { - s.DBInstanceClass = &v - return s -} + // Enables the internal user database. + InternalUserDatabaseEnabled *bool `type:"boolean"` -// SetDBInstanceIdentifier sets the DBInstanceIdentifier field's value. -func (s *AwsRdsDbInstanceDetails) SetDBInstanceIdentifier(v string) *AwsRdsDbInstanceDetails { - s.DBInstanceIdentifier = &v - return s + // Specifies information about the master user of the domain. + MasterUserOptions *AwsOpenSearchServiceDomainMasterUserOptionsDetails `type:"structure"` } -// SetDBName sets the DBName field's value. -func (s *AwsRdsDbInstanceDetails) SetDBName(v string) *AwsRdsDbInstanceDetails { - s.DBName = &v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails) String() string { + return awsutil.Prettify(s) } -// SetDbInstancePort sets the DbInstancePort field's value. -func (s *AwsRdsDbInstanceDetails) SetDbInstancePort(v int64) *AwsRdsDbInstanceDetails { - s.DbInstancePort = &v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails) GoString() string { + return s.String() } -// SetDbInstanceStatus sets the DbInstanceStatus field's value. -func (s *AwsRdsDbInstanceDetails) SetDbInstanceStatus(v string) *AwsRdsDbInstanceDetails { - s.DbInstanceStatus = &v +// SetEnabled sets the Enabled field's value. +func (s *AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails) SetEnabled(v bool) *AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails { + s.Enabled = &v return s } -// SetDbParameterGroups sets the DbParameterGroups field's value. -func (s *AwsRdsDbInstanceDetails) SetDbParameterGroups(v []*AwsRdsDbParameterGroup) *AwsRdsDbInstanceDetails { - s.DbParameterGroups = v +// SetInternalUserDatabaseEnabled sets the InternalUserDatabaseEnabled field's value. +func (s *AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails) SetInternalUserDatabaseEnabled(v bool) *AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails { + s.InternalUserDatabaseEnabled = &v return s } -// SetDbSecurityGroups sets the DbSecurityGroups field's value. -func (s *AwsRdsDbInstanceDetails) SetDbSecurityGroups(v []*string) *AwsRdsDbInstanceDetails { - s.DbSecurityGroups = v +// SetMasterUserOptions sets the MasterUserOptions field's value. +func (s *AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails) SetMasterUserOptions(v *AwsOpenSearchServiceDomainMasterUserOptionsDetails) *AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails { + s.MasterUserOptions = v return s } -// SetDbSubnetGroup sets the DbSubnetGroup field's value. -func (s *AwsRdsDbInstanceDetails) SetDbSubnetGroup(v *AwsRdsDbSubnetGroup) *AwsRdsDbInstanceDetails { - s.DbSubnetGroup = v - return s -} +// Details about the configuration of an OpenSearch cluster. +type AwsOpenSearchServiceDomainClusterConfigDetails struct { + _ struct{} `type:"structure"` -// SetDbiResourceId sets the DbiResourceId field's value. -func (s *AwsRdsDbInstanceDetails) SetDbiResourceId(v string) *AwsRdsDbInstanceDetails { - s.DbiResourceId = &v - return s -} + // The number of instances to use for the master node. If this attribute is + // specified, then DedicatedMasterEnabled must be true. + DedicatedMasterCount *int64 `type:"integer"` -// SetDeletionProtection sets the DeletionProtection field's value. -func (s *AwsRdsDbInstanceDetails) SetDeletionProtection(v bool) *AwsRdsDbInstanceDetails { - s.DeletionProtection = &v - return s -} + // Whether to use a dedicated master node for the OpenSearch domain. A dedicated + // master node performs cluster management tasks, but does not hold data or + // respond to data upload requests. + DedicatedMasterEnabled *bool `type:"boolean"` -// SetDomainMemberships sets the DomainMemberships field's value. -func (s *AwsRdsDbInstanceDetails) SetDomainMemberships(v []*AwsRdsDbDomainMembership) *AwsRdsDbInstanceDetails { - s.DomainMemberships = v - return s -} + // The hardware configuration of the computer that hosts the dedicated master + // node. + // + // If this attribute is specified, then DedicatedMasterEnabled must be true. + DedicatedMasterType *string `type:"string"` -// SetEnabledCloudWatchLogsExports sets the EnabledCloudWatchLogsExports field's value. -func (s *AwsRdsDbInstanceDetails) SetEnabledCloudWatchLogsExports(v []*string) *AwsRdsDbInstanceDetails { - s.EnabledCloudWatchLogsExports = v - return s -} + // The number of data nodes to use in the OpenSearch domain. + InstanceCount *int64 `type:"integer"` -// SetEndpoint sets the Endpoint field's value. -func (s *AwsRdsDbInstanceDetails) SetEndpoint(v *AwsRdsDbInstanceEndpoint) *AwsRdsDbInstanceDetails { - s.Endpoint = v - return s -} + // The instance type for your data nodes. + // + // For a list of valid values, see Supported instance types in Amazon OpenSearch + // Service (https://docs.aws.amazon.com/opensearch-service/latest/developerguide/supported-instance-types.html) + // in the Amazon OpenSearch Service Developer Guide. + InstanceType *string `type:"string"` -// SetEngine sets the Engine field's value. -func (s *AwsRdsDbInstanceDetails) SetEngine(v string) *AwsRdsDbInstanceDetails { - s.Engine = &v - return s + // The number of UltraWarm instances. + WarmCount *int64 `type:"integer"` + + // Whether UltraWarm is enabled. + WarmEnabled *bool `type:"boolean"` + + // The type of UltraWarm instance. + WarmType *string `type:"string"` + + // Configuration options for zone awareness. Provided if ZoneAwarenessEnabled + // is true. + ZoneAwarenessConfig *AwsOpenSearchServiceDomainClusterConfigZoneAwarenessConfigDetails `type:"structure"` + + // Whether to enable zone awareness for the OpenSearch domain. When zone awareness + // is enabled, OpenSearch Service allocates the cluster's nodes and replica + // index shards across Availability Zones (AZs) in the same Region. This prevents + // data loss and minimizes downtime if a node or data center fails. + ZoneAwarenessEnabled *bool `type:"boolean"` } -// SetEngineVersion sets the EngineVersion field's value. -func (s *AwsRdsDbInstanceDetails) SetEngineVersion(v string) *AwsRdsDbInstanceDetails { - s.EngineVersion = &v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsOpenSearchServiceDomainClusterConfigDetails) String() string { + return awsutil.Prettify(s) } -// SetEnhancedMonitoringResourceArn sets the EnhancedMonitoringResourceArn field's value. -func (s *AwsRdsDbInstanceDetails) SetEnhancedMonitoringResourceArn(v string) *AwsRdsDbInstanceDetails { - s.EnhancedMonitoringResourceArn = &v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsOpenSearchServiceDomainClusterConfigDetails) GoString() string { + return s.String() } -// SetIAMDatabaseAuthenticationEnabled sets the IAMDatabaseAuthenticationEnabled field's value. -func (s *AwsRdsDbInstanceDetails) SetIAMDatabaseAuthenticationEnabled(v bool) *AwsRdsDbInstanceDetails { - s.IAMDatabaseAuthenticationEnabled = &v +// SetDedicatedMasterCount sets the DedicatedMasterCount field's value. +func (s *AwsOpenSearchServiceDomainClusterConfigDetails) SetDedicatedMasterCount(v int64) *AwsOpenSearchServiceDomainClusterConfigDetails { + s.DedicatedMasterCount = &v return s } -// SetInstanceCreateTime sets the InstanceCreateTime field's value. -func (s *AwsRdsDbInstanceDetails) SetInstanceCreateTime(v string) *AwsRdsDbInstanceDetails { - s.InstanceCreateTime = &v +// SetDedicatedMasterEnabled sets the DedicatedMasterEnabled field's value. +func (s *AwsOpenSearchServiceDomainClusterConfigDetails) SetDedicatedMasterEnabled(v bool) *AwsOpenSearchServiceDomainClusterConfigDetails { + s.DedicatedMasterEnabled = &v return s } -// SetIops sets the Iops field's value. -func (s *AwsRdsDbInstanceDetails) SetIops(v int64) *AwsRdsDbInstanceDetails { - s.Iops = &v +// SetDedicatedMasterType sets the DedicatedMasterType field's value. +func (s *AwsOpenSearchServiceDomainClusterConfigDetails) SetDedicatedMasterType(v string) *AwsOpenSearchServiceDomainClusterConfigDetails { + s.DedicatedMasterType = &v return s } -// SetKmsKeyId sets the KmsKeyId field's value. -func (s *AwsRdsDbInstanceDetails) SetKmsKeyId(v string) *AwsRdsDbInstanceDetails { - s.KmsKeyId = &v +// SetInstanceCount sets the InstanceCount field's value. +func (s *AwsOpenSearchServiceDomainClusterConfigDetails) SetInstanceCount(v int64) *AwsOpenSearchServiceDomainClusterConfigDetails { + s.InstanceCount = &v return s } -// SetLatestRestorableTime sets the LatestRestorableTime field's value. -func (s *AwsRdsDbInstanceDetails) SetLatestRestorableTime(v string) *AwsRdsDbInstanceDetails { - s.LatestRestorableTime = &v +// SetInstanceType sets the InstanceType field's value. +func (s *AwsOpenSearchServiceDomainClusterConfigDetails) SetInstanceType(v string) *AwsOpenSearchServiceDomainClusterConfigDetails { + s.InstanceType = &v return s } -// SetLicenseModel sets the LicenseModel field's value. -func (s *AwsRdsDbInstanceDetails) SetLicenseModel(v string) *AwsRdsDbInstanceDetails { - s.LicenseModel = &v +// SetWarmCount sets the WarmCount field's value. +func (s *AwsOpenSearchServiceDomainClusterConfigDetails) SetWarmCount(v int64) *AwsOpenSearchServiceDomainClusterConfigDetails { + s.WarmCount = &v return s } -// SetListenerEndpoint sets the ListenerEndpoint field's value. -func (s *AwsRdsDbInstanceDetails) SetListenerEndpoint(v *AwsRdsDbInstanceEndpoint) *AwsRdsDbInstanceDetails { - s.ListenerEndpoint = v +// SetWarmEnabled sets the WarmEnabled field's value. +func (s *AwsOpenSearchServiceDomainClusterConfigDetails) SetWarmEnabled(v bool) *AwsOpenSearchServiceDomainClusterConfigDetails { + s.WarmEnabled = &v return s } -// SetMasterUsername sets the MasterUsername field's value. -func (s *AwsRdsDbInstanceDetails) SetMasterUsername(v string) *AwsRdsDbInstanceDetails { - s.MasterUsername = &v +// SetWarmType sets the WarmType field's value. +func (s *AwsOpenSearchServiceDomainClusterConfigDetails) SetWarmType(v string) *AwsOpenSearchServiceDomainClusterConfigDetails { + s.WarmType = &v return s } -// SetMaxAllocatedStorage sets the MaxAllocatedStorage field's value. -func (s *AwsRdsDbInstanceDetails) SetMaxAllocatedStorage(v int64) *AwsRdsDbInstanceDetails { - s.MaxAllocatedStorage = &v +// SetZoneAwarenessConfig sets the ZoneAwarenessConfig field's value. +func (s *AwsOpenSearchServiceDomainClusterConfigDetails) SetZoneAwarenessConfig(v *AwsOpenSearchServiceDomainClusterConfigZoneAwarenessConfigDetails) *AwsOpenSearchServiceDomainClusterConfigDetails { + s.ZoneAwarenessConfig = v return s } -// SetMonitoringInterval sets the MonitoringInterval field's value. -func (s *AwsRdsDbInstanceDetails) SetMonitoringInterval(v int64) *AwsRdsDbInstanceDetails { - s.MonitoringInterval = &v +// SetZoneAwarenessEnabled sets the ZoneAwarenessEnabled field's value. +func (s *AwsOpenSearchServiceDomainClusterConfigDetails) SetZoneAwarenessEnabled(v bool) *AwsOpenSearchServiceDomainClusterConfigDetails { + s.ZoneAwarenessEnabled = &v return s } -// SetMonitoringRoleArn sets the MonitoringRoleArn field's value. -func (s *AwsRdsDbInstanceDetails) SetMonitoringRoleArn(v string) *AwsRdsDbInstanceDetails { - s.MonitoringRoleArn = &v - return s +// Configuration options for zone awareness. +type AwsOpenSearchServiceDomainClusterConfigZoneAwarenessConfigDetails struct { + _ struct{} `type:"structure"` + + // The number of Availability Zones that the domain uses. Valid values are 2 + // or 3. The default is 2. + AvailabilityZoneCount *int64 `type:"integer"` } -// SetMultiAz sets the MultiAz field's value. -func (s *AwsRdsDbInstanceDetails) SetMultiAz(v bool) *AwsRdsDbInstanceDetails { - s.MultiAz = &v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsOpenSearchServiceDomainClusterConfigZoneAwarenessConfigDetails) String() string { + return awsutil.Prettify(s) } -// SetOptionGroupMemberships sets the OptionGroupMemberships field's value. -func (s *AwsRdsDbInstanceDetails) SetOptionGroupMemberships(v []*AwsRdsDbOptionGroupMembership) *AwsRdsDbInstanceDetails { - s.OptionGroupMemberships = v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsOpenSearchServiceDomainClusterConfigZoneAwarenessConfigDetails) GoString() string { + return s.String() } -// SetPendingModifiedValues sets the PendingModifiedValues field's value. -func (s *AwsRdsDbInstanceDetails) SetPendingModifiedValues(v *AwsRdsDbPendingModifiedValues) *AwsRdsDbInstanceDetails { - s.PendingModifiedValues = v +// SetAvailabilityZoneCount sets the AvailabilityZoneCount field's value. +func (s *AwsOpenSearchServiceDomainClusterConfigZoneAwarenessConfigDetails) SetAvailabilityZoneCount(v int64) *AwsOpenSearchServiceDomainClusterConfigZoneAwarenessConfigDetails { + s.AvailabilityZoneCount = &v return s } -// SetPerformanceInsightsEnabled sets the PerformanceInsightsEnabled field's value. -func (s *AwsRdsDbInstanceDetails) SetPerformanceInsightsEnabled(v bool) *AwsRdsDbInstanceDetails { - s.PerformanceInsightsEnabled = &v - return s +// Information about an Amazon OpenSearch Service domain. +type AwsOpenSearchServiceDomainDetails struct { + _ struct{} `type:"structure"` + + // IAM policy document that specifies the access policies for the OpenSearch + // Service domain. + AccessPolicies *string `type:"string"` + + // Specifies options for fine-grained access control. + AdvancedSecurityOptions *AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails `type:"structure"` + + // The ARN of the OpenSearch Service domain. + Arn *string `type:"string"` + + // Details about the configuration of an OpenSearch cluster. + ClusterConfig *AwsOpenSearchServiceDomainClusterConfigDetails `type:"structure"` + + // The domain endpoint. + DomainEndpoint *string `type:"string"` + + // Additional options for the domain endpoint. + DomainEndpointOptions *AwsOpenSearchServiceDomainDomainEndpointOptionsDetails `type:"structure"` + + // The domain endpoints. Used if the OpenSearch domain resides in a VPC. + // + // This is a map of key-value pairs. The key is always vpc. The value is the + // endpoint. + DomainEndpoints map[string]*string `type:"map"` + + // The name of the endpoint. + DomainName *string `type:"string"` + + // Details about the configuration for encryption at rest. + EncryptionAtRestOptions *AwsOpenSearchServiceDomainEncryptionAtRestOptionsDetails `type:"structure"` + + // The version of the domain engine. + EngineVersion *string `type:"string"` + + // The identifier of the domain. + Id *string `type:"string"` + + // Configures the CloudWatch Logs to publish for the OpenSearch domain. + LogPublishingOptions *AwsOpenSearchServiceDomainLogPublishingOptionsDetails `type:"structure"` + + // Details about the configuration for node-to-node encryption. + NodeToNodeEncryptionOptions *AwsOpenSearchServiceDomainNodeToNodeEncryptionOptionsDetails `type:"structure"` + + // Information about the status of a domain relative to the latest service software. + ServiceSoftwareOptions *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails `type:"structure"` + + // Information that OpenSearch Service derives based on VPCOptions for the domain. + VpcOptions *AwsOpenSearchServiceDomainVpcOptionsDetails `type:"structure"` } -// SetPerformanceInsightsKmsKeyId sets the PerformanceInsightsKmsKeyId field's value. -func (s *AwsRdsDbInstanceDetails) SetPerformanceInsightsKmsKeyId(v string) *AwsRdsDbInstanceDetails { - s.PerformanceInsightsKmsKeyId = &v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsOpenSearchServiceDomainDetails) String() string { + return awsutil.Prettify(s) } -// SetPerformanceInsightsRetentionPeriod sets the PerformanceInsightsRetentionPeriod field's value. -func (s *AwsRdsDbInstanceDetails) SetPerformanceInsightsRetentionPeriod(v int64) *AwsRdsDbInstanceDetails { - s.PerformanceInsightsRetentionPeriod = &v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsOpenSearchServiceDomainDetails) GoString() string { + return s.String() } -// SetPreferredBackupWindow sets the PreferredBackupWindow field's value. -func (s *AwsRdsDbInstanceDetails) SetPreferredBackupWindow(v string) *AwsRdsDbInstanceDetails { - s.PreferredBackupWindow = &v +// SetAccessPolicies sets the AccessPolicies field's value. +func (s *AwsOpenSearchServiceDomainDetails) SetAccessPolicies(v string) *AwsOpenSearchServiceDomainDetails { + s.AccessPolicies = &v return s } -// SetPreferredMaintenanceWindow sets the PreferredMaintenanceWindow field's value. -func (s *AwsRdsDbInstanceDetails) SetPreferredMaintenanceWindow(v string) *AwsRdsDbInstanceDetails { - s.PreferredMaintenanceWindow = &v +// SetAdvancedSecurityOptions sets the AdvancedSecurityOptions field's value. +func (s *AwsOpenSearchServiceDomainDetails) SetAdvancedSecurityOptions(v *AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails) *AwsOpenSearchServiceDomainDetails { + s.AdvancedSecurityOptions = v return s } -// SetProcessorFeatures sets the ProcessorFeatures field's value. -func (s *AwsRdsDbInstanceDetails) SetProcessorFeatures(v []*AwsRdsDbProcessorFeature) *AwsRdsDbInstanceDetails { - s.ProcessorFeatures = v +// SetArn sets the Arn field's value. +func (s *AwsOpenSearchServiceDomainDetails) SetArn(v string) *AwsOpenSearchServiceDomainDetails { + s.Arn = &v return s } -// SetPromotionTier sets the PromotionTier field's value. -func (s *AwsRdsDbInstanceDetails) SetPromotionTier(v int64) *AwsRdsDbInstanceDetails { - s.PromotionTier = &v +// SetClusterConfig sets the ClusterConfig field's value. +func (s *AwsOpenSearchServiceDomainDetails) SetClusterConfig(v *AwsOpenSearchServiceDomainClusterConfigDetails) *AwsOpenSearchServiceDomainDetails { + s.ClusterConfig = v return s } -// SetPubliclyAccessible sets the PubliclyAccessible field's value. -func (s *AwsRdsDbInstanceDetails) SetPubliclyAccessible(v bool) *AwsRdsDbInstanceDetails { - s.PubliclyAccessible = &v +// SetDomainEndpoint sets the DomainEndpoint field's value. +func (s *AwsOpenSearchServiceDomainDetails) SetDomainEndpoint(v string) *AwsOpenSearchServiceDomainDetails { + s.DomainEndpoint = &v return s } -// SetReadReplicaDBClusterIdentifiers sets the ReadReplicaDBClusterIdentifiers field's value. -func (s *AwsRdsDbInstanceDetails) SetReadReplicaDBClusterIdentifiers(v []*string) *AwsRdsDbInstanceDetails { - s.ReadReplicaDBClusterIdentifiers = v +// SetDomainEndpointOptions sets the DomainEndpointOptions field's value. +func (s *AwsOpenSearchServiceDomainDetails) SetDomainEndpointOptions(v *AwsOpenSearchServiceDomainDomainEndpointOptionsDetails) *AwsOpenSearchServiceDomainDetails { + s.DomainEndpointOptions = v return s } -// SetReadReplicaDBInstanceIdentifiers sets the ReadReplicaDBInstanceIdentifiers field's value. -func (s *AwsRdsDbInstanceDetails) SetReadReplicaDBInstanceIdentifiers(v []*string) *AwsRdsDbInstanceDetails { - s.ReadReplicaDBInstanceIdentifiers = v +// SetDomainEndpoints sets the DomainEndpoints field's value. +func (s *AwsOpenSearchServiceDomainDetails) SetDomainEndpoints(v map[string]*string) *AwsOpenSearchServiceDomainDetails { + s.DomainEndpoints = v return s } -// SetReadReplicaSourceDBInstanceIdentifier sets the ReadReplicaSourceDBInstanceIdentifier field's value. -func (s *AwsRdsDbInstanceDetails) SetReadReplicaSourceDBInstanceIdentifier(v string) *AwsRdsDbInstanceDetails { - s.ReadReplicaSourceDBInstanceIdentifier = &v +// SetDomainName sets the DomainName field's value. +func (s *AwsOpenSearchServiceDomainDetails) SetDomainName(v string) *AwsOpenSearchServiceDomainDetails { + s.DomainName = &v return s } -// SetSecondaryAvailabilityZone sets the SecondaryAvailabilityZone field's value. -func (s *AwsRdsDbInstanceDetails) SetSecondaryAvailabilityZone(v string) *AwsRdsDbInstanceDetails { - s.SecondaryAvailabilityZone = &v +// SetEncryptionAtRestOptions sets the EncryptionAtRestOptions field's value. +func (s *AwsOpenSearchServiceDomainDetails) SetEncryptionAtRestOptions(v *AwsOpenSearchServiceDomainEncryptionAtRestOptionsDetails) *AwsOpenSearchServiceDomainDetails { + s.EncryptionAtRestOptions = v return s } -// SetStatusInfos sets the StatusInfos field's value. -func (s *AwsRdsDbInstanceDetails) SetStatusInfos(v []*AwsRdsDbStatusInfo) *AwsRdsDbInstanceDetails { - s.StatusInfos = v +// SetEngineVersion sets the EngineVersion field's value. +func (s *AwsOpenSearchServiceDomainDetails) SetEngineVersion(v string) *AwsOpenSearchServiceDomainDetails { + s.EngineVersion = &v return s } -// SetStorageEncrypted sets the StorageEncrypted field's value. -func (s *AwsRdsDbInstanceDetails) SetStorageEncrypted(v bool) *AwsRdsDbInstanceDetails { - s.StorageEncrypted = &v +// SetId sets the Id field's value. +func (s *AwsOpenSearchServiceDomainDetails) SetId(v string) *AwsOpenSearchServiceDomainDetails { + s.Id = &v return s } -// SetStorageType sets the StorageType field's value. -func (s *AwsRdsDbInstanceDetails) SetStorageType(v string) *AwsRdsDbInstanceDetails { - s.StorageType = &v +// SetLogPublishingOptions sets the LogPublishingOptions field's value. +func (s *AwsOpenSearchServiceDomainDetails) SetLogPublishingOptions(v *AwsOpenSearchServiceDomainLogPublishingOptionsDetails) *AwsOpenSearchServiceDomainDetails { + s.LogPublishingOptions = v return s } -// SetTdeCredentialArn sets the TdeCredentialArn field's value. -func (s *AwsRdsDbInstanceDetails) SetTdeCredentialArn(v string) *AwsRdsDbInstanceDetails { - s.TdeCredentialArn = &v +// SetNodeToNodeEncryptionOptions sets the NodeToNodeEncryptionOptions field's value. +func (s *AwsOpenSearchServiceDomainDetails) SetNodeToNodeEncryptionOptions(v *AwsOpenSearchServiceDomainNodeToNodeEncryptionOptionsDetails) *AwsOpenSearchServiceDomainDetails { + s.NodeToNodeEncryptionOptions = v return s } -// SetTimezone sets the Timezone field's value. -func (s *AwsRdsDbInstanceDetails) SetTimezone(v string) *AwsRdsDbInstanceDetails { - s.Timezone = &v +// SetServiceSoftwareOptions sets the ServiceSoftwareOptions field's value. +func (s *AwsOpenSearchServiceDomainDetails) SetServiceSoftwareOptions(v *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails) *AwsOpenSearchServiceDomainDetails { + s.ServiceSoftwareOptions = v return s } -// SetVpcSecurityGroups sets the VpcSecurityGroups field's value. -func (s *AwsRdsDbInstanceDetails) SetVpcSecurityGroups(v []*AwsRdsDbInstanceVpcSecurityGroup) *AwsRdsDbInstanceDetails { - s.VpcSecurityGroups = v +// SetVpcOptions sets the VpcOptions field's value. +func (s *AwsOpenSearchServiceDomainDetails) SetVpcOptions(v *AwsOpenSearchServiceDomainVpcOptionsDetails) *AwsOpenSearchServiceDomainDetails { + s.VpcOptions = v return s } -// Specifies the connection endpoint. -type AwsRdsDbInstanceEndpoint struct { +// Information about additional options for the domain endpoint. +type AwsOpenSearchServiceDomainDomainEndpointOptionsDetails struct { _ struct{} `type:"structure"` - // Specifies the DNS address of the DB instance. - Address *string `type:"string"` + // The fully qualified URL for the custom endpoint. + CustomEndpoint *string `type:"string"` - // Specifies the ID that Amazon Route 53 assigns when you create a hosted zone. - HostedZoneId *string `type:"string"` + // The ARN for the security certificate. The certificate is managed in ACM. + CustomEndpointCertificateArn *string `type:"string"` - // Specifies the port that the database engine is listening on. - Port *int64 `type:"integer"` + // Whether to enable a custom endpoint for the domain. + CustomEndpointEnabled *bool `type:"boolean"` + + // Whether to require that all traffic to the domain arrive over HTTPS. + EnforceHTTPS *bool `type:"boolean"` + + // The TLS security policy to apply to the HTTPS endpoint of the OpenSearch + // domain. + TLSSecurityPolicy *string `type:"string"` } // String returns the string representation. @@ -27450,7 +27700,7 @@ type AwsRdsDbInstanceEndpoint struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbInstanceEndpoint) String() string { +func (s AwsOpenSearchServiceDomainDomainEndpointOptionsDetails) String() string { return awsutil.Prettify(s) } @@ -27459,37 +27709,50 @@ func (s AwsRdsDbInstanceEndpoint) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbInstanceEndpoint) GoString() string { +func (s AwsOpenSearchServiceDomainDomainEndpointOptionsDetails) GoString() string { return s.String() } -// SetAddress sets the Address field's value. -func (s *AwsRdsDbInstanceEndpoint) SetAddress(v string) *AwsRdsDbInstanceEndpoint { - s.Address = &v +// SetCustomEndpoint sets the CustomEndpoint field's value. +func (s *AwsOpenSearchServiceDomainDomainEndpointOptionsDetails) SetCustomEndpoint(v string) *AwsOpenSearchServiceDomainDomainEndpointOptionsDetails { + s.CustomEndpoint = &v return s } -// SetHostedZoneId sets the HostedZoneId field's value. -func (s *AwsRdsDbInstanceEndpoint) SetHostedZoneId(v string) *AwsRdsDbInstanceEndpoint { - s.HostedZoneId = &v +// SetCustomEndpointCertificateArn sets the CustomEndpointCertificateArn field's value. +func (s *AwsOpenSearchServiceDomainDomainEndpointOptionsDetails) SetCustomEndpointCertificateArn(v string) *AwsOpenSearchServiceDomainDomainEndpointOptionsDetails { + s.CustomEndpointCertificateArn = &v return s } -// SetPort sets the Port field's value. -func (s *AwsRdsDbInstanceEndpoint) SetPort(v int64) *AwsRdsDbInstanceEndpoint { - s.Port = &v +// SetCustomEndpointEnabled sets the CustomEndpointEnabled field's value. +func (s *AwsOpenSearchServiceDomainDomainEndpointOptionsDetails) SetCustomEndpointEnabled(v bool) *AwsOpenSearchServiceDomainDomainEndpointOptionsDetails { + s.CustomEndpointEnabled = &v return s } -// A VPC security groups that the DB instance belongs to. -type AwsRdsDbInstanceVpcSecurityGroup struct { +// SetEnforceHTTPS sets the EnforceHTTPS field's value. +func (s *AwsOpenSearchServiceDomainDomainEndpointOptionsDetails) SetEnforceHTTPS(v bool) *AwsOpenSearchServiceDomainDomainEndpointOptionsDetails { + s.EnforceHTTPS = &v + return s +} + +// SetTLSSecurityPolicy sets the TLSSecurityPolicy field's value. +func (s *AwsOpenSearchServiceDomainDomainEndpointOptionsDetails) SetTLSSecurityPolicy(v string) *AwsOpenSearchServiceDomainDomainEndpointOptionsDetails { + s.TLSSecurityPolicy = &v + return s +} + +// Details about the configuration for encryption at rest for the OpenSearch +// domain. +type AwsOpenSearchServiceDomainEncryptionAtRestOptionsDetails struct { _ struct{} `type:"structure"` - // The status of the VPC security group. - Status *string `type:"string"` + // Whether encryption at rest is enabled. + Enabled *bool `type:"boolean"` - // The name of the VPC security group. - VpcSecurityGroupId *string `type:"string"` + // The KMS key ID. + KmsKeyId *string `type:"string"` } // String returns the string representation. @@ -27497,7 +27760,7 @@ type AwsRdsDbInstanceVpcSecurityGroup struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbInstanceVpcSecurityGroup) String() string { +func (s AwsOpenSearchServiceDomainEncryptionAtRestOptionsDetails) String() string { return awsutil.Prettify(s) } @@ -27506,31 +27769,31 @@ func (s AwsRdsDbInstanceVpcSecurityGroup) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbInstanceVpcSecurityGroup) GoString() string { +func (s AwsOpenSearchServiceDomainEncryptionAtRestOptionsDetails) GoString() string { return s.String() } -// SetStatus sets the Status field's value. -func (s *AwsRdsDbInstanceVpcSecurityGroup) SetStatus(v string) *AwsRdsDbInstanceVpcSecurityGroup { - s.Status = &v +// SetEnabled sets the Enabled field's value. +func (s *AwsOpenSearchServiceDomainEncryptionAtRestOptionsDetails) SetEnabled(v bool) *AwsOpenSearchServiceDomainEncryptionAtRestOptionsDetails { + s.Enabled = &v return s } -// SetVpcSecurityGroupId sets the VpcSecurityGroupId field's value. -func (s *AwsRdsDbInstanceVpcSecurityGroup) SetVpcSecurityGroupId(v string) *AwsRdsDbInstanceVpcSecurityGroup { - s.VpcSecurityGroupId = &v +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *AwsOpenSearchServiceDomainEncryptionAtRestOptionsDetails) SetKmsKeyId(v string) *AwsOpenSearchServiceDomainEncryptionAtRestOptionsDetails { + s.KmsKeyId = &v return s } -// An option group membership. -type AwsRdsDbOptionGroupMembership struct { +// Configuration details for a log publishing option. +type AwsOpenSearchServiceDomainLogPublishingOption struct { _ struct{} `type:"structure"` - // The name of the option group. - OptionGroupName *string `type:"string"` + // The ARN of the CloudWatch Logs group to publish the logs to. + CloudWatchLogsLogGroupArn *string `type:"string"` - // The status of the option group membership. - Status *string `type:"string"` + // Whether the log publishing is enabled. + Enabled *bool `type:"boolean"` } // String returns the string representation. @@ -27538,7 +27801,7 @@ type AwsRdsDbOptionGroupMembership struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbOptionGroupMembership) String() string { +func (s AwsOpenSearchServiceDomainLogPublishingOption) String() string { return awsutil.Prettify(s) } @@ -27547,31 +27810,34 @@ func (s AwsRdsDbOptionGroupMembership) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbOptionGroupMembership) GoString() string { +func (s AwsOpenSearchServiceDomainLogPublishingOption) GoString() string { return s.String() } -// SetOptionGroupName sets the OptionGroupName field's value. -func (s *AwsRdsDbOptionGroupMembership) SetOptionGroupName(v string) *AwsRdsDbOptionGroupMembership { - s.OptionGroupName = &v +// SetCloudWatchLogsLogGroupArn sets the CloudWatchLogsLogGroupArn field's value. +func (s *AwsOpenSearchServiceDomainLogPublishingOption) SetCloudWatchLogsLogGroupArn(v string) *AwsOpenSearchServiceDomainLogPublishingOption { + s.CloudWatchLogsLogGroupArn = &v return s } -// SetStatus sets the Status field's value. -func (s *AwsRdsDbOptionGroupMembership) SetStatus(v string) *AwsRdsDbOptionGroupMembership { - s.Status = &v +// SetEnabled sets the Enabled field's value. +func (s *AwsOpenSearchServiceDomainLogPublishingOption) SetEnabled(v bool) *AwsOpenSearchServiceDomainLogPublishingOption { + s.Enabled = &v return s } -// Provides information about a parameter group for a DB instance. -type AwsRdsDbParameterGroup struct { +// Configures the CloudWatch Logs to publish for the OpenSearch domain. +type AwsOpenSearchServiceDomainLogPublishingOptionsDetails struct { _ struct{} `type:"structure"` - // The name of the parameter group. - DbParameterGroupName *string `type:"string"` + // Configures the OpenSearch audit logs publishing. + AuditLogs *AwsOpenSearchServiceDomainLogPublishingOption `type:"structure"` - // The status of parameter updates. - ParameterApplyStatus *string `type:"string"` + // Configures the OpenSearch index logs publishing. + IndexSlowLogs *AwsOpenSearchServiceDomainLogPublishingOption `type:"structure"` + + // Configures the OpenSearch search slow log publishing. + SearchSlowLogs *AwsOpenSearchServiceDomainLogPublishingOption `type:"structure"` } // String returns the string representation. @@ -27579,7 +27845,7 @@ type AwsRdsDbParameterGroup struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbParameterGroup) String() string { +func (s AwsOpenSearchServiceDomainLogPublishingOptionsDetails) String() string { return awsutil.Prettify(s) } @@ -27588,71 +27854,40 @@ func (s AwsRdsDbParameterGroup) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbParameterGroup) GoString() string { +func (s AwsOpenSearchServiceDomainLogPublishingOptionsDetails) GoString() string { return s.String() } -// SetDbParameterGroupName sets the DbParameterGroupName field's value. -func (s *AwsRdsDbParameterGroup) SetDbParameterGroupName(v string) *AwsRdsDbParameterGroup { - s.DbParameterGroupName = &v +// SetAuditLogs sets the AuditLogs field's value. +func (s *AwsOpenSearchServiceDomainLogPublishingOptionsDetails) SetAuditLogs(v *AwsOpenSearchServiceDomainLogPublishingOption) *AwsOpenSearchServiceDomainLogPublishingOptionsDetails { + s.AuditLogs = v return s } -// SetParameterApplyStatus sets the ParameterApplyStatus field's value. -func (s *AwsRdsDbParameterGroup) SetParameterApplyStatus(v string) *AwsRdsDbParameterGroup { - s.ParameterApplyStatus = &v +// SetIndexSlowLogs sets the IndexSlowLogs field's value. +func (s *AwsOpenSearchServiceDomainLogPublishingOptionsDetails) SetIndexSlowLogs(v *AwsOpenSearchServiceDomainLogPublishingOption) *AwsOpenSearchServiceDomainLogPublishingOptionsDetails { + s.IndexSlowLogs = v return s } -// Changes to a DB instance that are currently pending. -type AwsRdsDbPendingModifiedValues struct { - _ struct{} `type:"structure"` - - // The new value of the allocated storage for the DB instance. - AllocatedStorage *int64 `type:"integer"` - - // The new backup retention period for the DB instance. - BackupRetentionPeriod *int64 `type:"integer"` - - // The new CA certificate identifier for the DB instance. - CaCertificateIdentifier *string `type:"string"` - - // The new DB instance class for the DB instance. - DbInstanceClass *string `type:"string"` - - // The new DB instance identifier for the DB instance. - DbInstanceIdentifier *string `type:"string"` - - // The name of the new subnet group for the DB instance. - DbSubnetGroupName *string `type:"string"` +// SetSearchSlowLogs sets the SearchSlowLogs field's value. +func (s *AwsOpenSearchServiceDomainLogPublishingOptionsDetails) SetSearchSlowLogs(v *AwsOpenSearchServiceDomainLogPublishingOption) *AwsOpenSearchServiceDomainLogPublishingOptionsDetails { + s.SearchSlowLogs = v + return s +} - // The new engine version for the DB instance. - EngineVersion *string `type:"string"` +// Specifies information about the master user of the domain. +type AwsOpenSearchServiceDomainMasterUserOptionsDetails struct { + _ struct{} `type:"structure"` - // The new provisioned IOPS value for the DB instance. - Iops *int64 `type:"integer"` + // The Amazon Resource Name (ARN) for the master user. + MasterUserArn *string `type:"string"` - // The new license model value for the DB instance. - LicenseModel *string `type:"string"` + // The username for the master user. + MasterUserName *string `type:"string"` - // The new master user password for the DB instance. + // The password for the master user. MasterUserPassword *string `type:"string"` - - // Indicates that a single Availability Zone DB instance is changing to a multiple - // Availability Zone deployment. - MultiAZ *bool `type:"boolean"` - - // A list of log types that are being enabled or disabled. - PendingCloudWatchLogsExports *AwsRdsPendingCloudWatchLogsExports `type:"structure"` - - // The new port for the DB instance. - Port *int64 `type:"integer"` - - // Processor features that are being updated. - ProcessorFeatures []*AwsRdsDbProcessorFeature `type:"list"` - - // The new storage type for the DB instance. - StorageType *string `type:"string"` } // String returns the string representation. @@ -27660,7 +27895,7 @@ type AwsRdsDbPendingModifiedValues struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbPendingModifiedValues) String() string { +func (s AwsOpenSearchServiceDomainMasterUserOptionsDetails) String() string { return awsutil.Prettify(s) } @@ -27669,109 +27904,34 @@ func (s AwsRdsDbPendingModifiedValues) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbPendingModifiedValues) GoString() string { +func (s AwsOpenSearchServiceDomainMasterUserOptionsDetails) GoString() string { return s.String() } -// SetAllocatedStorage sets the AllocatedStorage field's value. -func (s *AwsRdsDbPendingModifiedValues) SetAllocatedStorage(v int64) *AwsRdsDbPendingModifiedValues { - s.AllocatedStorage = &v - return s -} - -// SetBackupRetentionPeriod sets the BackupRetentionPeriod field's value. -func (s *AwsRdsDbPendingModifiedValues) SetBackupRetentionPeriod(v int64) *AwsRdsDbPendingModifiedValues { - s.BackupRetentionPeriod = &v - return s -} - -// SetCaCertificateIdentifier sets the CaCertificateIdentifier field's value. -func (s *AwsRdsDbPendingModifiedValues) SetCaCertificateIdentifier(v string) *AwsRdsDbPendingModifiedValues { - s.CaCertificateIdentifier = &v - return s -} - -// SetDbInstanceClass sets the DbInstanceClass field's value. -func (s *AwsRdsDbPendingModifiedValues) SetDbInstanceClass(v string) *AwsRdsDbPendingModifiedValues { - s.DbInstanceClass = &v - return s -} - -// SetDbInstanceIdentifier sets the DbInstanceIdentifier field's value. -func (s *AwsRdsDbPendingModifiedValues) SetDbInstanceIdentifier(v string) *AwsRdsDbPendingModifiedValues { - s.DbInstanceIdentifier = &v - return s -} - -// SetDbSubnetGroupName sets the DbSubnetGroupName field's value. -func (s *AwsRdsDbPendingModifiedValues) SetDbSubnetGroupName(v string) *AwsRdsDbPendingModifiedValues { - s.DbSubnetGroupName = &v - return s -} - -// SetEngineVersion sets the EngineVersion field's value. -func (s *AwsRdsDbPendingModifiedValues) SetEngineVersion(v string) *AwsRdsDbPendingModifiedValues { - s.EngineVersion = &v - return s -} - -// SetIops sets the Iops field's value. -func (s *AwsRdsDbPendingModifiedValues) SetIops(v int64) *AwsRdsDbPendingModifiedValues { - s.Iops = &v +// SetMasterUserArn sets the MasterUserArn field's value. +func (s *AwsOpenSearchServiceDomainMasterUserOptionsDetails) SetMasterUserArn(v string) *AwsOpenSearchServiceDomainMasterUserOptionsDetails { + s.MasterUserArn = &v return s } -// SetLicenseModel sets the LicenseModel field's value. -func (s *AwsRdsDbPendingModifiedValues) SetLicenseModel(v string) *AwsRdsDbPendingModifiedValues { - s.LicenseModel = &v +// SetMasterUserName sets the MasterUserName field's value. +func (s *AwsOpenSearchServiceDomainMasterUserOptionsDetails) SetMasterUserName(v string) *AwsOpenSearchServiceDomainMasterUserOptionsDetails { + s.MasterUserName = &v return s } // SetMasterUserPassword sets the MasterUserPassword field's value. -func (s *AwsRdsDbPendingModifiedValues) SetMasterUserPassword(v string) *AwsRdsDbPendingModifiedValues { +func (s *AwsOpenSearchServiceDomainMasterUserOptionsDetails) SetMasterUserPassword(v string) *AwsOpenSearchServiceDomainMasterUserOptionsDetails { s.MasterUserPassword = &v return s } -// SetMultiAZ sets the MultiAZ field's value. -func (s *AwsRdsDbPendingModifiedValues) SetMultiAZ(v bool) *AwsRdsDbPendingModifiedValues { - s.MultiAZ = &v - return s -} - -// SetPendingCloudWatchLogsExports sets the PendingCloudWatchLogsExports field's value. -func (s *AwsRdsDbPendingModifiedValues) SetPendingCloudWatchLogsExports(v *AwsRdsPendingCloudWatchLogsExports) *AwsRdsDbPendingModifiedValues { - s.PendingCloudWatchLogsExports = v - return s -} - -// SetPort sets the Port field's value. -func (s *AwsRdsDbPendingModifiedValues) SetPort(v int64) *AwsRdsDbPendingModifiedValues { - s.Port = &v - return s -} - -// SetProcessorFeatures sets the ProcessorFeatures field's value. -func (s *AwsRdsDbPendingModifiedValues) SetProcessorFeatures(v []*AwsRdsDbProcessorFeature) *AwsRdsDbPendingModifiedValues { - s.ProcessorFeatures = v - return s -} - -// SetStorageType sets the StorageType field's value. -func (s *AwsRdsDbPendingModifiedValues) SetStorageType(v string) *AwsRdsDbPendingModifiedValues { - s.StorageType = &v - return s -} - -// A processor feature. -type AwsRdsDbProcessorFeature struct { +// Provides details about the configuration for node-to-node encryption. +type AwsOpenSearchServiceDomainNodeToNodeEncryptionOptionsDetails struct { _ struct{} `type:"structure"` - // The name of the processor feature. Valid values are coreCount or threadsPerCore. - Name *string `type:"string"` - - // The value of the processor feature. - Value *string `type:"string"` + // Whether node-to-node encryption is enabled. + Enabled *bool `type:"boolean"` } // String returns the string representation. @@ -27779,7 +27939,7 @@ type AwsRdsDbProcessorFeature struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbProcessorFeature) String() string { +func (s AwsOpenSearchServiceDomainNodeToNodeEncryptionOptionsDetails) String() string { return awsutil.Prettify(s) } @@ -27788,47 +27948,55 @@ func (s AwsRdsDbProcessorFeature) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbProcessorFeature) GoString() string { +func (s AwsOpenSearchServiceDomainNodeToNodeEncryptionOptionsDetails) GoString() string { return s.String() } -// SetName sets the Name field's value. -func (s *AwsRdsDbProcessorFeature) SetName(v string) *AwsRdsDbProcessorFeature { - s.Name = &v - return s -} - -// SetValue sets the Value field's value. -func (s *AwsRdsDbProcessorFeature) SetValue(v string) *AwsRdsDbProcessorFeature { - s.Value = &v +// SetEnabled sets the Enabled field's value. +func (s *AwsOpenSearchServiceDomainNodeToNodeEncryptionOptionsDetails) SetEnabled(v bool) *AwsOpenSearchServiceDomainNodeToNodeEncryptionOptionsDetails { + s.Enabled = &v return s } -// Provides information about an Amazon RDS DB security group. -type AwsRdsDbSecurityGroupDetails struct { +// Provides information about the state of the domain relative to the latest +// service software. +type AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails struct { _ struct{} `type:"structure"` - // The ARN for the DB security group. - DbSecurityGroupArn *string `type:"string"` + // The epoch time when the deployment window closes for required updates. After + // this time, OpenSearch Service schedules the software upgrade automatically. + AutomatedUpdateDate *string `type:"string"` - // Provides the description of the DB security group. - DbSecurityGroupDescription *string `type:"string"` + // Whether a request to update the domain can be canceled. + Cancellable *bool `type:"boolean"` - // Specifies the name of the DB security group. - DbSecurityGroupName *string `type:"string"` + // The version of the service software that is currently installed on the domain. + CurrentVersion *string `type:"string"` - // Contains a list of EC2 security groups. - Ec2SecurityGroups []*AwsRdsDbSecurityGroupEc2SecurityGroup `type:"list"` + // A more detailed description of the service software status. + Description *string `type:"string"` - // Contains a list of IP ranges. - IpRanges []*AwsRdsDbSecurityGroupIpRange `type:"list"` + // The most recent version of the service software. + NewVersion *string `type:"string"` - // Provides the Amazon Web Services ID of the owner of a specific DB security - // group. - OwnerId *string `type:"string"` + // Whether the service software update is optional. + OptionalDeployment *bool `type:"boolean"` - // Provides VPC ID associated with the DB security group. - VpcId *string `type:"string"` + // Whether a service software update is available for the domain. + UpdateAvailable *bool `type:"boolean"` + + // The status of the service software update. Valid values are as follows: + // + // * COMPLETED + // + // * ELIGIBLE + // + // * IN_PROGRESS + // + // * NOT_ELIGIBLE + // + // * PENDING_UPDATE + UpdateStatus *string `type:"string"` } // String returns the string representation. @@ -27836,7 +28004,7 @@ type AwsRdsDbSecurityGroupDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbSecurityGroupDetails) String() string { +func (s AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails) String() string { return awsutil.Prettify(s) } @@ -27845,67 +28013,69 @@ func (s AwsRdsDbSecurityGroupDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbSecurityGroupDetails) GoString() string { +func (s AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails) GoString() string { return s.String() } -// SetDbSecurityGroupArn sets the DbSecurityGroupArn field's value. -func (s *AwsRdsDbSecurityGroupDetails) SetDbSecurityGroupArn(v string) *AwsRdsDbSecurityGroupDetails { - s.DbSecurityGroupArn = &v +// SetAutomatedUpdateDate sets the AutomatedUpdateDate field's value. +func (s *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails) SetAutomatedUpdateDate(v string) *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails { + s.AutomatedUpdateDate = &v return s } -// SetDbSecurityGroupDescription sets the DbSecurityGroupDescription field's value. -func (s *AwsRdsDbSecurityGroupDetails) SetDbSecurityGroupDescription(v string) *AwsRdsDbSecurityGroupDetails { - s.DbSecurityGroupDescription = &v +// SetCancellable sets the Cancellable field's value. +func (s *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails) SetCancellable(v bool) *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails { + s.Cancellable = &v return s } -// SetDbSecurityGroupName sets the DbSecurityGroupName field's value. -func (s *AwsRdsDbSecurityGroupDetails) SetDbSecurityGroupName(v string) *AwsRdsDbSecurityGroupDetails { - s.DbSecurityGroupName = &v +// SetCurrentVersion sets the CurrentVersion field's value. +func (s *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails) SetCurrentVersion(v string) *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails { + s.CurrentVersion = &v return s } -// SetEc2SecurityGroups sets the Ec2SecurityGroups field's value. -func (s *AwsRdsDbSecurityGroupDetails) SetEc2SecurityGroups(v []*AwsRdsDbSecurityGroupEc2SecurityGroup) *AwsRdsDbSecurityGroupDetails { - s.Ec2SecurityGroups = v +// SetDescription sets the Description field's value. +func (s *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails) SetDescription(v string) *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails { + s.Description = &v return s } -// SetIpRanges sets the IpRanges field's value. -func (s *AwsRdsDbSecurityGroupDetails) SetIpRanges(v []*AwsRdsDbSecurityGroupIpRange) *AwsRdsDbSecurityGroupDetails { - s.IpRanges = v +// SetNewVersion sets the NewVersion field's value. +func (s *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails) SetNewVersion(v string) *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails { + s.NewVersion = &v return s } -// SetOwnerId sets the OwnerId field's value. -func (s *AwsRdsDbSecurityGroupDetails) SetOwnerId(v string) *AwsRdsDbSecurityGroupDetails { - s.OwnerId = &v +// SetOptionalDeployment sets the OptionalDeployment field's value. +func (s *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails) SetOptionalDeployment(v bool) *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails { + s.OptionalDeployment = &v return s } -// SetVpcId sets the VpcId field's value. -func (s *AwsRdsDbSecurityGroupDetails) SetVpcId(v string) *AwsRdsDbSecurityGroupDetails { - s.VpcId = &v +// SetUpdateAvailable sets the UpdateAvailable field's value. +func (s *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails) SetUpdateAvailable(v bool) *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails { + s.UpdateAvailable = &v return s } -// EC2 security group information for an RDS DB security group. -type AwsRdsDbSecurityGroupEc2SecurityGroup struct { - _ struct{} `type:"structure"` - - // Specifies the ID for the EC2 security group. - Ec2SecurityGroupId *string `type:"string"` +// SetUpdateStatus sets the UpdateStatus field's value. +func (s *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails) SetUpdateStatus(v string) *AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails { + s.UpdateStatus = &v + return s +} - // Specifies the name of the EC2 security group. - Ec2SecurityGroupName *string `type:"string"` +// Contains information that OpenSearch Service derives based on the VPCOptions +// for the domain. +type AwsOpenSearchServiceDomainVpcOptionsDetails struct { + _ struct{} `type:"structure"` - // Provides the Amazon Web Services ID of the owner of the EC2 security group. - Ec2SecurityGroupOwnerId *string `type:"string"` + // The list of security group IDs that are associated with the VPC endpoints + // for the domain. + SecurityGroupIds []*string `type:"list"` - // Provides the status of the EC2 security group. - Status *string `type:"string"` + // A list of subnet IDs that are associated with the VPC endpoints for the domain. + SubnetIds []*string `type:"list"` } // String returns the string representation. @@ -27913,7 +28083,7 @@ type AwsRdsDbSecurityGroupEc2SecurityGroup struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbSecurityGroupEc2SecurityGroup) String() string { +func (s AwsOpenSearchServiceDomainVpcOptionsDetails) String() string { return awsutil.Prettify(s) } @@ -27922,42 +28092,37 @@ func (s AwsRdsDbSecurityGroupEc2SecurityGroup) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbSecurityGroupEc2SecurityGroup) GoString() string { +func (s AwsOpenSearchServiceDomainVpcOptionsDetails) GoString() string { return s.String() } -// SetEc2SecurityGroupId sets the Ec2SecurityGroupId field's value. -func (s *AwsRdsDbSecurityGroupEc2SecurityGroup) SetEc2SecurityGroupId(v string) *AwsRdsDbSecurityGroupEc2SecurityGroup { - s.Ec2SecurityGroupId = &v - return s -} - -// SetEc2SecurityGroupName sets the Ec2SecurityGroupName field's value. -func (s *AwsRdsDbSecurityGroupEc2SecurityGroup) SetEc2SecurityGroupName(v string) *AwsRdsDbSecurityGroupEc2SecurityGroup { - s.Ec2SecurityGroupName = &v - return s -} - -// SetEc2SecurityGroupOwnerId sets the Ec2SecurityGroupOwnerId field's value. -func (s *AwsRdsDbSecurityGroupEc2SecurityGroup) SetEc2SecurityGroupOwnerId(v string) *AwsRdsDbSecurityGroupEc2SecurityGroup { - s.Ec2SecurityGroupOwnerId = &v +// SetSecurityGroupIds sets the SecurityGroupIds field's value. +func (s *AwsOpenSearchServiceDomainVpcOptionsDetails) SetSecurityGroupIds(v []*string) *AwsOpenSearchServiceDomainVpcOptionsDetails { + s.SecurityGroupIds = v return s } -// SetStatus sets the Status field's value. -func (s *AwsRdsDbSecurityGroupEc2SecurityGroup) SetStatus(v string) *AwsRdsDbSecurityGroupEc2SecurityGroup { - s.Status = &v +// SetSubnetIds sets the SubnetIds field's value. +func (s *AwsOpenSearchServiceDomainVpcOptionsDetails) SetSubnetIds(v []*string) *AwsOpenSearchServiceDomainVpcOptionsDetails { + s.SubnetIds = v return s } -// IP range information for an RDS DB security group. -type AwsRdsDbSecurityGroupIpRange struct { +// An IAM role that is associated with the Amazon RDS DB cluster. +type AwsRdsDbClusterAssociatedRole struct { _ struct{} `type:"structure"` - // Specifies the IP range. - CidrIp *string `type:"string"` + // The ARN of the IAM role. + RoleArn *string `type:"string"` - // Specifies the status of the IP range. + // The status of the association between the IAM role and the DB cluster. Valid + // values are as follows: + // + // * ACTIVE + // + // * INVALID + // + // * PENDING Status *string `type:"string"` } @@ -27966,7 +28131,7 @@ type AwsRdsDbSecurityGroupIpRange struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbSecurityGroupIpRange) String() string { +func (s AwsRdsDbClusterAssociatedRole) String() string { return awsutil.Prettify(s) } @@ -27975,47 +28140,108 @@ func (s AwsRdsDbSecurityGroupIpRange) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbSecurityGroupIpRange) GoString() string { +func (s AwsRdsDbClusterAssociatedRole) GoString() string { return s.String() } -// SetCidrIp sets the CidrIp field's value. -func (s *AwsRdsDbSecurityGroupIpRange) SetCidrIp(v string) *AwsRdsDbSecurityGroupIpRange { - s.CidrIp = &v +// SetRoleArn sets the RoleArn field's value. +func (s *AwsRdsDbClusterAssociatedRole) SetRoleArn(v string) *AwsRdsDbClusterAssociatedRole { + s.RoleArn = &v return s } // SetStatus sets the Status field's value. -func (s *AwsRdsDbSecurityGroupIpRange) SetStatus(v string) *AwsRdsDbSecurityGroupIpRange { +func (s *AwsRdsDbClusterAssociatedRole) SetStatus(v string) *AwsRdsDbClusterAssociatedRole { s.Status = &v return s } -// Provides details about an Amazon RDS DB cluster snapshot. -type AwsRdsDbSnapshotDetails struct { +// Information about an Amazon RDS DB cluster. +type AwsRdsDbClusterDetails struct { _ struct{} `type:"structure"` - // The amount of storage (in gigabytes) to be initially allocated for the database - // instance. + // The status of the database activity stream. Valid values are as follows: + // + // * started + // + // * starting + // + // * stopped + // + // * stopping + ActivityStreamStatus *string `type:"string"` + + // For all database engines except Aurora, specifies the allocated storage size + // in gibibytes (GiB). AllocatedStorage *int64 `type:"integer"` - // Specifies the name of the Availability Zone in which the DB instance was - // located at the time of the DB snapshot. - AvailabilityZone *string `type:"string"` + // A list of the IAM roles that are associated with the DB cluster. + AssociatedRoles []*AwsRdsDbClusterAssociatedRole `type:"list"` - // A name for the DB instance. - DbInstanceIdentifier *string `type:"string"` + // A list of Availability Zones (AZs) where instances in the DB cluster can + // be created. + AvailabilityZones []*string `type:"list"` - // The name or ARN of the DB snapshot that is used to restore the DB instance. - DbSnapshotIdentifier *string `type:"string"` + // The number of days for which automated backups are retained. + BackupRetentionPeriod *int64 `type:"integer"` - // The identifier for the source DB instance. - DbiResourceId *string `type:"string"` + // Indicates when the DB cluster was created, in Universal Coordinated Time + // (UTC). + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + ClusterCreateTime *string `type:"string"` - // Whether the DB snapshot is encrypted. - Encrypted *bool `type:"boolean"` + // Whether tags are copied from the DB cluster to snapshots of the DB cluster. + CopyTagsToSnapshot *bool `type:"boolean"` - // The name of the database engine to use for this DB instance. Valid values + // Whether the DB cluster is a clone of a DB cluster owned by a different Amazon + // Web Services account. + CrossAccountClone *bool `type:"boolean"` + + // A list of custom endpoints for the DB cluster. + CustomEndpoints []*string `type:"list"` + + // The name of the database. + DatabaseName *string `type:"string"` + + // The DB cluster identifier that the user assigned to the cluster. This identifier + // is the unique key that identifies a DB cluster. + DbClusterIdentifier *string `type:"string"` + + // The list of instances that make up the DB cluster. + DbClusterMembers []*AwsRdsDbClusterMember `type:"list"` + + // The list of option group memberships for this DB cluster. + DbClusterOptionGroupMemberships []*AwsRdsDbClusterOptionGroupMembership `type:"list"` + + // The name of the DB cluster parameter group for the DB cluster. + DbClusterParameterGroup *string `type:"string"` + + // The identifier of the DB cluster. The identifier must be unique within each + // Amazon Web Services Region and is immutable. + DbClusterResourceId *string `type:"string"` + + // The subnet group that is associated with the DB cluster, including the name, + // description, and subnets in the subnet group. + DbSubnetGroup *string `type:"string"` + + // Whether the DB cluster has deletion protection enabled. + DeletionProtection *bool `type:"boolean"` + + // The Active Directory domain membership records that are associated with the + // DB cluster. + DomainMemberships []*AwsRdsDbDomainMembership `type:"list"` + + // A list of log types that this DB cluster is configured to export to CloudWatch + // Logs. + EnabledCloudWatchLogsExports []*string `type:"list"` + + // The connection endpoint for the primary instance of the DB cluster. + Endpoint *string `type:"string"` + + // The name of the database engine to use for this DB cluster. Valid values // are as follows: // // * aurora @@ -28023,99 +28249,77 @@ type AwsRdsDbSnapshotDetails struct { // * aurora-mysql // // * aurora-postgresql + Engine *string `type:"string"` + + // The database engine mode of the DB cluster.Valid values are as follows: // - // * c - // - // * mariadb - // - // * mysql - // - // * oracle-ee - // - // * oracle-se - // - // * oracle-se1 - // - // * oracle-se2 + // * global // - // * sqlserver-ee + // * multimaster // - // * sqlserver-ex + // * parallelquery // - // * sqlserver-se + // * provisioned // - // * sqlserver-web - Engine *string `type:"string"` + // * serverless + EngineMode *string `type:"string"` - // The version of the database engine. + // The version number of the database engine to use. EngineVersion *string `type:"string"` - // Whether mapping of IAM accounts to database accounts is enabled. - IamDatabaseAuthenticationEnabled *bool `type:"boolean"` + // Specifies the identifier that Amazon Route 53 assigns when you create a hosted + // zone. + HostedZoneId *string `type:"string"` - // Specifies the time in Coordinated Universal Time (UTC) when the DB instance, - // from which the snapshot was taken, was created. - InstanceCreateTime *string `type:"string"` + // Whether the HTTP endpoint for an Aurora Serverless DB cluster is enabled. + HttpEndpointEnabled *bool `type:"boolean"` - // The provisioned IOPS (I/O operations per second) value of the DB instance - // at the time of the snapshot. - Iops *int64 `type:"integer"` + // Whether the mapping of IAM accounts to database accounts is enabled. + IamDatabaseAuthenticationEnabled *bool `type:"boolean"` - // If Encrypted is true, the KMS key identifier for the encrypted DB snapshot. + // The ARN of the KMS master key that is used to encrypt the database instances + // in the DB cluster. KmsKeyId *string `type:"string"` - // License model information for the restored DB instance. - LicenseModel *string `type:"string"` - - // The master user name for the DB snapshot. + // The name of the master user for the DB cluster. MasterUsername *string `type:"string"` - // The option group name for the DB snapshot. - OptionGroupName *string `type:"string"` - - // The percentage of the estimated data that has been transferred. - PercentProgress *int64 `type:"integer"` + // Whether the DB cluster has instances in multiple Availability Zones. + MultiAz *bool `type:"boolean"` - // The port that the database engine was listening on at the time of the snapshot. + // The port number on which the DB instances in the DB cluster accept connections. Port *int64 `type:"integer"` - // The number of CPU cores and the number of threads per core for the DB instance - // class of the DB instance. - ProcessorFeatures []*AwsRdsDbProcessorFeature `type:"list"` - - // When the snapshot was taken in Coordinated Universal Time (UTC). - SnapshotCreateTime *string `type:"string"` - - // The type of the DB snapshot. - SnapshotType *string `type:"string"` - - // The DB snapshot ARN that the DB snapshot was copied from. - SourceDbSnapshotIdentifier *string `type:"string"` - - // The Amazon Web Services Region that the DB snapshot was created in or copied - // from. - SourceRegion *string `type:"string"` - - // The status of this DB snapshot. - Status *string `type:"string"` + // The range of time each day when automated backups are created, if automated + // backups are enabled. + // + // Uses the format HH:MM-HH:MM. For example, 04:52-05:22. + PreferredBackupWindow *string `type:"string"` - // The storage type associated with the DB snapshot. Valid values are as follows: + // The weekly time range during which system maintenance can occur, in Universal + // Coordinated Time (UTC). // - // * gp2 + // Uses the format :HH:MM-:HH:MM. // - // * io1 + // For the day values, use mon|tue|wed|thu|fri|sat|sun. // - // * standard - StorageType *string `type:"string"` + // For example, sun:09:32-sun:10:02. + PreferredMaintenanceWindow *string `type:"string"` - // The ARN from the key store with which to associate the instance for TDE encryption. - TdeCredentialArn *string `type:"string"` + // The identifiers of the read replicas that are associated with this DB cluster. + ReadReplicaIdentifiers []*string `type:"list"` - // The time zone of the DB snapshot. - Timezone *string `type:"string"` + // The reader endpoint for the DB cluster. + ReaderEndpoint *string `type:"string"` - // The VPC ID associated with the DB snapshot. - VpcId *string `type:"string"` + // The current status of this DB cluster. + Status *string `type:"string"` + + // Whether the DB cluster is encrypted. + StorageEncrypted *bool `type:"boolean"` + + // A list of VPC security groups that the DB cluster belongs to. + VpcSecurityGroups []*AwsRdsDbInstanceVpcSecurityGroup `type:"list"` } // String returns the string representation. @@ -28123,7 +28327,7 @@ type AwsRdsDbSnapshotDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbSnapshotDetails) String() string { +func (s AwsRdsDbClusterDetails) String() string { return awsutil.Prettify(s) } @@ -28132,252 +28336,248 @@ func (s AwsRdsDbSnapshotDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbSnapshotDetails) GoString() string { +func (s AwsRdsDbClusterDetails) GoString() string { return s.String() } +// SetActivityStreamStatus sets the ActivityStreamStatus field's value. +func (s *AwsRdsDbClusterDetails) SetActivityStreamStatus(v string) *AwsRdsDbClusterDetails { + s.ActivityStreamStatus = &v + return s +} + // SetAllocatedStorage sets the AllocatedStorage field's value. -func (s *AwsRdsDbSnapshotDetails) SetAllocatedStorage(v int64) *AwsRdsDbSnapshotDetails { +func (s *AwsRdsDbClusterDetails) SetAllocatedStorage(v int64) *AwsRdsDbClusterDetails { s.AllocatedStorage = &v return s } -// SetAvailabilityZone sets the AvailabilityZone field's value. -func (s *AwsRdsDbSnapshotDetails) SetAvailabilityZone(v string) *AwsRdsDbSnapshotDetails { - s.AvailabilityZone = &v +// SetAssociatedRoles sets the AssociatedRoles field's value. +func (s *AwsRdsDbClusterDetails) SetAssociatedRoles(v []*AwsRdsDbClusterAssociatedRole) *AwsRdsDbClusterDetails { + s.AssociatedRoles = v return s } -// SetDbInstanceIdentifier sets the DbInstanceIdentifier field's value. -func (s *AwsRdsDbSnapshotDetails) SetDbInstanceIdentifier(v string) *AwsRdsDbSnapshotDetails { - s.DbInstanceIdentifier = &v +// SetAvailabilityZones sets the AvailabilityZones field's value. +func (s *AwsRdsDbClusterDetails) SetAvailabilityZones(v []*string) *AwsRdsDbClusterDetails { + s.AvailabilityZones = v return s } -// SetDbSnapshotIdentifier sets the DbSnapshotIdentifier field's value. -func (s *AwsRdsDbSnapshotDetails) SetDbSnapshotIdentifier(v string) *AwsRdsDbSnapshotDetails { - s.DbSnapshotIdentifier = &v +// SetBackupRetentionPeriod sets the BackupRetentionPeriod field's value. +func (s *AwsRdsDbClusterDetails) SetBackupRetentionPeriod(v int64) *AwsRdsDbClusterDetails { + s.BackupRetentionPeriod = &v return s } -// SetDbiResourceId sets the DbiResourceId field's value. -func (s *AwsRdsDbSnapshotDetails) SetDbiResourceId(v string) *AwsRdsDbSnapshotDetails { - s.DbiResourceId = &v +// SetClusterCreateTime sets the ClusterCreateTime field's value. +func (s *AwsRdsDbClusterDetails) SetClusterCreateTime(v string) *AwsRdsDbClusterDetails { + s.ClusterCreateTime = &v return s } -// SetEncrypted sets the Encrypted field's value. -func (s *AwsRdsDbSnapshotDetails) SetEncrypted(v bool) *AwsRdsDbSnapshotDetails { - s.Encrypted = &v +// SetCopyTagsToSnapshot sets the CopyTagsToSnapshot field's value. +func (s *AwsRdsDbClusterDetails) SetCopyTagsToSnapshot(v bool) *AwsRdsDbClusterDetails { + s.CopyTagsToSnapshot = &v return s } -// SetEngine sets the Engine field's value. -func (s *AwsRdsDbSnapshotDetails) SetEngine(v string) *AwsRdsDbSnapshotDetails { - s.Engine = &v +// SetCrossAccountClone sets the CrossAccountClone field's value. +func (s *AwsRdsDbClusterDetails) SetCrossAccountClone(v bool) *AwsRdsDbClusterDetails { + s.CrossAccountClone = &v return s } -// SetEngineVersion sets the EngineVersion field's value. -func (s *AwsRdsDbSnapshotDetails) SetEngineVersion(v string) *AwsRdsDbSnapshotDetails { - s.EngineVersion = &v +// SetCustomEndpoints sets the CustomEndpoints field's value. +func (s *AwsRdsDbClusterDetails) SetCustomEndpoints(v []*string) *AwsRdsDbClusterDetails { + s.CustomEndpoints = v return s } -// SetIamDatabaseAuthenticationEnabled sets the IamDatabaseAuthenticationEnabled field's value. -func (s *AwsRdsDbSnapshotDetails) SetIamDatabaseAuthenticationEnabled(v bool) *AwsRdsDbSnapshotDetails { - s.IamDatabaseAuthenticationEnabled = &v +// SetDatabaseName sets the DatabaseName field's value. +func (s *AwsRdsDbClusterDetails) SetDatabaseName(v string) *AwsRdsDbClusterDetails { + s.DatabaseName = &v return s } -// SetInstanceCreateTime sets the InstanceCreateTime field's value. -func (s *AwsRdsDbSnapshotDetails) SetInstanceCreateTime(v string) *AwsRdsDbSnapshotDetails { - s.InstanceCreateTime = &v +// SetDbClusterIdentifier sets the DbClusterIdentifier field's value. +func (s *AwsRdsDbClusterDetails) SetDbClusterIdentifier(v string) *AwsRdsDbClusterDetails { + s.DbClusterIdentifier = &v return s } -// SetIops sets the Iops field's value. -func (s *AwsRdsDbSnapshotDetails) SetIops(v int64) *AwsRdsDbSnapshotDetails { - s.Iops = &v +// SetDbClusterMembers sets the DbClusterMembers field's value. +func (s *AwsRdsDbClusterDetails) SetDbClusterMembers(v []*AwsRdsDbClusterMember) *AwsRdsDbClusterDetails { + s.DbClusterMembers = v return s } -// SetKmsKeyId sets the KmsKeyId field's value. -func (s *AwsRdsDbSnapshotDetails) SetKmsKeyId(v string) *AwsRdsDbSnapshotDetails { - s.KmsKeyId = &v +// SetDbClusterOptionGroupMemberships sets the DbClusterOptionGroupMemberships field's value. +func (s *AwsRdsDbClusterDetails) SetDbClusterOptionGroupMemberships(v []*AwsRdsDbClusterOptionGroupMembership) *AwsRdsDbClusterDetails { + s.DbClusterOptionGroupMemberships = v return s } -// SetLicenseModel sets the LicenseModel field's value. -func (s *AwsRdsDbSnapshotDetails) SetLicenseModel(v string) *AwsRdsDbSnapshotDetails { - s.LicenseModel = &v +// SetDbClusterParameterGroup sets the DbClusterParameterGroup field's value. +func (s *AwsRdsDbClusterDetails) SetDbClusterParameterGroup(v string) *AwsRdsDbClusterDetails { + s.DbClusterParameterGroup = &v return s } -// SetMasterUsername sets the MasterUsername field's value. -func (s *AwsRdsDbSnapshotDetails) SetMasterUsername(v string) *AwsRdsDbSnapshotDetails { - s.MasterUsername = &v +// SetDbClusterResourceId sets the DbClusterResourceId field's value. +func (s *AwsRdsDbClusterDetails) SetDbClusterResourceId(v string) *AwsRdsDbClusterDetails { + s.DbClusterResourceId = &v return s } -// SetOptionGroupName sets the OptionGroupName field's value. -func (s *AwsRdsDbSnapshotDetails) SetOptionGroupName(v string) *AwsRdsDbSnapshotDetails { - s.OptionGroupName = &v +// SetDbSubnetGroup sets the DbSubnetGroup field's value. +func (s *AwsRdsDbClusterDetails) SetDbSubnetGroup(v string) *AwsRdsDbClusterDetails { + s.DbSubnetGroup = &v return s } -// SetPercentProgress sets the PercentProgress field's value. -func (s *AwsRdsDbSnapshotDetails) SetPercentProgress(v int64) *AwsRdsDbSnapshotDetails { - s.PercentProgress = &v +// SetDeletionProtection sets the DeletionProtection field's value. +func (s *AwsRdsDbClusterDetails) SetDeletionProtection(v bool) *AwsRdsDbClusterDetails { + s.DeletionProtection = &v return s } -// SetPort sets the Port field's value. -func (s *AwsRdsDbSnapshotDetails) SetPort(v int64) *AwsRdsDbSnapshotDetails { - s.Port = &v +// SetDomainMemberships sets the DomainMemberships field's value. +func (s *AwsRdsDbClusterDetails) SetDomainMemberships(v []*AwsRdsDbDomainMembership) *AwsRdsDbClusterDetails { + s.DomainMemberships = v return s } -// SetProcessorFeatures sets the ProcessorFeatures field's value. -func (s *AwsRdsDbSnapshotDetails) SetProcessorFeatures(v []*AwsRdsDbProcessorFeature) *AwsRdsDbSnapshotDetails { - s.ProcessorFeatures = v +// SetEnabledCloudWatchLogsExports sets the EnabledCloudWatchLogsExports field's value. +func (s *AwsRdsDbClusterDetails) SetEnabledCloudWatchLogsExports(v []*string) *AwsRdsDbClusterDetails { + s.EnabledCloudWatchLogsExports = v return s } -// SetSnapshotCreateTime sets the SnapshotCreateTime field's value. -func (s *AwsRdsDbSnapshotDetails) SetSnapshotCreateTime(v string) *AwsRdsDbSnapshotDetails { - s.SnapshotCreateTime = &v +// SetEndpoint sets the Endpoint field's value. +func (s *AwsRdsDbClusterDetails) SetEndpoint(v string) *AwsRdsDbClusterDetails { + s.Endpoint = &v return s } -// SetSnapshotType sets the SnapshotType field's value. -func (s *AwsRdsDbSnapshotDetails) SetSnapshotType(v string) *AwsRdsDbSnapshotDetails { - s.SnapshotType = &v +// SetEngine sets the Engine field's value. +func (s *AwsRdsDbClusterDetails) SetEngine(v string) *AwsRdsDbClusterDetails { + s.Engine = &v return s } -// SetSourceDbSnapshotIdentifier sets the SourceDbSnapshotIdentifier field's value. -func (s *AwsRdsDbSnapshotDetails) SetSourceDbSnapshotIdentifier(v string) *AwsRdsDbSnapshotDetails { - s.SourceDbSnapshotIdentifier = &v +// SetEngineMode sets the EngineMode field's value. +func (s *AwsRdsDbClusterDetails) SetEngineMode(v string) *AwsRdsDbClusterDetails { + s.EngineMode = &v return s } -// SetSourceRegion sets the SourceRegion field's value. -func (s *AwsRdsDbSnapshotDetails) SetSourceRegion(v string) *AwsRdsDbSnapshotDetails { - s.SourceRegion = &v +// SetEngineVersion sets the EngineVersion field's value. +func (s *AwsRdsDbClusterDetails) SetEngineVersion(v string) *AwsRdsDbClusterDetails { + s.EngineVersion = &v return s } -// SetStatus sets the Status field's value. -func (s *AwsRdsDbSnapshotDetails) SetStatus(v string) *AwsRdsDbSnapshotDetails { - s.Status = &v +// SetHostedZoneId sets the HostedZoneId field's value. +func (s *AwsRdsDbClusterDetails) SetHostedZoneId(v string) *AwsRdsDbClusterDetails { + s.HostedZoneId = &v return s } -// SetStorageType sets the StorageType field's value. -func (s *AwsRdsDbSnapshotDetails) SetStorageType(v string) *AwsRdsDbSnapshotDetails { - s.StorageType = &v +// SetHttpEndpointEnabled sets the HttpEndpointEnabled field's value. +func (s *AwsRdsDbClusterDetails) SetHttpEndpointEnabled(v bool) *AwsRdsDbClusterDetails { + s.HttpEndpointEnabled = &v return s } -// SetTdeCredentialArn sets the TdeCredentialArn field's value. -func (s *AwsRdsDbSnapshotDetails) SetTdeCredentialArn(v string) *AwsRdsDbSnapshotDetails { - s.TdeCredentialArn = &v +// SetIamDatabaseAuthenticationEnabled sets the IamDatabaseAuthenticationEnabled field's value. +func (s *AwsRdsDbClusterDetails) SetIamDatabaseAuthenticationEnabled(v bool) *AwsRdsDbClusterDetails { + s.IamDatabaseAuthenticationEnabled = &v return s } -// SetTimezone sets the Timezone field's value. -func (s *AwsRdsDbSnapshotDetails) SetTimezone(v string) *AwsRdsDbSnapshotDetails { - s.Timezone = &v +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *AwsRdsDbClusterDetails) SetKmsKeyId(v string) *AwsRdsDbClusterDetails { + s.KmsKeyId = &v return s } -// SetVpcId sets the VpcId field's value. -func (s *AwsRdsDbSnapshotDetails) SetVpcId(v string) *AwsRdsDbSnapshotDetails { - s.VpcId = &v +// SetMasterUsername sets the MasterUsername field's value. +func (s *AwsRdsDbClusterDetails) SetMasterUsername(v string) *AwsRdsDbClusterDetails { + s.MasterUsername = &v return s } -// Information about the status of a read replica. -type AwsRdsDbStatusInfo struct { - _ struct{} `type:"structure"` - - // If the read replica is currently in an error state, provides the error details. - Message *string `type:"string"` - - // Whether the read replica instance is operating normally. - Normal *bool `type:"boolean"` - - // The status of the read replica instance. - Status *string `type:"string"` +// SetMultiAz sets the MultiAz field's value. +func (s *AwsRdsDbClusterDetails) SetMultiAz(v bool) *AwsRdsDbClusterDetails { + s.MultiAz = &v + return s +} - // The type of status. For a read replica, the status type is read replication. - StatusType *string `type:"string"` +// SetPort sets the Port field's value. +func (s *AwsRdsDbClusterDetails) SetPort(v int64) *AwsRdsDbClusterDetails { + s.Port = &v + return s } -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsRdsDbStatusInfo) String() string { - return awsutil.Prettify(s) +// SetPreferredBackupWindow sets the PreferredBackupWindow field's value. +func (s *AwsRdsDbClusterDetails) SetPreferredBackupWindow(v string) *AwsRdsDbClusterDetails { + s.PreferredBackupWindow = &v + return s } -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsRdsDbStatusInfo) GoString() string { - return s.String() +// SetPreferredMaintenanceWindow sets the PreferredMaintenanceWindow field's value. +func (s *AwsRdsDbClusterDetails) SetPreferredMaintenanceWindow(v string) *AwsRdsDbClusterDetails { + s.PreferredMaintenanceWindow = &v + return s } -// SetMessage sets the Message field's value. -func (s *AwsRdsDbStatusInfo) SetMessage(v string) *AwsRdsDbStatusInfo { - s.Message = &v +// SetReadReplicaIdentifiers sets the ReadReplicaIdentifiers field's value. +func (s *AwsRdsDbClusterDetails) SetReadReplicaIdentifiers(v []*string) *AwsRdsDbClusterDetails { + s.ReadReplicaIdentifiers = v return s } -// SetNormal sets the Normal field's value. -func (s *AwsRdsDbStatusInfo) SetNormal(v bool) *AwsRdsDbStatusInfo { - s.Normal = &v +// SetReaderEndpoint sets the ReaderEndpoint field's value. +func (s *AwsRdsDbClusterDetails) SetReaderEndpoint(v string) *AwsRdsDbClusterDetails { + s.ReaderEndpoint = &v return s } // SetStatus sets the Status field's value. -func (s *AwsRdsDbStatusInfo) SetStatus(v string) *AwsRdsDbStatusInfo { +func (s *AwsRdsDbClusterDetails) SetStatus(v string) *AwsRdsDbClusterDetails { s.Status = &v return s } -// SetStatusType sets the StatusType field's value. -func (s *AwsRdsDbStatusInfo) SetStatusType(v string) *AwsRdsDbStatusInfo { - s.StatusType = &v +// SetStorageEncrypted sets the StorageEncrypted field's value. +func (s *AwsRdsDbClusterDetails) SetStorageEncrypted(v bool) *AwsRdsDbClusterDetails { + s.StorageEncrypted = &v return s } -// Information about the subnet group for the database instance. -type AwsRdsDbSubnetGroup struct { - _ struct{} `type:"structure"` - - // The ARN of the subnet group. - DbSubnetGroupArn *string `type:"string"` +// SetVpcSecurityGroups sets the VpcSecurityGroups field's value. +func (s *AwsRdsDbClusterDetails) SetVpcSecurityGroups(v []*AwsRdsDbInstanceVpcSecurityGroup) *AwsRdsDbClusterDetails { + s.VpcSecurityGroups = v + return s +} - // The description of the subnet group. - DbSubnetGroupDescription *string `type:"string"` +// Information about an instance in the DB cluster. +type AwsRdsDbClusterMember struct { + _ struct{} `type:"structure"` - // The name of the subnet group. - DbSubnetGroupName *string `type:"string"` + // The status of the DB cluster parameter group for this member of the DB cluster. + DbClusterParameterGroupStatus *string `type:"string"` - // The status of the subnet group. - SubnetGroupStatus *string `type:"string"` + // The instance identifier for this member of the DB cluster. + DbInstanceIdentifier *string `type:"string"` - // A list of subnets in the subnet group. - Subnets []*AwsRdsDbSubnetGroupSubnet `type:"list"` + // Whether the cluster member is the primary instance for the DB cluster. + IsClusterWriter *bool `type:"boolean"` - // The VPC ID of the subnet group. - VpcId *string `type:"string"` + // Specifies the order in which an Aurora replica is promoted to the primary + // instance when the existing primary instance fails. + PromotionTier *int64 `type:"integer"` } // String returns the string representation. @@ -28385,7 +28585,7 @@ type AwsRdsDbSubnetGroup struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbSubnetGroup) String() string { +func (s AwsRdsDbClusterMember) String() string { return awsutil.Prettify(s) } @@ -28394,58 +28594,43 @@ func (s AwsRdsDbSubnetGroup) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbSubnetGroup) GoString() string { +func (s AwsRdsDbClusterMember) GoString() string { return s.String() } -// SetDbSubnetGroupArn sets the DbSubnetGroupArn field's value. -func (s *AwsRdsDbSubnetGroup) SetDbSubnetGroupArn(v string) *AwsRdsDbSubnetGroup { - s.DbSubnetGroupArn = &v - return s -} - -// SetDbSubnetGroupDescription sets the DbSubnetGroupDescription field's value. -func (s *AwsRdsDbSubnetGroup) SetDbSubnetGroupDescription(v string) *AwsRdsDbSubnetGroup { - s.DbSubnetGroupDescription = &v - return s -} - -// SetDbSubnetGroupName sets the DbSubnetGroupName field's value. -func (s *AwsRdsDbSubnetGroup) SetDbSubnetGroupName(v string) *AwsRdsDbSubnetGroup { - s.DbSubnetGroupName = &v +// SetDbClusterParameterGroupStatus sets the DbClusterParameterGroupStatus field's value. +func (s *AwsRdsDbClusterMember) SetDbClusterParameterGroupStatus(v string) *AwsRdsDbClusterMember { + s.DbClusterParameterGroupStatus = &v return s } -// SetSubnetGroupStatus sets the SubnetGroupStatus field's value. -func (s *AwsRdsDbSubnetGroup) SetSubnetGroupStatus(v string) *AwsRdsDbSubnetGroup { - s.SubnetGroupStatus = &v +// SetDbInstanceIdentifier sets the DbInstanceIdentifier field's value. +func (s *AwsRdsDbClusterMember) SetDbInstanceIdentifier(v string) *AwsRdsDbClusterMember { + s.DbInstanceIdentifier = &v return s } -// SetSubnets sets the Subnets field's value. -func (s *AwsRdsDbSubnetGroup) SetSubnets(v []*AwsRdsDbSubnetGroupSubnet) *AwsRdsDbSubnetGroup { - s.Subnets = v +// SetIsClusterWriter sets the IsClusterWriter field's value. +func (s *AwsRdsDbClusterMember) SetIsClusterWriter(v bool) *AwsRdsDbClusterMember { + s.IsClusterWriter = &v return s } -// SetVpcId sets the VpcId field's value. -func (s *AwsRdsDbSubnetGroup) SetVpcId(v string) *AwsRdsDbSubnetGroup { - s.VpcId = &v +// SetPromotionTier sets the PromotionTier field's value. +func (s *AwsRdsDbClusterMember) SetPromotionTier(v int64) *AwsRdsDbClusterMember { + s.PromotionTier = &v return s } -// Information about a subnet in a subnet group. -type AwsRdsDbSubnetGroupSubnet struct { +// Information about an option group membership for a DB cluster. +type AwsRdsDbClusterOptionGroupMembership struct { _ struct{} `type:"structure"` - // Information about the Availability Zone for a subnet in the subnet group. - SubnetAvailabilityZone *AwsRdsDbSubnetGroupSubnetAvailabilityZone `type:"structure"` - - // The identifier of a subnet in the subnet group. - SubnetIdentifier *string `type:"string"` + // The name of the DB cluster option group. + DbClusterOptionGroupName *string `type:"string"` - // The status of a subnet in the subnet group. - SubnetStatus *string `type:"string"` + // The status of the DB cluster option group. + Status *string `type:"string"` } // String returns the string representation. @@ -28453,7 +28638,7 @@ type AwsRdsDbSubnetGroupSubnet struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbSubnetGroupSubnet) String() string { +func (s AwsRdsDbClusterOptionGroupMembership) String() string { return awsutil.Prettify(s) } @@ -28462,102 +28647,89 @@ func (s AwsRdsDbSubnetGroupSubnet) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsDbSubnetGroupSubnet) GoString() string { +func (s AwsRdsDbClusterOptionGroupMembership) GoString() string { return s.String() } -// SetSubnetAvailabilityZone sets the SubnetAvailabilityZone field's value. -func (s *AwsRdsDbSubnetGroupSubnet) SetSubnetAvailabilityZone(v *AwsRdsDbSubnetGroupSubnetAvailabilityZone) *AwsRdsDbSubnetGroupSubnet { - s.SubnetAvailabilityZone = v - return s -} - -// SetSubnetIdentifier sets the SubnetIdentifier field's value. -func (s *AwsRdsDbSubnetGroupSubnet) SetSubnetIdentifier(v string) *AwsRdsDbSubnetGroupSubnet { - s.SubnetIdentifier = &v +// SetDbClusterOptionGroupName sets the DbClusterOptionGroupName field's value. +func (s *AwsRdsDbClusterOptionGroupMembership) SetDbClusterOptionGroupName(v string) *AwsRdsDbClusterOptionGroupMembership { + s.DbClusterOptionGroupName = &v return s } -// SetSubnetStatus sets the SubnetStatus field's value. -func (s *AwsRdsDbSubnetGroupSubnet) SetSubnetStatus(v string) *AwsRdsDbSubnetGroupSubnet { - s.SubnetStatus = &v +// SetStatus sets the Status field's value. +func (s *AwsRdsDbClusterOptionGroupMembership) SetStatus(v string) *AwsRdsDbClusterOptionGroupMembership { + s.Status = &v return s } -// An Availability Zone for a subnet in a subnet group. -type AwsRdsDbSubnetGroupSubnetAvailabilityZone struct { +// Information about an Amazon RDS DB cluster snapshot. +type AwsRdsDbClusterSnapshotDetails struct { _ struct{} `type:"structure"` - // The name of the Availability Zone for a subnet in the subnet group. - Name *string `type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsRdsDbSubnetGroupSubnetAvailabilityZone) String() string { - return awsutil.Prettify(s) -} + // Specifies the allocated storage size in gibibytes (GiB). + AllocatedStorage *int64 `type:"integer"` -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsRdsDbSubnetGroupSubnetAvailabilityZone) GoString() string { - return s.String() -} + // A list of Availability Zones where instances in the DB cluster can be created. + AvailabilityZones []*string `type:"list"` -// SetName sets the Name field's value. -func (s *AwsRdsDbSubnetGroupSubnetAvailabilityZone) SetName(v string) *AwsRdsDbSubnetGroupSubnetAvailabilityZone { - s.Name = &v - return s -} + // Indicates when the DB cluster was created, in Universal Coordinated Time + // (UTC). + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + ClusterCreateTime *string `type:"string"` -// Details about an Amazon RDS event notification subscription. The subscription -// allows Amazon RDS to post events to an SNS topic. -type AwsRdsEventSubscriptionDetails struct { - _ struct{} `type:"structure"` + // The DB cluster identifier. + DbClusterIdentifier *string `type:"string"` - // The identifier of the account that is associated with the event notification - // subscription. - CustSubscriptionId *string `type:"string"` + // The identifier of the DB cluster snapshot. + DbClusterSnapshotIdentifier *string `type:"string"` - // The identifier of the event notification subscription. - CustomerAwsId *string `type:"string"` + // The name of the database engine that you want to use for this DB instance. + Engine *string `type:"string"` - // Whether the event notification subscription is enabled. - Enabled *bool `type:"boolean"` + // The version of the database engine to use. + EngineVersion *string `type:"string"` - // The list of event categories for the event notification subscription. - EventCategoriesList []*string `type:"list"` + // Whether mapping of IAM accounts to database accounts is enabled. + IamDatabaseAuthenticationEnabled *bool `type:"boolean"` - // The ARN of the event notification subscription. - EventSubscriptionArn *string `type:"string"` + // The ARN of the KMS master key that is used to encrypt the database instances + // in the DB cluster. + KmsKeyId *string `type:"string"` - // The ARN of the SNS topic to post the event notifications to. - SnsTopicArn *string `type:"string"` + // The license model information for this DB cluster snapshot. + LicenseModel *string `type:"string"` - // A list of source identifiers for the event notification subscription. - SourceIdsList []*string `type:"list"` + // The name of the master user for the DB cluster. + MasterUsername *string `type:"string"` - // The source type for the event notification subscription. - SourceType *string `type:"string"` + // Specifies the percentage of the estimated data that has been transferred. + PercentProgress *int64 `type:"integer"` - // The status of the event notification subscription. - // - // Valid values: creating | modifying | deleting | active | no-permission | - // topic-not-exist - Status *string `type:"string"` + // The port number on which the DB instances in the DB cluster accept connections. + Port *int64 `type:"integer"` - // The datetime when the event notification subscription was created. + // Indicates when the snapshot was taken. // // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot // contain spaces. For example, 2020-03-22T13:22:13.933Z. - SubscriptionCreationTime *string `type:"string"` + SnapshotCreateTime *string `type:"string"` + + // The type of DB cluster snapshot. + SnapshotType *string `type:"string"` + + // The status of this DB cluster snapshot. + Status *string `type:"string"` + + // Whether the DB cluster is encrypted. + StorageEncrypted *bool `type:"boolean"` + + // The VPC ID that is associated with the DB cluster snapshot. + VpcId *string `type:"string"` } // String returns the string representation. @@ -28565,7 +28737,7 @@ type AwsRdsEventSubscriptionDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsEventSubscriptionDetails) String() string { +func (s AwsRdsDbClusterSnapshotDetails) String() string { return awsutil.Prettify(s) } @@ -28574,123 +28746,134 @@ func (s AwsRdsEventSubscriptionDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRdsEventSubscriptionDetails) GoString() string { +func (s AwsRdsDbClusterSnapshotDetails) GoString() string { return s.String() } -// SetCustSubscriptionId sets the CustSubscriptionId field's value. -func (s *AwsRdsEventSubscriptionDetails) SetCustSubscriptionId(v string) *AwsRdsEventSubscriptionDetails { - s.CustSubscriptionId = &v +// SetAllocatedStorage sets the AllocatedStorage field's value. +func (s *AwsRdsDbClusterSnapshotDetails) SetAllocatedStorage(v int64) *AwsRdsDbClusterSnapshotDetails { + s.AllocatedStorage = &v return s } -// SetCustomerAwsId sets the CustomerAwsId field's value. -func (s *AwsRdsEventSubscriptionDetails) SetCustomerAwsId(v string) *AwsRdsEventSubscriptionDetails { - s.CustomerAwsId = &v +// SetAvailabilityZones sets the AvailabilityZones field's value. +func (s *AwsRdsDbClusterSnapshotDetails) SetAvailabilityZones(v []*string) *AwsRdsDbClusterSnapshotDetails { + s.AvailabilityZones = v return s } -// SetEnabled sets the Enabled field's value. -func (s *AwsRdsEventSubscriptionDetails) SetEnabled(v bool) *AwsRdsEventSubscriptionDetails { - s.Enabled = &v +// SetClusterCreateTime sets the ClusterCreateTime field's value. +func (s *AwsRdsDbClusterSnapshotDetails) SetClusterCreateTime(v string) *AwsRdsDbClusterSnapshotDetails { + s.ClusterCreateTime = &v return s } -// SetEventCategoriesList sets the EventCategoriesList field's value. -func (s *AwsRdsEventSubscriptionDetails) SetEventCategoriesList(v []*string) *AwsRdsEventSubscriptionDetails { - s.EventCategoriesList = v +// SetDbClusterIdentifier sets the DbClusterIdentifier field's value. +func (s *AwsRdsDbClusterSnapshotDetails) SetDbClusterIdentifier(v string) *AwsRdsDbClusterSnapshotDetails { + s.DbClusterIdentifier = &v return s } -// SetEventSubscriptionArn sets the EventSubscriptionArn field's value. -func (s *AwsRdsEventSubscriptionDetails) SetEventSubscriptionArn(v string) *AwsRdsEventSubscriptionDetails { - s.EventSubscriptionArn = &v +// SetDbClusterSnapshotIdentifier sets the DbClusterSnapshotIdentifier field's value. +func (s *AwsRdsDbClusterSnapshotDetails) SetDbClusterSnapshotIdentifier(v string) *AwsRdsDbClusterSnapshotDetails { + s.DbClusterSnapshotIdentifier = &v return s } -// SetSnsTopicArn sets the SnsTopicArn field's value. -func (s *AwsRdsEventSubscriptionDetails) SetSnsTopicArn(v string) *AwsRdsEventSubscriptionDetails { - s.SnsTopicArn = &v +// SetEngine sets the Engine field's value. +func (s *AwsRdsDbClusterSnapshotDetails) SetEngine(v string) *AwsRdsDbClusterSnapshotDetails { + s.Engine = &v return s } -// SetSourceIdsList sets the SourceIdsList field's value. -func (s *AwsRdsEventSubscriptionDetails) SetSourceIdsList(v []*string) *AwsRdsEventSubscriptionDetails { - s.SourceIdsList = v +// SetEngineVersion sets the EngineVersion field's value. +func (s *AwsRdsDbClusterSnapshotDetails) SetEngineVersion(v string) *AwsRdsDbClusterSnapshotDetails { + s.EngineVersion = &v return s } -// SetSourceType sets the SourceType field's value. -func (s *AwsRdsEventSubscriptionDetails) SetSourceType(v string) *AwsRdsEventSubscriptionDetails { - s.SourceType = &v +// SetIamDatabaseAuthenticationEnabled sets the IamDatabaseAuthenticationEnabled field's value. +func (s *AwsRdsDbClusterSnapshotDetails) SetIamDatabaseAuthenticationEnabled(v bool) *AwsRdsDbClusterSnapshotDetails { + s.IamDatabaseAuthenticationEnabled = &v return s } -// SetStatus sets the Status field's value. -func (s *AwsRdsEventSubscriptionDetails) SetStatus(v string) *AwsRdsEventSubscriptionDetails { - s.Status = &v +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *AwsRdsDbClusterSnapshotDetails) SetKmsKeyId(v string) *AwsRdsDbClusterSnapshotDetails { + s.KmsKeyId = &v return s } -// SetSubscriptionCreationTime sets the SubscriptionCreationTime field's value. -func (s *AwsRdsEventSubscriptionDetails) SetSubscriptionCreationTime(v string) *AwsRdsEventSubscriptionDetails { - s.SubscriptionCreationTime = &v +// SetLicenseModel sets the LicenseModel field's value. +func (s *AwsRdsDbClusterSnapshotDetails) SetLicenseModel(v string) *AwsRdsDbClusterSnapshotDetails { + s.LicenseModel = &v return s } -// Identifies the log types to enable and disable. -type AwsRdsPendingCloudWatchLogsExports struct { - _ struct{} `type:"structure"` +// SetMasterUsername sets the MasterUsername field's value. +func (s *AwsRdsDbClusterSnapshotDetails) SetMasterUsername(v string) *AwsRdsDbClusterSnapshotDetails { + s.MasterUsername = &v + return s +} - // A list of log types that are being disabled. - LogTypesToDisable []*string `type:"list"` +// SetPercentProgress sets the PercentProgress field's value. +func (s *AwsRdsDbClusterSnapshotDetails) SetPercentProgress(v int64) *AwsRdsDbClusterSnapshotDetails { + s.PercentProgress = &v + return s +} - // A list of log types that are being enabled. - LogTypesToEnable []*string `type:"list"` +// SetPort sets the Port field's value. +func (s *AwsRdsDbClusterSnapshotDetails) SetPort(v int64) *AwsRdsDbClusterSnapshotDetails { + s.Port = &v + return s } -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsRdsPendingCloudWatchLogsExports) String() string { - return awsutil.Prettify(s) +// SetSnapshotCreateTime sets the SnapshotCreateTime field's value. +func (s *AwsRdsDbClusterSnapshotDetails) SetSnapshotCreateTime(v string) *AwsRdsDbClusterSnapshotDetails { + s.SnapshotCreateTime = &v + return s } -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsRdsPendingCloudWatchLogsExports) GoString() string { - return s.String() +// SetSnapshotType sets the SnapshotType field's value. +func (s *AwsRdsDbClusterSnapshotDetails) SetSnapshotType(v string) *AwsRdsDbClusterSnapshotDetails { + s.SnapshotType = &v + return s } -// SetLogTypesToDisable sets the LogTypesToDisable field's value. -func (s *AwsRdsPendingCloudWatchLogsExports) SetLogTypesToDisable(v []*string) *AwsRdsPendingCloudWatchLogsExports { - s.LogTypesToDisable = v +// SetStatus sets the Status field's value. +func (s *AwsRdsDbClusterSnapshotDetails) SetStatus(v string) *AwsRdsDbClusterSnapshotDetails { + s.Status = &v return s } -// SetLogTypesToEnable sets the LogTypesToEnable field's value. -func (s *AwsRdsPendingCloudWatchLogsExports) SetLogTypesToEnable(v []*string) *AwsRdsPendingCloudWatchLogsExports { - s.LogTypesToEnable = v +// SetStorageEncrypted sets the StorageEncrypted field's value. +func (s *AwsRdsDbClusterSnapshotDetails) SetStorageEncrypted(v bool) *AwsRdsDbClusterSnapshotDetails { + s.StorageEncrypted = &v return s } -// A node in an Amazon Redshift cluster. -type AwsRedshiftClusterClusterNode struct { +// SetVpcId sets the VpcId field's value. +func (s *AwsRdsDbClusterSnapshotDetails) SetVpcId(v string) *AwsRdsDbClusterSnapshotDetails { + s.VpcId = &v + return s +} + +// Information about an Active Directory domain membership record associated +// with the DB instance. +type AwsRdsDbDomainMembership struct { _ struct{} `type:"structure"` - // The role of the node. A node might be a leader node or a compute node. - NodeRole *string `type:"string"` + // The identifier of the Active Directory domain. + Domain *string `type:"string"` - // The private IP address of the node. - PrivateIpAddress *string `type:"string"` + // The fully qualified domain name of the Active Directory domain. + Fqdn *string `type:"string"` - // The public IP address of the node. - PublicIpAddress *string `type:"string"` + // The name of the IAM role to use when making API calls to the Directory Service. + IamRoleName *string `type:"string"` + + // The status of the Active Directory Domain membership for the DB instance. + Status *string `type:"string"` } // String returns the string representation. @@ -28698,7 +28881,7 @@ type AwsRedshiftClusterClusterNode struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRedshiftClusterClusterNode) String() string { +func (s AwsRdsDbDomainMembership) String() string { return awsutil.Prettify(s) } @@ -28707,40 +28890,56 @@ func (s AwsRedshiftClusterClusterNode) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRedshiftClusterClusterNode) GoString() string { +func (s AwsRdsDbDomainMembership) GoString() string { return s.String() } -// SetNodeRole sets the NodeRole field's value. -func (s *AwsRedshiftClusterClusterNode) SetNodeRole(v string) *AwsRedshiftClusterClusterNode { - s.NodeRole = &v +// SetDomain sets the Domain field's value. +func (s *AwsRdsDbDomainMembership) SetDomain(v string) *AwsRdsDbDomainMembership { + s.Domain = &v return s } -// SetPrivateIpAddress sets the PrivateIpAddress field's value. -func (s *AwsRedshiftClusterClusterNode) SetPrivateIpAddress(v string) *AwsRedshiftClusterClusterNode { - s.PrivateIpAddress = &v +// SetFqdn sets the Fqdn field's value. +func (s *AwsRdsDbDomainMembership) SetFqdn(v string) *AwsRdsDbDomainMembership { + s.Fqdn = &v return s } -// SetPublicIpAddress sets the PublicIpAddress field's value. -func (s *AwsRedshiftClusterClusterNode) SetPublicIpAddress(v string) *AwsRedshiftClusterClusterNode { - s.PublicIpAddress = &v +// SetIamRoleName sets the IamRoleName field's value. +func (s *AwsRdsDbDomainMembership) SetIamRoleName(v string) *AwsRdsDbDomainMembership { + s.IamRoleName = &v return s } -// A cluster parameter group that is associated with an Amazon Redshift cluster. -type AwsRedshiftClusterClusterParameterGroup struct { +// SetStatus sets the Status field's value. +func (s *AwsRdsDbDomainMembership) SetStatus(v string) *AwsRdsDbDomainMembership { + s.Status = &v + return s +} + +// An IAM role associated with the DB instance. +type AwsRdsDbInstanceAssociatedRole struct { _ struct{} `type:"structure"` - // The list of parameter statuses. - ClusterParameterStatusList []*AwsRedshiftClusterClusterParameterStatus `type:"list"` + // The name of the feature associated with the IAM role. + FeatureName *string `type:"string"` - // The status of updates to the parameters. - ParameterApplyStatus *string `type:"string"` + // The ARN of the IAM role that is associated with the DB instance. + RoleArn *string `type:"string"` - // The name of the parameter group. - ParameterGroupName *string `type:"string"` + // Describes the state of the association between the IAM role and the DB instance. + // The Status property returns one of the following values: + // + // * ACTIVE - The IAM role ARN is associated with the DB instance and can + // be used to access other Amazon Web Services services on your behalf. + // + // * PENDING - The IAM role ARN is being associated with the DB instance. + // + // * INVALID - The IAM role ARN is associated with the DB instance. But the + // DB instance is unable to assume the IAM role in order to access other + // Amazon Web Services services on your behalf. + Status *string `type:"string"` } // String returns the string representation. @@ -28748,7 +28947,7 @@ type AwsRedshiftClusterClusterParameterGroup struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRedshiftClusterClusterParameterGroup) String() string { +func (s AwsRdsDbInstanceAssociatedRole) String() string { return awsutil.Prettify(s) } @@ -28757,46 +28956,268 @@ func (s AwsRedshiftClusterClusterParameterGroup) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRedshiftClusterClusterParameterGroup) GoString() string { +func (s AwsRdsDbInstanceAssociatedRole) GoString() string { return s.String() } -// SetClusterParameterStatusList sets the ClusterParameterStatusList field's value. -func (s *AwsRedshiftClusterClusterParameterGroup) SetClusterParameterStatusList(v []*AwsRedshiftClusterClusterParameterStatus) *AwsRedshiftClusterClusterParameterGroup { - s.ClusterParameterStatusList = v +// SetFeatureName sets the FeatureName field's value. +func (s *AwsRdsDbInstanceAssociatedRole) SetFeatureName(v string) *AwsRdsDbInstanceAssociatedRole { + s.FeatureName = &v return s } -// SetParameterApplyStatus sets the ParameterApplyStatus field's value. -func (s *AwsRedshiftClusterClusterParameterGroup) SetParameterApplyStatus(v string) *AwsRedshiftClusterClusterParameterGroup { - s.ParameterApplyStatus = &v +// SetRoleArn sets the RoleArn field's value. +func (s *AwsRdsDbInstanceAssociatedRole) SetRoleArn(v string) *AwsRdsDbInstanceAssociatedRole { + s.RoleArn = &v return s } -// SetParameterGroupName sets the ParameterGroupName field's value. -func (s *AwsRedshiftClusterClusterParameterGroup) SetParameterGroupName(v string) *AwsRedshiftClusterClusterParameterGroup { - s.ParameterGroupName = &v +// SetStatus sets the Status field's value. +func (s *AwsRdsDbInstanceAssociatedRole) SetStatus(v string) *AwsRdsDbInstanceAssociatedRole { + s.Status = &v return s } -// The status of a parameter in a cluster parameter group for an Amazon Redshift -// cluster. -type AwsRedshiftClusterClusterParameterStatus struct { +// Contains the details of an Amazon RDS DB instance. +type AwsRdsDbInstanceDetails struct { _ struct{} `type:"structure"` - // The error that prevented the parameter from being applied to the database. - ParameterApplyErrorDescription *string `type:"string"` + // The amount of storage (in gigabytes) to initially allocate for the DB instance. + AllocatedStorage *int64 `type:"integer"` - // The status of the parameter. Indicates whether the parameter is in sync with - // the database, waiting for a cluster reboot, or encountered an error when - // it was applied. + // The IAM roles associated with the DB instance. + AssociatedRoles []*AwsRdsDbInstanceAssociatedRole `type:"list"` + + // Indicates whether minor version patches are applied automatically. + AutoMinorVersionUpgrade *bool `type:"boolean"` + + // The Availability Zone where the DB instance will be created. + AvailabilityZone *string `type:"string"` + + // The number of days for which to retain automated backups. + BackupRetentionPeriod *int64 `type:"integer"` + + // The identifier of the CA certificate for this DB instance. + CACertificateIdentifier *string `type:"string"` + + // The name of the character set that this DB instance is associated with. + CharacterSetName *string `type:"string"` + + // Whether to copy resource tags to snapshots of the DB instance. + CopyTagsToSnapshot *bool `type:"boolean"` + + // If the DB instance is a member of a DB cluster, contains the name of the + // DB cluster that the DB instance is a member of. + DBClusterIdentifier *string `type:"string"` + + // Contains the name of the compute and memory capacity class of the DB instance. + DBInstanceClass *string `type:"string"` + + // Contains a user-supplied database identifier. This identifier is the unique + // key that identifies a DB instance. + DBInstanceIdentifier *string `type:"string"` + + // The meaning of this parameter differs according to the database engine you + // use. // - // Valid values: in-sync | pending-reboot | applying | invalid-parameter | apply-deferred - // | apply-error | unknown-error - ParameterApplyStatus *string `type:"string"` + // MySQL, MariaDB, SQL Server, PostgreSQL + // + // Contains the name of the initial database of this instance that was provided + // at create time, if one was specified when the DB instance was created. This + // same name is returned for the life of the DB instance. + // + // Oracle + // + // Contains the Oracle System ID (SID) of the created DB instance. Not shown + // when the returned parameters do not apply to an Oracle DB instance. + DBName *string `type:"string"` - // The name of the parameter. - ParameterName *string `type:"string"` + // Specifies the port that the DB instance listens on. If the DB instance is + // part of a DB cluster, this can be a different port than the DB cluster port. + DbInstancePort *int64 `type:"integer"` + + // The current status of the DB instance. + DbInstanceStatus *string `type:"string"` + + // A list of the DB parameter groups to assign to the DB instance. + DbParameterGroups []*AwsRdsDbParameterGroup `type:"list"` + + // A list of the DB security groups to assign to the DB instance. + DbSecurityGroups []*string `type:"list"` + + // Information about the subnet group that is associated with the DB instance. + DbSubnetGroup *AwsRdsDbSubnetGroup `type:"structure"` + + // The Amazon Web Services Region-unique, immutable identifier for the DB instance. + // This identifier is found in CloudTrail log entries whenever the KMS key for + // the DB instance is accessed. + DbiResourceId *string `type:"string"` + + // Indicates whether the DB instance has deletion protection enabled. + // + // When deletion protection is enabled, the database cannot be deleted. + DeletionProtection *bool `type:"boolean"` + + // The Active Directory domain membership records associated with the DB instance. + DomainMemberships []*AwsRdsDbDomainMembership `type:"list"` + + // A list of log types that this DB instance is configured to export to CloudWatch + // Logs. + EnabledCloudWatchLogsExports []*string `type:"list"` + + // Specifies the connection endpoint. + Endpoint *AwsRdsDbInstanceEndpoint `type:"structure"` + + // Provides the name of the database engine to use for this DB instance. + Engine *string `type:"string"` + + // Indicates the database engine version. + EngineVersion *string `type:"string"` + + // The ARN of the CloudWatch Logs log stream that receives the enhanced monitoring + // metrics data for the DB instance. + EnhancedMonitoringResourceArn *string `type:"string"` + + // True if mapping of IAM accounts to database accounts is enabled, and otherwise + // false. + // + // IAM database authentication can be enabled for the following database engines. + // + // * For MySQL 5.6, minor version 5.6.34 or higher + // + // * For MySQL 5.7, minor version 5.7.16 or higher + // + // * Aurora 5.6 or higher + IAMDatabaseAuthenticationEnabled *bool `type:"boolean"` + + // Indicates when the DB instance was created. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + InstanceCreateTime *string `type:"string"` + + // Specifies the provisioned IOPS (I/O operations per second) for this DB instance. + Iops *int64 `type:"integer"` + + // If StorageEncrypted is true, the KMS key identifier for the encrypted DB + // instance. + KmsKeyId *string `type:"string"` + + // Specifies the latest time to which a database can be restored with point-in-time + // restore. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + LatestRestorableTime *string `type:"string"` + + // License model information for this DB instance. + LicenseModel *string `type:"string"` + + // Specifies the connection endpoint. + ListenerEndpoint *AwsRdsDbInstanceEndpoint `type:"structure"` + + // The master user name of the DB instance. + MasterUsername *string `type:"string"` + + // The upper limit to which Amazon RDS can automatically scale the storage of + // the DB instance. + MaxAllocatedStorage *int64 `type:"integer"` + + // The interval, in seconds, between points when enhanced monitoring metrics + // are collected for the DB instance. + MonitoringInterval *int64 `type:"integer"` + + // The ARN for the IAM role that permits Amazon RDS to send enhanced monitoring + // metrics to CloudWatch Logs. + MonitoringRoleArn *string `type:"string"` + + // Whether the DB instance is a multiple Availability Zone deployment. + MultiAz *bool `type:"boolean"` + + // The list of option group memberships for this DB instance. + OptionGroupMemberships []*AwsRdsDbOptionGroupMembership `type:"list"` + + // Changes to the DB instance that are currently pending. + PendingModifiedValues *AwsRdsDbPendingModifiedValues `type:"structure"` + + // Indicates whether Performance Insights is enabled for the DB instance. + PerformanceInsightsEnabled *bool `type:"boolean"` + + // The identifier of the KMS key used to encrypt the Performance Insights data. + PerformanceInsightsKmsKeyId *string `type:"string"` + + // The number of days to retain Performance Insights data. + PerformanceInsightsRetentionPeriod *int64 `type:"integer"` + + // The range of time each day when automated backups are created, if automated + // backups are enabled. + // + // Uses the format HH:MM-HH:MM. For example, 04:52-05:22. + PreferredBackupWindow *string `type:"string"` + + // The weekly time range during which system maintenance can occur, in Universal + // Coordinated Time (UTC). + // + // Uses the format :HH:MM-:HH:MM. + // + // For the day values, use mon|tue|wed|thu|fri|sat|sun. + // + // For example, sun:09:32-sun:10:02. + PreferredMaintenanceWindow *string `type:"string"` + + // The number of CPU cores and the number of threads per core for the DB instance + // class of the DB instance. + ProcessorFeatures []*AwsRdsDbProcessorFeature `type:"list"` + + // The order in which to promote an Aurora replica to the primary instance after + // a failure of the existing primary instance. + PromotionTier *int64 `type:"integer"` + + // Specifies the accessibility options for the DB instance. + // + // A value of true specifies an Internet-facing instance with a publicly resolvable + // DNS name, which resolves to a public IP address. + // + // A value of false specifies an internal instance with a DNS name that resolves + // to a private IP address. + PubliclyAccessible *bool `type:"boolean"` + + // List of identifiers of Aurora DB clusters to which the RDS DB instance is + // replicated as a read replica. + ReadReplicaDBClusterIdentifiers []*string `type:"list"` + + // List of identifiers of the read replicas associated with this DB instance. + ReadReplicaDBInstanceIdentifiers []*string `type:"list"` + + // If this DB instance is a read replica, contains the identifier of the source + // DB instance. + ReadReplicaSourceDBInstanceIdentifier *string `type:"string"` + + // For a DB instance with multi-Availability Zone support, the name of the secondary + // Availability Zone. + SecondaryAvailabilityZone *string `type:"string"` + + // The status of a read replica. If the instance isn't a read replica, this + // is empty. + StatusInfos []*AwsRdsDbStatusInfo `type:"list"` + + // Specifies whether the DB instance is encrypted. + StorageEncrypted *bool `type:"boolean"` + + // The storage type for the DB instance. + StorageType *string `type:"string"` + + // The ARN from the key store with which the instance is associated for TDE + // encryption. + TdeCredentialArn *string `type:"string"` + + // The time zone of the DB instance. + Timezone *string `type:"string"` + + // A list of VPC security groups that the DB instance belongs to. + VpcSecurityGroups []*AwsRdsDbInstanceVpcSecurityGroup `type:"list"` } // String returns the string representation. @@ -28804,7 +29225,7 @@ type AwsRedshiftClusterClusterParameterStatus struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRedshiftClusterClusterParameterStatus) String() string { +func (s AwsRdsDbInstanceDetails) String() string { return awsutil.Prettify(s) } @@ -28813,688 +29234,411 @@ func (s AwsRedshiftClusterClusterParameterStatus) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRedshiftClusterClusterParameterStatus) GoString() string { +func (s AwsRdsDbInstanceDetails) GoString() string { return s.String() } -// SetParameterApplyErrorDescription sets the ParameterApplyErrorDescription field's value. -func (s *AwsRedshiftClusterClusterParameterStatus) SetParameterApplyErrorDescription(v string) *AwsRedshiftClusterClusterParameterStatus { - s.ParameterApplyErrorDescription = &v +// SetAllocatedStorage sets the AllocatedStorage field's value. +func (s *AwsRdsDbInstanceDetails) SetAllocatedStorage(v int64) *AwsRdsDbInstanceDetails { + s.AllocatedStorage = &v return s } -// SetParameterApplyStatus sets the ParameterApplyStatus field's value. -func (s *AwsRedshiftClusterClusterParameterStatus) SetParameterApplyStatus(v string) *AwsRedshiftClusterClusterParameterStatus { - s.ParameterApplyStatus = &v +// SetAssociatedRoles sets the AssociatedRoles field's value. +func (s *AwsRdsDbInstanceDetails) SetAssociatedRoles(v []*AwsRdsDbInstanceAssociatedRole) *AwsRdsDbInstanceDetails { + s.AssociatedRoles = v return s } -// SetParameterName sets the ParameterName field's value. -func (s *AwsRedshiftClusterClusterParameterStatus) SetParameterName(v string) *AwsRedshiftClusterClusterParameterStatus { - s.ParameterName = &v +// SetAutoMinorVersionUpgrade sets the AutoMinorVersionUpgrade field's value. +func (s *AwsRdsDbInstanceDetails) SetAutoMinorVersionUpgrade(v bool) *AwsRdsDbInstanceDetails { + s.AutoMinorVersionUpgrade = &v return s } -// A security group that is associated with the cluster. -type AwsRedshiftClusterClusterSecurityGroup struct { - _ struct{} `type:"structure"` - - // The name of the cluster security group. - ClusterSecurityGroupName *string `type:"string"` - - // The status of the cluster security group. - Status *string `type:"string"` +// SetAvailabilityZone sets the AvailabilityZone field's value. +func (s *AwsRdsDbInstanceDetails) SetAvailabilityZone(v string) *AwsRdsDbInstanceDetails { + s.AvailabilityZone = &v + return s } -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsRedshiftClusterClusterSecurityGroup) String() string { - return awsutil.Prettify(s) +// SetBackupRetentionPeriod sets the BackupRetentionPeriod field's value. +func (s *AwsRdsDbInstanceDetails) SetBackupRetentionPeriod(v int64) *AwsRdsDbInstanceDetails { + s.BackupRetentionPeriod = &v + return s } -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsRedshiftClusterClusterSecurityGroup) GoString() string { - return s.String() +// SetCACertificateIdentifier sets the CACertificateIdentifier field's value. +func (s *AwsRdsDbInstanceDetails) SetCACertificateIdentifier(v string) *AwsRdsDbInstanceDetails { + s.CACertificateIdentifier = &v + return s } -// SetClusterSecurityGroupName sets the ClusterSecurityGroupName field's value. -func (s *AwsRedshiftClusterClusterSecurityGroup) SetClusterSecurityGroupName(v string) *AwsRedshiftClusterClusterSecurityGroup { - s.ClusterSecurityGroupName = &v +// SetCharacterSetName sets the CharacterSetName field's value. +func (s *AwsRdsDbInstanceDetails) SetCharacterSetName(v string) *AwsRdsDbInstanceDetails { + s.CharacterSetName = &v return s } -// SetStatus sets the Status field's value. -func (s *AwsRedshiftClusterClusterSecurityGroup) SetStatus(v string) *AwsRedshiftClusterClusterSecurityGroup { - s.Status = &v +// SetCopyTagsToSnapshot sets the CopyTagsToSnapshot field's value. +func (s *AwsRdsDbInstanceDetails) SetCopyTagsToSnapshot(v bool) *AwsRdsDbInstanceDetails { + s.CopyTagsToSnapshot = &v return s } -// Information about a cross-Region snapshot copy. -type AwsRedshiftClusterClusterSnapshotCopyStatus struct { - _ struct{} `type:"structure"` - - // The destination Region that snapshots are automatically copied to when cross-Region - // snapshot copy is enabled. - DestinationRegion *string `type:"string"` - - // The number of days that manual snapshots are retained in the destination - // region after they are copied from a source region. - // - // If the value is -1, then the manual snapshot is retained indefinitely. - // - // Valid values: Either -1 or an integer between 1 and 3,653 - ManualSnapshotRetentionPeriod *int64 `type:"integer"` - - // The number of days to retain automated snapshots in the destination Region - // after they are copied from a source Region. - RetentionPeriod *int64 `type:"integer"` +// SetDBClusterIdentifier sets the DBClusterIdentifier field's value. +func (s *AwsRdsDbInstanceDetails) SetDBClusterIdentifier(v string) *AwsRdsDbInstanceDetails { + s.DBClusterIdentifier = &v + return s +} - // The name of the snapshot copy grant. - SnapshotCopyGrantName *string `type:"string"` +// SetDBInstanceClass sets the DBInstanceClass field's value. +func (s *AwsRdsDbInstanceDetails) SetDBInstanceClass(v string) *AwsRdsDbInstanceDetails { + s.DBInstanceClass = &v + return s } -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsRedshiftClusterClusterSnapshotCopyStatus) String() string { - return awsutil.Prettify(s) +// SetDBInstanceIdentifier sets the DBInstanceIdentifier field's value. +func (s *AwsRdsDbInstanceDetails) SetDBInstanceIdentifier(v string) *AwsRdsDbInstanceDetails { + s.DBInstanceIdentifier = &v + return s } -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsRedshiftClusterClusterSnapshotCopyStatus) GoString() string { - return s.String() +// SetDBName sets the DBName field's value. +func (s *AwsRdsDbInstanceDetails) SetDBName(v string) *AwsRdsDbInstanceDetails { + s.DBName = &v + return s } -// SetDestinationRegion sets the DestinationRegion field's value. -func (s *AwsRedshiftClusterClusterSnapshotCopyStatus) SetDestinationRegion(v string) *AwsRedshiftClusterClusterSnapshotCopyStatus { - s.DestinationRegion = &v +// SetDbInstancePort sets the DbInstancePort field's value. +func (s *AwsRdsDbInstanceDetails) SetDbInstancePort(v int64) *AwsRdsDbInstanceDetails { + s.DbInstancePort = &v return s } -// SetManualSnapshotRetentionPeriod sets the ManualSnapshotRetentionPeriod field's value. -func (s *AwsRedshiftClusterClusterSnapshotCopyStatus) SetManualSnapshotRetentionPeriod(v int64) *AwsRedshiftClusterClusterSnapshotCopyStatus { - s.ManualSnapshotRetentionPeriod = &v +// SetDbInstanceStatus sets the DbInstanceStatus field's value. +func (s *AwsRdsDbInstanceDetails) SetDbInstanceStatus(v string) *AwsRdsDbInstanceDetails { + s.DbInstanceStatus = &v return s } -// SetRetentionPeriod sets the RetentionPeriod field's value. -func (s *AwsRedshiftClusterClusterSnapshotCopyStatus) SetRetentionPeriod(v int64) *AwsRedshiftClusterClusterSnapshotCopyStatus { - s.RetentionPeriod = &v +// SetDbParameterGroups sets the DbParameterGroups field's value. +func (s *AwsRdsDbInstanceDetails) SetDbParameterGroups(v []*AwsRdsDbParameterGroup) *AwsRdsDbInstanceDetails { + s.DbParameterGroups = v return s } -// SetSnapshotCopyGrantName sets the SnapshotCopyGrantName field's value. -func (s *AwsRedshiftClusterClusterSnapshotCopyStatus) SetSnapshotCopyGrantName(v string) *AwsRedshiftClusterClusterSnapshotCopyStatus { - s.SnapshotCopyGrantName = &v +// SetDbSecurityGroups sets the DbSecurityGroups field's value. +func (s *AwsRdsDbInstanceDetails) SetDbSecurityGroups(v []*string) *AwsRdsDbInstanceDetails { + s.DbSecurityGroups = v return s } -// A time windows during which maintenance was deferred for an Amazon Redshift -// cluster. -type AwsRedshiftClusterDeferredMaintenanceWindow struct { - _ struct{} `type:"structure"` +// SetDbSubnetGroup sets the DbSubnetGroup field's value. +func (s *AwsRdsDbInstanceDetails) SetDbSubnetGroup(v *AwsRdsDbSubnetGroup) *AwsRdsDbInstanceDetails { + s.DbSubnetGroup = v + return s +} - // The end of the time window for which maintenance was deferred. - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - DeferMaintenanceEndTime *string `type:"string"` +// SetDbiResourceId sets the DbiResourceId field's value. +func (s *AwsRdsDbInstanceDetails) SetDbiResourceId(v string) *AwsRdsDbInstanceDetails { + s.DbiResourceId = &v + return s +} - // The identifier of the maintenance window. - DeferMaintenanceIdentifier *string `type:"string"` +// SetDeletionProtection sets the DeletionProtection field's value. +func (s *AwsRdsDbInstanceDetails) SetDeletionProtection(v bool) *AwsRdsDbInstanceDetails { + s.DeletionProtection = &v + return s +} - // The start of the time window for which maintenance was deferred. - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - DeferMaintenanceStartTime *string `type:"string"` +// SetDomainMemberships sets the DomainMemberships field's value. +func (s *AwsRdsDbInstanceDetails) SetDomainMemberships(v []*AwsRdsDbDomainMembership) *AwsRdsDbInstanceDetails { + s.DomainMemberships = v + return s } -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsRedshiftClusterDeferredMaintenanceWindow) String() string { - return awsutil.Prettify(s) +// SetEnabledCloudWatchLogsExports sets the EnabledCloudWatchLogsExports field's value. +func (s *AwsRdsDbInstanceDetails) SetEnabledCloudWatchLogsExports(v []*string) *AwsRdsDbInstanceDetails { + s.EnabledCloudWatchLogsExports = v + return s } -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsRedshiftClusterDeferredMaintenanceWindow) GoString() string { - return s.String() +// SetEndpoint sets the Endpoint field's value. +func (s *AwsRdsDbInstanceDetails) SetEndpoint(v *AwsRdsDbInstanceEndpoint) *AwsRdsDbInstanceDetails { + s.Endpoint = v + return s } -// SetDeferMaintenanceEndTime sets the DeferMaintenanceEndTime field's value. -func (s *AwsRedshiftClusterDeferredMaintenanceWindow) SetDeferMaintenanceEndTime(v string) *AwsRedshiftClusterDeferredMaintenanceWindow { - s.DeferMaintenanceEndTime = &v +// SetEngine sets the Engine field's value. +func (s *AwsRdsDbInstanceDetails) SetEngine(v string) *AwsRdsDbInstanceDetails { + s.Engine = &v return s } -// SetDeferMaintenanceIdentifier sets the DeferMaintenanceIdentifier field's value. -func (s *AwsRedshiftClusterDeferredMaintenanceWindow) SetDeferMaintenanceIdentifier(v string) *AwsRedshiftClusterDeferredMaintenanceWindow { - s.DeferMaintenanceIdentifier = &v +// SetEngineVersion sets the EngineVersion field's value. +func (s *AwsRdsDbInstanceDetails) SetEngineVersion(v string) *AwsRdsDbInstanceDetails { + s.EngineVersion = &v return s } -// SetDeferMaintenanceStartTime sets the DeferMaintenanceStartTime field's value. -func (s *AwsRedshiftClusterDeferredMaintenanceWindow) SetDeferMaintenanceStartTime(v string) *AwsRedshiftClusterDeferredMaintenanceWindow { - s.DeferMaintenanceStartTime = &v +// SetEnhancedMonitoringResourceArn sets the EnhancedMonitoringResourceArn field's value. +func (s *AwsRdsDbInstanceDetails) SetEnhancedMonitoringResourceArn(v string) *AwsRdsDbInstanceDetails { + s.EnhancedMonitoringResourceArn = &v return s } -// Details about an Amazon Redshift cluster. -type AwsRedshiftClusterDetails struct { - _ struct{} `type:"structure"` - - // Indicates whether major version upgrades are applied automatically to the - // cluster during the maintenance window. - AllowVersionUpgrade *bool `type:"boolean"` - - // The number of days that automatic cluster snapshots are retained. - AutomatedSnapshotRetentionPeriod *int64 `type:"integer"` - - // The name of the Availability Zone in which the cluster is located. - AvailabilityZone *string `type:"string"` - - // The availability status of the cluster for queries. Possible values are the - // following: - // - // * Available - The cluster is available for queries. - // - // * Unavailable - The cluster is not available for queries. - // - // * Maintenance - The cluster is intermittently available for queries due - // to maintenance activities. - // - // * Modifying -The cluster is intermittently available for queries due to - // changes that modify the cluster. - // - // * Failed - The cluster failed and is not available for queries. - ClusterAvailabilityStatus *string `type:"string"` - - // Indicates when the cluster was created. - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - ClusterCreateTime *string `type:"string"` - - // The unique identifier of the cluster. - ClusterIdentifier *string `type:"string"` - - // The nodes in the cluster. - ClusterNodes []*AwsRedshiftClusterClusterNode `type:"list"` - - // The list of cluster parameter groups that are associated with this cluster. - ClusterParameterGroups []*AwsRedshiftClusterClusterParameterGroup `type:"list"` - - // The public key for the cluster. - ClusterPublicKey *string `type:"string"` - - // The specific revision number of the database in the cluster. - ClusterRevisionNumber *string `type:"string"` - - // A list of cluster security groups that are associated with the cluster. - ClusterSecurityGroups []*AwsRedshiftClusterClusterSecurityGroup `type:"list"` - - // Information about the destination Region and retention period for the cross-Region - // snapshot copy. - ClusterSnapshotCopyStatus *AwsRedshiftClusterClusterSnapshotCopyStatus `type:"structure"` - - // The current status of the cluster. - // - // Valid values: available | available, prep-for-resize | available, resize-cleanup - // |cancelling-resize | creating | deleting | final-snapshot | hardware-failure - // | incompatible-hsm |incompatible-network | incompatible-parameters | incompatible-restore - // | modifying | paused | rebooting | renaming | resizing | rotating-keys | - // storage-full | updating-hsm - ClusterStatus *string `type:"string"` - - // The name of the subnet group that is associated with the cluster. This parameter - // is valid only when the cluster is in a VPC. - ClusterSubnetGroupName *string `type:"string"` - - // The version ID of the Amazon Redshift engine that runs on the cluster. - ClusterVersion *string `type:"string"` - - // The name of the initial database that was created when the cluster was created. - // - // The same name is returned for the life of the cluster. - // - // If an initial database is not specified, a database named devdev is created - // by default. - DBName *string `type:"string"` - - // List of time windows during which maintenance was deferred. - DeferredMaintenanceWindows []*AwsRedshiftClusterDeferredMaintenanceWindow `type:"list"` - - // Information about the status of the Elastic IP (EIP) address. - ElasticIpStatus *AwsRedshiftClusterElasticIpStatus `type:"structure"` - - // The number of nodes that you can use the elastic resize method to resize - // the cluster to. - ElasticResizeNumberOfNodeOptions *string `type:"string"` - - // Indicates whether the data in the cluster is encrypted at rest. - Encrypted *bool `type:"boolean"` - - // The connection endpoint. - Endpoint *AwsRedshiftClusterEndpoint `type:"structure"` - - // Indicates whether to create the cluster with enhanced VPC routing enabled. - EnhancedVpcRouting *bool `type:"boolean"` - - // Indicates when the next snapshot is expected to be taken. The cluster must - // have a valid snapshot schedule and have backups enabled. - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - ExpectedNextSnapshotScheduleTime *string `type:"string"` - - // The status of the next expected snapshot. - // - // Valid values: OnTrack | Pending - ExpectedNextSnapshotScheduleTimeStatus *string `type:"string"` - - // Information about whether the Amazon Redshift cluster finished applying any - // changes to hardware security module (HSM) settings that were specified in - // a modify cluster command. - HsmStatus *AwsRedshiftClusterHsmStatus `type:"structure"` - - // A list of IAM roles that the cluster can use to access other Amazon Web Services - // services. - IamRoles []*AwsRedshiftClusterIamRole `type:"list"` - - // The identifier of the KMS encryption key that is used to encrypt data in - // the cluster. - KmsKeyId *string `type:"string"` - - // Information about the logging status of the cluster. - LoggingStatus *AwsRedshiftClusterLoggingStatus `type:"structure"` - - // The name of the maintenance track for the cluster. - MaintenanceTrackName *string `type:"string"` - - // The default number of days to retain a manual snapshot. - // - // If the value is -1, the snapshot is retained indefinitely. - // - // This setting doesn't change the retention period of existing snapshots. - // - // Valid values: Either -1 or an integer between 1 and 3,653 - ManualSnapshotRetentionPeriod *int64 `type:"integer"` - - // The master user name for the cluster. This name is used to connect to the - // database that is specified in as the value of DBName. - MasterUsername *string `type:"string"` - - // Indicates the start of the next maintenance window. - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - NextMaintenanceWindowStartTime *string `type:"string"` - - // The node type for the nodes in the cluster. - NodeType *string `type:"string"` - - // The number of compute nodes in the cluster. - NumberOfNodes *int64 `type:"integer"` - - // A list of cluster operations that are waiting to start. - PendingActions []*string `type:"list"` - - // A list of changes to the cluster that are currently pending. - PendingModifiedValues *AwsRedshiftClusterPendingModifiedValues `type:"structure"` - - // The weekly time range, in Universal Coordinated Time (UTC), during which - // system maintenance can occur. - // - // Format: :HH:MM-:HH:MM - // - // For the day values, use mon | tue | wed | thu | fri | sat | sun - // - // For example, sun:09:32-sun:10:02 - PreferredMaintenanceWindow *string `type:"string"` - - // Whether the cluster can be accessed from a public network. - PubliclyAccessible *bool `type:"boolean"` - - // Information about the resize operation for the cluster. - ResizeInfo *AwsRedshiftClusterResizeInfo `type:"structure"` - - // Information about the status of a cluster restore action. Only applies to - // a cluster that was created by restoring a snapshot. - RestoreStatus *AwsRedshiftClusterRestoreStatus `type:"structure"` - - // A unique identifier for the cluster snapshot schedule. - SnapshotScheduleIdentifier *string `type:"string"` - - // The current state of the cluster snapshot schedule. - // - // Valid values: MODIFYING | ACTIVE | FAILED - SnapshotScheduleState *string `type:"string"` - - // The identifier of the VPC that the cluster is in, if the cluster is in a - // VPC. - VpcId *string `type:"string"` - - // The list of VPC security groups that the cluster belongs to, if the cluster - // is in a VPC. - VpcSecurityGroups []*AwsRedshiftClusterVpcSecurityGroup `type:"list"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsRedshiftClusterDetails) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsRedshiftClusterDetails) GoString() string { - return s.String() -} - -// SetAllowVersionUpgrade sets the AllowVersionUpgrade field's value. -func (s *AwsRedshiftClusterDetails) SetAllowVersionUpgrade(v bool) *AwsRedshiftClusterDetails { - s.AllowVersionUpgrade = &v - return s -} - -// SetAutomatedSnapshotRetentionPeriod sets the AutomatedSnapshotRetentionPeriod field's value. -func (s *AwsRedshiftClusterDetails) SetAutomatedSnapshotRetentionPeriod(v int64) *AwsRedshiftClusterDetails { - s.AutomatedSnapshotRetentionPeriod = &v - return s -} - -// SetAvailabilityZone sets the AvailabilityZone field's value. -func (s *AwsRedshiftClusterDetails) SetAvailabilityZone(v string) *AwsRedshiftClusterDetails { - s.AvailabilityZone = &v - return s -} - -// SetClusterAvailabilityStatus sets the ClusterAvailabilityStatus field's value. -func (s *AwsRedshiftClusterDetails) SetClusterAvailabilityStatus(v string) *AwsRedshiftClusterDetails { - s.ClusterAvailabilityStatus = &v +// SetIAMDatabaseAuthenticationEnabled sets the IAMDatabaseAuthenticationEnabled field's value. +func (s *AwsRdsDbInstanceDetails) SetIAMDatabaseAuthenticationEnabled(v bool) *AwsRdsDbInstanceDetails { + s.IAMDatabaseAuthenticationEnabled = &v return s } -// SetClusterCreateTime sets the ClusterCreateTime field's value. -func (s *AwsRedshiftClusterDetails) SetClusterCreateTime(v string) *AwsRedshiftClusterDetails { - s.ClusterCreateTime = &v +// SetInstanceCreateTime sets the InstanceCreateTime field's value. +func (s *AwsRdsDbInstanceDetails) SetInstanceCreateTime(v string) *AwsRdsDbInstanceDetails { + s.InstanceCreateTime = &v return s } -// SetClusterIdentifier sets the ClusterIdentifier field's value. -func (s *AwsRedshiftClusterDetails) SetClusterIdentifier(v string) *AwsRedshiftClusterDetails { - s.ClusterIdentifier = &v +// SetIops sets the Iops field's value. +func (s *AwsRdsDbInstanceDetails) SetIops(v int64) *AwsRdsDbInstanceDetails { + s.Iops = &v return s } -// SetClusterNodes sets the ClusterNodes field's value. -func (s *AwsRedshiftClusterDetails) SetClusterNodes(v []*AwsRedshiftClusterClusterNode) *AwsRedshiftClusterDetails { - s.ClusterNodes = v +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *AwsRdsDbInstanceDetails) SetKmsKeyId(v string) *AwsRdsDbInstanceDetails { + s.KmsKeyId = &v return s } -// SetClusterParameterGroups sets the ClusterParameterGroups field's value. -func (s *AwsRedshiftClusterDetails) SetClusterParameterGroups(v []*AwsRedshiftClusterClusterParameterGroup) *AwsRedshiftClusterDetails { - s.ClusterParameterGroups = v +// SetLatestRestorableTime sets the LatestRestorableTime field's value. +func (s *AwsRdsDbInstanceDetails) SetLatestRestorableTime(v string) *AwsRdsDbInstanceDetails { + s.LatestRestorableTime = &v return s } -// SetClusterPublicKey sets the ClusterPublicKey field's value. -func (s *AwsRedshiftClusterDetails) SetClusterPublicKey(v string) *AwsRedshiftClusterDetails { - s.ClusterPublicKey = &v +// SetLicenseModel sets the LicenseModel field's value. +func (s *AwsRdsDbInstanceDetails) SetLicenseModel(v string) *AwsRdsDbInstanceDetails { + s.LicenseModel = &v return s } -// SetClusterRevisionNumber sets the ClusterRevisionNumber field's value. -func (s *AwsRedshiftClusterDetails) SetClusterRevisionNumber(v string) *AwsRedshiftClusterDetails { - s.ClusterRevisionNumber = &v +// SetListenerEndpoint sets the ListenerEndpoint field's value. +func (s *AwsRdsDbInstanceDetails) SetListenerEndpoint(v *AwsRdsDbInstanceEndpoint) *AwsRdsDbInstanceDetails { + s.ListenerEndpoint = v return s } -// SetClusterSecurityGroups sets the ClusterSecurityGroups field's value. -func (s *AwsRedshiftClusterDetails) SetClusterSecurityGroups(v []*AwsRedshiftClusterClusterSecurityGroup) *AwsRedshiftClusterDetails { - s.ClusterSecurityGroups = v +// SetMasterUsername sets the MasterUsername field's value. +func (s *AwsRdsDbInstanceDetails) SetMasterUsername(v string) *AwsRdsDbInstanceDetails { + s.MasterUsername = &v return s } -// SetClusterSnapshotCopyStatus sets the ClusterSnapshotCopyStatus field's value. -func (s *AwsRedshiftClusterDetails) SetClusterSnapshotCopyStatus(v *AwsRedshiftClusterClusterSnapshotCopyStatus) *AwsRedshiftClusterDetails { - s.ClusterSnapshotCopyStatus = v +// SetMaxAllocatedStorage sets the MaxAllocatedStorage field's value. +func (s *AwsRdsDbInstanceDetails) SetMaxAllocatedStorage(v int64) *AwsRdsDbInstanceDetails { + s.MaxAllocatedStorage = &v return s } -// SetClusterStatus sets the ClusterStatus field's value. -func (s *AwsRedshiftClusterDetails) SetClusterStatus(v string) *AwsRedshiftClusterDetails { - s.ClusterStatus = &v +// SetMonitoringInterval sets the MonitoringInterval field's value. +func (s *AwsRdsDbInstanceDetails) SetMonitoringInterval(v int64) *AwsRdsDbInstanceDetails { + s.MonitoringInterval = &v return s } -// SetClusterSubnetGroupName sets the ClusterSubnetGroupName field's value. -func (s *AwsRedshiftClusterDetails) SetClusterSubnetGroupName(v string) *AwsRedshiftClusterDetails { - s.ClusterSubnetGroupName = &v +// SetMonitoringRoleArn sets the MonitoringRoleArn field's value. +func (s *AwsRdsDbInstanceDetails) SetMonitoringRoleArn(v string) *AwsRdsDbInstanceDetails { + s.MonitoringRoleArn = &v return s } -// SetClusterVersion sets the ClusterVersion field's value. -func (s *AwsRedshiftClusterDetails) SetClusterVersion(v string) *AwsRedshiftClusterDetails { - s.ClusterVersion = &v +// SetMultiAz sets the MultiAz field's value. +func (s *AwsRdsDbInstanceDetails) SetMultiAz(v bool) *AwsRdsDbInstanceDetails { + s.MultiAz = &v return s } -// SetDBName sets the DBName field's value. -func (s *AwsRedshiftClusterDetails) SetDBName(v string) *AwsRedshiftClusterDetails { - s.DBName = &v +// SetOptionGroupMemberships sets the OptionGroupMemberships field's value. +func (s *AwsRdsDbInstanceDetails) SetOptionGroupMemberships(v []*AwsRdsDbOptionGroupMembership) *AwsRdsDbInstanceDetails { + s.OptionGroupMemberships = v return s } -// SetDeferredMaintenanceWindows sets the DeferredMaintenanceWindows field's value. -func (s *AwsRedshiftClusterDetails) SetDeferredMaintenanceWindows(v []*AwsRedshiftClusterDeferredMaintenanceWindow) *AwsRedshiftClusterDetails { - s.DeferredMaintenanceWindows = v +// SetPendingModifiedValues sets the PendingModifiedValues field's value. +func (s *AwsRdsDbInstanceDetails) SetPendingModifiedValues(v *AwsRdsDbPendingModifiedValues) *AwsRdsDbInstanceDetails { + s.PendingModifiedValues = v return s } -// SetElasticIpStatus sets the ElasticIpStatus field's value. -func (s *AwsRedshiftClusterDetails) SetElasticIpStatus(v *AwsRedshiftClusterElasticIpStatus) *AwsRedshiftClusterDetails { - s.ElasticIpStatus = v +// SetPerformanceInsightsEnabled sets the PerformanceInsightsEnabled field's value. +func (s *AwsRdsDbInstanceDetails) SetPerformanceInsightsEnabled(v bool) *AwsRdsDbInstanceDetails { + s.PerformanceInsightsEnabled = &v return s } -// SetElasticResizeNumberOfNodeOptions sets the ElasticResizeNumberOfNodeOptions field's value. -func (s *AwsRedshiftClusterDetails) SetElasticResizeNumberOfNodeOptions(v string) *AwsRedshiftClusterDetails { - s.ElasticResizeNumberOfNodeOptions = &v +// SetPerformanceInsightsKmsKeyId sets the PerformanceInsightsKmsKeyId field's value. +func (s *AwsRdsDbInstanceDetails) SetPerformanceInsightsKmsKeyId(v string) *AwsRdsDbInstanceDetails { + s.PerformanceInsightsKmsKeyId = &v return s } -// SetEncrypted sets the Encrypted field's value. -func (s *AwsRedshiftClusterDetails) SetEncrypted(v bool) *AwsRedshiftClusterDetails { - s.Encrypted = &v +// SetPerformanceInsightsRetentionPeriod sets the PerformanceInsightsRetentionPeriod field's value. +func (s *AwsRdsDbInstanceDetails) SetPerformanceInsightsRetentionPeriod(v int64) *AwsRdsDbInstanceDetails { + s.PerformanceInsightsRetentionPeriod = &v return s } -// SetEndpoint sets the Endpoint field's value. -func (s *AwsRedshiftClusterDetails) SetEndpoint(v *AwsRedshiftClusterEndpoint) *AwsRedshiftClusterDetails { - s.Endpoint = v +// SetPreferredBackupWindow sets the PreferredBackupWindow field's value. +func (s *AwsRdsDbInstanceDetails) SetPreferredBackupWindow(v string) *AwsRdsDbInstanceDetails { + s.PreferredBackupWindow = &v return s } -// SetEnhancedVpcRouting sets the EnhancedVpcRouting field's value. -func (s *AwsRedshiftClusterDetails) SetEnhancedVpcRouting(v bool) *AwsRedshiftClusterDetails { - s.EnhancedVpcRouting = &v +// SetPreferredMaintenanceWindow sets the PreferredMaintenanceWindow field's value. +func (s *AwsRdsDbInstanceDetails) SetPreferredMaintenanceWindow(v string) *AwsRdsDbInstanceDetails { + s.PreferredMaintenanceWindow = &v return s } -// SetExpectedNextSnapshotScheduleTime sets the ExpectedNextSnapshotScheduleTime field's value. -func (s *AwsRedshiftClusterDetails) SetExpectedNextSnapshotScheduleTime(v string) *AwsRedshiftClusterDetails { - s.ExpectedNextSnapshotScheduleTime = &v +// SetProcessorFeatures sets the ProcessorFeatures field's value. +func (s *AwsRdsDbInstanceDetails) SetProcessorFeatures(v []*AwsRdsDbProcessorFeature) *AwsRdsDbInstanceDetails { + s.ProcessorFeatures = v return s } -// SetExpectedNextSnapshotScheduleTimeStatus sets the ExpectedNextSnapshotScheduleTimeStatus field's value. -func (s *AwsRedshiftClusterDetails) SetExpectedNextSnapshotScheduleTimeStatus(v string) *AwsRedshiftClusterDetails { - s.ExpectedNextSnapshotScheduleTimeStatus = &v +// SetPromotionTier sets the PromotionTier field's value. +func (s *AwsRdsDbInstanceDetails) SetPromotionTier(v int64) *AwsRdsDbInstanceDetails { + s.PromotionTier = &v return s } -// SetHsmStatus sets the HsmStatus field's value. -func (s *AwsRedshiftClusterDetails) SetHsmStatus(v *AwsRedshiftClusterHsmStatus) *AwsRedshiftClusterDetails { - s.HsmStatus = v +// SetPubliclyAccessible sets the PubliclyAccessible field's value. +func (s *AwsRdsDbInstanceDetails) SetPubliclyAccessible(v bool) *AwsRdsDbInstanceDetails { + s.PubliclyAccessible = &v return s } -// SetIamRoles sets the IamRoles field's value. -func (s *AwsRedshiftClusterDetails) SetIamRoles(v []*AwsRedshiftClusterIamRole) *AwsRedshiftClusterDetails { - s.IamRoles = v +// SetReadReplicaDBClusterIdentifiers sets the ReadReplicaDBClusterIdentifiers field's value. +func (s *AwsRdsDbInstanceDetails) SetReadReplicaDBClusterIdentifiers(v []*string) *AwsRdsDbInstanceDetails { + s.ReadReplicaDBClusterIdentifiers = v return s } -// SetKmsKeyId sets the KmsKeyId field's value. -func (s *AwsRedshiftClusterDetails) SetKmsKeyId(v string) *AwsRedshiftClusterDetails { - s.KmsKeyId = &v +// SetReadReplicaDBInstanceIdentifiers sets the ReadReplicaDBInstanceIdentifiers field's value. +func (s *AwsRdsDbInstanceDetails) SetReadReplicaDBInstanceIdentifiers(v []*string) *AwsRdsDbInstanceDetails { + s.ReadReplicaDBInstanceIdentifiers = v return s } -// SetLoggingStatus sets the LoggingStatus field's value. -func (s *AwsRedshiftClusterDetails) SetLoggingStatus(v *AwsRedshiftClusterLoggingStatus) *AwsRedshiftClusterDetails { - s.LoggingStatus = v +// SetReadReplicaSourceDBInstanceIdentifier sets the ReadReplicaSourceDBInstanceIdentifier field's value. +func (s *AwsRdsDbInstanceDetails) SetReadReplicaSourceDBInstanceIdentifier(v string) *AwsRdsDbInstanceDetails { + s.ReadReplicaSourceDBInstanceIdentifier = &v return s } -// SetMaintenanceTrackName sets the MaintenanceTrackName field's value. -func (s *AwsRedshiftClusterDetails) SetMaintenanceTrackName(v string) *AwsRedshiftClusterDetails { - s.MaintenanceTrackName = &v +// SetSecondaryAvailabilityZone sets the SecondaryAvailabilityZone field's value. +func (s *AwsRdsDbInstanceDetails) SetSecondaryAvailabilityZone(v string) *AwsRdsDbInstanceDetails { + s.SecondaryAvailabilityZone = &v return s } -// SetManualSnapshotRetentionPeriod sets the ManualSnapshotRetentionPeriod field's value. -func (s *AwsRedshiftClusterDetails) SetManualSnapshotRetentionPeriod(v int64) *AwsRedshiftClusterDetails { - s.ManualSnapshotRetentionPeriod = &v +// SetStatusInfos sets the StatusInfos field's value. +func (s *AwsRdsDbInstanceDetails) SetStatusInfos(v []*AwsRdsDbStatusInfo) *AwsRdsDbInstanceDetails { + s.StatusInfos = v return s } -// SetMasterUsername sets the MasterUsername field's value. -func (s *AwsRedshiftClusterDetails) SetMasterUsername(v string) *AwsRedshiftClusterDetails { - s.MasterUsername = &v +// SetStorageEncrypted sets the StorageEncrypted field's value. +func (s *AwsRdsDbInstanceDetails) SetStorageEncrypted(v bool) *AwsRdsDbInstanceDetails { + s.StorageEncrypted = &v return s } -// SetNextMaintenanceWindowStartTime sets the NextMaintenanceWindowStartTime field's value. -func (s *AwsRedshiftClusterDetails) SetNextMaintenanceWindowStartTime(v string) *AwsRedshiftClusterDetails { - s.NextMaintenanceWindowStartTime = &v +// SetStorageType sets the StorageType field's value. +func (s *AwsRdsDbInstanceDetails) SetStorageType(v string) *AwsRdsDbInstanceDetails { + s.StorageType = &v return s } -// SetNodeType sets the NodeType field's value. -func (s *AwsRedshiftClusterDetails) SetNodeType(v string) *AwsRedshiftClusterDetails { - s.NodeType = &v +// SetTdeCredentialArn sets the TdeCredentialArn field's value. +func (s *AwsRdsDbInstanceDetails) SetTdeCredentialArn(v string) *AwsRdsDbInstanceDetails { + s.TdeCredentialArn = &v return s } -// SetNumberOfNodes sets the NumberOfNodes field's value. -func (s *AwsRedshiftClusterDetails) SetNumberOfNodes(v int64) *AwsRedshiftClusterDetails { - s.NumberOfNodes = &v +// SetTimezone sets the Timezone field's value. +func (s *AwsRdsDbInstanceDetails) SetTimezone(v string) *AwsRdsDbInstanceDetails { + s.Timezone = &v return s } -// SetPendingActions sets the PendingActions field's value. -func (s *AwsRedshiftClusterDetails) SetPendingActions(v []*string) *AwsRedshiftClusterDetails { - s.PendingActions = v +// SetVpcSecurityGroups sets the VpcSecurityGroups field's value. +func (s *AwsRdsDbInstanceDetails) SetVpcSecurityGroups(v []*AwsRdsDbInstanceVpcSecurityGroup) *AwsRdsDbInstanceDetails { + s.VpcSecurityGroups = v return s } -// SetPendingModifiedValues sets the PendingModifiedValues field's value. -func (s *AwsRedshiftClusterDetails) SetPendingModifiedValues(v *AwsRedshiftClusterPendingModifiedValues) *AwsRedshiftClusterDetails { - s.PendingModifiedValues = v - return s -} +// Specifies the connection endpoint. +type AwsRdsDbInstanceEndpoint struct { + _ struct{} `type:"structure"` -// SetPreferredMaintenanceWindow sets the PreferredMaintenanceWindow field's value. -func (s *AwsRedshiftClusterDetails) SetPreferredMaintenanceWindow(v string) *AwsRedshiftClusterDetails { - s.PreferredMaintenanceWindow = &v - return s -} + // Specifies the DNS address of the DB instance. + Address *string `type:"string"` -// SetPubliclyAccessible sets the PubliclyAccessible field's value. -func (s *AwsRedshiftClusterDetails) SetPubliclyAccessible(v bool) *AwsRedshiftClusterDetails { - s.PubliclyAccessible = &v - return s -} + // Specifies the ID that Amazon Route 53 assigns when you create a hosted zone. + HostedZoneId *string `type:"string"` -// SetResizeInfo sets the ResizeInfo field's value. -func (s *AwsRedshiftClusterDetails) SetResizeInfo(v *AwsRedshiftClusterResizeInfo) *AwsRedshiftClusterDetails { - s.ResizeInfo = v - return s + // Specifies the port that the database engine is listening on. + Port *int64 `type:"integer"` } -// SetRestoreStatus sets the RestoreStatus field's value. -func (s *AwsRedshiftClusterDetails) SetRestoreStatus(v *AwsRedshiftClusterRestoreStatus) *AwsRedshiftClusterDetails { - s.RestoreStatus = v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsRdsDbInstanceEndpoint) String() string { + return awsutil.Prettify(s) } -// SetSnapshotScheduleIdentifier sets the SnapshotScheduleIdentifier field's value. -func (s *AwsRedshiftClusterDetails) SetSnapshotScheduleIdentifier(v string) *AwsRedshiftClusterDetails { - s.SnapshotScheduleIdentifier = &v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsRdsDbInstanceEndpoint) GoString() string { + return s.String() } -// SetSnapshotScheduleState sets the SnapshotScheduleState field's value. -func (s *AwsRedshiftClusterDetails) SetSnapshotScheduleState(v string) *AwsRedshiftClusterDetails { - s.SnapshotScheduleState = &v +// SetAddress sets the Address field's value. +func (s *AwsRdsDbInstanceEndpoint) SetAddress(v string) *AwsRdsDbInstanceEndpoint { + s.Address = &v return s } -// SetVpcId sets the VpcId field's value. -func (s *AwsRedshiftClusterDetails) SetVpcId(v string) *AwsRedshiftClusterDetails { - s.VpcId = &v +// SetHostedZoneId sets the HostedZoneId field's value. +func (s *AwsRdsDbInstanceEndpoint) SetHostedZoneId(v string) *AwsRdsDbInstanceEndpoint { + s.HostedZoneId = &v return s } -// SetVpcSecurityGroups sets the VpcSecurityGroups field's value. -func (s *AwsRedshiftClusterDetails) SetVpcSecurityGroups(v []*AwsRedshiftClusterVpcSecurityGroup) *AwsRedshiftClusterDetails { - s.VpcSecurityGroups = v +// SetPort sets the Port field's value. +func (s *AwsRdsDbInstanceEndpoint) SetPort(v int64) *AwsRdsDbInstanceEndpoint { + s.Port = &v return s } -// The status of the elastic IP (EIP) address for an Amazon Redshift cluster. -type AwsRedshiftClusterElasticIpStatus struct { +// A VPC security groups that the DB instance belongs to. +type AwsRdsDbInstanceVpcSecurityGroup struct { _ struct{} `type:"structure"` - // The elastic IP address for the cluster. - ElasticIp *string `type:"string"` - - // The status of the elastic IP address. + // The status of the VPC security group. Status *string `type:"string"` + + // The name of the VPC security group. + VpcSecurityGroupId *string `type:"string"` } // String returns the string representation. @@ -29502,7 +29646,7 @@ type AwsRedshiftClusterElasticIpStatus struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRedshiftClusterElasticIpStatus) String() string { +func (s AwsRdsDbInstanceVpcSecurityGroup) String() string { return awsutil.Prettify(s) } @@ -29511,31 +29655,31 @@ func (s AwsRedshiftClusterElasticIpStatus) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRedshiftClusterElasticIpStatus) GoString() string { +func (s AwsRdsDbInstanceVpcSecurityGroup) GoString() string { return s.String() } -// SetElasticIp sets the ElasticIp field's value. -func (s *AwsRedshiftClusterElasticIpStatus) SetElasticIp(v string) *AwsRedshiftClusterElasticIpStatus { - s.ElasticIp = &v +// SetStatus sets the Status field's value. +func (s *AwsRdsDbInstanceVpcSecurityGroup) SetStatus(v string) *AwsRdsDbInstanceVpcSecurityGroup { + s.Status = &v return s } -// SetStatus sets the Status field's value. -func (s *AwsRedshiftClusterElasticIpStatus) SetStatus(v string) *AwsRedshiftClusterElasticIpStatus { - s.Status = &v +// SetVpcSecurityGroupId sets the VpcSecurityGroupId field's value. +func (s *AwsRdsDbInstanceVpcSecurityGroup) SetVpcSecurityGroupId(v string) *AwsRdsDbInstanceVpcSecurityGroup { + s.VpcSecurityGroupId = &v return s } -// The connection endpoint for an Amazon Redshift cluster. -type AwsRedshiftClusterEndpoint struct { +// An option group membership. +type AwsRdsDbOptionGroupMembership struct { _ struct{} `type:"structure"` - // The DNS address of the cluster. - Address *string `type:"string"` + // The name of the option group. + OptionGroupName *string `type:"string"` - // The port that the database engine listens on. - Port *int64 `type:"integer"` + // The status of the option group membership. + Status *string `type:"string"` } // String returns the string representation. @@ -29543,7 +29687,7 @@ type AwsRedshiftClusterEndpoint struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRedshiftClusterEndpoint) String() string { +func (s AwsRdsDbOptionGroupMembership) String() string { return awsutil.Prettify(s) } @@ -29552,43 +29696,31 @@ func (s AwsRedshiftClusterEndpoint) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRedshiftClusterEndpoint) GoString() string { +func (s AwsRdsDbOptionGroupMembership) GoString() string { return s.String() } -// SetAddress sets the Address field's value. -func (s *AwsRedshiftClusterEndpoint) SetAddress(v string) *AwsRedshiftClusterEndpoint { - s.Address = &v +// SetOptionGroupName sets the OptionGroupName field's value. +func (s *AwsRdsDbOptionGroupMembership) SetOptionGroupName(v string) *AwsRdsDbOptionGroupMembership { + s.OptionGroupName = &v return s } -// SetPort sets the Port field's value. -func (s *AwsRedshiftClusterEndpoint) SetPort(v int64) *AwsRedshiftClusterEndpoint { - s.Port = &v +// SetStatus sets the Status field's value. +func (s *AwsRdsDbOptionGroupMembership) SetStatus(v string) *AwsRdsDbOptionGroupMembership { + s.Status = &v return s } -// Information about whether an Amazon Redshift cluster finished applying any -// hardware changes to security module (HSM) settings that were specified in -// a modify cluster command. -type AwsRedshiftClusterHsmStatus struct { +// Provides information about a parameter group for a DB instance. +type AwsRdsDbParameterGroup struct { _ struct{} `type:"structure"` - // The name of the HSM client certificate that the Amazon Redshift cluster uses - // to retrieve the data encryption keys that are stored in an HSM. - HsmClientCertificateIdentifier *string `type:"string"` - - // The name of the HSM configuration that contains the information that the - // Amazon Redshift cluster can use to retrieve and store keys in an HSM. - HsmConfigurationIdentifier *string `type:"string"` + // The name of the parameter group. + DbParameterGroupName *string `type:"string"` - // Indicates whether the Amazon Redshift cluster has finished applying any HSM - // settings changes specified in a modify cluster command. - // - // Type: String - // - // Valid values: active | applying - Status *string `type:"string"` + // The status of parameter updates. + ParameterApplyStatus *string `type:"string"` } // String returns the string representation. @@ -29596,7 +29728,7 @@ type AwsRedshiftClusterHsmStatus struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRedshiftClusterHsmStatus) String() string { +func (s AwsRdsDbParameterGroup) String() string { return awsutil.Prettify(s) } @@ -29605,101 +29737,71 @@ func (s AwsRedshiftClusterHsmStatus) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRedshiftClusterHsmStatus) GoString() string { +func (s AwsRdsDbParameterGroup) GoString() string { return s.String() } -// SetHsmClientCertificateIdentifier sets the HsmClientCertificateIdentifier field's value. -func (s *AwsRedshiftClusterHsmStatus) SetHsmClientCertificateIdentifier(v string) *AwsRedshiftClusterHsmStatus { - s.HsmClientCertificateIdentifier = &v - return s -} - -// SetHsmConfigurationIdentifier sets the HsmConfigurationIdentifier field's value. -func (s *AwsRedshiftClusterHsmStatus) SetHsmConfigurationIdentifier(v string) *AwsRedshiftClusterHsmStatus { - s.HsmConfigurationIdentifier = &v +// SetDbParameterGroupName sets the DbParameterGroupName field's value. +func (s *AwsRdsDbParameterGroup) SetDbParameterGroupName(v string) *AwsRdsDbParameterGroup { + s.DbParameterGroupName = &v return s } -// SetStatus sets the Status field's value. -func (s *AwsRedshiftClusterHsmStatus) SetStatus(v string) *AwsRedshiftClusterHsmStatus { - s.Status = &v +// SetParameterApplyStatus sets the ParameterApplyStatus field's value. +func (s *AwsRdsDbParameterGroup) SetParameterApplyStatus(v string) *AwsRdsDbParameterGroup { + s.ParameterApplyStatus = &v return s } -// An IAM role that the cluster can use to access other Amazon Web Services -// services. -type AwsRedshiftClusterIamRole struct { +// Changes to a DB instance that are currently pending. +type AwsRdsDbPendingModifiedValues struct { _ struct{} `type:"structure"` - // The status of the IAM role's association with the cluster. - // - // Valid values: in-sync | adding | removing - ApplyStatus *string `type:"string"` + // The new value of the allocated storage for the DB instance. + AllocatedStorage *int64 `type:"integer"` - // The ARN of the IAM role. - IamRoleArn *string `type:"string"` -} + // The new backup retention period for the DB instance. + BackupRetentionPeriod *int64 `type:"integer"` -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsRedshiftClusterIamRole) String() string { - return awsutil.Prettify(s) -} + // The new CA certificate identifier for the DB instance. + CaCertificateIdentifier *string `type:"string"` -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsRedshiftClusterIamRole) GoString() string { - return s.String() -} + // The new DB instance class for the DB instance. + DbInstanceClass *string `type:"string"` -// SetApplyStatus sets the ApplyStatus field's value. -func (s *AwsRedshiftClusterIamRole) SetApplyStatus(v string) *AwsRedshiftClusterIamRole { - s.ApplyStatus = &v - return s -} + // The new DB instance identifier for the DB instance. + DbInstanceIdentifier *string `type:"string"` -// SetIamRoleArn sets the IamRoleArn field's value. -func (s *AwsRedshiftClusterIamRole) SetIamRoleArn(v string) *AwsRedshiftClusterIamRole { - s.IamRoleArn = &v - return s -} + // The name of the new subnet group for the DB instance. + DbSubnetGroupName *string `type:"string"` -// Provides information about the logging status of the cluster. -type AwsRedshiftClusterLoggingStatus struct { - _ struct{} `type:"structure"` + // The new engine version for the DB instance. + EngineVersion *string `type:"string"` - // The name of the S3 bucket where the log files are stored. - BucketName *string `type:"string"` + // The new provisioned IOPS value for the DB instance. + Iops *int64 `type:"integer"` - // The message indicating that the logs failed to be delivered. - LastFailureMessage *string `type:"string"` + // The new license model value for the DB instance. + LicenseModel *string `type:"string"` - // The last time when logs failed to be delivered. - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - LastFailureTime *string `type:"string"` + // The new master user password for the DB instance. + MasterUserPassword *string `type:"string"` - // The last time that logs were delivered successfully. - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - LastSuccessfulDeliveryTime *string `type:"string"` + // Indicates that a single Availability Zone DB instance is changing to a multiple + // Availability Zone deployment. + MultiAZ *bool `type:"boolean"` - // Indicates whether logging is enabled. - LoggingEnabled *bool `type:"boolean"` + // A list of log types that are being enabled or disabled. + PendingCloudWatchLogsExports *AwsRdsPendingCloudWatchLogsExports `type:"structure"` - // Provides the prefix applied to the log file names. - S3KeyPrefix *string `type:"string"` + // The new port for the DB instance. + Port *int64 `type:"integer"` + + // Processor features that are being updated. + ProcessorFeatures []*AwsRdsDbProcessorFeature `type:"list"` + + // The new storage type for the DB instance. + StorageType *string `type:"string"` } // String returns the string representation. @@ -29707,7 +29809,7 @@ type AwsRedshiftClusterLoggingStatus struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRedshiftClusterLoggingStatus) String() string { +func (s AwsRdsDbPendingModifiedValues) String() string { return awsutil.Prettify(s) } @@ -29716,181 +29818,109 @@ func (s AwsRedshiftClusterLoggingStatus) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRedshiftClusterLoggingStatus) GoString() string { +func (s AwsRdsDbPendingModifiedValues) GoString() string { return s.String() } -// SetBucketName sets the BucketName field's value. -func (s *AwsRedshiftClusterLoggingStatus) SetBucketName(v string) *AwsRedshiftClusterLoggingStatus { - s.BucketName = &v - return s -} - -// SetLastFailureMessage sets the LastFailureMessage field's value. -func (s *AwsRedshiftClusterLoggingStatus) SetLastFailureMessage(v string) *AwsRedshiftClusterLoggingStatus { - s.LastFailureMessage = &v - return s -} - -// SetLastFailureTime sets the LastFailureTime field's value. -func (s *AwsRedshiftClusterLoggingStatus) SetLastFailureTime(v string) *AwsRedshiftClusterLoggingStatus { - s.LastFailureTime = &v +// SetAllocatedStorage sets the AllocatedStorage field's value. +func (s *AwsRdsDbPendingModifiedValues) SetAllocatedStorage(v int64) *AwsRdsDbPendingModifiedValues { + s.AllocatedStorage = &v return s } -// SetLastSuccessfulDeliveryTime sets the LastSuccessfulDeliveryTime field's value. -func (s *AwsRedshiftClusterLoggingStatus) SetLastSuccessfulDeliveryTime(v string) *AwsRedshiftClusterLoggingStatus { - s.LastSuccessfulDeliveryTime = &v +// SetBackupRetentionPeriod sets the BackupRetentionPeriod field's value. +func (s *AwsRdsDbPendingModifiedValues) SetBackupRetentionPeriod(v int64) *AwsRdsDbPendingModifiedValues { + s.BackupRetentionPeriod = &v return s } -// SetLoggingEnabled sets the LoggingEnabled field's value. -func (s *AwsRedshiftClusterLoggingStatus) SetLoggingEnabled(v bool) *AwsRedshiftClusterLoggingStatus { - s.LoggingEnabled = &v +// SetCaCertificateIdentifier sets the CaCertificateIdentifier field's value. +func (s *AwsRdsDbPendingModifiedValues) SetCaCertificateIdentifier(v string) *AwsRdsDbPendingModifiedValues { + s.CaCertificateIdentifier = &v return s } -// SetS3KeyPrefix sets the S3KeyPrefix field's value. -func (s *AwsRedshiftClusterLoggingStatus) SetS3KeyPrefix(v string) *AwsRedshiftClusterLoggingStatus { - s.S3KeyPrefix = &v +// SetDbInstanceClass sets the DbInstanceClass field's value. +func (s *AwsRdsDbPendingModifiedValues) SetDbInstanceClass(v string) *AwsRdsDbPendingModifiedValues { + s.DbInstanceClass = &v return s } -// Changes to the Amazon Redshift cluster that are currently pending. -type AwsRedshiftClusterPendingModifiedValues struct { - _ struct{} `type:"structure"` - - // The pending or in-progress change to the automated snapshot retention period. - AutomatedSnapshotRetentionPeriod *int64 `type:"integer"` - - // The pending or in-progress change to the identifier for the cluster. - ClusterIdentifier *string `type:"string"` - - // The pending or in-progress change to the cluster type. - ClusterType *string `type:"string"` - - // The pending or in-progress change to the service version. - ClusterVersion *string `type:"string"` - - // The encryption type for a cluster. - EncryptionType *string `type:"string"` - - // Indicates whether to create the cluster with enhanced VPC routing enabled. - EnhancedVpcRouting *bool `type:"boolean"` - - // The name of the maintenance track that the cluster changes to during the - // next maintenance window. - MaintenanceTrackName *string `type:"string"` - - // The pending or in-progress change to the master user password for the cluster. - MasterUserPassword *string `type:"string"` - - // The pending or in-progress change to the cluster's node type. - NodeType *string `type:"string"` - - // The pending or in-progress change to the number of nodes in the cluster. - NumberOfNodes *int64 `type:"integer"` - - // The pending or in-progress change to whether the cluster can be connected - // to from the public network. - PubliclyAccessible *bool `type:"boolean"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsRedshiftClusterPendingModifiedValues) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsRedshiftClusterPendingModifiedValues) GoString() string { - return s.String() -} - -// SetAutomatedSnapshotRetentionPeriod sets the AutomatedSnapshotRetentionPeriod field's value. -func (s *AwsRedshiftClusterPendingModifiedValues) SetAutomatedSnapshotRetentionPeriod(v int64) *AwsRedshiftClusterPendingModifiedValues { - s.AutomatedSnapshotRetentionPeriod = &v +// SetDbInstanceIdentifier sets the DbInstanceIdentifier field's value. +func (s *AwsRdsDbPendingModifiedValues) SetDbInstanceIdentifier(v string) *AwsRdsDbPendingModifiedValues { + s.DbInstanceIdentifier = &v return s } -// SetClusterIdentifier sets the ClusterIdentifier field's value. -func (s *AwsRedshiftClusterPendingModifiedValues) SetClusterIdentifier(v string) *AwsRedshiftClusterPendingModifiedValues { - s.ClusterIdentifier = &v +// SetDbSubnetGroupName sets the DbSubnetGroupName field's value. +func (s *AwsRdsDbPendingModifiedValues) SetDbSubnetGroupName(v string) *AwsRdsDbPendingModifiedValues { + s.DbSubnetGroupName = &v return s } -// SetClusterType sets the ClusterType field's value. -func (s *AwsRedshiftClusterPendingModifiedValues) SetClusterType(v string) *AwsRedshiftClusterPendingModifiedValues { - s.ClusterType = &v +// SetEngineVersion sets the EngineVersion field's value. +func (s *AwsRdsDbPendingModifiedValues) SetEngineVersion(v string) *AwsRdsDbPendingModifiedValues { + s.EngineVersion = &v return s } -// SetClusterVersion sets the ClusterVersion field's value. -func (s *AwsRedshiftClusterPendingModifiedValues) SetClusterVersion(v string) *AwsRedshiftClusterPendingModifiedValues { - s.ClusterVersion = &v +// SetIops sets the Iops field's value. +func (s *AwsRdsDbPendingModifiedValues) SetIops(v int64) *AwsRdsDbPendingModifiedValues { + s.Iops = &v return s } -// SetEncryptionType sets the EncryptionType field's value. -func (s *AwsRedshiftClusterPendingModifiedValues) SetEncryptionType(v string) *AwsRedshiftClusterPendingModifiedValues { - s.EncryptionType = &v +// SetLicenseModel sets the LicenseModel field's value. +func (s *AwsRdsDbPendingModifiedValues) SetLicenseModel(v string) *AwsRdsDbPendingModifiedValues { + s.LicenseModel = &v return s } -// SetEnhancedVpcRouting sets the EnhancedVpcRouting field's value. -func (s *AwsRedshiftClusterPendingModifiedValues) SetEnhancedVpcRouting(v bool) *AwsRedshiftClusterPendingModifiedValues { - s.EnhancedVpcRouting = &v +// SetMasterUserPassword sets the MasterUserPassword field's value. +func (s *AwsRdsDbPendingModifiedValues) SetMasterUserPassword(v string) *AwsRdsDbPendingModifiedValues { + s.MasterUserPassword = &v return s } -// SetMaintenanceTrackName sets the MaintenanceTrackName field's value. -func (s *AwsRedshiftClusterPendingModifiedValues) SetMaintenanceTrackName(v string) *AwsRedshiftClusterPendingModifiedValues { - s.MaintenanceTrackName = &v +// SetMultiAZ sets the MultiAZ field's value. +func (s *AwsRdsDbPendingModifiedValues) SetMultiAZ(v bool) *AwsRdsDbPendingModifiedValues { + s.MultiAZ = &v return s } -// SetMasterUserPassword sets the MasterUserPassword field's value. -func (s *AwsRedshiftClusterPendingModifiedValues) SetMasterUserPassword(v string) *AwsRedshiftClusterPendingModifiedValues { - s.MasterUserPassword = &v +// SetPendingCloudWatchLogsExports sets the PendingCloudWatchLogsExports field's value. +func (s *AwsRdsDbPendingModifiedValues) SetPendingCloudWatchLogsExports(v *AwsRdsPendingCloudWatchLogsExports) *AwsRdsDbPendingModifiedValues { + s.PendingCloudWatchLogsExports = v return s } -// SetNodeType sets the NodeType field's value. -func (s *AwsRedshiftClusterPendingModifiedValues) SetNodeType(v string) *AwsRedshiftClusterPendingModifiedValues { - s.NodeType = &v +// SetPort sets the Port field's value. +func (s *AwsRdsDbPendingModifiedValues) SetPort(v int64) *AwsRdsDbPendingModifiedValues { + s.Port = &v return s } -// SetNumberOfNodes sets the NumberOfNodes field's value. -func (s *AwsRedshiftClusterPendingModifiedValues) SetNumberOfNodes(v int64) *AwsRedshiftClusterPendingModifiedValues { - s.NumberOfNodes = &v +// SetProcessorFeatures sets the ProcessorFeatures field's value. +func (s *AwsRdsDbPendingModifiedValues) SetProcessorFeatures(v []*AwsRdsDbProcessorFeature) *AwsRdsDbPendingModifiedValues { + s.ProcessorFeatures = v return s } -// SetPubliclyAccessible sets the PubliclyAccessible field's value. -func (s *AwsRedshiftClusterPendingModifiedValues) SetPubliclyAccessible(v bool) *AwsRedshiftClusterPendingModifiedValues { - s.PubliclyAccessible = &v +// SetStorageType sets the StorageType field's value. +func (s *AwsRdsDbPendingModifiedValues) SetStorageType(v string) *AwsRdsDbPendingModifiedValues { + s.StorageType = &v return s } -// Information about the resize operation for the cluster. -type AwsRedshiftClusterResizeInfo struct { +// A processor feature. +type AwsRdsDbProcessorFeature struct { _ struct{} `type:"structure"` - // Indicates whether the resize operation can be canceled. - AllowCancelResize *bool `type:"boolean"` + // The name of the processor feature. Valid values are coreCount or threadsPerCore. + Name *string `type:"string"` - // The type of resize operation. - // - // Valid values: ClassicResize - ResizeType *string `type:"string"` + // The value of the processor feature. + Value *string `type:"string"` } // String returns the string representation. @@ -29898,7 +29928,7 @@ type AwsRedshiftClusterResizeInfo struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRedshiftClusterResizeInfo) String() string { +func (s AwsRdsDbProcessorFeature) String() string { return awsutil.Prettify(s) } @@ -29907,59 +29937,47 @@ func (s AwsRedshiftClusterResizeInfo) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRedshiftClusterResizeInfo) GoString() string { +func (s AwsRdsDbProcessorFeature) GoString() string { return s.String() } -// SetAllowCancelResize sets the AllowCancelResize field's value. -func (s *AwsRedshiftClusterResizeInfo) SetAllowCancelResize(v bool) *AwsRedshiftClusterResizeInfo { - s.AllowCancelResize = &v +// SetName sets the Name field's value. +func (s *AwsRdsDbProcessorFeature) SetName(v string) *AwsRdsDbProcessorFeature { + s.Name = &v return s } -// SetResizeType sets the ResizeType field's value. -func (s *AwsRedshiftClusterResizeInfo) SetResizeType(v string) *AwsRedshiftClusterResizeInfo { - s.ResizeType = &v +// SetValue sets the Value field's value. +func (s *AwsRdsDbProcessorFeature) SetValue(v string) *AwsRdsDbProcessorFeature { + s.Value = &v return s } -// Information about the status of a cluster restore action. It only applies -// if the cluster was created by restoring a snapshot. -type AwsRedshiftClusterRestoreStatus struct { +// Provides information about an Amazon RDS DB security group. +type AwsRdsDbSecurityGroupDetails struct { _ struct{} `type:"structure"` - // The number of megabytes per second being transferred from the backup storage. - // Returns the average rate for a completed backup. - // - // This field is only updated when you restore to DC2 and DS2 node types. - CurrentRestoreRateInMegaBytesPerSecond *float64 `type:"double"` + // The ARN for the DB security group. + DbSecurityGroupArn *string `type:"string"` - // The amount of time an in-progress restore has been running, or the amount - // of time it took a completed restore to finish. - // - // This field is only updated when you restore to DC2 and DS2 node types. - ElapsedTimeInSeconds *int64 `type:"long"` + // Provides the description of the DB security group. + DbSecurityGroupDescription *string `type:"string"` - // The estimate of the time remaining before the restore is complete. Returns - // 0 for a completed restore. - // - // This field is only updated when you restore to DC2 and DS2 node types. - EstimatedTimeToCompletionInSeconds *int64 `type:"long"` + // Specifies the name of the DB security group. + DbSecurityGroupName *string `type:"string"` - // The number of megabytes that were transferred from snapshot storage. - // - // This field is only updated when you restore to DC2 and DS2 node types. - ProgressInMegaBytes *int64 `type:"long"` + // Contains a list of EC2 security groups. + Ec2SecurityGroups []*AwsRdsDbSecurityGroupEc2SecurityGroup `type:"list"` - // The size of the set of snapshot data that was used to restore the cluster. - // - // This field is only updated when you restore to DC2 and DS2 node types. - SnapshotSizeInMegaBytes *int64 `type:"long"` + // Contains a list of IP ranges. + IpRanges []*AwsRdsDbSecurityGroupIpRange `type:"list"` - // The status of the restore action. - // - // Valid values: starting | restoring | completed | failed - Status *string `type:"string"` + // Provides the Amazon Web Services ID of the owner of a specific DB security + // group. + OwnerId *string `type:"string"` + + // Provides VPC ID associated with the DB security group. + VpcId *string `type:"string"` } // String returns the string representation. @@ -29967,7 +29985,7 @@ type AwsRedshiftClusterRestoreStatus struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRedshiftClusterRestoreStatus) String() string { +func (s AwsRdsDbSecurityGroupDetails) String() string { return awsutil.Prettify(s) } @@ -29976,56 +29994,67 @@ func (s AwsRedshiftClusterRestoreStatus) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRedshiftClusterRestoreStatus) GoString() string { +func (s AwsRdsDbSecurityGroupDetails) GoString() string { return s.String() } -// SetCurrentRestoreRateInMegaBytesPerSecond sets the CurrentRestoreRateInMegaBytesPerSecond field's value. -func (s *AwsRedshiftClusterRestoreStatus) SetCurrentRestoreRateInMegaBytesPerSecond(v float64) *AwsRedshiftClusterRestoreStatus { - s.CurrentRestoreRateInMegaBytesPerSecond = &v +// SetDbSecurityGroupArn sets the DbSecurityGroupArn field's value. +func (s *AwsRdsDbSecurityGroupDetails) SetDbSecurityGroupArn(v string) *AwsRdsDbSecurityGroupDetails { + s.DbSecurityGroupArn = &v return s } -// SetElapsedTimeInSeconds sets the ElapsedTimeInSeconds field's value. -func (s *AwsRedshiftClusterRestoreStatus) SetElapsedTimeInSeconds(v int64) *AwsRedshiftClusterRestoreStatus { - s.ElapsedTimeInSeconds = &v +// SetDbSecurityGroupDescription sets the DbSecurityGroupDescription field's value. +func (s *AwsRdsDbSecurityGroupDetails) SetDbSecurityGroupDescription(v string) *AwsRdsDbSecurityGroupDetails { + s.DbSecurityGroupDescription = &v return s } -// SetEstimatedTimeToCompletionInSeconds sets the EstimatedTimeToCompletionInSeconds field's value. -func (s *AwsRedshiftClusterRestoreStatus) SetEstimatedTimeToCompletionInSeconds(v int64) *AwsRedshiftClusterRestoreStatus { - s.EstimatedTimeToCompletionInSeconds = &v +// SetDbSecurityGroupName sets the DbSecurityGroupName field's value. +func (s *AwsRdsDbSecurityGroupDetails) SetDbSecurityGroupName(v string) *AwsRdsDbSecurityGroupDetails { + s.DbSecurityGroupName = &v return s } -// SetProgressInMegaBytes sets the ProgressInMegaBytes field's value. -func (s *AwsRedshiftClusterRestoreStatus) SetProgressInMegaBytes(v int64) *AwsRedshiftClusterRestoreStatus { - s.ProgressInMegaBytes = &v +// SetEc2SecurityGroups sets the Ec2SecurityGroups field's value. +func (s *AwsRdsDbSecurityGroupDetails) SetEc2SecurityGroups(v []*AwsRdsDbSecurityGroupEc2SecurityGroup) *AwsRdsDbSecurityGroupDetails { + s.Ec2SecurityGroups = v return s } -// SetSnapshotSizeInMegaBytes sets the SnapshotSizeInMegaBytes field's value. -func (s *AwsRedshiftClusterRestoreStatus) SetSnapshotSizeInMegaBytes(v int64) *AwsRedshiftClusterRestoreStatus { - s.SnapshotSizeInMegaBytes = &v +// SetIpRanges sets the IpRanges field's value. +func (s *AwsRdsDbSecurityGroupDetails) SetIpRanges(v []*AwsRdsDbSecurityGroupIpRange) *AwsRdsDbSecurityGroupDetails { + s.IpRanges = v return s } -// SetStatus sets the Status field's value. -func (s *AwsRedshiftClusterRestoreStatus) SetStatus(v string) *AwsRedshiftClusterRestoreStatus { - s.Status = &v +// SetOwnerId sets the OwnerId field's value. +func (s *AwsRdsDbSecurityGroupDetails) SetOwnerId(v string) *AwsRdsDbSecurityGroupDetails { + s.OwnerId = &v return s } -// A VPC security group that the cluster belongs to, if the cluster is in a -// VPC. -type AwsRedshiftClusterVpcSecurityGroup struct { +// SetVpcId sets the VpcId field's value. +func (s *AwsRdsDbSecurityGroupDetails) SetVpcId(v string) *AwsRdsDbSecurityGroupDetails { + s.VpcId = &v + return s +} + +// EC2 security group information for an RDS DB security group. +type AwsRdsDbSecurityGroupEc2SecurityGroup struct { _ struct{} `type:"structure"` - // The status of the VPC security group. - Status *string `type:"string"` + // Specifies the ID for the EC2 security group. + Ec2SecurityGroupId *string `type:"string"` - // The identifier of the VPC security group. - VpcSecurityGroupId *string `type:"string"` + // Specifies the name of the EC2 security group. + Ec2SecurityGroupName *string `type:"string"` + + // Provides the Amazon Web Services ID of the owner of the EC2 security group. + Ec2SecurityGroupOwnerId *string `type:"string"` + + // Provides the status of the EC2 security group. + Status *string `type:"string"` } // String returns the string representation. @@ -30033,7 +30062,7 @@ type AwsRedshiftClusterVpcSecurityGroup struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRedshiftClusterVpcSecurityGroup) String() string { +func (s AwsRdsDbSecurityGroupEc2SecurityGroup) String() string { return awsutil.Prettify(s) } @@ -30042,43 +30071,43 @@ func (s AwsRedshiftClusterVpcSecurityGroup) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsRedshiftClusterVpcSecurityGroup) GoString() string { +func (s AwsRdsDbSecurityGroupEc2SecurityGroup) GoString() string { return s.String() } -// SetStatus sets the Status field's value. -func (s *AwsRedshiftClusterVpcSecurityGroup) SetStatus(v string) *AwsRedshiftClusterVpcSecurityGroup { - s.Status = &v +// SetEc2SecurityGroupId sets the Ec2SecurityGroupId field's value. +func (s *AwsRdsDbSecurityGroupEc2SecurityGroup) SetEc2SecurityGroupId(v string) *AwsRdsDbSecurityGroupEc2SecurityGroup { + s.Ec2SecurityGroupId = &v return s } -// SetVpcSecurityGroupId sets the VpcSecurityGroupId field's value. -func (s *AwsRedshiftClusterVpcSecurityGroup) SetVpcSecurityGroupId(v string) *AwsRedshiftClusterVpcSecurityGroup { - s.VpcSecurityGroupId = &v +// SetEc2SecurityGroupName sets the Ec2SecurityGroupName field's value. +func (s *AwsRdsDbSecurityGroupEc2SecurityGroup) SetEc2SecurityGroupName(v string) *AwsRdsDbSecurityGroupEc2SecurityGroup { + s.Ec2SecurityGroupName = &v return s } -// provides information about the Amazon S3 Public Access Block configuration -// for accounts. -type AwsS3AccountPublicAccessBlockDetails struct { - _ struct{} `type:"structure"` +// SetEc2SecurityGroupOwnerId sets the Ec2SecurityGroupOwnerId field's value. +func (s *AwsRdsDbSecurityGroupEc2SecurityGroup) SetEc2SecurityGroupOwnerId(v string) *AwsRdsDbSecurityGroupEc2SecurityGroup { + s.Ec2SecurityGroupOwnerId = &v + return s +} - // Indicates whether to reject calls to update an S3 bucket if the calls include - // a public access control list (ACL). - BlockPublicAcls *bool `type:"boolean"` +// SetStatus sets the Status field's value. +func (s *AwsRdsDbSecurityGroupEc2SecurityGroup) SetStatus(v string) *AwsRdsDbSecurityGroupEc2SecurityGroup { + s.Status = &v + return s +} - // Indicates whether to reject calls to update the access policy for an S3 bucket - // or access point if the policy allows public access. - BlockPublicPolicy *bool `type:"boolean"` +// IP range information for an RDS DB security group. +type AwsRdsDbSecurityGroupIpRange struct { + _ struct{} `type:"structure"` - // Indicates whether Amazon S3 ignores public ACLs that are associated with - // an S3 bucket. - IgnorePublicAcls *bool `type:"boolean"` + // Specifies the IP range. + CidrIp *string `type:"string"` - // Indicates whether to restrict access to an access point or S3 bucket that - // has a public policy to only Amazon Web Services service principals and authorized - // users within the S3 bucket owner's account. - RestrictPublicBuckets *bool `type:"boolean"` + // Specifies the status of the IP range. + Status *string `type:"string"` } // String returns the string representation. @@ -30086,7 +30115,7 @@ type AwsS3AccountPublicAccessBlockDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3AccountPublicAccessBlockDetails) String() string { +func (s AwsRdsDbSecurityGroupIpRange) String() string { return awsutil.Prettify(s) } @@ -30095,149 +30124,147 @@ func (s AwsS3AccountPublicAccessBlockDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3AccountPublicAccessBlockDetails) GoString() string { +func (s AwsRdsDbSecurityGroupIpRange) GoString() string { return s.String() } -// SetBlockPublicAcls sets the BlockPublicAcls field's value. -func (s *AwsS3AccountPublicAccessBlockDetails) SetBlockPublicAcls(v bool) *AwsS3AccountPublicAccessBlockDetails { - s.BlockPublicAcls = &v +// SetCidrIp sets the CidrIp field's value. +func (s *AwsRdsDbSecurityGroupIpRange) SetCidrIp(v string) *AwsRdsDbSecurityGroupIpRange { + s.CidrIp = &v return s } -// SetBlockPublicPolicy sets the BlockPublicPolicy field's value. -func (s *AwsS3AccountPublicAccessBlockDetails) SetBlockPublicPolicy(v bool) *AwsS3AccountPublicAccessBlockDetails { - s.BlockPublicPolicy = &v +// SetStatus sets the Status field's value. +func (s *AwsRdsDbSecurityGroupIpRange) SetStatus(v string) *AwsRdsDbSecurityGroupIpRange { + s.Status = &v return s } -// SetIgnorePublicAcls sets the IgnorePublicAcls field's value. -func (s *AwsS3AccountPublicAccessBlockDetails) SetIgnorePublicAcls(v bool) *AwsS3AccountPublicAccessBlockDetails { - s.IgnorePublicAcls = &v - return s -} +// Provides details about an Amazon RDS DB cluster snapshot. +type AwsRdsDbSnapshotDetails struct { + _ struct{} `type:"structure"` -// SetRestrictPublicBuckets sets the RestrictPublicBuckets field's value. -func (s *AwsS3AccountPublicAccessBlockDetails) SetRestrictPublicBuckets(v bool) *AwsS3AccountPublicAccessBlockDetails { - s.RestrictPublicBuckets = &v - return s -} + // The amount of storage (in gigabytes) to be initially allocated for the database + // instance. + AllocatedStorage *int64 `type:"integer"` -// The lifecycle configuration for the objects in the S3 bucket. -type AwsS3BucketBucketLifecycleConfigurationDetails struct { - _ struct{} `type:"structure"` + // Specifies the name of the Availability Zone in which the DB instance was + // located at the time of the DB snapshot. + AvailabilityZone *string `type:"string"` - // The lifecycle rules. - Rules []*AwsS3BucketBucketLifecycleConfigurationRulesDetails `type:"list"` -} + // A name for the DB instance. + DbInstanceIdentifier *string `type:"string"` -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsS3BucketBucketLifecycleConfigurationDetails) String() string { - return awsutil.Prettify(s) -} + // The name or ARN of the DB snapshot that is used to restore the DB instance. + DbSnapshotIdentifier *string `type:"string"` -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsS3BucketBucketLifecycleConfigurationDetails) GoString() string { - return s.String() -} + // The identifier for the source DB instance. + DbiResourceId *string `type:"string"` -// SetRules sets the Rules field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationDetails) SetRules(v []*AwsS3BucketBucketLifecycleConfigurationRulesDetails) *AwsS3BucketBucketLifecycleConfigurationDetails { - s.Rules = v - return s -} + // Whether the DB snapshot is encrypted. + Encrypted *bool `type:"boolean"` -// Information about what Amazon S3 does when a multipart upload is incomplete. -type AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetails struct { - _ struct{} `type:"structure"` + // The name of the database engine to use for this DB instance. Valid values + // are as follows: + // + // * aurora + // + // * aurora-mysql + // + // * aurora-postgresql + // + // * c + // + // * mariadb + // + // * mysql + // + // * oracle-ee + // + // * oracle-se + // + // * oracle-se1 + // + // * oracle-se2 + // + // * sqlserver-ee + // + // * sqlserver-ex + // + // * sqlserver-se + // + // * sqlserver-web + Engine *string `type:"string"` - // The number of days after which Amazon S3 cancels an incomplete multipart - // upload. - DaysAfterInitiation *int64 `type:"integer"` -} + // The version of the database engine. + EngineVersion *string `type:"string"` -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetails) String() string { - return awsutil.Prettify(s) -} + // Whether mapping of IAM accounts to database accounts is enabled. + IamDatabaseAuthenticationEnabled *bool `type:"boolean"` -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetails) GoString() string { - return s.String() -} + // Specifies the time in Coordinated Universal Time (UTC) when the DB instance, + // from which the snapshot was taken, was created. + InstanceCreateTime *string `type:"string"` -// SetDaysAfterInitiation sets the DaysAfterInitiation field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetails) SetDaysAfterInitiation(v int64) *AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetails { - s.DaysAfterInitiation = &v - return s -} + // The provisioned IOPS (I/O operations per second) value of the DB instance + // at the time of the snapshot. + Iops *int64 `type:"integer"` -// Configuration for a lifecycle rule. -type AwsS3BucketBucketLifecycleConfigurationRulesDetails struct { - _ struct{} `type:"structure"` + // If Encrypted is true, the KMS key identifier for the encrypted DB snapshot. + KmsKeyId *string `type:"string"` - // How Amazon S3 responds when a multipart upload is incomplete. Specifically, - // provides a number of days before Amazon S3 cancels the entire upload. - AbortIncompleteMultipartUpload *AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetails `type:"structure"` + // License model information for the restored DB instance. + LicenseModel *string `type:"string"` - // The date when objects are moved or deleted. - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - ExpirationDate *string `type:"string"` + // The master user name for the DB snapshot. + MasterUsername *string `type:"string"` - // The length in days of the lifetime for objects that are subject to the rule. - ExpirationInDays *int64 `type:"integer"` + // The option group name for the DB snapshot. + OptionGroupName *string `type:"string"` - // Whether Amazon S3 removes a delete marker that has no noncurrent versions. - // If set to true, the delete marker is expired. If set to false, the policy - // takes no action. - // - // If you provide ExpiredObjectDeleteMarker, you cannot provide ExpirationInDays - // or ExpirationDate. - ExpiredObjectDeleteMarker *bool `type:"boolean"` + // The percentage of the estimated data that has been transferred. + PercentProgress *int64 `type:"integer"` - // Identifies the objects that a rule applies to. - Filter *AwsS3BucketBucketLifecycleConfigurationRulesFilterDetails `type:"structure"` + // The port that the database engine was listening on at the time of the snapshot. + Port *int64 `type:"integer"` - // The unique identifier of the rule. - ID *string `type:"string"` + // The number of CPU cores and the number of threads per core for the DB instance + // class of the DB instance. + ProcessorFeatures []*AwsRdsDbProcessorFeature `type:"list"` - // The number of days that an object is noncurrent before Amazon S3 can perform - // the associated action. - NoncurrentVersionExpirationInDays *int64 `type:"integer"` + // When the snapshot was taken in Coordinated Universal Time (UTC). + SnapshotCreateTime *string `type:"string"` - // Transition rules that describe when noncurrent objects transition to a specified - // storage class. - NoncurrentVersionTransitions []*AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails `type:"list"` + // The type of the DB snapshot. + SnapshotType *string `type:"string"` - // A prefix that identifies one or more objects that the rule applies to. - Prefix *string `type:"string"` + // The DB snapshot ARN that the DB snapshot was copied from. + SourceDbSnapshotIdentifier *string `type:"string"` - // The current status of the rule. Indicates whether the rule is currently being - // applied. + // The Amazon Web Services Region that the DB snapshot was created in or copied + // from. + SourceRegion *string `type:"string"` + + // The status of this DB snapshot. Status *string `type:"string"` - // Transition rules that indicate when objects transition to a specified storage - // class. - Transitions []*AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails `type:"list"` + // The storage type associated with the DB snapshot. Valid values are as follows: + // + // * gp2 + // + // * io1 + // + // * standard + StorageType *string `type:"string"` + + // The ARN from the key store with which to associate the instance for TDE encryption. + TdeCredentialArn *string `type:"string"` + + // The time zone of the DB snapshot. + Timezone *string `type:"string"` + + // The VPC ID associated with the DB snapshot. + VpcId *string `type:"string"` } // String returns the string representation. @@ -30245,7 +30272,7 @@ type AwsS3BucketBucketLifecycleConfigurationRulesDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketBucketLifecycleConfigurationRulesDetails) String() string { +func (s AwsRdsDbSnapshotDetails) String() string { return awsutil.Prettify(s) } @@ -30254,180 +30281,187 @@ func (s AwsS3BucketBucketLifecycleConfigurationRulesDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketBucketLifecycleConfigurationRulesDetails) GoString() string { +func (s AwsRdsDbSnapshotDetails) GoString() string { return s.String() } -// SetAbortIncompleteMultipartUpload sets the AbortIncompleteMultipartUpload field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetAbortIncompleteMultipartUpload(v *AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetails) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { - s.AbortIncompleteMultipartUpload = v +// SetAllocatedStorage sets the AllocatedStorage field's value. +func (s *AwsRdsDbSnapshotDetails) SetAllocatedStorage(v int64) *AwsRdsDbSnapshotDetails { + s.AllocatedStorage = &v return s } -// SetExpirationDate sets the ExpirationDate field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetExpirationDate(v string) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { - s.ExpirationDate = &v +// SetAvailabilityZone sets the AvailabilityZone field's value. +func (s *AwsRdsDbSnapshotDetails) SetAvailabilityZone(v string) *AwsRdsDbSnapshotDetails { + s.AvailabilityZone = &v return s } -// SetExpirationInDays sets the ExpirationInDays field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetExpirationInDays(v int64) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { - s.ExpirationInDays = &v +// SetDbInstanceIdentifier sets the DbInstanceIdentifier field's value. +func (s *AwsRdsDbSnapshotDetails) SetDbInstanceIdentifier(v string) *AwsRdsDbSnapshotDetails { + s.DbInstanceIdentifier = &v return s } -// SetExpiredObjectDeleteMarker sets the ExpiredObjectDeleteMarker field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetExpiredObjectDeleteMarker(v bool) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { - s.ExpiredObjectDeleteMarker = &v +// SetDbSnapshotIdentifier sets the DbSnapshotIdentifier field's value. +func (s *AwsRdsDbSnapshotDetails) SetDbSnapshotIdentifier(v string) *AwsRdsDbSnapshotDetails { + s.DbSnapshotIdentifier = &v return s } -// SetFilter sets the Filter field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetFilter(v *AwsS3BucketBucketLifecycleConfigurationRulesFilterDetails) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { - s.Filter = v +// SetDbiResourceId sets the DbiResourceId field's value. +func (s *AwsRdsDbSnapshotDetails) SetDbiResourceId(v string) *AwsRdsDbSnapshotDetails { + s.DbiResourceId = &v return s } -// SetID sets the ID field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetID(v string) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { - s.ID = &v +// SetEncrypted sets the Encrypted field's value. +func (s *AwsRdsDbSnapshotDetails) SetEncrypted(v bool) *AwsRdsDbSnapshotDetails { + s.Encrypted = &v return s } -// SetNoncurrentVersionExpirationInDays sets the NoncurrentVersionExpirationInDays field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetNoncurrentVersionExpirationInDays(v int64) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { - s.NoncurrentVersionExpirationInDays = &v +// SetEngine sets the Engine field's value. +func (s *AwsRdsDbSnapshotDetails) SetEngine(v string) *AwsRdsDbSnapshotDetails { + s.Engine = &v return s } -// SetNoncurrentVersionTransitions sets the NoncurrentVersionTransitions field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetNoncurrentVersionTransitions(v []*AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { - s.NoncurrentVersionTransitions = v +// SetEngineVersion sets the EngineVersion field's value. +func (s *AwsRdsDbSnapshotDetails) SetEngineVersion(v string) *AwsRdsDbSnapshotDetails { + s.EngineVersion = &v return s } -// SetPrefix sets the Prefix field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetPrefix(v string) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { - s.Prefix = &v +// SetIamDatabaseAuthenticationEnabled sets the IamDatabaseAuthenticationEnabled field's value. +func (s *AwsRdsDbSnapshotDetails) SetIamDatabaseAuthenticationEnabled(v bool) *AwsRdsDbSnapshotDetails { + s.IamDatabaseAuthenticationEnabled = &v return s } -// SetStatus sets the Status field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetStatus(v string) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { - s.Status = &v +// SetInstanceCreateTime sets the InstanceCreateTime field's value. +func (s *AwsRdsDbSnapshotDetails) SetInstanceCreateTime(v string) *AwsRdsDbSnapshotDetails { + s.InstanceCreateTime = &v return s } -// SetTransitions sets the Transitions field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetTransitions(v []*AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { - s.Transitions = v +// SetIops sets the Iops field's value. +func (s *AwsRdsDbSnapshotDetails) SetIops(v int64) *AwsRdsDbSnapshotDetails { + s.Iops = &v return s } -// Identifies the objects that a rule applies to. -type AwsS3BucketBucketLifecycleConfigurationRulesFilterDetails struct { - _ struct{} `type:"structure"` +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *AwsRdsDbSnapshotDetails) SetKmsKeyId(v string) *AwsRdsDbSnapshotDetails { + s.KmsKeyId = &v + return s +} - // The configuration for the filter. - Predicate *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails `type:"structure"` +// SetLicenseModel sets the LicenseModel field's value. +func (s *AwsRdsDbSnapshotDetails) SetLicenseModel(v string) *AwsRdsDbSnapshotDetails { + s.LicenseModel = &v + return s } -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterDetails) String() string { - return awsutil.Prettify(s) +// SetMasterUsername sets the MasterUsername field's value. +func (s *AwsRdsDbSnapshotDetails) SetMasterUsername(v string) *AwsRdsDbSnapshotDetails { + s.MasterUsername = &v + return s } -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterDetails) GoString() string { - return s.String() +// SetOptionGroupName sets the OptionGroupName field's value. +func (s *AwsRdsDbSnapshotDetails) SetOptionGroupName(v string) *AwsRdsDbSnapshotDetails { + s.OptionGroupName = &v + return s } -// SetPredicate sets the Predicate field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterDetails) SetPredicate(v *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails) *AwsS3BucketBucketLifecycleConfigurationRulesFilterDetails { - s.Predicate = v +// SetPercentProgress sets the PercentProgress field's value. +func (s *AwsRdsDbSnapshotDetails) SetPercentProgress(v int64) *AwsRdsDbSnapshotDetails { + s.PercentProgress = &v return s } -// The configuration for the filter. -type AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails struct { - _ struct{} `type:"structure"` +// SetPort sets the Port field's value. +func (s *AwsRdsDbSnapshotDetails) SetPort(v int64) *AwsRdsDbSnapshotDetails { + s.Port = &v + return s +} - // The values to use for the filter. - Operands []*AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails `type:"list"` +// SetProcessorFeatures sets the ProcessorFeatures field's value. +func (s *AwsRdsDbSnapshotDetails) SetProcessorFeatures(v []*AwsRdsDbProcessorFeature) *AwsRdsDbSnapshotDetails { + s.ProcessorFeatures = v + return s +} - // A prefix filter. - Prefix *string `type:"string"` +// SetSnapshotCreateTime sets the SnapshotCreateTime field's value. +func (s *AwsRdsDbSnapshotDetails) SetSnapshotCreateTime(v string) *AwsRdsDbSnapshotDetails { + s.SnapshotCreateTime = &v + return s +} - // A tag filter. - Tag *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails `type:"structure"` +// SetSnapshotType sets the SnapshotType field's value. +func (s *AwsRdsDbSnapshotDetails) SetSnapshotType(v string) *AwsRdsDbSnapshotDetails { + s.SnapshotType = &v + return s +} - // Whether to use AND or OR to join the operands. Valid values are LifecycleAndOperator - // or LifecycleOrOperator. - Type *string `type:"string"` +// SetSourceDbSnapshotIdentifier sets the SourceDbSnapshotIdentifier field's value. +func (s *AwsRdsDbSnapshotDetails) SetSourceDbSnapshotIdentifier(v string) *AwsRdsDbSnapshotDetails { + s.SourceDbSnapshotIdentifier = &v + return s } -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails) String() string { - return awsutil.Prettify(s) +// SetSourceRegion sets the SourceRegion field's value. +func (s *AwsRdsDbSnapshotDetails) SetSourceRegion(v string) *AwsRdsDbSnapshotDetails { + s.SourceRegion = &v + return s } -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails) GoString() string { - return s.String() +// SetStatus sets the Status field's value. +func (s *AwsRdsDbSnapshotDetails) SetStatus(v string) *AwsRdsDbSnapshotDetails { + s.Status = &v + return s } -// SetOperands sets the Operands field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails) SetOperands(v []*AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails { - s.Operands = v +// SetStorageType sets the StorageType field's value. +func (s *AwsRdsDbSnapshotDetails) SetStorageType(v string) *AwsRdsDbSnapshotDetails { + s.StorageType = &v return s } -// SetPrefix sets the Prefix field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails) SetPrefix(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails { - s.Prefix = &v +// SetTdeCredentialArn sets the TdeCredentialArn field's value. +func (s *AwsRdsDbSnapshotDetails) SetTdeCredentialArn(v string) *AwsRdsDbSnapshotDetails { + s.TdeCredentialArn = &v return s } -// SetTag sets the Tag field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails) SetTag(v *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails { - s.Tag = v +// SetTimezone sets the Timezone field's value. +func (s *AwsRdsDbSnapshotDetails) SetTimezone(v string) *AwsRdsDbSnapshotDetails { + s.Timezone = &v return s } -// SetType sets the Type field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails) SetType(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails { - s.Type = &v +// SetVpcId sets the VpcId field's value. +func (s *AwsRdsDbSnapshotDetails) SetVpcId(v string) *AwsRdsDbSnapshotDetails { + s.VpcId = &v return s } -// A value to use for the filter. -type AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails struct { +// Information about the status of a read replica. +type AwsRdsDbStatusInfo struct { _ struct{} `type:"structure"` - // Prefix text for matching objects. - Prefix *string `type:"string"` + // If the read replica is currently in an error state, provides the error details. + Message *string `type:"string"` - // A tag that is assigned to matching objects. - Tag *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails `type:"structure"` + // Whether the read replica instance is operating normally. + Normal *bool `type:"boolean"` - // The type of filter value. Valid values are LifecyclePrefixPredicate or LifecycleTagPredicate. - Type *string `type:"string"` + // The status of the read replica instance. + Status *string `type:"string"` + + // The type of status. For a read replica, the status type is read replication. + StatusType *string `type:"string"` } // String returns the string representation. @@ -30435,7 +30469,7 @@ type AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails) String() string { +func (s AwsRdsDbStatusInfo) String() string { return awsutil.Prettify(s) } @@ -30444,37 +30478,55 @@ func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetai // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails) GoString() string { +func (s AwsRdsDbStatusInfo) GoString() string { return s.String() } -// SetPrefix sets the Prefix field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails) SetPrefix(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails { - s.Prefix = &v +// SetMessage sets the Message field's value. +func (s *AwsRdsDbStatusInfo) SetMessage(v string) *AwsRdsDbStatusInfo { + s.Message = &v return s } -// SetTag sets the Tag field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails) SetTag(v *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails { - s.Tag = v +// SetNormal sets the Normal field's value. +func (s *AwsRdsDbStatusInfo) SetNormal(v bool) *AwsRdsDbStatusInfo { + s.Normal = &v return s } -// SetType sets the Type field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails) SetType(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails { - s.Type = &v +// SetStatus sets the Status field's value. +func (s *AwsRdsDbStatusInfo) SetStatus(v string) *AwsRdsDbStatusInfo { + s.Status = &v return s } -// A tag that is assigned to matching objects. -type AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails struct { +// SetStatusType sets the StatusType field's value. +func (s *AwsRdsDbStatusInfo) SetStatusType(v string) *AwsRdsDbStatusInfo { + s.StatusType = &v + return s +} + +// Information about the subnet group for the database instance. +type AwsRdsDbSubnetGroup struct { _ struct{} `type:"structure"` - // The tag key. - Key *string `type:"string"` + // The ARN of the subnet group. + DbSubnetGroupArn *string `type:"string"` - // The tag value. - Value *string `type:"string"` + // The description of the subnet group. + DbSubnetGroupDescription *string `type:"string"` + + // The name of the subnet group. + DbSubnetGroupName *string `type:"string"` + + // The status of the subnet group. + SubnetGroupStatus *string `type:"string"` + + // A list of subnets in the subnet group. + Subnets []*AwsRdsDbSubnetGroupSubnet `type:"list"` + + // The VPC ID of the subnet group. + VpcId *string `type:"string"` } // String returns the string representation. @@ -30482,7 +30534,7 @@ type AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetai // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails) String() string { +func (s AwsRdsDbSubnetGroup) String() string { return awsutil.Prettify(s) } @@ -30491,135 +30543,58 @@ func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDe // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails) GoString() string { +func (s AwsRdsDbSubnetGroup) GoString() string { return s.String() } -// SetKey sets the Key field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails) SetKey(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails { - s.Key = &v +// SetDbSubnetGroupArn sets the DbSubnetGroupArn field's value. +func (s *AwsRdsDbSubnetGroup) SetDbSubnetGroupArn(v string) *AwsRdsDbSubnetGroup { + s.DbSubnetGroupArn = &v return s } -// SetValue sets the Value field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails) SetValue(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails { - s.Value = &v +// SetDbSubnetGroupDescription sets the DbSubnetGroupDescription field's value. +func (s *AwsRdsDbSubnetGroup) SetDbSubnetGroupDescription(v string) *AwsRdsDbSubnetGroup { + s.DbSubnetGroupDescription = &v return s } -// A tag filter. -type AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails struct { - _ struct{} `type:"structure"` - - // The tag key. - Key *string `type:"string"` - - // The tag value - Value *string `type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails) GoString() string { - return s.String() -} - -// SetKey sets the Key field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails) SetKey(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails { - s.Key = &v +// SetDbSubnetGroupName sets the DbSubnetGroupName field's value. +func (s *AwsRdsDbSubnetGroup) SetDbSubnetGroupName(v string) *AwsRdsDbSubnetGroup { + s.DbSubnetGroupName = &v return s } -// SetValue sets the Value field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails) SetValue(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails { - s.Value = &v +// SetSubnetGroupStatus sets the SubnetGroupStatus field's value. +func (s *AwsRdsDbSubnetGroup) SetSubnetGroupStatus(v string) *AwsRdsDbSubnetGroup { + s.SubnetGroupStatus = &v return s } -// A transition rule that describes when noncurrent objects transition to a -// specified storage class. -type AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails struct { - _ struct{} `type:"structure"` - - // The number of days that an object is noncurrent before Amazon S3 can perform - // the associated action. - Days *int64 `type:"integer"` - - // The class of storage to change the object to after the object is noncurrent - // for the specified number of days. - StorageClass *string `type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails) GoString() string { - return s.String() -} - -// SetDays sets the Days field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails) SetDays(v int64) *AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails { - s.Days = &v +// SetSubnets sets the Subnets field's value. +func (s *AwsRdsDbSubnetGroup) SetSubnets(v []*AwsRdsDbSubnetGroupSubnet) *AwsRdsDbSubnetGroup { + s.Subnets = v return s } -// SetStorageClass sets the StorageClass field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails) SetStorageClass(v string) *AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails { - s.StorageClass = &v +// SetVpcId sets the VpcId field's value. +func (s *AwsRdsDbSubnetGroup) SetVpcId(v string) *AwsRdsDbSubnetGroup { + s.VpcId = &v return s } -// A rule for when objects transition to specific storage classes. -type AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails struct { +// Information about a subnet in a subnet group. +type AwsRdsDbSubnetGroupSubnet struct { _ struct{} `type:"structure"` - // A date on which to transition objects to the specified storage class. If - // you provide Date, you cannot provide Days. - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - Date *string `type:"string"` + // Information about the Availability Zone for a subnet in the subnet group. + SubnetAvailabilityZone *AwsRdsDbSubnetGroupSubnetAvailabilityZone `type:"structure"` - // The number of days after which to transition the object to the specified - // storage class. If you provide Days, you cannot provide Date. - Days *int64 `type:"integer"` + // The identifier of a subnet in the subnet group. + SubnetIdentifier *string `type:"string"` - // The storage class to transition the object to. Valid values are as follows: - // - // * DEEP_ARCHIVE - // - // * GLACIER - // - // * INTELLIGENT_TIERING - // - // * ONEZONE_IA - // - // * STANDARD_IA - StorageClass *string `type:"string"` + // The status of a subnet in the subnet group. + SubnetStatus *string `type:"string"` } // String returns the string representation. @@ -30627,7 +30602,7 @@ type AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails) String() string { +func (s AwsRdsDbSubnetGroupSubnet) String() string { return awsutil.Prettify(s) } @@ -30636,39 +30611,34 @@ func (s AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails) String() // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails) GoString() string { +func (s AwsRdsDbSubnetGroupSubnet) GoString() string { return s.String() } -// SetDate sets the Date field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails) SetDate(v string) *AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails { - s.Date = &v +// SetSubnetAvailabilityZone sets the SubnetAvailabilityZone field's value. +func (s *AwsRdsDbSubnetGroupSubnet) SetSubnetAvailabilityZone(v *AwsRdsDbSubnetGroupSubnetAvailabilityZone) *AwsRdsDbSubnetGroupSubnet { + s.SubnetAvailabilityZone = v return s } -// SetDays sets the Days field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails) SetDays(v int64) *AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails { - s.Days = &v +// SetSubnetIdentifier sets the SubnetIdentifier field's value. +func (s *AwsRdsDbSubnetGroupSubnet) SetSubnetIdentifier(v string) *AwsRdsDbSubnetGroupSubnet { + s.SubnetIdentifier = &v return s } -// SetStorageClass sets the StorageClass field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails) SetStorageClass(v string) *AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails { - s.StorageClass = &v +// SetSubnetStatus sets the SubnetStatus field's value. +func (s *AwsRdsDbSubnetGroupSubnet) SetSubnetStatus(v string) *AwsRdsDbSubnetGroupSubnet { + s.SubnetStatus = &v return s } -// Describes the versioning state of an S3 bucket. -type AwsS3BucketBucketVersioningConfiguration struct { +// An Availability Zone for a subnet in a subnet group. +type AwsRdsDbSubnetGroupSubnetAvailabilityZone struct { _ struct{} `type:"structure"` - // Specifies whether MFA delete is currently enabled in the S3 bucket versioning - // configuration. If the S3 bucket was never configured with MFA delete, then - // this attribute is not included. - IsMfaDeleteEnabled *bool `type:"boolean"` - - // The versioning status of the S3 bucket. Valid values are Enabled or Suspended. - Status *string `type:"string"` + // The name of the Availability Zone for a subnet in the subnet group. + Name *string `type:"string"` } // String returns the string representation. @@ -30676,7 +30646,7 @@ type AwsS3BucketBucketVersioningConfiguration struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketBucketVersioningConfiguration) String() string { +func (s AwsRdsDbSubnetGroupSubnetAvailabilityZone) String() string { return awsutil.Prettify(s) } @@ -30685,67 +30655,58 @@ func (s AwsS3BucketBucketVersioningConfiguration) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketBucketVersioningConfiguration) GoString() string { +func (s AwsRdsDbSubnetGroupSubnetAvailabilityZone) GoString() string { return s.String() } -// SetIsMfaDeleteEnabled sets the IsMfaDeleteEnabled field's value. -func (s *AwsS3BucketBucketVersioningConfiguration) SetIsMfaDeleteEnabled(v bool) *AwsS3BucketBucketVersioningConfiguration { - s.IsMfaDeleteEnabled = &v - return s -} - -// SetStatus sets the Status field's value. -func (s *AwsS3BucketBucketVersioningConfiguration) SetStatus(v string) *AwsS3BucketBucketVersioningConfiguration { - s.Status = &v +// SetName sets the Name field's value. +func (s *AwsRdsDbSubnetGroupSubnetAvailabilityZone) SetName(v string) *AwsRdsDbSubnetGroupSubnetAvailabilityZone { + s.Name = &v return s } -// The details of an Amazon S3 bucket. -type AwsS3BucketDetails struct { +// Details about an Amazon RDS event notification subscription. The subscription +// allows Amazon RDS to post events to an SNS topic. +type AwsRdsEventSubscriptionDetails struct { _ struct{} `type:"structure"` - // The access control list for the S3 bucket. - AccessControlList *string `type:"string"` + // The identifier of the account that is associated with the event notification + // subscription. + CustSubscriptionId *string `type:"string"` - // The lifecycle configuration for objects in the S3 bucket. - BucketLifecycleConfiguration *AwsS3BucketBucketLifecycleConfigurationDetails `type:"structure"` + // The identifier of the event notification subscription. + CustomerAwsId *string `type:"string"` - // The logging configuration for the S3 bucket. - BucketLoggingConfiguration *AwsS3BucketLoggingConfiguration `type:"structure"` + // Whether the event notification subscription is enabled. + Enabled *bool `type:"boolean"` - // The notification configuration for the S3 bucket. - BucketNotificationConfiguration *AwsS3BucketNotificationConfiguration `type:"structure"` + // The list of event categories for the event notification subscription. + EventCategoriesList []*string `type:"list"` - // The versioning state of an S3 bucket. - BucketVersioningConfiguration *AwsS3BucketBucketVersioningConfiguration `type:"structure"` + // The ARN of the event notification subscription. + EventSubscriptionArn *string `type:"string"` - // The website configuration parameters for the S3 bucket. - BucketWebsiteConfiguration *AwsS3BucketWebsiteConfiguration `type:"structure"` + // The ARN of the SNS topic to post the event notifications to. + SnsTopicArn *string `type:"string"` - // Indicates when the S3 bucket was created. + // A list of source identifiers for the event notification subscription. + SourceIdsList []*string `type:"list"` + + // The source type for the event notification subscription. + SourceType *string `type:"string"` + + // The status of the event notification subscription. + // + // Valid values: creating | modifying | deleting | active | no-permission | + // topic-not-exist + Status *string `type:"string"` + + // The datetime when the event notification subscription was created. // // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot // contain spaces. For example, 2020-03-22T13:22:13.933Z. - CreatedAt *string `type:"string"` - - // The Amazon Web Services account identifier of the account that owns the S3 - // bucket. - OwnerAccountId *string `type:"string"` - - // The canonical user ID of the owner of the S3 bucket. - OwnerId *string `type:"string"` - - // The display name of the owner of the S3 bucket. - OwnerName *string `type:"string"` - - // Provides information about the Amazon S3 Public Access Block configuration - // for the S3 bucket. - PublicAccessBlockConfiguration *AwsS3AccountPublicAccessBlockDetails `type:"structure"` - - // The encryption rules that are applied to the S3 bucket. - ServerSideEncryptionConfiguration *AwsS3BucketServerSideEncryptionConfiguration `type:"structure"` + SubscriptionCreationTime *string `type:"string"` } // String returns the string representation. @@ -30753,7 +30714,7 @@ type AwsS3BucketDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketDetails) String() string { +func (s AwsRdsEventSubscriptionDetails) String() string { return awsutil.Prettify(s) } @@ -30762,91 +30723,79 @@ func (s AwsS3BucketDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketDetails) GoString() string { +func (s AwsRdsEventSubscriptionDetails) GoString() string { return s.String() } -// SetAccessControlList sets the AccessControlList field's value. -func (s *AwsS3BucketDetails) SetAccessControlList(v string) *AwsS3BucketDetails { - s.AccessControlList = &v - return s -} - -// SetBucketLifecycleConfiguration sets the BucketLifecycleConfiguration field's value. -func (s *AwsS3BucketDetails) SetBucketLifecycleConfiguration(v *AwsS3BucketBucketLifecycleConfigurationDetails) *AwsS3BucketDetails { - s.BucketLifecycleConfiguration = v - return s -} - -// SetBucketLoggingConfiguration sets the BucketLoggingConfiguration field's value. -func (s *AwsS3BucketDetails) SetBucketLoggingConfiguration(v *AwsS3BucketLoggingConfiguration) *AwsS3BucketDetails { - s.BucketLoggingConfiguration = v +// SetCustSubscriptionId sets the CustSubscriptionId field's value. +func (s *AwsRdsEventSubscriptionDetails) SetCustSubscriptionId(v string) *AwsRdsEventSubscriptionDetails { + s.CustSubscriptionId = &v return s } -// SetBucketNotificationConfiguration sets the BucketNotificationConfiguration field's value. -func (s *AwsS3BucketDetails) SetBucketNotificationConfiguration(v *AwsS3BucketNotificationConfiguration) *AwsS3BucketDetails { - s.BucketNotificationConfiguration = v +// SetCustomerAwsId sets the CustomerAwsId field's value. +func (s *AwsRdsEventSubscriptionDetails) SetCustomerAwsId(v string) *AwsRdsEventSubscriptionDetails { + s.CustomerAwsId = &v return s } -// SetBucketVersioningConfiguration sets the BucketVersioningConfiguration field's value. -func (s *AwsS3BucketDetails) SetBucketVersioningConfiguration(v *AwsS3BucketBucketVersioningConfiguration) *AwsS3BucketDetails { - s.BucketVersioningConfiguration = v +// SetEnabled sets the Enabled field's value. +func (s *AwsRdsEventSubscriptionDetails) SetEnabled(v bool) *AwsRdsEventSubscriptionDetails { + s.Enabled = &v return s } -// SetBucketWebsiteConfiguration sets the BucketWebsiteConfiguration field's value. -func (s *AwsS3BucketDetails) SetBucketWebsiteConfiguration(v *AwsS3BucketWebsiteConfiguration) *AwsS3BucketDetails { - s.BucketWebsiteConfiguration = v +// SetEventCategoriesList sets the EventCategoriesList field's value. +func (s *AwsRdsEventSubscriptionDetails) SetEventCategoriesList(v []*string) *AwsRdsEventSubscriptionDetails { + s.EventCategoriesList = v return s } -// SetCreatedAt sets the CreatedAt field's value. -func (s *AwsS3BucketDetails) SetCreatedAt(v string) *AwsS3BucketDetails { - s.CreatedAt = &v +// SetEventSubscriptionArn sets the EventSubscriptionArn field's value. +func (s *AwsRdsEventSubscriptionDetails) SetEventSubscriptionArn(v string) *AwsRdsEventSubscriptionDetails { + s.EventSubscriptionArn = &v return s } -// SetOwnerAccountId sets the OwnerAccountId field's value. -func (s *AwsS3BucketDetails) SetOwnerAccountId(v string) *AwsS3BucketDetails { - s.OwnerAccountId = &v +// SetSnsTopicArn sets the SnsTopicArn field's value. +func (s *AwsRdsEventSubscriptionDetails) SetSnsTopicArn(v string) *AwsRdsEventSubscriptionDetails { + s.SnsTopicArn = &v return s } -// SetOwnerId sets the OwnerId field's value. -func (s *AwsS3BucketDetails) SetOwnerId(v string) *AwsS3BucketDetails { - s.OwnerId = &v +// SetSourceIdsList sets the SourceIdsList field's value. +func (s *AwsRdsEventSubscriptionDetails) SetSourceIdsList(v []*string) *AwsRdsEventSubscriptionDetails { + s.SourceIdsList = v return s } -// SetOwnerName sets the OwnerName field's value. -func (s *AwsS3BucketDetails) SetOwnerName(v string) *AwsS3BucketDetails { - s.OwnerName = &v +// SetSourceType sets the SourceType field's value. +func (s *AwsRdsEventSubscriptionDetails) SetSourceType(v string) *AwsRdsEventSubscriptionDetails { + s.SourceType = &v return s } -// SetPublicAccessBlockConfiguration sets the PublicAccessBlockConfiguration field's value. -func (s *AwsS3BucketDetails) SetPublicAccessBlockConfiguration(v *AwsS3AccountPublicAccessBlockDetails) *AwsS3BucketDetails { - s.PublicAccessBlockConfiguration = v +// SetStatus sets the Status field's value. +func (s *AwsRdsEventSubscriptionDetails) SetStatus(v string) *AwsRdsEventSubscriptionDetails { + s.Status = &v return s } -// SetServerSideEncryptionConfiguration sets the ServerSideEncryptionConfiguration field's value. -func (s *AwsS3BucketDetails) SetServerSideEncryptionConfiguration(v *AwsS3BucketServerSideEncryptionConfiguration) *AwsS3BucketDetails { - s.ServerSideEncryptionConfiguration = v +// SetSubscriptionCreationTime sets the SubscriptionCreationTime field's value. +func (s *AwsRdsEventSubscriptionDetails) SetSubscriptionCreationTime(v string) *AwsRdsEventSubscriptionDetails { + s.SubscriptionCreationTime = &v return s } -// Information about logging for the S3 bucket -type AwsS3BucketLoggingConfiguration struct { +// Identifies the log types to enable and disable. +type AwsRdsPendingCloudWatchLogsExports struct { _ struct{} `type:"structure"` - // The name of the S3 bucket where log files for the S3 bucket are stored. - DestinationBucketName *string `type:"string"` + // A list of log types that are being disabled. + LogTypesToDisable []*string `type:"list"` - // The prefix added to log files for the S3 bucket. - LogFilePrefix *string `type:"string"` + // A list of log types that are being enabled. + LogTypesToEnable []*string `type:"list"` } // String returns the string representation. @@ -30854,7 +30803,7 @@ type AwsS3BucketLoggingConfiguration struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketLoggingConfiguration) String() string { +func (s AwsRdsPendingCloudWatchLogsExports) String() string { return awsutil.Prettify(s) } @@ -30863,28 +30812,34 @@ func (s AwsS3BucketLoggingConfiguration) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketLoggingConfiguration) GoString() string { +func (s AwsRdsPendingCloudWatchLogsExports) GoString() string { return s.String() } -// SetDestinationBucketName sets the DestinationBucketName field's value. -func (s *AwsS3BucketLoggingConfiguration) SetDestinationBucketName(v string) *AwsS3BucketLoggingConfiguration { - s.DestinationBucketName = &v +// SetLogTypesToDisable sets the LogTypesToDisable field's value. +func (s *AwsRdsPendingCloudWatchLogsExports) SetLogTypesToDisable(v []*string) *AwsRdsPendingCloudWatchLogsExports { + s.LogTypesToDisable = v return s } -// SetLogFilePrefix sets the LogFilePrefix field's value. -func (s *AwsS3BucketLoggingConfiguration) SetLogFilePrefix(v string) *AwsS3BucketLoggingConfiguration { - s.LogFilePrefix = &v +// SetLogTypesToEnable sets the LogTypesToEnable field's value. +func (s *AwsRdsPendingCloudWatchLogsExports) SetLogTypesToEnable(v []*string) *AwsRdsPendingCloudWatchLogsExports { + s.LogTypesToEnable = v return s } -// The notification configuration for the S3 bucket. -type AwsS3BucketNotificationConfiguration struct { +// A node in an Amazon Redshift cluster. +type AwsRedshiftClusterClusterNode struct { _ struct{} `type:"structure"` - // Configurations for S3 bucket notifications. - Configurations []*AwsS3BucketNotificationConfigurationDetail `type:"list"` + // The role of the node. A node might be a leader node or a compute node. + NodeRole *string `type:"string"` + + // The private IP address of the node. + PrivateIpAddress *string `type:"string"` + + // The public IP address of the node. + PublicIpAddress *string `type:"string"` } // String returns the string representation. @@ -30892,7 +30847,7 @@ type AwsS3BucketNotificationConfiguration struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketNotificationConfiguration) String() string { +func (s AwsRedshiftClusterClusterNode) String() string { return awsutil.Prettify(s) } @@ -30901,40 +30856,40 @@ func (s AwsS3BucketNotificationConfiguration) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketNotificationConfiguration) GoString() string { +func (s AwsRedshiftClusterClusterNode) GoString() string { return s.String() } -// SetConfigurations sets the Configurations field's value. -func (s *AwsS3BucketNotificationConfiguration) SetConfigurations(v []*AwsS3BucketNotificationConfigurationDetail) *AwsS3BucketNotificationConfiguration { - s.Configurations = v +// SetNodeRole sets the NodeRole field's value. +func (s *AwsRedshiftClusterClusterNode) SetNodeRole(v string) *AwsRedshiftClusterClusterNode { + s.NodeRole = &v return s } -// Details for an S3 bucket notification configuration. -type AwsS3BucketNotificationConfigurationDetail struct { - _ struct{} `type:"structure"` +// SetPrivateIpAddress sets the PrivateIpAddress field's value. +func (s *AwsRedshiftClusterClusterNode) SetPrivateIpAddress(v string) *AwsRedshiftClusterClusterNode { + s.PrivateIpAddress = &v + return s +} - // The ARN of the Lambda function, Amazon SQS queue, or Amazon SNS topic that - // generates the notification. - Destination *string `type:"string"` +// SetPublicIpAddress sets the PublicIpAddress field's value. +func (s *AwsRedshiftClusterClusterNode) SetPublicIpAddress(v string) *AwsRedshiftClusterClusterNode { + s.PublicIpAddress = &v + return s +} - // The list of events that trigger a notification. - Events []*string `type:"list"` +// A cluster parameter group that is associated with an Amazon Redshift cluster. +type AwsRedshiftClusterClusterParameterGroup struct { + _ struct{} `type:"structure"` - // The filters that determine which S3 buckets generate notifications. - Filter *AwsS3BucketNotificationConfigurationFilter `type:"structure"` + // The list of parameter statuses. + ClusterParameterStatusList []*AwsRedshiftClusterClusterParameterStatus `type:"list"` - // Indicates the type of notification. Notifications can be generated using - // Lambda functions, Amazon SQS queues, or Amazon SNS topics, with corresponding - // valid values as follows: - // - // * LambdaConfiguration - // - // * QueueConfiguration - // - // * TopicConfiguration - Type *string `type:"string"` + // The status of updates to the parameters. + ParameterApplyStatus *string `type:"string"` + + // The name of the parameter group. + ParameterGroupName *string `type:"string"` } // String returns the string representation. @@ -30942,7 +30897,7 @@ type AwsS3BucketNotificationConfigurationDetail struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketNotificationConfigurationDetail) String() string { +func (s AwsRedshiftClusterClusterParameterGroup) String() string { return awsutil.Prettify(s) } @@ -30951,41 +30906,46 @@ func (s AwsS3BucketNotificationConfigurationDetail) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketNotificationConfigurationDetail) GoString() string { +func (s AwsRedshiftClusterClusterParameterGroup) GoString() string { return s.String() } -// SetDestination sets the Destination field's value. -func (s *AwsS3BucketNotificationConfigurationDetail) SetDestination(v string) *AwsS3BucketNotificationConfigurationDetail { - s.Destination = &v - return s -} - -// SetEvents sets the Events field's value. -func (s *AwsS3BucketNotificationConfigurationDetail) SetEvents(v []*string) *AwsS3BucketNotificationConfigurationDetail { - s.Events = v +// SetClusterParameterStatusList sets the ClusterParameterStatusList field's value. +func (s *AwsRedshiftClusterClusterParameterGroup) SetClusterParameterStatusList(v []*AwsRedshiftClusterClusterParameterStatus) *AwsRedshiftClusterClusterParameterGroup { + s.ClusterParameterStatusList = v return s } -// SetFilter sets the Filter field's value. -func (s *AwsS3BucketNotificationConfigurationDetail) SetFilter(v *AwsS3BucketNotificationConfigurationFilter) *AwsS3BucketNotificationConfigurationDetail { - s.Filter = v +// SetParameterApplyStatus sets the ParameterApplyStatus field's value. +func (s *AwsRedshiftClusterClusterParameterGroup) SetParameterApplyStatus(v string) *AwsRedshiftClusterClusterParameterGroup { + s.ParameterApplyStatus = &v return s } -// SetType sets the Type field's value. -func (s *AwsS3BucketNotificationConfigurationDetail) SetType(v string) *AwsS3BucketNotificationConfigurationDetail { - s.Type = &v +// SetParameterGroupName sets the ParameterGroupName field's value. +func (s *AwsRedshiftClusterClusterParameterGroup) SetParameterGroupName(v string) *AwsRedshiftClusterClusterParameterGroup { + s.ParameterGroupName = &v return s } -// Filtering information for the notifications. The filtering is based on Amazon -// S3 key names. -type AwsS3BucketNotificationConfigurationFilter struct { +// The status of a parameter in a cluster parameter group for an Amazon Redshift +// cluster. +type AwsRedshiftClusterClusterParameterStatus struct { _ struct{} `type:"structure"` - // Details for an Amazon S3 filter. - S3KeyFilter *AwsS3BucketNotificationConfigurationS3KeyFilter `type:"structure"` + // The error that prevented the parameter from being applied to the database. + ParameterApplyErrorDescription *string `type:"string"` + + // The status of the parameter. Indicates whether the parameter is in sync with + // the database, waiting for a cluster reboot, or encountered an error when + // it was applied. + // + // Valid values: in-sync | pending-reboot | applying | invalid-parameter | apply-deferred + // | apply-error | unknown-error + ParameterApplyStatus *string `type:"string"` + + // The name of the parameter. + ParameterName *string `type:"string"` } // String returns the string representation. @@ -30993,7 +30953,7 @@ type AwsS3BucketNotificationConfigurationFilter struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketNotificationConfigurationFilter) String() string { +func (s AwsRedshiftClusterClusterParameterStatus) String() string { return awsutil.Prettify(s) } @@ -31002,22 +30962,37 @@ func (s AwsS3BucketNotificationConfigurationFilter) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketNotificationConfigurationFilter) GoString() string { +func (s AwsRedshiftClusterClusterParameterStatus) GoString() string { return s.String() } -// SetS3KeyFilter sets the S3KeyFilter field's value. -func (s *AwsS3BucketNotificationConfigurationFilter) SetS3KeyFilter(v *AwsS3BucketNotificationConfigurationS3KeyFilter) *AwsS3BucketNotificationConfigurationFilter { - s.S3KeyFilter = v +// SetParameterApplyErrorDescription sets the ParameterApplyErrorDescription field's value. +func (s *AwsRedshiftClusterClusterParameterStatus) SetParameterApplyErrorDescription(v string) *AwsRedshiftClusterClusterParameterStatus { + s.ParameterApplyErrorDescription = &v return s } -// Details for an Amazon S3 filter. -type AwsS3BucketNotificationConfigurationS3KeyFilter struct { +// SetParameterApplyStatus sets the ParameterApplyStatus field's value. +func (s *AwsRedshiftClusterClusterParameterStatus) SetParameterApplyStatus(v string) *AwsRedshiftClusterClusterParameterStatus { + s.ParameterApplyStatus = &v + return s +} + +// SetParameterName sets the ParameterName field's value. +func (s *AwsRedshiftClusterClusterParameterStatus) SetParameterName(v string) *AwsRedshiftClusterClusterParameterStatus { + s.ParameterName = &v + return s +} + +// A security group that is associated with the cluster. +type AwsRedshiftClusterClusterSecurityGroup struct { _ struct{} `type:"structure"` - // The filter rules for the filter. - FilterRules []*AwsS3BucketNotificationConfigurationS3KeyFilterRule `type:"list"` + // The name of the cluster security group. + ClusterSecurityGroupName *string `type:"string"` + + // The status of the cluster security group. + Status *string `type:"string"` } // String returns the string representation. @@ -31025,7 +31000,7 @@ type AwsS3BucketNotificationConfigurationS3KeyFilter struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketNotificationConfigurationS3KeyFilter) String() string { +func (s AwsRedshiftClusterClusterSecurityGroup) String() string { return awsutil.Prettify(s) } @@ -31034,26 +31009,44 @@ func (s AwsS3BucketNotificationConfigurationS3KeyFilter) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketNotificationConfigurationS3KeyFilter) GoString() string { +func (s AwsRedshiftClusterClusterSecurityGroup) GoString() string { return s.String() } -// SetFilterRules sets the FilterRules field's value. -func (s *AwsS3BucketNotificationConfigurationS3KeyFilter) SetFilterRules(v []*AwsS3BucketNotificationConfigurationS3KeyFilterRule) *AwsS3BucketNotificationConfigurationS3KeyFilter { - s.FilterRules = v +// SetClusterSecurityGroupName sets the ClusterSecurityGroupName field's value. +func (s *AwsRedshiftClusterClusterSecurityGroup) SetClusterSecurityGroupName(v string) *AwsRedshiftClusterClusterSecurityGroup { + s.ClusterSecurityGroupName = &v return s } -// Details for a filter rule. -type AwsS3BucketNotificationConfigurationS3KeyFilterRule struct { - _ struct{} `type:"structure"` - - // Indicates whether the filter is based on the prefix or suffix of the Amazon - // S3 key. - Name *string `type:"string" enum:"AwsS3BucketNotificationConfigurationS3KeyFilterRuleName"` +// SetStatus sets the Status field's value. +func (s *AwsRedshiftClusterClusterSecurityGroup) SetStatus(v string) *AwsRedshiftClusterClusterSecurityGroup { + s.Status = &v + return s +} - // The filter value. - Value *string `type:"string"` +// Information about a cross-Region snapshot copy. +type AwsRedshiftClusterClusterSnapshotCopyStatus struct { + _ struct{} `type:"structure"` + + // The destination Region that snapshots are automatically copied to when cross-Region + // snapshot copy is enabled. + DestinationRegion *string `type:"string"` + + // The number of days that manual snapshots are retained in the destination + // region after they are copied from a source region. + // + // If the value is -1, then the manual snapshot is retained indefinitely. + // + // Valid values: Either -1 or an integer between 1 and 3,653 + ManualSnapshotRetentionPeriod *int64 `type:"integer"` + + // The number of days to retain automated snapshots in the destination Region + // after they are copied from a source Region. + RetentionPeriod *int64 `type:"integer"` + + // The name of the snapshot copy grant. + SnapshotCopyGrantName *string `type:"string"` } // String returns the string representation. @@ -31061,7 +31054,7 @@ type AwsS3BucketNotificationConfigurationS3KeyFilterRule struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketNotificationConfigurationS3KeyFilterRule) String() string { +func (s AwsRedshiftClusterClusterSnapshotCopyStatus) String() string { return awsutil.Prettify(s) } @@ -31070,33 +31063,55 @@ func (s AwsS3BucketNotificationConfigurationS3KeyFilterRule) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketNotificationConfigurationS3KeyFilterRule) GoString() string { +func (s AwsRedshiftClusterClusterSnapshotCopyStatus) GoString() string { return s.String() } -// SetName sets the Name field's value. -func (s *AwsS3BucketNotificationConfigurationS3KeyFilterRule) SetName(v string) *AwsS3BucketNotificationConfigurationS3KeyFilterRule { - s.Name = &v +// SetDestinationRegion sets the DestinationRegion field's value. +func (s *AwsRedshiftClusterClusterSnapshotCopyStatus) SetDestinationRegion(v string) *AwsRedshiftClusterClusterSnapshotCopyStatus { + s.DestinationRegion = &v return s } -// SetValue sets the Value field's value. -func (s *AwsS3BucketNotificationConfigurationS3KeyFilterRule) SetValue(v string) *AwsS3BucketNotificationConfigurationS3KeyFilterRule { - s.Value = &v +// SetManualSnapshotRetentionPeriod sets the ManualSnapshotRetentionPeriod field's value. +func (s *AwsRedshiftClusterClusterSnapshotCopyStatus) SetManualSnapshotRetentionPeriod(v int64) *AwsRedshiftClusterClusterSnapshotCopyStatus { + s.ManualSnapshotRetentionPeriod = &v return s } -// Specifies the default server-side encryption to apply to new objects in the -// bucket. -type AwsS3BucketServerSideEncryptionByDefault struct { +// SetRetentionPeriod sets the RetentionPeriod field's value. +func (s *AwsRedshiftClusterClusterSnapshotCopyStatus) SetRetentionPeriod(v int64) *AwsRedshiftClusterClusterSnapshotCopyStatus { + s.RetentionPeriod = &v + return s +} + +// SetSnapshotCopyGrantName sets the SnapshotCopyGrantName field's value. +func (s *AwsRedshiftClusterClusterSnapshotCopyStatus) SetSnapshotCopyGrantName(v string) *AwsRedshiftClusterClusterSnapshotCopyStatus { + s.SnapshotCopyGrantName = &v + return s +} + +// A time windows during which maintenance was deferred for an Amazon Redshift +// cluster. +type AwsRedshiftClusterDeferredMaintenanceWindow struct { _ struct{} `type:"structure"` - // KMS key ID to use for the default encryption. - KMSMasterKeyID *string `type:"string"` + // The end of the time window for which maintenance was deferred. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + DeferMaintenanceEndTime *string `type:"string"` - // Server-side encryption algorithm to use for the default encryption. Valid - // values are aws: kms or AES256. - SSEAlgorithm *string `type:"string"` + // The identifier of the maintenance window. + DeferMaintenanceIdentifier *string `type:"string"` + + // The start of the time window for which maintenance was deferred. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + DeferMaintenanceStartTime *string `type:"string"` } // String returns the string representation. @@ -31104,7 +31119,7 @@ type AwsS3BucketServerSideEncryptionByDefault struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketServerSideEncryptionByDefault) String() string { +func (s AwsRedshiftClusterDeferredMaintenanceWindow) String() string { return awsutil.Prettify(s) } @@ -31113,103 +31128,229 @@ func (s AwsS3BucketServerSideEncryptionByDefault) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketServerSideEncryptionByDefault) GoString() string { +func (s AwsRedshiftClusterDeferredMaintenanceWindow) GoString() string { return s.String() } -// SetKMSMasterKeyID sets the KMSMasterKeyID field's value. -func (s *AwsS3BucketServerSideEncryptionByDefault) SetKMSMasterKeyID(v string) *AwsS3BucketServerSideEncryptionByDefault { - s.KMSMasterKeyID = &v +// SetDeferMaintenanceEndTime sets the DeferMaintenanceEndTime field's value. +func (s *AwsRedshiftClusterDeferredMaintenanceWindow) SetDeferMaintenanceEndTime(v string) *AwsRedshiftClusterDeferredMaintenanceWindow { + s.DeferMaintenanceEndTime = &v return s } -// SetSSEAlgorithm sets the SSEAlgorithm field's value. -func (s *AwsS3BucketServerSideEncryptionByDefault) SetSSEAlgorithm(v string) *AwsS3BucketServerSideEncryptionByDefault { - s.SSEAlgorithm = &v +// SetDeferMaintenanceIdentifier sets the DeferMaintenanceIdentifier field's value. +func (s *AwsRedshiftClusterDeferredMaintenanceWindow) SetDeferMaintenanceIdentifier(v string) *AwsRedshiftClusterDeferredMaintenanceWindow { + s.DeferMaintenanceIdentifier = &v return s } -// The encryption configuration for the S3 bucket. -type AwsS3BucketServerSideEncryptionConfiguration struct { +// SetDeferMaintenanceStartTime sets the DeferMaintenanceStartTime field's value. +func (s *AwsRedshiftClusterDeferredMaintenanceWindow) SetDeferMaintenanceStartTime(v string) *AwsRedshiftClusterDeferredMaintenanceWindow { + s.DeferMaintenanceStartTime = &v + return s +} + +// Details about an Amazon Redshift cluster. +type AwsRedshiftClusterDetails struct { _ struct{} `type:"structure"` - // The encryption rules that are applied to the S3 bucket. - Rules []*AwsS3BucketServerSideEncryptionRule `type:"list"` -} + // Indicates whether major version upgrades are applied automatically to the + // cluster during the maintenance window. + AllowVersionUpgrade *bool `type:"boolean"` -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsS3BucketServerSideEncryptionConfiguration) String() string { - return awsutil.Prettify(s) -} + // The number of days that automatic cluster snapshots are retained. + AutomatedSnapshotRetentionPeriod *int64 `type:"integer"` -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsS3BucketServerSideEncryptionConfiguration) GoString() string { - return s.String() -} + // The name of the Availability Zone in which the cluster is located. + AvailabilityZone *string `type:"string"` -// SetRules sets the Rules field's value. -func (s *AwsS3BucketServerSideEncryptionConfiguration) SetRules(v []*AwsS3BucketServerSideEncryptionRule) *AwsS3BucketServerSideEncryptionConfiguration { - s.Rules = v - return s -} + // The availability status of the cluster for queries. Possible values are the + // following: + // + // * Available - The cluster is available for queries. + // + // * Unavailable - The cluster is not available for queries. + // + // * Maintenance - The cluster is intermittently available for queries due + // to maintenance activities. + // + // * Modifying -The cluster is intermittently available for queries due to + // changes that modify the cluster. + // + // * Failed - The cluster failed and is not available for queries. + ClusterAvailabilityStatus *string `type:"string"` -// An encryption rule to apply to the S3 bucket. -type AwsS3BucketServerSideEncryptionRule struct { - _ struct{} `type:"structure"` + // Indicates when the cluster was created. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + ClusterCreateTime *string `type:"string"` - // Specifies the default server-side encryption to apply to new objects in the - // bucket. If a PUT object request doesn't specify any server-side encryption, - // this default encryption is applied. - ApplyServerSideEncryptionByDefault *AwsS3BucketServerSideEncryptionByDefault `type:"structure"` -} + // The unique identifier of the cluster. + ClusterIdentifier *string `type:"string"` -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsS3BucketServerSideEncryptionRule) String() string { - return awsutil.Prettify(s) -} + // The nodes in the cluster. + ClusterNodes []*AwsRedshiftClusterClusterNode `type:"list"` -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsS3BucketServerSideEncryptionRule) GoString() string { - return s.String() -} + // The list of cluster parameter groups that are associated with this cluster. + ClusterParameterGroups []*AwsRedshiftClusterClusterParameterGroup `type:"list"` -// SetApplyServerSideEncryptionByDefault sets the ApplyServerSideEncryptionByDefault field's value. -func (s *AwsS3BucketServerSideEncryptionRule) SetApplyServerSideEncryptionByDefault(v *AwsS3BucketServerSideEncryptionByDefault) *AwsS3BucketServerSideEncryptionRule { - s.ApplyServerSideEncryptionByDefault = v - return s -} + // The public key for the cluster. + ClusterPublicKey *string `type:"string"` -// Website parameters for the S3 bucket. -type AwsS3BucketWebsiteConfiguration struct { - _ struct{} `type:"structure"` + // The specific revision number of the database in the cluster. + ClusterRevisionNumber *string `type:"string"` - // The name of the error document for the website. - ErrorDocument *string `type:"string"` + // A list of cluster security groups that are associated with the cluster. + ClusterSecurityGroups []*AwsRedshiftClusterClusterSecurityGroup `type:"list"` - // The name of the index document for the website. - IndexDocumentSuffix *string `type:"string"` + // Information about the destination Region and retention period for the cross-Region + // snapshot copy. + ClusterSnapshotCopyStatus *AwsRedshiftClusterClusterSnapshotCopyStatus `type:"structure"` - // The redirect behavior for requests to the website. - RedirectAllRequestsTo *AwsS3BucketWebsiteConfigurationRedirectTo `type:"structure"` + // The current status of the cluster. + // + // Valid values: available | available, prep-for-resize | available, resize-cleanup + // |cancelling-resize | creating | deleting | final-snapshot | hardware-failure + // | incompatible-hsm |incompatible-network | incompatible-parameters | incompatible-restore + // | modifying | paused | rebooting | renaming | resizing | rotating-keys | + // storage-full | updating-hsm + ClusterStatus *string `type:"string"` - // The rules for applying redirects for requests to the website. - RoutingRules []*AwsS3BucketWebsiteConfigurationRoutingRule `type:"list"` + // The name of the subnet group that is associated with the cluster. This parameter + // is valid only when the cluster is in a VPC. + ClusterSubnetGroupName *string `type:"string"` + + // The version ID of the Amazon Redshift engine that runs on the cluster. + ClusterVersion *string `type:"string"` + + // The name of the initial database that was created when the cluster was created. + // + // The same name is returned for the life of the cluster. + // + // If an initial database is not specified, a database named devdev is created + // by default. + DBName *string `type:"string"` + + // List of time windows during which maintenance was deferred. + DeferredMaintenanceWindows []*AwsRedshiftClusterDeferredMaintenanceWindow `type:"list"` + + // Information about the status of the Elastic IP (EIP) address. + ElasticIpStatus *AwsRedshiftClusterElasticIpStatus `type:"structure"` + + // The number of nodes that you can use the elastic resize method to resize + // the cluster to. + ElasticResizeNumberOfNodeOptions *string `type:"string"` + + // Indicates whether the data in the cluster is encrypted at rest. + Encrypted *bool `type:"boolean"` + + // The connection endpoint. + Endpoint *AwsRedshiftClusterEndpoint `type:"structure"` + + // Indicates whether to create the cluster with enhanced VPC routing enabled. + EnhancedVpcRouting *bool `type:"boolean"` + + // Indicates when the next snapshot is expected to be taken. The cluster must + // have a valid snapshot schedule and have backups enabled. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + ExpectedNextSnapshotScheduleTime *string `type:"string"` + + // The status of the next expected snapshot. + // + // Valid values: OnTrack | Pending + ExpectedNextSnapshotScheduleTimeStatus *string `type:"string"` + + // Information about whether the Amazon Redshift cluster finished applying any + // changes to hardware security module (HSM) settings that were specified in + // a modify cluster command. + HsmStatus *AwsRedshiftClusterHsmStatus `type:"structure"` + + // A list of IAM roles that the cluster can use to access other Amazon Web Services + // services. + IamRoles []*AwsRedshiftClusterIamRole `type:"list"` + + // The identifier of the KMS encryption key that is used to encrypt data in + // the cluster. + KmsKeyId *string `type:"string"` + + // Information about the logging status of the cluster. + LoggingStatus *AwsRedshiftClusterLoggingStatus `type:"structure"` + + // The name of the maintenance track for the cluster. + MaintenanceTrackName *string `type:"string"` + + // The default number of days to retain a manual snapshot. + // + // If the value is -1, the snapshot is retained indefinitely. + // + // This setting doesn't change the retention period of existing snapshots. + // + // Valid values: Either -1 or an integer between 1 and 3,653 + ManualSnapshotRetentionPeriod *int64 `type:"integer"` + + // The master user name for the cluster. This name is used to connect to the + // database that is specified in as the value of DBName. + MasterUsername *string `type:"string"` + + // Indicates the start of the next maintenance window. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + NextMaintenanceWindowStartTime *string `type:"string"` + + // The node type for the nodes in the cluster. + NodeType *string `type:"string"` + + // The number of compute nodes in the cluster. + NumberOfNodes *int64 `type:"integer"` + + // A list of cluster operations that are waiting to start. + PendingActions []*string `type:"list"` + + // A list of changes to the cluster that are currently pending. + PendingModifiedValues *AwsRedshiftClusterPendingModifiedValues `type:"structure"` + + // The weekly time range, in Universal Coordinated Time (UTC), during which + // system maintenance can occur. + // + // Format: :HH:MM-:HH:MM + // + // For the day values, use mon | tue | wed | thu | fri | sat | sun + // + // For example, sun:09:32-sun:10:02 + PreferredMaintenanceWindow *string `type:"string"` + + // Whether the cluster can be accessed from a public network. + PubliclyAccessible *bool `type:"boolean"` + + // Information about the resize operation for the cluster. + ResizeInfo *AwsRedshiftClusterResizeInfo `type:"structure"` + + // Information about the status of a cluster restore action. Only applies to + // a cluster that was created by restoring a snapshot. + RestoreStatus *AwsRedshiftClusterRestoreStatus `type:"structure"` + + // A unique identifier for the cluster snapshot schedule. + SnapshotScheduleIdentifier *string `type:"string"` + + // The current state of the cluster snapshot schedule. + // + // Valid values: MODIFYING | ACTIVE | FAILED + SnapshotScheduleState *string `type:"string"` + + // The identifier of the VPC that the cluster is in, if the cluster is in a + // VPC. + VpcId *string `type:"string"` + + // The list of VPC security groups that the cluster belongs to, if the cluster + // is in a VPC. + VpcSecurityGroups []*AwsRedshiftClusterVpcSecurityGroup `type:"list"` } // String returns the string representation. @@ -31217,7 +31358,7 @@ type AwsS3BucketWebsiteConfiguration struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketWebsiteConfiguration) String() string { +func (s AwsRedshiftClusterDetails) String() string { return awsutil.Prettify(s) } @@ -31226,135 +31367,291 @@ func (s AwsS3BucketWebsiteConfiguration) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketWebsiteConfiguration) GoString() string { +func (s AwsRedshiftClusterDetails) GoString() string { return s.String() } -// SetErrorDocument sets the ErrorDocument field's value. -func (s *AwsS3BucketWebsiteConfiguration) SetErrorDocument(v string) *AwsS3BucketWebsiteConfiguration { - s.ErrorDocument = &v +// SetAllowVersionUpgrade sets the AllowVersionUpgrade field's value. +func (s *AwsRedshiftClusterDetails) SetAllowVersionUpgrade(v bool) *AwsRedshiftClusterDetails { + s.AllowVersionUpgrade = &v return s } -// SetIndexDocumentSuffix sets the IndexDocumentSuffix field's value. -func (s *AwsS3BucketWebsiteConfiguration) SetIndexDocumentSuffix(v string) *AwsS3BucketWebsiteConfiguration { - s.IndexDocumentSuffix = &v +// SetAutomatedSnapshotRetentionPeriod sets the AutomatedSnapshotRetentionPeriod field's value. +func (s *AwsRedshiftClusterDetails) SetAutomatedSnapshotRetentionPeriod(v int64) *AwsRedshiftClusterDetails { + s.AutomatedSnapshotRetentionPeriod = &v return s } -// SetRedirectAllRequestsTo sets the RedirectAllRequestsTo field's value. -func (s *AwsS3BucketWebsiteConfiguration) SetRedirectAllRequestsTo(v *AwsS3BucketWebsiteConfigurationRedirectTo) *AwsS3BucketWebsiteConfiguration { - s.RedirectAllRequestsTo = v +// SetAvailabilityZone sets the AvailabilityZone field's value. +func (s *AwsRedshiftClusterDetails) SetAvailabilityZone(v string) *AwsRedshiftClusterDetails { + s.AvailabilityZone = &v return s } -// SetRoutingRules sets the RoutingRules field's value. -func (s *AwsS3BucketWebsiteConfiguration) SetRoutingRules(v []*AwsS3BucketWebsiteConfigurationRoutingRule) *AwsS3BucketWebsiteConfiguration { - s.RoutingRules = v +// SetClusterAvailabilityStatus sets the ClusterAvailabilityStatus field's value. +func (s *AwsRedshiftClusterDetails) SetClusterAvailabilityStatus(v string) *AwsRedshiftClusterDetails { + s.ClusterAvailabilityStatus = &v return s } -// The redirect behavior for requests to the website. -type AwsS3BucketWebsiteConfigurationRedirectTo struct { - _ struct{} `type:"structure"` - - // The name of the host to redirect requests to. - Hostname *string `type:"string"` - - // The protocol to use when redirecting requests. By default, this field uses - // the same protocol as the original request. Valid values are http or https. - Protocol *string `type:"string"` +// SetClusterCreateTime sets the ClusterCreateTime field's value. +func (s *AwsRedshiftClusterDetails) SetClusterCreateTime(v string) *AwsRedshiftClusterDetails { + s.ClusterCreateTime = &v + return s } -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsS3BucketWebsiteConfigurationRedirectTo) String() string { - return awsutil.Prettify(s) +// SetClusterIdentifier sets the ClusterIdentifier field's value. +func (s *AwsRedshiftClusterDetails) SetClusterIdentifier(v string) *AwsRedshiftClusterDetails { + s.ClusterIdentifier = &v + return s } -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsS3BucketWebsiteConfigurationRedirectTo) GoString() string { - return s.String() +// SetClusterNodes sets the ClusterNodes field's value. +func (s *AwsRedshiftClusterDetails) SetClusterNodes(v []*AwsRedshiftClusterClusterNode) *AwsRedshiftClusterDetails { + s.ClusterNodes = v + return s } -// SetHostname sets the Hostname field's value. -func (s *AwsS3BucketWebsiteConfigurationRedirectTo) SetHostname(v string) *AwsS3BucketWebsiteConfigurationRedirectTo { - s.Hostname = &v +// SetClusterParameterGroups sets the ClusterParameterGroups field's value. +func (s *AwsRedshiftClusterDetails) SetClusterParameterGroups(v []*AwsRedshiftClusterClusterParameterGroup) *AwsRedshiftClusterDetails { + s.ClusterParameterGroups = v return s } -// SetProtocol sets the Protocol field's value. -func (s *AwsS3BucketWebsiteConfigurationRedirectTo) SetProtocol(v string) *AwsS3BucketWebsiteConfigurationRedirectTo { - s.Protocol = &v +// SetClusterPublicKey sets the ClusterPublicKey field's value. +func (s *AwsRedshiftClusterDetails) SetClusterPublicKey(v string) *AwsRedshiftClusterDetails { + s.ClusterPublicKey = &v return s } -// A rule for redirecting requests to the website. -type AwsS3BucketWebsiteConfigurationRoutingRule struct { - _ struct{} `type:"structure"` +// SetClusterRevisionNumber sets the ClusterRevisionNumber field's value. +func (s *AwsRedshiftClusterDetails) SetClusterRevisionNumber(v string) *AwsRedshiftClusterDetails { + s.ClusterRevisionNumber = &v + return s +} - // Provides the condition that must be met in order to apply the routing rule. - Condition *AwsS3BucketWebsiteConfigurationRoutingRuleCondition `type:"structure"` +// SetClusterSecurityGroups sets the ClusterSecurityGroups field's value. +func (s *AwsRedshiftClusterDetails) SetClusterSecurityGroups(v []*AwsRedshiftClusterClusterSecurityGroup) *AwsRedshiftClusterDetails { + s.ClusterSecurityGroups = v + return s +} - // Provides the rules to redirect the request if the condition in Condition - // is met. - Redirect *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect `type:"structure"` +// SetClusterSnapshotCopyStatus sets the ClusterSnapshotCopyStatus field's value. +func (s *AwsRedshiftClusterDetails) SetClusterSnapshotCopyStatus(v *AwsRedshiftClusterClusterSnapshotCopyStatus) *AwsRedshiftClusterDetails { + s.ClusterSnapshotCopyStatus = v + return s } -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsS3BucketWebsiteConfigurationRoutingRule) String() string { - return awsutil.Prettify(s) +// SetClusterStatus sets the ClusterStatus field's value. +func (s *AwsRedshiftClusterDetails) SetClusterStatus(v string) *AwsRedshiftClusterDetails { + s.ClusterStatus = &v + return s } -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsS3BucketWebsiteConfigurationRoutingRule) GoString() string { - return s.String() +// SetClusterSubnetGroupName sets the ClusterSubnetGroupName field's value. +func (s *AwsRedshiftClusterDetails) SetClusterSubnetGroupName(v string) *AwsRedshiftClusterDetails { + s.ClusterSubnetGroupName = &v + return s } -// SetCondition sets the Condition field's value. -func (s *AwsS3BucketWebsiteConfigurationRoutingRule) SetCondition(v *AwsS3BucketWebsiteConfigurationRoutingRuleCondition) *AwsS3BucketWebsiteConfigurationRoutingRule { - s.Condition = v +// SetClusterVersion sets the ClusterVersion field's value. +func (s *AwsRedshiftClusterDetails) SetClusterVersion(v string) *AwsRedshiftClusterDetails { + s.ClusterVersion = &v return s } -// SetRedirect sets the Redirect field's value. -func (s *AwsS3BucketWebsiteConfigurationRoutingRule) SetRedirect(v *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect) *AwsS3BucketWebsiteConfigurationRoutingRule { - s.Redirect = v +// SetDBName sets the DBName field's value. +func (s *AwsRedshiftClusterDetails) SetDBName(v string) *AwsRedshiftClusterDetails { + s.DBName = &v return s } -// The condition that must be met in order to apply the routing rule. -type AwsS3BucketWebsiteConfigurationRoutingRuleCondition struct { - _ struct{} `type:"structure"` +// SetDeferredMaintenanceWindows sets the DeferredMaintenanceWindows field's value. +func (s *AwsRedshiftClusterDetails) SetDeferredMaintenanceWindows(v []*AwsRedshiftClusterDeferredMaintenanceWindow) *AwsRedshiftClusterDetails { + s.DeferredMaintenanceWindows = v + return s +} - // Indicates to redirect the request if the HTTP error code matches this value. - HttpErrorCodeReturnedEquals *string `type:"string"` +// SetElasticIpStatus sets the ElasticIpStatus field's value. +func (s *AwsRedshiftClusterDetails) SetElasticIpStatus(v *AwsRedshiftClusterElasticIpStatus) *AwsRedshiftClusterDetails { + s.ElasticIpStatus = v + return s +} - // Indicates to redirect the request if the key prefix matches this value. - KeyPrefixEquals *string `type:"string"` +// SetElasticResizeNumberOfNodeOptions sets the ElasticResizeNumberOfNodeOptions field's value. +func (s *AwsRedshiftClusterDetails) SetElasticResizeNumberOfNodeOptions(v string) *AwsRedshiftClusterDetails { + s.ElasticResizeNumberOfNodeOptions = &v + return s } -// String returns the string representation. -// +// SetEncrypted sets the Encrypted field's value. +func (s *AwsRedshiftClusterDetails) SetEncrypted(v bool) *AwsRedshiftClusterDetails { + s.Encrypted = &v + return s +} + +// SetEndpoint sets the Endpoint field's value. +func (s *AwsRedshiftClusterDetails) SetEndpoint(v *AwsRedshiftClusterEndpoint) *AwsRedshiftClusterDetails { + s.Endpoint = v + return s +} + +// SetEnhancedVpcRouting sets the EnhancedVpcRouting field's value. +func (s *AwsRedshiftClusterDetails) SetEnhancedVpcRouting(v bool) *AwsRedshiftClusterDetails { + s.EnhancedVpcRouting = &v + return s +} + +// SetExpectedNextSnapshotScheduleTime sets the ExpectedNextSnapshotScheduleTime field's value. +func (s *AwsRedshiftClusterDetails) SetExpectedNextSnapshotScheduleTime(v string) *AwsRedshiftClusterDetails { + s.ExpectedNextSnapshotScheduleTime = &v + return s +} + +// SetExpectedNextSnapshotScheduleTimeStatus sets the ExpectedNextSnapshotScheduleTimeStatus field's value. +func (s *AwsRedshiftClusterDetails) SetExpectedNextSnapshotScheduleTimeStatus(v string) *AwsRedshiftClusterDetails { + s.ExpectedNextSnapshotScheduleTimeStatus = &v + return s +} + +// SetHsmStatus sets the HsmStatus field's value. +func (s *AwsRedshiftClusterDetails) SetHsmStatus(v *AwsRedshiftClusterHsmStatus) *AwsRedshiftClusterDetails { + s.HsmStatus = v + return s +} + +// SetIamRoles sets the IamRoles field's value. +func (s *AwsRedshiftClusterDetails) SetIamRoles(v []*AwsRedshiftClusterIamRole) *AwsRedshiftClusterDetails { + s.IamRoles = v + return s +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *AwsRedshiftClusterDetails) SetKmsKeyId(v string) *AwsRedshiftClusterDetails { + s.KmsKeyId = &v + return s +} + +// SetLoggingStatus sets the LoggingStatus field's value. +func (s *AwsRedshiftClusterDetails) SetLoggingStatus(v *AwsRedshiftClusterLoggingStatus) *AwsRedshiftClusterDetails { + s.LoggingStatus = v + return s +} + +// SetMaintenanceTrackName sets the MaintenanceTrackName field's value. +func (s *AwsRedshiftClusterDetails) SetMaintenanceTrackName(v string) *AwsRedshiftClusterDetails { + s.MaintenanceTrackName = &v + return s +} + +// SetManualSnapshotRetentionPeriod sets the ManualSnapshotRetentionPeriod field's value. +func (s *AwsRedshiftClusterDetails) SetManualSnapshotRetentionPeriod(v int64) *AwsRedshiftClusterDetails { + s.ManualSnapshotRetentionPeriod = &v + return s +} + +// SetMasterUsername sets the MasterUsername field's value. +func (s *AwsRedshiftClusterDetails) SetMasterUsername(v string) *AwsRedshiftClusterDetails { + s.MasterUsername = &v + return s +} + +// SetNextMaintenanceWindowStartTime sets the NextMaintenanceWindowStartTime field's value. +func (s *AwsRedshiftClusterDetails) SetNextMaintenanceWindowStartTime(v string) *AwsRedshiftClusterDetails { + s.NextMaintenanceWindowStartTime = &v + return s +} + +// SetNodeType sets the NodeType field's value. +func (s *AwsRedshiftClusterDetails) SetNodeType(v string) *AwsRedshiftClusterDetails { + s.NodeType = &v + return s +} + +// SetNumberOfNodes sets the NumberOfNodes field's value. +func (s *AwsRedshiftClusterDetails) SetNumberOfNodes(v int64) *AwsRedshiftClusterDetails { + s.NumberOfNodes = &v + return s +} + +// SetPendingActions sets the PendingActions field's value. +func (s *AwsRedshiftClusterDetails) SetPendingActions(v []*string) *AwsRedshiftClusterDetails { + s.PendingActions = v + return s +} + +// SetPendingModifiedValues sets the PendingModifiedValues field's value. +func (s *AwsRedshiftClusterDetails) SetPendingModifiedValues(v *AwsRedshiftClusterPendingModifiedValues) *AwsRedshiftClusterDetails { + s.PendingModifiedValues = v + return s +} + +// SetPreferredMaintenanceWindow sets the PreferredMaintenanceWindow field's value. +func (s *AwsRedshiftClusterDetails) SetPreferredMaintenanceWindow(v string) *AwsRedshiftClusterDetails { + s.PreferredMaintenanceWindow = &v + return s +} + +// SetPubliclyAccessible sets the PubliclyAccessible field's value. +func (s *AwsRedshiftClusterDetails) SetPubliclyAccessible(v bool) *AwsRedshiftClusterDetails { + s.PubliclyAccessible = &v + return s +} + +// SetResizeInfo sets the ResizeInfo field's value. +func (s *AwsRedshiftClusterDetails) SetResizeInfo(v *AwsRedshiftClusterResizeInfo) *AwsRedshiftClusterDetails { + s.ResizeInfo = v + return s +} + +// SetRestoreStatus sets the RestoreStatus field's value. +func (s *AwsRedshiftClusterDetails) SetRestoreStatus(v *AwsRedshiftClusterRestoreStatus) *AwsRedshiftClusterDetails { + s.RestoreStatus = v + return s +} + +// SetSnapshotScheduleIdentifier sets the SnapshotScheduleIdentifier field's value. +func (s *AwsRedshiftClusterDetails) SetSnapshotScheduleIdentifier(v string) *AwsRedshiftClusterDetails { + s.SnapshotScheduleIdentifier = &v + return s +} + +// SetSnapshotScheduleState sets the SnapshotScheduleState field's value. +func (s *AwsRedshiftClusterDetails) SetSnapshotScheduleState(v string) *AwsRedshiftClusterDetails { + s.SnapshotScheduleState = &v + return s +} + +// SetVpcId sets the VpcId field's value. +func (s *AwsRedshiftClusterDetails) SetVpcId(v string) *AwsRedshiftClusterDetails { + s.VpcId = &v + return s +} + +// SetVpcSecurityGroups sets the VpcSecurityGroups field's value. +func (s *AwsRedshiftClusterDetails) SetVpcSecurityGroups(v []*AwsRedshiftClusterVpcSecurityGroup) *AwsRedshiftClusterDetails { + s.VpcSecurityGroups = v + return s +} + +// The status of the elastic IP (EIP) address for an Amazon Redshift cluster. +type AwsRedshiftClusterElasticIpStatus struct { + _ struct{} `type:"structure"` + + // The elastic IP address for the cluster. + ElasticIp *string `type:"string"` + + // The status of the elastic IP address. + Status *string `type:"string"` +} + +// String returns the string representation. +// // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketWebsiteConfigurationRoutingRuleCondition) String() string { +func (s AwsRedshiftClusterElasticIpStatus) String() string { return awsutil.Prettify(s) } @@ -31363,45 +31660,84 @@ func (s AwsS3BucketWebsiteConfigurationRoutingRuleCondition) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketWebsiteConfigurationRoutingRuleCondition) GoString() string { +func (s AwsRedshiftClusterElasticIpStatus) GoString() string { return s.String() } -// SetHttpErrorCodeReturnedEquals sets the HttpErrorCodeReturnedEquals field's value. -func (s *AwsS3BucketWebsiteConfigurationRoutingRuleCondition) SetHttpErrorCodeReturnedEquals(v string) *AwsS3BucketWebsiteConfigurationRoutingRuleCondition { - s.HttpErrorCodeReturnedEquals = &v +// SetElasticIp sets the ElasticIp field's value. +func (s *AwsRedshiftClusterElasticIpStatus) SetElasticIp(v string) *AwsRedshiftClusterElasticIpStatus { + s.ElasticIp = &v return s } -// SetKeyPrefixEquals sets the KeyPrefixEquals field's value. -func (s *AwsS3BucketWebsiteConfigurationRoutingRuleCondition) SetKeyPrefixEquals(v string) *AwsS3BucketWebsiteConfigurationRoutingRuleCondition { - s.KeyPrefixEquals = &v +// SetStatus sets the Status field's value. +func (s *AwsRedshiftClusterElasticIpStatus) SetStatus(v string) *AwsRedshiftClusterElasticIpStatus { + s.Status = &v return s } -// The rules to redirect the request if the condition in Condition is met. -type AwsS3BucketWebsiteConfigurationRoutingRuleRedirect struct { +// The connection endpoint for an Amazon Redshift cluster. +type AwsRedshiftClusterEndpoint struct { _ struct{} `type:"structure"` - // The host name to use in the redirect request. - Hostname *string `type:"string"` + // The DNS address of the cluster. + Address *string `type:"string"` - // The HTTP redirect code to use in the response. - HttpRedirectCode *string `type:"string"` + // The port that the database engine listens on. + Port *int64 `type:"integer"` +} - // The protocol to use to redirect the request. By default, uses the protocol - // from the original request. - Protocol *string `type:"string"` +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsRedshiftClusterEndpoint) String() string { + return awsutil.Prettify(s) +} - // The object key prefix to use in the redirect request. - // - // Cannot be provided if ReplaceKeyWith is present. - ReplaceKeyPrefixWith *string `type:"string"` +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsRedshiftClusterEndpoint) GoString() string { + return s.String() +} - // The specific object key to use in the redirect request. +// SetAddress sets the Address field's value. +func (s *AwsRedshiftClusterEndpoint) SetAddress(v string) *AwsRedshiftClusterEndpoint { + s.Address = &v + return s +} + +// SetPort sets the Port field's value. +func (s *AwsRedshiftClusterEndpoint) SetPort(v int64) *AwsRedshiftClusterEndpoint { + s.Port = &v + return s +} + +// Information about whether an Amazon Redshift cluster finished applying any +// hardware changes to security module (HSM) settings that were specified in +// a modify cluster command. +type AwsRedshiftClusterHsmStatus struct { + _ struct{} `type:"structure"` + + // The name of the HSM client certificate that the Amazon Redshift cluster uses + // to retrieve the data encryption keys that are stored in an HSM. + HsmClientCertificateIdentifier *string `type:"string"` + + // The name of the HSM configuration that contains the information that the + // Amazon Redshift cluster can use to retrieve and store keys in an HSM. + HsmConfigurationIdentifier *string `type:"string"` + + // Indicates whether the Amazon Redshift cluster has finished applying any HSM + // settings changes specified in a modify cluster command. // - // Cannot be provided if ReplaceKeyPrefixWith is present. - ReplaceKeyWith *string `type:"string"` + // Type: String + // + // Valid values: active | applying + Status *string `type:"string"` } // String returns the string representation. @@ -31409,7 +31745,7 @@ type AwsS3BucketWebsiteConfigurationRoutingRuleRedirect struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketWebsiteConfigurationRoutingRuleRedirect) String() string { +func (s AwsRedshiftClusterHsmStatus) String() string { return awsutil.Prettify(s) } @@ -31418,68 +31754,101 @@ func (s AwsS3BucketWebsiteConfigurationRoutingRuleRedirect) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3BucketWebsiteConfigurationRoutingRuleRedirect) GoString() string { +func (s AwsRedshiftClusterHsmStatus) GoString() string { return s.String() } -// SetHostname sets the Hostname field's value. -func (s *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect) SetHostname(v string) *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect { - s.Hostname = &v +// SetHsmClientCertificateIdentifier sets the HsmClientCertificateIdentifier field's value. +func (s *AwsRedshiftClusterHsmStatus) SetHsmClientCertificateIdentifier(v string) *AwsRedshiftClusterHsmStatus { + s.HsmClientCertificateIdentifier = &v return s } -// SetHttpRedirectCode sets the HttpRedirectCode field's value. -func (s *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect) SetHttpRedirectCode(v string) *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect { - s.HttpRedirectCode = &v +// SetHsmConfigurationIdentifier sets the HsmConfigurationIdentifier field's value. +func (s *AwsRedshiftClusterHsmStatus) SetHsmConfigurationIdentifier(v string) *AwsRedshiftClusterHsmStatus { + s.HsmConfigurationIdentifier = &v return s } -// SetProtocol sets the Protocol field's value. -func (s *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect) SetProtocol(v string) *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect { - s.Protocol = &v +// SetStatus sets the Status field's value. +func (s *AwsRedshiftClusterHsmStatus) SetStatus(v string) *AwsRedshiftClusterHsmStatus { + s.Status = &v return s } -// SetReplaceKeyPrefixWith sets the ReplaceKeyPrefixWith field's value. -func (s *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect) SetReplaceKeyPrefixWith(v string) *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect { - s.ReplaceKeyPrefixWith = &v +// An IAM role that the cluster can use to access other Amazon Web Services +// services. +type AwsRedshiftClusterIamRole struct { + _ struct{} `type:"structure"` + + // The status of the IAM role's association with the cluster. + // + // Valid values: in-sync | adding | removing + ApplyStatus *string `type:"string"` + + // The ARN of the IAM role. + IamRoleArn *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsRedshiftClusterIamRole) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsRedshiftClusterIamRole) GoString() string { + return s.String() +} + +// SetApplyStatus sets the ApplyStatus field's value. +func (s *AwsRedshiftClusterIamRole) SetApplyStatus(v string) *AwsRedshiftClusterIamRole { + s.ApplyStatus = &v return s } -// SetReplaceKeyWith sets the ReplaceKeyWith field's value. -func (s *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect) SetReplaceKeyWith(v string) *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect { - s.ReplaceKeyWith = &v +// SetIamRoleArn sets the IamRoleArn field's value. +func (s *AwsRedshiftClusterIamRole) SetIamRoleArn(v string) *AwsRedshiftClusterIamRole { + s.IamRoleArn = &v return s } -// Details about an Amazon S3 object. -type AwsS3ObjectDetails struct { +// Provides information about the logging status of the cluster. +type AwsRedshiftClusterLoggingStatus struct { _ struct{} `type:"structure"` - // A standard MIME type describing the format of the object data. - ContentType *string `type:"string"` + // The name of the S3 bucket where the log files are stored. + BucketName *string `type:"string"` - // The opaque identifier assigned by a web server to a specific version of a - // resource found at a URL. - ETag *string `type:"string"` + // The message indicating that the logs failed to be delivered. + LastFailureMessage *string `type:"string"` - // Indicates when the object was last modified. + // The last time when logs failed to be delivered. // // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot // contain spaces. For example, 2020-03-22T13:22:13.933Z. - LastModified *string `type:"string"` + LastFailureTime *string `type:"string"` - // The identifier of the KMS symmetric customer managed key that was used for - // the object. - SSEKMSKeyId *string `type:"string"` + // The last time that logs were delivered successfully. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + LastSuccessfulDeliveryTime *string `type:"string"` - // If the object is stored using server-side encryption, the value of the server-side - // encryption algorithm used when storing this object in Amazon S3. - ServerSideEncryption *string `type:"string"` + // Indicates whether logging is enabled. + LoggingEnabled *bool `type:"boolean"` - // The version of the object. - VersionId *string `type:"string"` + // Provides the prefix applied to the log file names. + S3KeyPrefix *string `type:"string"` } // String returns the string representation. @@ -31487,7 +31856,7 @@ type AwsS3ObjectDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3ObjectDetails) String() string { +func (s AwsRedshiftClusterLoggingStatus) String() string { return awsutil.Prettify(s) } @@ -31496,74 +31865,84 @@ func (s AwsS3ObjectDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsS3ObjectDetails) GoString() string { +func (s AwsRedshiftClusterLoggingStatus) GoString() string { return s.String() } -// SetContentType sets the ContentType field's value. -func (s *AwsS3ObjectDetails) SetContentType(v string) *AwsS3ObjectDetails { - s.ContentType = &v +// SetBucketName sets the BucketName field's value. +func (s *AwsRedshiftClusterLoggingStatus) SetBucketName(v string) *AwsRedshiftClusterLoggingStatus { + s.BucketName = &v return s } -// SetETag sets the ETag field's value. -func (s *AwsS3ObjectDetails) SetETag(v string) *AwsS3ObjectDetails { - s.ETag = &v +// SetLastFailureMessage sets the LastFailureMessage field's value. +func (s *AwsRedshiftClusterLoggingStatus) SetLastFailureMessage(v string) *AwsRedshiftClusterLoggingStatus { + s.LastFailureMessage = &v return s } -// SetLastModified sets the LastModified field's value. -func (s *AwsS3ObjectDetails) SetLastModified(v string) *AwsS3ObjectDetails { - s.LastModified = &v +// SetLastFailureTime sets the LastFailureTime field's value. +func (s *AwsRedshiftClusterLoggingStatus) SetLastFailureTime(v string) *AwsRedshiftClusterLoggingStatus { + s.LastFailureTime = &v return s } -// SetSSEKMSKeyId sets the SSEKMSKeyId field's value. -func (s *AwsS3ObjectDetails) SetSSEKMSKeyId(v string) *AwsS3ObjectDetails { - s.SSEKMSKeyId = &v +// SetLastSuccessfulDeliveryTime sets the LastSuccessfulDeliveryTime field's value. +func (s *AwsRedshiftClusterLoggingStatus) SetLastSuccessfulDeliveryTime(v string) *AwsRedshiftClusterLoggingStatus { + s.LastSuccessfulDeliveryTime = &v return s } -// SetServerSideEncryption sets the ServerSideEncryption field's value. -func (s *AwsS3ObjectDetails) SetServerSideEncryption(v string) *AwsS3ObjectDetails { - s.ServerSideEncryption = &v +// SetLoggingEnabled sets the LoggingEnabled field's value. +func (s *AwsRedshiftClusterLoggingStatus) SetLoggingEnabled(v bool) *AwsRedshiftClusterLoggingStatus { + s.LoggingEnabled = &v return s } -// SetVersionId sets the VersionId field's value. -func (s *AwsS3ObjectDetails) SetVersionId(v string) *AwsS3ObjectDetails { - s.VersionId = &v +// SetS3KeyPrefix sets the S3KeyPrefix field's value. +func (s *AwsRedshiftClusterLoggingStatus) SetS3KeyPrefix(v string) *AwsRedshiftClusterLoggingStatus { + s.S3KeyPrefix = &v return s } -// Details about an Secrets Manager secret. -type AwsSecretsManagerSecretDetails struct { +// Changes to the Amazon Redshift cluster that are currently pending. +type AwsRedshiftClusterPendingModifiedValues struct { _ struct{} `type:"structure"` - // Whether the secret is deleted. - Deleted *bool `type:"boolean"` + // The pending or in-progress change to the automated snapshot retention period. + AutomatedSnapshotRetentionPeriod *int64 `type:"integer"` - // The user-provided description of the secret. - Description *string `type:"string"` + // The pending or in-progress change to the identifier for the cluster. + ClusterIdentifier *string `type:"string"` - // The ARN, Key ID, or alias of the KMS key used to encrypt the SecretString - // or SecretBinary values for versions of this secret. - KmsKeyId *string `type:"string"` + // The pending or in-progress change to the cluster type. + ClusterType *string `type:"string"` - // The name of the secret. - Name *string `type:"string"` + // The pending or in-progress change to the service version. + ClusterVersion *string `type:"string"` - // Whether rotation is enabled. - RotationEnabled *bool `type:"boolean"` + // The encryption type for a cluster. + EncryptionType *string `type:"string"` - // The ARN of the Lambda function that rotates the secret. - RotationLambdaArn *string `type:"string"` + // Indicates whether to create the cluster with enhanced VPC routing enabled. + EnhancedVpcRouting *bool `type:"boolean"` - // Whether the rotation occurred within the specified rotation frequency. - RotationOccurredWithinFrequency *bool `type:"boolean"` + // The name of the maintenance track that the cluster changes to during the + // next maintenance window. + MaintenanceTrackName *string `type:"string"` - // Defines the rotation schedule for the secret. - RotationRules *AwsSecretsManagerSecretRotationRules `type:"structure"` + // The pending or in-progress change to the master user password for the cluster. + MasterUserPassword *string `type:"string"` + + // The pending or in-progress change to the cluster's node type. + NodeType *string `type:"string"` + + // The pending or in-progress change to the number of nodes in the cluster. + NumberOfNodes *int64 `type:"integer"` + + // The pending or in-progress change to whether the cluster can be connected + // to from the public network. + PubliclyAccessible *bool `type:"boolean"` } // String returns the string representation. @@ -31571,7 +31950,7 @@ type AwsSecretsManagerSecretDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsSecretsManagerSecretDetails) String() string { +func (s AwsRedshiftClusterPendingModifiedValues) String() string { return awsutil.Prettify(s) } @@ -31580,73 +31959,96 @@ func (s AwsSecretsManagerSecretDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsSecretsManagerSecretDetails) GoString() string { +func (s AwsRedshiftClusterPendingModifiedValues) GoString() string { return s.String() } -// SetDeleted sets the Deleted field's value. -func (s *AwsSecretsManagerSecretDetails) SetDeleted(v bool) *AwsSecretsManagerSecretDetails { - s.Deleted = &v +// SetAutomatedSnapshotRetentionPeriod sets the AutomatedSnapshotRetentionPeriod field's value. +func (s *AwsRedshiftClusterPendingModifiedValues) SetAutomatedSnapshotRetentionPeriod(v int64) *AwsRedshiftClusterPendingModifiedValues { + s.AutomatedSnapshotRetentionPeriod = &v return s } -// SetDescription sets the Description field's value. -func (s *AwsSecretsManagerSecretDetails) SetDescription(v string) *AwsSecretsManagerSecretDetails { - s.Description = &v +// SetClusterIdentifier sets the ClusterIdentifier field's value. +func (s *AwsRedshiftClusterPendingModifiedValues) SetClusterIdentifier(v string) *AwsRedshiftClusterPendingModifiedValues { + s.ClusterIdentifier = &v return s } -// SetKmsKeyId sets the KmsKeyId field's value. -func (s *AwsSecretsManagerSecretDetails) SetKmsKeyId(v string) *AwsSecretsManagerSecretDetails { - s.KmsKeyId = &v +// SetClusterType sets the ClusterType field's value. +func (s *AwsRedshiftClusterPendingModifiedValues) SetClusterType(v string) *AwsRedshiftClusterPendingModifiedValues { + s.ClusterType = &v return s } -// SetName sets the Name field's value. -func (s *AwsSecretsManagerSecretDetails) SetName(v string) *AwsSecretsManagerSecretDetails { - s.Name = &v +// SetClusterVersion sets the ClusterVersion field's value. +func (s *AwsRedshiftClusterPendingModifiedValues) SetClusterVersion(v string) *AwsRedshiftClusterPendingModifiedValues { + s.ClusterVersion = &v return s } -// SetRotationEnabled sets the RotationEnabled field's value. -func (s *AwsSecretsManagerSecretDetails) SetRotationEnabled(v bool) *AwsSecretsManagerSecretDetails { - s.RotationEnabled = &v +// SetEncryptionType sets the EncryptionType field's value. +func (s *AwsRedshiftClusterPendingModifiedValues) SetEncryptionType(v string) *AwsRedshiftClusterPendingModifiedValues { + s.EncryptionType = &v return s } -// SetRotationLambdaArn sets the RotationLambdaArn field's value. -func (s *AwsSecretsManagerSecretDetails) SetRotationLambdaArn(v string) *AwsSecretsManagerSecretDetails { - s.RotationLambdaArn = &v +// SetEnhancedVpcRouting sets the EnhancedVpcRouting field's value. +func (s *AwsRedshiftClusterPendingModifiedValues) SetEnhancedVpcRouting(v bool) *AwsRedshiftClusterPendingModifiedValues { + s.EnhancedVpcRouting = &v return s } -// SetRotationOccurredWithinFrequency sets the RotationOccurredWithinFrequency field's value. -func (s *AwsSecretsManagerSecretDetails) SetRotationOccurredWithinFrequency(v bool) *AwsSecretsManagerSecretDetails { - s.RotationOccurredWithinFrequency = &v +// SetMaintenanceTrackName sets the MaintenanceTrackName field's value. +func (s *AwsRedshiftClusterPendingModifiedValues) SetMaintenanceTrackName(v string) *AwsRedshiftClusterPendingModifiedValues { + s.MaintenanceTrackName = &v return s } -// SetRotationRules sets the RotationRules field's value. -func (s *AwsSecretsManagerSecretDetails) SetRotationRules(v *AwsSecretsManagerSecretRotationRules) *AwsSecretsManagerSecretDetails { - s.RotationRules = v +// SetMasterUserPassword sets the MasterUserPassword field's value. +func (s *AwsRedshiftClusterPendingModifiedValues) SetMasterUserPassword(v string) *AwsRedshiftClusterPendingModifiedValues { + s.MasterUserPassword = &v return s } -// Defines the rotation schedule for the secret. -type AwsSecretsManagerSecretRotationRules struct { - _ struct{} `type:"structure"` - - // The number of days after the previous rotation to rotate the secret. - AutomaticallyAfterDays *int64 `type:"integer"` +// SetNodeType sets the NodeType field's value. +func (s *AwsRedshiftClusterPendingModifiedValues) SetNodeType(v string) *AwsRedshiftClusterPendingModifiedValues { + s.NodeType = &v + return s } -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsSecretsManagerSecretRotationRules) String() string { - return awsutil.Prettify(s) +// SetNumberOfNodes sets the NumberOfNodes field's value. +func (s *AwsRedshiftClusterPendingModifiedValues) SetNumberOfNodes(v int64) *AwsRedshiftClusterPendingModifiedValues { + s.NumberOfNodes = &v + return s +} + +// SetPubliclyAccessible sets the PubliclyAccessible field's value. +func (s *AwsRedshiftClusterPendingModifiedValues) SetPubliclyAccessible(v bool) *AwsRedshiftClusterPendingModifiedValues { + s.PubliclyAccessible = &v + return s +} + +// Information about the resize operation for the cluster. +type AwsRedshiftClusterResizeInfo struct { + _ struct{} `type:"structure"` + + // Indicates whether the resize operation can be canceled. + AllowCancelResize *bool `type:"boolean"` + + // The type of resize operation. + // + // Valid values: ClassicResize + ResizeType *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsRedshiftClusterResizeInfo) String() string { + return awsutil.Prettify(s) } // GoString returns the string representation. @@ -31654,237 +32056,337 @@ func (s AwsSecretsManagerSecretRotationRules) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsSecretsManagerSecretRotationRules) GoString() string { +func (s AwsRedshiftClusterResizeInfo) GoString() string { return s.String() } -// SetAutomaticallyAfterDays sets the AutomaticallyAfterDays field's value. -func (s *AwsSecretsManagerSecretRotationRules) SetAutomaticallyAfterDays(v int64) *AwsSecretsManagerSecretRotationRules { - s.AutomaticallyAfterDays = &v +// SetAllowCancelResize sets the AllowCancelResize field's value. +func (s *AwsRedshiftClusterResizeInfo) SetAllowCancelResize(v bool) *AwsRedshiftClusterResizeInfo { + s.AllowCancelResize = &v return s } -// Provides a consistent format for Security Hub findings. AwsSecurityFinding -// format allows you to share findings between Amazon Web Services security -// services and third-party solutions. -// -// A finding is a potential security issue generated either by Amazon Web Services -// services or by the integrated third-party solutions and standards checks. -type AwsSecurityFinding struct { - _ struct{} `type:"structure"` +// SetResizeType sets the ResizeType field's value. +func (s *AwsRedshiftClusterResizeInfo) SetResizeType(v string) *AwsRedshiftClusterResizeInfo { + s.ResizeType = &v + return s +} - // Provides details about an action that affects or that was taken on a resource. - Action *Action `type:"structure"` +// Information about the status of a cluster restore action. It only applies +// if the cluster was created by restoring a snapshot. +type AwsRedshiftClusterRestoreStatus struct { + _ struct{} `type:"structure"` - // The Amazon Web Services account ID that a finding is generated in. + // The number of megabytes per second being transferred from the backup storage. + // Returns the average rate for a completed backup. // - // AwsAccountId is a required field - AwsAccountId *string `type:"string" required:"true"` + // This field is only updated when you restore to DC2 and DS2 node types. + CurrentRestoreRateInMegaBytesPerSecond *float64 `type:"double"` - // The name of the company for the product that generated the finding. - // - // Security Hub populates this attribute automatically for each finding. You - // cannot update this attribute with BatchImportFindings or BatchUpdateFindings. - // The exception to this is a custom integration. + // The amount of time an in-progress restore has been running, or the amount + // of time it took a completed restore to finish. // - // When you use the Security Hub console or API to filter findings by company - // name, you use this attribute. - CompanyName *string `type:"string"` - - // This data type is exclusive to findings that are generated as the result - // of a check run against a specific rule in a supported security standard, - // such as CIS Amazon Web Services Foundations. Contains security standard-related - // finding details. - Compliance *Compliance `type:"structure"` + // This field is only updated when you restore to DC2 and DS2 node types. + ElapsedTimeInSeconds *int64 `type:"long"` - // A finding's confidence. Confidence is defined as the likelihood that a finding - // accurately identifies the behavior or issue that it was intended to identify. + // The estimate of the time remaining before the restore is complete. Returns + // 0 for a completed restore. // - // Confidence is scored on a 0-100 basis using a ratio scale, where 0 means - // zero percent confidence and 100 means 100 percent confidence. - Confidence *int64 `type:"integer"` + // This field is only updated when you restore to DC2 and DS2 node types. + EstimatedTimeToCompletionInSeconds *int64 `type:"long"` - // Indicates when the security-findings provider created the potential security - // issue that a finding captured. - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. + // The number of megabytes that were transferred from snapshot storage. // - // CreatedAt is a required field - CreatedAt *string `type:"string" required:"true"` + // This field is only updated when you restore to DC2 and DS2 node types. + ProgressInMegaBytes *int64 `type:"long"` - // The level of importance assigned to the resources associated with the finding. + // The size of the set of snapshot data that was used to restore the cluster. // - // A score of 0 means that the underlying resources have no criticality, and - // a score of 100 is reserved for the most critical resources. - Criticality *int64 `type:"integer"` + // This field is only updated when you restore to DC2 and DS2 node types. + SnapshotSizeInMegaBytes *int64 `type:"long"` - // A finding's description. - // - // In this release, Description is a required property. + // The status of the restore action. // - // Description is a required field - Description *string `type:"string" required:"true"` + // Valid values: starting | restoring | completed | failed + Status *string `type:"string"` +} - // In a BatchImportFindings request, finding providers use FindingProviderFields - // to provide and update their own values for confidence, criticality, related - // findings, severity, and types. - FindingProviderFields *FindingProviderFields `type:"structure"` +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsRedshiftClusterRestoreStatus) String() string { + return awsutil.Prettify(s) +} - // Indicates when the security-findings provider first observed the potential - // security issue that a finding captured. - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - FirstObservedAt *string `type:"string"` +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsRedshiftClusterRestoreStatus) GoString() string { + return s.String() +} - // The identifier for the solution-specific component (a discrete unit of logic) - // that generated a finding. In various security-findings providers' solutions, - // this generator can be called a rule, a check, a detector, a plugin, etc. - // - // GeneratorId is a required field - GeneratorId *string `type:"string" required:"true"` +// SetCurrentRestoreRateInMegaBytesPerSecond sets the CurrentRestoreRateInMegaBytesPerSecond field's value. +func (s *AwsRedshiftClusterRestoreStatus) SetCurrentRestoreRateInMegaBytesPerSecond(v float64) *AwsRedshiftClusterRestoreStatus { + s.CurrentRestoreRateInMegaBytesPerSecond = &v + return s +} - // The security findings provider-specific identifier for a finding. - // - // Id is a required field - Id *string `type:"string" required:"true"` +// SetElapsedTimeInSeconds sets the ElapsedTimeInSeconds field's value. +func (s *AwsRedshiftClusterRestoreStatus) SetElapsedTimeInSeconds(v int64) *AwsRedshiftClusterRestoreStatus { + s.ElapsedTimeInSeconds = &v + return s +} - // Indicates when the security-findings provider most recently observed the - // potential security issue that a finding captured. - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - LastObservedAt *string `type:"string"` +// SetEstimatedTimeToCompletionInSeconds sets the EstimatedTimeToCompletionInSeconds field's value. +func (s *AwsRedshiftClusterRestoreStatus) SetEstimatedTimeToCompletionInSeconds(v int64) *AwsRedshiftClusterRestoreStatus { + s.EstimatedTimeToCompletionInSeconds = &v + return s +} - // A list of malware related to a finding. - Malware []*Malware `type:"list"` +// SetProgressInMegaBytes sets the ProgressInMegaBytes field's value. +func (s *AwsRedshiftClusterRestoreStatus) SetProgressInMegaBytes(v int64) *AwsRedshiftClusterRestoreStatus { + s.ProgressInMegaBytes = &v + return s +} - // The details of network-related information about a finding. - Network *Network `type:"structure"` +// SetSnapshotSizeInMegaBytes sets the SnapshotSizeInMegaBytes field's value. +func (s *AwsRedshiftClusterRestoreStatus) SetSnapshotSizeInMegaBytes(v int64) *AwsRedshiftClusterRestoreStatus { + s.SnapshotSizeInMegaBytes = &v + return s +} - // Provides information about a network path that is relevant to a finding. - // Each entry under NetworkPath represents a component of that path. - NetworkPath []*NetworkPathComponent `type:"list"` +// SetStatus sets the Status field's value. +func (s *AwsRedshiftClusterRestoreStatus) SetStatus(v string) *AwsRedshiftClusterRestoreStatus { + s.Status = &v + return s +} - // A user-defined note added to a finding. - Note *Note `type:"structure"` +// A VPC security group that the cluster belongs to, if the cluster is in a +// VPC. +type AwsRedshiftClusterVpcSecurityGroup struct { + _ struct{} `type:"structure"` - // Provides an overview of the patch compliance status for an instance against - // a selected compliance standard. - PatchSummary *PatchSummary `type:"structure"` + // The status of the VPC security group. + Status *string `type:"string"` - // The details of process-related information about a finding. - Process *ProcessDetails `type:"structure"` + // The identifier of the VPC security group. + VpcSecurityGroupId *string `type:"string"` +} - // The ARN generated by Security Hub that uniquely identifies a product that - // generates findings. This can be the ARN for a third-party product that is - // integrated with Security Hub, or the ARN for a custom integration. - // - // ProductArn is a required field - ProductArn *string `type:"string" required:"true"` +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsRedshiftClusterVpcSecurityGroup) String() string { + return awsutil.Prettify(s) +} - // A data type where security-findings providers can include additional solution-specific - // details that aren't part of the defined AwsSecurityFinding format. - // - // Can contain up to 50 key-value pairs. For each key-value pair, the key can - // contain up to 128 characters, and the value can contain up to 2048 characters. - ProductFields map[string]*string `type:"map"` +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsRedshiftClusterVpcSecurityGroup) GoString() string { + return s.String() +} - // The name of the product that generated the finding. - // - // Security Hub populates this attribute automatically for each finding. You - // cannot update this attribute with BatchImportFindings or BatchUpdateFindings. - // The exception to this is a custom integration. - // - // When you use the Security Hub console or API to filter findings by product - // name, you use this attribute. - ProductName *string `type:"string"` +// SetStatus sets the Status field's value. +func (s *AwsRedshiftClusterVpcSecurityGroup) SetStatus(v string) *AwsRedshiftClusterVpcSecurityGroup { + s.Status = &v + return s +} - // The record state of a finding. - RecordState *string `type:"string" enum:"RecordState"` +// SetVpcSecurityGroupId sets the VpcSecurityGroupId field's value. +func (s *AwsRedshiftClusterVpcSecurityGroup) SetVpcSecurityGroupId(v string) *AwsRedshiftClusterVpcSecurityGroup { + s.VpcSecurityGroupId = &v + return s +} - // The Region from which the finding was generated. - // - // Security Hub populates this attribute automatically for each finding. You - // cannot update it using BatchImportFindings or BatchUpdateFindings. - Region *string `type:"string"` +// provides information about the Amazon S3 Public Access Block configuration +// for accounts. +type AwsS3AccountPublicAccessBlockDetails struct { + _ struct{} `type:"structure"` - // A list of related findings. - RelatedFindings []*RelatedFinding `type:"list"` + // Indicates whether to reject calls to update an S3 bucket if the calls include + // a public access control list (ACL). + BlockPublicAcls *bool `type:"boolean"` - // A data type that describes the remediation options for a finding. - Remediation *Remediation `type:"structure"` + // Indicates whether to reject calls to update the access policy for an S3 bucket + // or access point if the policy allows public access. + BlockPublicPolicy *bool `type:"boolean"` - // A set of resource data types that describe the resources that the finding - // refers to. - // - // Resources is a required field - Resources []*Resource `type:"list" required:"true"` + // Indicates whether Amazon S3 ignores public ACLs that are associated with + // an S3 bucket. + IgnorePublicAcls *bool `type:"boolean"` - // Indicates whether the finding is a sample finding. - Sample *bool `type:"boolean"` + // Indicates whether to restrict access to an access point or S3 bucket that + // has a public policy to only Amazon Web Services service principals and authorized + // users within the S3 bucket owner's account. + RestrictPublicBuckets *bool `type:"boolean"` +} - // The schema version that a finding is formatted for. - // - // SchemaVersion is a required field - SchemaVersion *string `type:"string" required:"true"` +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3AccountPublicAccessBlockDetails) String() string { + return awsutil.Prettify(s) +} - // A finding's severity. - Severity *Severity `type:"structure"` +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3AccountPublicAccessBlockDetails) GoString() string { + return s.String() +} - // A URL that links to a page about the current finding in the security-findings - // provider's solution. - SourceUrl *string `type:"string"` +// SetBlockPublicAcls sets the BlockPublicAcls field's value. +func (s *AwsS3AccountPublicAccessBlockDetails) SetBlockPublicAcls(v bool) *AwsS3AccountPublicAccessBlockDetails { + s.BlockPublicAcls = &v + return s +} - // Threat intelligence details related to a finding. - ThreatIntelIndicators []*ThreatIntelIndicator `type:"list"` +// SetBlockPublicPolicy sets the BlockPublicPolicy field's value. +func (s *AwsS3AccountPublicAccessBlockDetails) SetBlockPublicPolicy(v bool) *AwsS3AccountPublicAccessBlockDetails { + s.BlockPublicPolicy = &v + return s +} - // Details about the threat detected in a security finding and the file paths - // that were affected by the threat. - Threats []*Threat `type:"list"` +// SetIgnorePublicAcls sets the IgnorePublicAcls field's value. +func (s *AwsS3AccountPublicAccessBlockDetails) SetIgnorePublicAcls(v bool) *AwsS3AccountPublicAccessBlockDetails { + s.IgnorePublicAcls = &v + return s +} - // A finding's title. - // - // In this release, Title is a required property. - // - // Title is a required field - Title *string `type:"string" required:"true"` +// SetRestrictPublicBuckets sets the RestrictPublicBuckets field's value. +func (s *AwsS3AccountPublicAccessBlockDetails) SetRestrictPublicBuckets(v bool) *AwsS3AccountPublicAccessBlockDetails { + s.RestrictPublicBuckets = &v + return s +} - // One or more finding types in the format of namespace/category/classifier - // that classify a finding. - // - // Valid namespace values are: Software and Configuration Checks | TTPs | Effects - // | Unusual Behaviors | Sensitive Data Identifications - Types []*string `type:"list"` +// The lifecycle configuration for the objects in the S3 bucket. +type AwsS3BucketBucketLifecycleConfigurationDetails struct { + _ struct{} `type:"structure"` - // Indicates when the security-findings provider last updated the finding record. + // The lifecycle rules. + Rules []*AwsS3BucketBucketLifecycleConfigurationRulesDetails `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketBucketLifecycleConfigurationDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketBucketLifecycleConfigurationDetails) GoString() string { + return s.String() +} + +// SetRules sets the Rules field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationDetails) SetRules(v []*AwsS3BucketBucketLifecycleConfigurationRulesDetails) *AwsS3BucketBucketLifecycleConfigurationDetails { + s.Rules = v + return s +} + +// Information about what Amazon S3 does when a multipart upload is incomplete. +type AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetails struct { + _ struct{} `type:"structure"` + + // The number of days after which Amazon S3 cancels an incomplete multipart + // upload. + DaysAfterInitiation *int64 `type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetails) GoString() string { + return s.String() +} + +// SetDaysAfterInitiation sets the DaysAfterInitiation field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetails) SetDaysAfterInitiation(v int64) *AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetails { + s.DaysAfterInitiation = &v + return s +} + +// Configuration for a lifecycle rule. +type AwsS3BucketBucketLifecycleConfigurationRulesDetails struct { + _ struct{} `type:"structure"` + + // How Amazon S3 responds when a multipart upload is incomplete. Specifically, + // provides a number of days before Amazon S3 cancels the entire upload. + AbortIncompleteMultipartUpload *AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetails `type:"structure"` + + // The date when objects are moved or deleted. // // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot // contain spaces. For example, 2020-03-22T13:22:13.933Z. + ExpirationDate *string `type:"string"` + + // The length in days of the lifetime for objects that are subject to the rule. + ExpirationInDays *int64 `type:"integer"` + + // Whether Amazon S3 removes a delete marker that has no noncurrent versions. + // If set to true, the delete marker is expired. If set to false, the policy + // takes no action. // - // UpdatedAt is a required field - UpdatedAt *string `type:"string" required:"true"` + // If you provide ExpiredObjectDeleteMarker, you cannot provide ExpirationInDays + // or ExpirationDate. + ExpiredObjectDeleteMarker *bool `type:"boolean"` - // A list of name/value string pairs associated with the finding. These are - // custom, user-defined fields added to a finding. - UserDefinedFields map[string]*string `type:"map"` + // Identifies the objects that a rule applies to. + Filter *AwsS3BucketBucketLifecycleConfigurationRulesFilterDetails `type:"structure"` - // Indicates the veracity of a finding. - VerificationState *string `type:"string" enum:"VerificationState"` + // The unique identifier of the rule. + ID *string `type:"string"` - // Provides a list of vulnerabilities associated with the findings. - Vulnerabilities []*Vulnerability `type:"list"` + // The number of days that an object is noncurrent before Amazon S3 can perform + // the associated action. + NoncurrentVersionExpirationInDays *int64 `type:"integer"` - // Provides information about the status of the investigation into a finding. - Workflow *Workflow `type:"structure"` + // Transition rules that describe when noncurrent objects transition to a specified + // storage class. + NoncurrentVersionTransitions []*AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails `type:"list"` - // The workflow state of a finding. - WorkflowState *string `deprecated:"true" type:"string" enum:"WorkflowState"` + // A prefix that identifies one or more objects that the rule applies to. + Prefix *string `type:"string"` + + // The current status of the rule. Indicates whether the rule is currently being + // applied. + Status *string `type:"string"` + + // Transition rules that indicate when objects transition to a specified storage + // class. + Transitions []*AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails `type:"list"` } // String returns the string representation. @@ -31892,7 +32394,7 @@ type AwsSecurityFinding struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsSecurityFinding) String() string { +func (s AwsS3BucketBucketLifecycleConfigurationRulesDetails) String() string { return awsutil.Prettify(s) } @@ -31901,42 +32403,1950 @@ func (s AwsSecurityFinding) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsSecurityFinding) GoString() string { +func (s AwsS3BucketBucketLifecycleConfigurationRulesDetails) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *AwsSecurityFinding) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "AwsSecurityFinding"} - if s.AwsAccountId == nil { - invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) - } - if s.CreatedAt == nil { - invalidParams.Add(request.NewErrParamRequired("CreatedAt")) - } - if s.Description == nil { - invalidParams.Add(request.NewErrParamRequired("Description")) - } - if s.GeneratorId == nil { - invalidParams.Add(request.NewErrParamRequired("GeneratorId")) - } - if s.Id == nil { - invalidParams.Add(request.NewErrParamRequired("Id")) - } - if s.ProductArn == nil { - invalidParams.Add(request.NewErrParamRequired("ProductArn")) - } - if s.Resources == nil { - invalidParams.Add(request.NewErrParamRequired("Resources")) - } - if s.SchemaVersion == nil { - invalidParams.Add(request.NewErrParamRequired("SchemaVersion")) - } - if s.Title == nil { - invalidParams.Add(request.NewErrParamRequired("Title")) - } - if s.UpdatedAt == nil { - invalidParams.Add(request.NewErrParamRequired("UpdatedAt")) +// SetAbortIncompleteMultipartUpload sets the AbortIncompleteMultipartUpload field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetAbortIncompleteMultipartUpload(v *AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetails) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { + s.AbortIncompleteMultipartUpload = v + return s +} + +// SetExpirationDate sets the ExpirationDate field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetExpirationDate(v string) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { + s.ExpirationDate = &v + return s +} + +// SetExpirationInDays sets the ExpirationInDays field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetExpirationInDays(v int64) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { + s.ExpirationInDays = &v + return s +} + +// SetExpiredObjectDeleteMarker sets the ExpiredObjectDeleteMarker field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetExpiredObjectDeleteMarker(v bool) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { + s.ExpiredObjectDeleteMarker = &v + return s +} + +// SetFilter sets the Filter field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetFilter(v *AwsS3BucketBucketLifecycleConfigurationRulesFilterDetails) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { + s.Filter = v + return s +} + +// SetID sets the ID field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetID(v string) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { + s.ID = &v + return s +} + +// SetNoncurrentVersionExpirationInDays sets the NoncurrentVersionExpirationInDays field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetNoncurrentVersionExpirationInDays(v int64) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { + s.NoncurrentVersionExpirationInDays = &v + return s +} + +// SetNoncurrentVersionTransitions sets the NoncurrentVersionTransitions field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetNoncurrentVersionTransitions(v []*AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { + s.NoncurrentVersionTransitions = v + return s +} + +// SetPrefix sets the Prefix field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetPrefix(v string) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { + s.Prefix = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetStatus(v string) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { + s.Status = &v + return s +} + +// SetTransitions sets the Transitions field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetTransitions(v []*AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { + s.Transitions = v + return s +} + +// Identifies the objects that a rule applies to. +type AwsS3BucketBucketLifecycleConfigurationRulesFilterDetails struct { + _ struct{} `type:"structure"` + + // The configuration for the filter. + Predicate *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterDetails) GoString() string { + return s.String() +} + +// SetPredicate sets the Predicate field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterDetails) SetPredicate(v *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails) *AwsS3BucketBucketLifecycleConfigurationRulesFilterDetails { + s.Predicate = v + return s +} + +// The configuration for the filter. +type AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails struct { + _ struct{} `type:"structure"` + + // The values to use for the filter. + Operands []*AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails `type:"list"` + + // A prefix filter. + Prefix *string `type:"string"` + + // A tag filter. + Tag *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails `type:"structure"` + + // Whether to use AND or OR to join the operands. Valid values are LifecycleAndOperator + // or LifecycleOrOperator. + Type *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails) GoString() string { + return s.String() +} + +// SetOperands sets the Operands field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails) SetOperands(v []*AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails { + s.Operands = v + return s +} + +// SetPrefix sets the Prefix field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails) SetPrefix(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails { + s.Prefix = &v + return s +} + +// SetTag sets the Tag field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails) SetTag(v *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails { + s.Tag = v + return s +} + +// SetType sets the Type field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails) SetType(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails { + s.Type = &v + return s +} + +// A value to use for the filter. +type AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails struct { + _ struct{} `type:"structure"` + + // Prefix text for matching objects. + Prefix *string `type:"string"` + + // A tag that is assigned to matching objects. + Tag *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails `type:"structure"` + + // The type of filter value. Valid values are LifecyclePrefixPredicate or LifecycleTagPredicate. + Type *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails) GoString() string { + return s.String() +} + +// SetPrefix sets the Prefix field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails) SetPrefix(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails { + s.Prefix = &v + return s +} + +// SetTag sets the Tag field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails) SetTag(v *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails { + s.Tag = v + return s +} + +// SetType sets the Type field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails) SetType(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails { + s.Type = &v + return s +} + +// A tag that is assigned to matching objects. +type AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails struct { + _ struct{} `type:"structure"` + + // The tag key. + Key *string `type:"string"` + + // The tag value. + Value *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails) GoString() string { + return s.String() +} + +// SetKey sets the Key field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails) SetKey(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails { + s.Key = &v + return s +} + +// SetValue sets the Value field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails) SetValue(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails { + s.Value = &v + return s +} + +// A tag filter. +type AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails struct { + _ struct{} `type:"structure"` + + // The tag key. + Key *string `type:"string"` + + // The tag value + Value *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails) GoString() string { + return s.String() +} + +// SetKey sets the Key field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails) SetKey(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails { + s.Key = &v + return s +} + +// SetValue sets the Value field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails) SetValue(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails { + s.Value = &v + return s +} + +// A transition rule that describes when noncurrent objects transition to a +// specified storage class. +type AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails struct { + _ struct{} `type:"structure"` + + // The number of days that an object is noncurrent before Amazon S3 can perform + // the associated action. + Days *int64 `type:"integer"` + + // The class of storage to change the object to after the object is noncurrent + // for the specified number of days. + StorageClass *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails) GoString() string { + return s.String() +} + +// SetDays sets the Days field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails) SetDays(v int64) *AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails { + s.Days = &v + return s +} + +// SetStorageClass sets the StorageClass field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails) SetStorageClass(v string) *AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails { + s.StorageClass = &v + return s +} + +// A rule for when objects transition to specific storage classes. +type AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails struct { + _ struct{} `type:"structure"` + + // A date on which to transition objects to the specified storage class. If + // you provide Date, you cannot provide Days. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + Date *string `type:"string"` + + // The number of days after which to transition the object to the specified + // storage class. If you provide Days, you cannot provide Date. + Days *int64 `type:"integer"` + + // The storage class to transition the object to. Valid values are as follows: + // + // * DEEP_ARCHIVE + // + // * GLACIER + // + // * INTELLIGENT_TIERING + // + // * ONEZONE_IA + // + // * STANDARD_IA + StorageClass *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails) GoString() string { + return s.String() +} + +// SetDate sets the Date field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails) SetDate(v string) *AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails { + s.Date = &v + return s +} + +// SetDays sets the Days field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails) SetDays(v int64) *AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails { + s.Days = &v + return s +} + +// SetStorageClass sets the StorageClass field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails) SetStorageClass(v string) *AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails { + s.StorageClass = &v + return s +} + +// Describes the versioning state of an S3 bucket. +type AwsS3BucketBucketVersioningConfiguration struct { + _ struct{} `type:"structure"` + + // Specifies whether MFA delete is currently enabled in the S3 bucket versioning + // configuration. If the S3 bucket was never configured with MFA delete, then + // this attribute is not included. + IsMfaDeleteEnabled *bool `type:"boolean"` + + // The versioning status of the S3 bucket. Valid values are Enabled or Suspended. + Status *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketBucketVersioningConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketBucketVersioningConfiguration) GoString() string { + return s.String() +} + +// SetIsMfaDeleteEnabled sets the IsMfaDeleteEnabled field's value. +func (s *AwsS3BucketBucketVersioningConfiguration) SetIsMfaDeleteEnabled(v bool) *AwsS3BucketBucketVersioningConfiguration { + s.IsMfaDeleteEnabled = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *AwsS3BucketBucketVersioningConfiguration) SetStatus(v string) *AwsS3BucketBucketVersioningConfiguration { + s.Status = &v + return s +} + +// The details of an Amazon S3 bucket. +type AwsS3BucketDetails struct { + _ struct{} `type:"structure"` + + // The access control list for the S3 bucket. + AccessControlList *string `type:"string"` + + // The lifecycle configuration for objects in the S3 bucket. + BucketLifecycleConfiguration *AwsS3BucketBucketLifecycleConfigurationDetails `type:"structure"` + + // The logging configuration for the S3 bucket. + BucketLoggingConfiguration *AwsS3BucketLoggingConfiguration `type:"structure"` + + // The notification configuration for the S3 bucket. + BucketNotificationConfiguration *AwsS3BucketNotificationConfiguration `type:"structure"` + + // The versioning state of an S3 bucket. + BucketVersioningConfiguration *AwsS3BucketBucketVersioningConfiguration `type:"structure"` + + // The website configuration parameters for the S3 bucket. + BucketWebsiteConfiguration *AwsS3BucketWebsiteConfiguration `type:"structure"` + + // Indicates when the S3 bucket was created. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + CreatedAt *string `type:"string"` + + // The Amazon Web Services account identifier of the account that owns the S3 + // bucket. + OwnerAccountId *string `type:"string"` + + // The canonical user ID of the owner of the S3 bucket. + OwnerId *string `type:"string"` + + // The display name of the owner of the S3 bucket. + OwnerName *string `type:"string"` + + // Provides information about the Amazon S3 Public Access Block configuration + // for the S3 bucket. + PublicAccessBlockConfiguration *AwsS3AccountPublicAccessBlockDetails `type:"structure"` + + // The encryption rules that are applied to the S3 bucket. + ServerSideEncryptionConfiguration *AwsS3BucketServerSideEncryptionConfiguration `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketDetails) GoString() string { + return s.String() +} + +// SetAccessControlList sets the AccessControlList field's value. +func (s *AwsS3BucketDetails) SetAccessControlList(v string) *AwsS3BucketDetails { + s.AccessControlList = &v + return s +} + +// SetBucketLifecycleConfiguration sets the BucketLifecycleConfiguration field's value. +func (s *AwsS3BucketDetails) SetBucketLifecycleConfiguration(v *AwsS3BucketBucketLifecycleConfigurationDetails) *AwsS3BucketDetails { + s.BucketLifecycleConfiguration = v + return s +} + +// SetBucketLoggingConfiguration sets the BucketLoggingConfiguration field's value. +func (s *AwsS3BucketDetails) SetBucketLoggingConfiguration(v *AwsS3BucketLoggingConfiguration) *AwsS3BucketDetails { + s.BucketLoggingConfiguration = v + return s +} + +// SetBucketNotificationConfiguration sets the BucketNotificationConfiguration field's value. +func (s *AwsS3BucketDetails) SetBucketNotificationConfiguration(v *AwsS3BucketNotificationConfiguration) *AwsS3BucketDetails { + s.BucketNotificationConfiguration = v + return s +} + +// SetBucketVersioningConfiguration sets the BucketVersioningConfiguration field's value. +func (s *AwsS3BucketDetails) SetBucketVersioningConfiguration(v *AwsS3BucketBucketVersioningConfiguration) *AwsS3BucketDetails { + s.BucketVersioningConfiguration = v + return s +} + +// SetBucketWebsiteConfiguration sets the BucketWebsiteConfiguration field's value. +func (s *AwsS3BucketDetails) SetBucketWebsiteConfiguration(v *AwsS3BucketWebsiteConfiguration) *AwsS3BucketDetails { + s.BucketWebsiteConfiguration = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *AwsS3BucketDetails) SetCreatedAt(v string) *AwsS3BucketDetails { + s.CreatedAt = &v + return s +} + +// SetOwnerAccountId sets the OwnerAccountId field's value. +func (s *AwsS3BucketDetails) SetOwnerAccountId(v string) *AwsS3BucketDetails { + s.OwnerAccountId = &v + return s +} + +// SetOwnerId sets the OwnerId field's value. +func (s *AwsS3BucketDetails) SetOwnerId(v string) *AwsS3BucketDetails { + s.OwnerId = &v + return s +} + +// SetOwnerName sets the OwnerName field's value. +func (s *AwsS3BucketDetails) SetOwnerName(v string) *AwsS3BucketDetails { + s.OwnerName = &v + return s +} + +// SetPublicAccessBlockConfiguration sets the PublicAccessBlockConfiguration field's value. +func (s *AwsS3BucketDetails) SetPublicAccessBlockConfiguration(v *AwsS3AccountPublicAccessBlockDetails) *AwsS3BucketDetails { + s.PublicAccessBlockConfiguration = v + return s +} + +// SetServerSideEncryptionConfiguration sets the ServerSideEncryptionConfiguration field's value. +func (s *AwsS3BucketDetails) SetServerSideEncryptionConfiguration(v *AwsS3BucketServerSideEncryptionConfiguration) *AwsS3BucketDetails { + s.ServerSideEncryptionConfiguration = v + return s +} + +// Information about logging for the S3 bucket +type AwsS3BucketLoggingConfiguration struct { + _ struct{} `type:"structure"` + + // The name of the S3 bucket where log files for the S3 bucket are stored. + DestinationBucketName *string `type:"string"` + + // The prefix added to log files for the S3 bucket. + LogFilePrefix *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketLoggingConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketLoggingConfiguration) GoString() string { + return s.String() +} + +// SetDestinationBucketName sets the DestinationBucketName field's value. +func (s *AwsS3BucketLoggingConfiguration) SetDestinationBucketName(v string) *AwsS3BucketLoggingConfiguration { + s.DestinationBucketName = &v + return s +} + +// SetLogFilePrefix sets the LogFilePrefix field's value. +func (s *AwsS3BucketLoggingConfiguration) SetLogFilePrefix(v string) *AwsS3BucketLoggingConfiguration { + s.LogFilePrefix = &v + return s +} + +// The notification configuration for the S3 bucket. +type AwsS3BucketNotificationConfiguration struct { + _ struct{} `type:"structure"` + + // Configurations for S3 bucket notifications. + Configurations []*AwsS3BucketNotificationConfigurationDetail `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketNotificationConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketNotificationConfiguration) GoString() string { + return s.String() +} + +// SetConfigurations sets the Configurations field's value. +func (s *AwsS3BucketNotificationConfiguration) SetConfigurations(v []*AwsS3BucketNotificationConfigurationDetail) *AwsS3BucketNotificationConfiguration { + s.Configurations = v + return s +} + +// Details for an S3 bucket notification configuration. +type AwsS3BucketNotificationConfigurationDetail struct { + _ struct{} `type:"structure"` + + // The ARN of the Lambda function, Amazon SQS queue, or Amazon SNS topic that + // generates the notification. + Destination *string `type:"string"` + + // The list of events that trigger a notification. + Events []*string `type:"list"` + + // The filters that determine which S3 buckets generate notifications. + Filter *AwsS3BucketNotificationConfigurationFilter `type:"structure"` + + // Indicates the type of notification. Notifications can be generated using + // Lambda functions, Amazon SQS queues, or Amazon SNS topics, with corresponding + // valid values as follows: + // + // * LambdaConfiguration + // + // * QueueConfiguration + // + // * TopicConfiguration + Type *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketNotificationConfigurationDetail) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketNotificationConfigurationDetail) GoString() string { + return s.String() +} + +// SetDestination sets the Destination field's value. +func (s *AwsS3BucketNotificationConfigurationDetail) SetDestination(v string) *AwsS3BucketNotificationConfigurationDetail { + s.Destination = &v + return s +} + +// SetEvents sets the Events field's value. +func (s *AwsS3BucketNotificationConfigurationDetail) SetEvents(v []*string) *AwsS3BucketNotificationConfigurationDetail { + s.Events = v + return s +} + +// SetFilter sets the Filter field's value. +func (s *AwsS3BucketNotificationConfigurationDetail) SetFilter(v *AwsS3BucketNotificationConfigurationFilter) *AwsS3BucketNotificationConfigurationDetail { + s.Filter = v + return s +} + +// SetType sets the Type field's value. +func (s *AwsS3BucketNotificationConfigurationDetail) SetType(v string) *AwsS3BucketNotificationConfigurationDetail { + s.Type = &v + return s +} + +// Filtering information for the notifications. The filtering is based on Amazon +// S3 key names. +type AwsS3BucketNotificationConfigurationFilter struct { + _ struct{} `type:"structure"` + + // Details for an Amazon S3 filter. + S3KeyFilter *AwsS3BucketNotificationConfigurationS3KeyFilter `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketNotificationConfigurationFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketNotificationConfigurationFilter) GoString() string { + return s.String() +} + +// SetS3KeyFilter sets the S3KeyFilter field's value. +func (s *AwsS3BucketNotificationConfigurationFilter) SetS3KeyFilter(v *AwsS3BucketNotificationConfigurationS3KeyFilter) *AwsS3BucketNotificationConfigurationFilter { + s.S3KeyFilter = v + return s +} + +// Details for an Amazon S3 filter. +type AwsS3BucketNotificationConfigurationS3KeyFilter struct { + _ struct{} `type:"structure"` + + // The filter rules for the filter. + FilterRules []*AwsS3BucketNotificationConfigurationS3KeyFilterRule `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketNotificationConfigurationS3KeyFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketNotificationConfigurationS3KeyFilter) GoString() string { + return s.String() +} + +// SetFilterRules sets the FilterRules field's value. +func (s *AwsS3BucketNotificationConfigurationS3KeyFilter) SetFilterRules(v []*AwsS3BucketNotificationConfigurationS3KeyFilterRule) *AwsS3BucketNotificationConfigurationS3KeyFilter { + s.FilterRules = v + return s +} + +// Details for a filter rule. +type AwsS3BucketNotificationConfigurationS3KeyFilterRule struct { + _ struct{} `type:"structure"` + + // Indicates whether the filter is based on the prefix or suffix of the Amazon + // S3 key. + Name *string `type:"string" enum:"AwsS3BucketNotificationConfigurationS3KeyFilterRuleName"` + + // The filter value. + Value *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketNotificationConfigurationS3KeyFilterRule) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketNotificationConfigurationS3KeyFilterRule) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *AwsS3BucketNotificationConfigurationS3KeyFilterRule) SetName(v string) *AwsS3BucketNotificationConfigurationS3KeyFilterRule { + s.Name = &v + return s +} + +// SetValue sets the Value field's value. +func (s *AwsS3BucketNotificationConfigurationS3KeyFilterRule) SetValue(v string) *AwsS3BucketNotificationConfigurationS3KeyFilterRule { + s.Value = &v + return s +} + +// Specifies the default server-side encryption to apply to new objects in the +// bucket. +type AwsS3BucketServerSideEncryptionByDefault struct { + _ struct{} `type:"structure"` + + // KMS key ID to use for the default encryption. + KMSMasterKeyID *string `type:"string"` + + // Server-side encryption algorithm to use for the default encryption. Valid + // values are aws: kms or AES256. + SSEAlgorithm *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketServerSideEncryptionByDefault) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketServerSideEncryptionByDefault) GoString() string { + return s.String() +} + +// SetKMSMasterKeyID sets the KMSMasterKeyID field's value. +func (s *AwsS3BucketServerSideEncryptionByDefault) SetKMSMasterKeyID(v string) *AwsS3BucketServerSideEncryptionByDefault { + s.KMSMasterKeyID = &v + return s +} + +// SetSSEAlgorithm sets the SSEAlgorithm field's value. +func (s *AwsS3BucketServerSideEncryptionByDefault) SetSSEAlgorithm(v string) *AwsS3BucketServerSideEncryptionByDefault { + s.SSEAlgorithm = &v + return s +} + +// The encryption configuration for the S3 bucket. +type AwsS3BucketServerSideEncryptionConfiguration struct { + _ struct{} `type:"structure"` + + // The encryption rules that are applied to the S3 bucket. + Rules []*AwsS3BucketServerSideEncryptionRule `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketServerSideEncryptionConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketServerSideEncryptionConfiguration) GoString() string { + return s.String() +} + +// SetRules sets the Rules field's value. +func (s *AwsS3BucketServerSideEncryptionConfiguration) SetRules(v []*AwsS3BucketServerSideEncryptionRule) *AwsS3BucketServerSideEncryptionConfiguration { + s.Rules = v + return s +} + +// An encryption rule to apply to the S3 bucket. +type AwsS3BucketServerSideEncryptionRule struct { + _ struct{} `type:"structure"` + + // Specifies the default server-side encryption to apply to new objects in the + // bucket. If a PUT object request doesn't specify any server-side encryption, + // this default encryption is applied. + ApplyServerSideEncryptionByDefault *AwsS3BucketServerSideEncryptionByDefault `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketServerSideEncryptionRule) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketServerSideEncryptionRule) GoString() string { + return s.String() +} + +// SetApplyServerSideEncryptionByDefault sets the ApplyServerSideEncryptionByDefault field's value. +func (s *AwsS3BucketServerSideEncryptionRule) SetApplyServerSideEncryptionByDefault(v *AwsS3BucketServerSideEncryptionByDefault) *AwsS3BucketServerSideEncryptionRule { + s.ApplyServerSideEncryptionByDefault = v + return s +} + +// Website parameters for the S3 bucket. +type AwsS3BucketWebsiteConfiguration struct { + _ struct{} `type:"structure"` + + // The name of the error document for the website. + ErrorDocument *string `type:"string"` + + // The name of the index document for the website. + IndexDocumentSuffix *string `type:"string"` + + // The redirect behavior for requests to the website. + RedirectAllRequestsTo *AwsS3BucketWebsiteConfigurationRedirectTo `type:"structure"` + + // The rules for applying redirects for requests to the website. + RoutingRules []*AwsS3BucketWebsiteConfigurationRoutingRule `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketWebsiteConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketWebsiteConfiguration) GoString() string { + return s.String() +} + +// SetErrorDocument sets the ErrorDocument field's value. +func (s *AwsS3BucketWebsiteConfiguration) SetErrorDocument(v string) *AwsS3BucketWebsiteConfiguration { + s.ErrorDocument = &v + return s +} + +// SetIndexDocumentSuffix sets the IndexDocumentSuffix field's value. +func (s *AwsS3BucketWebsiteConfiguration) SetIndexDocumentSuffix(v string) *AwsS3BucketWebsiteConfiguration { + s.IndexDocumentSuffix = &v + return s +} + +// SetRedirectAllRequestsTo sets the RedirectAllRequestsTo field's value. +func (s *AwsS3BucketWebsiteConfiguration) SetRedirectAllRequestsTo(v *AwsS3BucketWebsiteConfigurationRedirectTo) *AwsS3BucketWebsiteConfiguration { + s.RedirectAllRequestsTo = v + return s +} + +// SetRoutingRules sets the RoutingRules field's value. +func (s *AwsS3BucketWebsiteConfiguration) SetRoutingRules(v []*AwsS3BucketWebsiteConfigurationRoutingRule) *AwsS3BucketWebsiteConfiguration { + s.RoutingRules = v + return s +} + +// The redirect behavior for requests to the website. +type AwsS3BucketWebsiteConfigurationRedirectTo struct { + _ struct{} `type:"structure"` + + // The name of the host to redirect requests to. + Hostname *string `type:"string"` + + // The protocol to use when redirecting requests. By default, this field uses + // the same protocol as the original request. Valid values are http or https. + Protocol *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketWebsiteConfigurationRedirectTo) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketWebsiteConfigurationRedirectTo) GoString() string { + return s.String() +} + +// SetHostname sets the Hostname field's value. +func (s *AwsS3BucketWebsiteConfigurationRedirectTo) SetHostname(v string) *AwsS3BucketWebsiteConfigurationRedirectTo { + s.Hostname = &v + return s +} + +// SetProtocol sets the Protocol field's value. +func (s *AwsS3BucketWebsiteConfigurationRedirectTo) SetProtocol(v string) *AwsS3BucketWebsiteConfigurationRedirectTo { + s.Protocol = &v + return s +} + +// A rule for redirecting requests to the website. +type AwsS3BucketWebsiteConfigurationRoutingRule struct { + _ struct{} `type:"structure"` + + // Provides the condition that must be met in order to apply the routing rule. + Condition *AwsS3BucketWebsiteConfigurationRoutingRuleCondition `type:"structure"` + + // Provides the rules to redirect the request if the condition in Condition + // is met. + Redirect *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketWebsiteConfigurationRoutingRule) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketWebsiteConfigurationRoutingRule) GoString() string { + return s.String() +} + +// SetCondition sets the Condition field's value. +func (s *AwsS3BucketWebsiteConfigurationRoutingRule) SetCondition(v *AwsS3BucketWebsiteConfigurationRoutingRuleCondition) *AwsS3BucketWebsiteConfigurationRoutingRule { + s.Condition = v + return s +} + +// SetRedirect sets the Redirect field's value. +func (s *AwsS3BucketWebsiteConfigurationRoutingRule) SetRedirect(v *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect) *AwsS3BucketWebsiteConfigurationRoutingRule { + s.Redirect = v + return s +} + +// The condition that must be met in order to apply the routing rule. +type AwsS3BucketWebsiteConfigurationRoutingRuleCondition struct { + _ struct{} `type:"structure"` + + // Indicates to redirect the request if the HTTP error code matches this value. + HttpErrorCodeReturnedEquals *string `type:"string"` + + // Indicates to redirect the request if the key prefix matches this value. + KeyPrefixEquals *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketWebsiteConfigurationRoutingRuleCondition) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketWebsiteConfigurationRoutingRuleCondition) GoString() string { + return s.String() +} + +// SetHttpErrorCodeReturnedEquals sets the HttpErrorCodeReturnedEquals field's value. +func (s *AwsS3BucketWebsiteConfigurationRoutingRuleCondition) SetHttpErrorCodeReturnedEquals(v string) *AwsS3BucketWebsiteConfigurationRoutingRuleCondition { + s.HttpErrorCodeReturnedEquals = &v + return s +} + +// SetKeyPrefixEquals sets the KeyPrefixEquals field's value. +func (s *AwsS3BucketWebsiteConfigurationRoutingRuleCondition) SetKeyPrefixEquals(v string) *AwsS3BucketWebsiteConfigurationRoutingRuleCondition { + s.KeyPrefixEquals = &v + return s +} + +// The rules to redirect the request if the condition in Condition is met. +type AwsS3BucketWebsiteConfigurationRoutingRuleRedirect struct { + _ struct{} `type:"structure"` + + // The host name to use in the redirect request. + Hostname *string `type:"string"` + + // The HTTP redirect code to use in the response. + HttpRedirectCode *string `type:"string"` + + // The protocol to use to redirect the request. By default, uses the protocol + // from the original request. + Protocol *string `type:"string"` + + // The object key prefix to use in the redirect request. + // + // Cannot be provided if ReplaceKeyWith is present. + ReplaceKeyPrefixWith *string `type:"string"` + + // The specific object key to use in the redirect request. + // + // Cannot be provided if ReplaceKeyPrefixWith is present. + ReplaceKeyWith *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketWebsiteConfigurationRoutingRuleRedirect) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3BucketWebsiteConfigurationRoutingRuleRedirect) GoString() string { + return s.String() +} + +// SetHostname sets the Hostname field's value. +func (s *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect) SetHostname(v string) *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect { + s.Hostname = &v + return s +} + +// SetHttpRedirectCode sets the HttpRedirectCode field's value. +func (s *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect) SetHttpRedirectCode(v string) *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect { + s.HttpRedirectCode = &v + return s +} + +// SetProtocol sets the Protocol field's value. +func (s *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect) SetProtocol(v string) *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect { + s.Protocol = &v + return s +} + +// SetReplaceKeyPrefixWith sets the ReplaceKeyPrefixWith field's value. +func (s *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect) SetReplaceKeyPrefixWith(v string) *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect { + s.ReplaceKeyPrefixWith = &v + return s +} + +// SetReplaceKeyWith sets the ReplaceKeyWith field's value. +func (s *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect) SetReplaceKeyWith(v string) *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect { + s.ReplaceKeyWith = &v + return s +} + +// Details about an Amazon S3 object. +type AwsS3ObjectDetails struct { + _ struct{} `type:"structure"` + + // A standard MIME type describing the format of the object data. + ContentType *string `type:"string"` + + // The opaque identifier assigned by a web server to a specific version of a + // resource found at a URL. + ETag *string `type:"string"` + + // Indicates when the object was last modified. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + LastModified *string `type:"string"` + + // The identifier of the KMS symmetric customer managed key that was used for + // the object. + SSEKMSKeyId *string `type:"string"` + + // If the object is stored using server-side encryption, the value of the server-side + // encryption algorithm used when storing this object in Amazon S3. + ServerSideEncryption *string `type:"string"` + + // The version of the object. + VersionId *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3ObjectDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsS3ObjectDetails) GoString() string { + return s.String() +} + +// SetContentType sets the ContentType field's value. +func (s *AwsS3ObjectDetails) SetContentType(v string) *AwsS3ObjectDetails { + s.ContentType = &v + return s +} + +// SetETag sets the ETag field's value. +func (s *AwsS3ObjectDetails) SetETag(v string) *AwsS3ObjectDetails { + s.ETag = &v + return s +} + +// SetLastModified sets the LastModified field's value. +func (s *AwsS3ObjectDetails) SetLastModified(v string) *AwsS3ObjectDetails { + s.LastModified = &v + return s +} + +// SetSSEKMSKeyId sets the SSEKMSKeyId field's value. +func (s *AwsS3ObjectDetails) SetSSEKMSKeyId(v string) *AwsS3ObjectDetails { + s.SSEKMSKeyId = &v + return s +} + +// SetServerSideEncryption sets the ServerSideEncryption field's value. +func (s *AwsS3ObjectDetails) SetServerSideEncryption(v string) *AwsS3ObjectDetails { + s.ServerSideEncryption = &v + return s +} + +// SetVersionId sets the VersionId field's value. +func (s *AwsS3ObjectDetails) SetVersionId(v string) *AwsS3ObjectDetails { + s.VersionId = &v + return s +} + +// Provides details about an Amazon SageMaker notebook instance. +type AwsSageMakerNotebookInstanceDetails struct { + _ struct{} `type:"structure"` + + // A list of Amazon Elastic Inference instance types to associate with the notebook + // instance. Currently, only one instance type can be associated with a notebook + // instance. + AcceleratorTypes []*string `type:"list"` + + // An array of up to three Git repositories associated with the notebook instance. + // These can be either the names of Git repositories stored as resources in + // your account, or the URL of Git repositories in AWS CodeCommit (https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html) + // or in any other Git repository. These repositories are cloned at the same + // level as the default repository of your notebook instance. For more information, + // see Associating Git repositories with SageMaker notebook instances (https://docs.aws.amazon.com/sagemaker/latest/dg/nbi-git-repo.html) + // in the Amazon SageMaker Developer Guide. + AdditionalCodeRepositories []*string `type:"list"` + + // The Git repository associated with the notebook instance as its default code + // repository. This can be either the name of a Git repository stored as a resource + // in your account, or the URL of a Git repository in AWS CodeCommit (https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html) + // or in any other Git repository. When you open a notebook instance, it opens + // in the directory that contains this repository. For more information, see + // Associating Git repositories with SageMaker notebook instances (https://docs.aws.amazon.com/sagemaker/latest/dg/nbi-git-repo.html) + // in the Amazon SageMaker Developer Guide. + DefaultCodeRepository *string `type:"string"` + + // Sets whether SageMaker provides internet access to the notebook instance. + // If you set this to Disabled, this notebook instance is able to access resources + // only in your VPC, and is not be able to connect to SageMaker training and + // endpoint services unless you configure a Network Address Translation (NAT) + // Gateway in your VPC. + DirectInternetAccess *string `type:"string"` + + // If status of the instance is Failed, the reason it failed. + FailureReason *string `type:"string"` + + // Information on the IMDS configuration of the notebook instance. + InstanceMetadataServiceConfiguration *AwsSageMakerNotebookInstanceMetadataServiceConfigurationDetails `type:"structure"` + + // The type of machine learning (ML) compute instance to launch for the notebook + // instance. + InstanceType *string `type:"string"` + + // The Amazon Resource Name (ARN) of an Key Management Service (KMS) key that + // SageMaker uses to encrypt data on the storage volume attached to your notebook + // instance. The KMS key you provide must be enabled. For information, see Enabling + // and disabling keys (https://docs.aws.amazon.com/kms/latest/developerguide/enabling-keys.html) + // in the Key Management Service Developer Guide. + KmsKeyId *string `type:"string"` + + // The network interface ID that SageMaker created when the instance was created. + NetworkInterfaceId *string `type:"string"` + + // The Amazon Resource Name (ARN) of the notebook instance. + NotebookInstanceArn *string `type:"string"` + + // The name of a notebook instance lifecycle configuration. + NotebookInstanceLifecycleConfigName *string `type:"string"` + + // The name of the new notebook instance. + NotebookInstanceName *string `type:"string"` + + // The status of the notebook instance. + NotebookInstanceStatus *string `type:"string"` + + // The platform identifier of the notebook instance runtime environment. + PlatformIdentifier *string `type:"string"` + + // The Amazon Resource Name (ARN) of the IAM role associated with the instance. + RoleArn *string `type:"string"` + + // Whether root access is enabled or disabled for users of the notebook instance. + RootAccess *string `type:"string"` + + // The VPC security group IDs. + SecurityGroups []*string `type:"list"` + + // The ID of the VPC subnet to which you have a connectivity from your ML compute + // instance. + SubnetId *string `type:"string"` + + // The URL that you use to connect to the Jupyter notebook that is running in + // your notebook instance. + Url *string `type:"string"` + + // The size, in GB, of the ML storage volume to attach to the notebook instance. + VolumeSizeInGB *int64 `type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsSageMakerNotebookInstanceDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsSageMakerNotebookInstanceDetails) GoString() string { + return s.String() +} + +// SetAcceleratorTypes sets the AcceleratorTypes field's value. +func (s *AwsSageMakerNotebookInstanceDetails) SetAcceleratorTypes(v []*string) *AwsSageMakerNotebookInstanceDetails { + s.AcceleratorTypes = v + return s +} + +// SetAdditionalCodeRepositories sets the AdditionalCodeRepositories field's value. +func (s *AwsSageMakerNotebookInstanceDetails) SetAdditionalCodeRepositories(v []*string) *AwsSageMakerNotebookInstanceDetails { + s.AdditionalCodeRepositories = v + return s +} + +// SetDefaultCodeRepository sets the DefaultCodeRepository field's value. +func (s *AwsSageMakerNotebookInstanceDetails) SetDefaultCodeRepository(v string) *AwsSageMakerNotebookInstanceDetails { + s.DefaultCodeRepository = &v + return s +} + +// SetDirectInternetAccess sets the DirectInternetAccess field's value. +func (s *AwsSageMakerNotebookInstanceDetails) SetDirectInternetAccess(v string) *AwsSageMakerNotebookInstanceDetails { + s.DirectInternetAccess = &v + return s +} + +// SetFailureReason sets the FailureReason field's value. +func (s *AwsSageMakerNotebookInstanceDetails) SetFailureReason(v string) *AwsSageMakerNotebookInstanceDetails { + s.FailureReason = &v + return s +} + +// SetInstanceMetadataServiceConfiguration sets the InstanceMetadataServiceConfiguration field's value. +func (s *AwsSageMakerNotebookInstanceDetails) SetInstanceMetadataServiceConfiguration(v *AwsSageMakerNotebookInstanceMetadataServiceConfigurationDetails) *AwsSageMakerNotebookInstanceDetails { + s.InstanceMetadataServiceConfiguration = v + return s +} + +// SetInstanceType sets the InstanceType field's value. +func (s *AwsSageMakerNotebookInstanceDetails) SetInstanceType(v string) *AwsSageMakerNotebookInstanceDetails { + s.InstanceType = &v + return s +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *AwsSageMakerNotebookInstanceDetails) SetKmsKeyId(v string) *AwsSageMakerNotebookInstanceDetails { + s.KmsKeyId = &v + return s +} + +// SetNetworkInterfaceId sets the NetworkInterfaceId field's value. +func (s *AwsSageMakerNotebookInstanceDetails) SetNetworkInterfaceId(v string) *AwsSageMakerNotebookInstanceDetails { + s.NetworkInterfaceId = &v + return s +} + +// SetNotebookInstanceArn sets the NotebookInstanceArn field's value. +func (s *AwsSageMakerNotebookInstanceDetails) SetNotebookInstanceArn(v string) *AwsSageMakerNotebookInstanceDetails { + s.NotebookInstanceArn = &v + return s +} + +// SetNotebookInstanceLifecycleConfigName sets the NotebookInstanceLifecycleConfigName field's value. +func (s *AwsSageMakerNotebookInstanceDetails) SetNotebookInstanceLifecycleConfigName(v string) *AwsSageMakerNotebookInstanceDetails { + s.NotebookInstanceLifecycleConfigName = &v + return s +} + +// SetNotebookInstanceName sets the NotebookInstanceName field's value. +func (s *AwsSageMakerNotebookInstanceDetails) SetNotebookInstanceName(v string) *AwsSageMakerNotebookInstanceDetails { + s.NotebookInstanceName = &v + return s +} + +// SetNotebookInstanceStatus sets the NotebookInstanceStatus field's value. +func (s *AwsSageMakerNotebookInstanceDetails) SetNotebookInstanceStatus(v string) *AwsSageMakerNotebookInstanceDetails { + s.NotebookInstanceStatus = &v + return s +} + +// SetPlatformIdentifier sets the PlatformIdentifier field's value. +func (s *AwsSageMakerNotebookInstanceDetails) SetPlatformIdentifier(v string) *AwsSageMakerNotebookInstanceDetails { + s.PlatformIdentifier = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *AwsSageMakerNotebookInstanceDetails) SetRoleArn(v string) *AwsSageMakerNotebookInstanceDetails { + s.RoleArn = &v + return s +} + +// SetRootAccess sets the RootAccess field's value. +func (s *AwsSageMakerNotebookInstanceDetails) SetRootAccess(v string) *AwsSageMakerNotebookInstanceDetails { + s.RootAccess = &v + return s +} + +// SetSecurityGroups sets the SecurityGroups field's value. +func (s *AwsSageMakerNotebookInstanceDetails) SetSecurityGroups(v []*string) *AwsSageMakerNotebookInstanceDetails { + s.SecurityGroups = v + return s +} + +// SetSubnetId sets the SubnetId field's value. +func (s *AwsSageMakerNotebookInstanceDetails) SetSubnetId(v string) *AwsSageMakerNotebookInstanceDetails { + s.SubnetId = &v + return s +} + +// SetUrl sets the Url field's value. +func (s *AwsSageMakerNotebookInstanceDetails) SetUrl(v string) *AwsSageMakerNotebookInstanceDetails { + s.Url = &v + return s +} + +// SetVolumeSizeInGB sets the VolumeSizeInGB field's value. +func (s *AwsSageMakerNotebookInstanceDetails) SetVolumeSizeInGB(v int64) *AwsSageMakerNotebookInstanceDetails { + s.VolumeSizeInGB = &v + return s +} + +// Information on the instance metadata service (IMDS) configuration of the +// notebook instance. +type AwsSageMakerNotebookInstanceMetadataServiceConfigurationDetails struct { + _ struct{} `type:"structure"` + + // Indicates the minimum IMDS version that the notebook instance supports. + MinimumInstanceMetadataServiceVersion *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsSageMakerNotebookInstanceMetadataServiceConfigurationDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsSageMakerNotebookInstanceMetadataServiceConfigurationDetails) GoString() string { + return s.String() +} + +// SetMinimumInstanceMetadataServiceVersion sets the MinimumInstanceMetadataServiceVersion field's value. +func (s *AwsSageMakerNotebookInstanceMetadataServiceConfigurationDetails) SetMinimumInstanceMetadataServiceVersion(v string) *AwsSageMakerNotebookInstanceMetadataServiceConfigurationDetails { + s.MinimumInstanceMetadataServiceVersion = &v + return s +} + +// Details about an Secrets Manager secret. +type AwsSecretsManagerSecretDetails struct { + _ struct{} `type:"structure"` + + // Whether the secret is deleted. + Deleted *bool `type:"boolean"` + + // The user-provided description of the secret. + Description *string `type:"string"` + + // The ARN, Key ID, or alias of the KMS key used to encrypt the SecretString + // or SecretBinary values for versions of this secret. + KmsKeyId *string `type:"string"` + + // The name of the secret. + Name *string `type:"string"` + + // Whether rotation is enabled. + RotationEnabled *bool `type:"boolean"` + + // The ARN of the Lambda function that rotates the secret. + RotationLambdaArn *string `type:"string"` + + // Whether the rotation occurred within the specified rotation frequency. + RotationOccurredWithinFrequency *bool `type:"boolean"` + + // Defines the rotation schedule for the secret. + RotationRules *AwsSecretsManagerSecretRotationRules `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsSecretsManagerSecretDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsSecretsManagerSecretDetails) GoString() string { + return s.String() +} + +// SetDeleted sets the Deleted field's value. +func (s *AwsSecretsManagerSecretDetails) SetDeleted(v bool) *AwsSecretsManagerSecretDetails { + s.Deleted = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *AwsSecretsManagerSecretDetails) SetDescription(v string) *AwsSecretsManagerSecretDetails { + s.Description = &v + return s +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *AwsSecretsManagerSecretDetails) SetKmsKeyId(v string) *AwsSecretsManagerSecretDetails { + s.KmsKeyId = &v + return s +} + +// SetName sets the Name field's value. +func (s *AwsSecretsManagerSecretDetails) SetName(v string) *AwsSecretsManagerSecretDetails { + s.Name = &v + return s +} + +// SetRotationEnabled sets the RotationEnabled field's value. +func (s *AwsSecretsManagerSecretDetails) SetRotationEnabled(v bool) *AwsSecretsManagerSecretDetails { + s.RotationEnabled = &v + return s +} + +// SetRotationLambdaArn sets the RotationLambdaArn field's value. +func (s *AwsSecretsManagerSecretDetails) SetRotationLambdaArn(v string) *AwsSecretsManagerSecretDetails { + s.RotationLambdaArn = &v + return s +} + +// SetRotationOccurredWithinFrequency sets the RotationOccurredWithinFrequency field's value. +func (s *AwsSecretsManagerSecretDetails) SetRotationOccurredWithinFrequency(v bool) *AwsSecretsManagerSecretDetails { + s.RotationOccurredWithinFrequency = &v + return s +} + +// SetRotationRules sets the RotationRules field's value. +func (s *AwsSecretsManagerSecretDetails) SetRotationRules(v *AwsSecretsManagerSecretRotationRules) *AwsSecretsManagerSecretDetails { + s.RotationRules = v + return s +} + +// Defines the rotation schedule for the secret. +type AwsSecretsManagerSecretRotationRules struct { + _ struct{} `type:"structure"` + + // The number of days after the previous rotation to rotate the secret. + AutomaticallyAfterDays *int64 `type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsSecretsManagerSecretRotationRules) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsSecretsManagerSecretRotationRules) GoString() string { + return s.String() +} + +// SetAutomaticallyAfterDays sets the AutomaticallyAfterDays field's value. +func (s *AwsSecretsManagerSecretRotationRules) SetAutomaticallyAfterDays(v int64) *AwsSecretsManagerSecretRotationRules { + s.AutomaticallyAfterDays = &v + return s +} + +// Provides a consistent format for Security Hub findings. AwsSecurityFinding +// format allows you to share findings between Amazon Web Services security +// services and third-party solutions. +// +// A finding is a potential security issue generated either by Amazon Web Services +// services or by the integrated third-party solutions and standards checks. +type AwsSecurityFinding struct { + _ struct{} `type:"structure"` + + // Provides details about an action that affects or that was taken on a resource. + Action *Action `type:"structure"` + + // The Amazon Web Services account ID that a finding is generated in. + // + // AwsAccountId is a required field + AwsAccountId *string `type:"string" required:"true"` + + // The name of the company for the product that generated the finding. + // + // Security Hub populates this attribute automatically for each finding. You + // cannot update this attribute with BatchImportFindings or BatchUpdateFindings. + // The exception to this is a custom integration. + // + // When you use the Security Hub console or API to filter findings by company + // name, you use this attribute. + CompanyName *string `type:"string"` + + // This data type is exclusive to findings that are generated as the result + // of a check run against a specific rule in a supported security standard, + // such as CIS Amazon Web Services Foundations. Contains security standard-related + // finding details. + Compliance *Compliance `type:"structure"` + + // A finding's confidence. Confidence is defined as the likelihood that a finding + // accurately identifies the behavior or issue that it was intended to identify. + // + // Confidence is scored on a 0-100 basis using a ratio scale, where 0 means + // zero percent confidence and 100 means 100 percent confidence. + Confidence *int64 `type:"integer"` + + // Indicates when the security-findings provider created the potential security + // issue that a finding captured. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + // + // CreatedAt is a required field + CreatedAt *string `type:"string" required:"true"` + + // The level of importance assigned to the resources associated with the finding. + // + // A score of 0 means that the underlying resources have no criticality, and + // a score of 100 is reserved for the most critical resources. + Criticality *int64 `type:"integer"` + + // A finding's description. + // + // In this release, Description is a required property. + // + // Description is a required field + Description *string `type:"string" required:"true"` + + // In a BatchImportFindings request, finding providers use FindingProviderFields + // to provide and update their own values for confidence, criticality, related + // findings, severity, and types. + FindingProviderFields *FindingProviderFields `type:"structure"` + + // Indicates when the security-findings provider first observed the potential + // security issue that a finding captured. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + FirstObservedAt *string `type:"string"` + + // The identifier for the solution-specific component (a discrete unit of logic) + // that generated a finding. In various security-findings providers' solutions, + // this generator can be called a rule, a check, a detector, a plugin, etc. + // + // GeneratorId is a required field + GeneratorId *string `type:"string" required:"true"` + + // The security findings provider-specific identifier for a finding. + // + // Id is a required field + Id *string `type:"string" required:"true"` + + // Indicates when the security-findings provider most recently observed the + // potential security issue that a finding captured. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + LastObservedAt *string `type:"string"` + + // A list of malware related to a finding. + Malware []*Malware `type:"list"` + + // The details of network-related information about a finding. + Network *Network `type:"structure"` + + // Provides information about a network path that is relevant to a finding. + // Each entry under NetworkPath represents a component of that path. + NetworkPath []*NetworkPathComponent `type:"list"` + + // A user-defined note added to a finding. + Note *Note `type:"structure"` + + // Provides an overview of the patch compliance status for an instance against + // a selected compliance standard. + PatchSummary *PatchSummary `type:"structure"` + + // The details of process-related information about a finding. + Process *ProcessDetails `type:"structure"` + + // The ARN generated by Security Hub that uniquely identifies a product that + // generates findings. This can be the ARN for a third-party product that is + // integrated with Security Hub, or the ARN for a custom integration. + // + // ProductArn is a required field + ProductArn *string `type:"string" required:"true"` + + // A data type where security-findings providers can include additional solution-specific + // details that aren't part of the defined AwsSecurityFinding format. + // + // Can contain up to 50 key-value pairs. For each key-value pair, the key can + // contain up to 128 characters, and the value can contain up to 2048 characters. + ProductFields map[string]*string `type:"map"` + + // The name of the product that generated the finding. + // + // Security Hub populates this attribute automatically for each finding. You + // cannot update this attribute with BatchImportFindings or BatchUpdateFindings. + // The exception to this is a custom integration. + // + // When you use the Security Hub console or API to filter findings by product + // name, you use this attribute. + ProductName *string `type:"string"` + + // The record state of a finding. + RecordState *string `type:"string" enum:"RecordState"` + + // The Region from which the finding was generated. + // + // Security Hub populates this attribute automatically for each finding. You + // cannot update it using BatchImportFindings or BatchUpdateFindings. + Region *string `type:"string"` + + // A list of related findings. + RelatedFindings []*RelatedFinding `type:"list"` + + // A data type that describes the remediation options for a finding. + Remediation *Remediation `type:"structure"` + + // A set of resource data types that describe the resources that the finding + // refers to. + // + // Resources is a required field + Resources []*Resource `type:"list" required:"true"` + + // Indicates whether the finding is a sample finding. + Sample *bool `type:"boolean"` + + // The schema version that a finding is formatted for. + // + // SchemaVersion is a required field + SchemaVersion *string `type:"string" required:"true"` + + // A finding's severity. + Severity *Severity `type:"structure"` + + // A URL that links to a page about the current finding in the security-findings + // provider's solution. + SourceUrl *string `type:"string"` + + // Threat intelligence details related to a finding. + ThreatIntelIndicators []*ThreatIntelIndicator `type:"list"` + + // Details about the threat detected in a security finding and the file paths + // that were affected by the threat. + Threats []*Threat `type:"list"` + + // A finding's title. + // + // In this release, Title is a required property. + // + // Title is a required field + Title *string `type:"string" required:"true"` + + // One or more finding types in the format of namespace/category/classifier + // that classify a finding. + // + // Valid namespace values are: Software and Configuration Checks | TTPs | Effects + // | Unusual Behaviors | Sensitive Data Identifications + Types []*string `type:"list"` + + // Indicates when the security-findings provider last updated the finding record. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + // + // UpdatedAt is a required field + UpdatedAt *string `type:"string" required:"true"` + + // A list of name/value string pairs associated with the finding. These are + // custom, user-defined fields added to a finding. + UserDefinedFields map[string]*string `type:"map"` + + // Indicates the veracity of a finding. + VerificationState *string `type:"string" enum:"VerificationState"` + + // Provides a list of vulnerabilities associated with the findings. + Vulnerabilities []*Vulnerability `type:"list"` + + // Provides information about the status of the investigation into a finding. + Workflow *Workflow `type:"structure"` + + // The workflow state of a finding. + WorkflowState *string `deprecated:"true" type:"string" enum:"WorkflowState"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsSecurityFinding) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsSecurityFinding) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AwsSecurityFinding) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AwsSecurityFinding"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.CreatedAt == nil { + invalidParams.Add(request.NewErrParamRequired("CreatedAt")) + } + if s.Description == nil { + invalidParams.Add(request.NewErrParamRequired("Description")) + } + if s.GeneratorId == nil { + invalidParams.Add(request.NewErrParamRequired("GeneratorId")) + } + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + if s.ProductArn == nil { + invalidParams.Add(request.NewErrParamRequired("ProductArn")) + } + if s.Resources == nil { + invalidParams.Add(request.NewErrParamRequired("Resources")) + } + if s.SchemaVersion == nil { + invalidParams.Add(request.NewErrParamRequired("SchemaVersion")) + } + if s.Title == nil { + invalidParams.Add(request.NewErrParamRequired("Title")) + } + if s.UpdatedAt == nil { + invalidParams.Add(request.NewErrParamRequired("UpdatedAt")) } if s.Compliance != nil { if err := s.Compliance.Validate(); err != nil { @@ -31999,630 +34409,1329 @@ func (s *AwsSecurityFinding) Validate() error { } } - if invalidParams.Len() > 0 { - return invalidParams - } - return nil + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAction sets the Action field's value. +func (s *AwsSecurityFinding) SetAction(v *Action) *AwsSecurityFinding { + s.Action = v + return s +} + +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *AwsSecurityFinding) SetAwsAccountId(v string) *AwsSecurityFinding { + s.AwsAccountId = &v + return s +} + +// SetCompanyName sets the CompanyName field's value. +func (s *AwsSecurityFinding) SetCompanyName(v string) *AwsSecurityFinding { + s.CompanyName = &v + return s +} + +// SetCompliance sets the Compliance field's value. +func (s *AwsSecurityFinding) SetCompliance(v *Compliance) *AwsSecurityFinding { + s.Compliance = v + return s +} + +// SetConfidence sets the Confidence field's value. +func (s *AwsSecurityFinding) SetConfidence(v int64) *AwsSecurityFinding { + s.Confidence = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *AwsSecurityFinding) SetCreatedAt(v string) *AwsSecurityFinding { + s.CreatedAt = &v + return s +} + +// SetCriticality sets the Criticality field's value. +func (s *AwsSecurityFinding) SetCriticality(v int64) *AwsSecurityFinding { + s.Criticality = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *AwsSecurityFinding) SetDescription(v string) *AwsSecurityFinding { + s.Description = &v + return s +} + +// SetFindingProviderFields sets the FindingProviderFields field's value. +func (s *AwsSecurityFinding) SetFindingProviderFields(v *FindingProviderFields) *AwsSecurityFinding { + s.FindingProviderFields = v + return s +} + +// SetFirstObservedAt sets the FirstObservedAt field's value. +func (s *AwsSecurityFinding) SetFirstObservedAt(v string) *AwsSecurityFinding { + s.FirstObservedAt = &v + return s +} + +// SetGeneratorId sets the GeneratorId field's value. +func (s *AwsSecurityFinding) SetGeneratorId(v string) *AwsSecurityFinding { + s.GeneratorId = &v + return s +} + +// SetId sets the Id field's value. +func (s *AwsSecurityFinding) SetId(v string) *AwsSecurityFinding { + s.Id = &v + return s +} + +// SetLastObservedAt sets the LastObservedAt field's value. +func (s *AwsSecurityFinding) SetLastObservedAt(v string) *AwsSecurityFinding { + s.LastObservedAt = &v + return s +} + +// SetMalware sets the Malware field's value. +func (s *AwsSecurityFinding) SetMalware(v []*Malware) *AwsSecurityFinding { + s.Malware = v + return s +} + +// SetNetwork sets the Network field's value. +func (s *AwsSecurityFinding) SetNetwork(v *Network) *AwsSecurityFinding { + s.Network = v + return s +} + +// SetNetworkPath sets the NetworkPath field's value. +func (s *AwsSecurityFinding) SetNetworkPath(v []*NetworkPathComponent) *AwsSecurityFinding { + s.NetworkPath = v + return s +} + +// SetNote sets the Note field's value. +func (s *AwsSecurityFinding) SetNote(v *Note) *AwsSecurityFinding { + s.Note = v + return s +} + +// SetPatchSummary sets the PatchSummary field's value. +func (s *AwsSecurityFinding) SetPatchSummary(v *PatchSummary) *AwsSecurityFinding { + s.PatchSummary = v + return s +} + +// SetProcess sets the Process field's value. +func (s *AwsSecurityFinding) SetProcess(v *ProcessDetails) *AwsSecurityFinding { + s.Process = v + return s +} + +// SetProductArn sets the ProductArn field's value. +func (s *AwsSecurityFinding) SetProductArn(v string) *AwsSecurityFinding { + s.ProductArn = &v + return s +} + +// SetProductFields sets the ProductFields field's value. +func (s *AwsSecurityFinding) SetProductFields(v map[string]*string) *AwsSecurityFinding { + s.ProductFields = v + return s +} + +// SetProductName sets the ProductName field's value. +func (s *AwsSecurityFinding) SetProductName(v string) *AwsSecurityFinding { + s.ProductName = &v + return s +} + +// SetRecordState sets the RecordState field's value. +func (s *AwsSecurityFinding) SetRecordState(v string) *AwsSecurityFinding { + s.RecordState = &v + return s +} + +// SetRegion sets the Region field's value. +func (s *AwsSecurityFinding) SetRegion(v string) *AwsSecurityFinding { + s.Region = &v + return s +} + +// SetRelatedFindings sets the RelatedFindings field's value. +func (s *AwsSecurityFinding) SetRelatedFindings(v []*RelatedFinding) *AwsSecurityFinding { + s.RelatedFindings = v + return s +} + +// SetRemediation sets the Remediation field's value. +func (s *AwsSecurityFinding) SetRemediation(v *Remediation) *AwsSecurityFinding { + s.Remediation = v + return s +} + +// SetResources sets the Resources field's value. +func (s *AwsSecurityFinding) SetResources(v []*Resource) *AwsSecurityFinding { + s.Resources = v + return s +} + +// SetSample sets the Sample field's value. +func (s *AwsSecurityFinding) SetSample(v bool) *AwsSecurityFinding { + s.Sample = &v + return s +} + +// SetSchemaVersion sets the SchemaVersion field's value. +func (s *AwsSecurityFinding) SetSchemaVersion(v string) *AwsSecurityFinding { + s.SchemaVersion = &v + return s +} + +// SetSeverity sets the Severity field's value. +func (s *AwsSecurityFinding) SetSeverity(v *Severity) *AwsSecurityFinding { + s.Severity = v + return s +} + +// SetSourceUrl sets the SourceUrl field's value. +func (s *AwsSecurityFinding) SetSourceUrl(v string) *AwsSecurityFinding { + s.SourceUrl = &v + return s +} + +// SetThreatIntelIndicators sets the ThreatIntelIndicators field's value. +func (s *AwsSecurityFinding) SetThreatIntelIndicators(v []*ThreatIntelIndicator) *AwsSecurityFinding { + s.ThreatIntelIndicators = v + return s +} + +// SetThreats sets the Threats field's value. +func (s *AwsSecurityFinding) SetThreats(v []*Threat) *AwsSecurityFinding { + s.Threats = v + return s +} + +// SetTitle sets the Title field's value. +func (s *AwsSecurityFinding) SetTitle(v string) *AwsSecurityFinding { + s.Title = &v + return s +} + +// SetTypes sets the Types field's value. +func (s *AwsSecurityFinding) SetTypes(v []*string) *AwsSecurityFinding { + s.Types = v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *AwsSecurityFinding) SetUpdatedAt(v string) *AwsSecurityFinding { + s.UpdatedAt = &v + return s +} + +// SetUserDefinedFields sets the UserDefinedFields field's value. +func (s *AwsSecurityFinding) SetUserDefinedFields(v map[string]*string) *AwsSecurityFinding { + s.UserDefinedFields = v + return s +} + +// SetVerificationState sets the VerificationState field's value. +func (s *AwsSecurityFinding) SetVerificationState(v string) *AwsSecurityFinding { + s.VerificationState = &v + return s +} + +// SetVulnerabilities sets the Vulnerabilities field's value. +func (s *AwsSecurityFinding) SetVulnerabilities(v []*Vulnerability) *AwsSecurityFinding { + s.Vulnerabilities = v + return s +} + +// SetWorkflow sets the Workflow field's value. +func (s *AwsSecurityFinding) SetWorkflow(v *Workflow) *AwsSecurityFinding { + s.Workflow = v + return s +} + +// SetWorkflowState sets the WorkflowState field's value. +func (s *AwsSecurityFinding) SetWorkflowState(v string) *AwsSecurityFinding { + s.WorkflowState = &v + return s +} + +// A collection of attributes that are applied to all active Security Hub-aggregated +// findings and that result in a subset of findings that are included in this +// insight. +// +// You can filter by up to 10 finding attributes. For each attribute, you can +// provide up to 20 filter values. +type AwsSecurityFindingFilters struct { + _ struct{} `type:"structure"` + + // The Amazon Web Services account ID that a finding is generated in. + AwsAccountId []*StringFilter `type:"list"` + + // The name of the findings provider (company) that owns the solution (product) + // that generates findings. + CompanyName []*StringFilter `type:"list"` + + // Exclusive to findings that are generated as the result of a check run against + // a specific rule in a supported standard, such as CIS Amazon Web Services + // Foundations. Contains security standard-related finding details. + ComplianceStatus []*StringFilter `type:"list"` + + // A finding's confidence. Confidence is defined as the likelihood that a finding + // accurately identifies the behavior or issue that it was intended to identify. + // + // Confidence is scored on a 0-100 basis using a ratio scale, where 0 means + // zero percent confidence and 100 means 100 percent confidence. + Confidence []*NumberFilter `type:"list"` + + // An ISO8601-formatted timestamp that indicates when the security-findings + // provider captured the potential security issue that a finding captured. + CreatedAt []*DateFilter `type:"list"` + + // The level of importance assigned to the resources associated with the finding. + // + // A score of 0 means that the underlying resources have no criticality, and + // a score of 100 is reserved for the most critical resources. + Criticality []*NumberFilter `type:"list"` + + // A finding's description. + Description []*StringFilter `type:"list"` + + // The finding provider value for the finding confidence. Confidence is defined + // as the likelihood that a finding accurately identifies the behavior or issue + // that it was intended to identify. + // + // Confidence is scored on a 0-100 basis using a ratio scale, where 0 means + // zero percent confidence and 100 means 100 percent confidence. + FindingProviderFieldsConfidence []*NumberFilter `type:"list"` + + // The finding provider value for the level of importance assigned to the resources + // associated with the findings. + // + // A score of 0 means that the underlying resources have no criticality, and + // a score of 100 is reserved for the most critical resources. + FindingProviderFieldsCriticality []*NumberFilter `type:"list"` + + // The finding identifier of a related finding that is identified by the finding + // provider. + FindingProviderFieldsRelatedFindingsId []*StringFilter `type:"list"` + + // The ARN of the solution that generated a related finding that is identified + // by the finding provider. + FindingProviderFieldsRelatedFindingsProductArn []*StringFilter `type:"list"` + + // The finding provider value for the severity label. + FindingProviderFieldsSeverityLabel []*StringFilter `type:"list"` + + // The finding provider's original value for the severity. + FindingProviderFieldsSeverityOriginal []*StringFilter `type:"list"` + + // One or more finding types that the finding provider assigned to the finding. + // Uses the format of namespace/category/classifier that classify a finding. + // + // Valid namespace values are: Software and Configuration Checks | TTPs | Effects + // | Unusual Behaviors | Sensitive Data Identifications + FindingProviderFieldsTypes []*StringFilter `type:"list"` + + // An ISO8601-formatted timestamp that indicates when the security-findings + // provider first observed the potential security issue that a finding captured. + FirstObservedAt []*DateFilter `type:"list"` + + // The identifier for the solution-specific component (a discrete unit of logic) + // that generated a finding. In various security-findings providers' solutions, + // this generator can be called a rule, a check, a detector, a plugin, etc. + GeneratorId []*StringFilter `type:"list"` + + // The security findings provider-specific identifier for a finding. + Id []*StringFilter `type:"list"` + + // A keyword for a finding. + // + // Deprecated: The Keyword property is deprecated. + Keyword []*KeywordFilter `deprecated:"true" type:"list"` + + // An ISO8601-formatted timestamp that indicates when the security-findings + // provider most recently observed the potential security issue that a finding + // captured. + LastObservedAt []*DateFilter `type:"list"` + + // The name of the malware that was observed. + MalwareName []*StringFilter `type:"list"` + + // The filesystem path of the malware that was observed. + MalwarePath []*StringFilter `type:"list"` + + // The state of the malware that was observed. + MalwareState []*StringFilter `type:"list"` + + // The type of the malware that was observed. + MalwareType []*StringFilter `type:"list"` + + // The destination domain of network-related information about a finding. + NetworkDestinationDomain []*StringFilter `type:"list"` + + // The destination IPv4 address of network-related information about a finding. + NetworkDestinationIpV4 []*IpFilter `type:"list"` + + // The destination IPv6 address of network-related information about a finding. + NetworkDestinationIpV6 []*IpFilter `type:"list"` + + // The destination port of network-related information about a finding. + NetworkDestinationPort []*NumberFilter `type:"list"` + + // Indicates the direction of network traffic associated with a finding. + NetworkDirection []*StringFilter `type:"list"` + + // The protocol of network-related information about a finding. + NetworkProtocol []*StringFilter `type:"list"` + + // The source domain of network-related information about a finding. + NetworkSourceDomain []*StringFilter `type:"list"` + + // The source IPv4 address of network-related information about a finding. + NetworkSourceIpV4 []*IpFilter `type:"list"` + + // The source IPv6 address of network-related information about a finding. + NetworkSourceIpV6 []*IpFilter `type:"list"` + + // The source media access control (MAC) address of network-related information + // about a finding. + NetworkSourceMac []*StringFilter `type:"list"` + + // The source port of network-related information about a finding. + NetworkSourcePort []*NumberFilter `type:"list"` + + // The text of a note. + NoteText []*StringFilter `type:"list"` + + // The timestamp of when the note was updated. + NoteUpdatedAt []*DateFilter `type:"list"` + + // The principal that created a note. + NoteUpdatedBy []*StringFilter `type:"list"` + + // The date/time that the process was launched. + ProcessLaunchedAt []*DateFilter `type:"list"` + + // The name of the process. + ProcessName []*StringFilter `type:"list"` + + // The parent process ID. + ProcessParentPid []*NumberFilter `type:"list"` + + // The path to the process executable. + ProcessPath []*StringFilter `type:"list"` + + // The process ID. + ProcessPid []*NumberFilter `type:"list"` + + // The date/time that the process was terminated. + ProcessTerminatedAt []*DateFilter `type:"list"` + + // The ARN generated by Security Hub that uniquely identifies a third-party + // company (security findings provider) after this provider's product (solution + // that generates findings) is registered with Security Hub. + ProductArn []*StringFilter `type:"list"` + + // A data type where security-findings providers can include additional solution-specific + // details that aren't part of the defined AwsSecurityFinding format. + ProductFields []*MapFilter `type:"list"` + + // The name of the solution (product) that generates findings. + ProductName []*StringFilter `type:"list"` + + // The recommendation of what to do about the issue described in a finding. + RecommendationText []*StringFilter `type:"list"` + + // The updated record state for the finding. + RecordState []*StringFilter `type:"list"` + + // The Region from which the finding was generated. + Region []*StringFilter `type:"list"` + + // The solution-generated identifier for a related finding. + RelatedFindingsId []*StringFilter `type:"list"` + + // The ARN of the solution that generated a related finding. + RelatedFindingsProductArn []*StringFilter `type:"list"` + + // The IAM profile ARN of the instance. + ResourceAwsEc2InstanceIamInstanceProfileArn []*StringFilter `type:"list"` + + // The Amazon Machine Image (AMI) ID of the instance. + ResourceAwsEc2InstanceImageId []*StringFilter `type:"list"` + + // The IPv4 addresses associated with the instance. + ResourceAwsEc2InstanceIpV4Addresses []*IpFilter `type:"list"` + + // The IPv6 addresses associated with the instance. + ResourceAwsEc2InstanceIpV6Addresses []*IpFilter `type:"list"` + + // The key name associated with the instance. + ResourceAwsEc2InstanceKeyName []*StringFilter `type:"list"` + + // The date and time the instance was launched. + ResourceAwsEc2InstanceLaunchedAt []*DateFilter `type:"list"` + + // The identifier of the subnet that the instance was launched in. + ResourceAwsEc2InstanceSubnetId []*StringFilter `type:"list"` + + // The instance type of the instance. + ResourceAwsEc2InstanceType []*StringFilter `type:"list"` + + // The identifier of the VPC that the instance was launched in. + ResourceAwsEc2InstanceVpcId []*StringFilter `type:"list"` + + // The creation date/time of the IAM access key related to a finding. + ResourceAwsIamAccessKeyCreatedAt []*DateFilter `type:"list"` + + // The name of the principal that is associated with an IAM access key. + ResourceAwsIamAccessKeyPrincipalName []*StringFilter `type:"list"` + + // The status of the IAM access key related to a finding. + ResourceAwsIamAccessKeyStatus []*StringFilter `type:"list"` + + // The user associated with the IAM access key related to a finding. + // + // Deprecated: This filter is deprecated. Instead, use ResourceAwsIamAccessKeyPrincipalName. + ResourceAwsIamAccessKeyUserName []*StringFilter `deprecated:"true" type:"list"` + + // The name of an IAM user. + ResourceAwsIamUserUserName []*StringFilter `type:"list"` + + // The canonical user ID of the owner of the S3 bucket. + ResourceAwsS3BucketOwnerId []*StringFilter `type:"list"` + + // The display name of the owner of the S3 bucket. + ResourceAwsS3BucketOwnerName []*StringFilter `type:"list"` + + // The identifier of the image related to a finding. + ResourceContainerImageId []*StringFilter `type:"list"` + + // The name of the image related to a finding. + ResourceContainerImageName []*StringFilter `type:"list"` + + // The date/time that the container was started. + ResourceContainerLaunchedAt []*DateFilter `type:"list"` + + // The name of the container related to a finding. + ResourceContainerName []*StringFilter `type:"list"` + + // The details of a resource that doesn't have a specific subfield for the resource + // type defined. + ResourceDetailsOther []*MapFilter `type:"list"` + + // The canonical identifier for the given resource type. + ResourceId []*StringFilter `type:"list"` + + // The canonical Amazon Web Services partition name that the Region is assigned + // to. + ResourcePartition []*StringFilter `type:"list"` + + // The canonical Amazon Web Services external Region name where this resource + // is located. + ResourceRegion []*StringFilter `type:"list"` + + // A list of Amazon Web Services tags associated with a resource at the time + // the finding was processed. + ResourceTags []*MapFilter `type:"list"` + + // Specifies the type of the resource that details are provided for. + ResourceType []*StringFilter `type:"list"` + + // Indicates whether or not sample findings are included in the filter results. + Sample []*BooleanFilter `type:"list"` + + // The label of a finding's severity. + SeverityLabel []*StringFilter `type:"list"` + + // The normalized severity of a finding. + // + // Deprecated: This filter is deprecated. Instead, use SeverityLabel or FindingProviderFieldsSeverityLabel. + SeverityNormalized []*NumberFilter `deprecated:"true" type:"list"` + + // The native severity as defined by the security-findings provider's solution + // that generated the finding. + // + // Deprecated: This filter is deprecated. Instead, use FindingProviderSeverityOriginal. + SeverityProduct []*NumberFilter `deprecated:"true" type:"list"` + + // A URL that links to a page about the current finding in the security-findings + // provider's solution. + SourceUrl []*StringFilter `type:"list"` + + // The category of a threat intelligence indicator. + ThreatIntelIndicatorCategory []*StringFilter `type:"list"` + + // The date/time of the last observation of a threat intelligence indicator. + ThreatIntelIndicatorLastObservedAt []*DateFilter `type:"list"` + + // The source of the threat intelligence. + ThreatIntelIndicatorSource []*StringFilter `type:"list"` + + // The URL for more details from the source of the threat intelligence. + ThreatIntelIndicatorSourceUrl []*StringFilter `type:"list"` + + // The type of a threat intelligence indicator. + ThreatIntelIndicatorType []*StringFilter `type:"list"` + + // The value of a threat intelligence indicator. + ThreatIntelIndicatorValue []*StringFilter `type:"list"` + + // A finding's title. + Title []*StringFilter `type:"list"` + + // A finding type in the format of namespace/category/classifier that classifies + // a finding. + Type []*StringFilter `type:"list"` + + // An ISO8601-formatted timestamp that indicates when the security-findings + // provider last updated the finding record. + UpdatedAt []*DateFilter `type:"list"` + + // A list of name/value string pairs associated with the finding. These are + // custom, user-defined fields added to a finding. + UserDefinedFields []*MapFilter `type:"list"` + + // The veracity of a finding. + VerificationState []*StringFilter `type:"list"` + + // The workflow state of a finding. + // + // Note that this field is deprecated. To search for a finding based on its + // workflow status, use WorkflowStatus. + WorkflowState []*StringFilter `type:"list"` + + // The status of the investigation into a finding. Allowed values are the following. + // + // * NEW - The initial state of a finding, before it is reviewed. Security + // Hub also resets the workflow status from NOTIFIED or RESOLVED to NEW in + // the following cases: RecordState changes from ARCHIVED to ACTIVE. Compliance.Status + // changes from PASSED to either WARNING, FAILED, or NOT_AVAILABLE. + // + // * NOTIFIED - Indicates that the resource owner has been notified about + // the security issue. Used when the initial reviewer is not the resource + // owner, and needs intervention from the resource owner. If one of the following + // occurs, the workflow status is changed automatically from NOTIFIED to + // NEW: RecordState changes from ARCHIVED to ACTIVE. Compliance.Status changes + // from PASSED to FAILED, WARNING, or NOT_AVAILABLE. + // + // * SUPPRESSED - Indicates that you reviewed the finding and do not believe + // that any action is needed. The workflow status of a SUPPRESSED finding + // does not change if RecordState changes from ARCHIVED to ACTIVE. + // + // * RESOLVED - The finding was reviewed and remediated and is now considered + // resolved. The finding remains RESOLVED unless one of the following occurs: + // RecordState changes from ARCHIVED to ACTIVE. Compliance.Status changes + // from PASSED to FAILED, WARNING, or NOT_AVAILABLE. In those cases, the + // workflow status is automatically reset to NEW. For findings from controls, + // if Compliance.Status is PASSED, then Security Hub automatically sets the + // workflow status to RESOLVED. + WorkflowStatus []*StringFilter `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsSecurityFindingFilters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsSecurityFindingFilters) GoString() string { + return s.String() +} + +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *AwsSecurityFindingFilters) SetAwsAccountId(v []*StringFilter) *AwsSecurityFindingFilters { + s.AwsAccountId = v + return s +} + +// SetCompanyName sets the CompanyName field's value. +func (s *AwsSecurityFindingFilters) SetCompanyName(v []*StringFilter) *AwsSecurityFindingFilters { + s.CompanyName = v + return s +} + +// SetComplianceStatus sets the ComplianceStatus field's value. +func (s *AwsSecurityFindingFilters) SetComplianceStatus(v []*StringFilter) *AwsSecurityFindingFilters { + s.ComplianceStatus = v + return s +} + +// SetConfidence sets the Confidence field's value. +func (s *AwsSecurityFindingFilters) SetConfidence(v []*NumberFilter) *AwsSecurityFindingFilters { + s.Confidence = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *AwsSecurityFindingFilters) SetCreatedAt(v []*DateFilter) *AwsSecurityFindingFilters { + s.CreatedAt = v + return s +} + +// SetCriticality sets the Criticality field's value. +func (s *AwsSecurityFindingFilters) SetCriticality(v []*NumberFilter) *AwsSecurityFindingFilters { + s.Criticality = v + return s +} + +// SetDescription sets the Description field's value. +func (s *AwsSecurityFindingFilters) SetDescription(v []*StringFilter) *AwsSecurityFindingFilters { + s.Description = v + return s +} + +// SetFindingProviderFieldsConfidence sets the FindingProviderFieldsConfidence field's value. +func (s *AwsSecurityFindingFilters) SetFindingProviderFieldsConfidence(v []*NumberFilter) *AwsSecurityFindingFilters { + s.FindingProviderFieldsConfidence = v + return s +} + +// SetFindingProviderFieldsCriticality sets the FindingProviderFieldsCriticality field's value. +func (s *AwsSecurityFindingFilters) SetFindingProviderFieldsCriticality(v []*NumberFilter) *AwsSecurityFindingFilters { + s.FindingProviderFieldsCriticality = v + return s +} + +// SetFindingProviderFieldsRelatedFindingsId sets the FindingProviderFieldsRelatedFindingsId field's value. +func (s *AwsSecurityFindingFilters) SetFindingProviderFieldsRelatedFindingsId(v []*StringFilter) *AwsSecurityFindingFilters { + s.FindingProviderFieldsRelatedFindingsId = v + return s +} + +// SetFindingProviderFieldsRelatedFindingsProductArn sets the FindingProviderFieldsRelatedFindingsProductArn field's value. +func (s *AwsSecurityFindingFilters) SetFindingProviderFieldsRelatedFindingsProductArn(v []*StringFilter) *AwsSecurityFindingFilters { + s.FindingProviderFieldsRelatedFindingsProductArn = v + return s +} + +// SetFindingProviderFieldsSeverityLabel sets the FindingProviderFieldsSeverityLabel field's value. +func (s *AwsSecurityFindingFilters) SetFindingProviderFieldsSeverityLabel(v []*StringFilter) *AwsSecurityFindingFilters { + s.FindingProviderFieldsSeverityLabel = v + return s +} + +// SetFindingProviderFieldsSeverityOriginal sets the FindingProviderFieldsSeverityOriginal field's value. +func (s *AwsSecurityFindingFilters) SetFindingProviderFieldsSeverityOriginal(v []*StringFilter) *AwsSecurityFindingFilters { + s.FindingProviderFieldsSeverityOriginal = v + return s +} + +// SetFindingProviderFieldsTypes sets the FindingProviderFieldsTypes field's value. +func (s *AwsSecurityFindingFilters) SetFindingProviderFieldsTypes(v []*StringFilter) *AwsSecurityFindingFilters { + s.FindingProviderFieldsTypes = v + return s +} + +// SetFirstObservedAt sets the FirstObservedAt field's value. +func (s *AwsSecurityFindingFilters) SetFirstObservedAt(v []*DateFilter) *AwsSecurityFindingFilters { + s.FirstObservedAt = v + return s +} + +// SetGeneratorId sets the GeneratorId field's value. +func (s *AwsSecurityFindingFilters) SetGeneratorId(v []*StringFilter) *AwsSecurityFindingFilters { + s.GeneratorId = v + return s +} + +// SetId sets the Id field's value. +func (s *AwsSecurityFindingFilters) SetId(v []*StringFilter) *AwsSecurityFindingFilters { + s.Id = v + return s +} + +// SetKeyword sets the Keyword field's value. +func (s *AwsSecurityFindingFilters) SetKeyword(v []*KeywordFilter) *AwsSecurityFindingFilters { + s.Keyword = v + return s +} + +// SetLastObservedAt sets the LastObservedAt field's value. +func (s *AwsSecurityFindingFilters) SetLastObservedAt(v []*DateFilter) *AwsSecurityFindingFilters { + s.LastObservedAt = v + return s +} + +// SetMalwareName sets the MalwareName field's value. +func (s *AwsSecurityFindingFilters) SetMalwareName(v []*StringFilter) *AwsSecurityFindingFilters { + s.MalwareName = v + return s +} + +// SetMalwarePath sets the MalwarePath field's value. +func (s *AwsSecurityFindingFilters) SetMalwarePath(v []*StringFilter) *AwsSecurityFindingFilters { + s.MalwarePath = v + return s +} + +// SetMalwareState sets the MalwareState field's value. +func (s *AwsSecurityFindingFilters) SetMalwareState(v []*StringFilter) *AwsSecurityFindingFilters { + s.MalwareState = v + return s +} + +// SetMalwareType sets the MalwareType field's value. +func (s *AwsSecurityFindingFilters) SetMalwareType(v []*StringFilter) *AwsSecurityFindingFilters { + s.MalwareType = v + return s +} + +// SetNetworkDestinationDomain sets the NetworkDestinationDomain field's value. +func (s *AwsSecurityFindingFilters) SetNetworkDestinationDomain(v []*StringFilter) *AwsSecurityFindingFilters { + s.NetworkDestinationDomain = v + return s +} + +// SetNetworkDestinationIpV4 sets the NetworkDestinationIpV4 field's value. +func (s *AwsSecurityFindingFilters) SetNetworkDestinationIpV4(v []*IpFilter) *AwsSecurityFindingFilters { + s.NetworkDestinationIpV4 = v + return s +} + +// SetNetworkDestinationIpV6 sets the NetworkDestinationIpV6 field's value. +func (s *AwsSecurityFindingFilters) SetNetworkDestinationIpV6(v []*IpFilter) *AwsSecurityFindingFilters { + s.NetworkDestinationIpV6 = v + return s +} + +// SetNetworkDestinationPort sets the NetworkDestinationPort field's value. +func (s *AwsSecurityFindingFilters) SetNetworkDestinationPort(v []*NumberFilter) *AwsSecurityFindingFilters { + s.NetworkDestinationPort = v + return s +} + +// SetNetworkDirection sets the NetworkDirection field's value. +func (s *AwsSecurityFindingFilters) SetNetworkDirection(v []*StringFilter) *AwsSecurityFindingFilters { + s.NetworkDirection = v + return s +} + +// SetNetworkProtocol sets the NetworkProtocol field's value. +func (s *AwsSecurityFindingFilters) SetNetworkProtocol(v []*StringFilter) *AwsSecurityFindingFilters { + s.NetworkProtocol = v + return s +} + +// SetNetworkSourceDomain sets the NetworkSourceDomain field's value. +func (s *AwsSecurityFindingFilters) SetNetworkSourceDomain(v []*StringFilter) *AwsSecurityFindingFilters { + s.NetworkSourceDomain = v + return s +} + +// SetNetworkSourceIpV4 sets the NetworkSourceIpV4 field's value. +func (s *AwsSecurityFindingFilters) SetNetworkSourceIpV4(v []*IpFilter) *AwsSecurityFindingFilters { + s.NetworkSourceIpV4 = v + return s +} + +// SetNetworkSourceIpV6 sets the NetworkSourceIpV6 field's value. +func (s *AwsSecurityFindingFilters) SetNetworkSourceIpV6(v []*IpFilter) *AwsSecurityFindingFilters { + s.NetworkSourceIpV6 = v + return s +} + +// SetNetworkSourceMac sets the NetworkSourceMac field's value. +func (s *AwsSecurityFindingFilters) SetNetworkSourceMac(v []*StringFilter) *AwsSecurityFindingFilters { + s.NetworkSourceMac = v + return s +} + +// SetNetworkSourcePort sets the NetworkSourcePort field's value. +func (s *AwsSecurityFindingFilters) SetNetworkSourcePort(v []*NumberFilter) *AwsSecurityFindingFilters { + s.NetworkSourcePort = v + return s +} + +// SetNoteText sets the NoteText field's value. +func (s *AwsSecurityFindingFilters) SetNoteText(v []*StringFilter) *AwsSecurityFindingFilters { + s.NoteText = v + return s +} + +// SetNoteUpdatedAt sets the NoteUpdatedAt field's value. +func (s *AwsSecurityFindingFilters) SetNoteUpdatedAt(v []*DateFilter) *AwsSecurityFindingFilters { + s.NoteUpdatedAt = v + return s +} + +// SetNoteUpdatedBy sets the NoteUpdatedBy field's value. +func (s *AwsSecurityFindingFilters) SetNoteUpdatedBy(v []*StringFilter) *AwsSecurityFindingFilters { + s.NoteUpdatedBy = v + return s +} + +// SetProcessLaunchedAt sets the ProcessLaunchedAt field's value. +func (s *AwsSecurityFindingFilters) SetProcessLaunchedAt(v []*DateFilter) *AwsSecurityFindingFilters { + s.ProcessLaunchedAt = v + return s +} + +// SetProcessName sets the ProcessName field's value. +func (s *AwsSecurityFindingFilters) SetProcessName(v []*StringFilter) *AwsSecurityFindingFilters { + s.ProcessName = v + return s +} + +// SetProcessParentPid sets the ProcessParentPid field's value. +func (s *AwsSecurityFindingFilters) SetProcessParentPid(v []*NumberFilter) *AwsSecurityFindingFilters { + s.ProcessParentPid = v + return s +} + +// SetProcessPath sets the ProcessPath field's value. +func (s *AwsSecurityFindingFilters) SetProcessPath(v []*StringFilter) *AwsSecurityFindingFilters { + s.ProcessPath = v + return s +} + +// SetProcessPid sets the ProcessPid field's value. +func (s *AwsSecurityFindingFilters) SetProcessPid(v []*NumberFilter) *AwsSecurityFindingFilters { + s.ProcessPid = v + return s +} + +// SetProcessTerminatedAt sets the ProcessTerminatedAt field's value. +func (s *AwsSecurityFindingFilters) SetProcessTerminatedAt(v []*DateFilter) *AwsSecurityFindingFilters { + s.ProcessTerminatedAt = v + return s +} + +// SetProductArn sets the ProductArn field's value. +func (s *AwsSecurityFindingFilters) SetProductArn(v []*StringFilter) *AwsSecurityFindingFilters { + s.ProductArn = v + return s +} + +// SetProductFields sets the ProductFields field's value. +func (s *AwsSecurityFindingFilters) SetProductFields(v []*MapFilter) *AwsSecurityFindingFilters { + s.ProductFields = v + return s +} + +// SetProductName sets the ProductName field's value. +func (s *AwsSecurityFindingFilters) SetProductName(v []*StringFilter) *AwsSecurityFindingFilters { + s.ProductName = v + return s +} + +// SetRecommendationText sets the RecommendationText field's value. +func (s *AwsSecurityFindingFilters) SetRecommendationText(v []*StringFilter) *AwsSecurityFindingFilters { + s.RecommendationText = v + return s +} + +// SetRecordState sets the RecordState field's value. +func (s *AwsSecurityFindingFilters) SetRecordState(v []*StringFilter) *AwsSecurityFindingFilters { + s.RecordState = v + return s +} + +// SetRegion sets the Region field's value. +func (s *AwsSecurityFindingFilters) SetRegion(v []*StringFilter) *AwsSecurityFindingFilters { + s.Region = v + return s +} + +// SetRelatedFindingsId sets the RelatedFindingsId field's value. +func (s *AwsSecurityFindingFilters) SetRelatedFindingsId(v []*StringFilter) *AwsSecurityFindingFilters { + s.RelatedFindingsId = v + return s +} + +// SetRelatedFindingsProductArn sets the RelatedFindingsProductArn field's value. +func (s *AwsSecurityFindingFilters) SetRelatedFindingsProductArn(v []*StringFilter) *AwsSecurityFindingFilters { + s.RelatedFindingsProductArn = v + return s +} + +// SetResourceAwsEc2InstanceIamInstanceProfileArn sets the ResourceAwsEc2InstanceIamInstanceProfileArn field's value. +func (s *AwsSecurityFindingFilters) SetResourceAwsEc2InstanceIamInstanceProfileArn(v []*StringFilter) *AwsSecurityFindingFilters { + s.ResourceAwsEc2InstanceIamInstanceProfileArn = v + return s +} + +// SetResourceAwsEc2InstanceImageId sets the ResourceAwsEc2InstanceImageId field's value. +func (s *AwsSecurityFindingFilters) SetResourceAwsEc2InstanceImageId(v []*StringFilter) *AwsSecurityFindingFilters { + s.ResourceAwsEc2InstanceImageId = v + return s +} + +// SetResourceAwsEc2InstanceIpV4Addresses sets the ResourceAwsEc2InstanceIpV4Addresses field's value. +func (s *AwsSecurityFindingFilters) SetResourceAwsEc2InstanceIpV4Addresses(v []*IpFilter) *AwsSecurityFindingFilters { + s.ResourceAwsEc2InstanceIpV4Addresses = v + return s +} + +// SetResourceAwsEc2InstanceIpV6Addresses sets the ResourceAwsEc2InstanceIpV6Addresses field's value. +func (s *AwsSecurityFindingFilters) SetResourceAwsEc2InstanceIpV6Addresses(v []*IpFilter) *AwsSecurityFindingFilters { + s.ResourceAwsEc2InstanceIpV6Addresses = v + return s } -// SetAction sets the Action field's value. -func (s *AwsSecurityFinding) SetAction(v *Action) *AwsSecurityFinding { - s.Action = v +// SetResourceAwsEc2InstanceKeyName sets the ResourceAwsEc2InstanceKeyName field's value. +func (s *AwsSecurityFindingFilters) SetResourceAwsEc2InstanceKeyName(v []*StringFilter) *AwsSecurityFindingFilters { + s.ResourceAwsEc2InstanceKeyName = v return s } -// SetAwsAccountId sets the AwsAccountId field's value. -func (s *AwsSecurityFinding) SetAwsAccountId(v string) *AwsSecurityFinding { - s.AwsAccountId = &v +// SetResourceAwsEc2InstanceLaunchedAt sets the ResourceAwsEc2InstanceLaunchedAt field's value. +func (s *AwsSecurityFindingFilters) SetResourceAwsEc2InstanceLaunchedAt(v []*DateFilter) *AwsSecurityFindingFilters { + s.ResourceAwsEc2InstanceLaunchedAt = v return s } -// SetCompanyName sets the CompanyName field's value. -func (s *AwsSecurityFinding) SetCompanyName(v string) *AwsSecurityFinding { - s.CompanyName = &v +// SetResourceAwsEc2InstanceSubnetId sets the ResourceAwsEc2InstanceSubnetId field's value. +func (s *AwsSecurityFindingFilters) SetResourceAwsEc2InstanceSubnetId(v []*StringFilter) *AwsSecurityFindingFilters { + s.ResourceAwsEc2InstanceSubnetId = v return s } -// SetCompliance sets the Compliance field's value. -func (s *AwsSecurityFinding) SetCompliance(v *Compliance) *AwsSecurityFinding { - s.Compliance = v +// SetResourceAwsEc2InstanceType sets the ResourceAwsEc2InstanceType field's value. +func (s *AwsSecurityFindingFilters) SetResourceAwsEc2InstanceType(v []*StringFilter) *AwsSecurityFindingFilters { + s.ResourceAwsEc2InstanceType = v return s } -// SetConfidence sets the Confidence field's value. -func (s *AwsSecurityFinding) SetConfidence(v int64) *AwsSecurityFinding { - s.Confidence = &v +// SetResourceAwsEc2InstanceVpcId sets the ResourceAwsEc2InstanceVpcId field's value. +func (s *AwsSecurityFindingFilters) SetResourceAwsEc2InstanceVpcId(v []*StringFilter) *AwsSecurityFindingFilters { + s.ResourceAwsEc2InstanceVpcId = v return s } -// SetCreatedAt sets the CreatedAt field's value. -func (s *AwsSecurityFinding) SetCreatedAt(v string) *AwsSecurityFinding { - s.CreatedAt = &v +// SetResourceAwsIamAccessKeyCreatedAt sets the ResourceAwsIamAccessKeyCreatedAt field's value. +func (s *AwsSecurityFindingFilters) SetResourceAwsIamAccessKeyCreatedAt(v []*DateFilter) *AwsSecurityFindingFilters { + s.ResourceAwsIamAccessKeyCreatedAt = v return s } -// SetCriticality sets the Criticality field's value. -func (s *AwsSecurityFinding) SetCriticality(v int64) *AwsSecurityFinding { - s.Criticality = &v +// SetResourceAwsIamAccessKeyPrincipalName sets the ResourceAwsIamAccessKeyPrincipalName field's value. +func (s *AwsSecurityFindingFilters) SetResourceAwsIamAccessKeyPrincipalName(v []*StringFilter) *AwsSecurityFindingFilters { + s.ResourceAwsIamAccessKeyPrincipalName = v return s } -// SetDescription sets the Description field's value. -func (s *AwsSecurityFinding) SetDescription(v string) *AwsSecurityFinding { - s.Description = &v +// SetResourceAwsIamAccessKeyStatus sets the ResourceAwsIamAccessKeyStatus field's value. +func (s *AwsSecurityFindingFilters) SetResourceAwsIamAccessKeyStatus(v []*StringFilter) *AwsSecurityFindingFilters { + s.ResourceAwsIamAccessKeyStatus = v return s } -// SetFindingProviderFields sets the FindingProviderFields field's value. -func (s *AwsSecurityFinding) SetFindingProviderFields(v *FindingProviderFields) *AwsSecurityFinding { - s.FindingProviderFields = v +// SetResourceAwsIamAccessKeyUserName sets the ResourceAwsIamAccessKeyUserName field's value. +func (s *AwsSecurityFindingFilters) SetResourceAwsIamAccessKeyUserName(v []*StringFilter) *AwsSecurityFindingFilters { + s.ResourceAwsIamAccessKeyUserName = v return s } -// SetFirstObservedAt sets the FirstObservedAt field's value. -func (s *AwsSecurityFinding) SetFirstObservedAt(v string) *AwsSecurityFinding { - s.FirstObservedAt = &v +// SetResourceAwsIamUserUserName sets the ResourceAwsIamUserUserName field's value. +func (s *AwsSecurityFindingFilters) SetResourceAwsIamUserUserName(v []*StringFilter) *AwsSecurityFindingFilters { + s.ResourceAwsIamUserUserName = v return s } -// SetGeneratorId sets the GeneratorId field's value. -func (s *AwsSecurityFinding) SetGeneratorId(v string) *AwsSecurityFinding { - s.GeneratorId = &v +// SetResourceAwsS3BucketOwnerId sets the ResourceAwsS3BucketOwnerId field's value. +func (s *AwsSecurityFindingFilters) SetResourceAwsS3BucketOwnerId(v []*StringFilter) *AwsSecurityFindingFilters { + s.ResourceAwsS3BucketOwnerId = v return s } -// SetId sets the Id field's value. -func (s *AwsSecurityFinding) SetId(v string) *AwsSecurityFinding { - s.Id = &v +// SetResourceAwsS3BucketOwnerName sets the ResourceAwsS3BucketOwnerName field's value. +func (s *AwsSecurityFindingFilters) SetResourceAwsS3BucketOwnerName(v []*StringFilter) *AwsSecurityFindingFilters { + s.ResourceAwsS3BucketOwnerName = v return s } -// SetLastObservedAt sets the LastObservedAt field's value. -func (s *AwsSecurityFinding) SetLastObservedAt(v string) *AwsSecurityFinding { - s.LastObservedAt = &v +// SetResourceContainerImageId sets the ResourceContainerImageId field's value. +func (s *AwsSecurityFindingFilters) SetResourceContainerImageId(v []*StringFilter) *AwsSecurityFindingFilters { + s.ResourceContainerImageId = v return s } -// SetMalware sets the Malware field's value. -func (s *AwsSecurityFinding) SetMalware(v []*Malware) *AwsSecurityFinding { - s.Malware = v +// SetResourceContainerImageName sets the ResourceContainerImageName field's value. +func (s *AwsSecurityFindingFilters) SetResourceContainerImageName(v []*StringFilter) *AwsSecurityFindingFilters { + s.ResourceContainerImageName = v return s } -// SetNetwork sets the Network field's value. -func (s *AwsSecurityFinding) SetNetwork(v *Network) *AwsSecurityFinding { - s.Network = v +// SetResourceContainerLaunchedAt sets the ResourceContainerLaunchedAt field's value. +func (s *AwsSecurityFindingFilters) SetResourceContainerLaunchedAt(v []*DateFilter) *AwsSecurityFindingFilters { + s.ResourceContainerLaunchedAt = v return s } -// SetNetworkPath sets the NetworkPath field's value. -func (s *AwsSecurityFinding) SetNetworkPath(v []*NetworkPathComponent) *AwsSecurityFinding { - s.NetworkPath = v +// SetResourceContainerName sets the ResourceContainerName field's value. +func (s *AwsSecurityFindingFilters) SetResourceContainerName(v []*StringFilter) *AwsSecurityFindingFilters { + s.ResourceContainerName = v return s } -// SetNote sets the Note field's value. -func (s *AwsSecurityFinding) SetNote(v *Note) *AwsSecurityFinding { - s.Note = v +// SetResourceDetailsOther sets the ResourceDetailsOther field's value. +func (s *AwsSecurityFindingFilters) SetResourceDetailsOther(v []*MapFilter) *AwsSecurityFindingFilters { + s.ResourceDetailsOther = v return s } -// SetPatchSummary sets the PatchSummary field's value. -func (s *AwsSecurityFinding) SetPatchSummary(v *PatchSummary) *AwsSecurityFinding { - s.PatchSummary = v +// SetResourceId sets the ResourceId field's value. +func (s *AwsSecurityFindingFilters) SetResourceId(v []*StringFilter) *AwsSecurityFindingFilters { + s.ResourceId = v return s } -// SetProcess sets the Process field's value. -func (s *AwsSecurityFinding) SetProcess(v *ProcessDetails) *AwsSecurityFinding { - s.Process = v +// SetResourcePartition sets the ResourcePartition field's value. +func (s *AwsSecurityFindingFilters) SetResourcePartition(v []*StringFilter) *AwsSecurityFindingFilters { + s.ResourcePartition = v return s } -// SetProductArn sets the ProductArn field's value. -func (s *AwsSecurityFinding) SetProductArn(v string) *AwsSecurityFinding { - s.ProductArn = &v +// SetResourceRegion sets the ResourceRegion field's value. +func (s *AwsSecurityFindingFilters) SetResourceRegion(v []*StringFilter) *AwsSecurityFindingFilters { + s.ResourceRegion = v return s } -// SetProductFields sets the ProductFields field's value. -func (s *AwsSecurityFinding) SetProductFields(v map[string]*string) *AwsSecurityFinding { - s.ProductFields = v +// SetResourceTags sets the ResourceTags field's value. +func (s *AwsSecurityFindingFilters) SetResourceTags(v []*MapFilter) *AwsSecurityFindingFilters { + s.ResourceTags = v return s } -// SetProductName sets the ProductName field's value. -func (s *AwsSecurityFinding) SetProductName(v string) *AwsSecurityFinding { - s.ProductName = &v +// SetResourceType sets the ResourceType field's value. +func (s *AwsSecurityFindingFilters) SetResourceType(v []*StringFilter) *AwsSecurityFindingFilters { + s.ResourceType = v return s } -// SetRecordState sets the RecordState field's value. -func (s *AwsSecurityFinding) SetRecordState(v string) *AwsSecurityFinding { - s.RecordState = &v +// SetSample sets the Sample field's value. +func (s *AwsSecurityFindingFilters) SetSample(v []*BooleanFilter) *AwsSecurityFindingFilters { + s.Sample = v return s } -// SetRegion sets the Region field's value. -func (s *AwsSecurityFinding) SetRegion(v string) *AwsSecurityFinding { - s.Region = &v +// SetSeverityLabel sets the SeverityLabel field's value. +func (s *AwsSecurityFindingFilters) SetSeverityLabel(v []*StringFilter) *AwsSecurityFindingFilters { + s.SeverityLabel = v return s } -// SetRelatedFindings sets the RelatedFindings field's value. -func (s *AwsSecurityFinding) SetRelatedFindings(v []*RelatedFinding) *AwsSecurityFinding { - s.RelatedFindings = v +// SetSeverityNormalized sets the SeverityNormalized field's value. +func (s *AwsSecurityFindingFilters) SetSeverityNormalized(v []*NumberFilter) *AwsSecurityFindingFilters { + s.SeverityNormalized = v return s } -// SetRemediation sets the Remediation field's value. -func (s *AwsSecurityFinding) SetRemediation(v *Remediation) *AwsSecurityFinding { - s.Remediation = v +// SetSeverityProduct sets the SeverityProduct field's value. +func (s *AwsSecurityFindingFilters) SetSeverityProduct(v []*NumberFilter) *AwsSecurityFindingFilters { + s.SeverityProduct = v return s } -// SetResources sets the Resources field's value. -func (s *AwsSecurityFinding) SetResources(v []*Resource) *AwsSecurityFinding { - s.Resources = v +// SetSourceUrl sets the SourceUrl field's value. +func (s *AwsSecurityFindingFilters) SetSourceUrl(v []*StringFilter) *AwsSecurityFindingFilters { + s.SourceUrl = v return s } -// SetSample sets the Sample field's value. -func (s *AwsSecurityFinding) SetSample(v bool) *AwsSecurityFinding { - s.Sample = &v +// SetThreatIntelIndicatorCategory sets the ThreatIntelIndicatorCategory field's value. +func (s *AwsSecurityFindingFilters) SetThreatIntelIndicatorCategory(v []*StringFilter) *AwsSecurityFindingFilters { + s.ThreatIntelIndicatorCategory = v return s } -// SetSchemaVersion sets the SchemaVersion field's value. -func (s *AwsSecurityFinding) SetSchemaVersion(v string) *AwsSecurityFinding { - s.SchemaVersion = &v +// SetThreatIntelIndicatorLastObservedAt sets the ThreatIntelIndicatorLastObservedAt field's value. +func (s *AwsSecurityFindingFilters) SetThreatIntelIndicatorLastObservedAt(v []*DateFilter) *AwsSecurityFindingFilters { + s.ThreatIntelIndicatorLastObservedAt = v return s } -// SetSeverity sets the Severity field's value. -func (s *AwsSecurityFinding) SetSeverity(v *Severity) *AwsSecurityFinding { - s.Severity = v +// SetThreatIntelIndicatorSource sets the ThreatIntelIndicatorSource field's value. +func (s *AwsSecurityFindingFilters) SetThreatIntelIndicatorSource(v []*StringFilter) *AwsSecurityFindingFilters { + s.ThreatIntelIndicatorSource = v return s } -// SetSourceUrl sets the SourceUrl field's value. -func (s *AwsSecurityFinding) SetSourceUrl(v string) *AwsSecurityFinding { - s.SourceUrl = &v +// SetThreatIntelIndicatorSourceUrl sets the ThreatIntelIndicatorSourceUrl field's value. +func (s *AwsSecurityFindingFilters) SetThreatIntelIndicatorSourceUrl(v []*StringFilter) *AwsSecurityFindingFilters { + s.ThreatIntelIndicatorSourceUrl = v return s } -// SetThreatIntelIndicators sets the ThreatIntelIndicators field's value. -func (s *AwsSecurityFinding) SetThreatIntelIndicators(v []*ThreatIntelIndicator) *AwsSecurityFinding { - s.ThreatIntelIndicators = v +// SetThreatIntelIndicatorType sets the ThreatIntelIndicatorType field's value. +func (s *AwsSecurityFindingFilters) SetThreatIntelIndicatorType(v []*StringFilter) *AwsSecurityFindingFilters { + s.ThreatIntelIndicatorType = v return s } -// SetThreats sets the Threats field's value. -func (s *AwsSecurityFinding) SetThreats(v []*Threat) *AwsSecurityFinding { - s.Threats = v +// SetThreatIntelIndicatorValue sets the ThreatIntelIndicatorValue field's value. +func (s *AwsSecurityFindingFilters) SetThreatIntelIndicatorValue(v []*StringFilter) *AwsSecurityFindingFilters { + s.ThreatIntelIndicatorValue = v return s } // SetTitle sets the Title field's value. -func (s *AwsSecurityFinding) SetTitle(v string) *AwsSecurityFinding { - s.Title = &v +func (s *AwsSecurityFindingFilters) SetTitle(v []*StringFilter) *AwsSecurityFindingFilters { + s.Title = v return s } -// SetTypes sets the Types field's value. -func (s *AwsSecurityFinding) SetTypes(v []*string) *AwsSecurityFinding { - s.Types = v +// SetType sets the Type field's value. +func (s *AwsSecurityFindingFilters) SetType(v []*StringFilter) *AwsSecurityFindingFilters { + s.Type = v return s } // SetUpdatedAt sets the UpdatedAt field's value. -func (s *AwsSecurityFinding) SetUpdatedAt(v string) *AwsSecurityFinding { - s.UpdatedAt = &v +func (s *AwsSecurityFindingFilters) SetUpdatedAt(v []*DateFilter) *AwsSecurityFindingFilters { + s.UpdatedAt = v return s } // SetUserDefinedFields sets the UserDefinedFields field's value. -func (s *AwsSecurityFinding) SetUserDefinedFields(v map[string]*string) *AwsSecurityFinding { +func (s *AwsSecurityFindingFilters) SetUserDefinedFields(v []*MapFilter) *AwsSecurityFindingFilters { s.UserDefinedFields = v return s } // SetVerificationState sets the VerificationState field's value. -func (s *AwsSecurityFinding) SetVerificationState(v string) *AwsSecurityFinding { - s.VerificationState = &v - return s -} - -// SetVulnerabilities sets the Vulnerabilities field's value. -func (s *AwsSecurityFinding) SetVulnerabilities(v []*Vulnerability) *AwsSecurityFinding { - s.Vulnerabilities = v - return s -} - -// SetWorkflow sets the Workflow field's value. -func (s *AwsSecurityFinding) SetWorkflow(v *Workflow) *AwsSecurityFinding { - s.Workflow = v +func (s *AwsSecurityFindingFilters) SetVerificationState(v []*StringFilter) *AwsSecurityFindingFilters { + s.VerificationState = v return s } // SetWorkflowState sets the WorkflowState field's value. -func (s *AwsSecurityFinding) SetWorkflowState(v string) *AwsSecurityFinding { - s.WorkflowState = &v +func (s *AwsSecurityFindingFilters) SetWorkflowState(v []*StringFilter) *AwsSecurityFindingFilters { + s.WorkflowState = v return s -} - -// A collection of attributes that are applied to all active Security Hub-aggregated -// findings and that result in a subset of findings that are included in this -// insight. -// -// You can filter by up to 10 finding attributes. For each attribute, you can -// provide up to 20 filter values. -type AwsSecurityFindingFilters struct { - _ struct{} `type:"structure"` - - // The Amazon Web Services account ID that a finding is generated in. - AwsAccountId []*StringFilter `type:"list"` - - // The name of the findings provider (company) that owns the solution (product) - // that generates findings. - CompanyName []*StringFilter `type:"list"` - - // Exclusive to findings that are generated as the result of a check run against - // a specific rule in a supported standard, such as CIS Amazon Web Services - // Foundations. Contains security standard-related finding details. - ComplianceStatus []*StringFilter `type:"list"` - - // A finding's confidence. Confidence is defined as the likelihood that a finding - // accurately identifies the behavior or issue that it was intended to identify. - // - // Confidence is scored on a 0-100 basis using a ratio scale, where 0 means - // zero percent confidence and 100 means 100 percent confidence. - Confidence []*NumberFilter `type:"list"` - - // An ISO8601-formatted timestamp that indicates when the security-findings - // provider captured the potential security issue that a finding captured. - CreatedAt []*DateFilter `type:"list"` - - // The level of importance assigned to the resources associated with the finding. - // - // A score of 0 means that the underlying resources have no criticality, and - // a score of 100 is reserved for the most critical resources. - Criticality []*NumberFilter `type:"list"` - - // A finding's description. - Description []*StringFilter `type:"list"` - - // The finding provider value for the finding confidence. Confidence is defined - // as the likelihood that a finding accurately identifies the behavior or issue - // that it was intended to identify. - // - // Confidence is scored on a 0-100 basis using a ratio scale, where 0 means - // zero percent confidence and 100 means 100 percent confidence. - FindingProviderFieldsConfidence []*NumberFilter `type:"list"` - - // The finding provider value for the level of importance assigned to the resources - // associated with the findings. - // - // A score of 0 means that the underlying resources have no criticality, and - // a score of 100 is reserved for the most critical resources. - FindingProviderFieldsCriticality []*NumberFilter `type:"list"` - - // The finding identifier of a related finding that is identified by the finding - // provider. - FindingProviderFieldsRelatedFindingsId []*StringFilter `type:"list"` - - // The ARN of the solution that generated a related finding that is identified - // by the finding provider. - FindingProviderFieldsRelatedFindingsProductArn []*StringFilter `type:"list"` - - // The finding provider value for the severity label. - FindingProviderFieldsSeverityLabel []*StringFilter `type:"list"` - - // The finding provider's original value for the severity. - FindingProviderFieldsSeverityOriginal []*StringFilter `type:"list"` - - // One or more finding types that the finding provider assigned to the finding. - // Uses the format of namespace/category/classifier that classify a finding. - // - // Valid namespace values are: Software and Configuration Checks | TTPs | Effects - // | Unusual Behaviors | Sensitive Data Identifications - FindingProviderFieldsTypes []*StringFilter `type:"list"` - - // An ISO8601-formatted timestamp that indicates when the security-findings - // provider first observed the potential security issue that a finding captured. - FirstObservedAt []*DateFilter `type:"list"` - - // The identifier for the solution-specific component (a discrete unit of logic) - // that generated a finding. In various security-findings providers' solutions, - // this generator can be called a rule, a check, a detector, a plugin, etc. - GeneratorId []*StringFilter `type:"list"` - - // The security findings provider-specific identifier for a finding. - Id []*StringFilter `type:"list"` - - // A keyword for a finding. - // - // Deprecated: The Keyword property is deprecated. - Keyword []*KeywordFilter `deprecated:"true" type:"list"` - - // An ISO8601-formatted timestamp that indicates when the security-findings - // provider most recently observed the potential security issue that a finding - // captured. - LastObservedAt []*DateFilter `type:"list"` - - // The name of the malware that was observed. - MalwareName []*StringFilter `type:"list"` - - // The filesystem path of the malware that was observed. - MalwarePath []*StringFilter `type:"list"` - - // The state of the malware that was observed. - MalwareState []*StringFilter `type:"list"` - - // The type of the malware that was observed. - MalwareType []*StringFilter `type:"list"` - - // The destination domain of network-related information about a finding. - NetworkDestinationDomain []*StringFilter `type:"list"` - - // The destination IPv4 address of network-related information about a finding. - NetworkDestinationIpV4 []*IpFilter `type:"list"` - - // The destination IPv6 address of network-related information about a finding. - NetworkDestinationIpV6 []*IpFilter `type:"list"` - - // The destination port of network-related information about a finding. - NetworkDestinationPort []*NumberFilter `type:"list"` - - // Indicates the direction of network traffic associated with a finding. - NetworkDirection []*StringFilter `type:"list"` - - // The protocol of network-related information about a finding. - NetworkProtocol []*StringFilter `type:"list"` - - // The source domain of network-related information about a finding. - NetworkSourceDomain []*StringFilter `type:"list"` - - // The source IPv4 address of network-related information about a finding. - NetworkSourceIpV4 []*IpFilter `type:"list"` - - // The source IPv6 address of network-related information about a finding. - NetworkSourceIpV6 []*IpFilter `type:"list"` - - // The source media access control (MAC) address of network-related information - // about a finding. - NetworkSourceMac []*StringFilter `type:"list"` - - // The source port of network-related information about a finding. - NetworkSourcePort []*NumberFilter `type:"list"` - - // The text of a note. - NoteText []*StringFilter `type:"list"` - - // The timestamp of when the note was updated. - NoteUpdatedAt []*DateFilter `type:"list"` - - // The principal that created a note. - NoteUpdatedBy []*StringFilter `type:"list"` - - // The date/time that the process was launched. - ProcessLaunchedAt []*DateFilter `type:"list"` - - // The name of the process. - ProcessName []*StringFilter `type:"list"` - - // The parent process ID. - ProcessParentPid []*NumberFilter `type:"list"` - - // The path to the process executable. - ProcessPath []*StringFilter `type:"list"` - - // The process ID. - ProcessPid []*NumberFilter `type:"list"` - - // The date/time that the process was terminated. - ProcessTerminatedAt []*DateFilter `type:"list"` - - // The ARN generated by Security Hub that uniquely identifies a third-party - // company (security findings provider) after this provider's product (solution - // that generates findings) is registered with Security Hub. - ProductArn []*StringFilter `type:"list"` - - // A data type where security-findings providers can include additional solution-specific - // details that aren't part of the defined AwsSecurityFinding format. - ProductFields []*MapFilter `type:"list"` - - // The name of the solution (product) that generates findings. - ProductName []*StringFilter `type:"list"` - - // The recommendation of what to do about the issue described in a finding. - RecommendationText []*StringFilter `type:"list"` - - // The updated record state for the finding. - RecordState []*StringFilter `type:"list"` - - // The Region from which the finding was generated. - Region []*StringFilter `type:"list"` - - // The solution-generated identifier for a related finding. - RelatedFindingsId []*StringFilter `type:"list"` - - // The ARN of the solution that generated a related finding. - RelatedFindingsProductArn []*StringFilter `type:"list"` - - // The IAM profile ARN of the instance. - ResourceAwsEc2InstanceIamInstanceProfileArn []*StringFilter `type:"list"` - - // The Amazon Machine Image (AMI) ID of the instance. - ResourceAwsEc2InstanceImageId []*StringFilter `type:"list"` - - // The IPv4 addresses associated with the instance. - ResourceAwsEc2InstanceIpV4Addresses []*IpFilter `type:"list"` - - // The IPv6 addresses associated with the instance. - ResourceAwsEc2InstanceIpV6Addresses []*IpFilter `type:"list"` - - // The key name associated with the instance. - ResourceAwsEc2InstanceKeyName []*StringFilter `type:"list"` - - // The date and time the instance was launched. - ResourceAwsEc2InstanceLaunchedAt []*DateFilter `type:"list"` - - // The identifier of the subnet that the instance was launched in. - ResourceAwsEc2InstanceSubnetId []*StringFilter `type:"list"` - - // The instance type of the instance. - ResourceAwsEc2InstanceType []*StringFilter `type:"list"` - - // The identifier of the VPC that the instance was launched in. - ResourceAwsEc2InstanceVpcId []*StringFilter `type:"list"` - - // The creation date/time of the IAM access key related to a finding. - ResourceAwsIamAccessKeyCreatedAt []*DateFilter `type:"list"` - - // The name of the principal that is associated with an IAM access key. - ResourceAwsIamAccessKeyPrincipalName []*StringFilter `type:"list"` - - // The status of the IAM access key related to a finding. - ResourceAwsIamAccessKeyStatus []*StringFilter `type:"list"` - - // The user associated with the IAM access key related to a finding. - // - // Deprecated: This filter is deprecated. Instead, use ResourceAwsIamAccessKeyPrincipalName. - ResourceAwsIamAccessKeyUserName []*StringFilter `deprecated:"true" type:"list"` - - // The name of an IAM user. - ResourceAwsIamUserUserName []*StringFilter `type:"list"` - - // The canonical user ID of the owner of the S3 bucket. - ResourceAwsS3BucketOwnerId []*StringFilter `type:"list"` - - // The display name of the owner of the S3 bucket. - ResourceAwsS3BucketOwnerName []*StringFilter `type:"list"` - - // The identifier of the image related to a finding. - ResourceContainerImageId []*StringFilter `type:"list"` - - // The name of the image related to a finding. - ResourceContainerImageName []*StringFilter `type:"list"` - - // The date/time that the container was started. - ResourceContainerLaunchedAt []*DateFilter `type:"list"` - - // The name of the container related to a finding. - ResourceContainerName []*StringFilter `type:"list"` - - // The details of a resource that doesn't have a specific subfield for the resource - // type defined. - ResourceDetailsOther []*MapFilter `type:"list"` - - // The canonical identifier for the given resource type. - ResourceId []*StringFilter `type:"list"` +} - // The canonical Amazon Web Services partition name that the Region is assigned - // to. - ResourcePartition []*StringFilter `type:"list"` +// SetWorkflowStatus sets the WorkflowStatus field's value. +func (s *AwsSecurityFindingFilters) SetWorkflowStatus(v []*StringFilter) *AwsSecurityFindingFilters { + s.WorkflowStatus = v + return s +} - // The canonical Amazon Web Services external Region name where this resource - // is located. - ResourceRegion []*StringFilter `type:"list"` +// Identifies a finding to update using BatchUpdateFindings. +type AwsSecurityFindingIdentifier struct { + _ struct{} `type:"structure"` - // A list of Amazon Web Services tags associated with a resource at the time - // the finding was processed. - ResourceTags []*MapFilter `type:"list"` + // The identifier of the finding that was specified by the finding provider. + // + // Id is a required field + Id *string `type:"string" required:"true"` - // Specifies the type of the resource that details are provided for. - ResourceType []*StringFilter `type:"list"` + // The ARN generated by Security Hub that uniquely identifies a product that + // generates findings. This can be the ARN for a third-party product that is + // integrated with Security Hub, or the ARN for a custom integration. + // + // ProductArn is a required field + ProductArn *string `type:"string" required:"true"` +} - // Indicates whether or not sample findings are included in the filter results. - Sample []*BooleanFilter `type:"list"` +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsSecurityFindingIdentifier) String() string { + return awsutil.Prettify(s) +} - // The label of a finding's severity. - SeverityLabel []*StringFilter `type:"list"` +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsSecurityFindingIdentifier) GoString() string { + return s.String() +} - // The normalized severity of a finding. - // - // Deprecated: This filter is deprecated. Instead, use SeverityLabel or FindingProviderFieldsSeverityLabel. - SeverityNormalized []*NumberFilter `deprecated:"true" type:"list"` +// Validate inspects the fields of the type to determine if they are valid. +func (s *AwsSecurityFindingIdentifier) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AwsSecurityFindingIdentifier"} + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + if s.ProductArn == nil { + invalidParams.Add(request.NewErrParamRequired("ProductArn")) + } - // The native severity as defined by the security-findings provider's solution - // that generated the finding. - // - // Deprecated: This filter is deprecated. Instead, use FindingProviderSeverityOriginal. - SeverityProduct []*NumberFilter `deprecated:"true" type:"list"` + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} - // A URL that links to a page about the current finding in the security-findings - // provider's solution. - SourceUrl []*StringFilter `type:"list"` +// SetId sets the Id field's value. +func (s *AwsSecurityFindingIdentifier) SetId(v string) *AwsSecurityFindingIdentifier { + s.Id = &v + return s +} - // The category of a threat intelligence indicator. - ThreatIntelIndicatorCategory []*StringFilter `type:"list"` +// SetProductArn sets the ProductArn field's value. +func (s *AwsSecurityFindingIdentifier) SetProductArn(v string) *AwsSecurityFindingIdentifier { + s.ProductArn = &v + return s +} - // The date/time of the last observation of a threat intelligence indicator. - ThreatIntelIndicatorLastObservedAt []*DateFilter `type:"list"` +// Provides information about an Amazon SNS topic to which notifications can +// be published. +type AwsSnsTopicDetails struct { + _ struct{} `type:"structure"` - // The source of the threat intelligence. - ThreatIntelIndicatorSource []*StringFilter `type:"list"` + // Indicates failed message delivery status for an Amazon SNS topic that is + // subscribed to a platform application endpoint. + ApplicationSuccessFeedbackRoleArn *string `type:"string"` - // The URL for more details from the source of the threat intelligence. - ThreatIntelIndicatorSourceUrl []*StringFilter `type:"list"` + // Indicates failed message delivery status for an Amazon SNS topic that is + // subscribed to an Amazon Kinesis Data Firehose endpoint. + FirehoseFailureFeedbackRoleArn *string `type:"string"` - // The type of a threat intelligence indicator. - ThreatIntelIndicatorType []*StringFilter `type:"list"` + // Indicates successful message delivery status for an Amazon SNS topic that + // is subscribed to an Amazon Kinesis Data Firehose endpoint. + FirehoseSuccessFeedbackRoleArn *string `type:"string"` - // The value of a threat intelligence indicator. - ThreatIntelIndicatorValue []*StringFilter `type:"list"` + // Indicates failed message delivery status for an Amazon SNS topic that is + // subscribed to an HTTP endpoint. + HttpFailureFeedbackRoleArn *string `type:"string"` - // A finding's title. - Title []*StringFilter `type:"list"` + // Indicates successful message delivery status for an Amazon SNS topic that + // is subscribed to an HTTP endpoint. + HttpSuccessFeedbackRoleArn *string `type:"string"` - // A finding type in the format of namespace/category/classifier that classifies - // a finding. - Type []*StringFilter `type:"list"` + // The ID of an Amazon Web Services managed key for Amazon SNS or a customer + // managed key. + KmsMasterKeyId *string `type:"string"` - // An ISO8601-formatted timestamp that indicates when the security-findings - // provider last updated the finding record. - UpdatedAt []*DateFilter `type:"list"` + // The subscription's owner. + Owner *string `type:"string"` - // A list of name/value string pairs associated with the finding. These are - // custom, user-defined fields added to a finding. - UserDefinedFields []*MapFilter `type:"list"` + // Indicates failed message delivery status for an Amazon SNS topic that is + // subscribed to an Amazon SQS endpoint. + SqsFailureFeedbackRoleArn *string `type:"string"` - // The veracity of a finding. - VerificationState []*StringFilter `type:"list"` + // Indicates successful message delivery status for an Amazon SNS topic that + // is subscribed to an Amazon SQS endpoint. + SqsSuccessFeedbackRoleArn *string `type:"string"` - // The workflow state of a finding. - // - // Note that this field is deprecated. To search for a finding based on its - // workflow status, use WorkflowStatus. - WorkflowState []*StringFilter `type:"list"` + // Subscription is an embedded property that describes the subscription endpoints + // of an Amazon SNS topic. + Subscription []*AwsSnsTopicSubscription `type:"list"` - // The status of the investigation into a finding. Allowed values are the following. - // - // * NEW - The initial state of a finding, before it is reviewed. Security - // Hub also resets the workflow status from NOTIFIED or RESOLVED to NEW in - // the following cases: RecordState changes from ARCHIVED to ACTIVE. Compliance.Status - // changes from PASSED to either WARNING, FAILED, or NOT_AVAILABLE. - // - // * NOTIFIED - Indicates that the resource owner has been notified about - // the security issue. Used when the initial reviewer is not the resource - // owner, and needs intervention from the resource owner. If one of the following - // occurs, the workflow status is changed automatically from NOTIFIED to - // NEW: RecordState changes from ARCHIVED to ACTIVE. Compliance.Status changes - // from PASSED to FAILED, WARNING, or NOT_AVAILABLE. - // - // * SUPPRESSED - Indicates that you reviewed the finding and do not believe - // that any action is needed. The workflow status of a SUPPRESSED finding - // does not change if RecordState changes from ARCHIVED to ACTIVE. - // - // * RESOLVED - The finding was reviewed and remediated and is now considered - // resolved. The finding remains RESOLVED unless one of the following occurs: - // RecordState changes from ARCHIVED to ACTIVE. Compliance.Status changes - // from PASSED to FAILED, WARNING, or NOT_AVAILABLE. In those cases, the - // workflow status is automatically reset to NEW. For findings from controls, - // if Compliance.Status is PASSED, then Security Hub automatically sets the - // workflow status to RESOLVED. - WorkflowStatus []*StringFilter `type:"list"` + // The name of the Amazon SNS topic. + TopicName *string `type:"string"` } // String returns the string representation. @@ -32630,7 +35739,7 @@ type AwsSecurityFindingFilters struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsSecurityFindingFilters) String() string { +func (s AwsSnsTopicDetails) String() string { return awsutil.Prettify(s) } @@ -32639,595 +35748,725 @@ func (s AwsSecurityFindingFilters) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsSecurityFindingFilters) GoString() string { +func (s AwsSnsTopicDetails) GoString() string { return s.String() } -// SetAwsAccountId sets the AwsAccountId field's value. -func (s *AwsSecurityFindingFilters) SetAwsAccountId(v []*StringFilter) *AwsSecurityFindingFilters { - s.AwsAccountId = v +// SetApplicationSuccessFeedbackRoleArn sets the ApplicationSuccessFeedbackRoleArn field's value. +func (s *AwsSnsTopicDetails) SetApplicationSuccessFeedbackRoleArn(v string) *AwsSnsTopicDetails { + s.ApplicationSuccessFeedbackRoleArn = &v return s } -// SetCompanyName sets the CompanyName field's value. -func (s *AwsSecurityFindingFilters) SetCompanyName(v []*StringFilter) *AwsSecurityFindingFilters { - s.CompanyName = v +// SetFirehoseFailureFeedbackRoleArn sets the FirehoseFailureFeedbackRoleArn field's value. +func (s *AwsSnsTopicDetails) SetFirehoseFailureFeedbackRoleArn(v string) *AwsSnsTopicDetails { + s.FirehoseFailureFeedbackRoleArn = &v return s } -// SetComplianceStatus sets the ComplianceStatus field's value. -func (s *AwsSecurityFindingFilters) SetComplianceStatus(v []*StringFilter) *AwsSecurityFindingFilters { - s.ComplianceStatus = v +// SetFirehoseSuccessFeedbackRoleArn sets the FirehoseSuccessFeedbackRoleArn field's value. +func (s *AwsSnsTopicDetails) SetFirehoseSuccessFeedbackRoleArn(v string) *AwsSnsTopicDetails { + s.FirehoseSuccessFeedbackRoleArn = &v return s } -// SetConfidence sets the Confidence field's value. -func (s *AwsSecurityFindingFilters) SetConfidence(v []*NumberFilter) *AwsSecurityFindingFilters { - s.Confidence = v +// SetHttpFailureFeedbackRoleArn sets the HttpFailureFeedbackRoleArn field's value. +func (s *AwsSnsTopicDetails) SetHttpFailureFeedbackRoleArn(v string) *AwsSnsTopicDetails { + s.HttpFailureFeedbackRoleArn = &v return s } -// SetCreatedAt sets the CreatedAt field's value. -func (s *AwsSecurityFindingFilters) SetCreatedAt(v []*DateFilter) *AwsSecurityFindingFilters { - s.CreatedAt = v +// SetHttpSuccessFeedbackRoleArn sets the HttpSuccessFeedbackRoleArn field's value. +func (s *AwsSnsTopicDetails) SetHttpSuccessFeedbackRoleArn(v string) *AwsSnsTopicDetails { + s.HttpSuccessFeedbackRoleArn = &v return s } -// SetCriticality sets the Criticality field's value. -func (s *AwsSecurityFindingFilters) SetCriticality(v []*NumberFilter) *AwsSecurityFindingFilters { - s.Criticality = v +// SetKmsMasterKeyId sets the KmsMasterKeyId field's value. +func (s *AwsSnsTopicDetails) SetKmsMasterKeyId(v string) *AwsSnsTopicDetails { + s.KmsMasterKeyId = &v return s } -// SetDescription sets the Description field's value. -func (s *AwsSecurityFindingFilters) SetDescription(v []*StringFilter) *AwsSecurityFindingFilters { - s.Description = v +// SetOwner sets the Owner field's value. +func (s *AwsSnsTopicDetails) SetOwner(v string) *AwsSnsTopicDetails { + s.Owner = &v return s } -// SetFindingProviderFieldsConfidence sets the FindingProviderFieldsConfidence field's value. -func (s *AwsSecurityFindingFilters) SetFindingProviderFieldsConfidence(v []*NumberFilter) *AwsSecurityFindingFilters { - s.FindingProviderFieldsConfidence = v +// SetSqsFailureFeedbackRoleArn sets the SqsFailureFeedbackRoleArn field's value. +func (s *AwsSnsTopicDetails) SetSqsFailureFeedbackRoleArn(v string) *AwsSnsTopicDetails { + s.SqsFailureFeedbackRoleArn = &v return s } -// SetFindingProviderFieldsCriticality sets the FindingProviderFieldsCriticality field's value. -func (s *AwsSecurityFindingFilters) SetFindingProviderFieldsCriticality(v []*NumberFilter) *AwsSecurityFindingFilters { - s.FindingProviderFieldsCriticality = v +// SetSqsSuccessFeedbackRoleArn sets the SqsSuccessFeedbackRoleArn field's value. +func (s *AwsSnsTopicDetails) SetSqsSuccessFeedbackRoleArn(v string) *AwsSnsTopicDetails { + s.SqsSuccessFeedbackRoleArn = &v return s } -// SetFindingProviderFieldsRelatedFindingsId sets the FindingProviderFieldsRelatedFindingsId field's value. -func (s *AwsSecurityFindingFilters) SetFindingProviderFieldsRelatedFindingsId(v []*StringFilter) *AwsSecurityFindingFilters { - s.FindingProviderFieldsRelatedFindingsId = v +// SetSubscription sets the Subscription field's value. +func (s *AwsSnsTopicDetails) SetSubscription(v []*AwsSnsTopicSubscription) *AwsSnsTopicDetails { + s.Subscription = v return s } -// SetFindingProviderFieldsRelatedFindingsProductArn sets the FindingProviderFieldsRelatedFindingsProductArn field's value. -func (s *AwsSecurityFindingFilters) SetFindingProviderFieldsRelatedFindingsProductArn(v []*StringFilter) *AwsSecurityFindingFilters { - s.FindingProviderFieldsRelatedFindingsProductArn = v +// SetTopicName sets the TopicName field's value. +func (s *AwsSnsTopicDetails) SetTopicName(v string) *AwsSnsTopicDetails { + s.TopicName = &v return s } -// SetFindingProviderFieldsSeverityLabel sets the FindingProviderFieldsSeverityLabel field's value. -func (s *AwsSecurityFindingFilters) SetFindingProviderFieldsSeverityLabel(v []*StringFilter) *AwsSecurityFindingFilters { - s.FindingProviderFieldsSeverityLabel = v - return s -} +// A wrapper type for the attributes of an Amazon SNS subscription. +type AwsSnsTopicSubscription struct { + _ struct{} `type:"structure"` -// SetFindingProviderFieldsSeverityOriginal sets the FindingProviderFieldsSeverityOriginal field's value. -func (s *AwsSecurityFindingFilters) SetFindingProviderFieldsSeverityOriginal(v []*StringFilter) *AwsSecurityFindingFilters { - s.FindingProviderFieldsSeverityOriginal = v - return s -} + // The subscription's endpoint (format depends on the protocol). + Endpoint *string `type:"string"` -// SetFindingProviderFieldsTypes sets the FindingProviderFieldsTypes field's value. -func (s *AwsSecurityFindingFilters) SetFindingProviderFieldsTypes(v []*StringFilter) *AwsSecurityFindingFilters { - s.FindingProviderFieldsTypes = v - return s + // The subscription's protocol. + Protocol *string `type:"string"` } -// SetFirstObservedAt sets the FirstObservedAt field's value. -func (s *AwsSecurityFindingFilters) SetFirstObservedAt(v []*DateFilter) *AwsSecurityFindingFilters { - s.FirstObservedAt = v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsSnsTopicSubscription) String() string { + return awsutil.Prettify(s) } -// SetGeneratorId sets the GeneratorId field's value. -func (s *AwsSecurityFindingFilters) SetGeneratorId(v []*StringFilter) *AwsSecurityFindingFilters { - s.GeneratorId = v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsSnsTopicSubscription) GoString() string { + return s.String() } -// SetId sets the Id field's value. -func (s *AwsSecurityFindingFilters) SetId(v []*StringFilter) *AwsSecurityFindingFilters { - s.Id = v +// SetEndpoint sets the Endpoint field's value. +func (s *AwsSnsTopicSubscription) SetEndpoint(v string) *AwsSnsTopicSubscription { + s.Endpoint = &v return s } -// SetKeyword sets the Keyword field's value. -func (s *AwsSecurityFindingFilters) SetKeyword(v []*KeywordFilter) *AwsSecurityFindingFilters { - s.Keyword = v +// SetProtocol sets the Protocol field's value. +func (s *AwsSnsTopicSubscription) SetProtocol(v string) *AwsSnsTopicSubscription { + s.Protocol = &v return s } -// SetLastObservedAt sets the LastObservedAt field's value. -func (s *AwsSecurityFindingFilters) SetLastObservedAt(v []*DateFilter) *AwsSecurityFindingFilters { - s.LastObservedAt = v - return s -} +// Data about a queue. +type AwsSqsQueueDetails struct { + _ struct{} `type:"structure"` -// SetMalwareName sets the MalwareName field's value. -func (s *AwsSecurityFindingFilters) SetMalwareName(v []*StringFilter) *AwsSecurityFindingFilters { - s.MalwareName = v - return s -} + // The ARN of the dead-letter queue to which Amazon SQS moves messages after + // the value of maxReceiveCount is exceeded. + DeadLetterTargetArn *string `type:"string"` -// SetMalwarePath sets the MalwarePath field's value. -func (s *AwsSecurityFindingFilters) SetMalwarePath(v []*StringFilter) *AwsSecurityFindingFilters { - s.MalwarePath = v - return s -} + // The length of time, in seconds, for which Amazon SQS can reuse a data key + // to encrypt or decrypt messages before calling KMS again. + KmsDataKeyReusePeriodSeconds *int64 `type:"integer"` -// SetMalwareState sets the MalwareState field's value. -func (s *AwsSecurityFindingFilters) SetMalwareState(v []*StringFilter) *AwsSecurityFindingFilters { - s.MalwareState = v - return s -} + // The ID of an Amazon Web Services managed key for Amazon SQS or a custom KMS + // key. + KmsMasterKeyId *string `type:"string"` -// SetMalwareType sets the MalwareType field's value. -func (s *AwsSecurityFindingFilters) SetMalwareType(v []*StringFilter) *AwsSecurityFindingFilters { - s.MalwareType = v - return s + // The name of the new queue. + QueueName *string `type:"string"` } -// SetNetworkDestinationDomain sets the NetworkDestinationDomain field's value. -func (s *AwsSecurityFindingFilters) SetNetworkDestinationDomain(v []*StringFilter) *AwsSecurityFindingFilters { - s.NetworkDestinationDomain = v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsSqsQueueDetails) String() string { + return awsutil.Prettify(s) } -// SetNetworkDestinationIpV4 sets the NetworkDestinationIpV4 field's value. -func (s *AwsSecurityFindingFilters) SetNetworkDestinationIpV4(v []*IpFilter) *AwsSecurityFindingFilters { - s.NetworkDestinationIpV4 = v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsSqsQueueDetails) GoString() string { + return s.String() } -// SetNetworkDestinationIpV6 sets the NetworkDestinationIpV6 field's value. -func (s *AwsSecurityFindingFilters) SetNetworkDestinationIpV6(v []*IpFilter) *AwsSecurityFindingFilters { - s.NetworkDestinationIpV6 = v +// SetDeadLetterTargetArn sets the DeadLetterTargetArn field's value. +func (s *AwsSqsQueueDetails) SetDeadLetterTargetArn(v string) *AwsSqsQueueDetails { + s.DeadLetterTargetArn = &v return s } -// SetNetworkDestinationPort sets the NetworkDestinationPort field's value. -func (s *AwsSecurityFindingFilters) SetNetworkDestinationPort(v []*NumberFilter) *AwsSecurityFindingFilters { - s.NetworkDestinationPort = v +// SetKmsDataKeyReusePeriodSeconds sets the KmsDataKeyReusePeriodSeconds field's value. +func (s *AwsSqsQueueDetails) SetKmsDataKeyReusePeriodSeconds(v int64) *AwsSqsQueueDetails { + s.KmsDataKeyReusePeriodSeconds = &v return s } -// SetNetworkDirection sets the NetworkDirection field's value. -func (s *AwsSecurityFindingFilters) SetNetworkDirection(v []*StringFilter) *AwsSecurityFindingFilters { - s.NetworkDirection = v +// SetKmsMasterKeyId sets the KmsMasterKeyId field's value. +func (s *AwsSqsQueueDetails) SetKmsMasterKeyId(v string) *AwsSqsQueueDetails { + s.KmsMasterKeyId = &v return s } -// SetNetworkProtocol sets the NetworkProtocol field's value. -func (s *AwsSecurityFindingFilters) SetNetworkProtocol(v []*StringFilter) *AwsSecurityFindingFilters { - s.NetworkProtocol = v +// SetQueueName sets the QueueName field's value. +func (s *AwsSqsQueueDetails) SetQueueName(v string) *AwsSqsQueueDetails { + s.QueueName = &v return s } -// SetNetworkSourceDomain sets the NetworkSourceDomain field's value. -func (s *AwsSecurityFindingFilters) SetNetworkSourceDomain(v []*StringFilter) *AwsSecurityFindingFilters { - s.NetworkSourceDomain = v - return s -} +// Provides the details about the compliance status for a patch. +type AwsSsmComplianceSummary struct { + _ struct{} `type:"structure"` -// SetNetworkSourceIpV4 sets the NetworkSourceIpV4 field's value. -func (s *AwsSecurityFindingFilters) SetNetworkSourceIpV4(v []*IpFilter) *AwsSecurityFindingFilters { - s.NetworkSourceIpV4 = v - return s -} + // The type of resource for which the compliance was determined. For AwsSsmPatchCompliance, + // ComplianceType is Patch. + ComplianceType *string `type:"string"` -// SetNetworkSourceIpV6 sets the NetworkSourceIpV6 field's value. -func (s *AwsSecurityFindingFilters) SetNetworkSourceIpV6(v []*IpFilter) *AwsSecurityFindingFilters { - s.NetworkSourceIpV6 = v - return s -} + // For the patches that are compliant, the number that have a severity of CRITICAL. + CompliantCriticalCount *int64 `type:"integer"` -// SetNetworkSourceMac sets the NetworkSourceMac field's value. -func (s *AwsSecurityFindingFilters) SetNetworkSourceMac(v []*StringFilter) *AwsSecurityFindingFilters { - s.NetworkSourceMac = v - return s -} + // For the patches that are compliant, the number that have a severity of HIGH. + CompliantHighCount *int64 `type:"integer"` -// SetNetworkSourcePort sets the NetworkSourcePort field's value. -func (s *AwsSecurityFindingFilters) SetNetworkSourcePort(v []*NumberFilter) *AwsSecurityFindingFilters { - s.NetworkSourcePort = v - return s + // For the patches that are compliant, the number that have a severity of INFORMATIONAL. + CompliantInformationalCount *int64 `type:"integer"` + + // For the patches that are compliant, the number that have a severity of LOW. + CompliantLowCount *int64 `type:"integer"` + + // For the patches that are compliant, the number that have a severity of MEDIUM. + CompliantMediumCount *int64 `type:"integer"` + + // For the patches that are compliant, the number that have a severity of UNSPECIFIED. + CompliantUnspecifiedCount *int64 `type:"integer"` + + // The type of execution that was used determine compliance. + ExecutionType *string `type:"string"` + + // For the patch items that are noncompliant, the number of items that have + // a severity of CRITICAL. + NonCompliantCriticalCount *int64 `type:"integer"` + + // For the patches that are noncompliant, the number that have a severity of + // HIGH. + NonCompliantHighCount *int64 `type:"integer"` + + // For the patches that are noncompliant, the number that have a severity of + // INFORMATIONAL. + NonCompliantInformationalCount *int64 `type:"integer"` + + // For the patches that are noncompliant, the number that have a severity of + // LOW. + NonCompliantLowCount *int64 `type:"integer"` + + // For the patches that are noncompliant, the number that have a severity of + // MEDIUM. + NonCompliantMediumCount *int64 `type:"integer"` + + // For the patches that are noncompliant, the number that have a severity of + // UNSPECIFIED. + NonCompliantUnspecifiedCount *int64 `type:"integer"` + + // The highest severity for the patches. Valid values are as follows: + // + // * CRITICAL + // + // * HIGH + // + // * MEDIUM + // + // * LOW + // + // * INFORMATIONAL + // + // * UNSPECIFIED + OverallSeverity *string `type:"string"` + + // The identifier of the patch baseline. The patch baseline lists the patches + // that are approved for installation. + PatchBaselineId *string `type:"string"` + + // The identifier of the patch group for which compliance was determined. A + // patch group uses tags to group EC2 instances that should have the same patch + // compliance. + PatchGroup *string `type:"string"` + + // The current patch compliance status. Valid values are as follows: + // + // * COMPLIANT + // + // * NON_COMPLIANT + // + // * UNSPECIFIED_DATA + Status *string `type:"string"` } -// SetNoteText sets the NoteText field's value. -func (s *AwsSecurityFindingFilters) SetNoteText(v []*StringFilter) *AwsSecurityFindingFilters { - s.NoteText = v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsSsmComplianceSummary) String() string { + return awsutil.Prettify(s) } -// SetNoteUpdatedAt sets the NoteUpdatedAt field's value. -func (s *AwsSecurityFindingFilters) SetNoteUpdatedAt(v []*DateFilter) *AwsSecurityFindingFilters { - s.NoteUpdatedAt = v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsSsmComplianceSummary) GoString() string { + return s.String() } -// SetNoteUpdatedBy sets the NoteUpdatedBy field's value. -func (s *AwsSecurityFindingFilters) SetNoteUpdatedBy(v []*StringFilter) *AwsSecurityFindingFilters { - s.NoteUpdatedBy = v +// SetComplianceType sets the ComplianceType field's value. +func (s *AwsSsmComplianceSummary) SetComplianceType(v string) *AwsSsmComplianceSummary { + s.ComplianceType = &v return s } -// SetProcessLaunchedAt sets the ProcessLaunchedAt field's value. -func (s *AwsSecurityFindingFilters) SetProcessLaunchedAt(v []*DateFilter) *AwsSecurityFindingFilters { - s.ProcessLaunchedAt = v +// SetCompliantCriticalCount sets the CompliantCriticalCount field's value. +func (s *AwsSsmComplianceSummary) SetCompliantCriticalCount(v int64) *AwsSsmComplianceSummary { + s.CompliantCriticalCount = &v return s } -// SetProcessName sets the ProcessName field's value. -func (s *AwsSecurityFindingFilters) SetProcessName(v []*StringFilter) *AwsSecurityFindingFilters { - s.ProcessName = v +// SetCompliantHighCount sets the CompliantHighCount field's value. +func (s *AwsSsmComplianceSummary) SetCompliantHighCount(v int64) *AwsSsmComplianceSummary { + s.CompliantHighCount = &v return s } -// SetProcessParentPid sets the ProcessParentPid field's value. -func (s *AwsSecurityFindingFilters) SetProcessParentPid(v []*NumberFilter) *AwsSecurityFindingFilters { - s.ProcessParentPid = v +// SetCompliantInformationalCount sets the CompliantInformationalCount field's value. +func (s *AwsSsmComplianceSummary) SetCompliantInformationalCount(v int64) *AwsSsmComplianceSummary { + s.CompliantInformationalCount = &v return s } -// SetProcessPath sets the ProcessPath field's value. -func (s *AwsSecurityFindingFilters) SetProcessPath(v []*StringFilter) *AwsSecurityFindingFilters { - s.ProcessPath = v +// SetCompliantLowCount sets the CompliantLowCount field's value. +func (s *AwsSsmComplianceSummary) SetCompliantLowCount(v int64) *AwsSsmComplianceSummary { + s.CompliantLowCount = &v return s } -// SetProcessPid sets the ProcessPid field's value. -func (s *AwsSecurityFindingFilters) SetProcessPid(v []*NumberFilter) *AwsSecurityFindingFilters { - s.ProcessPid = v +// SetCompliantMediumCount sets the CompliantMediumCount field's value. +func (s *AwsSsmComplianceSummary) SetCompliantMediumCount(v int64) *AwsSsmComplianceSummary { + s.CompliantMediumCount = &v return s } -// SetProcessTerminatedAt sets the ProcessTerminatedAt field's value. -func (s *AwsSecurityFindingFilters) SetProcessTerminatedAt(v []*DateFilter) *AwsSecurityFindingFilters { - s.ProcessTerminatedAt = v +// SetCompliantUnspecifiedCount sets the CompliantUnspecifiedCount field's value. +func (s *AwsSsmComplianceSummary) SetCompliantUnspecifiedCount(v int64) *AwsSsmComplianceSummary { + s.CompliantUnspecifiedCount = &v return s } -// SetProductArn sets the ProductArn field's value. -func (s *AwsSecurityFindingFilters) SetProductArn(v []*StringFilter) *AwsSecurityFindingFilters { - s.ProductArn = v +// SetExecutionType sets the ExecutionType field's value. +func (s *AwsSsmComplianceSummary) SetExecutionType(v string) *AwsSsmComplianceSummary { + s.ExecutionType = &v return s } -// SetProductFields sets the ProductFields field's value. -func (s *AwsSecurityFindingFilters) SetProductFields(v []*MapFilter) *AwsSecurityFindingFilters { - s.ProductFields = v +// SetNonCompliantCriticalCount sets the NonCompliantCriticalCount field's value. +func (s *AwsSsmComplianceSummary) SetNonCompliantCriticalCount(v int64) *AwsSsmComplianceSummary { + s.NonCompliantCriticalCount = &v return s } -// SetProductName sets the ProductName field's value. -func (s *AwsSecurityFindingFilters) SetProductName(v []*StringFilter) *AwsSecurityFindingFilters { - s.ProductName = v +// SetNonCompliantHighCount sets the NonCompliantHighCount field's value. +func (s *AwsSsmComplianceSummary) SetNonCompliantHighCount(v int64) *AwsSsmComplianceSummary { + s.NonCompliantHighCount = &v return s } -// SetRecommendationText sets the RecommendationText field's value. -func (s *AwsSecurityFindingFilters) SetRecommendationText(v []*StringFilter) *AwsSecurityFindingFilters { - s.RecommendationText = v +// SetNonCompliantInformationalCount sets the NonCompliantInformationalCount field's value. +func (s *AwsSsmComplianceSummary) SetNonCompliantInformationalCount(v int64) *AwsSsmComplianceSummary { + s.NonCompliantInformationalCount = &v return s } -// SetRecordState sets the RecordState field's value. -func (s *AwsSecurityFindingFilters) SetRecordState(v []*StringFilter) *AwsSecurityFindingFilters { - s.RecordState = v +// SetNonCompliantLowCount sets the NonCompliantLowCount field's value. +func (s *AwsSsmComplianceSummary) SetNonCompliantLowCount(v int64) *AwsSsmComplianceSummary { + s.NonCompliantLowCount = &v return s } -// SetRegion sets the Region field's value. -func (s *AwsSecurityFindingFilters) SetRegion(v []*StringFilter) *AwsSecurityFindingFilters { - s.Region = v +// SetNonCompliantMediumCount sets the NonCompliantMediumCount field's value. +func (s *AwsSsmComplianceSummary) SetNonCompliantMediumCount(v int64) *AwsSsmComplianceSummary { + s.NonCompliantMediumCount = &v return s } -// SetRelatedFindingsId sets the RelatedFindingsId field's value. -func (s *AwsSecurityFindingFilters) SetRelatedFindingsId(v []*StringFilter) *AwsSecurityFindingFilters { - s.RelatedFindingsId = v +// SetNonCompliantUnspecifiedCount sets the NonCompliantUnspecifiedCount field's value. +func (s *AwsSsmComplianceSummary) SetNonCompliantUnspecifiedCount(v int64) *AwsSsmComplianceSummary { + s.NonCompliantUnspecifiedCount = &v return s } -// SetRelatedFindingsProductArn sets the RelatedFindingsProductArn field's value. -func (s *AwsSecurityFindingFilters) SetRelatedFindingsProductArn(v []*StringFilter) *AwsSecurityFindingFilters { - s.RelatedFindingsProductArn = v +// SetOverallSeverity sets the OverallSeverity field's value. +func (s *AwsSsmComplianceSummary) SetOverallSeverity(v string) *AwsSsmComplianceSummary { + s.OverallSeverity = &v return s } -// SetResourceAwsEc2InstanceIamInstanceProfileArn sets the ResourceAwsEc2InstanceIamInstanceProfileArn field's value. -func (s *AwsSecurityFindingFilters) SetResourceAwsEc2InstanceIamInstanceProfileArn(v []*StringFilter) *AwsSecurityFindingFilters { - s.ResourceAwsEc2InstanceIamInstanceProfileArn = v +// SetPatchBaselineId sets the PatchBaselineId field's value. +func (s *AwsSsmComplianceSummary) SetPatchBaselineId(v string) *AwsSsmComplianceSummary { + s.PatchBaselineId = &v return s } -// SetResourceAwsEc2InstanceImageId sets the ResourceAwsEc2InstanceImageId field's value. -func (s *AwsSecurityFindingFilters) SetResourceAwsEc2InstanceImageId(v []*StringFilter) *AwsSecurityFindingFilters { - s.ResourceAwsEc2InstanceImageId = v +// SetPatchGroup sets the PatchGroup field's value. +func (s *AwsSsmComplianceSummary) SetPatchGroup(v string) *AwsSsmComplianceSummary { + s.PatchGroup = &v return s } -// SetResourceAwsEc2InstanceIpV4Addresses sets the ResourceAwsEc2InstanceIpV4Addresses field's value. -func (s *AwsSecurityFindingFilters) SetResourceAwsEc2InstanceIpV4Addresses(v []*IpFilter) *AwsSecurityFindingFilters { - s.ResourceAwsEc2InstanceIpV4Addresses = v +// SetStatus sets the Status field's value. +func (s *AwsSsmComplianceSummary) SetStatus(v string) *AwsSsmComplianceSummary { + s.Status = &v return s } -// SetResourceAwsEc2InstanceIpV6Addresses sets the ResourceAwsEc2InstanceIpV6Addresses field's value. -func (s *AwsSecurityFindingFilters) SetResourceAwsEc2InstanceIpV6Addresses(v []*IpFilter) *AwsSecurityFindingFilters { - s.ResourceAwsEc2InstanceIpV6Addresses = v - return s -} +// Provides details about the compliance for a patch. +type AwsSsmPatch struct { + _ struct{} `type:"structure"` -// SetResourceAwsEc2InstanceKeyName sets the ResourceAwsEc2InstanceKeyName field's value. -func (s *AwsSecurityFindingFilters) SetResourceAwsEc2InstanceKeyName(v []*StringFilter) *AwsSecurityFindingFilters { - s.ResourceAwsEc2InstanceKeyName = v - return s + // The compliance status details for the patch. + ComplianceSummary *AwsSsmComplianceSummary `type:"structure"` } -// SetResourceAwsEc2InstanceLaunchedAt sets the ResourceAwsEc2InstanceLaunchedAt field's value. -func (s *AwsSecurityFindingFilters) SetResourceAwsEc2InstanceLaunchedAt(v []*DateFilter) *AwsSecurityFindingFilters { - s.ResourceAwsEc2InstanceLaunchedAt = v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsSsmPatch) String() string { + return awsutil.Prettify(s) } -// SetResourceAwsEc2InstanceSubnetId sets the ResourceAwsEc2InstanceSubnetId field's value. -func (s *AwsSecurityFindingFilters) SetResourceAwsEc2InstanceSubnetId(v []*StringFilter) *AwsSecurityFindingFilters { - s.ResourceAwsEc2InstanceSubnetId = v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsSsmPatch) GoString() string { + return s.String() } -// SetResourceAwsEc2InstanceType sets the ResourceAwsEc2InstanceType field's value. -func (s *AwsSecurityFindingFilters) SetResourceAwsEc2InstanceType(v []*StringFilter) *AwsSecurityFindingFilters { - s.ResourceAwsEc2InstanceType = v +// SetComplianceSummary sets the ComplianceSummary field's value. +func (s *AwsSsmPatch) SetComplianceSummary(v *AwsSsmComplianceSummary) *AwsSsmPatch { + s.ComplianceSummary = v return s } -// SetResourceAwsEc2InstanceVpcId sets the ResourceAwsEc2InstanceVpcId field's value. -func (s *AwsSecurityFindingFilters) SetResourceAwsEc2InstanceVpcId(v []*StringFilter) *AwsSecurityFindingFilters { - s.ResourceAwsEc2InstanceVpcId = v - return s -} +// Provides information about the state of a patch on an instance based on the +// patch baseline that was used to patch the instance. +type AwsSsmPatchComplianceDetails struct { + _ struct{} `type:"structure"` -// SetResourceAwsIamAccessKeyCreatedAt sets the ResourceAwsIamAccessKeyCreatedAt field's value. -func (s *AwsSecurityFindingFilters) SetResourceAwsIamAccessKeyCreatedAt(v []*DateFilter) *AwsSecurityFindingFilters { - s.ResourceAwsIamAccessKeyCreatedAt = v - return s + // Information about the status of a patch. + Patch *AwsSsmPatch `type:"structure"` } -// SetResourceAwsIamAccessKeyPrincipalName sets the ResourceAwsIamAccessKeyPrincipalName field's value. -func (s *AwsSecurityFindingFilters) SetResourceAwsIamAccessKeyPrincipalName(v []*StringFilter) *AwsSecurityFindingFilters { - s.ResourceAwsIamAccessKeyPrincipalName = v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsSsmPatchComplianceDetails) String() string { + return awsutil.Prettify(s) } -// SetResourceAwsIamAccessKeyStatus sets the ResourceAwsIamAccessKeyStatus field's value. -func (s *AwsSecurityFindingFilters) SetResourceAwsIamAccessKeyStatus(v []*StringFilter) *AwsSecurityFindingFilters { - s.ResourceAwsIamAccessKeyStatus = v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsSsmPatchComplianceDetails) GoString() string { + return s.String() } -// SetResourceAwsIamAccessKeyUserName sets the ResourceAwsIamAccessKeyUserName field's value. -func (s *AwsSecurityFindingFilters) SetResourceAwsIamAccessKeyUserName(v []*StringFilter) *AwsSecurityFindingFilters { - s.ResourceAwsIamAccessKeyUserName = v +// SetPatch sets the Patch field's value. +func (s *AwsSsmPatchComplianceDetails) SetPatch(v *AwsSsmPatch) *AwsSsmPatchComplianceDetails { + s.Patch = v return s } -// SetResourceAwsIamUserUserName sets the ResourceAwsIamUserUserName field's value. -func (s *AwsSecurityFindingFilters) SetResourceAwsIamUserUserName(v []*StringFilter) *AwsSecurityFindingFilters { - s.ResourceAwsIamUserUserName = v - return s -} +// Details about a rate-based rule for global resources. A rate-based rule provides +// settings to indicate when to allow, block, or count a request. Rate-based +// rules include the number of requests that arrive over a specified period +// of time. +type AwsWafRateBasedRuleDetails struct { + _ struct{} `type:"structure"` -// SetResourceAwsS3BucketOwnerId sets the ResourceAwsS3BucketOwnerId field's value. -func (s *AwsSecurityFindingFilters) SetResourceAwsS3BucketOwnerId(v []*StringFilter) *AwsSecurityFindingFilters { - s.ResourceAwsS3BucketOwnerId = v - return s -} + // The predicates to include in the rate-based rule. + MatchPredicates []*AwsWafRateBasedRuleMatchPredicate `type:"list"` -// SetResourceAwsS3BucketOwnerName sets the ResourceAwsS3BucketOwnerName field's value. -func (s *AwsSecurityFindingFilters) SetResourceAwsS3BucketOwnerName(v []*StringFilter) *AwsSecurityFindingFilters { - s.ResourceAwsS3BucketOwnerName = v - return s -} + // The name of the metrics for the rate-based rule. + MetricName *string `type:"string"` -// SetResourceContainerImageId sets the ResourceContainerImageId field's value. -func (s *AwsSecurityFindingFilters) SetResourceContainerImageId(v []*StringFilter) *AwsSecurityFindingFilters { - s.ResourceContainerImageId = v - return s -} + // The name of the rate-based rule. + Name *string `type:"string"` -// SetResourceContainerImageName sets the ResourceContainerImageName field's value. -func (s *AwsSecurityFindingFilters) SetResourceContainerImageName(v []*StringFilter) *AwsSecurityFindingFilters { - s.ResourceContainerImageName = v - return s -} + // The field that WAF uses to determine whether requests are likely arriving + // from single source and are subject to rate monitoring. + RateKey *string `type:"string"` -// SetResourceContainerLaunchedAt sets the ResourceContainerLaunchedAt field's value. -func (s *AwsSecurityFindingFilters) SetResourceContainerLaunchedAt(v []*DateFilter) *AwsSecurityFindingFilters { - s.ResourceContainerLaunchedAt = v - return s -} + // The maximum number of requests that have an identical value for the field + // specified in RateKey that are allowed within a five-minute period. If the + // number of requests exceeds RateLimit and the other predicates specified in + // the rule are met, WAF triggers the action for the rule. + RateLimit *int64 `type:"long"` -// SetResourceContainerName sets the ResourceContainerName field's value. -func (s *AwsSecurityFindingFilters) SetResourceContainerName(v []*StringFilter) *AwsSecurityFindingFilters { - s.ResourceContainerName = v - return s + // The unique identifier for the rate-based rule. + RuleId *string `type:"string"` } -// SetResourceDetailsOther sets the ResourceDetailsOther field's value. -func (s *AwsSecurityFindingFilters) SetResourceDetailsOther(v []*MapFilter) *AwsSecurityFindingFilters { - s.ResourceDetailsOther = v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRateBasedRuleDetails) String() string { + return awsutil.Prettify(s) } -// SetResourceId sets the ResourceId field's value. -func (s *AwsSecurityFindingFilters) SetResourceId(v []*StringFilter) *AwsSecurityFindingFilters { - s.ResourceId = v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRateBasedRuleDetails) GoString() string { + return s.String() } -// SetResourcePartition sets the ResourcePartition field's value. -func (s *AwsSecurityFindingFilters) SetResourcePartition(v []*StringFilter) *AwsSecurityFindingFilters { - s.ResourcePartition = v +// SetMatchPredicates sets the MatchPredicates field's value. +func (s *AwsWafRateBasedRuleDetails) SetMatchPredicates(v []*AwsWafRateBasedRuleMatchPredicate) *AwsWafRateBasedRuleDetails { + s.MatchPredicates = v return s } -// SetResourceRegion sets the ResourceRegion field's value. -func (s *AwsSecurityFindingFilters) SetResourceRegion(v []*StringFilter) *AwsSecurityFindingFilters { - s.ResourceRegion = v +// SetMetricName sets the MetricName field's value. +func (s *AwsWafRateBasedRuleDetails) SetMetricName(v string) *AwsWafRateBasedRuleDetails { + s.MetricName = &v return s } -// SetResourceTags sets the ResourceTags field's value. -func (s *AwsSecurityFindingFilters) SetResourceTags(v []*MapFilter) *AwsSecurityFindingFilters { - s.ResourceTags = v +// SetName sets the Name field's value. +func (s *AwsWafRateBasedRuleDetails) SetName(v string) *AwsWafRateBasedRuleDetails { + s.Name = &v return s } -// SetResourceType sets the ResourceType field's value. -func (s *AwsSecurityFindingFilters) SetResourceType(v []*StringFilter) *AwsSecurityFindingFilters { - s.ResourceType = v +// SetRateKey sets the RateKey field's value. +func (s *AwsWafRateBasedRuleDetails) SetRateKey(v string) *AwsWafRateBasedRuleDetails { + s.RateKey = &v return s } -// SetSample sets the Sample field's value. -func (s *AwsSecurityFindingFilters) SetSample(v []*BooleanFilter) *AwsSecurityFindingFilters { - s.Sample = v +// SetRateLimit sets the RateLimit field's value. +func (s *AwsWafRateBasedRuleDetails) SetRateLimit(v int64) *AwsWafRateBasedRuleDetails { + s.RateLimit = &v return s } -// SetSeverityLabel sets the SeverityLabel field's value. -func (s *AwsSecurityFindingFilters) SetSeverityLabel(v []*StringFilter) *AwsSecurityFindingFilters { - s.SeverityLabel = v +// SetRuleId sets the RuleId field's value. +func (s *AwsWafRateBasedRuleDetails) SetRuleId(v string) *AwsWafRateBasedRuleDetails { + s.RuleId = &v return s } -// SetSeverityNormalized sets the SeverityNormalized field's value. -func (s *AwsSecurityFindingFilters) SetSeverityNormalized(v []*NumberFilter) *AwsSecurityFindingFilters { - s.SeverityNormalized = v - return s -} +// A match predicate. A predicate might look for characteristics such as specific +// IP addresses, geographic locations, or sizes. +type AwsWafRateBasedRuleMatchPredicate struct { + _ struct{} `type:"structure"` -// SetSeverityProduct sets the SeverityProduct field's value. -func (s *AwsSecurityFindingFilters) SetSeverityProduct(v []*NumberFilter) *AwsSecurityFindingFilters { - s.SeverityProduct = v - return s + // The unique identifier for the predicate. + DataId *string `type:"string"` + + // If set to true, then the rule actions are performed on requests that match + // the predicate settings. + // + // If set to false, then the rule actions are performed on all requests except + // those that match the predicate settings. + Negated *bool `type:"boolean"` + + // The type of predicate. Valid values are as follows: + // + // * ByteMatch + // + // * GeoMatch + // + // * IPMatch + // + // * RegexMatch + // + // * SizeConstraint + // + // * SqlInjectionMatch + // + // * XssMatch + Type *string `type:"string"` } -// SetSourceUrl sets the SourceUrl field's value. -func (s *AwsSecurityFindingFilters) SetSourceUrl(v []*StringFilter) *AwsSecurityFindingFilters { - s.SourceUrl = v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRateBasedRuleMatchPredicate) String() string { + return awsutil.Prettify(s) } -// SetThreatIntelIndicatorCategory sets the ThreatIntelIndicatorCategory field's value. -func (s *AwsSecurityFindingFilters) SetThreatIntelIndicatorCategory(v []*StringFilter) *AwsSecurityFindingFilters { - s.ThreatIntelIndicatorCategory = v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRateBasedRuleMatchPredicate) GoString() string { + return s.String() } -// SetThreatIntelIndicatorLastObservedAt sets the ThreatIntelIndicatorLastObservedAt field's value. -func (s *AwsSecurityFindingFilters) SetThreatIntelIndicatorLastObservedAt(v []*DateFilter) *AwsSecurityFindingFilters { - s.ThreatIntelIndicatorLastObservedAt = v +// SetDataId sets the DataId field's value. +func (s *AwsWafRateBasedRuleMatchPredicate) SetDataId(v string) *AwsWafRateBasedRuleMatchPredicate { + s.DataId = &v return s } -// SetThreatIntelIndicatorSource sets the ThreatIntelIndicatorSource field's value. -func (s *AwsSecurityFindingFilters) SetThreatIntelIndicatorSource(v []*StringFilter) *AwsSecurityFindingFilters { - s.ThreatIntelIndicatorSource = v +// SetNegated sets the Negated field's value. +func (s *AwsWafRateBasedRuleMatchPredicate) SetNegated(v bool) *AwsWafRateBasedRuleMatchPredicate { + s.Negated = &v return s } -// SetThreatIntelIndicatorSourceUrl sets the ThreatIntelIndicatorSourceUrl field's value. -func (s *AwsSecurityFindingFilters) SetThreatIntelIndicatorSourceUrl(v []*StringFilter) *AwsSecurityFindingFilters { - s.ThreatIntelIndicatorSourceUrl = v +// SetType sets the Type field's value. +func (s *AwsWafRateBasedRuleMatchPredicate) SetType(v string) *AwsWafRateBasedRuleMatchPredicate { + s.Type = &v return s } -// SetThreatIntelIndicatorType sets the ThreatIntelIndicatorType field's value. -func (s *AwsSecurityFindingFilters) SetThreatIntelIndicatorType(v []*StringFilter) *AwsSecurityFindingFilters { - s.ThreatIntelIndicatorType = v - return s +// contains details about a rate-based rule for Regional resources. A rate-based +// rule provides settings to indicate when to allow, block, or count a request. +// Rate-based rules include the number of requests that arrive over a specified +// period of time. +type AwsWafRegionalRateBasedRuleDetails struct { + _ struct{} `type:"structure"` + + // The predicates to include in the rate-based rule. + MatchPredicates []*AwsWafRegionalRateBasedRuleMatchPredicate `type:"list"` + + // The name of the metrics for the rate-based rule. + MetricName *string `type:"string"` + + // The name of the rate-based rule. + Name *string `type:"string"` + + // The field that WAF uses to determine whether requests are likely arriving + // from single source and are subject to rate monitoring. + RateKey *string `type:"string"` + + // The maximum number of requests that have an identical value for the field + // specified in RateKey that are allowed within a five-minute period. If the + // number of requests exceeds RateLimit and the other predicates specified in + // the rule are met, WAF triggers the action for the rule. + RateLimit *int64 `type:"long"` + + // The unique identifier for the rate-based rule. + RuleId *string `type:"string"` } -// SetThreatIntelIndicatorValue sets the ThreatIntelIndicatorValue field's value. -func (s *AwsSecurityFindingFilters) SetThreatIntelIndicatorValue(v []*StringFilter) *AwsSecurityFindingFilters { - s.ThreatIntelIndicatorValue = v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRegionalRateBasedRuleDetails) String() string { + return awsutil.Prettify(s) } -// SetTitle sets the Title field's value. -func (s *AwsSecurityFindingFilters) SetTitle(v []*StringFilter) *AwsSecurityFindingFilters { - s.Title = v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRegionalRateBasedRuleDetails) GoString() string { + return s.String() } -// SetType sets the Type field's value. -func (s *AwsSecurityFindingFilters) SetType(v []*StringFilter) *AwsSecurityFindingFilters { - s.Type = v +// SetMatchPredicates sets the MatchPredicates field's value. +func (s *AwsWafRegionalRateBasedRuleDetails) SetMatchPredicates(v []*AwsWafRegionalRateBasedRuleMatchPredicate) *AwsWafRegionalRateBasedRuleDetails { + s.MatchPredicates = v return s } -// SetUpdatedAt sets the UpdatedAt field's value. -func (s *AwsSecurityFindingFilters) SetUpdatedAt(v []*DateFilter) *AwsSecurityFindingFilters { - s.UpdatedAt = v +// SetMetricName sets the MetricName field's value. +func (s *AwsWafRegionalRateBasedRuleDetails) SetMetricName(v string) *AwsWafRegionalRateBasedRuleDetails { + s.MetricName = &v return s } -// SetUserDefinedFields sets the UserDefinedFields field's value. -func (s *AwsSecurityFindingFilters) SetUserDefinedFields(v []*MapFilter) *AwsSecurityFindingFilters { - s.UserDefinedFields = v +// SetName sets the Name field's value. +func (s *AwsWafRegionalRateBasedRuleDetails) SetName(v string) *AwsWafRegionalRateBasedRuleDetails { + s.Name = &v return s } -// SetVerificationState sets the VerificationState field's value. -func (s *AwsSecurityFindingFilters) SetVerificationState(v []*StringFilter) *AwsSecurityFindingFilters { - s.VerificationState = v +// SetRateKey sets the RateKey field's value. +func (s *AwsWafRegionalRateBasedRuleDetails) SetRateKey(v string) *AwsWafRegionalRateBasedRuleDetails { + s.RateKey = &v return s } -// SetWorkflowState sets the WorkflowState field's value. -func (s *AwsSecurityFindingFilters) SetWorkflowState(v []*StringFilter) *AwsSecurityFindingFilters { - s.WorkflowState = v +// SetRateLimit sets the RateLimit field's value. +func (s *AwsWafRegionalRateBasedRuleDetails) SetRateLimit(v int64) *AwsWafRegionalRateBasedRuleDetails { + s.RateLimit = &v return s } -// SetWorkflowStatus sets the WorkflowStatus field's value. -func (s *AwsSecurityFindingFilters) SetWorkflowStatus(v []*StringFilter) *AwsSecurityFindingFilters { - s.WorkflowStatus = v +// SetRuleId sets the RuleId field's value. +func (s *AwsWafRegionalRateBasedRuleDetails) SetRuleId(v string) *AwsWafRegionalRateBasedRuleDetails { + s.RuleId = &v return s } -// Identifies a finding to update using BatchUpdateFindings. -type AwsSecurityFindingIdentifier struct { +// Details for a match predicate. A predicate might look for characteristics +// such as specific IP addresses, geographic locations, or sizes. +type AwsWafRegionalRateBasedRuleMatchPredicate struct { _ struct{} `type:"structure"` - // The identifier of the finding that was specified by the finding provider. + // The unique identifier for the predicate. + DataId *string `type:"string"` + + // If set to true, then the rule actions are performed on requests that match + // the predicate settings. // - // Id is a required field - Id *string `type:"string" required:"true"` + // If set to false, then the rule actions are performed on all requests except + // those that match the predicate settings. + Negated *bool `type:"boolean"` - // The ARN generated by Security Hub that uniquely identifies a product that - // generates findings. This can be the ARN for a third-party product that is - // integrated with Security Hub, or the ARN for a custom integration. + // The type of predicate. Valid values are as follows: // - // ProductArn is a required field - ProductArn *string `type:"string" required:"true"` + // * ByteMatch + // + // * GeoMatch + // + // * IPMatch + // + // * RegexMatch + // + // * SizeConstraint + // + // * SqlInjectionMatch + // + // * XssMatch + Type *string `type:"string"` } // String returns the string representation. @@ -33235,7 +36474,7 @@ type AwsSecurityFindingIdentifier struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsSecurityFindingIdentifier) String() string { +func (s AwsWafRegionalRateBasedRuleMatchPredicate) String() string { return awsutil.Prettify(s) } @@ -33244,84 +36483,46 @@ func (s AwsSecurityFindingIdentifier) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsSecurityFindingIdentifier) GoString() string { +func (s AwsWafRegionalRateBasedRuleMatchPredicate) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *AwsSecurityFindingIdentifier) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "AwsSecurityFindingIdentifier"} - if s.Id == nil { - invalidParams.Add(request.NewErrParamRequired("Id")) - } - if s.ProductArn == nil { - invalidParams.Add(request.NewErrParamRequired("ProductArn")) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetDataId sets the DataId field's value. +func (s *AwsWafRegionalRateBasedRuleMatchPredicate) SetDataId(v string) *AwsWafRegionalRateBasedRuleMatchPredicate { + s.DataId = &v + return s } -// SetId sets the Id field's value. -func (s *AwsSecurityFindingIdentifier) SetId(v string) *AwsSecurityFindingIdentifier { - s.Id = &v +// SetNegated sets the Negated field's value. +func (s *AwsWafRegionalRateBasedRuleMatchPredicate) SetNegated(v bool) *AwsWafRegionalRateBasedRuleMatchPredicate { + s.Negated = &v return s } -// SetProductArn sets the ProductArn field's value. -func (s *AwsSecurityFindingIdentifier) SetProductArn(v string) *AwsSecurityFindingIdentifier { - s.ProductArn = &v +// SetType sets the Type field's value. +func (s *AwsWafRegionalRateBasedRuleMatchPredicate) SetType(v string) *AwsWafRegionalRateBasedRuleMatchPredicate { + s.Type = &v return s } -// Provides information about an Amazon SNS topic to which notifications can -// be published. -type AwsSnsTopicDetails struct { +// Provides information about an WAF Regional rule. This rule identifies the +// web requests that you want to allow, block, or count. +type AwsWafRegionalRuleDetails struct { _ struct{} `type:"structure"` - // Indicates failed message delivery status for an Amazon SNS topic that is - // subscribed to a platform application endpoint. - ApplicationSuccessFeedbackRoleArn *string `type:"string"` - - // Indicates failed message delivery status for an Amazon SNS topic that is - // subscribed to an Amazon Kinesis Data Firehose endpoint. - FirehoseFailureFeedbackRoleArn *string `type:"string"` - - // Indicates successful message delivery status for an Amazon SNS topic that - // is subscribed to an Amazon Kinesis Data Firehose endpoint. - FirehoseSuccessFeedbackRoleArn *string `type:"string"` - - // Indicates failed message delivery status for an Amazon SNS topic that is - // subscribed to an HTTP endpoint. - HttpFailureFeedbackRoleArn *string `type:"string"` - - // Indicates successful message delivery status for an Amazon SNS topic that - // is subscribed to an HTTP endpoint. - HttpSuccessFeedbackRoleArn *string `type:"string"` - - // The ID of an Amazon Web Services managed key for Amazon SNS or a customer - // managed key. - KmsMasterKeyId *string `type:"string"` - - // The subscription's owner. - Owner *string `type:"string"` - - // Indicates failed message delivery status for an Amazon SNS topic that is - // subscribed to an Amazon SQS endpoint. - SqsFailureFeedbackRoleArn *string `type:"string"` + // A name for the metrics for the rule. + MetricName *string `type:"string"` - // Indicates successful message delivery status for an Amazon SNS topic that - // is subscribed to an Amazon SQS endpoint. - SqsSuccessFeedbackRoleArn *string `type:"string"` + // A descriptive name for the rule. + Name *string `type:"string"` - // Subscription is an embedded property that describes the subscription endpoints - // of an Amazon SNS topic. - Subscription []*AwsSnsTopicSubscription `type:"list"` + // Specifies the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, RegexMatchSet, + // GeoMatchSet, and SizeConstraintSet objects that you want to add to a rule + // and, for each object, indicates whether you want to negate the settings. + PredicateList []*AwsWafRegionalRulePredicateListDetails `type:"list"` - // The name of the Amazon SNS topic. - TopicName *string `type:"string"` + // The ID of the rule. + RuleId *string `type:"string"` } // String returns the string representation. @@ -33329,7 +36530,7 @@ type AwsSnsTopicDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsSnsTopicDetails) String() string { +func (s AwsWafRegionalRuleDetails) String() string { return awsutil.Prettify(s) } @@ -33338,85 +36539,104 @@ func (s AwsSnsTopicDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsSnsTopicDetails) GoString() string { +func (s AwsWafRegionalRuleDetails) GoString() string { return s.String() } -// SetApplicationSuccessFeedbackRoleArn sets the ApplicationSuccessFeedbackRoleArn field's value. -func (s *AwsSnsTopicDetails) SetApplicationSuccessFeedbackRoleArn(v string) *AwsSnsTopicDetails { - s.ApplicationSuccessFeedbackRoleArn = &v +// SetMetricName sets the MetricName field's value. +func (s *AwsWafRegionalRuleDetails) SetMetricName(v string) *AwsWafRegionalRuleDetails { + s.MetricName = &v return s } -// SetFirehoseFailureFeedbackRoleArn sets the FirehoseFailureFeedbackRoleArn field's value. -func (s *AwsSnsTopicDetails) SetFirehoseFailureFeedbackRoleArn(v string) *AwsSnsTopicDetails { - s.FirehoseFailureFeedbackRoleArn = &v +// SetName sets the Name field's value. +func (s *AwsWafRegionalRuleDetails) SetName(v string) *AwsWafRegionalRuleDetails { + s.Name = &v return s } -// SetFirehoseSuccessFeedbackRoleArn sets the FirehoseSuccessFeedbackRoleArn field's value. -func (s *AwsSnsTopicDetails) SetFirehoseSuccessFeedbackRoleArn(v string) *AwsSnsTopicDetails { - s.FirehoseSuccessFeedbackRoleArn = &v +// SetPredicateList sets the PredicateList field's value. +func (s *AwsWafRegionalRuleDetails) SetPredicateList(v []*AwsWafRegionalRulePredicateListDetails) *AwsWafRegionalRuleDetails { + s.PredicateList = v return s } -// SetHttpFailureFeedbackRoleArn sets the HttpFailureFeedbackRoleArn field's value. -func (s *AwsSnsTopicDetails) SetHttpFailureFeedbackRoleArn(v string) *AwsSnsTopicDetails { - s.HttpFailureFeedbackRoleArn = &v +// SetRuleId sets the RuleId field's value. +func (s *AwsWafRegionalRuleDetails) SetRuleId(v string) *AwsWafRegionalRuleDetails { + s.RuleId = &v return s } -// SetHttpSuccessFeedbackRoleArn sets the HttpSuccessFeedbackRoleArn field's value. -func (s *AwsSnsTopicDetails) SetHttpSuccessFeedbackRoleArn(v string) *AwsSnsTopicDetails { - s.HttpSuccessFeedbackRoleArn = &v - return s +// Provides information about an WAF Regional rule group. The rule group is +// a collection of rules for inspecting and controlling web requests. +type AwsWafRegionalRuleGroupDetails struct { + _ struct{} `type:"structure"` + + // A name for the metrics for this rule group. + MetricName *string `type:"string"` + + // The descriptive name of the rule group. + Name *string `type:"string"` + + // The ID of the rule group. + RuleGroupId *string `type:"string"` + + // Provides information about the rule statements used to identify the web requests + // that you want to allow, block, or count. + Rules []*AwsWafRegionalRuleGroupRulesDetails `type:"list"` } -// SetKmsMasterKeyId sets the KmsMasterKeyId field's value. -func (s *AwsSnsTopicDetails) SetKmsMasterKeyId(v string) *AwsSnsTopicDetails { - s.KmsMasterKeyId = &v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRegionalRuleGroupDetails) String() string { + return awsutil.Prettify(s) } -// SetOwner sets the Owner field's value. -func (s *AwsSnsTopicDetails) SetOwner(v string) *AwsSnsTopicDetails { - s.Owner = &v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRegionalRuleGroupDetails) GoString() string { + return s.String() } -// SetSqsFailureFeedbackRoleArn sets the SqsFailureFeedbackRoleArn field's value. -func (s *AwsSnsTopicDetails) SetSqsFailureFeedbackRoleArn(v string) *AwsSnsTopicDetails { - s.SqsFailureFeedbackRoleArn = &v +// SetMetricName sets the MetricName field's value. +func (s *AwsWafRegionalRuleGroupDetails) SetMetricName(v string) *AwsWafRegionalRuleGroupDetails { + s.MetricName = &v return s } -// SetSqsSuccessFeedbackRoleArn sets the SqsSuccessFeedbackRoleArn field's value. -func (s *AwsSnsTopicDetails) SetSqsSuccessFeedbackRoleArn(v string) *AwsSnsTopicDetails { - s.SqsSuccessFeedbackRoleArn = &v +// SetName sets the Name field's value. +func (s *AwsWafRegionalRuleGroupDetails) SetName(v string) *AwsWafRegionalRuleGroupDetails { + s.Name = &v return s } -// SetSubscription sets the Subscription field's value. -func (s *AwsSnsTopicDetails) SetSubscription(v []*AwsSnsTopicSubscription) *AwsSnsTopicDetails { - s.Subscription = v +// SetRuleGroupId sets the RuleGroupId field's value. +func (s *AwsWafRegionalRuleGroupDetails) SetRuleGroupId(v string) *AwsWafRegionalRuleGroupDetails { + s.RuleGroupId = &v return s } -// SetTopicName sets the TopicName field's value. -func (s *AwsSnsTopicDetails) SetTopicName(v string) *AwsSnsTopicDetails { - s.TopicName = &v +// SetRules sets the Rules field's value. +func (s *AwsWafRegionalRuleGroupDetails) SetRules(v []*AwsWafRegionalRuleGroupRulesDetails) *AwsWafRegionalRuleGroupDetails { + s.Rules = v return s } -// A wrapper type for the attributes of an Amazon SNS subscription. -type AwsSnsTopicSubscription struct { +// Describes the action that WAF should take on a web request when it matches +// the criteria defined in the rule. +type AwsWafRegionalRuleGroupRulesActionDetails struct { _ struct{} `type:"structure"` - // The subscription's endpoint (format depends on the protocol). - Endpoint *string `type:"string"` - - // The subscription's protocol. - Protocol *string `type:"string"` + // Specifies the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, RegexMatchSet, + // GeoMatchSet, and SizeConstraintSet objects that you want to add to a rule + // and, for each object, indicates whether you want to negate the settings. + Type *string `type:"string"` } // String returns the string representation. @@ -33424,7 +36644,7 @@ type AwsSnsTopicSubscription struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsSnsTopicSubscription) String() string { +func (s AwsWafRegionalRuleGroupRulesActionDetails) String() string { return awsutil.Prettify(s) } @@ -33433,40 +36653,33 @@ func (s AwsSnsTopicSubscription) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsSnsTopicSubscription) GoString() string { +func (s AwsWafRegionalRuleGroupRulesActionDetails) GoString() string { return s.String() } -// SetEndpoint sets the Endpoint field's value. -func (s *AwsSnsTopicSubscription) SetEndpoint(v string) *AwsSnsTopicSubscription { - s.Endpoint = &v - return s -} - -// SetProtocol sets the Protocol field's value. -func (s *AwsSnsTopicSubscription) SetProtocol(v string) *AwsSnsTopicSubscription { - s.Protocol = &v +// SetType sets the Type field's value. +func (s *AwsWafRegionalRuleGroupRulesActionDetails) SetType(v string) *AwsWafRegionalRuleGroupRulesActionDetails { + s.Type = &v return s } -// Data about a queue. -type AwsSqsQueueDetails struct { +// Provides information about the rules attached to a rule group +type AwsWafRegionalRuleGroupRulesDetails struct { _ struct{} `type:"structure"` - // The ARN of the dead-letter queue to which Amazon SQS moves messages after - // the value of maxReceiveCount is exceeded. - DeadLetterTargetArn *string `type:"string"` + // The action that WAF should take on a web request when it matches the criteria + // defined in the rule. + Action *AwsWafRegionalRuleGroupRulesActionDetails `type:"structure"` - // The length of time, in seconds, for which Amazon SQS can reuse a data key - // to encrypt or decrypt messages before calling KMS again. - KmsDataKeyReusePeriodSeconds *int64 `type:"integer"` + // If you define more than one rule in a web ACL, WAF evaluates each request + // against the rules in order based on the value of Priority. + Priority *int64 `type:"integer"` - // The ID of an Amazon Web Services managed key for Amazon SQS or a custom KMS - // key. - KmsMasterKeyId *string `type:"string"` + // The ID for a rule. + RuleId *string `type:"string"` - // The name of the new queue. - QueueName *string `type:"string"` + // The type of rule in the rule group. + Type *string `type:"string"` } // String returns the string representation. @@ -33474,7 +36687,7 @@ type AwsSqsQueueDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsSqsQueueDetails) String() string { +func (s AwsWafRegionalRuleGroupRulesDetails) String() string { return awsutil.Prettify(s) } @@ -33483,119 +36696,111 @@ func (s AwsSqsQueueDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsSqsQueueDetails) GoString() string { +func (s AwsWafRegionalRuleGroupRulesDetails) GoString() string { return s.String() } -// SetDeadLetterTargetArn sets the DeadLetterTargetArn field's value. -func (s *AwsSqsQueueDetails) SetDeadLetterTargetArn(v string) *AwsSqsQueueDetails { - s.DeadLetterTargetArn = &v +// SetAction sets the Action field's value. +func (s *AwsWafRegionalRuleGroupRulesDetails) SetAction(v *AwsWafRegionalRuleGroupRulesActionDetails) *AwsWafRegionalRuleGroupRulesDetails { + s.Action = v return s } -// SetKmsDataKeyReusePeriodSeconds sets the KmsDataKeyReusePeriodSeconds field's value. -func (s *AwsSqsQueueDetails) SetKmsDataKeyReusePeriodSeconds(v int64) *AwsSqsQueueDetails { - s.KmsDataKeyReusePeriodSeconds = &v +// SetPriority sets the Priority field's value. +func (s *AwsWafRegionalRuleGroupRulesDetails) SetPriority(v int64) *AwsWafRegionalRuleGroupRulesDetails { + s.Priority = &v return s } -// SetKmsMasterKeyId sets the KmsMasterKeyId field's value. -func (s *AwsSqsQueueDetails) SetKmsMasterKeyId(v string) *AwsSqsQueueDetails { - s.KmsMasterKeyId = &v +// SetRuleId sets the RuleId field's value. +func (s *AwsWafRegionalRuleGroupRulesDetails) SetRuleId(v string) *AwsWafRegionalRuleGroupRulesDetails { + s.RuleId = &v return s } -// SetQueueName sets the QueueName field's value. -func (s *AwsSqsQueueDetails) SetQueueName(v string) *AwsSqsQueueDetails { - s.QueueName = &v +// SetType sets the Type field's value. +func (s *AwsWafRegionalRuleGroupRulesDetails) SetType(v string) *AwsWafRegionalRuleGroupRulesDetails { + s.Type = &v return s } -// Provides the details about the compliance status for a patch. -type AwsSsmComplianceSummary struct { +// Provides details about the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, +// RegexMatchSet, GeoMatchSet, and SizeConstraintSet objects that you want to +// add to a rule and, for each object, indicates whether you want to negate +// the settings. +type AwsWafRegionalRulePredicateListDetails struct { _ struct{} `type:"structure"` - // The type of resource for which the compliance was determined. For AwsSsmPatchCompliance, - // ComplianceType is Patch. - ComplianceType *string `type:"string"` - - // For the patches that are compliant, the number that have a severity of CRITICAL. - CompliantCriticalCount *int64 `type:"integer"` - - // For the patches that are compliant, the number that have a severity of HIGH. - CompliantHighCount *int64 `type:"integer"` - - // For the patches that are compliant, the number that have a severity of INFORMATIONAL. - CompliantInformationalCount *int64 `type:"integer"` - - // For the patches that are compliant, the number that have a severity of LOW. - CompliantLowCount *int64 `type:"integer"` + // A unique identifier for a predicate in a rule, such as ByteMatchSetId or + // IPSetId. + DataId *string `type:"string"` - // For the patches that are compliant, the number that have a severity of MEDIUM. - CompliantMediumCount *int64 `type:"integer"` + // Specifies if you want WAF to allow, block, or count requests based on the + // settings in the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, RegexMatchSet, + // GeoMatchSet, or SizeConstraintSet. + Negated *bool `type:"boolean"` - // For the patches that are compliant, the number that have a severity of UNSPECIFIED. - CompliantUnspecifiedCount *int64 `type:"integer"` + // The type of predicate in a rule, such as ByteMatch or IPSet. + Type *string `type:"string"` +} - // The type of execution that was used determine compliance. - ExecutionType *string `type:"string"` +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRegionalRulePredicateListDetails) String() string { + return awsutil.Prettify(s) +} - // For the patch items that are noncompliant, the number of items that have - // a severity of CRITICAL. - NonCompliantCriticalCount *int64 `type:"integer"` +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRegionalRulePredicateListDetails) GoString() string { + return s.String() +} - // For the patches that are noncompliant, the number that have a severity of - // HIGH. - NonCompliantHighCount *int64 `type:"integer"` +// SetDataId sets the DataId field's value. +func (s *AwsWafRegionalRulePredicateListDetails) SetDataId(v string) *AwsWafRegionalRulePredicateListDetails { + s.DataId = &v + return s +} - // For the patches that are noncompliant, the number that have a severity of - // INFORMATIONAL. - NonCompliantInformationalCount *int64 `type:"integer"` +// SetNegated sets the Negated field's value. +func (s *AwsWafRegionalRulePredicateListDetails) SetNegated(v bool) *AwsWafRegionalRulePredicateListDetails { + s.Negated = &v + return s +} - // For the patches that are noncompliant, the number that have a severity of - // LOW. - NonCompliantLowCount *int64 `type:"integer"` +// SetType sets the Type field's value. +func (s *AwsWafRegionalRulePredicateListDetails) SetType(v string) *AwsWafRegionalRulePredicateListDetails { + s.Type = &v + return s +} - // For the patches that are noncompliant, the number that have a severity of - // MEDIUM. - NonCompliantMediumCount *int64 `type:"integer"` +// Provides information about the web access control list (web ACL). The web +// ACL contains the rules that identify the requests that you want to allow, +// block, or count. +type AwsWafRegionalWebAclDetails struct { + _ struct{} `type:"structure"` - // For the patches that are noncompliant, the number that have a severity of - // UNSPECIFIED. - NonCompliantUnspecifiedCount *int64 `type:"integer"` + // The action to perform if none of the rules contained in the web ACL match. + DefaultAction *string `type:"string"` - // The highest severity for the patches. Valid values are as follows: - // - // * CRITICAL - // - // * HIGH - // - // * MEDIUM - // - // * LOW - // - // * INFORMATIONAL - // - // * UNSPECIFIED - OverallSeverity *string `type:"string"` + // A name for the metrics for this web ACL. + MetricName *string `type:"string"` - // The identifier of the patch baseline. The patch baseline lists the patches - // that are approved for installation. - PatchBaselineId *string `type:"string"` + // A descriptive name for the web ACL. + Name *string `type:"string"` - // The identifier of the patch group for which compliance was determined. A - // patch group uses tags to group EC2 instances that should have the same patch - // compliance. - PatchGroup *string `type:"string"` + // An array that contains the action for each rule in a web ACL, the priority + // of the rule, and the ID of the rule. + RulesList []*AwsWafRegionalWebAclRulesListDetails `type:"list"` - // The current patch compliance status. Valid values are as follows: - // - // * COMPLIANT - // - // * NON_COMPLIANT - // - // * UNSPECIFIED_DATA - Status *string `type:"string"` + // The ID of the web ACL. + WebAclId *string `type:"string"` } // String returns the string representation. @@ -33603,7 +36808,7 @@ type AwsSsmComplianceSummary struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsSsmComplianceSummary) String() string { +func (s AwsWafRegionalWebAclDetails) String() string { return awsutil.Prettify(s) } @@ -33612,124 +36817,152 @@ func (s AwsSsmComplianceSummary) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsSsmComplianceSummary) GoString() string { +func (s AwsWafRegionalWebAclDetails) GoString() string { return s.String() } -// SetComplianceType sets the ComplianceType field's value. -func (s *AwsSsmComplianceSummary) SetComplianceType(v string) *AwsSsmComplianceSummary { - s.ComplianceType = &v +// SetDefaultAction sets the DefaultAction field's value. +func (s *AwsWafRegionalWebAclDetails) SetDefaultAction(v string) *AwsWafRegionalWebAclDetails { + s.DefaultAction = &v return s } -// SetCompliantCriticalCount sets the CompliantCriticalCount field's value. -func (s *AwsSsmComplianceSummary) SetCompliantCriticalCount(v int64) *AwsSsmComplianceSummary { - s.CompliantCriticalCount = &v +// SetMetricName sets the MetricName field's value. +func (s *AwsWafRegionalWebAclDetails) SetMetricName(v string) *AwsWafRegionalWebAclDetails { + s.MetricName = &v return s } -// SetCompliantHighCount sets the CompliantHighCount field's value. -func (s *AwsSsmComplianceSummary) SetCompliantHighCount(v int64) *AwsSsmComplianceSummary { - s.CompliantHighCount = &v +// SetName sets the Name field's value. +func (s *AwsWafRegionalWebAclDetails) SetName(v string) *AwsWafRegionalWebAclDetails { + s.Name = &v return s } -// SetCompliantInformationalCount sets the CompliantInformationalCount field's value. -func (s *AwsSsmComplianceSummary) SetCompliantInformationalCount(v int64) *AwsSsmComplianceSummary { - s.CompliantInformationalCount = &v +// SetRulesList sets the RulesList field's value. +func (s *AwsWafRegionalWebAclDetails) SetRulesList(v []*AwsWafRegionalWebAclRulesListDetails) *AwsWafRegionalWebAclDetails { + s.RulesList = v return s } -// SetCompliantLowCount sets the CompliantLowCount field's value. -func (s *AwsSsmComplianceSummary) SetCompliantLowCount(v int64) *AwsSsmComplianceSummary { - s.CompliantLowCount = &v +// SetWebAclId sets the WebAclId field's value. +func (s *AwsWafRegionalWebAclDetails) SetWebAclId(v string) *AwsWafRegionalWebAclDetails { + s.WebAclId = &v return s } -// SetCompliantMediumCount sets the CompliantMediumCount field's value. -func (s *AwsSsmComplianceSummary) SetCompliantMediumCount(v int64) *AwsSsmComplianceSummary { - s.CompliantMediumCount = &v - return s -} +// The action that WAF takes when a web request matches all conditions in the +// rule, such as allow, block, or count the request. +type AwsWafRegionalWebAclRulesListActionDetails struct { + _ struct{} `type:"structure"` -// SetCompliantUnspecifiedCount sets the CompliantUnspecifiedCount field's value. -func (s *AwsSsmComplianceSummary) SetCompliantUnspecifiedCount(v int64) *AwsSsmComplianceSummary { - s.CompliantUnspecifiedCount = &v - return s + // For actions that are associated with a rule, the action that WAF takes when + // a web request matches all conditions in a rule. + Type *string `type:"string"` } -// SetExecutionType sets the ExecutionType field's value. -func (s *AwsSsmComplianceSummary) SetExecutionType(v string) *AwsSsmComplianceSummary { - s.ExecutionType = &v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRegionalWebAclRulesListActionDetails) String() string { + return awsutil.Prettify(s) } -// SetNonCompliantCriticalCount sets the NonCompliantCriticalCount field's value. -func (s *AwsSsmComplianceSummary) SetNonCompliantCriticalCount(v int64) *AwsSsmComplianceSummary { - s.NonCompliantCriticalCount = &v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRegionalWebAclRulesListActionDetails) GoString() string { + return s.String() } -// SetNonCompliantHighCount sets the NonCompliantHighCount field's value. -func (s *AwsSsmComplianceSummary) SetNonCompliantHighCount(v int64) *AwsSsmComplianceSummary { - s.NonCompliantHighCount = &v +// SetType sets the Type field's value. +func (s *AwsWafRegionalWebAclRulesListActionDetails) SetType(v string) *AwsWafRegionalWebAclRulesListActionDetails { + s.Type = &v return s } -// SetNonCompliantInformationalCount sets the NonCompliantInformationalCount field's value. -func (s *AwsSsmComplianceSummary) SetNonCompliantInformationalCount(v int64) *AwsSsmComplianceSummary { - s.NonCompliantInformationalCount = &v - return s +// A combination of ByteMatchSet, IPSet, and/or SqlInjectionMatchSet objects +// that identify the web requests that you want to allow, block, or count. +type AwsWafRegionalWebAclRulesListDetails struct { + _ struct{} `type:"structure"` + + // The action that WAF takes when a web request matches all conditions in the + // rule, such as allow, block, or count the request. + Action *AwsWafRegionalWebAclRulesListActionDetails `type:"structure"` + + // Overrides the rule evaluation result in the rule group. + OverrideAction *AwsWafRegionalWebAclRulesListOverrideActionDetails `type:"structure"` + + // The order in which WAF evaluates the rules in a web ACL. + Priority *int64 `type:"integer"` + + // The ID of an WAF Regional rule to associate with a web ACL. + RuleId *string `type:"string"` + + // For actions that are associated with a rule, the action that WAF takes when + // a web request matches all conditions in a rule. + Type *string `type:"string"` } -// SetNonCompliantLowCount sets the NonCompliantLowCount field's value. -func (s *AwsSsmComplianceSummary) SetNonCompliantLowCount(v int64) *AwsSsmComplianceSummary { - s.NonCompliantLowCount = &v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRegionalWebAclRulesListDetails) String() string { + return awsutil.Prettify(s) } -// SetNonCompliantMediumCount sets the NonCompliantMediumCount field's value. -func (s *AwsSsmComplianceSummary) SetNonCompliantMediumCount(v int64) *AwsSsmComplianceSummary { - s.NonCompliantMediumCount = &v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRegionalWebAclRulesListDetails) GoString() string { + return s.String() } -// SetNonCompliantUnspecifiedCount sets the NonCompliantUnspecifiedCount field's value. -func (s *AwsSsmComplianceSummary) SetNonCompliantUnspecifiedCount(v int64) *AwsSsmComplianceSummary { - s.NonCompliantUnspecifiedCount = &v +// SetAction sets the Action field's value. +func (s *AwsWafRegionalWebAclRulesListDetails) SetAction(v *AwsWafRegionalWebAclRulesListActionDetails) *AwsWafRegionalWebAclRulesListDetails { + s.Action = v return s } -// SetOverallSeverity sets the OverallSeverity field's value. -func (s *AwsSsmComplianceSummary) SetOverallSeverity(v string) *AwsSsmComplianceSummary { - s.OverallSeverity = &v +// SetOverrideAction sets the OverrideAction field's value. +func (s *AwsWafRegionalWebAclRulesListDetails) SetOverrideAction(v *AwsWafRegionalWebAclRulesListOverrideActionDetails) *AwsWafRegionalWebAclRulesListDetails { + s.OverrideAction = v return s } -// SetPatchBaselineId sets the PatchBaselineId field's value. -func (s *AwsSsmComplianceSummary) SetPatchBaselineId(v string) *AwsSsmComplianceSummary { - s.PatchBaselineId = &v +// SetPriority sets the Priority field's value. +func (s *AwsWafRegionalWebAclRulesListDetails) SetPriority(v int64) *AwsWafRegionalWebAclRulesListDetails { + s.Priority = &v return s } -// SetPatchGroup sets the PatchGroup field's value. -func (s *AwsSsmComplianceSummary) SetPatchGroup(v string) *AwsSsmComplianceSummary { - s.PatchGroup = &v +// SetRuleId sets the RuleId field's value. +func (s *AwsWafRegionalWebAclRulesListDetails) SetRuleId(v string) *AwsWafRegionalWebAclRulesListDetails { + s.RuleId = &v return s } -// SetStatus sets the Status field's value. -func (s *AwsSsmComplianceSummary) SetStatus(v string) *AwsSsmComplianceSummary { - s.Status = &v +// SetType sets the Type field's value. +func (s *AwsWafRegionalWebAclRulesListDetails) SetType(v string) *AwsWafRegionalWebAclRulesListDetails { + s.Type = &v return s } -// Provides details about the compliance for a patch. -type AwsSsmPatch struct { +// Provides details about the action to use in the place of the action that +// results from the rule group evaluation. +type AwsWafRegionalWebAclRulesListOverrideActionDetails struct { _ struct{} `type:"structure"` - // The compliance status details for the patch. - ComplianceSummary *AwsSsmComplianceSummary `type:"structure"` + // Overrides the rule evaluation result in the rule group. + Type *string `type:"string"` } // String returns the string representation. @@ -33737,7 +36970,7 @@ type AwsSsmPatch struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsSsmPatch) String() string { +func (s AwsWafRegionalWebAclRulesListOverrideActionDetails) String() string { return awsutil.Prettify(s) } @@ -33746,23 +36979,34 @@ func (s AwsSsmPatch) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsSsmPatch) GoString() string { +func (s AwsWafRegionalWebAclRulesListOverrideActionDetails) GoString() string { return s.String() } -// SetComplianceSummary sets the ComplianceSummary field's value. -func (s *AwsSsmPatch) SetComplianceSummary(v *AwsSsmComplianceSummary) *AwsSsmPatch { - s.ComplianceSummary = v +// SetType sets the Type field's value. +func (s *AwsWafRegionalWebAclRulesListOverrideActionDetails) SetType(v string) *AwsWafRegionalWebAclRulesListOverrideActionDetails { + s.Type = &v return s } -// Provides information about the state of a patch on an instance based on the -// patch baseline that was used to patch the instance. -type AwsSsmPatchComplianceDetails struct { +// Provides information about a WAF rule. This rule specifies the web requests +// that you want to allow, block, or count. +type AwsWafRuleDetails struct { _ struct{} `type:"structure"` - // Information about the status of a patch. - Patch *AwsSsmPatch `type:"structure"` + // The name of the metrics for this rule. + MetricName *string `type:"string"` + + // A descriptive name for the rule. + Name *string `type:"string"` + + // Specifies the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, RegexMatchSet, + // GeoMatchSet, and SizeConstraintSet objects that you want to add to a rule + // and, for each object, indicates whether you want to negate the settings. + PredicateList []*AwsWafRulePredicateListDetails `type:"list"` + + // The ID of the WAF rule. + RuleId *string `type:"string"` } // String returns the string representation. @@ -33770,7 +37014,7 @@ type AwsSsmPatchComplianceDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsSsmPatchComplianceDetails) String() string { +func (s AwsWafRuleDetails) String() string { return awsutil.Prettify(s) } @@ -33779,44 +37023,51 @@ func (s AwsSsmPatchComplianceDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsSsmPatchComplianceDetails) GoString() string { +func (s AwsWafRuleDetails) GoString() string { return s.String() } -// SetPatch sets the Patch field's value. -func (s *AwsSsmPatchComplianceDetails) SetPatch(v *AwsSsmPatch) *AwsSsmPatchComplianceDetails { - s.Patch = v +// SetMetricName sets the MetricName field's value. +func (s *AwsWafRuleDetails) SetMetricName(v string) *AwsWafRuleDetails { + s.MetricName = &v return s } -// Details about a rate-based rule for global resources. A rate-based rule provides -// settings to indicate when to allow, block, or count a request. Rate-based -// rules include the number of requests that arrive over a specified period -// of time. -type AwsWafRateBasedRuleDetails struct { - _ struct{} `type:"structure"` +// SetName sets the Name field's value. +func (s *AwsWafRuleDetails) SetName(v string) *AwsWafRuleDetails { + s.Name = &v + return s +} - // The predicates to include in the rate-based rule. - MatchPredicates []*AwsWafRateBasedRuleMatchPredicate `type:"list"` +// SetPredicateList sets the PredicateList field's value. +func (s *AwsWafRuleDetails) SetPredicateList(v []*AwsWafRulePredicateListDetails) *AwsWafRuleDetails { + s.PredicateList = v + return s +} - // The name of the metrics for the rate-based rule. +// SetRuleId sets the RuleId field's value. +func (s *AwsWafRuleDetails) SetRuleId(v string) *AwsWafRuleDetails { + s.RuleId = &v + return s +} + +// Provides information about an WAF rule group. A rule group is a collection +// of rules for inspecting and controlling web requests. +type AwsWafRuleGroupDetails struct { + _ struct{} `type:"structure"` + + // The name of the metrics for this rule group. MetricName *string `type:"string"` - // The name of the rate-based rule. + // The name of the rule group. Name *string `type:"string"` - // The field that WAF uses to determine whether requests are likely arriving - // from single source and are subject to rate monitoring. - RateKey *string `type:"string"` - - // The maximum number of requests that have an identical value for the field - // specified in RateKey that are allowed within a five-minute period. If the - // number of requests exceeds RateLimit and the other predicates specified in - // the rule are met, WAF triggers the action for the rule. - RateLimit *int64 `type:"long"` + // The ID of the rule group. + RuleGroupId *string `type:"string"` - // The unique identifier for the rate-based rule. - RuleId *string `type:"string"` + // Provides information about the rules attached to the rule group. These rules + // identify the web requests that you want to allow, block, or count. + Rules []*AwsWafRuleGroupRulesDetails `type:"list"` } // String returns the string representation. @@ -33824,7 +37075,7 @@ type AwsWafRateBasedRuleDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRateBasedRuleDetails) String() string { +func (s AwsWafRuleGroupDetails) String() string { return awsutil.Prettify(s) } @@ -33833,76 +37084,41 @@ func (s AwsWafRateBasedRuleDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRateBasedRuleDetails) GoString() string { +func (s AwsWafRuleGroupDetails) GoString() string { return s.String() } -// SetMatchPredicates sets the MatchPredicates field's value. -func (s *AwsWafRateBasedRuleDetails) SetMatchPredicates(v []*AwsWafRateBasedRuleMatchPredicate) *AwsWafRateBasedRuleDetails { - s.MatchPredicates = v - return s -} - // SetMetricName sets the MetricName field's value. -func (s *AwsWafRateBasedRuleDetails) SetMetricName(v string) *AwsWafRateBasedRuleDetails { +func (s *AwsWafRuleGroupDetails) SetMetricName(v string) *AwsWafRuleGroupDetails { s.MetricName = &v return s } // SetName sets the Name field's value. -func (s *AwsWafRateBasedRuleDetails) SetName(v string) *AwsWafRateBasedRuleDetails { +func (s *AwsWafRuleGroupDetails) SetName(v string) *AwsWafRuleGroupDetails { s.Name = &v return s } -// SetRateKey sets the RateKey field's value. -func (s *AwsWafRateBasedRuleDetails) SetRateKey(v string) *AwsWafRateBasedRuleDetails { - s.RateKey = &v - return s -} - -// SetRateLimit sets the RateLimit field's value. -func (s *AwsWafRateBasedRuleDetails) SetRateLimit(v int64) *AwsWafRateBasedRuleDetails { - s.RateLimit = &v +// SetRuleGroupId sets the RuleGroupId field's value. +func (s *AwsWafRuleGroupDetails) SetRuleGroupId(v string) *AwsWafRuleGroupDetails { + s.RuleGroupId = &v return s } -// SetRuleId sets the RuleId field's value. -func (s *AwsWafRateBasedRuleDetails) SetRuleId(v string) *AwsWafRateBasedRuleDetails { - s.RuleId = &v +// SetRules sets the Rules field's value. +func (s *AwsWafRuleGroupDetails) SetRules(v []*AwsWafRuleGroupRulesDetails) *AwsWafRuleGroupDetails { + s.Rules = v return s } -// A match predicate. A predicate might look for characteristics such as specific -// IP addresses, geographic locations, or sizes. -type AwsWafRateBasedRuleMatchPredicate struct { +// Provides information about what action WAF should take on a web request when +// it matches the criteria defined in the rule. +type AwsWafRuleGroupRulesActionDetails struct { _ struct{} `type:"structure"` - // The unique identifier for the predicate. - DataId *string `type:"string"` - - // If set to true, then the rule actions are performed on requests that match - // the predicate settings. - // - // If set to false, then the rule actions are performed on all requests except - // those that match the predicate settings. - Negated *bool `type:"boolean"` - - // The type of predicate. Valid values are as follows: - // - // * ByteMatch - // - // * GeoMatch - // - // * IPMatch - // - // * RegexMatch - // - // * SizeConstraint - // - // * SqlInjectionMatch - // - // * XssMatch + // The action that WAF should take on a web request when it matches the rule's + // statement. Type *string `type:"string"` } @@ -33911,7 +37127,7 @@ type AwsWafRateBasedRuleMatchPredicate struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRateBasedRuleMatchPredicate) String() string { +func (s AwsWafRuleGroupRulesActionDetails) String() string { return awsutil.Prettify(s) } @@ -33920,56 +37136,34 @@ func (s AwsWafRateBasedRuleMatchPredicate) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRateBasedRuleMatchPredicate) GoString() string { +func (s AwsWafRuleGroupRulesActionDetails) GoString() string { return s.String() } -// SetDataId sets the DataId field's value. -func (s *AwsWafRateBasedRuleMatchPredicate) SetDataId(v string) *AwsWafRateBasedRuleMatchPredicate { - s.DataId = &v - return s -} - -// SetNegated sets the Negated field's value. -func (s *AwsWafRateBasedRuleMatchPredicate) SetNegated(v bool) *AwsWafRateBasedRuleMatchPredicate { - s.Negated = &v - return s -} - // SetType sets the Type field's value. -func (s *AwsWafRateBasedRuleMatchPredicate) SetType(v string) *AwsWafRateBasedRuleMatchPredicate { +func (s *AwsWafRuleGroupRulesActionDetails) SetType(v string) *AwsWafRuleGroupRulesActionDetails { s.Type = &v return s } -// contains details about a rate-based rule for Regional resources. A rate-based -// rule provides settings to indicate when to allow, block, or count a request. -// Rate-based rules include the number of requests that arrive over a specified -// period of time. -type AwsWafRegionalRateBasedRuleDetails struct { +// Provides information about the rules attached to the rule group. These rules +// identify the web requests that you want to allow, block, or count. +type AwsWafRuleGroupRulesDetails struct { _ struct{} `type:"structure"` - // The predicates to include in the rate-based rule. - MatchPredicates []*AwsWafRegionalRateBasedRuleMatchPredicate `type:"list"` - - // The name of the metrics for the rate-based rule. - MetricName *string `type:"string"` - - // The name of the rate-based rule. - Name *string `type:"string"` - - // The field that WAF uses to determine whether requests are likely arriving - // from single source and are subject to rate monitoring. - RateKey *string `type:"string"` + // Provides information about what action WAF should take on a web request when + // it matches the criteria defined in the rule. + Action *AwsWafRuleGroupRulesActionDetails `type:"structure"` - // The maximum number of requests that have an identical value for the field - // specified in RateKey that are allowed within a five-minute period. If the - // number of requests exceeds RateLimit and the other predicates specified in - // the rule are met, WAF triggers the action for the rule. - RateLimit *int64 `type:"long"` + // If you define more than one rule in a web ACL, WAF evaluates each request + // against the rules in order based on the value of Priority. + Priority *int64 `type:"integer"` - // The unique identifier for the rate-based rule. + // The rule ID for a rule. RuleId *string `type:"string"` + + // The type of rule. + Type *string `type:"string"` } // String returns the string representation. @@ -33977,7 +37171,7 @@ type AwsWafRegionalRateBasedRuleDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRegionalRateBasedRuleDetails) String() string { +func (s AwsWafRuleGroupRulesDetails) String() string { return awsutil.Prettify(s) } @@ -33986,76 +37180,51 @@ func (s AwsWafRegionalRateBasedRuleDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRegionalRateBasedRuleDetails) GoString() string { +func (s AwsWafRuleGroupRulesDetails) GoString() string { return s.String() } -// SetMatchPredicates sets the MatchPredicates field's value. -func (s *AwsWafRegionalRateBasedRuleDetails) SetMatchPredicates(v []*AwsWafRegionalRateBasedRuleMatchPredicate) *AwsWafRegionalRateBasedRuleDetails { - s.MatchPredicates = v - return s -} - -// SetMetricName sets the MetricName field's value. -func (s *AwsWafRegionalRateBasedRuleDetails) SetMetricName(v string) *AwsWafRegionalRateBasedRuleDetails { - s.MetricName = &v - return s -} - -// SetName sets the Name field's value. -func (s *AwsWafRegionalRateBasedRuleDetails) SetName(v string) *AwsWafRegionalRateBasedRuleDetails { - s.Name = &v +// SetAction sets the Action field's value. +func (s *AwsWafRuleGroupRulesDetails) SetAction(v *AwsWafRuleGroupRulesActionDetails) *AwsWafRuleGroupRulesDetails { + s.Action = v return s } -// SetRateKey sets the RateKey field's value. -func (s *AwsWafRegionalRateBasedRuleDetails) SetRateKey(v string) *AwsWafRegionalRateBasedRuleDetails { - s.RateKey = &v +// SetPriority sets the Priority field's value. +func (s *AwsWafRuleGroupRulesDetails) SetPriority(v int64) *AwsWafRuleGroupRulesDetails { + s.Priority = &v return s } -// SetRateLimit sets the RateLimit field's value. -func (s *AwsWafRegionalRateBasedRuleDetails) SetRateLimit(v int64) *AwsWafRegionalRateBasedRuleDetails { - s.RateLimit = &v +// SetRuleId sets the RuleId field's value. +func (s *AwsWafRuleGroupRulesDetails) SetRuleId(v string) *AwsWafRuleGroupRulesDetails { + s.RuleId = &v return s } -// SetRuleId sets the RuleId field's value. -func (s *AwsWafRegionalRateBasedRuleDetails) SetRuleId(v string) *AwsWafRegionalRateBasedRuleDetails { - s.RuleId = &v +// SetType sets the Type field's value. +func (s *AwsWafRuleGroupRulesDetails) SetType(v string) *AwsWafRuleGroupRulesDetails { + s.Type = &v return s } -// Details for a match predicate. A predicate might look for characteristics -// such as specific IP addresses, geographic locations, or sizes. -type AwsWafRegionalRateBasedRuleMatchPredicate struct { +// Provides details about the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, +// RegexMatchSet, GeoMatchSet, and SizeConstraintSet objects that you want to +// add to a rule and, for each object, indicates whether you want to negate +// the settings. +type AwsWafRulePredicateListDetails struct { _ struct{} `type:"structure"` - // The unique identifier for the predicate. + // A unique identifier for a predicate in a rule, such as ByteMatchSetId or + // IPSetId. DataId *string `type:"string"` - // If set to true, then the rule actions are performed on requests that match - // the predicate settings. - // - // If set to false, then the rule actions are performed on all requests except - // those that match the predicate settings. + // Specifies if you want WAF to allow, block, or count requests based on the + // settings in the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, RegexMatchSet, + // GeoMatchSet, or SizeConstraintSet. Negated *bool `type:"boolean"` - // The type of predicate. Valid values are as follows: - // - // * ByteMatch - // - // * GeoMatch - // - // * IPMatch - // - // * RegexMatch - // - // * SizeConstraint - // - // * SqlInjectionMatch - // - // * XssMatch + // The type of predicate in a rule, such as ByteMatch or IPSet. Type *string `type:"string"` } @@ -34064,7 +37233,7 @@ type AwsWafRegionalRateBasedRuleMatchPredicate struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRegionalRateBasedRuleMatchPredicate) String() string { +func (s AwsWafRulePredicateListDetails) String() string { return awsutil.Prettify(s) } @@ -34073,46 +37242,45 @@ func (s AwsWafRegionalRateBasedRuleMatchPredicate) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRegionalRateBasedRuleMatchPredicate) GoString() string { +func (s AwsWafRulePredicateListDetails) GoString() string { return s.String() } // SetDataId sets the DataId field's value. -func (s *AwsWafRegionalRateBasedRuleMatchPredicate) SetDataId(v string) *AwsWafRegionalRateBasedRuleMatchPredicate { +func (s *AwsWafRulePredicateListDetails) SetDataId(v string) *AwsWafRulePredicateListDetails { s.DataId = &v return s } // SetNegated sets the Negated field's value. -func (s *AwsWafRegionalRateBasedRuleMatchPredicate) SetNegated(v bool) *AwsWafRegionalRateBasedRuleMatchPredicate { +func (s *AwsWafRulePredicateListDetails) SetNegated(v bool) *AwsWafRulePredicateListDetails { s.Negated = &v return s } // SetType sets the Type field's value. -func (s *AwsWafRegionalRateBasedRuleMatchPredicate) SetType(v string) *AwsWafRegionalRateBasedRuleMatchPredicate { +func (s *AwsWafRulePredicateListDetails) SetType(v string) *AwsWafRulePredicateListDetails { s.Type = &v return s } -// Provides information about an WAF Regional rule. This rule identifies the -// web requests that you want to allow, block, or count. -type AwsWafRegionalRuleDetails struct { +// Provides information about an WAF web access control list (web ACL). +type AwsWafWebAclDetails struct { _ struct{} `type:"structure"` - // A name for the metrics for the rule. - MetricName *string `type:"string"` + // The action to perform if none of the rules contained in the web ACL match. + DefaultAction *string `type:"string"` - // A descriptive name for the rule. + // A friendly name or description of the web ACL. You can't change the name + // of a web ACL after you create it. Name *string `type:"string"` - // Specifies the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, RegexMatchSet, - // GeoMatchSet, and SizeConstraintSet objects that you want to add to a rule - // and, for each object, indicates whether you want to negate the settings. - PredicateList []*AwsWafRegionalRulePredicateListDetails `type:"list"` + // An array that contains the action for each rule in a web ACL, the priority + // of the rule, and the ID of the rule. + Rules []*AwsWafWebAclRule `type:"list"` - // The ID of the rule. - RuleId *string `type:"string"` + // A unique identifier for a web ACL. + WebAclId *string `type:"string"` } // String returns the string representation. @@ -34120,7 +37288,7 @@ type AwsWafRegionalRuleDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRegionalRuleDetails) String() string { +func (s AwsWafWebAclDetails) String() string { return awsutil.Prettify(s) } @@ -34129,51 +37297,76 @@ func (s AwsWafRegionalRuleDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRegionalRuleDetails) GoString() string { +func (s AwsWafWebAclDetails) GoString() string { return s.String() } -// SetMetricName sets the MetricName field's value. -func (s *AwsWafRegionalRuleDetails) SetMetricName(v string) *AwsWafRegionalRuleDetails { - s.MetricName = &v +// SetDefaultAction sets the DefaultAction field's value. +func (s *AwsWafWebAclDetails) SetDefaultAction(v string) *AwsWafWebAclDetails { + s.DefaultAction = &v return s } // SetName sets the Name field's value. -func (s *AwsWafRegionalRuleDetails) SetName(v string) *AwsWafRegionalRuleDetails { +func (s *AwsWafWebAclDetails) SetName(v string) *AwsWafWebAclDetails { s.Name = &v return s } -// SetPredicateList sets the PredicateList field's value. -func (s *AwsWafRegionalRuleDetails) SetPredicateList(v []*AwsWafRegionalRulePredicateListDetails) *AwsWafRegionalRuleDetails { - s.PredicateList = v +// SetRules sets the Rules field's value. +func (s *AwsWafWebAclDetails) SetRules(v []*AwsWafWebAclRule) *AwsWafWebAclDetails { + s.Rules = v return s } -// SetRuleId sets the RuleId field's value. -func (s *AwsWafRegionalRuleDetails) SetRuleId(v string) *AwsWafRegionalRuleDetails { - s.RuleId = &v +// SetWebAclId sets the WebAclId field's value. +func (s *AwsWafWebAclDetails) SetWebAclId(v string) *AwsWafWebAclDetails { + s.WebAclId = &v return s } -// Provides information about an WAF Regional rule group. The rule group is -// a collection of rules for inspecting and controlling web requests. -type AwsWafRegionalRuleGroupDetails struct { +// Details for a rule in an WAF web ACL. +type AwsWafWebAclRule struct { _ struct{} `type:"structure"` - // A name for the metrics for this rule group. - MetricName *string `type:"string"` + // Specifies the action that CloudFront or WAF takes when a web request matches + // the conditions in the rule. + Action *WafAction `type:"structure"` - // The descriptive name of the rule group. - Name *string `type:"string"` + // Rules to exclude from a rule group. + ExcludedRules []*WafExcludedRule `type:"list"` - // The ID of the rule group. - RuleGroupId *string `type:"string"` + // Use the OverrideAction to test your RuleGroup. + // + // Any rule in a RuleGroup can potentially block a request. If you set the OverrideAction + // to None, the RuleGroup blocks a request if any individual rule in the RuleGroup + // matches the request and is configured to block that request. + // + // However, if you first want to test the RuleGroup, set the OverrideAction + // to Count. The RuleGroup then overrides any block action specified by individual + // rules contained within the group. Instead of blocking matching requests, + // those requests are counted. + // + // ActivatedRule|OverrideAction applies only when updating or adding a RuleGroup + // to a web ACL. In this case you do not use ActivatedRule Action. For all other + // update requests, ActivatedRule Action is used instead of ActivatedRule OverrideAction. + OverrideAction *WafOverrideAction `type:"structure"` - // Provides information about the rule statements used to identify the web requests - // that you want to allow, block, or count. - Rules []*AwsWafRegionalRuleGroupRulesDetails `type:"list"` + // Specifies the order in which the rules in a web ACL are evaluated. Rules + // with a lower value for Priority are evaluated before rules with a higher + // value. The value must be a unique integer. If you add multiple rules to a + // web ACL, the values do not need to be consecutive. + Priority *int64 `type:"integer"` + + // The identifier for a rule. + RuleId *string `type:"string"` + + // The rule type. + // + // Valid values: REGULAR | RATE_BASED | GROUP + // + // The default is REGULAR. + Type *string `type:"string"` } // String returns the string representation. @@ -34181,7 +37374,7 @@ type AwsWafRegionalRuleGroupDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRegionalRuleGroupDetails) String() string { +func (s AwsWafWebAclRule) String() string { return awsutil.Prettify(s) } @@ -34190,43 +37383,91 @@ func (s AwsWafRegionalRuleGroupDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRegionalRuleGroupDetails) GoString() string { +func (s AwsWafWebAclRule) GoString() string { return s.String() } -// SetMetricName sets the MetricName field's value. -func (s *AwsWafRegionalRuleGroupDetails) SetMetricName(v string) *AwsWafRegionalRuleGroupDetails { - s.MetricName = &v +// SetAction sets the Action field's value. +func (s *AwsWafWebAclRule) SetAction(v *WafAction) *AwsWafWebAclRule { + s.Action = v return s } -// SetName sets the Name field's value. -func (s *AwsWafRegionalRuleGroupDetails) SetName(v string) *AwsWafRegionalRuleGroupDetails { - s.Name = &v +// SetExcludedRules sets the ExcludedRules field's value. +func (s *AwsWafWebAclRule) SetExcludedRules(v []*WafExcludedRule) *AwsWafWebAclRule { + s.ExcludedRules = v return s } -// SetRuleGroupId sets the RuleGroupId field's value. -func (s *AwsWafRegionalRuleGroupDetails) SetRuleGroupId(v string) *AwsWafRegionalRuleGroupDetails { - s.RuleGroupId = &v +// SetOverrideAction sets the OverrideAction field's value. +func (s *AwsWafWebAclRule) SetOverrideAction(v *WafOverrideAction) *AwsWafWebAclRule { + s.OverrideAction = v return s } -// SetRules sets the Rules field's value. -func (s *AwsWafRegionalRuleGroupDetails) SetRules(v []*AwsWafRegionalRuleGroupRulesDetails) *AwsWafRegionalRuleGroupDetails { - s.Rules = v +// SetPriority sets the Priority field's value. +func (s *AwsWafWebAclRule) SetPriority(v int64) *AwsWafWebAclRule { + s.Priority = &v return s } -// Describes the action that WAF should take on a web request when it matches -// the criteria defined in the rule. -type AwsWafRegionalRuleGroupRulesActionDetails struct { +// SetRuleId sets the RuleId field's value. +func (s *AwsWafWebAclRule) SetRuleId(v string) *AwsWafWebAclRule { + s.RuleId = &v + return s +} + +// SetType sets the Type field's value. +func (s *AwsWafWebAclRule) SetType(v string) *AwsWafWebAclRule { + s.Type = &v + return s +} + +// Specifies that WAF should allow the request and optionally defines additional +// custom handling for the request. +type AwsWafv2ActionAllowDetails struct { _ struct{} `type:"structure"` - // Specifies the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, RegexMatchSet, - // GeoMatchSet, and SizeConstraintSet objects that you want to add to a rule - // and, for each object, indicates whether you want to negate the settings. - Type *string `type:"string"` + // Defines custom handling for the web request. For information about customizing + // web requests and responses, see Customizing web requests and responses in + // WAF (https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html) + // in the WAF Developer Guide.. + CustomRequestHandling *AwsWafv2CustomRequestHandlingDetails `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafv2ActionAllowDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafv2ActionAllowDetails) GoString() string { + return s.String() +} + +// SetCustomRequestHandling sets the CustomRequestHandling field's value. +func (s *AwsWafv2ActionAllowDetails) SetCustomRequestHandling(v *AwsWafv2CustomRequestHandlingDetails) *AwsWafv2ActionAllowDetails { + s.CustomRequestHandling = v + return s +} + +// Specifies that WAF should block the request and optionally defines additional +// custom handling for the response to the web request. +type AwsWafv2ActionBlockDetails struct { + _ struct{} `type:"structure"` + + // Defines a custom response for the web request. For information, see Customizing + // web requests and responses in WAF (https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html) + // in the WAF Developer Guide.. + CustomResponse *AwsWafv2CustomResponseDetails `type:"structure"` } // String returns the string representation. @@ -34234,7 +37475,7 @@ type AwsWafRegionalRuleGroupRulesActionDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRegionalRuleGroupRulesActionDetails) String() string { +func (s AwsWafv2ActionBlockDetails) String() string { return awsutil.Prettify(s) } @@ -34243,33 +37484,25 @@ func (s AwsWafRegionalRuleGroupRulesActionDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRegionalRuleGroupRulesActionDetails) GoString() string { +func (s AwsWafv2ActionBlockDetails) GoString() string { return s.String() } -// SetType sets the Type field's value. -func (s *AwsWafRegionalRuleGroupRulesActionDetails) SetType(v string) *AwsWafRegionalRuleGroupRulesActionDetails { - s.Type = &v +// SetCustomResponse sets the CustomResponse field's value. +func (s *AwsWafv2ActionBlockDetails) SetCustomResponse(v *AwsWafv2CustomResponseDetails) *AwsWafv2ActionBlockDetails { + s.CustomResponse = v return s } -// Provides information about the rules attached to a rule group -type AwsWafRegionalRuleGroupRulesDetails struct { +// A custom header for custom request and response handling. +type AwsWafv2CustomHttpHeader struct { _ struct{} `type:"structure"` - // The action that WAF should take on a web request when it matches the criteria - // defined in the rule. - Action *AwsWafRegionalRuleGroupRulesActionDetails `type:"structure"` - - // If you define more than one rule in a web ACL, WAF evaluates each request - // against the rules in order based on the value of Priority. - Priority *int64 `type:"integer"` - - // The ID for a rule. - RuleId *string `type:"string"` + // The name of the custom header. + Name *string `type:"string"` - // The type of rule in the rule group. - Type *string `type:"string"` + // The value of the custom header. + Value *string `type:"string"` } // String returns the string representation. @@ -34277,7 +37510,7 @@ type AwsWafRegionalRuleGroupRulesDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRegionalRuleGroupRulesDetails) String() string { +func (s AwsWafv2CustomHttpHeader) String() string { return awsutil.Prettify(s) } @@ -34286,52 +37519,73 @@ func (s AwsWafRegionalRuleGroupRulesDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRegionalRuleGroupRulesDetails) GoString() string { +func (s AwsWafv2CustomHttpHeader) GoString() string { return s.String() } -// SetAction sets the Action field's value. -func (s *AwsWafRegionalRuleGroupRulesDetails) SetAction(v *AwsWafRegionalRuleGroupRulesActionDetails) *AwsWafRegionalRuleGroupRulesDetails { - s.Action = v +// SetName sets the Name field's value. +func (s *AwsWafv2CustomHttpHeader) SetName(v string) *AwsWafv2CustomHttpHeader { + s.Name = &v return s } -// SetPriority sets the Priority field's value. -func (s *AwsWafRegionalRuleGroupRulesDetails) SetPriority(v int64) *AwsWafRegionalRuleGroupRulesDetails { - s.Priority = &v +// SetValue sets the Value field's value. +func (s *AwsWafv2CustomHttpHeader) SetValue(v string) *AwsWafv2CustomHttpHeader { + s.Value = &v return s } -// SetRuleId sets the RuleId field's value. -func (s *AwsWafRegionalRuleGroupRulesDetails) SetRuleId(v string) *AwsWafRegionalRuleGroupRulesDetails { - s.RuleId = &v - return s +// Custom request handling behavior that inserts custom headers into a web request. +// WAF uses custom request handling when the rule action doesn't block the request. +type AwsWafv2CustomRequestHandlingDetails struct { + _ struct{} `type:"structure"` + + // The HTTP headers to insert into the request. + InsertHeaders []*AwsWafv2CustomHttpHeader `type:"list"` } -// SetType sets the Type field's value. -func (s *AwsWafRegionalRuleGroupRulesDetails) SetType(v string) *AwsWafRegionalRuleGroupRulesDetails { - s.Type = &v +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafv2CustomRequestHandlingDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafv2CustomRequestHandlingDetails) GoString() string { + return s.String() +} + +// SetInsertHeaders sets the InsertHeaders field's value. +func (s *AwsWafv2CustomRequestHandlingDetails) SetInsertHeaders(v []*AwsWafv2CustomHttpHeader) *AwsWafv2CustomRequestHandlingDetails { + s.InsertHeaders = v return s } -// Provides details about the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, -// RegexMatchSet, GeoMatchSet, and SizeConstraintSet objects that you want to -// add to a rule and, for each object, indicates whether you want to negate -// the settings. -type AwsWafRegionalRulePredicateListDetails struct { +// A custom response to send to the client. You can define a custom response +// for rule actions and default web ACL actions that are set to block. +type AwsWafv2CustomResponseDetails struct { _ struct{} `type:"structure"` - // A unique identifier for a predicate in a rule, such as ByteMatchSetId or - // IPSetId. - DataId *string `type:"string"` + // References the response body that you want WAF to return to the web request + // client. You can define a custom response for a rule action or a default web + // ACL action that is set to block. + CustomResponseBodyKey *string `type:"string"` - // Specifies if you want WAF to allow, block, or count requests based on the - // settings in the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, RegexMatchSet, - // GeoMatchSet, or SizeConstraintSet. - Negated *bool `type:"boolean"` + // The HTTP status code to return to the client. For a list of status codes + // that you can use in your custom responses, see Supported status codes for + // custom response (https://docs.aws.amazon.com/waf/latest/developerguide/customizing-the-response-status-codes.html) + // in the WAF Developer Guide. + ResponseCode *int64 `type:"integer"` - // The type of predicate in a rule, such as ByteMatch or IPSet. - Type *string `type:"string"` + // The HTTP headers to use in the response. + ResponseHeaders []*AwsWafv2CustomHttpHeader `type:"list"` } // String returns the string representation. @@ -34339,7 +37593,7 @@ type AwsWafRegionalRulePredicateListDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRegionalRulePredicateListDetails) String() string { +func (s AwsWafv2CustomResponseDetails) String() string { return awsutil.Prettify(s) } @@ -34348,49 +37602,62 @@ func (s AwsWafRegionalRulePredicateListDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRegionalRulePredicateListDetails) GoString() string { +func (s AwsWafv2CustomResponseDetails) GoString() string { return s.String() } -// SetDataId sets the DataId field's value. -func (s *AwsWafRegionalRulePredicateListDetails) SetDataId(v string) *AwsWafRegionalRulePredicateListDetails { - s.DataId = &v +// SetCustomResponseBodyKey sets the CustomResponseBodyKey field's value. +func (s *AwsWafv2CustomResponseDetails) SetCustomResponseBodyKey(v string) *AwsWafv2CustomResponseDetails { + s.CustomResponseBodyKey = &v return s } -// SetNegated sets the Negated field's value. -func (s *AwsWafRegionalRulePredicateListDetails) SetNegated(v bool) *AwsWafRegionalRulePredicateListDetails { - s.Negated = &v +// SetResponseCode sets the ResponseCode field's value. +func (s *AwsWafv2CustomResponseDetails) SetResponseCode(v int64) *AwsWafv2CustomResponseDetails { + s.ResponseCode = &v return s } -// SetType sets the Type field's value. -func (s *AwsWafRegionalRulePredicateListDetails) SetType(v string) *AwsWafRegionalRulePredicateListDetails { - s.Type = &v +// SetResponseHeaders sets the ResponseHeaders field's value. +func (s *AwsWafv2CustomResponseDetails) SetResponseHeaders(v []*AwsWafv2CustomHttpHeader) *AwsWafv2CustomResponseDetails { + s.ResponseHeaders = v return s } -// Provides information about the web access control list (web ACL). The web -// ACL contains the rules that identify the requests that you want to allow, -// block, or count. -type AwsWafRegionalWebAclDetails struct { +// Details about an WAFv2 rule group. +type AwsWafv2RuleGroupDetails struct { _ struct{} `type:"structure"` - // The action to perform if none of the rules contained in the web ACL match. - DefaultAction *string `type:"string"` + // The Amazon Resource Name (ARN) of the entity. + Arn *string `type:"string"` - // A name for the metrics for this web ACL. - MetricName *string `type:"string"` + // The web ACL capacity units (WCUs) required for this rule group. + Capacity *int64 `type:"long"` - // A descriptive name for the web ACL. + // A description of the rule group that helps with identification. + Description *string `type:"string"` + + // A unique identifier for the rule group. + Id *string `type:"string"` + + // The name of the rule group. You cannot change the name of a rule group after + // you create it. Name *string `type:"string"` - // An array that contains the action for each rule in a web ACL, the priority - // of the rule, and the ID of the rule. - RulesList []*AwsWafRegionalWebAclRulesListDetails `type:"list"` + // The Rule statements used to identify the web requests that you want to allow, + // block, or count. Each rule includes one top-level statement that WAF uses + // to identify matching web requests, and parameters that govern how WAF handles + // them. + Rules []*AwsWafv2RulesDetails `type:"list"` - // The ID of the web ACL. - WebAclId *string `type:"string"` + // Specifies whether the rule group is for an Amazon CloudFront distribution + // or for a regional application. A regional application can be an Application + // Load Balancer (ALB), an Amazon API Gateway REST API, an AppSync GraphQL API, + // or an Amazon Cognito user pool. + Scope *string `type:"string"` + + // Defines and enables Amazon CloudWatch metrics and web request sample collection. + VisibilityConfig *AwsWafv2VisibilityConfigDetails `type:"structure"` } // String returns the string representation. @@ -34398,7 +37665,7 @@ type AwsWafRegionalWebAclDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRegionalWebAclDetails) String() string { +func (s AwsWafv2RuleGroupDetails) String() string { return awsutil.Prettify(s) } @@ -34407,95 +37674,67 @@ func (s AwsWafRegionalWebAclDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRegionalWebAclDetails) GoString() string { +func (s AwsWafv2RuleGroupDetails) GoString() string { return s.String() } -// SetDefaultAction sets the DefaultAction field's value. -func (s *AwsWafRegionalWebAclDetails) SetDefaultAction(v string) *AwsWafRegionalWebAclDetails { - s.DefaultAction = &v +// SetArn sets the Arn field's value. +func (s *AwsWafv2RuleGroupDetails) SetArn(v string) *AwsWafv2RuleGroupDetails { + s.Arn = &v return s } -// SetMetricName sets the MetricName field's value. -func (s *AwsWafRegionalWebAclDetails) SetMetricName(v string) *AwsWafRegionalWebAclDetails { - s.MetricName = &v +// SetCapacity sets the Capacity field's value. +func (s *AwsWafv2RuleGroupDetails) SetCapacity(v int64) *AwsWafv2RuleGroupDetails { + s.Capacity = &v return s } -// SetName sets the Name field's value. -func (s *AwsWafRegionalWebAclDetails) SetName(v string) *AwsWafRegionalWebAclDetails { - s.Name = &v +// SetDescription sets the Description field's value. +func (s *AwsWafv2RuleGroupDetails) SetDescription(v string) *AwsWafv2RuleGroupDetails { + s.Description = &v return s } -// SetRulesList sets the RulesList field's value. -func (s *AwsWafRegionalWebAclDetails) SetRulesList(v []*AwsWafRegionalWebAclRulesListDetails) *AwsWafRegionalWebAclDetails { - s.RulesList = v +// SetId sets the Id field's value. +func (s *AwsWafv2RuleGroupDetails) SetId(v string) *AwsWafv2RuleGroupDetails { + s.Id = &v return s } -// SetWebAclId sets the WebAclId field's value. -func (s *AwsWafRegionalWebAclDetails) SetWebAclId(v string) *AwsWafRegionalWebAclDetails { - s.WebAclId = &v +// SetName sets the Name field's value. +func (s *AwsWafv2RuleGroupDetails) SetName(v string) *AwsWafv2RuleGroupDetails { + s.Name = &v return s } -// The action that WAF takes when a web request matches all conditions in the -// rule, such as allow, block, or count the request. -type AwsWafRegionalWebAclRulesListActionDetails struct { - _ struct{} `type:"structure"` - - // For actions that are associated with a rule, the action that WAF takes when - // a web request matches all conditions in a rule. - Type *string `type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsWafRegionalWebAclRulesListActionDetails) String() string { - return awsutil.Prettify(s) +// SetRules sets the Rules field's value. +func (s *AwsWafv2RuleGroupDetails) SetRules(v []*AwsWafv2RulesDetails) *AwsWafv2RuleGroupDetails { + s.Rules = v + return s } -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AwsWafRegionalWebAclRulesListActionDetails) GoString() string { - return s.String() +// SetScope sets the Scope field's value. +func (s *AwsWafv2RuleGroupDetails) SetScope(v string) *AwsWafv2RuleGroupDetails { + s.Scope = &v + return s } -// SetType sets the Type field's value. -func (s *AwsWafRegionalWebAclRulesListActionDetails) SetType(v string) *AwsWafRegionalWebAclRulesListActionDetails { - s.Type = &v +// SetVisibilityConfig sets the VisibilityConfig field's value. +func (s *AwsWafv2RuleGroupDetails) SetVisibilityConfig(v *AwsWafv2VisibilityConfigDetails) *AwsWafv2RuleGroupDetails { + s.VisibilityConfig = v return s } -// A combination of ByteMatchSet, IPSet, and/or SqlInjectionMatchSet objects -// that identify the web requests that you want to allow, block, or count. -type AwsWafRegionalWebAclRulesListDetails struct { +// Specifies that WAF should run a CAPTCHA check against the request. +type AwsWafv2RulesActionCaptchaDetails struct { _ struct{} `type:"structure"` - // The action that WAF takes when a web request matches all conditions in the - // rule, such as allow, block, or count the request. - Action *AwsWafRegionalWebAclRulesListActionDetails `type:"structure"` - - // Overrides the rule evaluation result in the rule group. - OverrideAction *AwsWafRegionalWebAclRulesListOverrideActionDetails `type:"structure"` - - // The order in which WAF evaluates the rules in a web ACL. - Priority *int64 `type:"integer"` - - // The ID of an WAF Regional rule to associate with a web ACL. - RuleId *string `type:"string"` - - // For actions that are associated with a rule, the action that WAF takes when - // a web request matches all conditions in a rule. - Type *string `type:"string"` + // Defines custom handling for the web request, used when the CAPTCHA inspection + // determines that the request's token is valid and unexpired. For more information, + // see Customizing web requests and responses in WAF (https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html) + // in the WAF Developer Guide.. + CustomRequestHandling *AwsWafv2CustomRequestHandlingDetails `type:"structure"` } // String returns the string representation. @@ -34503,7 +37742,7 @@ type AwsWafRegionalWebAclRulesListDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRegionalWebAclRulesListDetails) String() string { +func (s AwsWafv2RulesActionCaptchaDetails) String() string { return awsutil.Prettify(s) } @@ -34512,47 +37751,24 @@ func (s AwsWafRegionalWebAclRulesListDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRegionalWebAclRulesListDetails) GoString() string { +func (s AwsWafv2RulesActionCaptchaDetails) GoString() string { return s.String() } -// SetAction sets the Action field's value. -func (s *AwsWafRegionalWebAclRulesListDetails) SetAction(v *AwsWafRegionalWebAclRulesListActionDetails) *AwsWafRegionalWebAclRulesListDetails { - s.Action = v - return s -} - -// SetOverrideAction sets the OverrideAction field's value. -func (s *AwsWafRegionalWebAclRulesListDetails) SetOverrideAction(v *AwsWafRegionalWebAclRulesListOverrideActionDetails) *AwsWafRegionalWebAclRulesListDetails { - s.OverrideAction = v - return s -} - -// SetPriority sets the Priority field's value. -func (s *AwsWafRegionalWebAclRulesListDetails) SetPriority(v int64) *AwsWafRegionalWebAclRulesListDetails { - s.Priority = &v - return s -} - -// SetRuleId sets the RuleId field's value. -func (s *AwsWafRegionalWebAclRulesListDetails) SetRuleId(v string) *AwsWafRegionalWebAclRulesListDetails { - s.RuleId = &v - return s -} - -// SetType sets the Type field's value. -func (s *AwsWafRegionalWebAclRulesListDetails) SetType(v string) *AwsWafRegionalWebAclRulesListDetails { - s.Type = &v +// SetCustomRequestHandling sets the CustomRequestHandling field's value. +func (s *AwsWafv2RulesActionCaptchaDetails) SetCustomRequestHandling(v *AwsWafv2CustomRequestHandlingDetails) *AwsWafv2RulesActionCaptchaDetails { + s.CustomRequestHandling = v return s } -// Provides details about the action to use in the place of the action that -// results from the rule group evaluation. -type AwsWafRegionalWebAclRulesListOverrideActionDetails struct { +// Specifies that WAF should count the request. +type AwsWafv2RulesActionCountDetails struct { _ struct{} `type:"structure"` - // Overrides the rule evaluation result in the rule group. - Type *string `type:"string"` + // Defines custom handling for the web request. For more information, see Customizing + // web requests and responses in WAF (https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html) + // in the WAF Developer Guide.. + CustomRequestHandling *AwsWafv2CustomRequestHandlingDetails `type:"structure"` } // String returns the string representation. @@ -34560,7 +37776,7 @@ type AwsWafRegionalWebAclRulesListOverrideActionDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRegionalWebAclRulesListOverrideActionDetails) String() string { +func (s AwsWafv2RulesActionCountDetails) String() string { return awsutil.Prettify(s) } @@ -34569,34 +37785,33 @@ func (s AwsWafRegionalWebAclRulesListOverrideActionDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRegionalWebAclRulesListOverrideActionDetails) GoString() string { +func (s AwsWafv2RulesActionCountDetails) GoString() string { return s.String() } -// SetType sets the Type field's value. -func (s *AwsWafRegionalWebAclRulesListOverrideActionDetails) SetType(v string) *AwsWafRegionalWebAclRulesListOverrideActionDetails { - s.Type = &v +// SetCustomRequestHandling sets the CustomRequestHandling field's value. +func (s *AwsWafv2RulesActionCountDetails) SetCustomRequestHandling(v *AwsWafv2CustomRequestHandlingDetails) *AwsWafv2RulesActionCountDetails { + s.CustomRequestHandling = v return s } -// Provides information about a WAF rule. This rule specifies the web requests -// that you want to allow, block, or count. -type AwsWafRuleDetails struct { +// The action that WAF should take on a web request when it matches a rule's +// statement. Settings at the web ACL level can override the rule action setting. +type AwsWafv2RulesActionDetails struct { _ struct{} `type:"structure"` - // The name of the metrics for this rule. - MetricName *string `type:"string"` + // Instructs WAF to allow the web request. + Allow *AwsWafv2ActionAllowDetails `type:"structure"` - // A descriptive name for the rule. - Name *string `type:"string"` + // Instructs WAF to block the web request. + Block *AwsWafv2ActionBlockDetails `type:"structure"` - // Specifies the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, RegexMatchSet, - // GeoMatchSet, and SizeConstraintSet objects that you want to add to a rule - // and, for each object, indicates whether you want to negate the settings. - PredicateList []*AwsWafRulePredicateListDetails `type:"list"` + // Instructs WAF to run a CAPTCHA check against the web request. + Captcha *AwsWafv2RulesActionCaptchaDetails `type:"structure"` - // The ID of the WAF rule. - RuleId *string `type:"string"` + // Instructs WAF to count the web request and then continue evaluating the request + // using the remaining rules in the web ACL. + Count *AwsWafv2RulesActionCountDetails `type:"structure"` } // String returns the string representation. @@ -34604,7 +37819,7 @@ type AwsWafRuleDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRuleDetails) String() string { +func (s AwsWafv2RulesActionDetails) String() string { return awsutil.Prettify(s) } @@ -34613,51 +37828,60 @@ func (s AwsWafRuleDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRuleDetails) GoString() string { +func (s AwsWafv2RulesActionDetails) GoString() string { return s.String() } -// SetMetricName sets the MetricName field's value. -func (s *AwsWafRuleDetails) SetMetricName(v string) *AwsWafRuleDetails { - s.MetricName = &v +// SetAllow sets the Allow field's value. +func (s *AwsWafv2RulesActionDetails) SetAllow(v *AwsWafv2ActionAllowDetails) *AwsWafv2RulesActionDetails { + s.Allow = v return s } -// SetName sets the Name field's value. -func (s *AwsWafRuleDetails) SetName(v string) *AwsWafRuleDetails { - s.Name = &v +// SetBlock sets the Block field's value. +func (s *AwsWafv2RulesActionDetails) SetBlock(v *AwsWafv2ActionBlockDetails) *AwsWafv2RulesActionDetails { + s.Block = v return s } -// SetPredicateList sets the PredicateList field's value. -func (s *AwsWafRuleDetails) SetPredicateList(v []*AwsWafRulePredicateListDetails) *AwsWafRuleDetails { - s.PredicateList = v +// SetCaptcha sets the Captcha field's value. +func (s *AwsWafv2RulesActionDetails) SetCaptcha(v *AwsWafv2RulesActionCaptchaDetails) *AwsWafv2RulesActionDetails { + s.Captcha = v return s } -// SetRuleId sets the RuleId field's value. -func (s *AwsWafRuleDetails) SetRuleId(v string) *AwsWafRuleDetails { - s.RuleId = &v +// SetCount sets the Count field's value. +func (s *AwsWafv2RulesActionDetails) SetCount(v *AwsWafv2RulesActionCountDetails) *AwsWafv2RulesActionDetails { + s.Count = v return s } -// Provides information about an WAF rule group. A rule group is a collection -// of rules for inspecting and controlling web requests. -type AwsWafRuleGroupDetails struct { +// Provides details about rules in a rule group. A rule identifies web requests +// that you want to allow, block, or count. Each rule includes one top-level +// Statement that AWS WAF uses to identify matching web requests, and parameters +// that govern how AWS WAF handles them. +type AwsWafv2RulesDetails struct { _ struct{} `type:"structure"` - // The name of the metrics for this rule group. - MetricName *string `type:"string"` + // The action that WAF should take on a web request when it matches the rule + // statement. Settings at the web ACL level can override the rule action setting. + Action *AwsWafv2RulesActionDetails `type:"structure"` - // The name of the rule group. + // The name of the rule. Name *string `type:"string"` - // The ID of the rule group. - RuleGroupId *string `type:"string"` + // The action to use in the place of the action that results from the rule group + // evaluation. + OverrideAction *string `type:"string"` - // Provides information about the rules attached to the rule group. These rules - // identify the web requests that you want to allow, block, or count. - Rules []*AwsWafRuleGroupRulesDetails `type:"list"` + // If you define more than one Rule in a WebACL, WAF evaluates each request + // against the Rules in order based on the value of Priority. WAF processes + // rules with lower priority first. The priorities don't need to be consecutive, + // but they must all be different. + Priority *int64 `type:"integer"` + + // Defines and enables Amazon CloudWatch metrics and web request sample collection. + VisibilityConfig *AwsWafv2VisibilityConfigDetails `type:"structure"` } // String returns the string representation. @@ -34665,7 +37889,7 @@ type AwsWafRuleGroupDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRuleGroupDetails) String() string { +func (s AwsWafv2RulesDetails) String() string { return awsutil.Prettify(s) } @@ -34674,42 +37898,56 @@ func (s AwsWafRuleGroupDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRuleGroupDetails) GoString() string { +func (s AwsWafv2RulesDetails) GoString() string { return s.String() } -// SetMetricName sets the MetricName field's value. -func (s *AwsWafRuleGroupDetails) SetMetricName(v string) *AwsWafRuleGroupDetails { - s.MetricName = &v +// SetAction sets the Action field's value. +func (s *AwsWafv2RulesDetails) SetAction(v *AwsWafv2RulesActionDetails) *AwsWafv2RulesDetails { + s.Action = v return s } // SetName sets the Name field's value. -func (s *AwsWafRuleGroupDetails) SetName(v string) *AwsWafRuleGroupDetails { +func (s *AwsWafv2RulesDetails) SetName(v string) *AwsWafv2RulesDetails { s.Name = &v return s } -// SetRuleGroupId sets the RuleGroupId field's value. -func (s *AwsWafRuleGroupDetails) SetRuleGroupId(v string) *AwsWafRuleGroupDetails { - s.RuleGroupId = &v +// SetOverrideAction sets the OverrideAction field's value. +func (s *AwsWafv2RulesDetails) SetOverrideAction(v string) *AwsWafv2RulesDetails { + s.OverrideAction = &v return s } -// SetRules sets the Rules field's value. -func (s *AwsWafRuleGroupDetails) SetRules(v []*AwsWafRuleGroupRulesDetails) *AwsWafRuleGroupDetails { - s.Rules = v +// SetPriority sets the Priority field's value. +func (s *AwsWafv2RulesDetails) SetPriority(v int64) *AwsWafv2RulesDetails { + s.Priority = &v return s } -// Provides information about what action WAF should take on a web request when -// it matches the criteria defined in the rule. -type AwsWafRuleGroupRulesActionDetails struct { +// SetVisibilityConfig sets the VisibilityConfig field's value. +func (s *AwsWafv2RulesDetails) SetVisibilityConfig(v *AwsWafv2VisibilityConfigDetails) *AwsWafv2RulesDetails { + s.VisibilityConfig = v + return s +} + +// Defines and enables Amazon CloudWatch metrics and web request sample collection. +type AwsWafv2VisibilityConfigDetails struct { _ struct{} `type:"structure"` - // The action that WAF should take on a web request when it matches the rule's - // statement. - Type *string `type:"string"` + // A boolean indicating whether the associated resource sends metrics to Amazon + // CloudWatch. For the list of available metrics, see WAF metrics and dimensions + // (https://docs.aws.amazon.com/waf/latest/developerguide/monitoring-cloudwatch.html#waf-metrics) + // in the WAF Developer Guide. + CloudWatchMetricsEnabled *bool `type:"boolean"` + + // A name of the Amazon CloudWatch metric. + MetricName *string `type:"string"` + + // A boolean indicating whether WAF should store a sampling of the web requests + // that match the rules. You can view the sampled requests through the WAF console. + SampledRequestsEnabled *bool `type:"boolean"` } // String returns the string representation. @@ -34717,7 +37955,7 @@ type AwsWafRuleGroupRulesActionDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRuleGroupRulesActionDetails) String() string { +func (s AwsWafv2VisibilityConfigDetails) String() string { return awsutil.Prettify(s) } @@ -34726,34 +37964,38 @@ func (s AwsWafRuleGroupRulesActionDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRuleGroupRulesActionDetails) GoString() string { +func (s AwsWafv2VisibilityConfigDetails) GoString() string { return s.String() } -// SetType sets the Type field's value. -func (s *AwsWafRuleGroupRulesActionDetails) SetType(v string) *AwsWafRuleGroupRulesActionDetails { - s.Type = &v +// SetCloudWatchMetricsEnabled sets the CloudWatchMetricsEnabled field's value. +func (s *AwsWafv2VisibilityConfigDetails) SetCloudWatchMetricsEnabled(v bool) *AwsWafv2VisibilityConfigDetails { + s.CloudWatchMetricsEnabled = &v return s } -// Provides information about the rules attached to the rule group. These rules -// identify the web requests that you want to allow, block, or count. -type AwsWafRuleGroupRulesDetails struct { - _ struct{} `type:"structure"` +// SetMetricName sets the MetricName field's value. +func (s *AwsWafv2VisibilityConfigDetails) SetMetricName(v string) *AwsWafv2VisibilityConfigDetails { + s.MetricName = &v + return s +} - // Provides information about what action WAF should take on a web request when - // it matches the criteria defined in the rule. - Action *AwsWafRuleGroupRulesActionDetails `type:"structure"` +// SetSampledRequestsEnabled sets the SampledRequestsEnabled field's value. +func (s *AwsWafv2VisibilityConfigDetails) SetSampledRequestsEnabled(v bool) *AwsWafv2VisibilityConfigDetails { + s.SampledRequestsEnabled = &v + return s +} - // If you define more than one rule in a web ACL, WAF evaluates each request - // against the rules in order based on the value of Priority. - Priority *int64 `type:"integer"` +// Specifies the action that Amazon CloudFront or WAF takes when a web request +// matches the conditions in the rule. +type AwsWafv2WebAclActionDetails struct { + _ struct{} `type:"structure"` - // The rule ID for a rule. - RuleId *string `type:"string"` + // Specifies that WAF should allow requests by default. + Allow *AwsWafv2ActionAllowDetails `type:"structure"` - // The type of rule. - Type *string `type:"string"` + // Specifies that WAF should block requests by default. + Block *AwsWafv2ActionBlockDetails `type:"structure"` } // String returns the string representation. @@ -34761,7 +38003,7 @@ type AwsWafRuleGroupRulesDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRuleGroupRulesDetails) String() string { +func (s AwsWafv2WebAclActionDetails) String() string { return awsutil.Prettify(s) } @@ -34770,52 +38012,30 @@ func (s AwsWafRuleGroupRulesDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRuleGroupRulesDetails) GoString() string { +func (s AwsWafv2WebAclActionDetails) GoString() string { return s.String() } -// SetAction sets the Action field's value. -func (s *AwsWafRuleGroupRulesDetails) SetAction(v *AwsWafRuleGroupRulesActionDetails) *AwsWafRuleGroupRulesDetails { - s.Action = v - return s -} - -// SetPriority sets the Priority field's value. -func (s *AwsWafRuleGroupRulesDetails) SetPriority(v int64) *AwsWafRuleGroupRulesDetails { - s.Priority = &v - return s -} - -// SetRuleId sets the RuleId field's value. -func (s *AwsWafRuleGroupRulesDetails) SetRuleId(v string) *AwsWafRuleGroupRulesDetails { - s.RuleId = &v +// SetAllow sets the Allow field's value. +func (s *AwsWafv2WebAclActionDetails) SetAllow(v *AwsWafv2ActionAllowDetails) *AwsWafv2WebAclActionDetails { + s.Allow = v return s } -// SetType sets the Type field's value. -func (s *AwsWafRuleGroupRulesDetails) SetType(v string) *AwsWafRuleGroupRulesDetails { - s.Type = &v +// SetBlock sets the Block field's value. +func (s *AwsWafv2WebAclActionDetails) SetBlock(v *AwsWafv2ActionBlockDetails) *AwsWafv2WebAclActionDetails { + s.Block = v return s } -// Provides details about the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, -// RegexMatchSet, GeoMatchSet, and SizeConstraintSet objects that you want to -// add to a rule and, for each object, indicates whether you want to negate -// the settings. -type AwsWafRulePredicateListDetails struct { +// Specifies how WAF should handle CAPTCHA evaluations for rules that don't +// have their own CaptchaConfig settings. +type AwsWafv2WebAclCaptchaConfigDetails struct { _ struct{} `type:"structure"` - // A unique identifier for a predicate in a rule, such as ByteMatchSetId or - // IPSetId. - DataId *string `type:"string"` - - // Specifies if you want WAF to allow, block, or count requests based on the - // settings in the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, RegexMatchSet, - // GeoMatchSet, or SizeConstraintSet. - Negated *bool `type:"boolean"` - - // The type of predicate in a rule, such as ByteMatch or IPSet. - Type *string `type:"string"` + // Determines how long a CAPTCHA timestamp in the token remains valid after + // the client successfully solves a CAPTCHA puzzle. + ImmunityTimeProperty *AwsWafv2WebAclCaptchaConfigImmunityTimePropertyDetails `type:"structure"` } // String returns the string representation. @@ -34823,7 +38043,7 @@ type AwsWafRulePredicateListDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRulePredicateListDetails) String() string { +func (s AwsWafv2WebAclCaptchaConfigDetails) String() string { return awsutil.Prettify(s) } @@ -34832,45 +38052,25 @@ func (s AwsWafRulePredicateListDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafRulePredicateListDetails) GoString() string { +func (s AwsWafv2WebAclCaptchaConfigDetails) GoString() string { return s.String() } -// SetDataId sets the DataId field's value. -func (s *AwsWafRulePredicateListDetails) SetDataId(v string) *AwsWafRulePredicateListDetails { - s.DataId = &v - return s -} - -// SetNegated sets the Negated field's value. -func (s *AwsWafRulePredicateListDetails) SetNegated(v bool) *AwsWafRulePredicateListDetails { - s.Negated = &v - return s -} - -// SetType sets the Type field's value. -func (s *AwsWafRulePredicateListDetails) SetType(v string) *AwsWafRulePredicateListDetails { - s.Type = &v +// SetImmunityTimeProperty sets the ImmunityTimeProperty field's value. +func (s *AwsWafv2WebAclCaptchaConfigDetails) SetImmunityTimeProperty(v *AwsWafv2WebAclCaptchaConfigImmunityTimePropertyDetails) *AwsWafv2WebAclCaptchaConfigDetails { + s.ImmunityTimeProperty = v return s } -// Provides information about an WAF web access control list (web ACL). -type AwsWafWebAclDetails struct { +// Used for CAPTCHA and challenge token settings. Determines how long a CAPTCHA +// or challenge timestamp remains valid after WAF updates it for a successful +// CAPTCHA or challenge response. +type AwsWafv2WebAclCaptchaConfigImmunityTimePropertyDetails struct { _ struct{} `type:"structure"` - // The action to perform if none of the rules contained in the web ACL match. - DefaultAction *string `type:"string"` - - // A friendly name or description of the web ACL. You can't change the name - // of a web ACL after you create it. - Name *string `type:"string"` - - // An array that contains the action for each rule in a web ACL, the priority - // of the rule, and the ID of the rule. - Rules []*AwsWafWebAclRule `type:"list"` - - // A unique identifier for a web ACL. - WebAclId *string `type:"string"` + // The amount of time, in seconds, that a CAPTCHA or challenge timestamp is + // considered valid by WAF. + ImmunityTime *int64 `type:"long"` } // String returns the string representation. @@ -34878,7 +38078,7 @@ type AwsWafWebAclDetails struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafWebAclDetails) String() string { +func (s AwsWafv2WebAclCaptchaConfigImmunityTimePropertyDetails) String() string { return awsutil.Prettify(s) } @@ -34887,76 +38087,54 @@ func (s AwsWafWebAclDetails) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafWebAclDetails) GoString() string { +func (s AwsWafv2WebAclCaptchaConfigImmunityTimePropertyDetails) GoString() string { return s.String() } -// SetDefaultAction sets the DefaultAction field's value. -func (s *AwsWafWebAclDetails) SetDefaultAction(v string) *AwsWafWebAclDetails { - s.DefaultAction = &v +// SetImmunityTime sets the ImmunityTime field's value. +func (s *AwsWafv2WebAclCaptchaConfigImmunityTimePropertyDetails) SetImmunityTime(v int64) *AwsWafv2WebAclCaptchaConfigImmunityTimePropertyDetails { + s.ImmunityTime = &v return s } -// SetName sets the Name field's value. -func (s *AwsWafWebAclDetails) SetName(v string) *AwsWafWebAclDetails { - s.Name = &v - return s -} +// Details about an WAFv2 web Access Control List (ACL). +type AwsWafv2WebAclDetails struct { + _ struct{} `type:"structure"` -// SetRules sets the Rules field's value. -func (s *AwsWafWebAclDetails) SetRules(v []*AwsWafWebAclRule) *AwsWafWebAclDetails { - s.Rules = v - return s -} + // The Amazon Resource Name (ARN) of the web ACL that you want to associate + // with the resource. + Arn *string `type:"string"` -// SetWebAclId sets the WebAclId field's value. -func (s *AwsWafWebAclDetails) SetWebAclId(v string) *AwsWafWebAclDetails { - s.WebAclId = &v - return s -} + // The web ACL capacity units (WCUs) currently being used by this web ACL. + Capacity *int64 `type:"long"` -// Details for a rule in an WAF web ACL. -type AwsWafWebAclRule struct { - _ struct{} `type:"structure"` + // Specifies how WAF should handle CAPTCHA evaluations for rules that don't + // have their own CaptchaConfig settings. + CaptchaConfig *AwsWafv2WebAclCaptchaConfigDetails `type:"structure"` - // Specifies the action that CloudFront or WAF takes when a web request matches - // the conditions in the rule. - Action *WafAction `type:"structure"` + // The action to perform if none of the Rules contained in the web ACL match. + DefaultAction *AwsWafv2WebAclActionDetails `type:"structure"` - // Rules to exclude from a rule group. - ExcludedRules []*WafExcludedRule `type:"list"` + // A description of the web ACL that helps with identification. + Description *string `type:"string"` - // Use the OverrideAction to test your RuleGroup. - // - // Any rule in a RuleGroup can potentially block a request. If you set the OverrideAction - // to None, the RuleGroup blocks a request if any individual rule in the RuleGroup - // matches the request and is configured to block that request. - // - // However, if you first want to test the RuleGroup, set the OverrideAction - // to Count. The RuleGroup then overrides any block action specified by individual - // rules contained within the group. Instead of blocking matching requests, - // those requests are counted. - // - // ActivatedRule|OverrideAction applies only when updating or adding a RuleGroup - // to a web ACL. In this case you do not use ActivatedRule Action. For all other - // update requests, ActivatedRule Action is used instead of ActivatedRule OverrideAction. - OverrideAction *WafOverrideAction `type:"structure"` + // A unique identifier for the web ACL. + Id *string `type:"string"` - // Specifies the order in which the rules in a web ACL are evaluated. Rules - // with a lower value for Priority are evaluated before rules with a higher - // value. The value must be a unique integer. If you add multiple rules to a - // web ACL, the values do not need to be consecutive. - Priority *int64 `type:"integer"` + // Indicates whether this web ACL is managed by Firewall Manager. + ManagedbyFirewallManager *bool `type:"boolean"` - // The identifier for a rule. - RuleId *string `type:"string"` + // The name of the web ACL. + Name *string `type:"string"` - // The rule type. - // - // Valid values: REGULAR | RATE_BASED | GROUP - // - // The default is REGULAR. - Type *string `type:"string"` + // The Rule statements used to identify the web requests that you want to allow, + // block, or count. Each rule includes one top-level statement that WAF uses + // to identify matching web requests, and parameters that govern how WAF handles + // them. + Rules []*AwsWafv2RulesDetails `type:"list"` + + // Defines and enables Amazon CloudWatch metrics and web request sample collection. + VisibilityConfig *AwsWafv2VisibilityConfigDetails `type:"structure"` } // String returns the string representation. @@ -34964,7 +38142,7 @@ type AwsWafWebAclRule struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafWebAclRule) String() string { +func (s AwsWafv2WebAclDetails) String() string { return awsutil.Prettify(s) } @@ -34973,43 +38151,67 @@ func (s AwsWafWebAclRule) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AwsWafWebAclRule) GoString() string { +func (s AwsWafv2WebAclDetails) GoString() string { return s.String() } -// SetAction sets the Action field's value. -func (s *AwsWafWebAclRule) SetAction(v *WafAction) *AwsWafWebAclRule { - s.Action = v +// SetArn sets the Arn field's value. +func (s *AwsWafv2WebAclDetails) SetArn(v string) *AwsWafv2WebAclDetails { + s.Arn = &v return s } -// SetExcludedRules sets the ExcludedRules field's value. -func (s *AwsWafWebAclRule) SetExcludedRules(v []*WafExcludedRule) *AwsWafWebAclRule { - s.ExcludedRules = v +// SetCapacity sets the Capacity field's value. +func (s *AwsWafv2WebAclDetails) SetCapacity(v int64) *AwsWafv2WebAclDetails { + s.Capacity = &v return s } -// SetOverrideAction sets the OverrideAction field's value. -func (s *AwsWafWebAclRule) SetOverrideAction(v *WafOverrideAction) *AwsWafWebAclRule { - s.OverrideAction = v +// SetCaptchaConfig sets the CaptchaConfig field's value. +func (s *AwsWafv2WebAclDetails) SetCaptchaConfig(v *AwsWafv2WebAclCaptchaConfigDetails) *AwsWafv2WebAclDetails { + s.CaptchaConfig = v return s } -// SetPriority sets the Priority field's value. -func (s *AwsWafWebAclRule) SetPriority(v int64) *AwsWafWebAclRule { - s.Priority = &v +// SetDefaultAction sets the DefaultAction field's value. +func (s *AwsWafv2WebAclDetails) SetDefaultAction(v *AwsWafv2WebAclActionDetails) *AwsWafv2WebAclDetails { + s.DefaultAction = v return s } -// SetRuleId sets the RuleId field's value. -func (s *AwsWafWebAclRule) SetRuleId(v string) *AwsWafWebAclRule { - s.RuleId = &v +// SetDescription sets the Description field's value. +func (s *AwsWafv2WebAclDetails) SetDescription(v string) *AwsWafv2WebAclDetails { + s.Description = &v return s } -// SetType sets the Type field's value. -func (s *AwsWafWebAclRule) SetType(v string) *AwsWafWebAclRule { - s.Type = &v +// SetId sets the Id field's value. +func (s *AwsWafv2WebAclDetails) SetId(v string) *AwsWafv2WebAclDetails { + s.Id = &v + return s +} + +// SetManagedbyFirewallManager sets the ManagedbyFirewallManager field's value. +func (s *AwsWafv2WebAclDetails) SetManagedbyFirewallManager(v bool) *AwsWafv2WebAclDetails { + s.ManagedbyFirewallManager = &v + return s +} + +// SetName sets the Name field's value. +func (s *AwsWafv2WebAclDetails) SetName(v string) *AwsWafv2WebAclDetails { + s.Name = &v + return s +} + +// SetRules sets the Rules field's value. +func (s *AwsWafv2WebAclDetails) SetRules(v []*AwsWafv2RulesDetails) *AwsWafv2WebAclDetails { + s.Rules = v + return s +} + +// SetVisibilityConfig sets the VisibilityConfig field's value. +func (s *AwsWafv2WebAclDetails) SetVisibilityConfig(v *AwsWafv2VisibilityConfigDetails) *AwsWafv2WebAclDetails { + s.VisibilityConfig = v return s } @@ -40227,9 +43429,7 @@ func (s *InternalException) RequestID() string { return s.RespMetadata.RequestID } -// There is an issue with the account used to make the request. Either Security -// Hub is not enabled for the account, or the account does not have permission -// to perform this action. +// The account doesn't have permission to perform this action. type InvalidAccessException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -43366,6 +46566,10 @@ type ResourceDetails struct { // Details about an EC2 instance related to a finding. AwsEc2Instance *AwsEc2InstanceDetails `type:"structure"` + // Specifies the properties for creating an Amazon Elastic Compute Cloud (Amazon + // EC2) launch template. + AwsEc2LaunchTemplate *AwsEc2LaunchTemplateDetails `type:"structure"` + // Details about an EC2 network access control list (ACL). AwsEc2NetworkAcl *AwsEc2NetworkAclDetails `type:"structure"` @@ -43511,6 +46715,9 @@ type ResourceDetails struct { // Details about an S3 object related to a finding. AwsS3Object *AwsS3ObjectDetails `type:"structure"` + // Provides details about an Amazon SageMaker notebook instance. + AwsSageMakerNotebookInstance *AwsSageMakerNotebookInstanceDetails `type:"structure"` + // Details about a Secrets Manager secret. AwsSecretsManagerSecret *AwsSecretsManagerSecretDetails `type:"structure"` @@ -43548,6 +46755,12 @@ type ResourceDetails struct { // Details for an WAF web ACL. AwsWafWebAcl *AwsWafWebAclDetails `type:"structure"` + // Details about an WAFv2 rule group. + AwsWafv2RuleGroup *AwsWafv2RuleGroupDetails `type:"structure"` + + // Details about an WAFv2 web Access Control List (ACL). + AwsWafv2WebAcl *AwsWafv2WebAclDetails `type:"structure"` + // Information about the encryption configuration for X-Ray. AwsXrayEncryptionConfig *AwsXrayEncryptionConfigDetails `type:"structure"` @@ -43708,6 +46921,12 @@ func (s *ResourceDetails) SetAwsEc2Instance(v *AwsEc2InstanceDetails) *ResourceD return s } +// SetAwsEc2LaunchTemplate sets the AwsEc2LaunchTemplate field's value. +func (s *ResourceDetails) SetAwsEc2LaunchTemplate(v *AwsEc2LaunchTemplateDetails) *ResourceDetails { + s.AwsEc2LaunchTemplate = v + return s +} + // SetAwsEc2NetworkAcl sets the AwsEc2NetworkAcl field's value. func (s *ResourceDetails) SetAwsEc2NetworkAcl(v *AwsEc2NetworkAclDetails) *ResourceDetails { s.AwsEc2NetworkAcl = v @@ -43984,6 +47203,12 @@ func (s *ResourceDetails) SetAwsS3Object(v *AwsS3ObjectDetails) *ResourceDetails return s } +// SetAwsSageMakerNotebookInstance sets the AwsSageMakerNotebookInstance field's value. +func (s *ResourceDetails) SetAwsSageMakerNotebookInstance(v *AwsSageMakerNotebookInstanceDetails) *ResourceDetails { + s.AwsSageMakerNotebookInstance = v + return s +} + // SetAwsSecretsManagerSecret sets the AwsSecretsManagerSecret field's value. func (s *ResourceDetails) SetAwsSecretsManagerSecret(v *AwsSecretsManagerSecretDetails) *ResourceDetails { s.AwsSecretsManagerSecret = v @@ -44056,6 +47281,18 @@ func (s *ResourceDetails) SetAwsWafWebAcl(v *AwsWafWebAclDetails) *ResourceDetai return s } +// SetAwsWafv2RuleGroup sets the AwsWafv2RuleGroup field's value. +func (s *ResourceDetails) SetAwsWafv2RuleGroup(v *AwsWafv2RuleGroupDetails) *ResourceDetails { + s.AwsWafv2RuleGroup = v + return s +} + +// SetAwsWafv2WebAcl sets the AwsWafv2WebAcl field's value. +func (s *ResourceDetails) SetAwsWafv2WebAcl(v *AwsWafv2WebAclDetails) *ResourceDetails { + s.AwsWafv2WebAcl = v + return s +} + // SetAwsXrayEncryptionConfig sets the AwsXrayEncryptionConfig field's value. func (s *ResourceDetails) SetAwsXrayEncryptionConfig(v *AwsXrayEncryptionConfigDetails) *ResourceDetails { s.AwsXrayEncryptionConfig = v diff --git a/service/securityhub/errors.go b/service/securityhub/errors.go index 28eadd887c..53f34b4b1a 100644 --- a/service/securityhub/errors.go +++ b/service/securityhub/errors.go @@ -23,9 +23,7 @@ const ( // ErrCodeInvalidAccessException for service response error code // "InvalidAccessException". // - // There is an issue with the account used to make the request. Either Security - // Hub is not enabled for the account, or the account does not have permission - // to perform this action. + // The account doesn't have permission to perform this action. ErrCodeInvalidAccessException = "InvalidAccessException" // ErrCodeInvalidInputException for service response error code diff --git a/service/translate/api.go b/service/translate/api.go index cbeefcdc6a..a5f9688c41 100644 --- a/service/translate/api.go +++ b/service/translate/api.go @@ -1404,18 +1404,16 @@ func (c *Translate) StartTextTranslationJobRequest(input *StartTextTranslationJo // // Starts an asynchronous batch translation job. Use batch translation jobs // to translate large volumes of text across multiple documents at once. For -// batch translation, the input documents must share the same source language. -// You can specify one or more target languages. Batch translation translates -// each input document into each of the target languages. For more information, -// see Asynchronous batch processing (https://docs.aws.amazon.com/translate/latest/dg/async.html) +// batch translation, you can input documents with different source languages +// (specify auto as the source language). You can specify one or more target +// languages. Batch translation translates each input document into each of +// the target languages. For more information, see Asynchronous batch processing +// (https://docs.aws.amazon.com/translate/latest/dg/async.html). // // Batch translation jobs can be described with the DescribeTextTranslationJob // operation, listed with the ListTextTranslationJobs operation, and stopped // with the StopTextTranslationJob operation. // -// Amazon Translate does not support batch translation of multiple source languages -// at once. -// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -3169,14 +3167,8 @@ type InputDataConfig struct { ContentType *string `type:"string" required:"true"` // The URI of the AWS S3 folder that contains the input files. Amazon Translate - // translates all the files in the folder. The folder must be in the same Region - // as the API endpoint you are calling. - // - // The URI can also point to a single input document, or it can provide the - // prefix for a collection of input documents. For example. if you use the URI - // S3://bucketName/prefix and the prefix is a single file, Amazon Translate - // uses that files as input. If more than one file begins with the prefix, Amazon - // Translate uses all of them as input. + // translates all the files in the folder and all its sub-folders. The folder + // must be in the same Region as the API endpoint you are calling. // // S3Uri is a required field S3Uri *string `type:"string" required:"true"` @@ -4700,11 +4692,12 @@ type StartTextTranslationJobInput struct { // and phrases. Settings *TranslationSettings `type:"structure"` - // The language code of the input language. For a list of language codes, see - // Supported languages (https://docs.aws.amazon.com/translate/latest/dg/what-is-languages.html). - // - // Amazon Translate does not automatically detect a source language during batch - // translation jobs. + // The language code of the input language. Specify the language if all input + // documents share the same language. If you don't know the language of the + // source files, or your input documents contains different source languages, + // select auto. Amazon Translate auto detects the source language for each input + // document. For a list of supported language codes, see Supported languages + // (https://docs.aws.amazon.com/translate/latest/dg/what-is-languages.html). // // SourceLanguageCode is a required field SourceLanguageCode *string `min:"2" type:"string" required:"true"` @@ -4712,8 +4705,8 @@ type StartTextTranslationJobInput struct { // The target languages of the translation job. Enter up to 10 language codes. // Each input file is translated into each target language. // - // Each language code is two or five characters long. For a list of language - // codes, see Supported languages (https://docs.aws.amazon.com/translate/latest/dg/what-is-languages.html). + // Each language code is 2 or 5 characters long. For a list of language codes, + // see Supported languages (https://docs.aws.amazon.com/translate/latest/dg/what-is-languages.html). // // TargetLanguageCodes is a required field TargetLanguageCodes []*string `min:"1" type:"list" required:"true"` @@ -5568,8 +5561,8 @@ type TextInput struct { // lists can contain a maximum of 256 terms. TerminologyNames []*string `type:"list"` - // The text to translate. The text string can be a maximum of 5,000 bytes long. - // Depending on your character set, this may be fewer than 5,000 characters. + // The text to translate. The text string can be a maximum of 10,000 bytes long. + // Depending on your character set, this may be fewer than 10,000 characters. // // Text is a required field Text *string `min:"1" type:"string" required:"true"` @@ -6180,8 +6173,8 @@ type TranslationSettings struct { // If you specify multiple target languages for the job, translate ignores the // formality setting for any unsupported target language. // - // For a list of target languages that support formality, see Setting Formality - // (https://docs.aws.amazon.com/translate/latest/dg/customizing-translations-formality.html) + // For a list of target languages that support formality, see Supported languages + // (https://docs.aws.amazon.com/translate/latest/dg/customizing-translations-formality.html#customizing-translations-formality-languages) // in the Amazon Translate Developer Guide. Formality *string `type:"string" enum:"Formality"` @@ -6193,7 +6186,8 @@ type TranslationSettings struct { // word or phrase, regardless of the length or number of words. // // Amazon Translate doesn't detect profanity in all of its supported languages. - // For languages that support profanity detection, see Masking profanity (https://docs.aws.amazon.com/translate/latest/dg/customizing-translations-profanity.html) + // For languages that don't support profanity detection, see Unsupported languages + // (https://docs.aws.amazon.com/translate/latest/dg/customizing-translations-profanity.html#customizing-translations-profanity-languages) // in the Amazon Translate Developer Guide. // // If you specify multiple target languages for the job, all the target languages diff --git a/service/translate/doc.go b/service/translate/doc.go index 68f3893105..60fa0d784a 100644 --- a/service/translate/doc.go +++ b/service/translate/doc.go @@ -3,8 +3,8 @@ // Package translate provides the client and types for making API // requests to Amazon Translate. // -// Provides language translation for input text in the source language to the -// specified target language. +// Provides translation of the input content from the source language to the +// target language. // // See https://docs.aws.amazon.com/goto/WebAPI/translate-2017-07-01 for more information on this service. //