diff --git a/CHANGELOG.md b/CHANGELOG.md index a4e8647b745..24f223e5f45 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,12 @@ +Release v1.44.156 (2022-12-08) +=== + +### Service Client Updates +* `service/autoscaling`: Updates service API and documentation + * Adds support for metric math for target tracking scaling policies, saving you the cost and effort of publishing a custom metric to CloudWatch. Also adds support for VPC Lattice by adding the Attach/Detach/DescribeTrafficSources APIs and a new health check type to the CreateAutoScalingGroup API. +* `service/iottwinmaker`: Updates service API, documentation, and paginators +* `service/migrationhubstrategy`: Updates service API and documentation + Release v1.44.155 (2022-12-07) === diff --git a/aws/endpoints/defaults.go b/aws/endpoints/defaults.go index c8d9f612504..521b3219800 100644 --- a/aws/endpoints/defaults.go +++ b/aws/endpoints/defaults.go @@ -663,6 +663,9 @@ var awsPartition = partition{ }, Deprecated: boxedTrue, }, + endpointKey{ + Region: "me-central-1", + }: endpoint{}, endpointKey{ Region: "me-south-1", }: endpoint{}, @@ -7561,6 +7564,9 @@ var awsPartition = partition{ endpointKey{ Region: "eu-west-3", }: endpoint{}, + endpointKey{ + Region: "me-central-1", + }: endpoint{}, endpointKey{ Region: "me-south-1", }: endpoint{}, @@ -17235,9 +17241,6 @@ var awsPartition = partition{ endpointKey{ Region: "ap-southeast-2", }: endpoint{}, - endpointKey{ - Region: "ap-southeast-3", - }: endpoint{}, endpointKey{ Region: "ca-central-1", }: endpoint{}, @@ -27672,9 +27675,21 @@ var awscnPartition = partition{ endpointKey{ Region: "cn-north-1", }: endpoint{}, + endpointKey{ + Region: "cn-north-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "athena.cn-north-1.api.amazonwebservices.com.cn", + }, endpointKey{ Region: "cn-northwest-1", }: endpoint{}, + endpointKey{ + Region: "cn-northwest-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "athena.cn-northwest-1.api.amazonwebservices.com.cn", + }, }, }, "autoscaling": service{ @@ -29792,6 +29807,12 @@ var awsusgovPartition = partition{ endpointKey{ Region: "us-gov-east-1", }: endpoint{}, + endpointKey{ + Region: "us-gov-east-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "athena.us-gov-east-1.api.aws", + }, endpointKey{ Region: "us-gov-east-1", Variant: fipsVariant, @@ -29801,6 +29822,12 @@ var awsusgovPartition = partition{ endpointKey{ Region: "us-gov-west-1", }: endpoint{}, + endpointKey{ + Region: "us-gov-west-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "athena.us-gov-west-1.api.aws", + }, endpointKey{ Region: "us-gov-west-1", Variant: fipsVariant, diff --git a/aws/version.go b/aws/version.go index 49aa99be986..ee4c2d9e987 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.155" +const SDKVersion = "1.44.156" diff --git a/models/apis/autoscaling/2011-01-01/api-2.json b/models/apis/autoscaling/2011-01-01/api-2.json index ff5cd3d58c6..4b7660714bb 100644 --- a/models/apis/autoscaling/2011-01-01/api-2.json +++ b/models/apis/autoscaling/2011-01-01/api-2.json @@ -55,6 +55,22 @@ {"shape":"ServiceLinkedRoleFailure"} ] }, + "AttachTrafficSources":{ + "name":"AttachTrafficSources", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"AttachTrafficSourcesType"}, + "output":{ + "shape":"AttachTrafficSourcesResultType", + "resultWrapper":"AttachTrafficSourcesResult" + }, + "errors":[ + {"shape":"ResourceContentionFault"}, + {"shape":"ServiceLinkedRoleFailure"} + ] + }, "BatchDeleteScheduledAction":{ "name":"BatchDeleteScheduledAction", "http":{ @@ -554,6 +570,22 @@ {"shape":"ResourceContentionFault"} ] }, + "DescribeTrafficSources":{ + "name":"DescribeTrafficSources", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeTrafficSourcesRequest"}, + "output":{ + "shape":"DescribeTrafficSourcesResponse", + "resultWrapper":"DescribeTrafficSourcesResult" + }, + "errors":[ + {"shape":"ResourceContentionFault"}, + {"shape":"InvalidNextToken"} + ] + }, "DescribeWarmPool":{ "name":"DescribeWarmPool", "http":{ @@ -616,6 +648,21 @@ {"shape":"ResourceContentionFault"} ] }, + "DetachTrafficSources":{ + "name":"DetachTrafficSources", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DetachTrafficSourcesType"}, + "output":{ + "shape":"DetachTrafficSourcesResultType", + "resultWrapper":"DetachTrafficSourcesResult" + }, + "errors":[ + {"shape":"ResourceContentionFault"} + ] + }, "DisableMetricsCollection":{ "name":"DisableMetricsCollection", "http":{ @@ -1100,6 +1147,22 @@ "LoadBalancerNames":{"shape":"LoadBalancerNames"} } }, + "AttachTrafficSourcesResultType":{ + "type":"structure", + "members":{ + } + }, + "AttachTrafficSourcesType":{ + "type":"structure", + "required":[ + "AutoScalingGroupName", + "TrafficSources" + ], + "members":{ + "AutoScalingGroupName":{"shape":"XmlStringMaxLen255"}, + "TrafficSources":{"shape":"TrafficSources"} + } + }, "AutoScalingGroup":{ "type":"structure", "required":[ @@ -1145,7 +1208,8 @@ "WarmPoolSize":{"shape":"WarmPoolSize"}, "Context":{"shape":"Context"}, "DesiredCapacityType":{"shape":"XmlStringMaxLen255"}, - "DefaultInstanceWarmup":{"shape":"DefaultInstanceWarmup"} + "DefaultInstanceWarmup":{"shape":"DefaultInstanceWarmup"}, + "TrafficSources":{"shape":"TrafficSources"} } }, "AutoScalingGroupDesiredCapacity":{"type":"integer"}, @@ -1422,7 +1486,8 @@ "MaxInstanceLifetime":{"shape":"MaxInstanceLifetime"}, "Context":{"shape":"Context"}, "DesiredCapacityType":{"shape":"XmlStringMaxLen255"}, - "DefaultInstanceWarmup":{"shape":"DefaultInstanceWarmup"} + "DefaultInstanceWarmup":{"shape":"DefaultInstanceWarmup"}, + "TrafficSources":{"shape":"TrafficSources"} } }, "CreateLaunchConfigurationType":{ @@ -1459,17 +1524,13 @@ }, "CustomizedMetricSpecification":{ "type":"structure", - "required":[ - "MetricName", - "Namespace", - "Statistic" - ], "members":{ "MetricName":{"shape":"MetricName"}, "Namespace":{"shape":"MetricNamespace"}, "Dimensions":{"shape":"MetricDimensions"}, "Statistic":{"shape":"MetricStatistic"}, - "Unit":{"shape":"MetricUnit"} + "Unit":{"shape":"MetricUnit"}, + "Metrics":{"shape":"TargetTrackingMetricDataQueries"} } }, "DefaultInstanceWarmup":{"type":"integer"}, @@ -1713,6 +1774,26 @@ "TerminationPolicyTypes":{"shape":"TerminationPolicies"} } }, + "DescribeTrafficSourcesRequest":{ + "type":"structure", + "required":[ + "AutoScalingGroupName", + "TrafficSourceType" + ], + "members":{ + "AutoScalingGroupName":{"shape":"XmlStringMaxLen255"}, + "TrafficSourceType":{"shape":"XmlStringMaxLen255"}, + "NextToken":{"shape":"XmlString"}, + "MaxRecords":{"shape":"MaxRecords"} + } + }, + "DescribeTrafficSourcesResponse":{ + "type":"structure", + "members":{ + "TrafficSources":{"shape":"TrafficSourceStates"}, + "NextToken":{"shape":"XmlString"} + } + }, "DescribeWarmPoolAnswer":{ "type":"structure", "members":{ @@ -1787,6 +1868,22 @@ "LoadBalancerNames":{"shape":"LoadBalancerNames"} } }, + "DetachTrafficSourcesResultType":{ + "type":"structure", + "members":{ + } + }, + "DetachTrafficSourcesType":{ + "type":"structure", + "required":[ + "AutoScalingGroupName", + "TrafficSources" + ], + "members":{ + "AutoScalingGroupName":{"shape":"XmlStringMaxLen255"}, + "TrafficSources":{"shape":"TrafficSources"} + } + }, "DisableMetricsCollectionQuery":{ "type":"structure", "required":["AutoScalingGroupName"], @@ -3228,6 +3325,33 @@ "DisableScaleIn":{"shape":"DisableScaleIn"} } }, + "TargetTrackingMetricDataQueries":{ + "type":"list", + "member":{"shape":"TargetTrackingMetricDataQuery"} + }, + "TargetTrackingMetricDataQuery":{ + "type":"structure", + "required":["Id"], + "members":{ + "Id":{"shape":"XmlStringMaxLen255"}, + "Expression":{"shape":"XmlStringMaxLen2047"}, + "MetricStat":{"shape":"TargetTrackingMetricStat"}, + "Label":{"shape":"XmlStringMetricLabel"}, + "ReturnData":{"shape":"ReturnData"} + } + }, + "TargetTrackingMetricStat":{ + "type":"structure", + "required":[ + "Metric", + "Stat" + ], + "members":{ + "Metric":{"shape":"Metric"}, + "Stat":{"shape":"XmlStringMetricStat"}, + "Unit":{"shape":"MetricUnit"} + } + }, "TerminateInstanceInAutoScalingGroupType":{ "type":"structure", "required":[ @@ -3251,6 +3375,27 @@ "Max":{"shape":"NullablePositiveDouble"} } }, + "TrafficSourceIdentifier":{ + "type":"structure", + "members":{ + "Identifier":{"shape":"XmlStringMaxLen511"} + } + }, + "TrafficSourceState":{ + "type":"structure", + "members":{ + "TrafficSource":{"shape":"XmlStringMaxLen511"}, + "State":{"shape":"XmlStringMaxLen255"} + } + }, + "TrafficSourceStates":{ + "type":"list", + "member":{"shape":"TrafficSourceState"} + }, + "TrafficSources":{ + "type":"list", + "member":{"shape":"TrafficSourceIdentifier"} + }, "UpdateAutoScalingGroupType":{ "type":"structure", "required":["AutoScalingGroupName"], diff --git a/models/apis/autoscaling/2011-01-01/docs-2.json b/models/apis/autoscaling/2011-01-01/docs-2.json index 52d391cf52b..2e8b9b18fe0 100644 --- a/models/apis/autoscaling/2011-01-01/docs-2.json +++ b/models/apis/autoscaling/2011-01-01/docs-2.json @@ -5,6 +5,7 @@ "AttachInstances": "
Attaches one or more EC2 instances to the specified Auto Scaling group.
When you attach instances, Amazon EC2 Auto Scaling increases the desired capacity of the group by the number of instances being attached. If the number of instances being attached plus the desired capacity of the group exceeds the maximum size of the group, the operation fails.
If there is a Classic Load Balancer attached to your Auto Scaling group, the instances are also registered with the load balancer. If there are target groups attached to your Auto Scaling group, the instances are also registered with the target groups.
For more information, see Attach EC2 instances to your Auto Scaling group in the Amazon EC2 Auto Scaling User Guide.
", "AttachLoadBalancerTargetGroups": "Attaches one or more target groups to the specified Auto Scaling group.
This operation is used with the following load balancer types:
Application Load Balancer - Operates at the application layer (layer 7) and supports HTTP and HTTPS.
Network Load Balancer - Operates at the transport layer (layer 4) and supports TCP, TLS, and UDP.
Gateway Load Balancer - Operates at the network layer (layer 3).
To describe the target groups for an Auto Scaling group, call the DescribeLoadBalancerTargetGroups API. To detach the target group from the Auto Scaling group, call the DetachLoadBalancerTargetGroups API.
This operation is additive and does not detach existing target groups or Classic Load Balancers from the Auto Scaling group.
For more information, see Use Elastic Load Balancing to distribute traffic across the instances in your Auto Scaling group in the Amazon EC2 Auto Scaling User Guide.
", "AttachLoadBalancers": "To attach an Application Load Balancer, Network Load Balancer, or Gateway Load Balancer, use the AttachLoadBalancerTargetGroups API operation instead.
Attaches one or more Classic Load Balancers to the specified Auto Scaling group. Amazon EC2 Auto Scaling registers the running instances with these Classic Load Balancers.
To describe the load balancers for an Auto Scaling group, call the DescribeLoadBalancers API. To detach a load balancer from the Auto Scaling group, call the DetachLoadBalancers API.
This operation is additive and does not detach existing Classic Load Balancers or target groups from the Auto Scaling group.
For more information, see Use Elastic Load Balancing to distribute traffic across the instances in your Auto Scaling group in the Amazon EC2 Auto Scaling User Guide.
", + "AttachTrafficSources": "Reserved for use with Amazon VPC Lattice, which is in preview and subject to change. Do not use this API for production workloads. This API is also subject to change.
Attaches one or more traffic sources to the specified Auto Scaling group.
To describe the traffic sources for an Auto Scaling group, call the DescribeTrafficSources API. To detach a traffic source from the Auto Scaling group, call the DetachTrafficSources API.
This operation is additive and does not detach existing traffic sources from the Auto Scaling group.
", "BatchDeleteScheduledAction": "Deletes one or more scheduled actions for the specified Auto Scaling group.
", "BatchPutScheduledUpdateGroupAction": "Creates or updates one or more scheduled scaling actions for an Auto Scaling group.
", "CancelInstanceRefresh": "Cancels an instance refresh operation in progress. Cancellation does not roll back any replacements that have already been completed, but it prevents new replacements from being started.
This operation is part of the instance refresh feature in Amazon EC2 Auto Scaling, which helps you update instances in your Auto Scaling group after you make configuration changes.
", @@ -29,7 +30,7 @@ "DescribeLaunchConfigurations": "Gets information about the launch configurations in the account and Region.
", "DescribeLifecycleHookTypes": "Describes the available types of lifecycle hooks.
The following hook types are supported:
autoscaling:EC2_INSTANCE_LAUNCHING
autoscaling:EC2_INSTANCE_TERMINATING
Gets information about the lifecycle hooks for the specified Auto Scaling group.
", - "DescribeLoadBalancerTargetGroups": "Gets information about the Elastic Load Balancing target groups for the specified Auto Scaling group.
To determine the attachment status of the target group, use the State
element in the response. When you attach a target group to an Auto Scaling group, the initial State
value is Adding
. The state transitions to Added
after all Auto Scaling instances are registered with the target group. If Elastic Load Balancing health checks are enabled for the Auto Scaling group, the state transitions to InService
after at least one Auto Scaling instance passes the health check. When the target group is in the InService
state, Amazon EC2 Auto Scaling can terminate and replace any instances that are reported as unhealthy. If no registered instances pass the health checks, the target group doesn't enter the InService
state.
Target groups also have an InService
state if you attach them in the CreateAutoScalingGroup API call. If your target group state is InService
, but it is not working properly, check the scaling activities by calling DescribeScalingActivities and take any corrective actions necessary.
For help with failed health checks, see Troubleshooting Amazon EC2 Auto Scaling: Health checks in the Amazon EC2 Auto Scaling User Guide. For more information, see Use Elastic Load Balancing to distribute traffic across the instances in your Auto Scaling group in the Amazon EC2 Auto Scaling User Guide.
", + "DescribeLoadBalancerTargetGroups": "Gets information about the Elastic Load Balancing target groups for the specified Auto Scaling group.
To determine the attachment status of the target group, use the State
element in the response. When you attach a target group to an Auto Scaling group, the initial State
value is Adding
. The state transitions to Added
after all Auto Scaling instances are registered with the target group. If Elastic Load Balancing health checks are enabled for the Auto Scaling group, the state transitions to InService
after at least one Auto Scaling instance passes the health check. When the target group is in the InService
state, Amazon EC2 Auto Scaling can terminate and replace any instances that are reported as unhealthy. If no registered instances pass the health checks, the target group doesn't enter the InService
state.
Target groups also have an InService
state if you attach them in the CreateAutoScalingGroup API call. If your target group state is InService
, but it is not working properly, check the scaling activities by calling DescribeScalingActivities and take any corrective actions necessary.
For help with failed health checks, see Troubleshooting Amazon EC2 Auto Scaling: Health checks in the Amazon EC2 Auto Scaling User Guide. For more information, see Use Elastic Load Balancing to distribute traffic across the instances in your Auto Scaling group in the Amazon EC2 Auto Scaling User Guide.
You can use this operation to describe target groups that were attached by using AttachLoadBalancerTargetGroups, but not for target groups that were attached by using AttachTrafficSources.
Gets information about the load balancers for the specified Auto Scaling group.
This operation describes only Classic Load Balancers. If you have Application Load Balancers, Network Load Balancers, or Gateway Load Balancer, use the DescribeLoadBalancerTargetGroups API instead.
To determine the attachment status of the load balancer, use the State
element in the response. When you attach a load balancer to an Auto Scaling group, the initial State
value is Adding
. The state transitions to Added
after all Auto Scaling instances are registered with the load balancer. If Elastic Load Balancing health checks are enabled for the Auto Scaling group, the state transitions to InService
after at least one Auto Scaling instance passes the health check. When the load balancer is in the InService
state, Amazon EC2 Auto Scaling can terminate and replace any instances that are reported as unhealthy. If no registered instances pass the health checks, the load balancer doesn't enter the InService
state.
Load balancers also have an InService
state if you attach them in the CreateAutoScalingGroup API call. If your load balancer state is InService
, but it is not working properly, check the scaling activities by calling DescribeScalingActivities and take any corrective actions necessary.
For help with failed health checks, see Troubleshooting Amazon EC2 Auto Scaling: Health checks in the Amazon EC2 Auto Scaling User Guide. For more information, see Use Elastic Load Balancing to distribute traffic across the instances in your Auto Scaling group in the Amazon EC2 Auto Scaling User Guide.
", "DescribeMetricCollectionTypes": "Describes the available CloudWatch metrics for Amazon EC2 Auto Scaling.
", "DescribeNotificationConfigurations": "Gets information about the Amazon SNS notifications that are configured for one or more Auto Scaling groups.
", @@ -39,10 +40,12 @@ "DescribeScheduledActions": "Gets information about the scheduled actions that haven't run or that have not reached their end time.
To describe the scaling activities for scheduled actions that have already run, call the DescribeScalingActivities API.
", "DescribeTags": "Describes the specified tags.
You can use filters to limit the results. For example, you can query for the tags for a specific Auto Scaling group. You can specify multiple values for a filter. A tag must match at least one of the specified values for it to be included in the results.
You can also specify multiple filters. The result includes information for a particular tag only if it matches all the filters. If there's no match, no special message is returned.
For more information, see Tag Auto Scaling groups and instances in the Amazon EC2 Auto Scaling User Guide.
", "DescribeTerminationPolicyTypes": "Describes the termination policies supported by Amazon EC2 Auto Scaling.
For more information, see Work with Amazon EC2 Auto Scaling termination policies in the Amazon EC2 Auto Scaling User Guide.
", + "DescribeTrafficSources": "Reserved for use with Amazon VPC Lattice, which is in preview and subject to change. Do not use this API for production workloads. This API is also subject to change.
Gets information about the traffic sources for the specified Auto Scaling group.
", "DescribeWarmPool": "Gets information about a warm pool and its instances.
For more information, see Warm pools for Amazon EC2 Auto Scaling in the Amazon EC2 Auto Scaling User Guide.
", "DetachInstances": "Removes one or more instances from the specified Auto Scaling group.
After the instances are detached, you can manage them independent of the Auto Scaling group.
If you do not specify the option to decrement the desired capacity, Amazon EC2 Auto Scaling launches instances to replace the ones that are detached.
If there is a Classic Load Balancer attached to the Auto Scaling group, the instances are deregistered from the load balancer. If there are target groups attached to the Auto Scaling group, the instances are deregistered from the target groups.
For more information, see Detach EC2 instances from your Auto Scaling group in the Amazon EC2 Auto Scaling User Guide.
", - "DetachLoadBalancerTargetGroups": "Detaches one or more target groups from the specified Auto Scaling group.
When you detach a target group, it enters the Removing
state while deregistering the instances in the group. When all instances are deregistered, then you can no longer describe the target group using the DescribeLoadBalancerTargetGroups API call. The instances remain running.
Detaches one or more target groups from the specified Auto Scaling group.
When you detach a target group, it enters the Removing
state while deregistering the instances in the group. When all instances are deregistered, then you can no longer describe the target group using the DescribeLoadBalancerTargetGroups API call. The instances remain running.
You can use this operation to detach target groups that were attached by using AttachLoadBalancerTargetGroups, but not for target groups that were attached by using AttachTrafficSources.
Detaches one or more Classic Load Balancers from the specified Auto Scaling group.
This operation detaches only Classic Load Balancers. If you have Application Load Balancers, Network Load Balancers, or Gateway Load Balancer, use the DetachLoadBalancerTargetGroups API instead.
When you detach a load balancer, it enters the Removing
state while deregistering the instances in the group. When all instances are deregistered, then you can no longer describe the load balancer using the DescribeLoadBalancers API call. The instances remain running.
Reserved for use with Amazon VPC Lattice, which is in preview and subject to change. Do not use this API for production workloads. This API is also subject to change.
Detaches one or more traffic sources from the specified Auto Scaling group.
", "DisableMetricsCollection": "Disables group metrics collection for the specified Auto Scaling group.
", "EnableMetricsCollection": "Enables group metrics collection for the specified Auto Scaling group.
You can use these metrics to track changes in an Auto Scaling group and to set alarms on threshold values. You can view group metrics using the Amazon EC2 Auto Scaling console or the CloudWatch console. For more information, see Monitor CloudWatch metrics for your Auto Scaling groups and instances in the Amazon EC2 Auto Scaling User Guide.
", "EnterStandby": "Moves the specified instances into the standby state.
If you choose to decrement the desired capacity of the Auto Scaling group, the instances can enter standby as long as the desired capacity of the Auto Scaling group after the instances are placed into standby is equal to or greater than the minimum capacity of the group.
If you choose not to decrement the desired capacity of the Auto Scaling group, the Auto Scaling group launches new instances to replace the instances on standby.
For more information, see Temporarily removing instances from your Auto Scaling group in the Amazon EC2 Auto Scaling User Guide.
", @@ -236,6 +239,16 @@ "refs": { } }, + "AttachTrafficSourcesResultType": { + "base": null, + "refs": { + } + }, + "AttachTrafficSourcesType": { + "base": null, + "refs": { + } + }, "AutoScalingGroup": { "base": "Describes an Auto Scaling group.
", "refs": { @@ -693,6 +706,16 @@ "refs": { } }, + "DescribeTrafficSourcesRequest": { + "base": null, + "refs": { + } + }, + "DescribeTrafficSourcesResponse": { + "base": null, + "refs": { + } + }, "DescribeWarmPoolAnswer": { "base": null, "refs": { @@ -740,6 +763,16 @@ "refs": { } }, + "DetachTrafficSourcesResultType": { + "base": null, + "refs": { + } + }, + "DetachTrafficSourcesType": { + "base": null, + "refs": { + } + }, "DisableMetricsCollectionQuery": { "base": null, "refs": { @@ -878,8 +911,8 @@ "base": null, "refs": { "AutoScalingGroup$HealthCheckGracePeriod": "The duration of the health check grace period, in seconds.
", - "CreateAutoScalingGroupType$HealthCheckGracePeriod": "The amount of time, in seconds, that Amazon EC2 Auto Scaling waits before checking the health status of an EC2 instance that has come into service and marking it unhealthy due to a failed Elastic Load Balancing or custom health check. This is useful if your instances do not immediately pass these health checks after they enter the InService
state. For more information, see Set the health check grace period for an Auto Scaling group in the Amazon EC2 Auto Scaling User Guide.
Default: 0
seconds
The amount of time, in seconds, that Amazon EC2 Auto Scaling waits before checking the health status of an EC2 instance that has come into service and marking it unhealthy due to a failed Elastic Load Balancing or custom health check. This is useful if your instances do not immediately pass these health checks after they enter the InService
state. For more information, see Set the health check grace period for an Auto Scaling group in the Amazon EC2 Auto Scaling User Guide.
The amount of time, in seconds, that Amazon EC2 Auto Scaling waits before checking the health status of an EC2 instance that has come into service and marking it unhealthy due to a failed health check. This is useful if your instances do not immediately pass their health checks after they enter the InService
state. For more information, see Set the health check grace period for an Auto Scaling group in the Amazon EC2 Auto Scaling User Guide.
Default: 0
seconds
The amount of time, in seconds, that Amazon EC2 Auto Scaling waits before checking the health status of an EC2 instance that has come into service and marking it unhealthy due to a failed health check. This is useful if your instances do not immediately pass their health checks after they enter the InService
state. For more information, see Set the health check grace period for an Auto Scaling group in the Amazon EC2 Auto Scaling User Guide.
The maximum number of items to return with this call. The default value is 100
and the maximum value is 100
.
The maximum number of items to return with this call. The default value is 50
and the maximum value is 100
.
The maximum number of items to return with this call. The default value is 50
and the maximum value is 100
.
The maximum number of items to return with this call. The maximum value is 50
.
The maximum number of instances to return with this call. The maximum value is 50
.
The maximum number of items to return with this call. The default value is 50
and the maximum value is 100
.
Represents a specific metric.
", "refs": { - "MetricStat$Metric": "The CloudWatch metric to return, including the metric name, namespace, and dimensions. To get the exact metric name, namespace, and dimensions, inspect the Metric object that is returned by a call to ListMetrics.
" + "MetricStat$Metric": "The CloudWatch metric to return, including the metric name, namespace, and dimensions. To get the exact metric name, namespace, and dimensions, inspect the Metric object that is returned by a call to ListMetrics.
", + "TargetTrackingMetricStat$Metric": null } }, "MetricCollectionType": { @@ -1434,7 +1469,8 @@ "base": null, "refs": { "CustomizedMetricSpecification$Unit": "The unit of the metric. For a complete list of the units that CloudWatch supports, see the MetricDatum data type in the Amazon CloudWatch API Reference.
", - "MetricStat$Unit": "The unit to use for the returned data points. For a complete list of the units that CloudWatch supports, see the MetricDatum data type in the Amazon CloudWatch API Reference.
" + "MetricStat$Unit": "The unit to use for the returned data points. For a complete list of the units that CloudWatch supports, see the MetricDatum data type in the Amazon CloudWatch API Reference.
", + "TargetTrackingMetricStat$Unit": "The unit to use for the returned data points. For a complete list of the units that CloudWatch supports, see the MetricDatum data type in the Amazon CloudWatch API Reference.
" } }, "Metrics": { @@ -1876,7 +1912,8 @@ "ReturnData": { "base": null, "refs": { - "MetricDataQuery$ReturnData": "Indicates whether to return the timestamps and raw data values of this metric.
If you use any math expressions, specify true
for this value for only the final math expression that the metric specification is based on. You must specify false
for ReturnData
for all the other metrics and expressions used in the metric specification.
If you are only retrieving metrics and not performing any math expressions, do not specify anything for ReturnData
. This sets it to its default (true
).
Indicates whether to return the timestamps and raw data values of this metric.
If you use any math expressions, specify true
for this value for only the final math expression that the metric specification is based on. You must specify false
for ReturnData
for all the other metrics and expressions used in the metric specification.
If you are only retrieving metrics and not performing any math expressions, do not specify anything for ReturnData
. This sets it to its default (true
).
Indicates whether to return the timestamps and raw data values of this metric.
If you use any math expressions, specify true
for this value for only the final math expression that the metric specification is based on. You must specify false
for ReturnData
for all the other metrics and expressions used in the metric specification.
If you are only retrieving metrics and not performing any math expressions, do not specify anything for ReturnData
. This sets it to its default (true
).
The Amazon Resource Names (ARN) of the target groups. You can specify up to 10 target groups. To get the ARN of a target group, use the Elastic Load Balancing DescribeTargetGroups API operation.
", + "AttachLoadBalancerTargetGroupsType$TargetGroupARNs": "The Amazon Resource Names (ARNs) of the target groups. You can specify up to 10 target groups. To get the ARN of a target group, use the Elastic Load Balancing DescribeTargetGroups API operation.
", "AutoScalingGroup$TargetGroupARNs": "The Amazon Resource Names (ARN) of the target groups for your load balancer.
", - "CreateAutoScalingGroupType$TargetGroupARNs": "The Amazon Resource Names (ARN) of the target groups to associate with the Auto Scaling group. Instances are registered as targets with the target groups. The target groups receive incoming traffic and route requests to one or more registered targets. For more information, see Use Elastic Load Balancing to distribute traffic across the instances in your Auto Scaling group in the Amazon EC2 Auto Scaling User Guide.
", + "CreateAutoScalingGroupType$TargetGroupARNs": "The Amazon Resource Names (ARN) of the Elastic Load Balancing target groups to associate with the Auto Scaling group. Instances are registered as targets with the target groups. The target groups receive incoming traffic and route requests to one or more registered targets. For more information, see Use Elastic Load Balancing to distribute traffic across the instances in your Auto Scaling group in the Amazon EC2 Auto Scaling User Guide.
", "DetachLoadBalancerTargetGroupsType$TargetGroupARNs": "The Amazon Resource Names (ARN) of the target groups. You can specify up to 10 target groups.
" } }, @@ -2118,6 +2155,24 @@ "ScalingPolicy$TargetTrackingConfiguration": "A target tracking scaling policy.
" } }, + "TargetTrackingMetricDataQueries": { + "base": null, + "refs": { + "CustomizedMetricSpecification$Metrics": "The metrics to include in the target tracking scaling policy, as a metric data query. This can include both raw metric and metric math expressions.
" + } + }, + "TargetTrackingMetricDataQuery": { + "base": "The metric data to return. Also defines whether this call is returning data for one metric only, or whether it is performing a math expression on the values of returned metric statistics to create a new time series. A time series is a series of data points, each of which is associated with a timestamp.
", + "refs": { + "TargetTrackingMetricDataQueries$member": null + } + }, + "TargetTrackingMetricStat": { + "base": "This structure defines the CloudWatch metric to return, along with the statistic, period, and unit.
For more information about the CloudWatch terminology below, see Amazon CloudWatch concepts in the Amazon CloudWatch User Guide.
", + "refs": { + "TargetTrackingMetricDataQuery$MetricStat": "Information about the metric data to return.
Conditional: Within each TargetTrackingMetricDataQuery
object, you must specify either Expression
or MetricStat
, but not both.
The minimum and maximum total local storage size for an instance type, in GB.
Default: No minimum or maximum limits
" } }, + "TrafficSourceIdentifier": { + "base": "Describes the identifier of a traffic source.
Currently, you must specify an Amazon Resource Name (ARN) for an existing VPC Lattice target group.
", + "refs": { + "TrafficSources$member": null + } + }, + "TrafficSourceState": { + "base": "Describes the state of a traffic source.
", + "refs": { + "TrafficSourceStates$member": null + } + }, + "TrafficSourceStates": { + "base": null, + "refs": { + "DescribeTrafficSourcesResponse$TrafficSources": "Information about the traffic sources.
" + } + }, + "TrafficSources": { + "base": null, + "refs": { + "AttachTrafficSourcesType$TrafficSources": "The unique identifiers of one or more traffic sources. You can specify up to 10 traffic sources.
Currently, you must specify an Amazon Resource Name (ARN) for an existing VPC Lattice target group. Amazon EC2 Auto Scaling registers the running instances with the attached target groups. The target groups receive incoming traffic and route requests to one or more registered targets.
", + "AutoScalingGroup$TrafficSources": "The unique identifiers of the traffic sources.
", + "CreateAutoScalingGroupType$TrafficSources": "Reserved for use with Amazon VPC Lattice, which is in preview release and is subject to change. Do not use this parameter for production workloads. It is also subject to change.
The unique identifiers of one or more traffic sources.
Currently, you must specify an Amazon Resource Name (ARN) for an existing VPC Lattice target group. Amazon EC2 Auto Scaling registers the running instances with the attached target groups. The target groups receive incoming traffic and route requests to one or more registered targets.
", + "DetachTrafficSourcesType$TrafficSources": "The unique identifiers of one or more traffic sources you are detaching. You can specify up to 10 traffic sources.
Currently, you must specify an Amazon Resource Name (ARN) for an existing VPC Lattice target group. When you detach a target group, it enters the Removing
state while deregistering the instances in the group. When all instances are deregistered, then you can no longer describe the target group using the DescribeTrafficSources API call. The instances continue to run.
The token for the next set of items to return. (You received this token from a previous call.)
", "DescribeScheduledActionsType$NextToken": "The token for the next set of items to return. (You received this token from a previous call.)
", "DescribeTagsType$NextToken": "The token for the next set of items to return. (You received this token from a previous call.)
", - "DescribeWarmPoolAnswer$NextToken": "The token for the next set of items to return. (You received this token from a previous call.)
", + "DescribeTrafficSourcesRequest$NextToken": "The token for the next set of items to return. (You received this token from a previous call.)
", + "DescribeTrafficSourcesResponse$NextToken": "This string indicates that the response contains more items than can be returned in a single response. To receive additional items, specify this string for the NextToken
value when requesting the next set of items. This value is null when there are no more items to return.
This string indicates that the response contains more items than can be returned in a single response. To receive additional items, specify this string for the NextToken
value when requesting the next set of items. This value is null when there are no more items to return.
The token for the next set of instances to return. (You received this token from a previous call.)
", "FailedScheduledUpdateGroupActionRequest$ErrorMessage": "The error message accompanying the error code.
", "Filter$Name": "The name of the filter.
The valid values for Name
depend on which API operation you're using with the filter (DescribeAutoScalingGroups or DescribeTags).
DescribeAutoScalingGroups
Valid values for Name
include the following:
tag-key
- Accepts tag keys. The results only include information about the Auto Scaling groups associated with these tag keys.
tag-value
- Accepts tag values. The results only include information about the Auto Scaling groups associated with these tag values.
tag:<key>
- Accepts the key/value combination of the tag. Use the tag key in the filter name and the tag value as the filter value. The results only include information about the Auto Scaling groups associated with the specified key/value combination.
DescribeTags
Valid values for Name
include the following:
auto-scaling-group
- Accepts the names of Auto Scaling groups. The results only include information about the tags associated with these Auto Scaling groups.
key
- Accepts tag keys. The results only include information about the tags associated with these tag keys.
value
- Accepts tag values. The results only include information about the tags associated with these tag values.
propagate-at-launch
- Accepts a Boolean value, which specifies whether tags propagate to instances at launch. The results only include information about the tags associated with the specified Boolean value.
The allocation strategy to apply to your On-Demand Instances when they are launched. Possible instance types are determined by the launch template overrides that you specify.
The following lists the valid values:
Uses price to determine which instance types are the highest priority, launching the lowest priced instance types within an Availability Zone first. This is the default value for Auto Scaling groups that specify InstanceRequirements.
You set the order of instance types for the launch template overrides from highest to lowest priority (from first to last in the list). Amazon EC2 Auto Scaling launches your highest priority instance types first. If all your On-Demand capacity cannot be fulfilled using your highest priority instance type, then Amazon EC2 Auto Scaling launches the remaining capacity using the second priority instance type, and so on. This is the default value for Auto Scaling groups that don't specify InstanceRequirements and cannot be used for groups that do.
The allocation strategy to apply to your Spot Instances when they are launched. Possible instance types are determined by the launch template overrides that you specify.
The following lists the valid values:
Requests Spot Instances using pools that are optimally chosen based on the available Spot capacity. This strategy has the lowest risk of interruption. To give certain instance types a higher chance of launching first, use capacity-optimized-prioritized
.
You set the order of instance types for the launch template overrides from highest to lowest priority (from first to last in the list). Amazon EC2 Auto Scaling honors the instance type priorities on a best effort basis but optimizes for capacity first. Note that if the On-Demand allocation strategy is set to prioritized
, the same priority is applied when fulfilling On-Demand capacity. This is not a valid value for Auto Scaling groups that specify InstanceRequirements.
Requests Spot Instances using the lowest priced pools within an Availability Zone, across the number of Spot pools that you specify for the SpotInstancePools
property. To ensure that your desired capacity is met, you might receive Spot Instances from several pools. This is the default value, but it might lead to high interruption rates because this strategy only considers instance price and not available capacity.
Amazon EC2 Auto Scaling identifies the pools with the highest capacity availability for the number of instances that are launching. This means that we will request Spot Instances from the pools that we believe have the lowest chance of interruption in the near term. Amazon EC2 Auto Scaling then requests Spot Instances from the lowest priced of these pools.
The allocation strategy to apply to your Spot Instances when they are launched. Possible instance types are determined by the launch template overrides that you specify.
The following lists the valid values:
Requests Spot Instances using pools that are optimally chosen based on the available Spot capacity. This strategy has the lowest risk of interruption. To give certain instance types a higher chance of launching first, use capacity-optimized-prioritized
.
You set the order of instance types for the launch template overrides from highest to lowest priority (from first to last in the list). Amazon EC2 Auto Scaling honors the instance type priorities on a best effort basis but optimizes for capacity first. Note that if the On-Demand allocation strategy is set to prioritized
, the same priority is applied when fulfilling On-Demand capacity. This is not a valid value for Auto Scaling groups that specify InstanceRequirements.
Requests Spot Instances using the lowest priced pools within an Availability Zone, across the number of Spot pools that you specify for the SpotInstancePools
property. To ensure that your desired capacity is met, you might receive Spot Instances from several pools. This is the default value, but it might lead to high interruption rates because this strategy only considers instance price and not available capacity.
The price and capacity optimized allocation strategy looks at both price and capacity to select the Spot Instance pools that are the least likely to be interrupted and have the lowest possible price.
The token for the next set of items to return. (You received this token from a previous call.)
", "LaunchConfigurationsType$NextToken": "A string that indicates that the response contains more items than can be returned in a single response. To receive additional items, specify this string for the NextToken
value when requesting the next set of items. This value is null when there are no more items to return.
A string that indicates that the response contains more items than can be returned in a single response. To receive additional items, specify this string for the NextToken
value when requesting the next set of items. This value is null when there are no more items to return.
One or more subnet IDs, if applicable, separated by commas.
", "CreateAutoScalingGroupType$VPCZoneIdentifier": "A comma-separated list of subnet IDs for a virtual private cloud (VPC) where instances in the Auto Scaling group can be created. If you specify VPCZoneIdentifier
with AvailabilityZones
, the subnets that you specify must reside in those Availability Zones.
The math expression to perform on the returned data, if this object is performing a math expression. This expression can use the Id
of the other metrics to refer to those metrics, and can also use the Id
of other expressions to use the result of those expressions.
Conditional: Within each TargetTrackingMetricDataQuery
object, you must specify either Expression
or MetricStat
, but not both.
A comma-separated list of subnet IDs for a virtual private cloud (VPC). If you specify VPCZoneIdentifier
with AvailabilityZones
, the subnets that you specify must reside in those Availability Zones.
The name of the Auto Scaling group.
", "AttachLoadBalancerTargetGroupsType$AutoScalingGroupName": "The name of the Auto Scaling group.
", "AttachLoadBalancersType$AutoScalingGroupName": "The name of the Auto Scaling group.
", + "AttachTrafficSourcesType$AutoScalingGroupName": "The name of the Auto Scaling group.
", "AutoScalingGroup$AutoScalingGroupName": "The name of the Auto Scaling group.
", "AutoScalingGroup$LaunchConfigurationName": "The name of the associated launch configuration.
", "AutoScalingGroup$PlacementGroup": "The name of the placement group into which to launch your instances, if any.
", @@ -2358,10 +2444,13 @@ "DescribePoliciesType$AutoScalingGroupName": "The name of the Auto Scaling group.
", "DescribeScalingActivitiesType$AutoScalingGroupName": "The name of the Auto Scaling group.
", "DescribeScheduledActionsType$AutoScalingGroupName": "The name of the Auto Scaling group.
", + "DescribeTrafficSourcesRequest$AutoScalingGroupName": "The name of the Auto Scaling group.
", + "DescribeTrafficSourcesRequest$TrafficSourceType": "The type of traffic source you are describing. Currently, the only valid value is vpc-lattice
.
The name of the Auto Scaling group.
", "DetachInstancesQuery$AutoScalingGroupName": "The name of the Auto Scaling group.
", "DetachLoadBalancerTargetGroupsType$AutoScalingGroupName": "The name of the Auto Scaling group.
", "DetachLoadBalancersType$AutoScalingGroupName": "The name of the Auto Scaling group.
", + "DetachTrafficSourcesType$AutoScalingGroupName": "The name of the Auto Scaling group.
", "DisableMetricsCollectionQuery$AutoScalingGroupName": "The name of the Auto Scaling group.
", "Ebs$SnapshotId": "The snapshot ID of the volume to use.
You must specify either a VolumeSize
or a SnapshotId
.
The name of the Auto Scaling group.
", @@ -2445,6 +2534,8 @@ "StartInstanceRefreshType$AutoScalingGroupName": "The name of the Auto Scaling group.
", "SuspendedProcess$ProcessName": "The name of the suspended process.
", "SuspendedProcess$SuspensionReason": "The reason that the process was suspended.
", + "TargetTrackingMetricDataQuery$Id": "A short name that identifies the object's results in the response. This name must be unique among all TargetTrackingMetricDataQuery
objects specified for a single scaling policy. If you are performing math expressions on this set of data, this name represents that data and can serve as a variable in the mathematical expression. The valid characters are letters, numbers, and underscores. The first character must be a lowercase letter.
The following are the possible states for a VPC Lattice target group:
Adding
- The Auto Scaling instances are being registered with the target group.
Added
- All Auto Scaling instances are registered with the target group.
InService
- At least one Auto Scaling instance passed the VPC_LATTICE
health check.
Removing
- The Auto Scaling instances are being deregistered from the target group. If connection draining is enabled, VPC Lattice waits for in-flight requests to complete before deregistering the instances.
Removed
- All Auto Scaling instances are deregistered from the target group.
The name of the Auto Scaling group.
", "UpdateAutoScalingGroupType$LaunchConfigurationName": "The name of the launch configuration. If you specify LaunchConfigurationName
in your update request, you can't specify LaunchTemplate
or MixedInstancesPolicy
.
The name of an existing placement group into which to launch your instances. For more information, see Placement groups in the Amazon EC2 User Guide for Linux Instances.
A cluster placement group is a logical grouping of instances within a single Availability Zone. You cannot specify multiple Availability Zones and a cluster placement group.
The service to use for the health checks. The valid values are EC2
and ELB
. If you configure an Auto Scaling group to use ELB
health checks, it considers the instance unhealthy if it fails either the EC2 status checks or the load balancer health checks.
Determines whether any additional health checks are performed on the instances in this group. Amazon EC2 health checks are always on.
The valid values are EC2
(default), ELB
, and VPC_LATTICE
. The VPC_LATTICE
health check type is reserved for use with VPC Lattice, which is in preview release and is subject to change.
The lifecycle state for the instance. The Quarantined
state is not used. For information about lifecycle states, see Instance lifecycle in the Amazon EC2 Auto Scaling User Guide.
Valid values: Pending
| Pending:Wait
| Pending:Proceed
| Quarantined
| InService
| Terminating
| Terminating:Wait
| Terminating:Proceed
| Terminated
| Detaching
| Detached
| EnteringStandby
| Standby
| Warmed:Pending
| Warmed:Pending:Wait
| Warmed:Pending:Proceed
| Warmed:Terminating
| Warmed:Terminating:Wait
| Warmed:Terminating:Proceed
| Warmed:Terminated
| Warmed:Stopped
| Warmed:Running
The last reported health status of this instance. \"Healthy\" means that the instance is healthy and should remain in service. \"Unhealthy\" means that the instance is unhealthy and Amazon EC2 Auto Scaling should terminate and replace it.
", "AutoScalingInstanceDetails$WeightedCapacity": "The number of capacity units contributed by the instance based on its instance type.
Valid Range: Minimum value of 1. Maximum value of 999.
", - "CreateAutoScalingGroupType$HealthCheckType": "The service to use for the health checks. The valid values are EC2
(default) and ELB
. If you configure an Auto Scaling group to use load balancer (ELB) health checks, it considers the instance unhealthy if it fails either the EC2 status checks or the load balancer health checks. For more information, see Health checks for Auto Scaling instances in the Amazon EC2 Auto Scaling User Guide.
Determines whether any additional health checks are performed on the instances in this group. Amazon EC2 health checks are always on. For more information, see Health checks for Auto Scaling instances in the Amazon EC2 Auto Scaling User Guide.
The valid values are EC2
(default), ELB
, and VPC_LATTICE
. The VPC_LATTICE
health check type is reserved for use with VPC Lattice, which is in preview release and is subject to change.
The last reported health status of the instance. \"Healthy\" means that the instance is healthy and should remain in service. \"Unhealthy\" means that the instance is unhealthy and that Amazon EC2 Auto Scaling should terminate and replace it.
", "Instance$WeightedCapacity": "The number of capacity units contributed by the instance based on its instance type.
Valid Range: Minimum value of 1. Maximum value of 999.
", "LaunchTemplateOverrides$WeightedCapacity": "If you provide a list of instance types to use, you can specify the number of capacity units provided by each instance type in terms of virtual CPUs, memory, storage, throughput, or other relative performance characteristic. When a Spot or On-Demand Instance is launched, the capacity units count toward the desired capacity. Amazon EC2 Auto Scaling launches instances until the desired capacity is totally fulfilled, even if this results in an overage. For example, if there are two units remaining to fulfill capacity, and Amazon EC2 Auto Scaling can only launch an instance with a WeightedCapacity
of five units, the instance is launched, and the desired capacity is exceeded by three units. For more information, see Configuring instance weighting for Amazon EC2 Auto Scaling in the Amazon EC2 Auto Scaling User Guide. Value must be in the range of 1–999.
If you specify a value for WeightedCapacity
for one instance type, you must specify a value for WeightedCapacity
for all of them.
Every Auto Scaling group has three size parameters (DesiredCapacity
, MaxSize
, and MinSize
). Usually, you set these sizes based on a specific number of instances. However, if you configure a mixed instances policy that defines weights for the instance types, you must specify these sizes with the same units that you use for weighting instances.
The aggregation type for the CloudWatch metrics. The valid values are Minimum
, Maximum
, and Average
. If the aggregation type is null, the value is treated as Average
.
Valid only if the policy type is StepScaling
.
The aggregation type for the CloudWatch metrics. The valid values are Minimum
, Maximum
, and Average
.
The health status of the instance. Set to Healthy
to have the instance remain in service. Set to Unhealthy
to have the instance be out of service. Amazon EC2 Auto Scaling terminates and replaces the unhealthy instance.
The service to use for the health checks. The valid values are EC2
and ELB
. If you configure an Auto Scaling group to use ELB
health checks, it considers the instance unhealthy if it fails either the EC2 status checks or the load balancer health checks.
Determines whether any additional health checks are performed on the instances in this group. Amazon EC2 health checks are always on.
The valid values are EC2
(default), ELB
, and VPC_LATTICE
. The VPC_LATTICE
health check type is reserved for use with VPC Lattice, which is in preview release and is subject to change.
The Amazon Resource Name (ARN) of the target group.
", - "TargetGroupARNs$member": null + "TargetGroupARNs$member": null, + "TrafficSourceIdentifier$Identifier": "The unique identifier of the traffic source.
", + "TrafficSourceState$TrafficSource": "The unique identifier of the traffic source. Currently, this is the Amazon Resource Name (ARN) for a VPC Lattice target group.
" } }, "XmlStringMaxLen64": { @@ -2489,13 +2582,15 @@ "XmlStringMetricLabel": { "base": null, "refs": { - "MetricDataQuery$Label": "A human-readable label for this metric or expression. This is especially useful if this is a math expression, so that you know what the value represents.
" + "MetricDataQuery$Label": "A human-readable label for this metric or expression. This is especially useful if this is a math expression, so that you know what the value represents.
", + "TargetTrackingMetricDataQuery$Label": "A human-readable label for this metric or expression. This is especially useful if this is a math expression, so that you know what the value represents.
" } }, "XmlStringMetricStat": { "base": null, "refs": { - "MetricStat$Stat": "The statistic to return. It can include any CloudWatch statistic or extended statistic. For a list of valid values, see the table in Statistics in the Amazon CloudWatch User Guide.
The most commonly used metrics for predictive scaling are Average
and Sum
.
The statistic to return. It can include any CloudWatch statistic or extended statistic. For a list of valid values, see the table in Statistics in the Amazon CloudWatch User Guide.
The most commonly used metrics for predictive scaling are Average
and Sum
.
The statistic to return. It can include any CloudWatch statistic or extended statistic. For a list of valid values, see the table in Statistics in the Amazon CloudWatch User Guide.
The most commonly used metrics for scaling is Average
Creates a component type.
", "CreateEntity": "Creates an entity.
", "CreateScene": "Creates a scene.
", + "CreateSyncJob": "This action creates a SyncJob.
", "CreateWorkspace": "Creates a workplace.
", "DeleteComponentType": "Deletes a component type.
", "DeleteEntity": "Deletes an entity.
", "DeleteScene": "Deletes a scene.
", + "DeleteSyncJob": "Delete the SyncJob.
", "DeleteWorkspace": "Deletes a workspace.
", "ExecuteQuery": "Run queries to access information from your knowledge graph of entities within individual workspaces.
", "GetComponentType": "Retrieves information about a component type.
", @@ -18,10 +20,13 @@ "GetPropertyValue": "Gets the property values for a component, component type, entity, or workspace.
You must specify a value for either componentName
, componentTypeId
, entityId
, or workspaceId
.
Retrieves information about the history of a time series property value for a component, component type, entity, or workspace.
You must specify a value for workspaceId
. For entity-specific queries, specify values for componentName
and entityId
. For cross-entity quries, specify a value for componentTypeId
.
Retrieves information about a scene.
", + "GetSyncJob": "Gets the SyncJob.
", "GetWorkspace": "Retrieves information about a workspace.
", "ListComponentTypes": "Lists all component types in a workspace.
", "ListEntities": "Lists all entities in a workspace.
", "ListScenes": "Lists all scenes in a workspace.
", + "ListSyncJobs": "List all SyncJobs.
", + "ListSyncResources": "Lists the sync resources.
", "ListTagsForResource": "Lists all tags associated with a resource.
", "ListWorkspaces": "Retrieves information about workspaces in the current account.
", "TagResource": "Adds tags to a resource.
", @@ -184,6 +189,15 @@ "UpdateComponentTypeResponse$componentTypeId": "The ID of the component type.
" } }, + "ComponentTypeName": { + "base": null, + "refs": { + "ComponentTypeSummary$componentTypeName": "The component type name.
", + "CreateComponentTypeRequest$componentTypeName": "A friendly name for the component type.
", + "GetComponentTypeResponse$componentTypeName": "The component type name.
", + "UpdateComponentTypeRequest$componentTypeName": "The component type name.
" + } + }, "ComponentTypeSummaries": { "base": null, "refs": { @@ -278,6 +292,16 @@ "refs": { } }, + "CreateSyncJobRequest": { + "base": null, + "refs": { + } + }, + "CreateSyncJobResponse": { + "base": null, + "refs": { + } + }, "CreateWorkspaceRequest": { "base": null, "refs": { @@ -361,6 +385,16 @@ "refs": { } }, + "DeleteSyncJobRequest": { + "base": null, + "refs": { + } + }, + "DeleteSyncJobResponse": { + "base": null, + "refs": { + } + }, "DeleteWorkspaceRequest": { "base": null, "refs": { @@ -461,7 +495,9 @@ "ErrorDetails": { "base": "The error details.
", "refs": { - "Status$error": "The error message.
" + "Status$error": "The error message.
", + "SyncJobStatus$error": "The SyncJob error.
", + "SyncResourceStatus$error": "The status error.
" } }, "ErrorEntries": { @@ -613,6 +649,16 @@ "refs": { } }, + "GetSyncJobRequest": { + "base": null, + "refs": { + } + }, + "GetSyncJobResponse": { + "base": null, + "refs": { + } + }, "GetWorkspaceRequest": { "base": null, "refs": { @@ -640,11 +686,13 @@ "CreateEntityRequest$workspaceId": "The ID of the workspace that contains the entity.
", "CreateSceneRequest$workspaceId": "The ID of the workspace that contains the scene.
", "CreateSceneRequest$sceneId": "The ID of the scene.
", + "CreateSyncJobRequest$workspaceId": "The workspace Id.
", "CreateWorkspaceRequest$workspaceId": "The ID of the workspace.
", "DeleteComponentTypeRequest$workspaceId": "The ID of the workspace that contains the component type.
", "DeleteEntityRequest$workspaceId": "The ID of the workspace that contains the entity to delete.
", "DeleteSceneRequest$workspaceId": "The ID of the workspace.
", "DeleteSceneRequest$sceneId": "The ID of the scene to delete.
", + "DeleteSyncJobRequest$workspaceId": "The workspace Id.
", "DeleteWorkspaceRequest$workspaceId": "The ID of the workspace to delete.
", "ExecuteQueryRequest$workspaceId": "The ID of the workspace.
", "GetComponentTypeRequest$workspaceId": "The ID of the workspace that contains the component type.
", @@ -657,13 +705,22 @@ "GetSceneRequest$sceneId": "The ID of the scene.
", "GetSceneResponse$workspaceId": "The ID of the workspace that contains the scene.
", "GetSceneResponse$sceneId": "The ID of the scene.
", + "GetSyncJobRequest$workspaceId": "The workspace Id.
", + "GetSyncJobResponse$workspaceId": "The ID of the workspace that contains the sync job.
", "GetWorkspaceResponse$workspaceId": "The ID of the workspace.
", "ListComponentTypesRequest$workspaceId": "The ID of the workspace.
", "ListComponentTypesResponse$workspaceId": "The ID of the workspace.
", "ListEntitiesRequest$workspaceId": "The ID of the workspace.
", "ListScenesRequest$workspaceId": "The ID of the workspace that contains the scenes.
", + "ListSyncJobsRequest$workspaceId": "The ID of the workspace that contains the sync job.
", + "ListSyncResourcesRequest$workspaceId": "The ID of the workspace that contains the sync job.
", "SceneSummary$sceneId": "The ID of the scene.
", - "UpdateComponentTypeRequest$workspaceId": "The ID of the workspace that contains the component type.
", + "SyncJobSummary$workspaceId": "The ID of the workspace that contains the sync job.
", + "SyncResourceFilter$resourceId": "The sync resource filter resource Id.
", + "SyncResourceFilter$externalId": "The external Id.
", + "SyncResourceSummary$externalId": "The external Id.
", + "SyncResourceSummary$resourceId": "The resource Id.
", + "UpdateComponentTypeRequest$workspaceId": "The ID of the workspace.
", "UpdateComponentTypeResponse$workspaceId": "The ID of the workspace that contains the component type.
", "UpdateEntityRequest$workspaceId": "The ID of the workspace that contains the entity.
", "UpdateSceneRequest$workspaceId": "The ID of the workspace that contains the scene.
", @@ -773,6 +830,26 @@ "refs": { } }, + "ListSyncJobsRequest": { + "base": null, + "refs": { + } + }, + "ListSyncJobsResponse": { + "base": null, + "refs": { + } + }, + "ListSyncResourcesRequest": { + "base": null, + "refs": { + } + }, + "ListSyncResourcesResponse": { + "base": null, + "refs": { + } + }, "ListTagsForResourceRequest": { "base": null, "refs": { @@ -809,6 +886,8 @@ "ListComponentTypesResponse$maxResults": "Specifies the maximum number of results to display.
", "ListEntitiesRequest$maxResults": "The maximum number of results to return at one time. The default is 25.
Valid Range: Minimum value of 1. Maximum value of 250.
", "ListScenesRequest$maxResults": "Specifies the maximum number of results to display.
", + "ListSyncJobsRequest$maxResults": "The maximum number of results to return at one time. The default is 50.
Valid Range: Minimum value of 0. Maximum value of 200.
", + "ListSyncResourcesRequest$maxResults": "The maximum number of results to return at one time. The default is 50.
Valid Range: Minimum value of 0. Maximum value of 200.
", "ListTagsForResourceRequest$maxResults": "The maximum number of results to return at one time. The default is 25.
Valid Range: Minimum value of 1. Maximum value of 250.
", "ListWorkspacesRequest$maxResults": "The maximum number of results to return at one time. The default is 25.
Valid Range: Minimum value of 1. Maximum value of 250.
" } @@ -858,6 +937,10 @@ "ListEntitiesResponse$nextToken": "The string that specifies the next page of results.
", "ListScenesRequest$nextToken": "The string that specifies the next page of results.
", "ListScenesResponse$nextToken": "The string that specifies the next page of results.
", + "ListSyncJobsRequest$nextToken": "The string that specifies the next page of results.
", + "ListSyncJobsResponse$nextToken": "The string that specifies the next page of results.
", + "ListSyncResourcesRequest$nextToken": "The string that specifies the next page of results.
", + "ListSyncResourcesResponse$nextToken": "The string that specifies the next page of results.
", "ListTagsForResourceRequest$nextToken": "The string that specifies the next page of results.
", "ListTagsForResourceResponse$nextToken": "The string that specifies the next page of results.
", "ListWorkspacesRequest$nextToken": "The string that specifies the next page of results.
", @@ -966,6 +1049,13 @@ "GetComponentTypeResponse$propertyDefinitions": "An object that maps strings to the property definitions in the component type. Each string in the mapping must be unique to this object.
" } }, + "PropertyDisplayName": { + "base": null, + "refs": { + "PropertyDefinitionRequest$displayName": "A friendly name for the property.
", + "PropertyDefinitionResponse$displayName": "A friendly name for the property.
" + } + }, "PropertyFilter": { "base": "An object that filters items returned by a property request.
", "refs": { @@ -1150,7 +1240,9 @@ "RoleArn": { "base": null, "refs": { + "CreateSyncJobRequest$syncRole": "The SyncJob IAM role. This IAM role is used by the sync job to read from the syncSource, and create, update or delete the corresponding resources.
", "CreateWorkspaceRequest$role": "The ARN of the execution role associated with the workspace.
", + "GetSyncJobResponse$syncRole": "The sync IAM role.
", "GetWorkspaceResponse$role": "The ARN of the execution role associated with the workspace.
", "UpdateWorkspaceRequest$role": "The ARN of the execution role associated with the workspace.
" } @@ -1276,6 +1368,91 @@ "SelectedPropertyList$member": null } }, + "SyncJobState": { + "base": null, + "refs": { + "CreateSyncJobResponse$state": "The SyncJob response state.
", + "DeleteSyncJobResponse$state": "The SyncJob response state.
", + "SyncJobStatus$state": "The SyncJob status state.
" + } + }, + "SyncJobStatus": { + "base": "The SyncJob status.
", + "refs": { + "GetSyncJobResponse$status": "The SyncJob response status.
", + "SyncJobSummary$status": "The SyncJob summaries status.
" + } + }, + "SyncJobSummaries": { + "base": null, + "refs": { + "ListSyncJobsResponse$syncJobSummaries": "The listed SyncJob summaries.
" + } + }, + "SyncJobSummary": { + "base": "The SyncJob summary.
", + "refs": { + "SyncJobSummaries$member": null + } + }, + "SyncResourceFilter": { + "base": "The sync resource filter.
", + "refs": { + "SyncResourceFilters$member": null + } + }, + "SyncResourceFilters": { + "base": null, + "refs": { + "ListSyncResourcesRequest$filters": "A list of objects that filter the request.
" + } + }, + "SyncResourceState": { + "base": null, + "refs": { + "SyncResourceFilter$state": "The sync resource filter's state.
", + "SyncResourceStatus$state": "The sync resource status state.
" + } + }, + "SyncResourceStatus": { + "base": "The sync resource status.
", + "refs": { + "SyncResourceSummary$status": "The sync resource summary status.
" + } + }, + "SyncResourceSummaries": { + "base": null, + "refs": { + "ListSyncResourcesResponse$syncResources": "The sync resources.
" + } + }, + "SyncResourceSummary": { + "base": "The sync resource summary.
", + "refs": { + "SyncResourceSummaries$member": null + } + }, + "SyncResourceType": { + "base": null, + "refs": { + "SyncResourceFilter$resourceType": "The sync resource filter resoucre type
", + "SyncResourceSummary$resourceType": "The resource type.
" + } + }, + "SyncSource": { + "base": null, + "refs": { + "ComponentResponse$syncSource": "The syncSource of the sync job, if this entity was created by a sync job.
", + "CreateSyncJobRequest$syncSource": "The sync source.
Currently the only supported syncSoucre is SITEWISE
.
The sync source.
Currently the only supported syncSoucre is SITEWISE
.
The syncSource of the sync job, if this entity was created by a sync job.
", + "GetEntityResponse$syncSource": "The syncSource of the sync job, if this entity was created by a sync job.
", + "GetSyncJobRequest$syncSource": "The sync soucre.
Currently the only supported syncSoucre is SITEWISE
.
The sync soucre.
Currently the only supported syncSoucre is SITEWISE
.
The sync soucre.
Currently the only supported syncSoucre is SITEWISE
.
The sync source.
" + } + }, "TabularConditions": { "base": "The tabular conditions.
", "refs": { @@ -1313,6 +1490,7 @@ "CreateComponentTypeRequest$tags": "Metadata that you can use to manage the component type.
", "CreateEntityRequest$tags": "Metadata that you can use to manage the entity.
", "CreateSceneRequest$tags": "Metadata that you can use to manage the scene.
", + "CreateSyncJobRequest$tags": "The SyncJob tags.
", "CreateWorkspaceRequest$tags": "Metadata that you can use to manage the workspace
", "ListTagsForResourceResponse$tags": "Metadata that you can use to manage a resource.
", "TagResourceRequest$tags": "Metadata to add to this resource.
" @@ -1355,6 +1533,7 @@ "CreateComponentTypeResponse$creationDateTime": "The date and time when the entity was created.
", "CreateEntityResponse$creationDateTime": "The date and time when the entity was created.
", "CreateSceneResponse$creationDateTime": "The date and time when the scene was created.
", + "CreateSyncJobResponse$creationDateTime": "The date and time for the SyncJob creation.
", "CreateWorkspaceResponse$creationDateTime": "The date and time when the workspace was created.
", "EntitySummary$creationDateTime": "The date and time when the entity was created.
", "EntitySummary$updateDateTime": "The last date and time when the entity was updated.
", @@ -1366,6 +1545,8 @@ "GetPropertyValueHistoryRequest$endDateTime": "The date and time of the latest property value to return.
", "GetSceneResponse$creationDateTime": "The date and time when the scene was created.
", "GetSceneResponse$updateDateTime": "The date and time when the scene was last updated.
", + "GetSyncJobResponse$creationDateTime": "The creation date and time.
", + "GetSyncJobResponse$updateDateTime": "The update date and time.
", "GetWorkspaceResponse$creationDateTime": "The date and time when the workspace was created.
", "GetWorkspaceResponse$updateDateTime": "The date and time when the workspace was last updated.
", "PricingPlan$effectiveDateTime": "The effective date and time of the pricing plan.
", @@ -1373,6 +1554,9 @@ "PropertyValue$timestamp": "The timestamp of a value for a time series property.
", "SceneSummary$creationDateTime": "The date and time when the scene was created.
", "SceneSummary$updateDateTime": "The date and time when the scene was last updated.
", + "SyncJobSummary$creationDateTime": "The creation date and time.
", + "SyncJobSummary$updateDateTime": "The update date and time.
", + "SyncResourceSummary$updateDateTime": "The update date and time.
", "UpdateEntityResponse$updateDateTime": "The date and time when the entity was last updated.
", "UpdateSceneResponse$updateDateTime": "The date and time when the scene was last updated.
", "UpdateWorkspaceResponse$updateDateTime": "The date and time of the current update.
", @@ -1392,14 +1576,17 @@ "CreateComponentTypeResponse$arn": "The ARN of the component type.
", "CreateEntityResponse$arn": "The ARN of the entity.
", "CreateSceneResponse$arn": "The ARN of the scene.
", + "CreateSyncJobResponse$arn": "The SyncJob ARN.
", "CreateWorkspaceResponse$arn": "The ARN of the workspace.
", "EntitySummary$arn": "The ARN of the entity.
", "GetComponentTypeResponse$arn": "The ARN of the component type.
", "GetEntityResponse$arn": "The ARN of the entity.
", "GetSceneResponse$arn": "The ARN of the scene.
", + "GetSyncJobResponse$arn": "The sync job ARN.
", "GetWorkspaceResponse$arn": "The ARN of the workspace.
", "ListTagsForResourceRequest$resourceARN": "The ARN of the resource.
", "SceneSummary$arn": "The ARN of the scene.
", + "SyncJobSummary$arn": "The SyncJob summary ARN.
", "TagResourceRequest$resourceARN": "The ARN of the resource.
", "UntagResourceRequest$resourceARN": "The ARN of the resource.
", "UpdateComponentTypeResponse$arn": "The ARN of the component type.
", diff --git a/models/apis/iottwinmaker/2021-11-29/endpoint-rule-set-1.json b/models/apis/iottwinmaker/2021-11-29/endpoint-rule-set-1.json index bac8c0b5502..2d98fd22231 100644 --- a/models/apis/iottwinmaker/2021-11-29/endpoint-rule-set-1.json +++ b/models/apis/iottwinmaker/2021-11-29/endpoint-rule-set-1.json @@ -3,7 +3,7 @@ "parameters": { "Region": { "builtIn": "AWS::Region", - "required": false, + "required": true, "documentation": "The AWS region used to dispatch the request.", "type": "String" }, @@ -52,15 +52,6 @@ "ref": "Endpoint" } ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" } ], "type": "tree", diff --git a/models/apis/iottwinmaker/2021-11-29/endpoint-tests-1.json b/models/apis/iottwinmaker/2021-11-29/endpoint-tests-1.json index a9951055187..e3f5c81fa83 100644 --- a/models/apis/iottwinmaker/2021-11-29/endpoint-tests-1.json +++ b/models/apis/iottwinmaker/2021-11-29/endpoint-tests-1.json @@ -9,8 +9,8 @@ }, "params": { "UseFIPS": true, - "Region": "eu-central-1", - "UseDualStack": true + "UseDualStack": true, + "Region": "eu-central-1" } }, { @@ -22,8 +22,8 @@ }, "params": { "UseFIPS": true, - "Region": "eu-central-1", - "UseDualStack": false + "UseDualStack": false, + "Region": "eu-central-1" } }, { @@ -35,8 +35,8 @@ }, "params": { "UseFIPS": false, - "Region": "eu-central-1", - "UseDualStack": true + "UseDualStack": true, + "Region": "eu-central-1" } }, { @@ -48,8 +48,8 @@ }, "params": { "UseFIPS": false, - "Region": "eu-central-1", - "UseDualStack": false + "UseDualStack": false, + "Region": "eu-central-1" } }, { @@ -61,8 +61,8 @@ }, "params": { "UseFIPS": true, - "Region": "us-west-2", - "UseDualStack": true + "UseDualStack": true, + "Region": "us-west-2" } }, { @@ -74,8 +74,8 @@ }, "params": { "UseFIPS": true, - "Region": "us-west-2", - "UseDualStack": false + "UseDualStack": false, + "Region": "us-west-2" } }, { @@ -87,8 +87,8 @@ }, "params": { "UseFIPS": false, - "Region": "us-west-2", - "UseDualStack": true + "UseDualStack": true, + "Region": "us-west-2" } }, { @@ -100,8 +100,8 @@ }, "params": { "UseFIPS": false, - "Region": "us-west-2", - "UseDualStack": false + "UseDualStack": false, + "Region": "us-west-2" } }, { @@ -113,8 +113,8 @@ }, "params": { "UseFIPS": true, - "Region": "eu-west-1", - "UseDualStack": true + "UseDualStack": true, + "Region": "eu-west-1" } }, { @@ -126,8 +126,8 @@ }, "params": { "UseFIPS": true, - "Region": "eu-west-1", - "UseDualStack": false + "UseDualStack": false, + "Region": "eu-west-1" } }, { @@ -139,8 +139,8 @@ }, "params": { "UseFIPS": false, - "Region": "eu-west-1", - "UseDualStack": true + "UseDualStack": true, + "Region": "eu-west-1" } }, { @@ -152,8 +152,8 @@ }, "params": { "UseFIPS": false, - "Region": "eu-west-1", - "UseDualStack": false + "UseDualStack": false, + "Region": "eu-west-1" } }, { @@ -165,8 +165,8 @@ }, "params": { "UseFIPS": true, - "Region": "ap-southeast-1", - "UseDualStack": true + "UseDualStack": true, + "Region": "ap-southeast-1" } }, { @@ -178,8 +178,8 @@ }, "params": { "UseFIPS": true, - "Region": "ap-southeast-1", - "UseDualStack": false + "UseDualStack": false, + "Region": "ap-southeast-1" } }, { @@ -191,8 +191,8 @@ }, "params": { "UseFIPS": false, - "Region": "ap-southeast-1", - "UseDualStack": true + "UseDualStack": true, + "Region": "ap-southeast-1" } }, { @@ -204,8 +204,8 @@ }, "params": { "UseFIPS": false, - "Region": "ap-southeast-1", - "UseDualStack": false + "UseDualStack": false, + "Region": "ap-southeast-1" } }, { @@ -217,8 +217,8 @@ }, "params": { "UseFIPS": true, - "Region": "ap-southeast-2", - "UseDualStack": true + "UseDualStack": true, + "Region": "ap-southeast-2" } }, { @@ -230,8 +230,8 @@ }, "params": { "UseFIPS": true, - "Region": "ap-southeast-2", - "UseDualStack": false + "UseDualStack": false, + "Region": "ap-southeast-2" } }, { @@ -243,8 +243,8 @@ }, "params": { "UseFIPS": false, - "Region": "ap-southeast-2", - "UseDualStack": true + "UseDualStack": true, + "Region": "ap-southeast-2" } }, { @@ -256,8 +256,8 @@ }, "params": { "UseFIPS": false, - "Region": "ap-southeast-2", - "UseDualStack": false + "UseDualStack": false, + "Region": "ap-southeast-2" } }, { @@ -269,8 +269,8 @@ }, "params": { "UseFIPS": true, - "Region": "us-east-1", - "UseDualStack": true + "UseDualStack": true, + "Region": "us-east-1" } }, { @@ -282,8 +282,8 @@ }, "params": { "UseFIPS": true, - "Region": "us-east-1", - "UseDualStack": false + "UseDualStack": false, + "Region": "us-east-1" } }, { @@ -295,8 +295,8 @@ }, "params": { "UseFIPS": false, - "Region": "us-east-1", - "UseDualStack": true + "UseDualStack": true, + "Region": "us-east-1" } }, { @@ -308,8 +308,8 @@ }, "params": { "UseFIPS": false, - "Region": "us-east-1", - "UseDualStack": false + "UseDualStack": false, + "Region": "us-east-1" } }, { @@ -321,8 +321,8 @@ }, "params": { "UseFIPS": false, - "Region": "us-east-1", "UseDualStack": false, + "Region": "us-east-1", "Endpoint": "https://example.com" } }, @@ -333,8 +333,8 @@ }, "params": { "UseFIPS": true, - "Region": "us-east-1", "UseDualStack": false, + "Region": "us-east-1", "Endpoint": "https://example.com" } }, @@ -345,8 +345,8 @@ }, "params": { "UseFIPS": false, - "Region": "us-east-1", "UseDualStack": true, + "Region": "us-east-1", "Endpoint": "https://example.com" } } diff --git a/models/apis/iottwinmaker/2021-11-29/paginators-1.json b/models/apis/iottwinmaker/2021-11-29/paginators-1.json index 1640cbff97a..5c696a64a80 100644 --- a/models/apis/iottwinmaker/2021-11-29/paginators-1.json +++ b/models/apis/iottwinmaker/2021-11-29/paginators-1.json @@ -30,6 +30,16 @@ "output_token": "nextToken", "limit_key": "maxResults" }, + "ListSyncJobs": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults" + }, + "ListSyncResources": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults" + }, "ListWorkspaces": { "input_token": "nextToken", "output_token": "nextToken", diff --git a/models/apis/migrationhubstrategy/2020-02-19/api-2.json b/models/apis/migrationhubstrategy/2020-02-19/api-2.json index ddde19d5b84..ec8991184d4 100644 --- a/models/apis/migrationhubstrategy/2020-02-19/api-2.json +++ b/models/apis/migrationhubstrategy/2020-02-19/api-2.json @@ -75,6 +75,22 @@ {"shape":"InternalServerException"} ] }, + "GetLatestAssessmentId":{ + "name":"GetLatestAssessmentId", + "http":{ + "method":"GET", + "requestUri":"/get-latest-assessment-id", + "responseCode":200 + }, + "input":{"shape":"GetLatestAssessmentIdRequest"}, + "output":{"shape":"GetLatestAssessmentIdResponse"}, + "errors":[ + {"shape":"DependencyException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ] + }, "GetPortfolioPreferences":{ "name":"GetPortfolioPreferences", "http":{ @@ -373,7 +389,39 @@ "SQLServer", "IIS", "Oracle", - "Other" + "Other", + "Tomcat", + "JBoss", + "Spring", + "Mongo DB", + "DB2", + "Maria DB", + "MySQL", + "Sybase", + "PostgreSQLServer", + "Cassandra", + "IBM WebSphere", + "Oracle WebLogic", + "Visual Basic", + "Unknown", + "DotnetCore", + "Dotnet" + ] + }, + "AppUnitError":{ + "type":"structure", + "members":{ + "appUnitErrorCategory":{"shape":"AppUnitErrorCategory"} + } + }, + "AppUnitErrorCategory":{ + "type":"string", + "enum":[ + "CREDENTIAL_ERROR", + "CONNECTIVITY_ERROR", + "PERMISSION_ERROR", + "UNSUPPORTED_ERROR", + "OTHER_ERROR" ] }, "ApplicationComponentCriteria":{ @@ -384,7 +432,9 @@ "SERVER_ID", "APP_TYPE", "STRATEGY", - "DESTINATION" + "DESTINATION", + "ANALYSIS_STATUS", + "ERROR_CATEGORY" ] }, "ApplicationComponentDetail":{ @@ -395,6 +445,7 @@ "antipatternReportStatus":{"shape":"AntipatternReportStatus"}, "antipatternReportStatusMessage":{"shape":"StatusMessage"}, "appType":{"shape":"AppType"}, + "appUnitError":{"shape":"AppUnitError"}, "associatedServerId":{"shape":"ServerId"}, "databaseConfigDetail":{"shape":"DatabaseConfigDetail"}, "id":{"shape":"ResourceId"}, @@ -407,6 +458,8 @@ "osVersion":{"shape":"String"}, "recommendationSet":{"shape":"RecommendationSet"}, "resourceSubType":{"shape":"ResourceSubType"}, + "runtimeStatus":{"shape":"RuntimeAnalysisStatus"}, + "runtimeStatusMessage":{"shape":"StatusMessage"}, "sourceCodeRepositories":{"shape":"SourceCodeRepositories"}, "statusMessage":{"shape":"StatusMessage"} } @@ -421,6 +474,13 @@ "min":0, "pattern":"[0-9a-zA-Z-]+" }, + "ApplicationComponentStatusSummary":{ + "type":"structure", + "members":{ + "count":{"shape":"Integer"}, + "srcCodeOrDbAnalysisStatus":{"shape":"SrcCodeOrDbAnalysisStatus"} + } + }, "ApplicationComponentStrategies":{ "type":"list", "member":{"shape":"ApplicationComponentStrategy"} @@ -440,6 +500,14 @@ "count":{"shape":"Integer"} } }, + "ApplicationMode":{ + "type":"string", + "enum":[ + "ALL", + "KNOWN", + "UNKNOWN" + ] + }, "ApplicationPreferences":{ "type":"structure", "members":{ @@ -455,6 +523,12 @@ "STOPPED" ] }, + "AssessmentStatusMessage":{ + "type":"string", + "max":512, + "min":0, + "pattern":".*\\S.*" + }, "AssessmentSummary":{ "type":"structure", "members":{ @@ -463,12 +537,37 @@ "antipatternReportStatusMessage":{"shape":"StatusMessage"}, "lastAnalyzedTimestamp":{"shape":"TimeStamp"}, "listAntipatternSeveritySummary":{"shape":"ListAntipatternSeveritySummary"}, + "listApplicationComponentStatusSummary":{"shape":"ListApplicationComponentStatusSummary"}, "listApplicationComponentStrategySummary":{"shape":"ListStrategySummary"}, "listApplicationComponentSummary":{"shape":"ListApplicationComponentSummary"}, + "listServerStatusSummary":{"shape":"ListServerStatusSummary"}, "listServerStrategySummary":{"shape":"ListStrategySummary"}, "listServerSummary":{"shape":"ListServerSummary"} } }, + "AssessmentTarget":{ + "type":"structure", + "required":[ + "condition", + "name", + "values" + ], + "members":{ + "condition":{"shape":"Condition"}, + "name":{"shape":"String"}, + "values":{"shape":"AssessmentTargetValues"} + } + }, + "AssessmentTargetValues":{ + "type":"list", + "member":{"shape":"String"} + }, + "AssessmentTargets":{ + "type":"list", + "member":{"shape":"AssessmentTarget"}, + "max":10, + "min":0 + }, "AssociatedApplication":{ "type":"structure", "members":{ @@ -490,6 +589,14 @@ "min":0, "pattern":"[0-9a-z-:]+" }, + "AuthType":{ + "type":"string", + "enum":[ + "NTLM", + "SSH", + "CERT" + ] + }, "AwsManagedResources":{ "type":"structure", "required":["targetDestination"], @@ -536,6 +643,7 @@ "collectorHealth":{"shape":"CollectorHealth"}, "collectorId":{"shape":"String"}, "collectorVersion":{"shape":"String"}, + "configurationSummary":{"shape":"ConfigurationSummary"}, "hostName":{"shape":"String"}, "ipAddress":{"shape":"String"}, "lastActivityTimeStamp":{"shape":"String"}, @@ -553,6 +661,25 @@ "type":"list", "member":{"shape":"Collector"} }, + "Condition":{ + "type":"string", + "enum":[ + "EQUALS", + "NOT_EQUALS", + "CONTAINS", + "NOT_CONTAINS" + ] + }, + "ConfigurationSummary":{ + "type":"structure", + "members":{ + "ipAddressBasedRemoteInfoList":{"shape":"IPAddressBasedRemoteInfoList"}, + "pipelineInfoList":{"shape":"PipelineInfoList"}, + "remoteSourceCodeAnalysisServerInfo":{"shape":"RemoteSourceCodeAnalysisServerInfo"}, + "vcenterBasedRemoteInfoList":{"shape":"VcenterBasedRemoteInfoList"}, + "versionControlInfoList":{"shape":"VersionControlInfoList"} + } + }, "ConflictException":{ "type":"structure", "required":["message"], @@ -574,6 +701,7 @@ "servers":{"shape":"Integer"}, "startTime":{"shape":"TimeStamp"}, "status":{"shape":"AssessmentStatus"}, + "statusMessage":{"shape":"AssessmentStatusMessage"}, "success":{"shape":"Integer"} } }, @@ -614,6 +742,15 @@ "databaseMigrationPreference":{"shape":"DatabaseMigrationPreference"} } }, + "DependencyException":{ + "type":"structure", + "members":{ + "message":{"shape":"errorMessage"} + }, + "error":{"httpStatusCode":500}, + "exception":true, + "fault":true + }, "GetApplicationComponentDetailsRequest":{ "type":"structure", "required":["applicationComponentId"], @@ -665,6 +802,7 @@ "GetAssessmentResponse":{ "type":"structure", "members":{ + "assessmentTargets":{"shape":"AssessmentTargets"}, "dataCollectionDetails":{"shape":"DataCollectionDetails"}, "id":{"shape":"AsyncTaskId"} } @@ -696,6 +834,17 @@ "statusReportS3Key":{"shape":"importS3Key"} } }, + "GetLatestAssessmentIdRequest":{ + "type":"structure", + "members":{ + } + }, + "GetLatestAssessmentIdResponse":{ + "type":"structure", + "members":{ + "id":{"shape":"AsyncTaskId"} + } + }, "GetPortfolioPreferencesRequest":{ "type":"structure", "members":{ @@ -704,6 +853,7 @@ "GetPortfolioPreferencesResponse":{ "type":"structure", "members":{ + "applicationMode":{"shape":"ApplicationMode"}, "applicationPreferences":{"shape":"ApplicationPreferences"}, "databasePreferences":{"shape":"DatabasePreferences"}, "prioritizeBusinessGoals":{"shape":"PrioritizeBusinessGoals"} @@ -849,6 +999,18 @@ "min":0, "pattern":"^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$" }, + "IPAddressBasedRemoteInfo":{ + "type":"structure", + "members":{ + "authType":{"shape":"AuthType"}, + "ipAddressConfigurationTimeStamp":{"shape":"String"}, + "osType":{"shape":"OSType"} + } + }, + "IPAddressBasedRemoteInfoList":{ + "type":"list", + "member":{"shape":"IPAddressBasedRemoteInfo"} + }, "ImportFileTaskInformation":{ "type":"structure", "members":{ @@ -908,6 +1070,10 @@ "type":"list", "member":{"shape":"AntipatternSeveritySummary"} }, + "ListApplicationComponentStatusSummary":{ + "type":"list", + "member":{"shape":"ApplicationComponentStatusSummary"} + }, "ListApplicationComponentSummary":{ "type":"list", "member":{"shape":"ApplicationComponentSummary"} @@ -984,6 +1150,10 @@ "taskInfos":{"shape":"ListImportFileTaskInformation"} } }, + "ListServerStatusSummary":{ + "type":"list", + "member":{"shape":"ServerStatusSummary"} + }, "ListServerSummary":{ "type":"list", "member":{"shape":"ServerSummary"} @@ -1124,15 +1294,37 @@ "Json" ] }, + "PipelineInfo":{ + "type":"structure", + "members":{ + "pipelineConfigurationTimeStamp":{"shape":"String"}, + "pipelineType":{"shape":"PipelineType"} + } + }, + "PipelineInfoList":{ + "type":"list", + "member":{"shape":"PipelineInfo"} + }, + "PipelineType":{ + "type":"string", + "enum":["AZURE_DEVOPS"] + }, "PrioritizeBusinessGoals":{ "type":"structure", "members":{ "businessGoals":{"shape":"BusinessGoals"} } }, + "ProjectName":{ + "type":"string", + "max":128, + "min":1, + "pattern":".*\\S.*" + }, "PutPortfolioPreferencesRequest":{ "type":"structure", "members":{ + "applicationMode":{"shape":"ApplicationMode"}, "applicationPreferences":{"shape":"ApplicationPreferences"}, "databasePreferences":{"shape":"DatabasePreferences"}, "prioritizeBusinessGoals":{"shape":"PrioritizeBusinessGoals"} @@ -1183,6 +1375,12 @@ "min":0, "pattern":"[0-9a-z-:]+" }, + "RemoteSourceCodeAnalysisServerInfo":{ + "type":"structure", + "members":{ + "remoteSourceCodeAnalysisServerConfigurationTimestamp":{"shape":"String"} + } + }, "ResourceId":{ "type":"string", "max":44, @@ -1221,6 +1419,15 @@ "dataCollectionTaskPartialSuccess" ] }, + "RuntimeAnalysisStatus":{ + "type":"string", + "enum":[ + "ANALYSIS_TO_BE_SCHEDULED", + "ANALYSIS_STARTED", + "ANALYSIS_SUCCESS", + "ANALYSIS_FAILED" + ] + }, "S3Bucket":{ "type":"string", "max":63, @@ -1280,7 +1487,9 @@ "OS_NAME", "STRATEGY", "DESTINATION", - "SERVER_ID" + "SERVER_ID", + "ANALYSIS_STATUS", + "ERROR_CATEGORY" ] }, "ServerDetail":{ @@ -1296,6 +1505,7 @@ "listAntipatternSeveritySummary":{"shape":"ListAntipatternSeveritySummary"}, "name":{"shape":"ResourceName"}, "recommendationSet":{"shape":"RecommendationSet"}, + "serverError":{"shape":"ServerError"}, "serverType":{"shape":"String"}, "statusMessage":{"shape":"StatusMessage"}, "systemInfo":{"shape":"SystemInfo"} @@ -1305,6 +1515,22 @@ "type":"list", "member":{"shape":"ServerDetail"} }, + "ServerError":{ + "type":"structure", + "members":{ + "serverErrorCategory":{"shape":"ServerErrorCategory"} + } + }, + "ServerErrorCategory":{ + "type":"string", + "enum":[ + "CONNECTIVITY_ERROR", + "CREDENTIAL_ERROR", + "PERMISSION_ERROR", + "ARCHITECTURE_ERROR", + "OTHER_ERROR" + ] + }, "ServerId":{ "type":"string", "max":27, @@ -1321,6 +1547,13 @@ "Other" ] }, + "ServerStatusSummary":{ + "type":"structure", + "members":{ + "count":{"shape":"Integer"}, + "runTimeAssessmentStatus":{"shape":"RunTimeAssessmentStatus"} + } + }, "ServerStrategies":{ "type":"list", "member":{"shape":"ServerStrategy"} @@ -1383,6 +1616,7 @@ "type":"structure", "members":{ "location":{"shape":"Location"}, + "projectName":{"shape":"ProjectName"}, "sourceVersion":{"shape":"SourceVersion"}, "versionControl":{"shape":"VersionControl"} } @@ -1399,6 +1633,7 @@ "type":"structure", "members":{ "branch":{"shape":"String"}, + "projectName":{"shape":"String"}, "repository":{"shape":"String"}, "versionControlType":{"shape":"String"} } @@ -1415,12 +1650,16 @@ "ANALYSIS_TO_BE_SCHEDULED", "ANALYSIS_STARTED", "ANALYSIS_SUCCESS", - "ANALYSIS_FAILED" + "ANALYSIS_FAILED", + "ANALYSIS_PARTIAL_SUCCESS", + "UNCONFIGURED", + "CONFIGURED" ] }, "StartAssessmentRequest":{ "type":"structure", "members":{ + "assessmentTargets":{"shape":"AssessmentTargets"}, "s3bucketForAnalysisData":{"shape":"StartAssessmentRequestS3bucketForAnalysisDataString"}, "s3bucketForReportData":{"shape":"StartAssessmentRequestS3bucketForReportDataString"} } @@ -1534,7 +1773,8 @@ "enum":[ "recommended", "viableOption", - "notRecommended" + "notRecommended", + "potential" ] }, "StrategySummary":{ @@ -1595,7 +1835,8 @@ "Amazon Relational Database Service on PostgreSQL", "Amazon DocumentDB", "Amazon DynamoDB", - "Amazon Relational Database Service" + "Amazon Relational Database Service", + "Babelfish for Aurora PostgreSQL" ] }, "ThrottlingException":{ @@ -1649,7 +1890,9 @@ "type":"structure", "required":["applicationComponentId"], "members":{ + "appType":{"shape":"AppType"}, "applicationComponentId":{"shape":"ApplicationComponentId"}, + "configureOnly":{"shape":"Boolean"}, "inclusionStatus":{"shape":"InclusionStatus"}, "secretsManagerKey":{"shape":"SecretsManagerKey"}, "sourceCodeList":{"shape":"SourceCodeList"}, @@ -1685,11 +1928,42 @@ }, "exception":true }, + "VcenterBasedRemoteInfo":{ + "type":"structure", + "members":{ + "osType":{"shape":"OSType"}, + "vcenterConfigurationTimeStamp":{"shape":"String"} + } + }, + "VcenterBasedRemoteInfoList":{ + "type":"list", + "member":{"shape":"VcenterBasedRemoteInfo"} + }, "VersionControl":{ "type":"string", "enum":[ "GITHUB", - "GITHUB_ENTERPRISE" + "GITHUB_ENTERPRISE", + "AZURE_DEVOPS_GIT" + ] + }, + "VersionControlInfo":{ + "type":"structure", + "members":{ + "versionControlConfigurationTimeStamp":{"shape":"String"}, + "versionControlType":{"shape":"VersionControlType"} + } + }, + "VersionControlInfoList":{ + "type":"list", + "member":{"shape":"VersionControlInfo"} + }, + "VersionControlType":{ + "type":"string", + "enum":[ + "GITHUB", + "GITHUB_ENTERPRISE", + "AZURE_DEVOPS_GIT" ] }, "errorMessage":{"type":"string"}, diff --git a/models/apis/migrationhubstrategy/2020-02-19/docs-2.json b/models/apis/migrationhubstrategy/2020-02-19/docs-2.json index 9a2ea4024ea..5c9baf11199 100644 --- a/models/apis/migrationhubstrategy/2020-02-19/docs-2.json +++ b/models/apis/migrationhubstrategy/2020-02-19/docs-2.json @@ -6,6 +6,7 @@ "GetApplicationComponentStrategies": "Retrieves a list of all the recommended strategies and tools for an application component running on a server.
", "GetAssessment": "Retrieves the status of an on-going assessment.
", "GetImportFileTask": "Retrieves the details about a specific import task.
", + "GetLatestAssessmentId": "Retrieve the latest ID of a specific assessment task.
", "GetPortfolioPreferences": "Retrieves your migration and modernization preferences.
", "GetPortfolioSummary": "Retrieves overall summary including the number of servers to rehost and the overall number of anti-patterns.
", "GetRecommendationReportDetails": "Retrieves detailed information about the specified recommendation report.
", @@ -47,7 +48,20 @@ "base": null, "refs": { "ApplicationComponentDetail$appType": "The type of application component.
", - "ApplicationComponentSummary$appType": "Contains the name of application types.
" + "ApplicationComponentSummary$appType": "Contains the name of application types.
", + "UpdateApplicationComponentConfigRequest$appType": "The type of known component.
" + } + }, + "AppUnitError": { + "base": "Error in the analysis of the application unit.
", + "refs": { + "ApplicationComponentDetail$appUnitError": "The error in the analysis of the source code or database.
" + } + }, + "AppUnitErrorCategory": { + "base": null, + "refs": { + "AppUnitError$appUnitErrorCategory": "The category of the error.
" } }, "ApplicationComponentCriteria": { @@ -77,6 +91,12 @@ "UpdateApplicationComponentConfigRequest$applicationComponentId": "The ID of the application component. The ID is unique within an AWS account.
" } }, + "ApplicationComponentStatusSummary": { + "base": "Summary of the analysis status of the application component.
", + "refs": { + "ListApplicationComponentStatusSummary$member": null + } + }, "ApplicationComponentStrategies": { "base": null, "refs": { @@ -95,6 +115,13 @@ "ListApplicationComponentSummary$member": null } }, + "ApplicationMode": { + "base": null, + "refs": { + "GetPortfolioPreferencesResponse$applicationMode": "The classification for application component types.
", + "PutPortfolioPreferencesRequest$applicationMode": "The classification for application component types.
" + } + }, "ApplicationPreferences": { "base": "Application preferences that you specify.
", "refs": { @@ -108,12 +135,37 @@ "DataCollectionDetails$status": "The status of the assessment.
" } }, + "AssessmentStatusMessage": { + "base": null, + "refs": { + "DataCollectionDetails$statusMessage": "The status message of the assessment.
" + } + }, "AssessmentSummary": { "base": "Contains the summary of the assessment results.
", "refs": { "GetPortfolioSummaryResponse$assessmentSummary": "An assessment summary for the portfolio including the number of servers to rehost and the overall number of anti-patterns.
" } }, + "AssessmentTarget": { + "base": "Defines the criteria of assessment.
", + "refs": { + "AssessmentTargets$member": null + } + }, + "AssessmentTargetValues": { + "base": null, + "refs": { + "AssessmentTarget$values": "Values of an assessment.
" + } + }, + "AssessmentTargets": { + "base": null, + "refs": { + "GetAssessmentResponse$assessmentTargets": "List of criteria for assessment.
", + "StartAssessmentRequest$assessmentTargets": "List of criteria for assessment.
" + } + }, "AssociatedApplication": { "base": "Object containing details about applications as defined in Application Discovery Service.
", "refs": { @@ -138,10 +190,17 @@ "refs": { "GetAssessmentRequest$id": " The assessmentid
returned by StartAssessment.
The ID for the specific assessment task.
", + "GetLatestAssessmentIdResponse$id": "The latest ID for the specific assessment task.
", "StartAssessmentResponse$assessmentId": "The ID of the assessment.
", "StopAssessmentRequest$assessmentId": " The assessmentId
returned by StartAssessment.
The type of authorization.
" + } + }, "AwsManagedResources": { "base": "Object containing the choice of application destination that you specify.
", "refs": { @@ -167,7 +226,8 @@ "ApplicationComponentStrategy$isPreferred": "Set to true if the recommendation is set as preferred.
", "GetApplicationComponentDetailsResponse$moreApplicationResource": "Set to true if the application component belongs to more than one application group.
", "ServerStrategy$isPreferred": "Set to true if the recommendation is set as preferred.
", - "StrategyOption$isPreferred": "Indicates if a specific strategy is preferred for the application component.
" + "StrategyOption$isPreferred": "Indicates if a specific strategy is preferred for the application component.
", + "UpdateApplicationComponentConfigRequest$configureOnly": "Update the configuration request of an application component. If it is set to true, the source code and/or database credentials are updated. If it is set to false, the source code and/or database credentials are updated and an analysis is initiated.
" } }, "BusinessGoals": { @@ -203,6 +263,18 @@ "ListCollectorsResponse$Collectors": "The list of all the installed collectors.
" } }, + "Condition": { + "base": null, + "refs": { + "AssessmentTarget$condition": "Condition of an assessment.
" + } + }, + "ConfigurationSummary": { + "base": "Summary of the collector configuration.
", + "refs": { + "Collector$configurationSummary": "Summary of the collector configuration.
" + } + }, "ConflictException": { "base": "Exception to indicate that there is an ongoing task when a new task is created. Return when once the existing tasks are complete.
", "refs": { @@ -245,6 +317,11 @@ "PutPortfolioPreferencesRequest$databasePreferences": "The transformation preferences for database applications.
" } }, + "DependencyException": { + "base": "Dependency encountered an error.
", + "refs": { + } + }, "GetApplicationComponentDetailsRequest": { "base": null, "refs": { @@ -285,6 +362,16 @@ "refs": { } }, + "GetLatestAssessmentIdRequest": { + "base": null, + "refs": { + } + }, + "GetLatestAssessmentIdResponse": { + "base": null, + "refs": { + } + }, "GetPortfolioPreferencesRequest": { "base": null, "refs": { @@ -398,6 +485,18 @@ "NetworkInfo$ipAddress": "Information about the IP address of the server for which the assessment was run.
" } }, + "IPAddressBasedRemoteInfo": { + "base": "IP address based configurations.
", + "refs": { + "IPAddressBasedRemoteInfoList$member": null + } + }, + "IPAddressBasedRemoteInfoList": { + "base": null, + "refs": { + "ConfigurationSummary$ipAddressBasedRemoteInfoList": "IP address based configurations.
" + } + }, "ImportFileTaskInformation": { "base": "Information about the import file tasks you request.
", "refs": { @@ -422,6 +521,7 @@ "base": null, "refs": { "AntipatternSeveritySummary$count": "Contains the count of anti-patterns.
", + "ApplicationComponentStatusSummary$count": "The number of application components successfully analyzed, partially successful or failed analysis.
", "ApplicationComponentSummary$count": "Contains the count of application type.
", "DataCollectionDetails$failed": "The number of failed servers in the assessment.
", "DataCollectionDetails$inProgress": " The number of servers with the assessment status IN_PROGESS
.
The number of records that failed to be imported.
", "ImportFileTaskInformation$numberOfRecordsSuccess": "The number of records successfully imported.
", "ListImportFileTaskRequest$maxResults": "The total number of items to return. The maximum value is 100.
", + "ServerStatusSummary$count": "The number of servers successfully analyzed, partially successful or failed analysis.
", "ServerStrategy$numberOfApplicationComponents": "The number of application components with this strategy recommendation running on the server.
", "ServerSummary$count": "Number of servers.
", "StrategySummary$count": "The count of recommendations per strategy.
" @@ -456,6 +557,12 @@ "ServerDetail$listAntipatternSeveritySummary": "A list of anti-pattern severity summaries.
" } }, + "ListApplicationComponentStatusSummary": { + "base": null, + "refs": { + "AssessmentSummary$listApplicationComponentStatusSummary": "List of status summaries of the analyzed application components.
" + } + }, "ListApplicationComponentSummary": { "base": null, "refs": { @@ -504,6 +611,12 @@ "refs": { } }, + "ListServerStatusSummary": { + "base": null, + "refs": { + "AssessmentSummary$listServerStatusSummary": "List of status summaries of the analyzed servers.
" + } + }, "ListServerSummary": { "base": null, "refs": { @@ -618,7 +731,9 @@ "OSType": { "base": null, "refs": { - "OSInfo$type": "Information about the type of operating system.
" + "IPAddressBasedRemoteInfo$osType": "The type of the operating system.
", + "OSInfo$type": "Information about the type of operating system.
", + "VcenterBasedRemoteInfo$osType": "The type of the operating system.
" } }, "OSVersion": { @@ -633,6 +748,24 @@ "StartRecommendationReportGenerationRequest$outputFormat": "The output format for the recommendation report file. The default format is Microsoft Excel.
" } }, + "PipelineInfo": { + "base": "Detailed information of the pipeline.
", + "refs": { + "PipelineInfoList$member": null + } + }, + "PipelineInfoList": { + "base": null, + "refs": { + "ConfigurationSummary$pipelineInfoList": "The list of pipeline info configurations.
" + } + }, + "PipelineType": { + "base": null, + "refs": { + "PipelineInfo$pipelineType": "The type of pipeline.
" + } + }, "PrioritizeBusinessGoals": { "base": "Rank of business goals based on priority.
", "refs": { @@ -640,6 +773,12 @@ "PutPortfolioPreferencesRequest$prioritizeBusinessGoals": "The rank of the business goals based on priority.
" } }, + "ProjectName": { + "base": null, + "refs": { + "SourceCode$projectName": "The name of the project.
" + } + }, "PutPortfolioPreferencesRequest": { "base": null, "refs": { @@ -692,6 +831,12 @@ "StartRecommendationReportGenerationResponse$id": "The ID of the recommendation report generation task.
" } }, + "RemoteSourceCodeAnalysisServerInfo": { + "base": "Information about the server configured for source code analysis.
", + "refs": { + "ConfigurationSummary$remoteSourceCodeAnalysisServerInfo": "Info about the remote server source code configuration.
" + } + }, "ResourceId": { "base": null, "refs": { @@ -720,7 +865,14 @@ "RunTimeAssessmentStatus": { "base": null, "refs": { - "ServerDetail$dataCollectionStatus": "The status of assessment for the server.
" + "ServerDetail$dataCollectionStatus": "The status of assessment for the server.
", + "ServerStatusSummary$runTimeAssessmentStatus": "The status of the run time.
" + } + }, + "RuntimeAnalysisStatus": { + "base": null, + "refs": { + "ApplicationComponentDetail$runtimeStatus": "The status of the application unit.
" } }, "S3Bucket": { @@ -792,6 +944,18 @@ "ListServersResponse$serverInfos": "The list of servers with detailed information about each server.
" } }, + "ServerError": { + "base": "The error in server analysis.
", + "refs": { + "ServerDetail$serverError": "The error in server analysis.
" + } + }, + "ServerErrorCategory": { + "base": null, + "refs": { + "ServerError$serverErrorCategory": "The error category of server analysis.
" + } + }, "ServerId": { "base": null, "refs": { @@ -807,6 +971,12 @@ "ServerSummary$ServerOsType": "Type of operating system for the servers.
" } }, + "ServerStatusSummary": { + "base": "The status summary of the server analysis.
", + "refs": { + "ListServerStatusSummary$member": null + } + }, "ServerStrategies": { "base": null, "refs": { @@ -881,7 +1051,8 @@ "SrcCodeOrDbAnalysisStatus": { "base": null, "refs": { - "ApplicationComponentDetail$analysisStatus": "The status of analysis, if the application component has source code or an associated database.
" + "ApplicationComponentDetail$analysisStatus": "The status of analysis, if the application component has source code or an associated database.
", + "ApplicationComponentStatusSummary$srcCodeOrDbAnalysisStatus": "The status of database analysis.
" } }, "StartAssessmentRequest": { @@ -942,6 +1113,7 @@ "base": null, "refs": { "ApplicationComponentDetail$antipatternReportStatusMessage": "The status message for the anti-pattern.
", + "ApplicationComponentDetail$runtimeStatusMessage": "The status message for the application unit.
", "ApplicationComponentDetail$statusMessage": "A detailed description of the analysis status and any failure message.
", "AssessmentSummary$antipatternReportStatusMessage": "The status message of the anti-pattern report.
", "ServerDetail$antipatternReportStatusMessage": "A message about the status of the anti-pattern report generation.
", @@ -992,6 +1164,8 @@ "AccessDeniedException$message": null, "ApplicationComponentDetail$osDriver": "OS driver.
", "ApplicationComponentDetail$osVersion": "OS version.
", + "AssessmentTarget$name": "Name of an assessment.
", + "AssessmentTargetValues$member": null, "AssociatedApplication$id": "ID of the application as defined in Application Discovery Service.
", "AssociatedApplication$name": "Name of the application as defined in Application Discovery Service.
", "AssociatedServerIDs$member": null, @@ -1008,22 +1182,28 @@ "GetImportFileTaskResponse$importName": "The name of the import task given in StartImportFileTask.
", "GetServerDetailsResponse$nextToken": "The token you use to retrieve the next set of results, or null if there are no more results.
", "Group$value": "The value of the specific import group.
", + "IPAddressBasedRemoteInfo$ipAddressConfigurationTimeStamp": "The time stamp of the configuration.
", "ImportFileTaskInformation$id": "The ID of the import file task.
", "ImportFileTaskInformation$importName": " The name of the import task given in StartImportFileTask
.
The token from a previous call that you use to retrieve the next set of results. For example, if a previous call to this action returned 100 items, but you set maxResults
to 10. You'll receive a set of 10 results along with a token. You then use the returned token to retrieve the next set of 10.
The token you use to retrieve the next set of results, or null if there are no more results.
", "ListServersRequest$filterValue": " Specifies the filter value, which is based on the type of server criteria. For example, if serverCriteria
is OS_NAME
, and the filterValue
is equal to WindowsServer
, then ListServers
returns all of the servers matching the OS name WindowsServer
.
The time when the pipeline info was configured.
", "RecommendationReportDetails$s3Bucket": "The S3 bucket where the report file is located.
", + "RemoteSourceCodeAnalysisServerInfo$remoteSourceCodeAnalysisServerConfigurationTimestamp": "The time when the remote source code server was configured.
", "S3Keys$member": null, "ServerDetail$serverType": "The type of server.
", "ServiceQuotaExceededException$message": null, "SourceCodeRepository$branch": "The branch of the source code.
", + "SourceCodeRepository$projectName": "The name of the project.
", "SourceCodeRepository$repository": "The repository name for the source code.
", "SourceCodeRepository$versionControlType": "The type of repository to use for the source code.
", "StartImportFileTaskRequest$s3key": "The Amazon S3 key name of the import file.
", "StartImportFileTaskResponse$id": "The ID for a specific import task. The ID is unique within an AWS account.
", "SystemInfo$cpuArchitecture": "CPU architecture type for the server.
", - "SystemInfo$fileSystemType": "File system type for the server.
" + "SystemInfo$fileSystemType": "File system type for the server.
", + "VcenterBasedRemoteInfo$vcenterConfigurationTimeStamp": "The time when the remote server based on vCenter was last configured.
", + "VersionControlInfo$versionControlConfigurationTimeStamp": "The time when the version control system was last configured.
" } }, "SystemInfo": { @@ -1120,15 +1300,46 @@ "refs": { } }, + "VcenterBasedRemoteInfo": { + "base": "Details about the server in vCenter.
", + "refs": { + "VcenterBasedRemoteInfoList$member": null + } + }, + "VcenterBasedRemoteInfoList": { + "base": null, + "refs": { + "ConfigurationSummary$vcenterBasedRemoteInfoList": "The list of vCenter configurations.
" + } + }, "VersionControl": { "base": null, "refs": { "SourceCode$versionControl": "The type of repository to use for the source code.
" } }, + "VersionControlInfo": { + "base": "Details about the version control configuration.
", + "refs": { + "VersionControlInfoList$member": null + } + }, + "VersionControlInfoList": { + "base": null, + "refs": { + "ConfigurationSummary$versionControlInfoList": "The list of the version control configurations.
" + } + }, + "VersionControlType": { + "base": null, + "refs": { + "VersionControlInfo$versionControlType": "The type of version control.
" + } + }, "errorMessage": { "base": null, "refs": { + "DependencyException$message": null, "InternalServerException$message": null, "ResourceNotFoundException$message": null, "ServiceLinkedRoleLockClientException$message": null, diff --git a/models/apis/migrationhubstrategy/2020-02-19/endpoint-rule-set-1.json b/models/apis/migrationhubstrategy/2020-02-19/endpoint-rule-set-1.json new file mode 100644 index 00000000000..b5093f10ce4 --- /dev/null +++ b/models/apis/migrationhubstrategy/2020-02-19/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://migrationhub-strategy-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://migrationhub-strategy-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://migrationhub-strategy.{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://migrationhub-strategy.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] +} \ No newline at end of file diff --git a/models/apis/migrationhubstrategy/2020-02-19/endpoint-tests-1.json b/models/apis/migrationhubstrategy/2020-02-19/endpoint-tests-1.json new file mode 100644 index 00000000000..c1c74631218 --- /dev/null +++ b/models/apis/migrationhubstrategy/2020-02-19/endpoint-tests-1.json @@ -0,0 +1,407 @@ +{ + "testCases": [ + { + "documentation": "For region eu-central-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-strategy-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://migrationhub-strategy-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://migrationhub-strategy.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://migrationhub-strategy.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://migrationhub-strategy-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://migrationhub-strategy-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://migrationhub-strategy.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://migrationhub-strategy.us-west-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "us-west-2" + } + }, + { + "documentation": "For region eu-west-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-strategy-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://migrationhub-strategy-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://migrationhub-strategy.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://migrationhub-strategy.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://migrationhub-strategy-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://migrationhub-strategy-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://migrationhub-strategy.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://migrationhub-strategy.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://migrationhub-strategy-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://migrationhub-strategy-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://migrationhub-strategy.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://migrationhub-strategy.ap-northeast-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Region": "ap-northeast-1" + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-strategy-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://migrationhub-strategy-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://migrationhub-strategy.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://migrationhub-strategy.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://migrationhub-strategy-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://migrationhub-strategy-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://migrationhub-strategy.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://migrationhub-strategy.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/endpoints/endpoints.json b/models/endpoints/endpoints.json index 1b42d09a69f..612bff9fff4 100644 --- a/models/endpoints/endpoints.json +++ b/models/endpoints/endpoints.json @@ -361,6 +361,7 @@ "deprecated" : true, "hostname" : "acm-pca-fips.us-west-2.amazonaws.com" }, + "me-central-1" : { }, "me-south-1" : { }, "sa-east-1" : { }, "us-east-1" : { @@ -4302,6 +4303,7 @@ "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, + "me-central-1" : { }, "me-south-1" : { }, "sa-east-1" : { }, "us-east-1" : { }, @@ -10024,7 +10026,6 @@ "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, - "ap-southeast-3" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "network-firewall-fips.ca-central-1.amazonaws.com", @@ -16077,8 +16078,18 @@ }, "athena" : { "endpoints" : { - "cn-north-1" : { }, - "cn-northwest-1" : { } + "cn-north-1" : { + "variants" : [ { + "hostname" : "athena.cn-north-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + }, + "cn-northwest-1" : { + "variants" : [ { + "hostname" : "athena.cn-northwest-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + } } }, "autoscaling" : { @@ -17521,12 +17532,18 @@ "variants" : [ { "hostname" : "athena-fips.us-gov-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "athena.us-gov-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-gov-west-1" : { "variants" : [ { "hostname" : "athena-fips.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "athena.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] } ] } } diff --git a/service/autoscaling/api.go b/service/autoscaling/api.go index 33c06a6589e..ec7cc7e38e7 100644 --- a/service/autoscaling/api.go +++ b/service/autoscaling/api.go @@ -316,6 +316,101 @@ func (c *AutoScaling) AttachLoadBalancersWithContext(ctx aws.Context, input *Att return out, req.Send() } +const opAttachTrafficSources = "AttachTrafficSources" + +// AttachTrafficSourcesRequest generates a "aws/request.Request" representing the +// client's request for the AttachTrafficSources 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 AttachTrafficSources for more information on using the AttachTrafficSources +// 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 AttachTrafficSourcesRequest method. +// req, resp := client.AttachTrafficSourcesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AttachTrafficSources +func (c *AutoScaling) AttachTrafficSourcesRequest(input *AttachTrafficSourcesInput) (req *request.Request, output *AttachTrafficSourcesOutput) { + op := &request.Operation{ + Name: opAttachTrafficSources, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &AttachTrafficSourcesInput{} + } + + output = &AttachTrafficSourcesOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// AttachTrafficSources API operation for Auto Scaling. +// +// Reserved for use with Amazon VPC Lattice, which is in preview and subject +// to change. Do not use this API for production workloads. This API is also +// subject to change. +// +// Attaches one or more traffic sources to the specified Auto Scaling group. +// +// To describe the traffic sources for an Auto Scaling group, call the DescribeTrafficSources +// API. To detach a traffic source from the Auto Scaling group, call the DetachTrafficSources +// API. +// +// This operation is additive and does not detach existing traffic sources from +// the Auto Scaling group. +// +// 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 Auto Scaling's +// API operation AttachTrafficSources for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeResourceContentionFault "ResourceContention" +// You already have a pending update to an Amazon EC2 Auto Scaling resource +// (for example, an Auto Scaling group, instance, or load balancer). +// +// - ErrCodeServiceLinkedRoleFailure "ServiceLinkedRoleFailure" +// The service-linked role is not yet ready for use. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AttachTrafficSources +func (c *AutoScaling) AttachTrafficSources(input *AttachTrafficSourcesInput) (*AttachTrafficSourcesOutput, error) { + req, out := c.AttachTrafficSourcesRequest(input) + return out, req.Send() +} + +// AttachTrafficSourcesWithContext is the same as AttachTrafficSources with the addition of +// the ability to pass a context and additional request options. +// +// See AttachTrafficSources 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 *AutoScaling) AttachTrafficSourcesWithContext(ctx aws.Context, input *AttachTrafficSourcesInput, opts ...request.Option) (*AttachTrafficSourcesOutput, error) { + req, out := c.AttachTrafficSourcesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opBatchDeleteScheduledAction = "BatchDeleteScheduledAction" // BatchDeleteScheduledActionRequest generates a "aws/request.Request" representing the @@ -2750,6 +2845,10 @@ func (c *AutoScaling) DescribeLoadBalancerTargetGroupsRequest(input *DescribeLoa // Auto Scaling group (https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-load-balancer.html) // in the Amazon EC2 Auto Scaling User Guide. // +// You can use this operation to describe target groups that were attached by +// using AttachLoadBalancerTargetGroups, but not for target groups that were +// attached by using AttachTrafficSources. +// // 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. @@ -3873,6 +3972,94 @@ func (c *AutoScaling) DescribeTerminationPolicyTypesWithContext(ctx aws.Context, return out, req.Send() } +const opDescribeTrafficSources = "DescribeTrafficSources" + +// DescribeTrafficSourcesRequest generates a "aws/request.Request" representing the +// client's request for the DescribeTrafficSources 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 DescribeTrafficSources for more information on using the DescribeTrafficSources +// 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 DescribeTrafficSourcesRequest method. +// req, resp := client.DescribeTrafficSourcesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeTrafficSources +func (c *AutoScaling) DescribeTrafficSourcesRequest(input *DescribeTrafficSourcesInput) (req *request.Request, output *DescribeTrafficSourcesOutput) { + op := &request.Operation{ + Name: opDescribeTrafficSources, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DescribeTrafficSourcesInput{} + } + + output = &DescribeTrafficSourcesOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeTrafficSources API operation for Auto Scaling. +// +// Reserved for use with Amazon VPC Lattice, which is in preview and subject +// to change. Do not use this API for production workloads. This API is also +// subject to change. +// +// Gets information about the traffic sources for the specified Auto Scaling +// group. +// +// 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 Auto Scaling's +// API operation DescribeTrafficSources for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeResourceContentionFault "ResourceContention" +// You already have a pending update to an Amazon EC2 Auto Scaling resource +// (for example, an Auto Scaling group, instance, or load balancer). +// +// - ErrCodeInvalidNextToken "InvalidNextToken" +// The NextToken value is not valid. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeTrafficSources +func (c *AutoScaling) DescribeTrafficSources(input *DescribeTrafficSourcesInput) (*DescribeTrafficSourcesOutput, error) { + req, out := c.DescribeTrafficSourcesRequest(input) + return out, req.Send() +} + +// DescribeTrafficSourcesWithContext is the same as DescribeTrafficSources with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeTrafficSources 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 *AutoScaling) DescribeTrafficSourcesWithContext(ctx aws.Context, input *DescribeTrafficSourcesInput, opts ...request.Option) (*DescribeTrafficSourcesOutput, error) { + req, out := c.DescribeTrafficSourcesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeWarmPool = "DescribeWarmPool" // DescribeWarmPoolRequest generates a "aws/request.Request" representing the @@ -4110,6 +4297,10 @@ func (c *AutoScaling) DetachLoadBalancerTargetGroupsRequest(input *DetachLoadBal // can no longer describe the target group using the DescribeLoadBalancerTargetGroups // API call. The instances remain running. // +// You can use this operation to detach target groups that were attached by +// using AttachLoadBalancerTargetGroups, but not for target groups that were +// attached by using AttachTrafficSources. +// // 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. @@ -4234,6 +4425,90 @@ func (c *AutoScaling) DetachLoadBalancersWithContext(ctx aws.Context, input *Det return out, req.Send() } +const opDetachTrafficSources = "DetachTrafficSources" + +// DetachTrafficSourcesRequest generates a "aws/request.Request" representing the +// client's request for the DetachTrafficSources 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 DetachTrafficSources for more information on using the DetachTrafficSources +// 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 DetachTrafficSourcesRequest method. +// req, resp := client.DetachTrafficSourcesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DetachTrafficSources +func (c *AutoScaling) DetachTrafficSourcesRequest(input *DetachTrafficSourcesInput) (req *request.Request, output *DetachTrafficSourcesOutput) { + op := &request.Operation{ + Name: opDetachTrafficSources, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DetachTrafficSourcesInput{} + } + + output = &DetachTrafficSourcesOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DetachTrafficSources API operation for Auto Scaling. +// +// Reserved for use with Amazon VPC Lattice, which is in preview and subject +// to change. Do not use this API for production workloads. This API is also +// subject to change. +// +// Detaches one or more traffic sources from the specified Auto Scaling group. +// +// 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 Auto Scaling's +// API operation DetachTrafficSources for usage and error information. +// +// Returned Error Codes: +// - ErrCodeResourceContentionFault "ResourceContention" +// You already have a pending update to an Amazon EC2 Auto Scaling resource +// (for example, an Auto Scaling group, instance, or load balancer). +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DetachTrafficSources +func (c *AutoScaling) DetachTrafficSources(input *DetachTrafficSourcesInput) (*DetachTrafficSourcesOutput, error) { + req, out := c.DetachTrafficSourcesRequest(input) + return out, req.Send() +} + +// DetachTrafficSourcesWithContext is the same as DetachTrafficSources with the addition of +// the ability to pass a context and additional request options. +// +// See DetachTrafficSources 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 *AutoScaling) DetachTrafficSourcesWithContext(ctx aws.Context, input *DetachTrafficSourcesInput, opts ...request.Option) (*DetachTrafficSourcesOutput, error) { + req, out := c.DetachTrafficSourcesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDisableMetricsCollection = "DisableMetricsCollection" // DisableMetricsCollectionRequest generates a "aws/request.Request" representing the @@ -6574,7 +6849,7 @@ type AttachLoadBalancerTargetGroupsInput struct { // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` - // The Amazon Resource Names (ARN) of the target groups. You can specify up + // The Amazon Resource Names (ARNs) of the target groups. You can specify up // to 10 target groups. To get the ARN of a target group, use the Elastic Load // Balancing DescribeTargetGroups (https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_DescribeTargetGroups.html) // API operation. @@ -6739,6 +7014,107 @@ func (s AttachLoadBalancersOutput) GoString() string { return s.String() } +type AttachTrafficSourcesInput struct { + _ struct{} `type:"structure"` + + // The name of the Auto Scaling group. + // + // AutoScalingGroupName is a required field + AutoScalingGroupName *string `min:"1" type:"string" required:"true"` + + // The unique identifiers of one or more traffic sources. You can specify up + // to 10 traffic sources. + // + // Currently, you must specify an Amazon Resource Name (ARN) for an existing + // VPC Lattice target group. Amazon EC2 Auto Scaling registers the running instances + // with the attached target groups. The target groups receive incoming traffic + // and route requests to one or more registered targets. + // + // TrafficSources is a required field + TrafficSources []*TrafficSourceIdentifier `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 AttachTrafficSourcesInput) 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 AttachTrafficSourcesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AttachTrafficSourcesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AttachTrafficSourcesInput"} + if s.AutoScalingGroupName == nil { + invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) + } + if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) + } + if s.TrafficSources == nil { + invalidParams.Add(request.NewErrParamRequired("TrafficSources")) + } + if s.TrafficSources != nil { + for i, v := range s.TrafficSources { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TrafficSources", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAutoScalingGroupName sets the AutoScalingGroupName field's value. +func (s *AttachTrafficSourcesInput) SetAutoScalingGroupName(v string) *AttachTrafficSourcesInput { + s.AutoScalingGroupName = &v + return s +} + +// SetTrafficSources sets the TrafficSources field's value. +func (s *AttachTrafficSourcesInput) SetTrafficSources(v []*TrafficSourceIdentifier) *AttachTrafficSourcesInput { + s.TrafficSources = v + return s +} + +type AttachTrafficSourcesOutput struct { + _ struct{} `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 AttachTrafficSourcesOutput) 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 AttachTrafficSourcesOutput) GoString() string { + return s.String() +} + // Specifies the minimum and maximum for the BaselineEbsBandwidthMbps object // when you specify InstanceRequirements for an Auto Scaling group. type BaselineEbsBandwidthMbpsRequest struct { @@ -7420,21 +7796,23 @@ type CreateAutoScalingGroupInput struct { // The amount of time, in seconds, that Amazon EC2 Auto Scaling waits before // checking the health status of an EC2 instance that has come into service - // and marking it unhealthy due to a failed Elastic Load Balancing or custom - // health check. This is useful if your instances do not immediately pass these - // health checks after they enter the InService state. For more information, - // see Set the health check grace period for an Auto Scaling group (https://docs.aws.amazon.com/autoscaling/ec2/userguide/health-check-grace-period.html) + // and marking it unhealthy due to a failed health check. This is useful if + // your instances do not immediately pass their health checks after they enter + // the InService state. For more information, see Set the health check grace + // period for an Auto Scaling group (https://docs.aws.amazon.com/autoscaling/ec2/userguide/health-check-grace-period.html) // in the Amazon EC2 Auto Scaling User Guide. // // Default: 0 seconds HealthCheckGracePeriod *int64 `type:"integer"` - // The service to use for the health checks. The valid values are EC2 (default) - // and ELB. If you configure an Auto Scaling group to use load balancer (ELB) - // health checks, it considers the instance unhealthy if it fails either the - // EC2 status checks or the load balancer health checks. For more information, + // Determines whether any additional health checks are performed on the instances + // in this group. Amazon EC2 health checks are always on. For more information, // see Health checks for Auto Scaling instances (https://docs.aws.amazon.com/autoscaling/ec2/userguide/healthcheck.html) // in the Amazon EC2 Auto Scaling User Guide. + // + // The valid values are EC2 (default), ELB, and VPC_LATTICE. The VPC_LATTICE + // health check type is reserved for use with VPC Lattice, which is in preview + // release and is subject to change. HealthCheckType *string `min:"1" type:"string"` // The ID of the instance used to base the launch configuration on. If specified, @@ -7538,11 +7916,12 @@ type CreateAutoScalingGroupInput struct { // in the Amazon EC2 Auto Scaling User Guide. Tags []*Tag `type:"list"` - // The Amazon Resource Names (ARN) of the target groups to associate with the - // Auto Scaling group. Instances are registered as targets with the target groups. - // The target groups receive incoming traffic and route requests to one or more - // registered targets. For more information, see Use Elastic Load Balancing - // to distribute traffic across the instances in your Auto Scaling group (https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-load-balancer.html) + // The Amazon Resource Names (ARN) of the Elastic Load Balancing target groups + // to associate with the Auto Scaling group. Instances are registered as targets + // with the target groups. The target groups receive incoming traffic and route + // requests to one or more registered targets. For more information, see Use + // Elastic Load Balancing to distribute traffic across the instances in your + // Auto Scaling group (https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-load-balancer.html) // in the Amazon EC2 Auto Scaling User Guide. TargetGroupARNs []*string `type:"list"` @@ -7556,6 +7935,18 @@ type CreateAutoScalingGroupInput struct { // | arn:aws:lambda:region:account-id:function:my-function:my-alias TerminationPolicies []*string `type:"list"` + // Reserved for use with Amazon VPC Lattice, which is in preview release and + // is subject to change. Do not use this parameter for production workloads. + // It is also subject to change. + // + // The unique identifiers of one or more traffic sources. + // + // Currently, you must specify an Amazon Resource Name (ARN) for an existing + // VPC Lattice target group. Amazon EC2 Auto Scaling registers the running instances + // with the attached target groups. The target groups receive incoming traffic + // and route requests to one or more registered targets. + TrafficSources []*TrafficSourceIdentifier `type:"list"` + // A comma-separated list of subnet IDs for a virtual private cloud (VPC) where // instances in the Auto Scaling group can be created. If you specify VPCZoneIdentifier // with AvailabilityZones, the subnets that you specify must reside in those @@ -7647,6 +8038,16 @@ func (s *CreateAutoScalingGroupInput) Validate() error { } } } + if s.TrafficSources != nil { + for i, v := range s.TrafficSources { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TrafficSources", i), err.(request.ErrInvalidParams)) + } + } + } if invalidParams.Len() > 0 { return invalidParams @@ -7804,6 +8205,12 @@ func (s *CreateAutoScalingGroupInput) SetTerminationPolicies(v []*string) *Creat return s } +// SetTrafficSources sets the TrafficSources field's value. +func (s *CreateAutoScalingGroupInput) SetTrafficSources(v []*TrafficSourceIdentifier) *CreateAutoScalingGroupInput { + s.TrafficSources = v + return s +} + // SetVPCZoneIdentifier sets the VPCZoneIdentifier field's value. func (s *CreateAutoScalingGroupInput) SetVPCZoneIdentifier(v string) *CreateAutoScalingGroupInput { s.VPCZoneIdentifier = &v @@ -8321,19 +8728,17 @@ type CustomizedMetricSpecification struct { // The name of the metric. To get the exact metric name, namespace, and dimensions, // inspect the Metric (https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_Metric.html) // object that is returned by a call to ListMetrics (https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_ListMetrics.html). - // - // MetricName is a required field - MetricName *string `type:"string" required:"true"` + MetricName *string `type:"string"` + + // The metrics to include in the target tracking scaling policy, as a metric + // data query. This can include both raw metric and metric math expressions. + Metrics []*TargetTrackingMetricDataQuery `type:"list"` // The namespace of the metric. - // - // Namespace is a required field - Namespace *string `type:"string" required:"true"` + Namespace *string `type:"string"` // The statistic of the metric. - // - // Statistic is a required field - Statistic *string `type:"string" required:"true" enum:"MetricStatistic"` + Statistic *string `type:"string" enum:"MetricStatistic"` // The unit of the metric. For a complete list of the units that CloudWatch // supports, see the MetricDatum (https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html) @@ -8362,15 +8767,6 @@ func (s CustomizedMetricSpecification) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *CustomizedMetricSpecification) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CustomizedMetricSpecification"} - if s.MetricName == nil { - invalidParams.Add(request.NewErrParamRequired("MetricName")) - } - if s.Namespace == nil { - invalidParams.Add(request.NewErrParamRequired("Namespace")) - } - if s.Statistic == nil { - invalidParams.Add(request.NewErrParamRequired("Statistic")) - } if s.Dimensions != nil { for i, v := range s.Dimensions { if v == nil { @@ -8381,6 +8777,16 @@ func (s *CustomizedMetricSpecification) Validate() error { } } } + if s.Metrics != nil { + for i, v := range s.Metrics { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Metrics", i), err.(request.ErrInvalidParams)) + } + } + } if invalidParams.Len() > 0 { return invalidParams @@ -8400,6 +8806,12 @@ func (s *CustomizedMetricSpecification) SetMetricName(v string) *CustomizedMetri return s } +// SetMetrics sets the Metrics field's value. +func (s *CustomizedMetricSpecification) SetMetrics(v []*TargetTrackingMetricDataQuery) *CustomizedMetricSpecification { + s.Metrics = v + return s +} + // SetNamespace sets the Namespace field's value. func (s *CustomizedMetricSpecification) SetNamespace(v string) *CustomizedMetricSpecification { s.Namespace = &v @@ -10827,6 +11239,136 @@ func (s *DescribeTerminationPolicyTypesOutput) SetTerminationPolicyTypes(v []*st return s } +type DescribeTrafficSourcesInput struct { + _ struct{} `type:"structure"` + + // The name of the Auto Scaling group. + // + // AutoScalingGroupName is a required field + AutoScalingGroupName *string `min:"1" type:"string" required:"true"` + + // The maximum number of items to return with this call. The maximum value is + // 50. + MaxRecords *int64 `type:"integer"` + + // The token for the next set of items to return. (You received this token from + // a previous call.) + NextToken *string `type:"string"` + + // The type of traffic source you are describing. Currently, the only valid + // value is vpc-lattice. + // + // TrafficSourceType is a required field + TrafficSourceType *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 DescribeTrafficSourcesInput) 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 DescribeTrafficSourcesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeTrafficSourcesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeTrafficSourcesInput"} + if s.AutoScalingGroupName == nil { + invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) + } + if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) + } + if s.TrafficSourceType == nil { + invalidParams.Add(request.NewErrParamRequired("TrafficSourceType")) + } + if s.TrafficSourceType != nil && len(*s.TrafficSourceType) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TrafficSourceType", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAutoScalingGroupName sets the AutoScalingGroupName field's value. +func (s *DescribeTrafficSourcesInput) SetAutoScalingGroupName(v string) *DescribeTrafficSourcesInput { + s.AutoScalingGroupName = &v + return s +} + +// SetMaxRecords sets the MaxRecords field's value. +func (s *DescribeTrafficSourcesInput) SetMaxRecords(v int64) *DescribeTrafficSourcesInput { + s.MaxRecords = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeTrafficSourcesInput) SetNextToken(v string) *DescribeTrafficSourcesInput { + s.NextToken = &v + return s +} + +// SetTrafficSourceType sets the TrafficSourceType field's value. +func (s *DescribeTrafficSourcesInput) SetTrafficSourceType(v string) *DescribeTrafficSourcesInput { + s.TrafficSourceType = &v + return s +} + +type DescribeTrafficSourcesOutput struct { + _ struct{} `type:"structure"` + + // This string indicates that the response contains more items than can be returned + // in a single response. To receive additional items, specify this string for + // the NextToken value when requesting the next set of items. This value is + // null when there are no more items to return. + NextToken *string `type:"string"` + + // Information about the traffic sources. + TrafficSources []*TrafficSourceState `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 DescribeTrafficSourcesOutput) 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 DescribeTrafficSourcesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeTrafficSourcesOutput) SetNextToken(v string) *DescribeTrafficSourcesOutput { + s.NextToken = &v + return s +} + +// SetTrafficSources sets the TrafficSources field's value. +func (s *DescribeTrafficSourcesOutput) SetTrafficSources(v []*TrafficSourceState) *DescribeTrafficSourcesOutput { + s.TrafficSources = v + return s +} + type DescribeWarmPoolInput struct { _ struct{} `type:"structure"` @@ -10902,8 +11444,10 @@ type DescribeWarmPoolOutput struct { // The instances that are currently in the warm pool. Instances []*Instance `type:"list"` - // The token for the next set of items to return. (You received this token from - // a previous call.) + // This string indicates that the response contains more items than can be returned + // in a single response. To receive additional items, specify this string for + // the NextToken value when requesting the next set of items. This value is + // null when there are no more items to return. NextToken *string `type:"string"` // The warm pool configuration details. @@ -11295,6 +11839,108 @@ func (s DetachLoadBalancersOutput) GoString() string { return s.String() } +type DetachTrafficSourcesInput struct { + _ struct{} `type:"structure"` + + // The name of the Auto Scaling group. + // + // AutoScalingGroupName is a required field + AutoScalingGroupName *string `min:"1" type:"string" required:"true"` + + // The unique identifiers of one or more traffic sources you are detaching. + // You can specify up to 10 traffic sources. + // + // Currently, you must specify an Amazon Resource Name (ARN) for an existing + // VPC Lattice target group. When you detach a target group, it enters the Removing + // state while deregistering the instances in the group. When all instances + // are deregistered, then you can no longer describe the target group using + // the DescribeTrafficSources API call. The instances continue to run. + // + // TrafficSources is a required field + TrafficSources []*TrafficSourceIdentifier `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 DetachTrafficSourcesInput) 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 DetachTrafficSourcesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DetachTrafficSourcesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DetachTrafficSourcesInput"} + if s.AutoScalingGroupName == nil { + invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) + } + if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) + } + if s.TrafficSources == nil { + invalidParams.Add(request.NewErrParamRequired("TrafficSources")) + } + if s.TrafficSources != nil { + for i, v := range s.TrafficSources { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TrafficSources", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAutoScalingGroupName sets the AutoScalingGroupName field's value. +func (s *DetachTrafficSourcesInput) SetAutoScalingGroupName(v string) *DetachTrafficSourcesInput { + s.AutoScalingGroupName = &v + return s +} + +// SetTrafficSources sets the TrafficSources field's value. +func (s *DetachTrafficSourcesInput) SetTrafficSources(v []*TrafficSourceIdentifier) *DetachTrafficSourcesInput { + s.TrafficSources = v + return s +} + +type DetachTrafficSourcesOutput struct { + _ struct{} `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 DetachTrafficSourcesOutput) 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 DetachTrafficSourcesOutput) GoString() string { + return s.String() +} + type DisableMetricsCollectionInput struct { _ struct{} `type:"structure"` @@ -12485,10 +13131,12 @@ type Group struct { // The duration of the health check grace period, in seconds. HealthCheckGracePeriod *int64 `type:"integer"` - // The service to use for the health checks. The valid values are EC2 and ELB. - // If you configure an Auto Scaling group to use ELB health checks, it considers - // the instance unhealthy if it fails either the EC2 status checks or the load - // balancer health checks. + // Determines whether any additional health checks are performed on the instances + // in this group. Amazon EC2 health checks are always on. + // + // The valid values are EC2 (default), ELB, and VPC_LATTICE. The VPC_LATTICE + // health check type is reserved for use with VPC Lattice, which is in preview + // release and is subject to change. // // HealthCheckType is a required field HealthCheckType *string `min:"1" type:"string" required:"true"` @@ -12553,6 +13201,9 @@ type Group struct { // The termination policies for the group. TerminationPolicies []*string `type:"list"` + // The unique identifiers of the traffic sources. + TrafficSources []*TrafficSourceIdentifier `type:"list"` + // One or more subnet IDs, if applicable, separated by commas. VPCZoneIdentifier *string `min:"1" type:"string"` @@ -12761,6 +13412,12 @@ func (s *Group) SetTerminationPolicies(v []*string) *Group { return s } +// SetTrafficSources sets the TrafficSources field's value. +func (s *Group) SetTrafficSources(v []*TrafficSourceIdentifier) *Group { + s.TrafficSources = v + return s +} + // SetVPCZoneIdentifier sets the VPCZoneIdentifier field's value. func (s *Group) SetVPCZoneIdentifier(v string) *Group { s.VPCZoneIdentifier = &v @@ -13995,11 +14652,9 @@ type InstancesDistribution struct { // // price-capacity-optimized (recommended) // - // Amazon EC2 Auto Scaling identifies the pools with the highest capacity availability - // for the number of instances that are launching. This means that we will request - // Spot Instances from the pools that we believe have the lowest chance of interruption - // in the near term. Amazon EC2 Auto Scaling then requests Spot Instances from - // the lowest priced of these pools. + // The price and capacity optimized allocation strategy looks at both price + // and capacity to select the Spot Instance pools that are the least likely + // to be interrupted and have the lowest possible price. SpotAllocationStrategy *string `type:"string"` // The number of Spot Instance pools across which to allocate your Spot Instances. @@ -19319,6 +19974,215 @@ func (s *TargetTrackingConfiguration) SetTargetValue(v float64) *TargetTrackingC return s } +// The metric data to return. Also defines whether this call is returning data +// for one metric only, or whether it is performing a math expression on the +// values of returned metric statistics to create a new time series. A time +// series is a series of data points, each of which is associated with a timestamp. +type TargetTrackingMetricDataQuery struct { + _ struct{} `type:"structure"` + + // The math expression to perform on the returned data, if this object is performing + // a math expression. This expression can use the Id of the other metrics to + // refer to those metrics, and can also use the Id of other expressions to use + // the result of those expressions. + // + // Conditional: Within each TargetTrackingMetricDataQuery object, you must specify + // either Expression or MetricStat, but not both. + Expression *string `min:"1" type:"string"` + + // A short name that identifies the object's results in the response. This name + // must be unique among all TargetTrackingMetricDataQuery objects specified + // for a single scaling policy. If you are performing math expressions on this + // set of data, this name represents that data and can serve as a variable in + // the mathematical expression. The valid characters are letters, numbers, and + // underscores. The first character must be a lowercase letter. + // + // Id is a required field + Id *string `min:"1" type:"string" required:"true"` + + // A human-readable label for this metric or expression. This is especially + // useful if this is a math expression, so that you know what the value represents. + Label *string `type:"string"` + + // Information about the metric data to return. + // + // Conditional: Within each TargetTrackingMetricDataQuery object, you must specify + // either Expression or MetricStat, but not both. + MetricStat *TargetTrackingMetricStat `type:"structure"` + + // Indicates whether to return the timestamps and raw data values of this metric. + // + // If you use any math expressions, specify true for this value for only the + // final math expression that the metric specification is based on. You must + // specify false for ReturnData for all the other metrics and expressions used + // in the metric specification. + // + // If you are only retrieving metrics and not performing any math expressions, + // do not specify anything for ReturnData. This sets it to its default (true). + ReturnData *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 TargetTrackingMetricDataQuery) 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 TargetTrackingMetricDataQuery) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TargetTrackingMetricDataQuery) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TargetTrackingMetricDataQuery"} + if s.Expression != nil && len(*s.Expression) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Expression", 1)) + } + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + if s.Id != nil && len(*s.Id) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Id", 1)) + } + if s.MetricStat != nil { + if err := s.MetricStat.Validate(); err != nil { + invalidParams.AddNested("MetricStat", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExpression sets the Expression field's value. +func (s *TargetTrackingMetricDataQuery) SetExpression(v string) *TargetTrackingMetricDataQuery { + s.Expression = &v + return s +} + +// SetId sets the Id field's value. +func (s *TargetTrackingMetricDataQuery) SetId(v string) *TargetTrackingMetricDataQuery { + s.Id = &v + return s +} + +// SetLabel sets the Label field's value. +func (s *TargetTrackingMetricDataQuery) SetLabel(v string) *TargetTrackingMetricDataQuery { + s.Label = &v + return s +} + +// SetMetricStat sets the MetricStat field's value. +func (s *TargetTrackingMetricDataQuery) SetMetricStat(v *TargetTrackingMetricStat) *TargetTrackingMetricDataQuery { + s.MetricStat = v + return s +} + +// SetReturnData sets the ReturnData field's value. +func (s *TargetTrackingMetricDataQuery) SetReturnData(v bool) *TargetTrackingMetricDataQuery { + s.ReturnData = &v + return s +} + +// This structure defines the CloudWatch metric to return, along with the statistic, +// period, and unit. +// +// For more information about the CloudWatch terminology below, see Amazon CloudWatch +// concepts (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html) +// in the Amazon CloudWatch User Guide. +type TargetTrackingMetricStat struct { + _ struct{} `type:"structure"` + + // Represents a specific metric. + // + // Metric is a required field + Metric *Metric `type:"structure" required:"true"` + + // The statistic to return. It can include any CloudWatch statistic or extended + // statistic. For a list of valid values, see the table in Statistics (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Statistic) + // in the Amazon CloudWatch User Guide. + // + // The most commonly used metrics for scaling is Average + // + // Stat is a required field + Stat *string `min:"1" type:"string" required:"true"` + + // The unit to use for the returned data points. For a complete list of the + // units that CloudWatch supports, see the MetricDatum (https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html) + // data type in the Amazon CloudWatch API Reference. + Unit *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 TargetTrackingMetricStat) 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 TargetTrackingMetricStat) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TargetTrackingMetricStat) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TargetTrackingMetricStat"} + if s.Metric == nil { + invalidParams.Add(request.NewErrParamRequired("Metric")) + } + if s.Stat == nil { + invalidParams.Add(request.NewErrParamRequired("Stat")) + } + if s.Stat != nil && len(*s.Stat) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Stat", 1)) + } + if s.Metric != nil { + if err := s.Metric.Validate(); err != nil { + invalidParams.AddNested("Metric", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMetric sets the Metric field's value. +func (s *TargetTrackingMetricStat) SetMetric(v *Metric) *TargetTrackingMetricStat { + s.Metric = v + return s +} + +// SetStat sets the Stat field's value. +func (s *TargetTrackingMetricStat) SetStat(v string) *TargetTrackingMetricStat { + s.Stat = &v + return s +} + +// SetUnit sets the Unit field's value. +func (s *TargetTrackingMetricStat) SetUnit(v string) *TargetTrackingMetricStat { + s.Unit = &v + return s +} + type TerminateInstanceInAutoScalingGroupInput struct { _ struct{} `type:"structure"` @@ -19456,6 +20320,111 @@ func (s *TotalLocalStorageGBRequest) SetMin(v float64) *TotalLocalStorageGBReque return s } +// Describes the identifier of a traffic source. +// +// Currently, you must specify an Amazon Resource Name (ARN) for an existing +// VPC Lattice target group. +type TrafficSourceIdentifier struct { + _ struct{} `type:"structure"` + + // The unique identifier of the traffic source. + Identifier *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 TrafficSourceIdentifier) 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 TrafficSourceIdentifier) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TrafficSourceIdentifier) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TrafficSourceIdentifier"} + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIdentifier sets the Identifier field's value. +func (s *TrafficSourceIdentifier) SetIdentifier(v string) *TrafficSourceIdentifier { + s.Identifier = &v + return s +} + +// Describes the state of a traffic source. +type TrafficSourceState struct { + _ struct{} `type:"structure"` + + // The following are the possible states for a VPC Lattice target group: + // + // * Adding - The Auto Scaling instances are being registered with the target + // group. + // + // * Added - All Auto Scaling instances are registered with the target group. + // + // * InService - At least one Auto Scaling instance passed the VPC_LATTICE + // health check. + // + // * Removing - The Auto Scaling instances are being deregistered from the + // target group. If connection draining is enabled, VPC Lattice waits for + // in-flight requests to complete before deregistering the instances. + // + // * Removed - All Auto Scaling instances are deregistered from the target + // group. + State *string `min:"1" type:"string"` + + // The unique identifier of the traffic source. Currently, this is the Amazon + // Resource Name (ARN) for a VPC Lattice target group. + TrafficSource *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 TrafficSourceState) 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 TrafficSourceState) GoString() string { + return s.String() +} + +// SetState sets the State field's value. +func (s *TrafficSourceState) SetState(v string) *TrafficSourceState { + s.State = &v + return s +} + +// SetTrafficSource sets the TrafficSource field's value. +func (s *TrafficSourceState) SetTrafficSource(v string) *TrafficSourceState { + s.TrafficSource = &v + return s +} + type UpdateAutoScalingGroupInput struct { _ struct{} `type:"structure"` @@ -19522,17 +20491,19 @@ type UpdateAutoScalingGroupInput struct { // The amount of time, in seconds, that Amazon EC2 Auto Scaling waits before // checking the health status of an EC2 instance that has come into service - // and marking it unhealthy due to a failed Elastic Load Balancing or custom - // health check. This is useful if your instances do not immediately pass these - // health checks after they enter the InService state. For more information, - // see Set the health check grace period for an Auto Scaling group (https://docs.aws.amazon.com/autoscaling/ec2/userguide/health-check-grace-period.html) + // and marking it unhealthy due to a failed health check. This is useful if + // your instances do not immediately pass their health checks after they enter + // the InService state. For more information, see Set the health check grace + // period for an Auto Scaling group (https://docs.aws.amazon.com/autoscaling/ec2/userguide/health-check-grace-period.html) // in the Amazon EC2 Auto Scaling User Guide. HealthCheckGracePeriod *int64 `type:"integer"` - // The service to use for the health checks. The valid values are EC2 and ELB. - // If you configure an Auto Scaling group to use ELB health checks, it considers - // the instance unhealthy if it fails either the EC2 status checks or the load - // balancer health checks. + // Determines whether any additional health checks are performed on the instances + // in this group. Amazon EC2 health checks are always on. + // + // The valid values are EC2 (default), ELB, and VPC_LATTICE. The VPC_LATTICE + // health check type is reserved for use with VPC Lattice, which is in preview + // release and is subject to change. HealthCheckType *string `min:"1" type:"string"` // The name of the launch configuration. If you specify LaunchConfigurationName diff --git a/service/autoscaling/autoscalingiface/interface.go b/service/autoscaling/autoscalingiface/interface.go index 89f3e3073f8..2ce7bf0a5b7 100644 --- a/service/autoscaling/autoscalingiface/interface.go +++ b/service/autoscaling/autoscalingiface/interface.go @@ -72,6 +72,10 @@ type AutoScalingAPI interface { AttachLoadBalancersWithContext(aws.Context, *autoscaling.AttachLoadBalancersInput, ...request.Option) (*autoscaling.AttachLoadBalancersOutput, error) AttachLoadBalancersRequest(*autoscaling.AttachLoadBalancersInput) (*request.Request, *autoscaling.AttachLoadBalancersOutput) + AttachTrafficSources(*autoscaling.AttachTrafficSourcesInput) (*autoscaling.AttachTrafficSourcesOutput, error) + AttachTrafficSourcesWithContext(aws.Context, *autoscaling.AttachTrafficSourcesInput, ...request.Option) (*autoscaling.AttachTrafficSourcesOutput, error) + AttachTrafficSourcesRequest(*autoscaling.AttachTrafficSourcesInput) (*request.Request, *autoscaling.AttachTrafficSourcesOutput) + BatchDeleteScheduledAction(*autoscaling.BatchDeleteScheduledActionInput) (*autoscaling.BatchDeleteScheduledActionOutput, error) BatchDeleteScheduledActionWithContext(aws.Context, *autoscaling.BatchDeleteScheduledActionInput, ...request.Option) (*autoscaling.BatchDeleteScheduledActionOutput, error) BatchDeleteScheduledActionRequest(*autoscaling.BatchDeleteScheduledActionInput) (*request.Request, *autoscaling.BatchDeleteScheduledActionOutput) @@ -232,6 +236,10 @@ type AutoScalingAPI interface { DescribeTerminationPolicyTypesWithContext(aws.Context, *autoscaling.DescribeTerminationPolicyTypesInput, ...request.Option) (*autoscaling.DescribeTerminationPolicyTypesOutput, error) DescribeTerminationPolicyTypesRequest(*autoscaling.DescribeTerminationPolicyTypesInput) (*request.Request, *autoscaling.DescribeTerminationPolicyTypesOutput) + DescribeTrafficSources(*autoscaling.DescribeTrafficSourcesInput) (*autoscaling.DescribeTrafficSourcesOutput, error) + DescribeTrafficSourcesWithContext(aws.Context, *autoscaling.DescribeTrafficSourcesInput, ...request.Option) (*autoscaling.DescribeTrafficSourcesOutput, error) + DescribeTrafficSourcesRequest(*autoscaling.DescribeTrafficSourcesInput) (*request.Request, *autoscaling.DescribeTrafficSourcesOutput) + DescribeWarmPool(*autoscaling.DescribeWarmPoolInput) (*autoscaling.DescribeWarmPoolOutput, error) DescribeWarmPoolWithContext(aws.Context, *autoscaling.DescribeWarmPoolInput, ...request.Option) (*autoscaling.DescribeWarmPoolOutput, error) DescribeWarmPoolRequest(*autoscaling.DescribeWarmPoolInput) (*request.Request, *autoscaling.DescribeWarmPoolOutput) @@ -248,6 +256,10 @@ type AutoScalingAPI interface { DetachLoadBalancersWithContext(aws.Context, *autoscaling.DetachLoadBalancersInput, ...request.Option) (*autoscaling.DetachLoadBalancersOutput, error) DetachLoadBalancersRequest(*autoscaling.DetachLoadBalancersInput) (*request.Request, *autoscaling.DetachLoadBalancersOutput) + DetachTrafficSources(*autoscaling.DetachTrafficSourcesInput) (*autoscaling.DetachTrafficSourcesOutput, error) + DetachTrafficSourcesWithContext(aws.Context, *autoscaling.DetachTrafficSourcesInput, ...request.Option) (*autoscaling.DetachTrafficSourcesOutput, error) + DetachTrafficSourcesRequest(*autoscaling.DetachTrafficSourcesInput) (*request.Request, *autoscaling.DetachTrafficSourcesOutput) + DisableMetricsCollection(*autoscaling.DisableMetricsCollectionInput) (*autoscaling.DisableMetricsCollectionOutput, error) DisableMetricsCollectionWithContext(aws.Context, *autoscaling.DisableMetricsCollectionInput, ...request.Option) (*autoscaling.DisableMetricsCollectionOutput, error) DisableMetricsCollectionRequest(*autoscaling.DisableMetricsCollectionInput) (*request.Request, *autoscaling.DisableMetricsCollectionOutput) diff --git a/service/iottwinmaker/api.go b/service/iottwinmaker/api.go index 90e8b7403fd..9396b0a50f8 100644 --- a/service/iottwinmaker/api.go +++ b/service/iottwinmaker/api.go @@ -391,6 +391,102 @@ func (c *IoTTwinMaker) CreateSceneWithContext(ctx aws.Context, input *CreateScen return out, req.Send() } +const opCreateSyncJob = "CreateSyncJob" + +// CreateSyncJobRequest generates a "aws/request.Request" representing the +// client's request for the CreateSyncJob 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 CreateSyncJob for more information on using the CreateSyncJob +// 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 CreateSyncJobRequest method. +// req, resp := client.CreateSyncJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iottwinmaker-2021-11-29/CreateSyncJob +func (c *IoTTwinMaker) CreateSyncJobRequest(input *CreateSyncJobInput) (req *request.Request, output *CreateSyncJobOutput) { + op := &request.Operation{ + Name: opCreateSyncJob, + HTTPMethod: "POST", + HTTPPath: "/workspaces/{workspaceId}/sync-jobs/{syncSource}", + } + + if input == nil { + input = &CreateSyncJobInput{} + } + + output = &CreateSyncJobOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// CreateSyncJob API operation for AWS IoT TwinMaker. +// +// This action creates a SyncJob. +// +// 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 IoT TwinMaker's +// API operation CreateSyncJob for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An unexpected error has occurred. +// +// - AccessDeniedException +// Access is denied. +// +// - ThrottlingException +// The rate exceeds the limit. +// +// - ValidationException +// Failed +// +// - ConflictException +// A conflict occurred. +// +// - ServiceQuotaExceededException +// The service quota was exceeded. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iottwinmaker-2021-11-29/CreateSyncJob +func (c *IoTTwinMaker) CreateSyncJob(input *CreateSyncJobInput) (*CreateSyncJobOutput, error) { + req, out := c.CreateSyncJobRequest(input) + return out, req.Send() +} + +// CreateSyncJobWithContext is the same as CreateSyncJob with the addition of +// the ability to pass a context and additional request options. +// +// See CreateSyncJob 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 *IoTTwinMaker) CreateSyncJobWithContext(ctx aws.Context, input *CreateSyncJobInput, opts ...request.Option) (*CreateSyncJobOutput, error) { + req, out := c.CreateSyncJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateWorkspace = "CreateWorkspace" // CreateWorkspaceRequest generates a "aws/request.Request" representing the @@ -767,6 +863,102 @@ func (c *IoTTwinMaker) DeleteSceneWithContext(ctx aws.Context, input *DeleteScen return out, req.Send() } +const opDeleteSyncJob = "DeleteSyncJob" + +// DeleteSyncJobRequest generates a "aws/request.Request" representing the +// client's request for the DeleteSyncJob 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 DeleteSyncJob for more information on using the DeleteSyncJob +// 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 DeleteSyncJobRequest method. +// req, resp := client.DeleteSyncJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iottwinmaker-2021-11-29/DeleteSyncJob +func (c *IoTTwinMaker) DeleteSyncJobRequest(input *DeleteSyncJobInput) (req *request.Request, output *DeleteSyncJobOutput) { + op := &request.Operation{ + Name: opDeleteSyncJob, + HTTPMethod: "DELETE", + HTTPPath: "/workspaces/{workspaceId}/sync-jobs/{syncSource}", + } + + if input == nil { + input = &DeleteSyncJobInput{} + } + + output = &DeleteSyncJobOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// DeleteSyncJob API operation for AWS IoT TwinMaker. +// +// Delete the SyncJob. +// +// 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 IoT TwinMaker's +// API operation DeleteSyncJob for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An unexpected error has occurred. +// +// - AccessDeniedException +// Access is denied. +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - ThrottlingException +// The rate exceeds the limit. +// +// - ValidationException +// Failed +// +// - ServiceQuotaExceededException +// The service quota was exceeded. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iottwinmaker-2021-11-29/DeleteSyncJob +func (c *IoTTwinMaker) DeleteSyncJob(input *DeleteSyncJobInput) (*DeleteSyncJobOutput, error) { + req, out := c.DeleteSyncJobRequest(input) + return out, req.Send() +} + +// DeleteSyncJobWithContext is the same as DeleteSyncJob with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteSyncJob 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 *IoTTwinMaker) DeleteSyncJobWithContext(ctx aws.Context, input *DeleteSyncJobInput, opts ...request.Option) (*DeleteSyncJobOutput, error) { + req, out := c.DeleteSyncJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteWorkspace = "DeleteWorkspace" // DeleteWorkspaceRequest generates a "aws/request.Request" representing the @@ -1704,6 +1896,102 @@ func (c *IoTTwinMaker) GetSceneWithContext(ctx aws.Context, input *GetSceneInput return out, req.Send() } +const opGetSyncJob = "GetSyncJob" + +// GetSyncJobRequest generates a "aws/request.Request" representing the +// client's request for the GetSyncJob 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 GetSyncJob for more information on using the GetSyncJob +// 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 GetSyncJobRequest method. +// req, resp := client.GetSyncJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iottwinmaker-2021-11-29/GetSyncJob +func (c *IoTTwinMaker) GetSyncJobRequest(input *GetSyncJobInput) (req *request.Request, output *GetSyncJobOutput) { + op := &request.Operation{ + Name: opGetSyncJob, + HTTPMethod: "GET", + HTTPPath: "/sync-jobs/{syncSource}", + } + + if input == nil { + input = &GetSyncJobInput{} + } + + output = &GetSyncJobOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// GetSyncJob API operation for AWS IoT TwinMaker. +// +// Gets the SyncJob. +// +// 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 IoT TwinMaker's +// API operation GetSyncJob for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An unexpected error has occurred. +// +// - AccessDeniedException +// Access is denied. +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - ThrottlingException +// The rate exceeds the limit. +// +// - ValidationException +// Failed +// +// - ServiceQuotaExceededException +// The service quota was exceeded. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iottwinmaker-2021-11-29/GetSyncJob +func (c *IoTTwinMaker) GetSyncJob(input *GetSyncJobInput) (*GetSyncJobOutput, error) { + req, out := c.GetSyncJobRequest(input) + return out, req.Send() +} + +// GetSyncJobWithContext is the same as GetSyncJob with the addition of +// the ability to pass a context and additional request options. +// +// See GetSyncJob 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 *IoTTwinMaker) GetSyncJobWithContext(ctx aws.Context, input *GetSyncJobInput, opts ...request.Option) (*GetSyncJobOutput, error) { + req, out := c.GetSyncJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetWorkspace = "GetWorkspace" // GetWorkspaceRequest generates a "aws/request.Request" representing the @@ -2238,74 +2526,374 @@ func (c *IoTTwinMaker) ListScenesPagesWithContext(ctx aws.Context, input *ListSc return p.Err() } -const opListTagsForResource = "ListTagsForResource" +const opListSyncJobs = "ListSyncJobs" -// ListTagsForResourceRequest generates a "aws/request.Request" representing the -// client's request for the ListTagsForResource operation. The "output" return +// ListSyncJobsRequest generates a "aws/request.Request" representing the +// client's request for the ListSyncJobs 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 ListTagsForResource for more information on using the ListTagsForResource +// See ListSyncJobs for more information on using the ListSyncJobs // 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 ListTagsForResourceRequest method. -// req, resp := client.ListTagsForResourceRequest(params) +// // Example sending a request using the ListSyncJobsRequest method. +// req, resp := client.ListSyncJobsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/iottwinmaker-2021-11-29/ListTagsForResource -func (c *IoTTwinMaker) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/iottwinmaker-2021-11-29/ListSyncJobs +func (c *IoTTwinMaker) ListSyncJobsRequest(input *ListSyncJobsInput) (req *request.Request, output *ListSyncJobsOutput) { op := &request.Operation{ - Name: opListTagsForResource, + Name: opListSyncJobs, HTTPMethod: "POST", - HTTPPath: "/tags-list", + HTTPPath: "/workspaces/{workspaceId}/sync-jobs-list", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, } if input == nil { - input = &ListTagsForResourceInput{} + input = &ListSyncJobsInput{} } - output = &ListTagsForResourceOutput{} + output = &ListSyncJobsOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } -// ListTagsForResource API operation for AWS IoT TwinMaker. +// ListSyncJobs API operation for AWS IoT TwinMaker. // -// Lists all tags associated with a resource. +// List all SyncJobs. // // 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 IoT TwinMaker's -// API operation ListTagsForResource for usage and error information. +// API operation ListSyncJobs for usage and error information. // // Returned Error Types: // +// - InternalServerException +// An unexpected error has occurred. +// // - AccessDeniedException // Access is denied. // -// - ResourceNotFoundException -// The resource wasn't found. +// - ThrottlingException +// The rate exceeds the limit. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/iottwinmaker-2021-11-29/ListTagsForResource -func (c *IoTTwinMaker) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { - req, out := c.ListTagsForResourceRequest(input) - return out, req.Send() -} - +// - ValidationException +// Failed +// +// - ServiceQuotaExceededException +// The service quota was exceeded. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iottwinmaker-2021-11-29/ListSyncJobs +func (c *IoTTwinMaker) ListSyncJobs(input *ListSyncJobsInput) (*ListSyncJobsOutput, error) { + req, out := c.ListSyncJobsRequest(input) + return out, req.Send() +} + +// ListSyncJobsWithContext is the same as ListSyncJobs with the addition of +// the ability to pass a context and additional request options. +// +// See ListSyncJobs 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 *IoTTwinMaker) ListSyncJobsWithContext(ctx aws.Context, input *ListSyncJobsInput, opts ...request.Option) (*ListSyncJobsOutput, error) { + req, out := c.ListSyncJobsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListSyncJobsPages iterates over the pages of a ListSyncJobs operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListSyncJobs method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListSyncJobs operation. +// pageNum := 0 +// err := client.ListSyncJobsPages(params, +// func(page *iottwinmaker.ListSyncJobsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *IoTTwinMaker) ListSyncJobsPages(input *ListSyncJobsInput, fn func(*ListSyncJobsOutput, bool) bool) error { + return c.ListSyncJobsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListSyncJobsPagesWithContext same as ListSyncJobsPages except +// it takes a Context and allows setting request options on the pages. +// +// 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 *IoTTwinMaker) ListSyncJobsPagesWithContext(ctx aws.Context, input *ListSyncJobsInput, fn func(*ListSyncJobsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListSyncJobsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListSyncJobsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListSyncJobsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListSyncResources = "ListSyncResources" + +// ListSyncResourcesRequest generates a "aws/request.Request" representing the +// client's request for the ListSyncResources 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 ListSyncResources for more information on using the ListSyncResources +// 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 ListSyncResourcesRequest method. +// req, resp := client.ListSyncResourcesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iottwinmaker-2021-11-29/ListSyncResources +func (c *IoTTwinMaker) ListSyncResourcesRequest(input *ListSyncResourcesInput) (req *request.Request, output *ListSyncResourcesOutput) { + op := &request.Operation{ + Name: opListSyncResources, + HTTPMethod: "POST", + HTTPPath: "/workspaces/{workspaceId}/sync-jobs/{syncSource}/resources-list", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListSyncResourcesInput{} + } + + output = &ListSyncResourcesOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// ListSyncResources API operation for AWS IoT TwinMaker. +// +// Lists the sync resources. +// +// 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 IoT TwinMaker's +// API operation ListSyncResources for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An unexpected error has occurred. +// +// - AccessDeniedException +// Access is denied. +// +// - ThrottlingException +// The rate exceeds the limit. +// +// - ValidationException +// Failed +// +// - ServiceQuotaExceededException +// The service quota was exceeded. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iottwinmaker-2021-11-29/ListSyncResources +func (c *IoTTwinMaker) ListSyncResources(input *ListSyncResourcesInput) (*ListSyncResourcesOutput, error) { + req, out := c.ListSyncResourcesRequest(input) + return out, req.Send() +} + +// ListSyncResourcesWithContext is the same as ListSyncResources with the addition of +// the ability to pass a context and additional request options. +// +// See ListSyncResources 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 *IoTTwinMaker) ListSyncResourcesWithContext(ctx aws.Context, input *ListSyncResourcesInput, opts ...request.Option) (*ListSyncResourcesOutput, error) { + req, out := c.ListSyncResourcesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListSyncResourcesPages iterates over the pages of a ListSyncResources operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListSyncResources method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListSyncResources operation. +// pageNum := 0 +// err := client.ListSyncResourcesPages(params, +// func(page *iottwinmaker.ListSyncResourcesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *IoTTwinMaker) ListSyncResourcesPages(input *ListSyncResourcesInput, fn func(*ListSyncResourcesOutput, bool) bool) error { + return c.ListSyncResourcesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListSyncResourcesPagesWithContext same as ListSyncResourcesPages except +// it takes a Context and allows setting request options on the pages. +// +// 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 *IoTTwinMaker) ListSyncResourcesPagesWithContext(ctx aws.Context, input *ListSyncResourcesInput, fn func(*ListSyncResourcesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListSyncResourcesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListSyncResourcesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListSyncResourcesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListTagsForResource = "ListTagsForResource" + +// ListTagsForResourceRequest generates a "aws/request.Request" representing the +// client's request for the ListTagsForResource 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 ListTagsForResource for more information on using the ListTagsForResource +// 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 ListTagsForResourceRequest method. +// req, resp := client.ListTagsForResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iottwinmaker-2021-11-29/ListTagsForResource +func (c *IoTTwinMaker) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { + op := &request.Operation{ + Name: opListTagsForResource, + HTTPMethod: "POST", + HTTPPath: "/tags-list", + } + + if input == nil { + input = &ListTagsForResourceInput{} + } + + output = &ListTagsForResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// ListTagsForResource API operation for AWS IoT TwinMaker. +// +// Lists all tags associated with a 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 IoT TwinMaker's +// API operation ListTagsForResource for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// Access is denied. +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iottwinmaker-2021-11-29/ListTagsForResource +func (c *IoTTwinMaker) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) + return out, req.Send() +} + // ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of // the ability to pass a context and additional request options. // @@ -3682,6 +4270,9 @@ type ComponentResponse struct { // The status of the component type. Status *Status `locationName:"status" type:"structure"` + + // The syncSource of the sync job, if this entity was created by a sync job. + SyncSource *string `locationName:"syncSource" type:"string"` } // String returns the string representation. @@ -3744,6 +4335,12 @@ func (s *ComponentResponse) SetStatus(v *Status) *ComponentResponse { return s } +// SetSyncSource sets the SyncSource field's value. +func (s *ComponentResponse) SetSyncSource(v string) *ComponentResponse { + s.SyncSource = &v + return s +} + // An object that contains information about a component type. type ComponentTypeSummary struct { _ struct{} `type:"structure"` @@ -3758,6 +4355,9 @@ type ComponentTypeSummary struct { // ComponentTypeId is a required field ComponentTypeId *string `locationName:"componentTypeId" min:"1" type:"string" required:"true"` + // The component type name. + ComponentTypeName *string `locationName:"componentTypeName" type:"string"` + // The date and time when the component type was created. // // CreationDateTime is a required field @@ -3805,6 +4405,12 @@ func (s *ComponentTypeSummary) SetComponentTypeId(v string) *ComponentTypeSummar return s } +// SetComponentTypeName sets the ComponentTypeName field's value. +func (s *ComponentTypeSummary) SetComponentTypeName(v string) *ComponentTypeSummary { + s.ComponentTypeName = &v + return s +} + // SetCreationDateTime sets the CreationDateTime field's value. func (s *ComponentTypeSummary) SetCreationDateTime(v time.Time) *ComponentTypeSummary { s.CreationDateTime = &v @@ -4121,6 +4727,9 @@ type CreateComponentTypeInput struct { // ComponentTypeId is a required field ComponentTypeId *string `location:"uri" locationName:"componentTypeId" min:"1" type:"string" required:"true"` + // A friendly name for the component type. + ComponentTypeName *string `locationName:"componentTypeName" type:"string"` + // The description of the component type. Description *string `locationName:"description" type:"string"` @@ -4216,6 +4825,12 @@ func (s *CreateComponentTypeInput) SetComponentTypeId(v string) *CreateComponent return s } +// SetComponentTypeName sets the ComponentTypeName field's value. +func (s *CreateComponentTypeInput) SetComponentTypeName(v string) *CreateComponentTypeInput { + s.ComponentTypeName = &v + return s +} + // SetDescription sets the Description field's value. func (s *CreateComponentTypeInput) SetDescription(v string) *CreateComponentTypeInput { s.Description = &v @@ -4664,6 +5279,156 @@ func (s *CreateSceneOutput) SetCreationDateTime(v time.Time) *CreateSceneOutput return s } +type CreateSyncJobInput struct { + _ struct{} `type:"structure"` + + // The SyncJob IAM role. This IAM role is used by the sync job to read from + // the syncSource, and create, update or delete the corresponding resources. + // + // SyncRole is a required field + SyncRole *string `locationName:"syncRole" min:"20" type:"string" required:"true"` + + // The sync source. + // + // Currently the only supported syncSoucre is SITEWISE . + // + // SyncSource is a required field + SyncSource *string `location:"uri" locationName:"syncSource" type:"string" required:"true"` + + // The SyncJob tags. + Tags map[string]*string `locationName:"tags" type:"map"` + + // The workspace Id. + // + // WorkspaceId is a required field + WorkspaceId *string `location:"uri" locationName:"workspaceId" 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 CreateSyncJobInput) 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 CreateSyncJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateSyncJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateSyncJobInput"} + if s.SyncRole == nil { + invalidParams.Add(request.NewErrParamRequired("SyncRole")) + } + if s.SyncRole != nil && len(*s.SyncRole) < 20 { + invalidParams.Add(request.NewErrParamMinLen("SyncRole", 20)) + } + if s.SyncSource == nil { + invalidParams.Add(request.NewErrParamRequired("SyncSource")) + } + if s.SyncSource != nil && len(*s.SyncSource) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SyncSource", 1)) + } + if s.WorkspaceId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkspaceId")) + } + if s.WorkspaceId != nil && len(*s.WorkspaceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WorkspaceId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSyncRole sets the SyncRole field's value. +func (s *CreateSyncJobInput) SetSyncRole(v string) *CreateSyncJobInput { + s.SyncRole = &v + return s +} + +// SetSyncSource sets the SyncSource field's value. +func (s *CreateSyncJobInput) SetSyncSource(v string) *CreateSyncJobInput { + s.SyncSource = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateSyncJobInput) SetTags(v map[string]*string) *CreateSyncJobInput { + s.Tags = v + return s +} + +// SetWorkspaceId sets the WorkspaceId field's value. +func (s *CreateSyncJobInput) SetWorkspaceId(v string) *CreateSyncJobInput { + s.WorkspaceId = &v + return s +} + +type CreateSyncJobOutput struct { + _ struct{} `type:"structure"` + + // The SyncJob ARN. + // + // Arn is a required field + Arn *string `locationName:"arn" min:"20" type:"string" required:"true"` + + // The date and time for the SyncJob creation. + // + // CreationDateTime is a required field + CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp" required:"true"` + + // The SyncJob response state. + // + // State is a required field + State *string `locationName:"state" type:"string" required:"true" enum:"SyncJobState"` +} + +// 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 CreateSyncJobOutput) 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 CreateSyncJobOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CreateSyncJobOutput) SetArn(v string) *CreateSyncJobOutput { + s.Arn = &v + return s +} + +// SetCreationDateTime sets the CreationDateTime field's value. +func (s *CreateSyncJobOutput) SetCreationDateTime(v time.Time) *CreateSyncJobOutput { + s.CreationDateTime = &v + return s +} + +// SetState sets the State field's value. +func (s *CreateSyncJobOutput) SetState(v string) *CreateSyncJobOutput { + s.State = &v + return s +} + type CreateWorkspaceInput struct { _ struct{} `type:"structure"` @@ -5410,6 +6175,107 @@ func (s DeleteSceneOutput) GoString() string { return s.String() } +type DeleteSyncJobInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The sync source. + // + // Currently the only supported syncSoucre is SITEWISE . + // + // SyncSource is a required field + SyncSource *string `location:"uri" locationName:"syncSource" type:"string" required:"true"` + + // The workspace Id. + // + // WorkspaceId is a required field + WorkspaceId *string `location:"uri" locationName:"workspaceId" 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 DeleteSyncJobInput) 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 DeleteSyncJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteSyncJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteSyncJobInput"} + if s.SyncSource == nil { + invalidParams.Add(request.NewErrParamRequired("SyncSource")) + } + if s.SyncSource != nil && len(*s.SyncSource) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SyncSource", 1)) + } + if s.WorkspaceId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkspaceId")) + } + if s.WorkspaceId != nil && len(*s.WorkspaceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WorkspaceId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSyncSource sets the SyncSource field's value. +func (s *DeleteSyncJobInput) SetSyncSource(v string) *DeleteSyncJobInput { + s.SyncSource = &v + return s +} + +// SetWorkspaceId sets the WorkspaceId field's value. +func (s *DeleteSyncJobInput) SetWorkspaceId(v string) *DeleteSyncJobInput { + s.WorkspaceId = &v + return s +} + +type DeleteSyncJobOutput struct { + _ struct{} `type:"structure"` + + // The SyncJob response state. + // + // State is a required field + State *string `locationName:"state" type:"string" required:"true" enum:"SyncJobState"` +} + +// 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 DeleteSyncJobOutput) 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 DeleteSyncJobOutput) GoString() string { + return s.String() +} + +// SetState sets the State field's value. +func (s *DeleteSyncJobOutput) SetState(v string) *DeleteSyncJobOutput { + s.State = &v + return s +} + type DeleteWorkspaceInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -6063,6 +6929,9 @@ type GetComponentTypeOutput struct { // ComponentTypeId is a required field ComponentTypeId *string `locationName:"componentTypeId" min:"1" type:"string" required:"true"` + // The component type name. + ComponentTypeName *string `locationName:"componentTypeName" type:"string"` + // The date and time when the component type was created. // // CreationDateTime is a required field @@ -6101,6 +6970,9 @@ type GetComponentTypeOutput struct { // The current status of the component type. Status *Status `locationName:"status" type:"structure"` + // The syncSource of the sync job, if this entity was created by a sync job. + SyncSource *string `locationName:"syncSource" type:"string"` + // The date and time when the component was last updated. // // UpdateDateTime is a required field @@ -6142,6 +7014,12 @@ func (s *GetComponentTypeOutput) SetComponentTypeId(v string) *GetComponentTypeO return s } +// SetComponentTypeName sets the ComponentTypeName field's value. +func (s *GetComponentTypeOutput) SetComponentTypeName(v string) *GetComponentTypeOutput { + s.ComponentTypeName = &v + return s +} + // SetCreationDateTime sets the CreationDateTime field's value. func (s *GetComponentTypeOutput) SetCreationDateTime(v time.Time) *GetComponentTypeOutput { s.CreationDateTime = &v @@ -6202,6 +7080,12 @@ func (s *GetComponentTypeOutput) SetStatus(v *Status) *GetComponentTypeOutput { return s } +// SetSyncSource sets the SyncSource field's value. +func (s *GetComponentTypeOutput) SetSyncSource(v string) *GetComponentTypeOutput { + s.SyncSource = &v + return s +} + // SetUpdateDateTime sets the UpdateDateTime field's value. func (s *GetComponentTypeOutput) SetUpdateDateTime(v time.Time) *GetComponentTypeOutput { s.UpdateDateTime = &v @@ -6325,6 +7209,9 @@ type GetEntityOutput struct { // Status is a required field Status *Status `locationName:"status" type:"structure" required:"true"` + // The syncSource of the sync job, if this entity was created by a sync job. + SyncSource *string `locationName:"syncSource" type:"string"` + // The date and time when the entity was last updated. // // UpdateDateTime is a required field @@ -6408,6 +7295,12 @@ func (s *GetEntityOutput) SetStatus(v *Status) *GetEntityOutput { return s } +// SetSyncSource sets the SyncSource field's value. +func (s *GetEntityOutput) SetSyncSource(v string) *GetEntityOutput { + s.SyncSource = &v + return s +} + // SetUpdateDateTime sets the UpdateDateTime field's value. func (s *GetEntityOutput) SetUpdateDateTime(v time.Time) *GetEntityOutput { s.UpdateDateTime = &v @@ -7112,13 +8005,18 @@ func (s *GetSceneOutput) SetWorkspaceId(v string) *GetSceneOutput { return s } -type GetWorkspaceInput struct { +type GetSyncJobInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The ID of the workspace. + // The sync soucre. // - // WorkspaceId is a required field - WorkspaceId *string `location:"uri" locationName:"workspaceId" min:"1" type:"string" required:"true"` + // Currently the only supported syncSoucre is SITEWISE . + // + // SyncSource is a required field + SyncSource *string `location:"uri" locationName:"syncSource" type:"string" required:"true"` + + // The workspace Id. + WorkspaceId *string `location:"querystring" locationName:"workspace" min:"1" type:"string"` } // String returns the string representation. @@ -7126,7 +8024,7 @@ type GetWorkspaceInput 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 GetWorkspaceInput) String() string { +func (s GetSyncJobInput) String() string { return awsutil.Prettify(s) } @@ -7135,15 +8033,18 @@ func (s GetWorkspaceInput) 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 GetWorkspaceInput) GoString() string { +func (s GetSyncJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *GetWorkspaceInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetWorkspaceInput"} - if s.WorkspaceId == nil { - invalidParams.Add(request.NewErrParamRequired("WorkspaceId")) +func (s *GetSyncJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetSyncJobInput"} + if s.SyncSource == nil { + invalidParams.Add(request.NewErrParamRequired("SyncSource")) + } + if s.SyncSource != nil && len(*s.SyncSource) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SyncSource", 1)) } if s.WorkspaceId != nil && len(*s.WorkspaceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("WorkspaceId", 1)) @@ -7155,45 +8056,54 @@ func (s *GetWorkspaceInput) Validate() error { return nil } +// SetSyncSource sets the SyncSource field's value. +func (s *GetSyncJobInput) SetSyncSource(v string) *GetSyncJobInput { + s.SyncSource = &v + return s +} + // SetWorkspaceId sets the WorkspaceId field's value. -func (s *GetWorkspaceInput) SetWorkspaceId(v string) *GetWorkspaceInput { +func (s *GetSyncJobInput) SetWorkspaceId(v string) *GetSyncJobInput { s.WorkspaceId = &v return s } -type GetWorkspaceOutput struct { +type GetSyncJobOutput struct { _ struct{} `type:"structure"` - // The ARN of the workspace. + // The sync job ARN. // // Arn is a required field Arn *string `locationName:"arn" min:"20" type:"string" required:"true"` - // The date and time when the workspace was created. + // The creation date and time. // // CreationDateTime is a required field CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp" required:"true"` - // The description of the workspace. - Description *string `locationName:"description" type:"string"` + // The SyncJob response status. + // + // Status is a required field + Status *SyncJobStatus `locationName:"status" type:"structure" required:"true"` - // The ARN of the execution role associated with the workspace. + // The sync IAM role. // - // Role is a required field - Role *string `locationName:"role" min:"20" type:"string" required:"true"` + // SyncRole is a required field + SyncRole *string `locationName:"syncRole" min:"20" type:"string" required:"true"` - // The ARN of the S3 bucket where resources associated with the workspace are - // stored. + // The sync soucre. // - // S3Location is a required field - S3Location *string `locationName:"s3Location" type:"string" required:"true"` + // Currently the only supported syncSoucre is SITEWISE . + // + // SyncSource is a required field + SyncSource *string `locationName:"syncSource" type:"string" required:"true"` - // The date and time when the workspace was last updated. + // The update date and time. // // UpdateDateTime is a required field UpdateDateTime *time.Time `locationName:"updateDateTime" type:"timestamp" required:"true"` - // The ID of the workspace. + // The ID of the workspace that contains the sync job. // // WorkspaceId is a required field WorkspaceId *string `locationName:"workspaceId" min:"1" type:"string" required:"true"` @@ -7204,7 +8114,7 @@ type GetWorkspaceOutput 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 GetWorkspaceOutput) String() string { +func (s GetSyncJobOutput) String() string { return awsutil.Prettify(s) } @@ -7213,58 +8123,205 @@ func (s GetWorkspaceOutput) 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 GetWorkspaceOutput) GoString() string { +func (s GetSyncJobOutput) GoString() string { return s.String() } // SetArn sets the Arn field's value. -func (s *GetWorkspaceOutput) SetArn(v string) *GetWorkspaceOutput { +func (s *GetSyncJobOutput) SetArn(v string) *GetSyncJobOutput { s.Arn = &v return s } // SetCreationDateTime sets the CreationDateTime field's value. -func (s *GetWorkspaceOutput) SetCreationDateTime(v time.Time) *GetWorkspaceOutput { +func (s *GetSyncJobOutput) SetCreationDateTime(v time.Time) *GetSyncJobOutput { s.CreationDateTime = &v return s } -// SetDescription sets the Description field's value. -func (s *GetWorkspaceOutput) SetDescription(v string) *GetWorkspaceOutput { - s.Description = &v +// SetStatus sets the Status field's value. +func (s *GetSyncJobOutput) SetStatus(v *SyncJobStatus) *GetSyncJobOutput { + s.Status = v return s } -// SetRole sets the Role field's value. -func (s *GetWorkspaceOutput) SetRole(v string) *GetWorkspaceOutput { - s.Role = &v +// SetSyncRole sets the SyncRole field's value. +func (s *GetSyncJobOutput) SetSyncRole(v string) *GetSyncJobOutput { + s.SyncRole = &v return s } -// SetS3Location sets the S3Location field's value. -func (s *GetWorkspaceOutput) SetS3Location(v string) *GetWorkspaceOutput { - s.S3Location = &v +// SetSyncSource sets the SyncSource field's value. +func (s *GetSyncJobOutput) SetSyncSource(v string) *GetSyncJobOutput { + s.SyncSource = &v return s } // SetUpdateDateTime sets the UpdateDateTime field's value. -func (s *GetWorkspaceOutput) SetUpdateDateTime(v time.Time) *GetWorkspaceOutput { +func (s *GetSyncJobOutput) SetUpdateDateTime(v time.Time) *GetSyncJobOutput { s.UpdateDateTime = &v return s } // SetWorkspaceId sets the WorkspaceId field's value. -func (s *GetWorkspaceOutput) SetWorkspaceId(v string) *GetWorkspaceOutput { +func (s *GetSyncJobOutput) SetWorkspaceId(v string) *GetSyncJobOutput { s.WorkspaceId = &v return s } -// An unexpected error has occurred. -type InternalServerException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +type GetWorkspaceInput struct { + _ struct{} `type:"structure" nopayload:"true"` - Message_ *string `locationName:"message" type:"string"` + // The ID of the workspace. + // + // WorkspaceId is a required field + WorkspaceId *string `location:"uri" locationName:"workspaceId" 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 GetWorkspaceInput) 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 GetWorkspaceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetWorkspaceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetWorkspaceInput"} + if s.WorkspaceId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkspaceId")) + } + if s.WorkspaceId != nil && len(*s.WorkspaceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WorkspaceId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetWorkspaceId sets the WorkspaceId field's value. +func (s *GetWorkspaceInput) SetWorkspaceId(v string) *GetWorkspaceInput { + s.WorkspaceId = &v + return s +} + +type GetWorkspaceOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the workspace. + // + // Arn is a required field + Arn *string `locationName:"arn" min:"20" type:"string" required:"true"` + + // The date and time when the workspace was created. + // + // CreationDateTime is a required field + CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp" required:"true"` + + // The description of the workspace. + Description *string `locationName:"description" type:"string"` + + // The ARN of the execution role associated with the workspace. + // + // Role is a required field + Role *string `locationName:"role" min:"20" type:"string" required:"true"` + + // The ARN of the S3 bucket where resources associated with the workspace are + // stored. + // + // S3Location is a required field + S3Location *string `locationName:"s3Location" type:"string" required:"true"` + + // The date and time when the workspace was last updated. + // + // UpdateDateTime is a required field + UpdateDateTime *time.Time `locationName:"updateDateTime" type:"timestamp" required:"true"` + + // The ID of the workspace. + // + // WorkspaceId is a required field + WorkspaceId *string `locationName:"workspaceId" 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 GetWorkspaceOutput) 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 GetWorkspaceOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *GetWorkspaceOutput) SetArn(v string) *GetWorkspaceOutput { + s.Arn = &v + return s +} + +// SetCreationDateTime sets the CreationDateTime field's value. +func (s *GetWorkspaceOutput) SetCreationDateTime(v time.Time) *GetWorkspaceOutput { + s.CreationDateTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetWorkspaceOutput) SetDescription(v string) *GetWorkspaceOutput { + s.Description = &v + return s +} + +// SetRole sets the Role field's value. +func (s *GetWorkspaceOutput) SetRole(v string) *GetWorkspaceOutput { + s.Role = &v + return s +} + +// SetS3Location sets the S3Location field's value. +func (s *GetWorkspaceOutput) SetS3Location(v string) *GetWorkspaceOutput { + s.S3Location = &v + return s +} + +// SetUpdateDateTime sets the UpdateDateTime field's value. +func (s *GetWorkspaceOutput) SetUpdateDateTime(v time.Time) *GetWorkspaceOutput { + s.UpdateDateTime = &v + return s +} + +// SetWorkspaceId sets the WorkspaceId field's value. +func (s *GetWorkspaceOutput) SetWorkspaceId(v string) *GetWorkspaceOutput { + s.WorkspaceId = &v + return s +} + +// An unexpected error has occurred. +type InternalServerException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` } // String returns the string representation. @@ -7940,6 +8997,262 @@ func (s *ListScenesOutput) SetSceneSummaries(v []*SceneSummary) *ListScenesOutpu return s } +type ListSyncJobsInput struct { + _ struct{} `type:"structure"` + + // The maximum number of results to return at one time. The default is 50. + // + // Valid Range: Minimum value of 0. Maximum value of 200. + MaxResults *int64 `locationName:"maxResults" type:"integer"` + + // The string that specifies the next page of results. + NextToken *string `locationName:"nextToken" type:"string"` + + // The ID of the workspace that contains the sync job. + // + // WorkspaceId is a required field + WorkspaceId *string `location:"uri" locationName:"workspaceId" 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 ListSyncJobsInput) 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 ListSyncJobsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListSyncJobsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListSyncJobsInput"} + if s.WorkspaceId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkspaceId")) + } + if s.WorkspaceId != nil && len(*s.WorkspaceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WorkspaceId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListSyncJobsInput) SetMaxResults(v int64) *ListSyncJobsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSyncJobsInput) SetNextToken(v string) *ListSyncJobsInput { + s.NextToken = &v + return s +} + +// SetWorkspaceId sets the WorkspaceId field's value. +func (s *ListSyncJobsInput) SetWorkspaceId(v string) *ListSyncJobsInput { + s.WorkspaceId = &v + return s +} + +type ListSyncJobsOutput struct { + _ struct{} `type:"structure"` + + // The string that specifies the next page of results. + NextToken *string `locationName:"nextToken" type:"string"` + + // The listed SyncJob summaries. + SyncJobSummaries []*SyncJobSummary `locationName:"syncJobSummaries" 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 ListSyncJobsOutput) 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 ListSyncJobsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSyncJobsOutput) SetNextToken(v string) *ListSyncJobsOutput { + s.NextToken = &v + return s +} + +// SetSyncJobSummaries sets the SyncJobSummaries field's value. +func (s *ListSyncJobsOutput) SetSyncJobSummaries(v []*SyncJobSummary) *ListSyncJobsOutput { + s.SyncJobSummaries = v + return s +} + +type ListSyncResourcesInput struct { + _ struct{} `type:"structure"` + + // A list of objects that filter the request. + Filters []*SyncResourceFilter `locationName:"filters" type:"list"` + + // The maximum number of results to return at one time. The default is 50. + // + // Valid Range: Minimum value of 0. Maximum value of 200. + MaxResults *int64 `locationName:"maxResults" type:"integer"` + + // The string that specifies the next page of results. + NextToken *string `locationName:"nextToken" type:"string"` + + // The sync soucre. + // + // Currently the only supported syncSoucre is SITEWISE . + // + // SyncSource is a required field + SyncSource *string `location:"uri" locationName:"syncSource" type:"string" required:"true"` + + // The ID of the workspace that contains the sync job. + // + // WorkspaceId is a required field + WorkspaceId *string `location:"uri" locationName:"workspaceId" 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 ListSyncResourcesInput) 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 ListSyncResourcesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListSyncResourcesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListSyncResourcesInput"} + if s.SyncSource == nil { + invalidParams.Add(request.NewErrParamRequired("SyncSource")) + } + if s.SyncSource != nil && len(*s.SyncSource) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SyncSource", 1)) + } + if s.WorkspaceId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkspaceId")) + } + if s.WorkspaceId != nil && len(*s.WorkspaceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WorkspaceId", 1)) + } + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilters sets the Filters field's value. +func (s *ListSyncResourcesInput) SetFilters(v []*SyncResourceFilter) *ListSyncResourcesInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListSyncResourcesInput) SetMaxResults(v int64) *ListSyncResourcesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSyncResourcesInput) SetNextToken(v string) *ListSyncResourcesInput { + s.NextToken = &v + return s +} + +// SetSyncSource sets the SyncSource field's value. +func (s *ListSyncResourcesInput) SetSyncSource(v string) *ListSyncResourcesInput { + s.SyncSource = &v + return s +} + +// SetWorkspaceId sets the WorkspaceId field's value. +func (s *ListSyncResourcesInput) SetWorkspaceId(v string) *ListSyncResourcesInput { + s.WorkspaceId = &v + return s +} + +type ListSyncResourcesOutput struct { + _ struct{} `type:"structure"` + + // The string that specifies the next page of results. + NextToken *string `locationName:"nextToken" type:"string"` + + // The sync resources. + SyncResources []*SyncResourceSummary `locationName:"syncResources" 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 ListSyncResourcesOutput) 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 ListSyncResourcesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSyncResourcesOutput) SetNextToken(v string) *ListSyncResourcesOutput { + s.NextToken = &v + return s +} + +// SetSyncResources sets the SyncResources field's value. +func (s *ListSyncResourcesOutput) SetSyncResources(v []*SyncResourceSummary) *ListSyncResourcesOutput { + s.SyncResources = v + return s +} + type ListTagsForResourceInput struct { _ struct{} `type:"structure"` @@ -8350,6 +9663,9 @@ type PropertyDefinitionRequest struct { // An object that contains the default value. DefaultValue *DataValue `locationName:"defaultValue" type:"structure"` + // A friendly name for the property. + DisplayName *string `locationName:"displayName" type:"string"` + // A Boolean value that specifies whether the property ID comes from an external // data store. IsExternalId *bool `locationName:"isExternalId" type:"boolean"` @@ -8421,6 +9737,12 @@ func (s *PropertyDefinitionRequest) SetDefaultValue(v *DataValue) *PropertyDefin return s } +// SetDisplayName sets the DisplayName field's value. +func (s *PropertyDefinitionRequest) SetDisplayName(v string) *PropertyDefinitionRequest { + s.DisplayName = &v + return s +} + // SetIsExternalId sets the IsExternalId field's value. func (s *PropertyDefinitionRequest) SetIsExternalId(v bool) *PropertyDefinitionRequest { s.IsExternalId = &v @@ -8460,6 +9782,9 @@ type PropertyDefinitionResponse struct { // An object that contains the default value. DefaultValue *DataValue `locationName:"defaultValue" type:"structure"` + // A friendly name for the property. + DisplayName *string `locationName:"displayName" type:"string"` + // A Boolean value that specifies whether the property ID comes from an external // data store. // @@ -8536,6 +9861,12 @@ func (s *PropertyDefinitionResponse) SetDefaultValue(v *DataValue) *PropertyDefi return s } +// SetDisplayName sets the DisplayName field's value. +func (s *PropertyDefinitionResponse) SetDisplayName(v string) *PropertyDefinitionResponse { + s.DisplayName = &v + return s +} + // SetIsExternalId sets the IsExternalId field's value. func (s *PropertyDefinitionResponse) SetIsExternalId(v bool) *PropertyDefinitionResponse { s.IsExternalId = &v @@ -9576,6 +10907,308 @@ func (s *Status) SetState(v string) *Status { return s } +// The SyncJob status. +type SyncJobStatus struct { + _ struct{} `type:"structure"` + + // The SyncJob error. + Error *ErrorDetails `locationName:"error" type:"structure"` + + // The SyncJob status state. + State *string `locationName:"state" type:"string" enum:"SyncJobState"` +} + +// 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 SyncJobStatus) 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 SyncJobStatus) GoString() string { + return s.String() +} + +// SetError sets the Error field's value. +func (s *SyncJobStatus) SetError(v *ErrorDetails) *SyncJobStatus { + s.Error = v + return s +} + +// SetState sets the State field's value. +func (s *SyncJobStatus) SetState(v string) *SyncJobStatus { + s.State = &v + return s +} + +// The SyncJob summary. +type SyncJobSummary struct { + _ struct{} `type:"structure"` + + // The SyncJob summary ARN. + Arn *string `locationName:"arn" min:"20" type:"string"` + + // The creation date and time. + CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"` + + // The SyncJob summaries status. + Status *SyncJobStatus `locationName:"status" type:"structure"` + + // The sync source. + SyncSource *string `locationName:"syncSource" type:"string"` + + // The update date and time. + UpdateDateTime *time.Time `locationName:"updateDateTime" type:"timestamp"` + + // The ID of the workspace that contains the sync job. + WorkspaceId *string `locationName:"workspaceId" 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 SyncJobSummary) 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 SyncJobSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *SyncJobSummary) SetArn(v string) *SyncJobSummary { + s.Arn = &v + return s +} + +// SetCreationDateTime sets the CreationDateTime field's value. +func (s *SyncJobSummary) SetCreationDateTime(v time.Time) *SyncJobSummary { + s.CreationDateTime = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *SyncJobSummary) SetStatus(v *SyncJobStatus) *SyncJobSummary { + s.Status = v + return s +} + +// SetSyncSource sets the SyncSource field's value. +func (s *SyncJobSummary) SetSyncSource(v string) *SyncJobSummary { + s.SyncSource = &v + return s +} + +// SetUpdateDateTime sets the UpdateDateTime field's value. +func (s *SyncJobSummary) SetUpdateDateTime(v time.Time) *SyncJobSummary { + s.UpdateDateTime = &v + return s +} + +// SetWorkspaceId sets the WorkspaceId field's value. +func (s *SyncJobSummary) SetWorkspaceId(v string) *SyncJobSummary { + s.WorkspaceId = &v + return s +} + +// The sync resource filter. +type SyncResourceFilter struct { + _ struct{} `type:"structure"` + + // The external Id. + ExternalId *string `locationName:"externalId" min:"1" type:"string"` + + // The sync resource filter resource Id. + ResourceId *string `locationName:"resourceId" min:"1" type:"string"` + + // The sync resource filter resoucre type + ResourceType *string `locationName:"resourceType" type:"string" enum:"SyncResourceType"` + + // The sync resource filter's state. + State *string `locationName:"state" type:"string" enum:"SyncResourceState"` +} + +// 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 SyncResourceFilter) 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 SyncResourceFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SyncResourceFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SyncResourceFilter"} + if s.ExternalId != nil && len(*s.ExternalId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ExternalId", 1)) + } + if s.ResourceId != nil && len(*s.ResourceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExternalId sets the ExternalId field's value. +func (s *SyncResourceFilter) SetExternalId(v string) *SyncResourceFilter { + s.ExternalId = &v + return s +} + +// SetResourceId sets the ResourceId field's value. +func (s *SyncResourceFilter) SetResourceId(v string) *SyncResourceFilter { + s.ResourceId = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *SyncResourceFilter) SetResourceType(v string) *SyncResourceFilter { + s.ResourceType = &v + return s +} + +// SetState sets the State field's value. +func (s *SyncResourceFilter) SetState(v string) *SyncResourceFilter { + s.State = &v + return s +} + +// The sync resource status. +type SyncResourceStatus struct { + _ struct{} `type:"structure"` + + // The status error. + Error *ErrorDetails `locationName:"error" type:"structure"` + + // The sync resource status state. + State *string `locationName:"state" type:"string" enum:"SyncResourceState"` +} + +// 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 SyncResourceStatus) 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 SyncResourceStatus) GoString() string { + return s.String() +} + +// SetError sets the Error field's value. +func (s *SyncResourceStatus) SetError(v *ErrorDetails) *SyncResourceStatus { + s.Error = v + return s +} + +// SetState sets the State field's value. +func (s *SyncResourceStatus) SetState(v string) *SyncResourceStatus { + s.State = &v + return s +} + +// The sync resource summary. +type SyncResourceSummary struct { + _ struct{} `type:"structure"` + + // The external Id. + ExternalId *string `locationName:"externalId" min:"1" type:"string"` + + // The resource Id. + ResourceId *string `locationName:"resourceId" min:"1" type:"string"` + + // The resource type. + ResourceType *string `locationName:"resourceType" type:"string" enum:"SyncResourceType"` + + // The sync resource summary status. + Status *SyncResourceStatus `locationName:"status" type:"structure"` + + // The update date and time. + UpdateDateTime *time.Time `locationName:"updateDateTime" type:"timestamp"` +} + +// 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 SyncResourceSummary) 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 SyncResourceSummary) GoString() string { + return s.String() +} + +// SetExternalId sets the ExternalId field's value. +func (s *SyncResourceSummary) SetExternalId(v string) *SyncResourceSummary { + s.ExternalId = &v + return s +} + +// SetResourceId sets the ResourceId field's value. +func (s *SyncResourceSummary) SetResourceId(v string) *SyncResourceSummary { + s.ResourceId = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *SyncResourceSummary) SetResourceType(v string) *SyncResourceSummary { + s.ResourceType = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *SyncResourceSummary) SetStatus(v *SyncResourceStatus) *SyncResourceSummary { + s.Status = v + return s +} + +// SetUpdateDateTime sets the UpdateDateTime field's value. +func (s *SyncResourceSummary) SetUpdateDateTime(v time.Time) *SyncResourceSummary { + s.UpdateDateTime = &v + return s +} + // The tabular conditions. type TabularConditions struct { _ struct{} `type:"structure"` @@ -9964,6 +11597,9 @@ type UpdateComponentTypeInput struct { // ComponentTypeId is a required field ComponentTypeId *string `location:"uri" locationName:"componentTypeId" min:"1" type:"string" required:"true"` + // The component type name. + ComponentTypeName *string `locationName:"componentTypeName" type:"string"` + // The description of the component type. Description *string `locationName:"description" type:"string"` @@ -9985,7 +11621,7 @@ type UpdateComponentTypeInput struct { // The property groups PropertyGroups map[string]*PropertyGroupRequest `locationName:"propertyGroups" type:"map"` - // The ID of the workspace that contains the component type. + // The ID of the workspace. // // WorkspaceId is a required field WorkspaceId *string `location:"uri" locationName:"workspaceId" min:"1" type:"string" required:"true"` @@ -10057,6 +11693,12 @@ func (s *UpdateComponentTypeInput) SetComponentTypeId(v string) *UpdateComponent return s } +// SetComponentTypeName sets the ComponentTypeName field's value. +func (s *UpdateComponentTypeInput) SetComponentTypeName(v string) *UpdateComponentTypeInput { + s.ComponentTypeName = &v + return s +} + // SetDescription sets the Description field's value. func (s *UpdateComponentTypeInput) SetDescription(v string) *UpdateComponentTypeInput { s.Description = &v @@ -10845,6 +12487,15 @@ const ( // ErrorCodeInternalFailure is a ErrorCode enum value ErrorCodeInternalFailure = "INTERNAL_FAILURE" + + // ErrorCodeSyncInitializingError is a ErrorCode enum value + ErrorCodeSyncInitializingError = "SYNC_INITIALIZING_ERROR" + + // ErrorCodeSyncCreatingError is a ErrorCode enum value + ErrorCodeSyncCreatingError = "SYNC_CREATING_ERROR" + + // ErrorCodeSyncProcessingError is a ErrorCode enum value + ErrorCodeSyncProcessingError = "SYNC_PROCESSING_ERROR" ) // ErrorCode_Values returns all elements of the ErrorCode enum @@ -10852,6 +12503,9 @@ func ErrorCode_Values() []string { return []string{ ErrorCodeValidationError, ErrorCodeInternalFailure, + ErrorCodeSyncInitializingError, + ErrorCodeSyncCreatingError, + ErrorCodeSyncProcessingError, } } @@ -11055,6 +12709,78 @@ func State_Values() []string { } } +const ( + // SyncJobStateCreating is a SyncJobState enum value + SyncJobStateCreating = "CREATING" + + // SyncJobStateInitializing is a SyncJobState enum value + SyncJobStateInitializing = "INITIALIZING" + + // SyncJobStateActive is a SyncJobState enum value + SyncJobStateActive = "ACTIVE" + + // SyncJobStateDeleting is a SyncJobState enum value + SyncJobStateDeleting = "DELETING" + + // SyncJobStateError is a SyncJobState enum value + SyncJobStateError = "ERROR" +) + +// SyncJobState_Values returns all elements of the SyncJobState enum +func SyncJobState_Values() []string { + return []string{ + SyncJobStateCreating, + SyncJobStateInitializing, + SyncJobStateActive, + SyncJobStateDeleting, + SyncJobStateError, + } +} + +const ( + // SyncResourceStateInitializing is a SyncResourceState enum value + SyncResourceStateInitializing = "INITIALIZING" + + // SyncResourceStateProcessing is a SyncResourceState enum value + SyncResourceStateProcessing = "PROCESSING" + + // SyncResourceStateDeleted is a SyncResourceState enum value + SyncResourceStateDeleted = "DELETED" + + // SyncResourceStateInSync is a SyncResourceState enum value + SyncResourceStateInSync = "IN_SYNC" + + // SyncResourceStateError is a SyncResourceState enum value + SyncResourceStateError = "ERROR" +) + +// SyncResourceState_Values returns all elements of the SyncResourceState enum +func SyncResourceState_Values() []string { + return []string{ + SyncResourceStateInitializing, + SyncResourceStateProcessing, + SyncResourceStateDeleted, + SyncResourceStateInSync, + SyncResourceStateError, + } +} + +const ( + // SyncResourceTypeEntity is a SyncResourceType enum value + SyncResourceTypeEntity = "ENTITY" + + // SyncResourceTypeComponentType is a SyncResourceType enum value + SyncResourceTypeComponentType = "COMPONENT_TYPE" +) + +// SyncResourceType_Values returns all elements of the SyncResourceType enum +func SyncResourceType_Values() []string { + return []string{ + SyncResourceTypeEntity, + SyncResourceTypeComponentType, + } +} + const ( // TypeRelationship is a Type enum value TypeRelationship = "RELATIONSHIP" diff --git a/service/iottwinmaker/iottwinmakeriface/interface.go b/service/iottwinmaker/iottwinmakeriface/interface.go index 3e713005c39..1dcb29ff851 100644 --- a/service/iottwinmaker/iottwinmakeriface/interface.go +++ b/service/iottwinmaker/iottwinmakeriface/interface.go @@ -76,6 +76,10 @@ type IoTTwinMakerAPI interface { CreateSceneWithContext(aws.Context, *iottwinmaker.CreateSceneInput, ...request.Option) (*iottwinmaker.CreateSceneOutput, error) CreateSceneRequest(*iottwinmaker.CreateSceneInput) (*request.Request, *iottwinmaker.CreateSceneOutput) + CreateSyncJob(*iottwinmaker.CreateSyncJobInput) (*iottwinmaker.CreateSyncJobOutput, error) + CreateSyncJobWithContext(aws.Context, *iottwinmaker.CreateSyncJobInput, ...request.Option) (*iottwinmaker.CreateSyncJobOutput, error) + CreateSyncJobRequest(*iottwinmaker.CreateSyncJobInput) (*request.Request, *iottwinmaker.CreateSyncJobOutput) + CreateWorkspace(*iottwinmaker.CreateWorkspaceInput) (*iottwinmaker.CreateWorkspaceOutput, error) CreateWorkspaceWithContext(aws.Context, *iottwinmaker.CreateWorkspaceInput, ...request.Option) (*iottwinmaker.CreateWorkspaceOutput, error) CreateWorkspaceRequest(*iottwinmaker.CreateWorkspaceInput) (*request.Request, *iottwinmaker.CreateWorkspaceOutput) @@ -92,6 +96,10 @@ type IoTTwinMakerAPI interface { DeleteSceneWithContext(aws.Context, *iottwinmaker.DeleteSceneInput, ...request.Option) (*iottwinmaker.DeleteSceneOutput, error) DeleteSceneRequest(*iottwinmaker.DeleteSceneInput) (*request.Request, *iottwinmaker.DeleteSceneOutput) + DeleteSyncJob(*iottwinmaker.DeleteSyncJobInput) (*iottwinmaker.DeleteSyncJobOutput, error) + DeleteSyncJobWithContext(aws.Context, *iottwinmaker.DeleteSyncJobInput, ...request.Option) (*iottwinmaker.DeleteSyncJobOutput, error) + DeleteSyncJobRequest(*iottwinmaker.DeleteSyncJobInput) (*request.Request, *iottwinmaker.DeleteSyncJobOutput) + DeleteWorkspace(*iottwinmaker.DeleteWorkspaceInput) (*iottwinmaker.DeleteWorkspaceOutput, error) DeleteWorkspaceWithContext(aws.Context, *iottwinmaker.DeleteWorkspaceInput, ...request.Option) (*iottwinmaker.DeleteWorkspaceOutput, error) DeleteWorkspaceRequest(*iottwinmaker.DeleteWorkspaceInput) (*request.Request, *iottwinmaker.DeleteWorkspaceOutput) @@ -133,6 +141,10 @@ type IoTTwinMakerAPI interface { GetSceneWithContext(aws.Context, *iottwinmaker.GetSceneInput, ...request.Option) (*iottwinmaker.GetSceneOutput, error) GetSceneRequest(*iottwinmaker.GetSceneInput) (*request.Request, *iottwinmaker.GetSceneOutput) + GetSyncJob(*iottwinmaker.GetSyncJobInput) (*iottwinmaker.GetSyncJobOutput, error) + GetSyncJobWithContext(aws.Context, *iottwinmaker.GetSyncJobInput, ...request.Option) (*iottwinmaker.GetSyncJobOutput, error) + GetSyncJobRequest(*iottwinmaker.GetSyncJobInput) (*request.Request, *iottwinmaker.GetSyncJobOutput) + GetWorkspace(*iottwinmaker.GetWorkspaceInput) (*iottwinmaker.GetWorkspaceOutput, error) GetWorkspaceWithContext(aws.Context, *iottwinmaker.GetWorkspaceInput, ...request.Option) (*iottwinmaker.GetWorkspaceOutput, error) GetWorkspaceRequest(*iottwinmaker.GetWorkspaceInput) (*request.Request, *iottwinmaker.GetWorkspaceOutput) @@ -158,6 +170,20 @@ type IoTTwinMakerAPI interface { ListScenesPages(*iottwinmaker.ListScenesInput, func(*iottwinmaker.ListScenesOutput, bool) bool) error ListScenesPagesWithContext(aws.Context, *iottwinmaker.ListScenesInput, func(*iottwinmaker.ListScenesOutput, bool) bool, ...request.Option) error + ListSyncJobs(*iottwinmaker.ListSyncJobsInput) (*iottwinmaker.ListSyncJobsOutput, error) + ListSyncJobsWithContext(aws.Context, *iottwinmaker.ListSyncJobsInput, ...request.Option) (*iottwinmaker.ListSyncJobsOutput, error) + ListSyncJobsRequest(*iottwinmaker.ListSyncJobsInput) (*request.Request, *iottwinmaker.ListSyncJobsOutput) + + ListSyncJobsPages(*iottwinmaker.ListSyncJobsInput, func(*iottwinmaker.ListSyncJobsOutput, bool) bool) error + ListSyncJobsPagesWithContext(aws.Context, *iottwinmaker.ListSyncJobsInput, func(*iottwinmaker.ListSyncJobsOutput, bool) bool, ...request.Option) error + + ListSyncResources(*iottwinmaker.ListSyncResourcesInput) (*iottwinmaker.ListSyncResourcesOutput, error) + ListSyncResourcesWithContext(aws.Context, *iottwinmaker.ListSyncResourcesInput, ...request.Option) (*iottwinmaker.ListSyncResourcesOutput, error) + ListSyncResourcesRequest(*iottwinmaker.ListSyncResourcesInput) (*request.Request, *iottwinmaker.ListSyncResourcesOutput) + + ListSyncResourcesPages(*iottwinmaker.ListSyncResourcesInput, func(*iottwinmaker.ListSyncResourcesOutput, bool) bool) error + ListSyncResourcesPagesWithContext(aws.Context, *iottwinmaker.ListSyncResourcesInput, func(*iottwinmaker.ListSyncResourcesOutput, bool) bool, ...request.Option) error + ListTagsForResource(*iottwinmaker.ListTagsForResourceInput) (*iottwinmaker.ListTagsForResourceOutput, error) ListTagsForResourceWithContext(aws.Context, *iottwinmaker.ListTagsForResourceInput, ...request.Option) (*iottwinmaker.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*iottwinmaker.ListTagsForResourceInput) (*request.Request, *iottwinmaker.ListTagsForResourceOutput) diff --git a/service/migrationhubstrategyrecommendations/api.go b/service/migrationhubstrategyrecommendations/api.go index 5069dbb531c..1e09f2d4613 100644 --- a/service/migrationhubstrategyrecommendations/api.go +++ b/service/migrationhubstrategyrecommendations/api.go @@ -367,6 +367,96 @@ func (c *MigrationHubStrategyRecommendations) GetImportFileTaskWithContext(ctx a return out, req.Send() } +const opGetLatestAssessmentId = "GetLatestAssessmentId" + +// GetLatestAssessmentIdRequest generates a "aws/request.Request" representing the +// client's request for the GetLatestAssessmentId 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 GetLatestAssessmentId for more information on using the GetLatestAssessmentId +// 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 GetLatestAssessmentIdRequest method. +// req, resp := client.GetLatestAssessmentIdRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/migrationhubstrategy-2020-02-19/GetLatestAssessmentId +func (c *MigrationHubStrategyRecommendations) GetLatestAssessmentIdRequest(input *GetLatestAssessmentIdInput) (req *request.Request, output *GetLatestAssessmentIdOutput) { + op := &request.Operation{ + Name: opGetLatestAssessmentId, + HTTPMethod: "GET", + HTTPPath: "/get-latest-assessment-id", + } + + if input == nil { + input = &GetLatestAssessmentIdInput{} + } + + output = &GetLatestAssessmentIdOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetLatestAssessmentId API operation for Migration Hub Strategy Recommendations. +// +// Retrieve the latest ID of a specific assessment task. +// +// 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 Migration Hub Strategy Recommendations's +// API operation GetLatestAssessmentId for usage and error information. +// +// Returned Error Types: +// +// - DependencyException +// Dependency encountered an error. +// +// - AccessDeniedException +// The AWS user account does not have permission to perform the action. Check +// the AWS Identity and Access Management (IAM) policy associated with this +// account. +// +// - ValidationException +// The request body isn't valid. +// +// - InternalServerException +// The server experienced an internal error. Try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/migrationhubstrategy-2020-02-19/GetLatestAssessmentId +func (c *MigrationHubStrategyRecommendations) GetLatestAssessmentId(input *GetLatestAssessmentIdInput) (*GetLatestAssessmentIdOutput, error) { + req, out := c.GetLatestAssessmentIdRequest(input) + return out, req.Send() +} + +// GetLatestAssessmentIdWithContext is the same as GetLatestAssessmentId with the addition of +// the ability to pass a context and additional request options. +// +// See GetLatestAssessmentId 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 *MigrationHubStrategyRecommendations) GetLatestAssessmentIdWithContext(ctx aws.Context, input *GetLatestAssessmentIdInput, opts ...request.Option) (*GetLatestAssessmentIdOutput, error) { + req, out := c.GetLatestAssessmentIdRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetPortfolioPreferences = "GetPortfolioPreferences" // GetPortfolioPreferencesRequest generates a "aws/request.Request" representing the @@ -2219,6 +2309,38 @@ func (s *AntipatternSeveritySummary) SetSeverity(v string) *AntipatternSeverityS return s } +// Error in the analysis of the application unit. +type AppUnitError struct { + _ struct{} `type:"structure"` + + // The category of the error. + AppUnitErrorCategory *string `locationName:"appUnitErrorCategory" type:"string" enum:"AppUnitErrorCategory"` +} + +// 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 AppUnitError) 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 AppUnitError) GoString() string { + return s.String() +} + +// SetAppUnitErrorCategory sets the AppUnitErrorCategory field's value. +func (s *AppUnitError) SetAppUnitErrorCategory(v string) *AppUnitError { + s.AppUnitErrorCategory = &v + return s +} + // Contains detailed information about an application component. type ApplicationComponentDetail struct { _ struct{} `type:"structure"` @@ -2239,6 +2361,9 @@ type ApplicationComponentDetail struct { // The type of application component. AppType *string `locationName:"appType" type:"string" enum:"AppType"` + // The error in the analysis of the source code or database. + AppUnitError *AppUnitError `locationName:"appUnitError" type:"structure"` + // The ID of the server that the application component is running on. AssociatedServerId *string `locationName:"associatedServerId" min:"1" type:"string"` @@ -2276,6 +2401,12 @@ type ApplicationComponentDetail struct { // The application component subtype. ResourceSubType *string `locationName:"resourceSubType" type:"string" enum:"ResourceSubType"` + // The status of the application unit. + RuntimeStatus *string `locationName:"runtimeStatus" type:"string" enum:"RuntimeAnalysisStatus"` + + // The status message for the application unit. + RuntimeStatusMessage *string `locationName:"runtimeStatusMessage" type:"string"` + // Details about the source code repository associated with the application // component. SourceCodeRepositories []*SourceCodeRepository `locationName:"sourceCodeRepositories" type:"list"` @@ -2332,6 +2463,12 @@ func (s *ApplicationComponentDetail) SetAppType(v string) *ApplicationComponentD return s } +// SetAppUnitError sets the AppUnitError field's value. +func (s *ApplicationComponentDetail) SetAppUnitError(v *AppUnitError) *ApplicationComponentDetail { + s.AppUnitError = v + return s +} + // SetAssociatedServerId sets the AssociatedServerId field's value. func (s *ApplicationComponentDetail) SetAssociatedServerId(v string) *ApplicationComponentDetail { s.AssociatedServerId = &v @@ -2404,6 +2541,18 @@ func (s *ApplicationComponentDetail) SetResourceSubType(v string) *ApplicationCo return s } +// SetRuntimeStatus sets the RuntimeStatus field's value. +func (s *ApplicationComponentDetail) SetRuntimeStatus(v string) *ApplicationComponentDetail { + s.RuntimeStatus = &v + return s +} + +// SetRuntimeStatusMessage sets the RuntimeStatusMessage field's value. +func (s *ApplicationComponentDetail) SetRuntimeStatusMessage(v string) *ApplicationComponentDetail { + s.RuntimeStatusMessage = &v + return s +} + // SetSourceCodeRepositories sets the SourceCodeRepositories field's value. func (s *ApplicationComponentDetail) SetSourceCodeRepositories(v []*SourceCodeRepository) *ApplicationComponentDetail { s.SourceCodeRepositories = v @@ -2416,6 +2565,48 @@ func (s *ApplicationComponentDetail) SetStatusMessage(v string) *ApplicationComp return s } +// Summary of the analysis status of the application component. +type ApplicationComponentStatusSummary struct { + _ struct{} `type:"structure"` + + // The number of application components successfully analyzed, partially successful + // or failed analysis. + Count *int64 `locationName:"count" type:"integer"` + + // The status of database analysis. + SrcCodeOrDbAnalysisStatus *string `locationName:"srcCodeOrDbAnalysisStatus" type:"string" enum:"SrcCodeOrDbAnalysisStatus"` +} + +// 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 ApplicationComponentStatusSummary) 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 ApplicationComponentStatusSummary) GoString() string { + return s.String() +} + +// SetCount sets the Count field's value. +func (s *ApplicationComponentStatusSummary) SetCount(v int64) *ApplicationComponentStatusSummary { + s.Count = &v + return s +} + +// SetSrcCodeOrDbAnalysisStatus sets the SrcCodeOrDbAnalysisStatus field's value. +func (s *ApplicationComponentStatusSummary) SetSrcCodeOrDbAnalysisStatus(v string) *ApplicationComponentStatusSummary { + s.SrcCodeOrDbAnalysisStatus = &v + return s +} + // Contains information about a strategy recommendation for an application component. type ApplicationComponentStrategy struct { _ struct{} `type:"structure"` @@ -2573,12 +2764,18 @@ type AssessmentSummary struct { // List of AntipatternSeveritySummary. ListAntipatternSeveritySummary []*AntipatternSeveritySummary `locationName:"listAntipatternSeveritySummary" type:"list"` + // List of status summaries of the analyzed application components. + ListApplicationComponentStatusSummary []*ApplicationComponentStatusSummary `locationName:"listApplicationComponentStatusSummary" type:"list"` + // List of ApplicationComponentStrategySummary. ListApplicationComponentStrategySummary []*StrategySummary `locationName:"listApplicationComponentStrategySummary" type:"list"` // List of ApplicationComponentSummary. ListApplicationComponentSummary []*ApplicationComponentSummary `locationName:"listApplicationComponentSummary" type:"list"` + // List of status summaries of the analyzed servers. + ListServerStatusSummary []*ServerStatusSummary `locationName:"listServerStatusSummary" type:"list"` + // List of ServerStrategySummary. ListServerStrategySummary []*StrategySummary `locationName:"listServerStrategySummary" type:"list"` @@ -2634,6 +2831,12 @@ func (s *AssessmentSummary) SetListAntipatternSeveritySummary(v []*AntipatternSe return s } +// SetListApplicationComponentStatusSummary sets the ListApplicationComponentStatusSummary field's value. +func (s *AssessmentSummary) SetListApplicationComponentStatusSummary(v []*ApplicationComponentStatusSummary) *AssessmentSummary { + s.ListApplicationComponentStatusSummary = v + return s +} + // SetListApplicationComponentStrategySummary sets the ListApplicationComponentStrategySummary field's value. func (s *AssessmentSummary) SetListApplicationComponentStrategySummary(v []*StrategySummary) *AssessmentSummary { s.ListApplicationComponentStrategySummary = v @@ -2646,6 +2849,12 @@ func (s *AssessmentSummary) SetListApplicationComponentSummary(v []*ApplicationC return s } +// SetListServerStatusSummary sets the ListServerStatusSummary field's value. +func (s *AssessmentSummary) SetListServerStatusSummary(v []*ServerStatusSummary) *AssessmentSummary { + s.ListServerStatusSummary = v + return s +} + // SetListServerStrategySummary sets the ListServerStrategySummary field's value. func (s *AssessmentSummary) SetListServerStrategySummary(v []*StrategySummary) *AssessmentSummary { s.ListServerStrategySummary = v @@ -2658,6 +2867,81 @@ func (s *AssessmentSummary) SetListServerSummary(v []*ServerSummary) *Assessment return s } +// Defines the criteria of assessment. +type AssessmentTarget struct { + _ struct{} `type:"structure"` + + // Condition of an assessment. + // + // Condition is a required field + Condition *string `locationName:"condition" type:"string" required:"true" enum:"Condition"` + + // Name of an assessment. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true"` + + // Values of an assessment. + // + // Values is a required field + Values []*string `locationName:"values" 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 AssessmentTarget) 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 AssessmentTarget) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AssessmentTarget) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AssessmentTarget"} + if s.Condition == nil { + invalidParams.Add(request.NewErrParamRequired("Condition")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Values == nil { + invalidParams.Add(request.NewErrParamRequired("Values")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCondition sets the Condition field's value. +func (s *AssessmentTarget) SetCondition(v string) *AssessmentTarget { + s.Condition = &v + return s +} + +// SetName sets the Name field's value. +func (s *AssessmentTarget) SetName(v string) *AssessmentTarget { + s.Name = &v + return s +} + +// SetValues sets the Values field's value. +func (s *AssessmentTarget) SetValues(v []*string) *AssessmentTarget { + s.Values = v + return s +} + // Object containing details about applications as defined in Application Discovery // Service. type AssociatedApplication struct { @@ -2846,6 +3130,9 @@ type Collector struct { // you specify. CollectorVersion *string `locationName:"collectorVersion" type:"string"` + // Summary of the collector configuration. + ConfigurationSummary *ConfigurationSummary `locationName:"configurationSummary" type:"structure"` + // Hostname of the server that is hosting the collector. HostName *string `locationName:"hostName" type:"string"` @@ -2895,6 +3182,12 @@ func (s *Collector) SetCollectorVersion(v string) *Collector { return s } +// SetConfigurationSummary sets the ConfigurationSummary field's value. +func (s *Collector) SetConfigurationSummary(v *ConfigurationSummary) *Collector { + s.ConfigurationSummary = v + return s +} + // SetHostName sets the HostName field's value. func (s *Collector) SetHostName(v string) *Collector { s.HostName = &v @@ -2919,6 +3212,74 @@ func (s *Collector) SetRegisteredTimeStamp(v string) *Collector { return s } +// Summary of the collector configuration. +type ConfigurationSummary struct { + _ struct{} `type:"structure"` + + // IP address based configurations. + IpAddressBasedRemoteInfoList []*IPAddressBasedRemoteInfo `locationName:"ipAddressBasedRemoteInfoList" type:"list"` + + // The list of pipeline info configurations. + PipelineInfoList []*PipelineInfo `locationName:"pipelineInfoList" type:"list"` + + // Info about the remote server source code configuration. + RemoteSourceCodeAnalysisServerInfo *RemoteSourceCodeAnalysisServerInfo `locationName:"remoteSourceCodeAnalysisServerInfo" type:"structure"` + + // The list of vCenter configurations. + VcenterBasedRemoteInfoList []*VcenterBasedRemoteInfo `locationName:"vcenterBasedRemoteInfoList" type:"list"` + + // The list of the version control configurations. + VersionControlInfoList []*VersionControlInfo `locationName:"versionControlInfoList" 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 ConfigurationSummary) 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 ConfigurationSummary) GoString() string { + return s.String() +} + +// SetIpAddressBasedRemoteInfoList sets the IpAddressBasedRemoteInfoList field's value. +func (s *ConfigurationSummary) SetIpAddressBasedRemoteInfoList(v []*IPAddressBasedRemoteInfo) *ConfigurationSummary { + s.IpAddressBasedRemoteInfoList = v + return s +} + +// SetPipelineInfoList sets the PipelineInfoList field's value. +func (s *ConfigurationSummary) SetPipelineInfoList(v []*PipelineInfo) *ConfigurationSummary { + s.PipelineInfoList = v + return s +} + +// SetRemoteSourceCodeAnalysisServerInfo sets the RemoteSourceCodeAnalysisServerInfo field's value. +func (s *ConfigurationSummary) SetRemoteSourceCodeAnalysisServerInfo(v *RemoteSourceCodeAnalysisServerInfo) *ConfigurationSummary { + s.RemoteSourceCodeAnalysisServerInfo = v + return s +} + +// SetVcenterBasedRemoteInfoList sets the VcenterBasedRemoteInfoList field's value. +func (s *ConfigurationSummary) SetVcenterBasedRemoteInfoList(v []*VcenterBasedRemoteInfo) *ConfigurationSummary { + s.VcenterBasedRemoteInfoList = v + return s +} + +// SetVersionControlInfoList sets the VersionControlInfoList field's value. +func (s *ConfigurationSummary) SetVersionControlInfoList(v []*VersionControlInfo) *ConfigurationSummary { + s.VersionControlInfoList = v + return s +} + // Exception to indicate that there is an ongoing task when a new task is created. // Return when once the existing tasks are complete. type ConflictException struct { @@ -3006,6 +3367,9 @@ type DataCollectionDetails struct { // The status of the assessment. Status *string `locationName:"status" type:"string" enum:"AssessmentStatus"` + // The status message of the assessment. + StatusMessage *string `locationName:"statusMessage" type:"string"` + // The number of successful servers in the assessment. Success *int64 `locationName:"success" type:"integer"` } @@ -3064,6 +3428,12 @@ func (s *DataCollectionDetails) SetStatus(v string) *DataCollectionDetails { return s } +// SetStatusMessage sets the StatusMessage field's value. +func (s *DataCollectionDetails) SetStatusMessage(v string) *DataCollectionDetails { + s.StatusMessage = &v + return s +} + // SetSuccess sets the Success field's value. func (s *DataCollectionDetails) SetSuccess(v int64) *DataCollectionDetails { s.Success = &v @@ -3234,13 +3604,12 @@ func (s *DatabasePreferences) SetDatabaseMigrationPreference(v *DatabaseMigratio return s } -type GetApplicationComponentDetailsInput struct { - _ struct{} `type:"structure" nopayload:"true"` +// Dependency encountered an error. +type DependencyException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // The ID of the application component. The ID is unique within an AWS account. - // - // ApplicationComponentId is a required field - ApplicationComponentId *string `location:"uri" locationName:"applicationComponentId" type:"string" required:"true"` + Message_ *string `locationName:"message" type:"string"` } // String returns the string representation. @@ -3248,7 +3617,7 @@ type GetApplicationComponentDetailsInput 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 GetApplicationComponentDetailsInput) String() string { +func (s DependencyException) String() string { return awsutil.Prettify(s) } @@ -3257,15 +3626,80 @@ func (s GetApplicationComponentDetailsInput) 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 GetApplicationComponentDetailsInput) GoString() string { +func (s DependencyException) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *GetApplicationComponentDetailsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetApplicationComponentDetailsInput"} - if s.ApplicationComponentId == nil { - invalidParams.Add(request.NewErrParamRequired("ApplicationComponentId")) +func newErrorDependencyException(v protocol.ResponseMetadata) error { + return &DependencyException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *DependencyException) Code() string { + return "DependencyException" +} + +// Message returns the exception's message. +func (s *DependencyException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *DependencyException) OrigErr() error { + return nil +} + +func (s *DependencyException) 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 *DependencyException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *DependencyException) RequestID() string { + return s.RespMetadata.RequestID +} + +type GetApplicationComponentDetailsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the application component. The ID is unique within an AWS account. + // + // ApplicationComponentId is a required field + ApplicationComponentId *string `location:"uri" locationName:"applicationComponentId" 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 GetApplicationComponentDetailsInput) 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 GetApplicationComponentDetailsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetApplicationComponentDetailsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetApplicationComponentDetailsInput"} + if s.ApplicationComponentId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationComponentId")) } if s.ApplicationComponentId != nil && len(*s.ApplicationComponentId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationComponentId", 1)) @@ -3475,6 +3909,9 @@ func (s *GetAssessmentInput) SetId(v string) *GetAssessmentInput { type GetAssessmentOutput struct { _ struct{} `type:"structure"` + // List of criteria for assessment. + AssessmentTargets []*AssessmentTarget `locationName:"assessmentTargets" type:"list"` + // Detailed information about the assessment. DataCollectionDetails *DataCollectionDetails `locationName:"dataCollectionDetails" type:"structure"` @@ -3500,6 +3937,12 @@ func (s GetAssessmentOutput) GoString() string { return s.String() } +// SetAssessmentTargets sets the AssessmentTargets field's value. +func (s *GetAssessmentOutput) SetAssessmentTargets(v []*AssessmentTarget) *GetAssessmentOutput { + s.AssessmentTargets = v + return s +} + // SetDataCollectionDetails sets the DataCollectionDetails field's value. func (s *GetAssessmentOutput) SetDataCollectionDetails(v *DataCollectionDetails) *GetAssessmentOutput { s.DataCollectionDetails = v @@ -3683,6 +4126,59 @@ func (s *GetImportFileTaskOutput) SetStatusReportS3Key(v string) *GetImportFileT return s } +type GetLatestAssessmentIdInput struct { + _ struct{} `type:"structure" nopayload:"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 GetLatestAssessmentIdInput) 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 GetLatestAssessmentIdInput) GoString() string { + return s.String() +} + +type GetLatestAssessmentIdOutput struct { + _ struct{} `type:"structure"` + + // The latest ID for the specific assessment task. + Id *string `locationName:"id" 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 GetLatestAssessmentIdOutput) 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 GetLatestAssessmentIdOutput) GoString() string { + return s.String() +} + +// SetId sets the Id field's value. +func (s *GetLatestAssessmentIdOutput) SetId(v string) *GetLatestAssessmentIdOutput { + s.Id = &v + return s +} + type GetPortfolioPreferencesInput struct { _ struct{} `type:"structure" nopayload:"true"` } @@ -3708,6 +4204,9 @@ func (s GetPortfolioPreferencesInput) GoString() string { type GetPortfolioPreferencesOutput struct { _ struct{} `type:"structure"` + // The classification for application component types. + ApplicationMode *string `locationName:"applicationMode" type:"string" enum:"ApplicationMode"` + // The transformation preferences for non-database applications. ApplicationPreferences *ApplicationPreferences `locationName:"applicationPreferences" type:"structure"` @@ -3736,6 +4235,12 @@ func (s GetPortfolioPreferencesOutput) GoString() string { return s.String() } +// SetApplicationMode sets the ApplicationMode field's value. +func (s *GetPortfolioPreferencesOutput) SetApplicationMode(v string) *GetPortfolioPreferencesOutput { + s.ApplicationMode = &v + return s +} + // SetApplicationPreferences sets the ApplicationPreferences field's value. func (s *GetPortfolioPreferencesOutput) SetApplicationPreferences(v *ApplicationPreferences) *GetPortfolioPreferencesOutput { s.ApplicationPreferences = v @@ -4224,6 +4729,56 @@ func (s *Homogeneous) SetTargetDatabaseEngine(v []*string) *Homogeneous { return s } +// IP address based configurations. +type IPAddressBasedRemoteInfo struct { + _ struct{} `type:"structure"` + + // The type of authorization. + AuthType *string `locationName:"authType" type:"string" enum:"AuthType"` + + // The time stamp of the configuration. + IpAddressConfigurationTimeStamp *string `locationName:"ipAddressConfigurationTimeStamp" type:"string"` + + // The type of the operating system. + OsType *string `locationName:"osType" type:"string" enum:"OSType"` +} + +// 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 IPAddressBasedRemoteInfo) 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 IPAddressBasedRemoteInfo) GoString() string { + return s.String() +} + +// SetAuthType sets the AuthType field's value. +func (s *IPAddressBasedRemoteInfo) SetAuthType(v string) *IPAddressBasedRemoteInfo { + s.AuthType = &v + return s +} + +// SetIpAddressConfigurationTimeStamp sets the IpAddressConfigurationTimeStamp field's value. +func (s *IPAddressBasedRemoteInfo) SetIpAddressConfigurationTimeStamp(v string) *IPAddressBasedRemoteInfo { + s.IpAddressConfigurationTimeStamp = &v + return s +} + +// SetOsType sets the OsType field's value. +func (s *IPAddressBasedRemoteInfo) SetOsType(v string) *IPAddressBasedRemoteInfo { + s.OsType = &v + return s +} + // Information about the import file tasks you request. type ImportFileTaskInformation struct { _ struct{} `type:"structure"` @@ -5116,6 +5671,47 @@ func (s *OSInfo) SetVersion(v string) *OSInfo { return s } +// Detailed information of the pipeline. +type PipelineInfo struct { + _ struct{} `type:"structure"` + + // The time when the pipeline info was configured. + PipelineConfigurationTimeStamp *string `locationName:"pipelineConfigurationTimeStamp" type:"string"` + + // The type of pipeline. + PipelineType *string `locationName:"pipelineType" type:"string" enum:"PipelineType"` +} + +// 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 PipelineInfo) 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 PipelineInfo) GoString() string { + return s.String() +} + +// SetPipelineConfigurationTimeStamp sets the PipelineConfigurationTimeStamp field's value. +func (s *PipelineInfo) SetPipelineConfigurationTimeStamp(v string) *PipelineInfo { + s.PipelineConfigurationTimeStamp = &v + return s +} + +// SetPipelineType sets the PipelineType field's value. +func (s *PipelineInfo) SetPipelineType(v string) *PipelineInfo { + s.PipelineType = &v + return s +} + // Rank of business goals based on priority. type PrioritizeBusinessGoals struct { _ struct{} `type:"structure"` @@ -5166,6 +5762,9 @@ func (s *PrioritizeBusinessGoals) SetBusinessGoals(v *BusinessGoals) *Prioritize type PutPortfolioPreferencesInput struct { _ struct{} `type:"structure"` + // The classification for application component types. + ApplicationMode *string `locationName:"applicationMode" type:"string" enum:"ApplicationMode"` + // The transformation preferences for non-database applications. ApplicationPreferences *ApplicationPreferences `locationName:"applicationPreferences" type:"structure"` @@ -5219,6 +5818,12 @@ func (s *PutPortfolioPreferencesInput) Validate() error { return nil } +// SetApplicationMode sets the ApplicationMode field's value. +func (s *PutPortfolioPreferencesInput) SetApplicationMode(v string) *PutPortfolioPreferencesInput { + s.ApplicationMode = &v + return s +} + // SetApplicationPreferences sets the ApplicationPreferences field's value. func (s *PutPortfolioPreferencesInput) SetApplicationPreferences(v *ApplicationPreferences) *PutPortfolioPreferencesInput { s.ApplicationPreferences = v @@ -5386,6 +5991,38 @@ func (s *RecommendationSet) SetTransformationTool(v *TransformationTool) *Recomm return s } +// Information about the server configured for source code analysis. +type RemoteSourceCodeAnalysisServerInfo struct { + _ struct{} `type:"structure"` + + // The time when the remote source code server was configured. + RemoteSourceCodeAnalysisServerConfigurationTimestamp *string `locationName:"remoteSourceCodeAnalysisServerConfigurationTimestamp" 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 RemoteSourceCodeAnalysisServerInfo) 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 RemoteSourceCodeAnalysisServerInfo) GoString() string { + return s.String() +} + +// SetRemoteSourceCodeAnalysisServerConfigurationTimestamp sets the RemoteSourceCodeAnalysisServerConfigurationTimestamp field's value. +func (s *RemoteSourceCodeAnalysisServerInfo) SetRemoteSourceCodeAnalysisServerConfigurationTimestamp(v string) *RemoteSourceCodeAnalysisServerInfo { + s.RemoteSourceCodeAnalysisServerConfigurationTimestamp = &v + return s +} + // The specified ID in the request is not found. type ResourceNotFoundException struct { _ struct{} `type:"structure"` @@ -5575,6 +6212,9 @@ type ServerDetail struct { // A set of recommendations. RecommendationSet *RecommendationSet `locationName:"recommendationSet" type:"structure"` + // The error in server analysis. + ServerError *ServerError `locationName:"serverError" type:"structure"` + // The type of server. ServerType *string `locationName:"serverType" type:"string"` @@ -5664,6 +6304,12 @@ func (s *ServerDetail) SetRecommendationSet(v *RecommendationSet) *ServerDetail return s } +// SetServerError sets the ServerError field's value. +func (s *ServerDetail) SetServerError(v *ServerError) *ServerDetail { + s.ServerError = v + return s +} + // SetServerType sets the ServerType field's value. func (s *ServerDetail) SetServerType(v string) *ServerDetail { s.ServerType = &v @@ -5682,6 +6328,80 @@ func (s *ServerDetail) SetSystemInfo(v *SystemInfo) *ServerDetail { return s } +// The error in server analysis. +type ServerError struct { + _ struct{} `type:"structure"` + + // The error category of server analysis. + ServerErrorCategory *string `locationName:"serverErrorCategory" type:"string" enum:"ServerErrorCategory"` +} + +// 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 ServerError) 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 ServerError) GoString() string { + return s.String() +} + +// SetServerErrorCategory sets the ServerErrorCategory field's value. +func (s *ServerError) SetServerErrorCategory(v string) *ServerError { + s.ServerErrorCategory = &v + return s +} + +// The status summary of the server analysis. +type ServerStatusSummary struct { + _ struct{} `type:"structure"` + + // The number of servers successfully analyzed, partially successful or failed + // analysis. + Count *int64 `locationName:"count" type:"integer"` + + // The status of the run time. + RunTimeAssessmentStatus *string `locationName:"runTimeAssessmentStatus" type:"string" enum:"RunTimeAssessmentStatus"` +} + +// 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 ServerStatusSummary) 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 ServerStatusSummary) GoString() string { + return s.String() +} + +// SetCount sets the Count field's value. +func (s *ServerStatusSummary) SetCount(v int64) *ServerStatusSummary { + s.Count = &v + return s +} + +// SetRunTimeAssessmentStatus sets the RunTimeAssessmentStatus field's value. +func (s *ServerStatusSummary) SetRunTimeAssessmentStatus(v string) *ServerStatusSummary { + s.RunTimeAssessmentStatus = &v + return s +} + // Contains information about a strategy recommendation for a server. type ServerStrategy struct { _ struct{} `type:"structure"` @@ -5921,6 +6641,9 @@ type SourceCode struct { // The repository name for the source code. Location *string `locationName:"location" min:"1" type:"string"` + // The name of the project. + ProjectName *string `locationName:"projectName" min:"1" type:"string"` + // The branch of the source code. SourceVersion *string `locationName:"sourceVersion" min:"1" type:"string"` @@ -5952,6 +6675,9 @@ func (s *SourceCode) Validate() error { if s.Location != nil && len(*s.Location) < 1 { invalidParams.Add(request.NewErrParamMinLen("Location", 1)) } + if s.ProjectName != nil && len(*s.ProjectName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProjectName", 1)) + } if s.SourceVersion != nil && len(*s.SourceVersion) < 1 { invalidParams.Add(request.NewErrParamMinLen("SourceVersion", 1)) } @@ -5968,6 +6694,12 @@ func (s *SourceCode) SetLocation(v string) *SourceCode { return s } +// SetProjectName sets the ProjectName field's value. +func (s *SourceCode) SetProjectName(v string) *SourceCode { + s.ProjectName = &v + return s +} + // SetSourceVersion sets the SourceVersion field's value. func (s *SourceCode) SetSourceVersion(v string) *SourceCode { s.SourceVersion = &v @@ -5988,6 +6720,9 @@ type SourceCodeRepository struct { // The branch of the source code. Branch *string `locationName:"branch" type:"string"` + // The name of the project. + ProjectName *string `locationName:"projectName" type:"string"` + // The repository name for the source code. Repository *string `locationName:"repository" type:"string"` @@ -6019,6 +6754,12 @@ func (s *SourceCodeRepository) SetBranch(v string) *SourceCodeRepository { return s } +// SetProjectName sets the ProjectName field's value. +func (s *SourceCodeRepository) SetProjectName(v string) *SourceCodeRepository { + s.ProjectName = &v + return s +} + // SetRepository sets the Repository field's value. func (s *SourceCodeRepository) SetRepository(v string) *SourceCodeRepository { s.Repository = &v @@ -6034,6 +6775,9 @@ func (s *SourceCodeRepository) SetVersionControlType(v string) *SourceCodeReposi type StartAssessmentInput struct { _ struct{} `type:"structure"` + // List of criteria for assessment. + AssessmentTargets []*AssessmentTarget `locationName:"assessmentTargets" type:"list"` + // The S3 bucket used by the collectors to send analysis data to the service. // The bucket name must begin with migrationhub-strategy-. S3bucketForAnalysisData *string `locationName:"s3bucketForAnalysisData" type:"string"` @@ -6061,6 +6805,32 @@ func (s StartAssessmentInput) GoString() string { return s.String() } +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartAssessmentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartAssessmentInput"} + if s.AssessmentTargets != nil { + for i, v := range s.AssessmentTargets { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AssessmentTargets", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssessmentTargets sets the AssessmentTargets field's value. +func (s *StartAssessmentInput) SetAssessmentTargets(v []*AssessmentTarget) *StartAssessmentInput { + s.AssessmentTargets = v + return s +} + // SetS3bucketForAnalysisData sets the S3bucketForAnalysisData field's value. func (s *StartAssessmentInput) SetS3bucketForAnalysisData(v string) *StartAssessmentInput { s.S3bucketForAnalysisData = &v @@ -6664,11 +7434,20 @@ func (s *TransformationTool) SetTranformationToolInstallationLink(v string) *Tra type UpdateApplicationComponentConfigInput struct { _ struct{} `type:"structure"` + // The type of known component. + AppType *string `locationName:"appType" type:"string" enum:"AppType"` + // The ID of the application component. The ID is unique within an AWS account. // // ApplicationComponentId is a required field ApplicationComponentId *string `locationName:"applicationComponentId" type:"string" required:"true"` + // Update the configuration request of an application component. If it is set + // to true, the source code and/or database credentials are updated. If it is + // set to false, the source code and/or database credentials are updated and + // an analysis is initiated. + ConfigureOnly *bool `locationName:"configureOnly" type:"boolean"` + // Indicates whether the application component has been included for server // recommendation or not. InclusionStatus *string `locationName:"inclusionStatus" type:"string" enum:"InclusionStatus"` @@ -6732,12 +7511,24 @@ func (s *UpdateApplicationComponentConfigInput) Validate() error { return nil } +// SetAppType sets the AppType field's value. +func (s *UpdateApplicationComponentConfigInput) SetAppType(v string) *UpdateApplicationComponentConfigInput { + s.AppType = &v + return s +} + // SetApplicationComponentId sets the ApplicationComponentId field's value. func (s *UpdateApplicationComponentConfigInput) SetApplicationComponentId(v string) *UpdateApplicationComponentConfigInput { s.ApplicationComponentId = &v return s } +// SetConfigureOnly sets the ConfigureOnly field's value. +func (s *UpdateApplicationComponentConfigInput) SetConfigureOnly(v bool) *UpdateApplicationComponentConfigInput { + s.ConfigureOnly = &v + return s +} + // SetInclusionStatus sets the InclusionStatus field's value. func (s *UpdateApplicationComponentConfigInput) SetInclusionStatus(v string) *UpdateApplicationComponentConfigInput { s.InclusionStatus = &v @@ -6929,6 +7720,88 @@ func (s *ValidationException) RequestID() string { return s.RespMetadata.RequestID } +// Details about the server in vCenter. +type VcenterBasedRemoteInfo struct { + _ struct{} `type:"structure"` + + // The type of the operating system. + OsType *string `locationName:"osType" type:"string" enum:"OSType"` + + // The time when the remote server based on vCenter was last configured. + VcenterConfigurationTimeStamp *string `locationName:"vcenterConfigurationTimeStamp" 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 VcenterBasedRemoteInfo) 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 VcenterBasedRemoteInfo) GoString() string { + return s.String() +} + +// SetOsType sets the OsType field's value. +func (s *VcenterBasedRemoteInfo) SetOsType(v string) *VcenterBasedRemoteInfo { + s.OsType = &v + return s +} + +// SetVcenterConfigurationTimeStamp sets the VcenterConfigurationTimeStamp field's value. +func (s *VcenterBasedRemoteInfo) SetVcenterConfigurationTimeStamp(v string) *VcenterBasedRemoteInfo { + s.VcenterConfigurationTimeStamp = &v + return s +} + +// Details about the version control configuration. +type VersionControlInfo struct { + _ struct{} `type:"structure"` + + // The time when the version control system was last configured. + VersionControlConfigurationTimeStamp *string `locationName:"versionControlConfigurationTimeStamp" type:"string"` + + // The type of version control. + VersionControlType *string `locationName:"versionControlType" type:"string" enum:"VersionControlType"` +} + +// 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 VersionControlInfo) 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 VersionControlInfo) GoString() string { + return s.String() +} + +// SetVersionControlConfigurationTimeStamp sets the VersionControlConfigurationTimeStamp field's value. +func (s *VersionControlInfo) SetVersionControlConfigurationTimeStamp(v string) *VersionControlInfo { + s.VersionControlConfigurationTimeStamp = &v + return s +} + +// SetVersionControlType sets the VersionControlType field's value. +func (s *VersionControlInfo) SetVersionControlType(v string) *VersionControlInfo { + s.VersionControlType = &v + return s +} + const ( // AntipatternReportStatusFailed is a AntipatternReportStatus enum value AntipatternReportStatusFailed = "FAILED" @@ -6967,6 +7840,54 @@ const ( // AppTypeOther is a AppType enum value AppTypeOther = "Other" + + // AppTypeTomcat is a AppType enum value + AppTypeTomcat = "Tomcat" + + // AppTypeJboss is a AppType enum value + AppTypeJboss = "JBoss" + + // AppTypeSpring is a AppType enum value + AppTypeSpring = "Spring" + + // AppTypeMongoDb is a AppType enum value + AppTypeMongoDb = "Mongo DB" + + // AppTypeDb2 is a AppType enum value + AppTypeDb2 = "DB2" + + // AppTypeMariaDb is a AppType enum value + AppTypeMariaDb = "Maria DB" + + // AppTypeMySql is a AppType enum value + AppTypeMySql = "MySQL" + + // AppTypeSybase is a AppType enum value + AppTypeSybase = "Sybase" + + // AppTypePostgreSqlserver is a AppType enum value + AppTypePostgreSqlserver = "PostgreSQLServer" + + // AppTypeCassandra is a AppType enum value + AppTypeCassandra = "Cassandra" + + // AppTypeIbmwebSphere is a AppType enum value + AppTypeIbmwebSphere = "IBM WebSphere" + + // AppTypeOracleWebLogic is a AppType enum value + AppTypeOracleWebLogic = "Oracle WebLogic" + + // AppTypeVisualBasic is a AppType enum value + AppTypeVisualBasic = "Visual Basic" + + // AppTypeUnknown is a AppType enum value + AppTypeUnknown = "Unknown" + + // AppTypeDotnetCore is a AppType enum value + AppTypeDotnetCore = "DotnetCore" + + // AppTypeDotnet is a AppType enum value + AppTypeDotnet = "Dotnet" ) // AppType_Values returns all elements of the AppType enum @@ -6978,6 +7899,50 @@ func AppType_Values() []string { AppTypeIis, AppTypeOracle, AppTypeOther, + AppTypeTomcat, + AppTypeJboss, + AppTypeSpring, + AppTypeMongoDb, + AppTypeDb2, + AppTypeMariaDb, + AppTypeMySql, + AppTypeSybase, + AppTypePostgreSqlserver, + AppTypeCassandra, + AppTypeIbmwebSphere, + AppTypeOracleWebLogic, + AppTypeVisualBasic, + AppTypeUnknown, + AppTypeDotnetCore, + AppTypeDotnet, + } +} + +const ( + // AppUnitErrorCategoryCredentialError is a AppUnitErrorCategory enum value + AppUnitErrorCategoryCredentialError = "CREDENTIAL_ERROR" + + // AppUnitErrorCategoryConnectivityError is a AppUnitErrorCategory enum value + AppUnitErrorCategoryConnectivityError = "CONNECTIVITY_ERROR" + + // AppUnitErrorCategoryPermissionError is a AppUnitErrorCategory enum value + AppUnitErrorCategoryPermissionError = "PERMISSION_ERROR" + + // AppUnitErrorCategoryUnsupportedError is a AppUnitErrorCategory enum value + AppUnitErrorCategoryUnsupportedError = "UNSUPPORTED_ERROR" + + // AppUnitErrorCategoryOtherError is a AppUnitErrorCategory enum value + AppUnitErrorCategoryOtherError = "OTHER_ERROR" +) + +// AppUnitErrorCategory_Values returns all elements of the AppUnitErrorCategory enum +func AppUnitErrorCategory_Values() []string { + return []string{ + AppUnitErrorCategoryCredentialError, + AppUnitErrorCategoryConnectivityError, + AppUnitErrorCategoryPermissionError, + AppUnitErrorCategoryUnsupportedError, + AppUnitErrorCategoryOtherError, } } @@ -6999,6 +7964,12 @@ const ( // ApplicationComponentCriteriaDestination is a ApplicationComponentCriteria enum value ApplicationComponentCriteriaDestination = "DESTINATION" + + // ApplicationComponentCriteriaAnalysisStatus is a ApplicationComponentCriteria enum value + ApplicationComponentCriteriaAnalysisStatus = "ANALYSIS_STATUS" + + // ApplicationComponentCriteriaErrorCategory is a ApplicationComponentCriteria enum value + ApplicationComponentCriteriaErrorCategory = "ERROR_CATEGORY" ) // ApplicationComponentCriteria_Values returns all elements of the ApplicationComponentCriteria enum @@ -7010,6 +7981,28 @@ func ApplicationComponentCriteria_Values() []string { ApplicationComponentCriteriaAppType, ApplicationComponentCriteriaStrategy, ApplicationComponentCriteriaDestination, + ApplicationComponentCriteriaAnalysisStatus, + ApplicationComponentCriteriaErrorCategory, + } +} + +const ( + // ApplicationModeAll is a ApplicationMode enum value + ApplicationModeAll = "ALL" + + // ApplicationModeKnown is a ApplicationMode enum value + ApplicationModeKnown = "KNOWN" + + // ApplicationModeUnknown is a ApplicationMode enum value + ApplicationModeUnknown = "UNKNOWN" +) + +// ApplicationMode_Values returns all elements of the ApplicationMode enum +func ApplicationMode_Values() []string { + return []string{ + ApplicationModeAll, + ApplicationModeKnown, + ApplicationModeUnknown, } } @@ -7037,6 +8030,26 @@ func AssessmentStatus_Values() []string { } } +const ( + // AuthTypeNtlm is a AuthType enum value + AuthTypeNtlm = "NTLM" + + // AuthTypeSsh is a AuthType enum value + AuthTypeSsh = "SSH" + + // AuthTypeCert is a AuthType enum value + AuthTypeCert = "CERT" +) + +// AuthType_Values returns all elements of the AuthType enum +func AuthType_Values() []string { + return []string{ + AuthTypeNtlm, + AuthTypeSsh, + AuthTypeCert, + } +} + const ( // AwsManagedTargetDestinationNonespecified is a AwsManagedTargetDestination enum value AwsManagedTargetDestinationNonespecified = "None specified" @@ -7073,6 +8086,30 @@ func CollectorHealth_Values() []string { } } +const ( + // ConditionEquals is a Condition enum value + ConditionEquals = "EQUALS" + + // ConditionNotEquals is a Condition enum value + ConditionNotEquals = "NOT_EQUALS" + + // ConditionContains is a Condition enum value + ConditionContains = "CONTAINS" + + // ConditionNotContains is a Condition enum value + ConditionNotContains = "NOT_CONTAINS" +) + +// Condition_Values returns all elements of the Condition enum +func Condition_Values() []string { + return []string{ + ConditionEquals, + ConditionNotEquals, + ConditionContains, + ConditionNotContains, + } +} + const ( // DataSourceTypeApplicationDiscoveryService is a DataSourceType enum value DataSourceTypeApplicationDiscoveryService = "ApplicationDiscoveryService" @@ -7301,6 +8338,18 @@ func OutputFormat_Values() []string { } } +const ( + // PipelineTypeAzureDevops is a PipelineType enum value + PipelineTypeAzureDevops = "AZURE_DEVOPS" +) + +// PipelineType_Values returns all elements of the PipelineType enum +func PipelineType_Values() []string { + return []string{ + PipelineTypeAzureDevops, + } +} + const ( // RecommendationReportStatusFailed is a RecommendationReportStatus enum value RecommendationReportStatusFailed = "FAILED" @@ -7377,6 +8426,30 @@ func RunTimeAssessmentStatus_Values() []string { } } +const ( + // RuntimeAnalysisStatusAnalysisToBeScheduled is a RuntimeAnalysisStatus enum value + RuntimeAnalysisStatusAnalysisToBeScheduled = "ANALYSIS_TO_BE_SCHEDULED" + + // RuntimeAnalysisStatusAnalysisStarted is a RuntimeAnalysisStatus enum value + RuntimeAnalysisStatusAnalysisStarted = "ANALYSIS_STARTED" + + // RuntimeAnalysisStatusAnalysisSuccess is a RuntimeAnalysisStatus enum value + RuntimeAnalysisStatusAnalysisSuccess = "ANALYSIS_SUCCESS" + + // RuntimeAnalysisStatusAnalysisFailed is a RuntimeAnalysisStatus enum value + RuntimeAnalysisStatusAnalysisFailed = "ANALYSIS_FAILED" +) + +// RuntimeAnalysisStatus_Values returns all elements of the RuntimeAnalysisStatus enum +func RuntimeAnalysisStatus_Values() []string { + return []string{ + RuntimeAnalysisStatusAnalysisToBeScheduled, + RuntimeAnalysisStatusAnalysisStarted, + RuntimeAnalysisStatusAnalysisSuccess, + RuntimeAnalysisStatusAnalysisFailed, + } +} + const ( // SelfManageTargetDestinationNonespecified is a SelfManageTargetDestination enum value SelfManageTargetDestinationNonespecified = "None specified" @@ -7416,6 +8489,12 @@ const ( // ServerCriteriaServerId is a ServerCriteria enum value ServerCriteriaServerId = "SERVER_ID" + + // ServerCriteriaAnalysisStatus is a ServerCriteria enum value + ServerCriteriaAnalysisStatus = "ANALYSIS_STATUS" + + // ServerCriteriaErrorCategory is a ServerCriteria enum value + ServerCriteriaErrorCategory = "ERROR_CATEGORY" ) // ServerCriteria_Values returns all elements of the ServerCriteria enum @@ -7426,6 +8505,36 @@ func ServerCriteria_Values() []string { ServerCriteriaStrategy, ServerCriteriaDestination, ServerCriteriaServerId, + ServerCriteriaAnalysisStatus, + ServerCriteriaErrorCategory, + } +} + +const ( + // ServerErrorCategoryConnectivityError is a ServerErrorCategory enum value + ServerErrorCategoryConnectivityError = "CONNECTIVITY_ERROR" + + // ServerErrorCategoryCredentialError is a ServerErrorCategory enum value + ServerErrorCategoryCredentialError = "CREDENTIAL_ERROR" + + // ServerErrorCategoryPermissionError is a ServerErrorCategory enum value + ServerErrorCategoryPermissionError = "PERMISSION_ERROR" + + // ServerErrorCategoryArchitectureError is a ServerErrorCategory enum value + ServerErrorCategoryArchitectureError = "ARCHITECTURE_ERROR" + + // ServerErrorCategoryOtherError is a ServerErrorCategory enum value + ServerErrorCategoryOtherError = "OTHER_ERROR" +) + +// ServerErrorCategory_Values returns all elements of the ServerErrorCategory enum +func ServerErrorCategory_Values() []string { + return []string{ + ServerErrorCategoryConnectivityError, + ServerErrorCategoryCredentialError, + ServerErrorCategoryPermissionError, + ServerErrorCategoryArchitectureError, + ServerErrorCategoryOtherError, } } @@ -7505,6 +8614,15 @@ const ( // SrcCodeOrDbAnalysisStatusAnalysisFailed is a SrcCodeOrDbAnalysisStatus enum value SrcCodeOrDbAnalysisStatusAnalysisFailed = "ANALYSIS_FAILED" + + // SrcCodeOrDbAnalysisStatusAnalysisPartialSuccess is a SrcCodeOrDbAnalysisStatus enum value + SrcCodeOrDbAnalysisStatusAnalysisPartialSuccess = "ANALYSIS_PARTIAL_SUCCESS" + + // SrcCodeOrDbAnalysisStatusUnconfigured is a SrcCodeOrDbAnalysisStatus enum value + SrcCodeOrDbAnalysisStatusUnconfigured = "UNCONFIGURED" + + // SrcCodeOrDbAnalysisStatusConfigured is a SrcCodeOrDbAnalysisStatus enum value + SrcCodeOrDbAnalysisStatusConfigured = "CONFIGURED" ) // SrcCodeOrDbAnalysisStatus_Values returns all elements of the SrcCodeOrDbAnalysisStatus enum @@ -7514,6 +8632,9 @@ func SrcCodeOrDbAnalysisStatus_Values() []string { SrcCodeOrDbAnalysisStatusAnalysisStarted, SrcCodeOrDbAnalysisStatusAnalysisSuccess, SrcCodeOrDbAnalysisStatusAnalysisFailed, + SrcCodeOrDbAnalysisStatusAnalysisPartialSuccess, + SrcCodeOrDbAnalysisStatusUnconfigured, + SrcCodeOrDbAnalysisStatusConfigured, } } @@ -7562,6 +8683,9 @@ const ( // StrategyRecommendationNotRecommended is a StrategyRecommendation enum value StrategyRecommendationNotRecommended = "notRecommended" + + // StrategyRecommendationPotential is a StrategyRecommendation enum value + StrategyRecommendationPotential = "potential" ) // StrategyRecommendation_Values returns all elements of the StrategyRecommendation enum @@ -7570,6 +8694,7 @@ func StrategyRecommendation_Values() []string { StrategyRecommendationRecommended, StrategyRecommendationViableOption, StrategyRecommendationNotRecommended, + StrategyRecommendationPotential, } } @@ -7660,6 +8785,9 @@ const ( // TargetDestinationAmazonRelationalDatabaseService is a TargetDestination enum value TargetDestinationAmazonRelationalDatabaseService = "Amazon Relational Database Service" + + // TargetDestinationBabelfishforAuroraPostgreSql is a TargetDestination enum value + TargetDestinationBabelfishforAuroraPostgreSql = "Babelfish for Aurora PostgreSQL" ) // TargetDestination_Values returns all elements of the TargetDestination enum @@ -7678,6 +8806,7 @@ func TargetDestination_Values() []string { TargetDestinationAmazonDocumentDb, TargetDestinationAmazonDynamoDb, TargetDestinationAmazonRelationalDatabaseService, + TargetDestinationBabelfishforAuroraPostgreSql, } } @@ -7735,6 +8864,9 @@ const ( // VersionControlGithubEnterprise is a VersionControl enum value VersionControlGithubEnterprise = "GITHUB_ENTERPRISE" + + // VersionControlAzureDevopsGit is a VersionControl enum value + VersionControlAzureDevopsGit = "AZURE_DEVOPS_GIT" ) // VersionControl_Values returns all elements of the VersionControl enum @@ -7742,5 +8874,26 @@ func VersionControl_Values() []string { return []string{ VersionControlGithub, VersionControlGithubEnterprise, + VersionControlAzureDevopsGit, + } +} + +const ( + // VersionControlTypeGithub is a VersionControlType enum value + VersionControlTypeGithub = "GITHUB" + + // VersionControlTypeGithubEnterprise is a VersionControlType enum value + VersionControlTypeGithubEnterprise = "GITHUB_ENTERPRISE" + + // VersionControlTypeAzureDevopsGit is a VersionControlType enum value + VersionControlTypeAzureDevopsGit = "AZURE_DEVOPS_GIT" +) + +// VersionControlType_Values returns all elements of the VersionControlType enum +func VersionControlType_Values() []string { + return []string{ + VersionControlTypeGithub, + VersionControlTypeGithubEnterprise, + VersionControlTypeAzureDevopsGit, } } diff --git a/service/migrationhubstrategyrecommendations/errors.go b/service/migrationhubstrategyrecommendations/errors.go index 4b090130a14..762a05c8d31 100644 --- a/service/migrationhubstrategyrecommendations/errors.go +++ b/service/migrationhubstrategyrecommendations/errors.go @@ -23,6 +23,12 @@ const ( // Return when once the existing tasks are complete. ErrCodeConflictException = "ConflictException" + // ErrCodeDependencyException for service response error code + // "DependencyException". + // + // Dependency encountered an error. + ErrCodeDependencyException = "DependencyException" + // ErrCodeInternalServerException for service response error code // "InternalServerException". // @@ -64,6 +70,7 @@ const ( var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ "AccessDeniedException": newErrorAccessDeniedException, "ConflictException": newErrorConflictException, + "DependencyException": newErrorDependencyException, "InternalServerException": newErrorInternalServerException, "ResourceNotFoundException": newErrorResourceNotFoundException, "ServiceLinkedRoleLockClientException": newErrorServiceLinkedRoleLockClientException, diff --git a/service/migrationhubstrategyrecommendations/migrationhubstrategyrecommendationsiface/interface.go b/service/migrationhubstrategyrecommendations/migrationhubstrategyrecommendationsiface/interface.go index 97c0be367c9..313e8a2e8c3 100644 --- a/service/migrationhubstrategyrecommendations/migrationhubstrategyrecommendationsiface/interface.go +++ b/service/migrationhubstrategyrecommendations/migrationhubstrategyrecommendationsiface/interface.go @@ -76,6 +76,10 @@ type MigrationHubStrategyRecommendationsAPI interface { GetImportFileTaskWithContext(aws.Context, *migrationhubstrategyrecommendations.GetImportFileTaskInput, ...request.Option) (*migrationhubstrategyrecommendations.GetImportFileTaskOutput, error) GetImportFileTaskRequest(*migrationhubstrategyrecommendations.GetImportFileTaskInput) (*request.Request, *migrationhubstrategyrecommendations.GetImportFileTaskOutput) + GetLatestAssessmentId(*migrationhubstrategyrecommendations.GetLatestAssessmentIdInput) (*migrationhubstrategyrecommendations.GetLatestAssessmentIdOutput, error) + GetLatestAssessmentIdWithContext(aws.Context, *migrationhubstrategyrecommendations.GetLatestAssessmentIdInput, ...request.Option) (*migrationhubstrategyrecommendations.GetLatestAssessmentIdOutput, error) + GetLatestAssessmentIdRequest(*migrationhubstrategyrecommendations.GetLatestAssessmentIdInput) (*request.Request, *migrationhubstrategyrecommendations.GetLatestAssessmentIdOutput) + GetPortfolioPreferences(*migrationhubstrategyrecommendations.GetPortfolioPreferencesInput) (*migrationhubstrategyrecommendations.GetPortfolioPreferencesOutput, error) GetPortfolioPreferencesWithContext(aws.Context, *migrationhubstrategyrecommendations.GetPortfolioPreferencesInput, ...request.Option) (*migrationhubstrategyrecommendations.GetPortfolioPreferencesOutput, error) GetPortfolioPreferencesRequest(*migrationhubstrategyrecommendations.GetPortfolioPreferencesInput) (*request.Request, *migrationhubstrategyrecommendations.GetPortfolioPreferencesOutput)