From f7b11b3e815ee110c5eb130fec2426a0cbf238b3 Mon Sep 17 00:00:00 2001 From: aws-sdk-go-automation <43143561+aws-sdk-go-automation@users.noreply.github.com> Date: Wed, 13 Jul 2022 11:34:00 -0700 Subject: [PATCH] Release v1.44.54 (2022-07-13) (#4478) Release v1.44.54 (2022-07-13) === ### Service Client Updates * `service/appconfig`: Updates service API, documentation, and paginators --- CHANGELOG.md | 6 + aws/version.go | 2 +- models/apis/appconfig/2019-10-09/api-2.json | 504 ++- models/apis/appconfig/2019-10-09/docs-2.json | 283 +- .../appconfig/2019-10-09/paginators-1.json | 10 + service/appconfig/api.go | 3686 +++++++++++++++-- service/appconfig/appconfigiface/interface.go | 46 + 7 files changed, 4112 insertions(+), 425 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c6668e58ff..ce8189d509 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,9 @@ +Release v1.44.54 (2022-07-13) +=== + +### Service Client Updates +* `service/appconfig`: Updates service API, documentation, and paginators + Release v1.44.53 (2022-07-12) === diff --git a/aws/version.go b/aws/version.go index f6676b08ec..504aded032 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.53" +const SDKVersion = "1.44.54" diff --git a/models/apis/appconfig/2019-10-09/api-2.json b/models/apis/appconfig/2019-10-09/api-2.json index 8d0bcf4759..2e9675431e 100644 --- a/models/apis/appconfig/2019-10-09/api-2.json +++ b/models/apis/appconfig/2019-10-09/api-2.json @@ -71,6 +71,38 @@ {"shape":"BadRequestException"} ] }, + "CreateExtension":{ + "name":"CreateExtension", + "http":{ + "method":"POST", + "requestUri":"/extensions", + "responseCode":201 + }, + "input":{"shape":"CreateExtensionRequest"}, + "output":{"shape":"Extension"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ConflictException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"InternalServerException"} + ] + }, + "CreateExtensionAssociation":{ + "name":"CreateExtensionAssociation", + "http":{ + "method":"POST", + "requestUri":"/extensionassociations", + "responseCode":201 + }, + "input":{"shape":"CreateExtensionAssociationRequest"}, + "output":{"shape":"ExtensionAssociation"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceQuotaExceededException"} + ] + }, "CreateHostedConfigurationVersion":{ "name":"CreateHostedConfigurationVersion", "http":{ @@ -147,6 +179,34 @@ {"shape":"BadRequestException"} ] }, + "DeleteExtension":{ + "name":"DeleteExtension", + "http":{ + "method":"DELETE", + "requestUri":"/extensions/{ExtensionIdentifier}", + "responseCode":204 + }, + "input":{"shape":"DeleteExtensionRequest"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"BadRequestException"} + ] + }, + "DeleteExtensionAssociation":{ + "name":"DeleteExtensionAssociation", + "http":{ + "method":"DELETE", + "requestUri":"/extensionassociations/{ExtensionAssociationId}", + "responseCode":204 + }, + "input":{"shape":"DeleteExtensionAssociationRequest"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, "DeleteHostedConfigurationVersion":{ "name":"DeleteHostedConfigurationVersion", "http":{ @@ -253,6 +313,36 @@ {"shape":"BadRequestException"} ] }, + "GetExtension":{ + "name":"GetExtension", + "http":{ + "method":"GET", + "requestUri":"/extensions/{ExtensionIdentifier}", + "responseCode":200 + }, + "input":{"shape":"GetExtensionRequest"}, + "output":{"shape":"Extension"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"BadRequestException"} + ] + }, + "GetExtensionAssociation":{ + "name":"GetExtensionAssociation", + "http":{ + "method":"GET", + "requestUri":"/extensionassociations/{ExtensionAssociationId}", + "responseCode":200 + }, + "input":{"shape":"GetExtensionAssociationRequest"}, + "output":{"shape":"ExtensionAssociation"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, "GetHostedConfigurationVersion":{ "name":"GetHostedConfigurationVersion", "http":{ @@ -341,6 +431,34 @@ {"shape":"BadRequestException"} ] }, + "ListExtensionAssociations":{ + "name":"ListExtensionAssociations", + "http":{ + "method":"GET", + "requestUri":"/extensionassociations", + "responseCode":200 + }, + "input":{"shape":"ListExtensionAssociationsRequest"}, + "output":{"shape":"ExtensionAssociations"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"BadRequestException"} + ] + }, + "ListExtensions":{ + "name":"ListExtensions", + "http":{ + "method":"GET", + "requestUri":"/extensions", + "responseCode":200 + }, + "input":{"shape":"ListExtensionsRequest"}, + "output":{"shape":"Extensions"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"BadRequestException"} + ] + }, "ListHostedConfigurationVersions":{ "name":"ListHostedConfigurationVersions", "http":{ @@ -490,6 +608,37 @@ {"shape":"InternalServerException"} ] }, + "UpdateExtension":{ + "name":"UpdateExtension", + "http":{ + "method":"PATCH", + "requestUri":"/extensions/{ExtensionIdentifier}", + "responseCode":200 + }, + "input":{"shape":"UpdateExtensionRequest"}, + "output":{"shape":"Extension"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ] + }, + "UpdateExtensionAssociation":{ + "name":"UpdateExtensionAssociation", + "http":{ + "method":"PATCH", + "requestUri":"/extensionassociations/{ExtensionAssociationId}", + "responseCode":200 + }, + "input":{"shape":"UpdateExtensionAssociationRequest"}, + "output":{"shape":"ExtensionAssociation"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, "ValidateConfiguration":{ "name":"ValidateConfiguration", "http":{ @@ -506,6 +655,56 @@ } }, "shapes":{ + "Action":{ + "type":"structure", + "members":{ + "Name":{"shape":"Name"}, + "Description":{"shape":"Description"}, + "Uri":{"shape":"Uri"}, + "RoleArn":{"shape":"Arn"} + } + }, + "ActionInvocation":{ + "type":"structure", + "members":{ + "ExtensionIdentifier":{"shape":"Identifier"}, + "ActionName":{"shape":"Name"}, + "Uri":{"shape":"Uri"}, + "RoleArn":{"shape":"Arn"}, + "ErrorMessage":{"shape":"String"}, + "ErrorCode":{"shape":"String"}, + "InvocationId":{"shape":"Id"} + } + }, + "ActionInvocations":{ + "type":"list", + "member":{"shape":"ActionInvocation"} + }, + "ActionList":{ + "type":"list", + "member":{"shape":"Action"}, + "max":1, + "min":1 + }, + "ActionPoint":{ + "type":"string", + "enum":[ + "PRE_CREATE_HOSTED_CONFIGURATION_VERSION", + "PRE_START_DEPLOYMENT", + "ON_DEPLOYMENT_START", + "ON_DEPLOYMENT_STEP", + "ON_DEPLOYMENT_BAKING", + "ON_DEPLOYMENT_COMPLETE", + "ON_DEPLOYMENT_ROLLED_BACK" + ] + }, + "ActionsMap":{ + "type":"map", + "key":{"shape":"ActionPoint"}, + "value":{"shape":"ActionList"}, + "max":5, + "min":1 + }, "Application":{ "type":"structure", "members":{ @@ -525,6 +724,19 @@ "NextToken":{"shape":"NextToken"} } }, + "AppliedExtension":{ + "type":"structure", + "members":{ + "ExtensionId":{"shape":"Id"}, + "ExtensionAssociationId":{"shape":"Id"}, + "VersionNumber":{"shape":"Integer"}, + "Parameters":{"shape":"ParameterValueMap"} + } + }, + "AppliedExtensions":{ + "type":"list", + "member":{"shape":"AppliedExtension"} + }, "Arn":{ "type":"string", "max":2048, @@ -556,6 +768,7 @@ "type":"blob", "sensitive":true }, + "Boolean":{"type":"boolean"}, "BytesMeasure":{ "type":"string", "enum":["KILOBYTES"] @@ -582,7 +795,7 @@ "members":{ "ApplicationId":{"shape":"Id"}, "Id":{"shape":"Id"}, - "Name":{"shape":"Name"}, + "Name":{"shape":"LongName"}, "Description":{"shape":"Description"}, "LocationUri":{"shape":"Uri"}, "RetrievalRoleArn":{"shape":"RoleArn"}, @@ -595,7 +808,7 @@ "members":{ "ApplicationId":{"shape":"Id"}, "Id":{"shape":"Id"}, - "Name":{"shape":"Name"}, + "Name":{"shape":"LongName"}, "LocationUri":{"shape":"Uri"}, "ValidatorTypes":{"shape":"ValidatorTypeList"}, "Type":{"shape":"ConfigurationProfileType"} @@ -646,7 +859,7 @@ "location":"uri", "locationName":"ApplicationId" }, - "Name":{"shape":"Name"}, + "Name":{"shape":"LongName"}, "Description":{"shape":"Description"}, "LocationUri":{"shape":"Uri"}, "RetrievalRoleArn":{"shape":"RoleArn"}, @@ -660,8 +873,7 @@ "required":[ "Name", "DeploymentDurationInMinutes", - "GrowthFactor", - "ReplicateTo" + "GrowthFactor" ], "members":{ "Name":{"shape":"Name"}, @@ -698,6 +910,43 @@ "Tags":{"shape":"TagMap"} } }, + "CreateExtensionAssociationRequest":{ + "type":"structure", + "required":[ + "ExtensionIdentifier", + "ResourceIdentifier" + ], + "members":{ + "ExtensionIdentifier":{"shape":"Identifier"}, + "ExtensionVersionNumber":{ + "shape":"Integer", + "box":true + }, + "ResourceIdentifier":{"shape":"Identifier"}, + "Parameters":{"shape":"ParameterValueMap"}, + "Tags":{"shape":"TagMap"} + } + }, + "CreateExtensionRequest":{ + "type":"structure", + "required":[ + "Name", + "Actions" + ], + "members":{ + "Name":{"shape":"Name"}, + "Description":{"shape":"Description"}, + "Actions":{"shape":"ActionsMap"}, + "Parameters":{"shape":"ParameterMap"}, + "Tags":{"shape":"TagMap"}, + "LatestVersionNumber":{ + "shape":"Integer", + "box":true, + "location":"header", + "locationName":"Latest-Version-Number" + } + } + }, "CreateHostedConfigurationVersionRequest":{ "type":"structure", "required":[ @@ -797,6 +1046,34 @@ } } }, + "DeleteExtensionAssociationRequest":{ + "type":"structure", + "required":["ExtensionAssociationId"], + "members":{ + "ExtensionAssociationId":{ + "shape":"Id", + "location":"uri", + "locationName":"ExtensionAssociationId" + } + } + }, + "DeleteExtensionRequest":{ + "type":"structure", + "required":["ExtensionIdentifier"], + "members":{ + "ExtensionIdentifier":{ + "shape":"Identifier", + "location":"uri", + "locationName":"ExtensionIdentifier" + }, + "VersionNumber":{ + "shape":"Integer", + "box":true, + "location":"querystring", + "locationName":"version" + } + } + }, "DeleteHostedConfigurationVersionRequest":{ "type":"structure", "required":[ @@ -842,7 +1119,8 @@ "EventLog":{"shape":"DeploymentEvents"}, "PercentageComplete":{"shape":"Percentage"}, "StartedAt":{"shape":"Iso8601DateTime"}, - "CompletedAt":{"shape":"Iso8601DateTime"} + "CompletedAt":{"shape":"Iso8601DateTime"}, + "AppliedExtensions":{"shape":"AppliedExtensions"} } }, "DeploymentEvent":{ @@ -851,6 +1129,7 @@ "EventType":{"shape":"DeploymentEventType"}, "TriggeredBy":{"shape":"TriggeredBy"}, "Description":{"shape":"Description"}, + "ActionInvocations":{"shape":"ActionInvocations"}, "OccurredAt":{"shape":"Iso8601DateTime"} } }, @@ -971,6 +1250,69 @@ "NextToken":{"shape":"NextToken"} } }, + "Extension":{ + "type":"structure", + "members":{ + "Id":{"shape":"Id"}, + "Name":{"shape":"Name"}, + "VersionNumber":{"shape":"Integer"}, + "Arn":{"shape":"Arn"}, + "Description":{"shape":"Description"}, + "Actions":{"shape":"ActionsMap"}, + "Parameters":{"shape":"ParameterMap"} + } + }, + "ExtensionAssociation":{ + "type":"structure", + "members":{ + "Id":{"shape":"Identifier"}, + "ExtensionArn":{"shape":"Arn"}, + "ResourceArn":{"shape":"Arn"}, + "Arn":{"shape":"Arn"}, + "Parameters":{"shape":"ParameterValueMap"}, + "ExtensionVersionNumber":{"shape":"Integer"} + } + }, + "ExtensionAssociationSummaries":{ + "type":"list", + "member":{"shape":"ExtensionAssociationSummary"} + }, + "ExtensionAssociationSummary":{ + "type":"structure", + "members":{ + "Id":{"shape":"Identifier"}, + "ExtensionArn":{"shape":"Arn"}, + "ResourceArn":{"shape":"Arn"} + } + }, + "ExtensionAssociations":{ + "type":"structure", + "members":{ + "Items":{"shape":"ExtensionAssociationSummaries"}, + "NextToken":{"shape":"NextToken"} + } + }, + "ExtensionSummaries":{ + "type":"list", + "member":{"shape":"ExtensionSummary"} + }, + "ExtensionSummary":{ + "type":"structure", + "members":{ + "Id":{"shape":"Id"}, + "Name":{"shape":"Name"}, + "VersionNumber":{"shape":"Integer"}, + "Arn":{"shape":"Arn"}, + "Description":{"shape":"Description"} + } + }, + "Extensions":{ + "type":"structure", + "members":{ + "Items":{"shape":"ExtensionSummaries"}, + "NextToken":{"shape":"NextToken"} + } + }, "Float":{"type":"float"}, "GetApplicationRequest":{ "type":"structure", @@ -1094,6 +1436,34 @@ } } }, + "GetExtensionAssociationRequest":{ + "type":"structure", + "required":["ExtensionAssociationId"], + "members":{ + "ExtensionAssociationId":{ + "shape":"Id", + "location":"uri", + "locationName":"ExtensionAssociationId" + } + } + }, + "GetExtensionRequest":{ + "type":"structure", + "required":["ExtensionIdentifier"], + "members":{ + "ExtensionIdentifier":{ + "shape":"Identifier", + "location":"uri", + "locationName":"ExtensionIdentifier" + }, + "VersionNumber":{ + "shape":"Integer", + "box":true, + "location":"querystring", + "locationName":"version_number" + } + } + }, "GetHostedConfigurationVersionRequest":{ "type":"structure", "required":[ @@ -1188,6 +1558,11 @@ "type":"string", "pattern":"[a-z0-9]{4,7}" }, + "Identifier":{ + "type":"string", + "max":2048, + "min":1 + }, "Integer":{"type":"integer"}, "InternalServerException":{ "type":"structure", @@ -1204,7 +1579,8 @@ "Constraint":{"shape":"String"}, "Location":{"shape":"String"}, "Reason":{"shape":"String"}, - "Type":{"shape":"String"} + "Type":{"shape":"String"}, + "Value":{"shape":"String"} } }, "InvalidConfigurationDetailList":{ @@ -1326,6 +1702,59 @@ } } }, + "ListExtensionAssociationsRequest":{ + "type":"structure", + "members":{ + "ResourceIdentifier":{ + "shape":"Arn", + "location":"querystring", + "locationName":"resource_identifier" + }, + "ExtensionIdentifier":{ + "shape":"Identifier", + "location":"querystring", + "locationName":"extension_identifier" + }, + "ExtensionVersionNumber":{ + "shape":"Integer", + "box":true, + "location":"querystring", + "locationName":"extension_version_number" + }, + "MaxResults":{ + "shape":"MaxResults", + "box":true, + "location":"querystring", + "locationName":"max_results" + }, + "NextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"next_token" + } + } + }, + "ListExtensionsRequest":{ + "type":"structure", + "members":{ + "MaxResults":{ + "shape":"MaxResults", + "box":true, + "location":"querystring", + "locationName":"max_results" + }, + "NextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"next_token" + }, + "Name":{ + "shape":"QueryName", + "location":"querystring", + "locationName":"name" + } + } + }, "ListHostedConfigurationVersionsRequest":{ "type":"structure", "required":[ @@ -1367,6 +1796,11 @@ } } }, + "LongName":{ + "type":"string", + "max":128, + "min":1 + }, "MaxResults":{ "type":"integer", "max":50, @@ -1401,6 +1835,27 @@ "max":2048, "min":1 }, + "Parameter":{ + "type":"structure", + "members":{ + "Description":{"shape":"Description"}, + "Required":{"shape":"Boolean"} + } + }, + "ParameterMap":{ + "type":"map", + "key":{"shape":"Name"}, + "value":{"shape":"Parameter"}, + "max":5, + "min":1 + }, + "ParameterValueMap":{ + "type":"map", + "key":{"shape":"Name"}, + "value":{"shape":"StringWithLengthBetween1And2048"}, + "max":5, + "min":0 + }, "PayloadTooLargeException":{ "type":"structure", "members":{ @@ -1417,6 +1872,11 @@ "max":100.0, "min":1.0 }, + "QueryName":{ + "type":"string", + "max":64, + "min":1 + }, "ReplicateTo":{ "type":"string", "enum":[ @@ -1676,6 +2136,36 @@ "Monitors":{"shape":"MonitorList"} } }, + "UpdateExtensionAssociationRequest":{ + "type":"structure", + "required":["ExtensionAssociationId"], + "members":{ + "ExtensionAssociationId":{ + "shape":"Id", + "location":"uri", + "locationName":"ExtensionAssociationId" + }, + "Parameters":{"shape":"ParameterValueMap"} + } + }, + "UpdateExtensionRequest":{ + "type":"structure", + "required":["ExtensionIdentifier"], + "members":{ + "ExtensionIdentifier":{ + "shape":"Identifier", + "location":"uri", + "locationName":"ExtensionIdentifier" + }, + "Description":{"shape":"Description"}, + "Actions":{"shape":"ActionsMap"}, + "Parameters":{"shape":"ParameterMap"}, + "VersionNumber":{ + "shape":"Integer", + "box":true + } + } + }, "Uri":{ "type":"string", "max":2048, diff --git a/models/apis/appconfig/2019-10-09/docs-2.json b/models/apis/appconfig/2019-10-09/docs-2.json index 57f0c4c1ae..86bf5d2230 100644 --- a/models/apis/appconfig/2019-10-09/docs-2.json +++ b/models/apis/appconfig/2019-10-09/docs-2.json @@ -2,28 +2,36 @@ "version": "2.0", "service": "

Use AppConfig, a capability of Amazon Web Services Systems Manager, to create, manage, and quickly deploy application configurations. AppConfig supports controlled deployments to applications of any size and includes built-in validation checks and monitoring. You can use AppConfig with applications hosted on Amazon EC2 instances, Lambda, containers, mobile applications, or IoT devices.

To prevent errors when deploying application configurations, especially for production systems where a simple typo could cause an unexpected outage, AppConfig includes validators. A validator provides a syntactic or semantic check to ensure that the configuration you want to deploy works as intended. To validate your application configuration data, you provide a schema or an Amazon Web Services Lambda function that runs against the configuration. The configuration deployment or update can only proceed when the configuration data is valid.

During a configuration deployment, AppConfig monitors the application to ensure that the deployment is successful. If the system encounters an error, AppConfig rolls back the change to minimize impact for your application users. You can configure a deployment strategy for each application or environment that includes deployment criteria, including velocity, bake time, and alarms to monitor. Similar to error monitoring, if a deployment triggers an alarm, AppConfig automatically rolls back to the previous version.

AppConfig supports multiple use cases. Here are some examples:

This reference is intended to be used with the AppConfig User Guide.

", "operations": { - "CreateApplication": "

Creates an application. An application in AppConfig is a logical unit of code that provides capabilities for your customers. For example, an application can be a microservice that runs on Amazon EC2 instances, a mobile application installed by your users, a serverless application using Amazon API Gateway and Lambda, or any system you run on behalf of others.

", + "CreateApplication": "

Creates an application. In AppConfig, an application is simply an organizational construct like a folder. This organizational construct has a relationship with some unit of executable code. For example, you could create an application called MyMobileApp to organize and manage configuration data for a mobile application installed by your users.

", "CreateConfigurationProfile": "

Creates a configuration profile, which is information that enables AppConfig to access the configuration source. Valid configuration sources include the AppConfig hosted configuration store, Amazon Web Services Systems Manager (SSM) documents, SSM Parameter Store parameters, Amazon S3 objects, or any integration source action supported by CodePipeline. A configuration profile includes the following information:

For more information, see Create a Configuration and a Configuration Profile in the AppConfig User Guide.

", "CreateDeploymentStrategy": "

Creates a deployment strategy that defines important criteria for rolling out your configuration to the designated targets. A deployment strategy includes the overall duration required, a percentage of targets to receive the deployment during each interval, an algorithm that defines how percentage grows, and bake time.

", - "CreateEnvironment": "

Creates an environment. For each application, you define one or more environments. An environment is a logical deployment group of AppConfig targets, such as applications in a Beta or Production environment. You can also define environments for application subcomponents such as the Web, Mobile and Back-end components for your application. You can configure Amazon CloudWatch alarms for each environment. The system monitors alarms during a configuration deployment. If an alarm is triggered, the system rolls back the configuration.

", + "CreateEnvironment": "

Creates an environment. For each application, you define one or more environments. An environment is a deployment group of AppConfig targets, such as applications in a Beta or Production environment. You can also define environments for application subcomponents such as the Web, Mobile and Back-end components for your application. You can configure Amazon CloudWatch alarms for each environment. The system monitors alarms during a configuration deployment. If an alarm is triggered, the system rolls back the configuration.

", + "CreateExtension": "

Creates an AppConfig extension. An extension augments your ability to inject logic or behavior at different points during the AppConfig workflow of creating or deploying a configuration.

You can create your own extensions or use the Amazon Web Services-authored extensions provided by AppConfig. For most use-cases, to create your own extension, you must create an Lambda function to perform any computation and processing defined in the extension. For more information about extensions, see Working with AppConfig extensions in the AppConfig User Guide.

", + "CreateExtensionAssociation": "

When you create an extension or configure an Amazon Web Services-authored extension, you associate the extension with an AppConfig application, environment, or configuration profile. For example, you can choose to run the AppConfig deployment events to Amazon SNS Amazon Web Services-authored extension and receive notifications on an Amazon SNS topic anytime a configuration deployment is started for a specific application. Defining which extension to associate with an AppConfig resource is called an extension association. An extension association is a specified relationship between an extension and an AppConfig resource, such as an application or a configuration profile. For more information about extensions and associations, see Working with AppConfig extensions in the AppConfig User Guide.

", "CreateHostedConfigurationVersion": "

Creates a new configuration in the AppConfig hosted configuration store.

", "DeleteApplication": "

Deletes an application. Deleting an application does not delete a configuration from a host.

", "DeleteConfigurationProfile": "

Deletes a configuration profile. Deleting a configuration profile does not delete a configuration from a host.

", "DeleteDeploymentStrategy": "

Deletes a deployment strategy. Deleting a deployment strategy does not delete a configuration from a host.

", "DeleteEnvironment": "

Deletes an environment. Deleting an environment does not delete a configuration from a host.

", + "DeleteExtension": "

Deletes an AppConfig extension. You must delete all associations to an extension before you delete the extension.

", + "DeleteExtensionAssociation": "

Deletes an extension association. This action doesn't delete extensions defined in the association.

", "DeleteHostedConfigurationVersion": "

Deletes a version of a configuration from the AppConfig hosted configuration store.

", "GetApplication": "

Retrieves information about an application.

", "GetConfiguration": "

Retrieves the latest deployed configuration.

Note the following important information.

", "GetConfigurationProfile": "

Retrieves information about a configuration profile.

", "GetDeployment": "

Retrieves information about a configuration deployment.

", "GetDeploymentStrategy": "

Retrieves information about a deployment strategy. A deployment strategy defines important criteria for rolling out your configuration to the designated targets. A deployment strategy includes the overall duration required, a percentage of targets to receive the deployment during each interval, an algorithm that defines how percentage grows, and bake time.

", - "GetEnvironment": "

Retrieves information about an environment. An environment is a logical deployment group of AppConfig applications, such as applications in a Production environment or in an EU_Region environment. Each configuration deployment targets an environment. You can enable one or more Amazon CloudWatch alarms for an environment. If an alarm is triggered during a deployment, AppConfig roles back the configuration.

", + "GetEnvironment": "

Retrieves information about an environment. An environment is a deployment group of AppConfig applications, such as applications in a Production environment or in an EU_Region environment. Each configuration deployment targets an environment. You can enable one or more Amazon CloudWatch alarms for an environment. If an alarm is triggered during a deployment, AppConfig roles back the configuration.

", + "GetExtension": "

Returns information about an AppConfig extension.

", + "GetExtensionAssociation": "

Returns information about an AppConfig extension association. For more information about extensions and associations, see Working with AppConfig extensions in the AppConfig User Guide.

", "GetHostedConfigurationVersion": "

Retrieves information about a specific configuration version.

", "ListApplications": "

Lists all applications in your Amazon Web Services account.

", "ListConfigurationProfiles": "

Lists the configuration profiles for an application.

", "ListDeploymentStrategies": "

Lists deployment strategies.

", "ListDeployments": "

Lists the deployments for an environment in descending deployment number order.

", "ListEnvironments": "

Lists the environments for an application.

", + "ListExtensionAssociations": "

Lists all AppConfig extension associations in the account. For more information about extensions and associations, see Working with AppConfig extensions in the AppConfig User Guide.

", + "ListExtensions": "

Lists all custom and Amazon Web Services-authored AppConfig extensions in the account. For more information about extensions, see Working with AppConfig extensions in the AppConfig User Guide.

", "ListHostedConfigurationVersions": "

Lists configurations stored in the AppConfig hosted configuration store by version.

", "ListTagsForResource": "

Retrieves the list of key-value tags assigned to the resource.

", "StartDeployment": "

Starts a deployment.

", @@ -34,9 +42,49 @@ "UpdateConfigurationProfile": "

Updates a configuration profile.

", "UpdateDeploymentStrategy": "

Updates a deployment strategy.

", "UpdateEnvironment": "

Updates an environment.

", + "UpdateExtension": "

Updates an AppConfig extension. For more information about extensions, see Working with AppConfig extensions in the AppConfig User Guide.

", + "UpdateExtensionAssociation": "

Updates an association. For more information about extensions and associations, see Working with AppConfig extensions in the AppConfig User Guide.

", "ValidateConfiguration": "

Uses the validators in a configuration profile to validate a configuration.

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

An action defines the tasks the extension performs during the AppConfig workflow. Each action includes an action point such as ON_CREATE_HOSTED_CONFIGURATION, PRE_DEPLOYMENT, or ON_DEPLOYMENT. Each action also includes a name, a URI to an Lambda function, and an Amazon Resource Name (ARN) for an Identity and Access Management assume role. You specify the name, URI, and ARN for each action point defined in the extension. You can specify the following actions for an extension:

", + "refs": { + "ActionList$member": null + } + }, + "ActionInvocation": { + "base": "

An extension that was invoked as part of a deployment event.

", + "refs": { + "ActionInvocations$member": null + } + }, + "ActionInvocations": { + "base": null, + "refs": { + "DeploymentEvent$ActionInvocations": "

The list of extensions that were invoked as part of the deployment.

" + } + }, + "ActionList": { + "base": null, + "refs": { + "ActionsMap$value": null + } + }, + "ActionPoint": { + "base": null, + "refs": { + "ActionsMap$key": null + } + }, + "ActionsMap": { + "base": null, + "refs": { + "CreateExtensionRequest$Actions": "

The actions defined in the extension.

", + "Extension$Actions": "

The actions defined in the extension.

", + "UpdateExtensionRequest$Actions": "

The actions defined in the extension.

" + } + }, "Application": { "base": null, "refs": { @@ -54,9 +102,31 @@ "refs": { } }, + "AppliedExtension": { + "base": "

An extension that was invoked during a deployment.

", + "refs": { + "AppliedExtensions$member": null + } + }, + "AppliedExtensions": { + "base": null, + "refs": { + "Deployment$AppliedExtensions": "

A list of extensions that were processed as part of the deployment. The extensions that were previously associated to the configuration profile, environment, or the application when StartDeployment was called.

" + } + }, "Arn": { "base": null, "refs": { + "Action$RoleArn": "

An Amazon Resource Name (ARN) for an Identity and Access Management assume role.

", + "ActionInvocation$RoleArn": "

An Amazon Resource Name (ARN) for an Identity and Access Management assume role.

", + "Extension$Arn": "

The system-generated Amazon Resource Name (ARN) for the extension.

", + "ExtensionAssociation$ExtensionArn": "

The ARN of the extension defined in the association.

", + "ExtensionAssociation$ResourceArn": "

The ARNs of applications, configuration profiles, or environments defined in the association.

", + "ExtensionAssociation$Arn": "

The system-generated Amazon Resource Name (ARN) for the extension.

", + "ExtensionAssociationSummary$ExtensionArn": "

The system-generated Amazon Resource Name (ARN) for the extension.

", + "ExtensionAssociationSummary$ResourceArn": "

The ARNs of applications, configuration profiles, or environments defined in the association.

", + "ExtensionSummary$Arn": "

The system-generated Amazon Resource Name (ARN) for the extension.

", + "ListExtensionAssociationsRequest$ResourceIdentifier": "

The ARN of an application, configuration profile, or environment.

", "ListTagsForResourceRequest$ResourceArn": "

The resource ARN.

", "TagResourceRequest$ResourceArn": "

The ARN of the resource for which to retrieve tags.

", "UntagResourceRequest$ResourceArn": "

The ARN of the resource for which to remove tags.

" @@ -87,6 +157,12 @@ "HostedConfigurationVersion$Content": "

The content of the configuration or the configuration data.

" } }, + "Boolean": { + "base": null, + "refs": { + "Parameter$Required": "

A parameter value must be specified in the extension association.

" + } + }, "BytesMeasure": { "base": null, "refs": { @@ -154,6 +230,16 @@ "refs": { } }, + "CreateExtensionAssociationRequest": { + "base": null, + "refs": { + } + }, + "CreateExtensionRequest": { + "base": null, + "refs": { + } + }, "CreateHostedConfigurationVersionRequest": { "base": null, "refs": { @@ -179,6 +265,16 @@ "refs": { } }, + "DeleteExtensionAssociationRequest": { + "base": null, + "refs": { + } + }, + "DeleteExtensionRequest": { + "base": null, + "refs": { + } + }, "DeleteHostedConfigurationVersionRequest": { "base": null, "refs": { @@ -260,24 +356,30 @@ "Description": { "base": null, "refs": { + "Action$Description": "

Information about the action.

", "Application$Description": "

The description of the application.

", "ConfigurationProfile$Description": "

The configuration profile description.

", "CreateApplicationRequest$Description": "

A description of the application.

", "CreateConfigurationProfileRequest$Description": "

A description of the configuration profile.

", "CreateDeploymentStrategyRequest$Description": "

A description of the deployment strategy.

", "CreateEnvironmentRequest$Description": "

A description of the environment.

", + "CreateExtensionRequest$Description": "

Information about the extension.

", "CreateHostedConfigurationVersionRequest$Description": "

A description of the configuration.

", "Deployment$Description": "

The description of the deployment.

", "DeploymentEvent$Description": "

A description of the deployment event. Descriptions include, but are not limited to, the user account or the Amazon CloudWatch alarm ARN that initiated a rollback, the percentage of hosts that received the deployment, or in the case of an internal error, a recommendation to attempt a new deployment.

", "DeploymentStrategy$Description": "

The description of the deployment strategy.

", "Environment$Description": "

The description of the environment.

", + "Extension$Description": "

Information about the extension.

", + "ExtensionSummary$Description": "

Information about the extension.

", "HostedConfigurationVersion$Description": "

A description of the configuration.

", "HostedConfigurationVersionSummary$Description": "

A description of the configuration.

", + "Parameter$Description": "

Information about the parameter.

", "StartDeploymentRequest$Description": "

A description of the deployment.

", "UpdateApplicationRequest$Description": "

A description of the application.

", "UpdateConfigurationProfileRequest$Description": "

A description of the configuration profile.

", "UpdateDeploymentStrategyRequest$Description": "

A description of the deployment strategy.

", - "UpdateEnvironmentRequest$Description": "

A description of the environment.

" + "UpdateEnvironmentRequest$Description": "

A description of the environment.

", + "UpdateExtensionRequest$Description": "

Information about the extension.

" } }, "Environment": { @@ -303,6 +405,50 @@ "refs": { } }, + "Extension": { + "base": null, + "refs": { + } + }, + "ExtensionAssociation": { + "base": null, + "refs": { + } + }, + "ExtensionAssociationSummaries": { + "base": null, + "refs": { + "ExtensionAssociations$Items": "

The list of extension associations. Each item represents an extension association to an application, environment, or configuration profile.

" + } + }, + "ExtensionAssociationSummary": { + "base": "

Information about an association between an extension and an AppConfig resource such as an application, environment, or configuration profile. Call GetExtensionAssociation to get more information about an association.

", + "refs": { + "ExtensionAssociationSummaries$member": null + } + }, + "ExtensionAssociations": { + "base": null, + "refs": { + } + }, + "ExtensionSummaries": { + "base": null, + "refs": { + "Extensions$Items": "

The list of available extensions. The list includes Amazon Web Services-authored and user-created extensions.

" + } + }, + "ExtensionSummary": { + "base": "

Information about an extension. Call GetExtension to get more information about an extension.

", + "refs": { + "ExtensionSummaries$member": null + } + }, + "Extensions": { + "base": null, + "refs": { + } + }, "Float": { "base": null, "refs": { @@ -340,6 +486,16 @@ "refs": { } }, + "GetExtensionAssociationRequest": { + "base": null, + "refs": { + } + }, + "GetExtensionRequest": { + "base": null, + "refs": { + } + }, "GetHostedConfigurationVersionRequest": { "base": null, "refs": { @@ -387,7 +543,10 @@ "Id": { "base": null, "refs": { + "ActionInvocation$InvocationId": "

A system-generated ID for this invocation.

", "Application$Id": "

The application ID.

", + "AppliedExtension$ExtensionId": "

The system-generated ID of the extension.

", + "AppliedExtension$ExtensionAssociationId": "

The system-generated ID for the association.

", "ConfigurationProfile$ApplicationId": "

The application ID.

", "ConfigurationProfile$Id": "

The configuration profile ID.

", "ConfigurationProfileSummary$ApplicationId": "

The application ID.

", @@ -401,6 +560,7 @@ "DeleteConfigurationProfileRequest$ConfigurationProfileId": "

The ID of the configuration profile you want to delete.

", "DeleteEnvironmentRequest$ApplicationId": "

The application ID that includes the environment that you want to delete.

", "DeleteEnvironmentRequest$EnvironmentId": "

The ID of the environment that you want to delete.

", + "DeleteExtensionAssociationRequest$ExtensionAssociationId": "

The ID of the extension association to delete.

", "DeleteHostedConfigurationVersionRequest$ApplicationId": "

The application ID.

", "DeleteHostedConfigurationVersionRequest$ConfigurationProfileId": "

The configuration profile ID.

", "Deployment$ApplicationId": "

The ID of the application that was deployed.

", @@ -410,6 +570,8 @@ "DeploymentStrategy$Id": "

The deployment strategy ID.

", "Environment$ApplicationId": "

The application ID.

", "Environment$Id": "

The environment ID.

", + "Extension$Id": "

The system-generated ID of the extension.

", + "ExtensionSummary$Id": "

The system-generated ID of the extension.

", "GetApplicationRequest$ApplicationId": "

The ID of the application you want to get.

", "GetConfigurationProfileRequest$ApplicationId": "

The ID of the application that includes the configuration profile you want to get.

", "GetConfigurationProfileRequest$ConfigurationProfileId": "

The ID of the configuration profile that you want to get.

", @@ -417,6 +579,7 @@ "GetDeploymentRequest$EnvironmentId": "

The ID of the environment that includes the deployment you want to get.

", "GetEnvironmentRequest$ApplicationId": "

The ID of the application that includes the environment you want to get.

", "GetEnvironmentRequest$EnvironmentId": "

The ID of the environment that you want to get.

", + "GetExtensionAssociationRequest$ExtensionAssociationId": "

The extension association ID to get.

", "GetHostedConfigurationVersionRequest$ApplicationId": "

The application ID.

", "GetHostedConfigurationVersionRequest$ConfigurationProfileId": "

The configuration profile ID.

", "HostedConfigurationVersion$ApplicationId": "

The application ID.

", @@ -439,22 +602,47 @@ "UpdateConfigurationProfileRequest$ConfigurationProfileId": "

The ID of the configuration profile.

", "UpdateEnvironmentRequest$ApplicationId": "

The application ID.

", "UpdateEnvironmentRequest$EnvironmentId": "

The environment ID.

", + "UpdateExtensionAssociationRequest$ExtensionAssociationId": "

The system-generated ID for the association.

", "ValidateConfigurationRequest$ApplicationId": "

The application ID.

", "ValidateConfigurationRequest$ConfigurationProfileId": "

The configuration profile ID.

" } }, + "Identifier": { + "base": null, + "refs": { + "ActionInvocation$ExtensionIdentifier": "

The name, the ID, or the Amazon Resource Name (ARN) of the extension.

", + "CreateExtensionAssociationRequest$ExtensionIdentifier": "

The name, the ID, or the Amazon Resource Name (ARN) of the extension.

", + "CreateExtensionAssociationRequest$ResourceIdentifier": "

The ARN of an application, configuration profile, or environment.

", + "DeleteExtensionRequest$ExtensionIdentifier": "

The name, ID, or Amazon Resource Name (ARN) of the extension you want to delete.

", + "ExtensionAssociation$Id": "

The system-generated ID for the association.

", + "ExtensionAssociationSummary$Id": "

The extension association ID. This ID is used to call other ExtensionAssociation API actions such as GetExtensionAssociation or DeleteExtensionAssociation.

", + "GetExtensionRequest$ExtensionIdentifier": "

The name, the ID, or the Amazon Resource Name (ARN) of the extension.

", + "ListExtensionAssociationsRequest$ExtensionIdentifier": "

The name, the ID, or the Amazon Resource Name (ARN) of the extension.

", + "UpdateExtensionRequest$ExtensionIdentifier": "

The name, the ID, or the Amazon Resource Name (ARN) of the extension.

" + } + }, "Integer": { "base": null, "refs": { + "AppliedExtension$VersionNumber": "

The extension version number.

", + "CreateExtensionAssociationRequest$ExtensionVersionNumber": "

The version number of the extension. If not specified, AppConfig uses the maximum version of the extension.

", + "CreateExtensionRequest$LatestVersionNumber": "

You can omit this field when you create an extension. When you create a new version, specify the most recent current version number. For example, you create version 3, enter 2 for this field.

", "CreateHostedConfigurationVersionRequest$LatestVersionNumber": "

An optional locking token used to prevent race conditions from overwriting configuration updates when creating a new version. To ensure your data is not overwritten when creating multiple hosted configuration versions in rapid succession, specify the version number of the latest hosted configuration version.

", + "DeleteExtensionRequest$VersionNumber": "

A specific version of an extension to delete. If omitted, the highest version is deleted.

", "DeleteHostedConfigurationVersionRequest$VersionNumber": "

The versions number to delete.

", "Deployment$DeploymentNumber": "

The sequence number of the deployment.

", "DeploymentSummary$DeploymentNumber": "

The sequence number of the deployment.

", + "Extension$VersionNumber": "

The extension version number.

", + "ExtensionAssociation$ExtensionVersionNumber": "

The version number for the extension defined in the association.

", + "ExtensionSummary$VersionNumber": "

The extension version number.

", "GetDeploymentRequest$DeploymentNumber": "

The sequence number of the deployment.

", + "GetExtensionRequest$VersionNumber": "

The extension version number. If no version number was defined, AppConfig uses the highest version.

", "GetHostedConfigurationVersionRequest$VersionNumber": "

The version.

", "HostedConfigurationVersion$VersionNumber": "

The configuration version.

", "HostedConfigurationVersionSummary$VersionNumber": "

The configuration version.

", - "StopDeploymentRequest$DeploymentNumber": "

The sequence number of the deployment.

" + "ListExtensionAssociationsRequest$ExtensionVersionNumber": "

The version number for the extension defined in the association.

", + "StopDeploymentRequest$DeploymentNumber": "

The sequence number of the deployment.

", + "UpdateExtensionRequest$VersionNumber": "

The extension version number.

" } }, "InternalServerException": { @@ -509,6 +697,16 @@ "refs": { } }, + "ListExtensionAssociationsRequest": { + "base": null, + "refs": { + } + }, + "ListExtensionsRequest": { + "base": null, + "refs": { + } + }, "ListHostedConfigurationVersionsRequest": { "base": null, "refs": { @@ -519,6 +717,14 @@ "refs": { } }, + "LongName": { + "base": null, + "refs": { + "ConfigurationProfile$Name": "

The name of the configuration profile.

", + "ConfigurationProfileSummary$Name": "

The name of the configuration profile.

", + "CreateConfigurationProfileRequest$Name": "

A name for the configuration profile.

" + } + }, "MaxResults": { "base": null, "refs": { @@ -527,6 +733,8 @@ "ListDeploymentStrategiesRequest$MaxResults": "

The maximum number of items to return for this call. The call also returns a token that you can specify in a subsequent call to get the next set of results.

", "ListDeploymentsRequest$MaxResults": "

The maximum number of items that may be returned for this call. If there are items that have not yet been returned, the response will include a non-null NextToken that you can provide in a subsequent call to get the next set of results.

", "ListEnvironmentsRequest$MaxResults": "

The maximum number of items to return for this call. The call also returns a token that you can specify in a subsequent call to get the next set of results.

", + "ListExtensionAssociationsRequest$MaxResults": "

The maximum number of items to return for this call. The call also returns a token that you can specify in a subsequent call to get the next set of results.

", + "ListExtensionsRequest$MaxResults": "

The maximum number of items to return for this call. The call also returns a token that you can specify in a subsequent call to get the next set of results.

", "ListHostedConfigurationVersionsRequest$MaxResults": "

The maximum number of items to return for this call. The call also returns a token that you can specify in a subsequent call to get the next set of results.

" } }, @@ -534,7 +742,7 @@ "base": null, "refs": { "CreateDeploymentStrategyRequest$DeploymentDurationInMinutes": "

Total amount of time for a deployment to last.

", - "CreateDeploymentStrategyRequest$FinalBakeTimeInMinutes": "

The amount of time AppConfig monitors for alarms before considering the deployment to be complete and no longer eligible for automatic roll back.

", + "CreateDeploymentStrategyRequest$FinalBakeTimeInMinutes": "

Specifies the amount of time AppConfig monitors for Amazon CloudWatch alarms after the configuration has been deployed to 100% of its targets, before considering the deployment to be complete. If an alarm is triggered during this time, AppConfig rolls back the deployment. You must configure permissions for AppConfig to roll back based on CloudWatch alarms. For more information, see Configuring permissions for rollback based on Amazon CloudWatch alarms in the AppConfig User Guide.

", "Deployment$DeploymentDurationInMinutes": "

Total amount of time the deployment lasted.

", "Deployment$FinalBakeTimeInMinutes": "

The amount of time that AppConfig monitored for alarms before considering the deployment to be complete and no longer eligible for automatic rollback.

", "DeploymentStrategy$DeploymentDurationInMinutes": "

Total amount of time the deployment lasted.

", @@ -562,17 +770,21 @@ "Name": { "base": null, "refs": { + "Action$Name": "

The action name.

", + "ActionInvocation$ActionName": "

The name of the action.

", "Application$Name": "

The application name.

", - "ConfigurationProfile$Name": "

The name of the configuration profile.

", - "ConfigurationProfileSummary$Name": "

The name of the configuration profile.

", "CreateApplicationRequest$Name": "

A name for the application.

", - "CreateConfigurationProfileRequest$Name": "

A name for the configuration profile.

", "CreateDeploymentStrategyRequest$Name": "

A name for the deployment strategy.

", "CreateEnvironmentRequest$Name": "

A name for the environment.

", + "CreateExtensionRequest$Name": "

A name for the extension. Each extension name in your account must be unique. Extension versions use the same name.

", "Deployment$ConfigurationName": "

The name of the configuration.

", "DeploymentStrategy$Name": "

The name of the deployment strategy.

", "DeploymentSummary$ConfigurationName": "

The name of the configuration.

", "Environment$Name": "

The name of the environment.

", + "Extension$Name": "

The extension name.

", + "ExtensionSummary$Name": "

The extension name.

", + "ParameterMap$key": null, + "ParameterValueMap$key": null, "UpdateApplicationRequest$Name": "

The name of the application.

", "UpdateConfigurationProfileRequest$Name": "

The name of the configuration profile.

", "UpdateEnvironmentRequest$Name": "

The name of the environment.

" @@ -586,15 +798,42 @@ "DeploymentStrategies$NextToken": "

The token for the next set of items to return. Use this token to get the next set of results.

", "Deployments$NextToken": "

The token for the next set of items to return. Use this token to get the next set of results.

", "Environments$NextToken": "

The token for the next set of items to return. Use this token to get the next set of results.

", + "ExtensionAssociations$NextToken": "

The token for the next set of items to return. Use this token to get the next set of results.

", + "Extensions$NextToken": "

The token for the next set of items to return. Use this token to get the next set of results.

", "HostedConfigurationVersions$NextToken": "

The token for the next set of items to return. Use this token to get the next set of results.

", "ListApplicationsRequest$NextToken": "

A token to start the list. Next token is a pagination token generated by AppConfig to describe what page the previous List call ended on. For the first List request, the nextToken should not be set. On subsequent calls, the nextToken parameter should be set to the previous responses nextToken value. Use this token to get the next set of results.

", "ListConfigurationProfilesRequest$NextToken": "

A token to start the list. Use this token to get the next set of results.

", "ListDeploymentStrategiesRequest$NextToken": "

A token to start the list. Use this token to get the next set of results.

", "ListDeploymentsRequest$NextToken": "

The token returned by a prior call to this operation indicating the next set of results to be returned. If not specified, the operation will return the first set of results.

", "ListEnvironmentsRequest$NextToken": "

A token to start the list. Use this token to get the next set of results.

", + "ListExtensionAssociationsRequest$NextToken": "

A token to start the list. Use this token to get the next set of results or pass null to get the first set of results.

", + "ListExtensionsRequest$NextToken": "

A token to start the list. Use this token to get the next set of results.

", "ListHostedConfigurationVersionsRequest$NextToken": "

A token to start the list. Use this token to get the next set of results.

" } }, + "Parameter": { + "base": "

A value such as an Amazon Resource Name (ARN) or an Amazon Simple Notification Service topic entered in an extension when invoked. Parameter values are specified in an extension association. For more information about extensions, see Working with AppConfig extensions in the AppConfig User Guide.

", + "refs": { + "ParameterMap$value": null + } + }, + "ParameterMap": { + "base": null, + "refs": { + "CreateExtensionRequest$Parameters": "

The parameters accepted by the extension. You specify parameter values when you associate the extension to an AppConfig resource by using the CreateExtensionAssociation API action. For Lambda extension actions, these parameters are included in the Lambda request object.

", + "Extension$Parameters": "

The parameters accepted by the extension. You specify parameter values when you associate the extension to an AppConfig resource by using the CreateExtensionAssociation API action. For Lambda extension actions, these parameters are included in the Lambda request object.

", + "UpdateExtensionRequest$Parameters": "

One or more parameters for the actions called by the extension.

" + } + }, + "ParameterValueMap": { + "base": null, + "refs": { + "AppliedExtension$Parameters": "

One or more parameters for the actions called by the extension.

", + "CreateExtensionAssociationRequest$Parameters": "

The parameter names and values defined in the extensions. Extension parameters marked Required must be entered for this field.

", + "ExtensionAssociation$Parameters": "

The parameter names and values defined in the association.

", + "UpdateExtensionAssociationRequest$Parameters": "

The parameter names and values defined in the extension.

" + } + }, "PayloadTooLargeException": { "base": "

The configuration size is too large.

", "refs": { @@ -610,6 +849,12 @@ "DeploymentSummary$PercentageComplete": "

The percentage of targets for which the deployment is available.

" } }, + "QueryName": { + "base": null, + "refs": { + "ListExtensionsRequest$Name": "

The extension name.

" + } + }, "ReplicateTo": { "base": null, "refs": { @@ -654,6 +899,8 @@ "String": { "base": null, "refs": { + "ActionInvocation$ErrorMessage": "

The error message when an extension invocation fails.

", + "ActionInvocation$ErrorCode": "

The error code when an extension invocation fails.

", "BadRequestException$Message": null, "Configuration$ContentType": "

A standard MIME type describing the format of the configuration content. For more information, see Content-Type.

", "ConflictException$Message": null, @@ -662,6 +909,7 @@ "InvalidConfigurationDetail$Location": "

Location of the validation constraint in the configuration JSON schema that failed validation.

", "InvalidConfigurationDetail$Reason": "

The reason for an invalid configuration error.

", "InvalidConfigurationDetail$Type": "

The type of error for an invalid configuration.

", + "InvalidConfigurationDetail$Value": "

Details about an error with Lambda when a synchronous extension experiences an error during an invocation.

", "PayloadTooLargeException$Message": null, "ResourceNotFoundException$Message": null, "ResourceNotFoundException$ResourceName": null, @@ -677,7 +925,8 @@ "StringWithLengthBetween1And2048": { "base": null, "refs": { - "Monitor$AlarmArn": "

Amazon Resource Name (ARN) of the Amazon CloudWatch alarm.

" + "Monitor$AlarmArn": "

Amazon Resource Name (ARN) of the Amazon CloudWatch alarm.

", + "ParameterValueMap$value": null } }, "StringWithLengthBetween1And255": { @@ -717,6 +966,8 @@ "CreateConfigurationProfileRequest$Tags": "

Metadata to assign to the configuration profile. Tags help organize and categorize your AppConfig resources. Each tag consists of a key and an optional value, both of which you define.

", "CreateDeploymentStrategyRequest$Tags": "

Metadata to assign to the deployment strategy. Tags help organize and categorize your AppConfig resources. Each tag consists of a key and an optional value, both of which you define.

", "CreateEnvironmentRequest$Tags": "

Metadata to assign to the environment. Tags help organize and categorize your AppConfig resources. Each tag consists of a key and an optional value, both of which you define.

", + "CreateExtensionAssociationRequest$Tags": "

Adds one or more tags for the specified extension association. Tags are metadata that help you categorize resources in different ways, for example, by purpose, owner, or environment. Each tag consists of a key and an optional value, both of which you define.

", + "CreateExtensionRequest$Tags": "

Adds one or more tags for the specified extension. Tags are metadata that help you categorize resources in different ways, for example, by purpose, owner, or environment. Each tag consists of a key and an optional value, both of which you define.

", "ResourceTags$Tags": "

Metadata to assign to AppConfig resources. Tags help organize and categorize your AppConfig resources. Each tag consists of a key and an optional value, both of which you define.

", "StartDeploymentRequest$Tags": "

Metadata to assign to the deployment. Tags help organize and categorize your AppConfig resources. Each tag consists of a key and an optional value, both of which you define.

", "TagResourceRequest$Tags": "

The key-value string map. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with aws:. The tag value can be up to 256 characters.

" @@ -764,9 +1015,21 @@ "refs": { } }, + "UpdateExtensionAssociationRequest": { + "base": null, + "refs": { + } + }, + "UpdateExtensionRequest": { + "base": null, + "refs": { + } + }, "Uri": { "base": null, "refs": { + "Action$Uri": "

The extension URI associated to the action point in the extension definition. The URI can be an Amazon Resource Name (ARN) for one of the following: an Lambda function, an Amazon Simple Queue Service queue, an Amazon Simple Notification Service topic, or the Amazon EventBridge default event bus.

", + "ActionInvocation$Uri": "

The extension URI associated to the action point in the extension definition. The URI can be an Amazon Resource Name (ARN) for one of the following: an Lambda function, an Amazon Simple Queue Service queue, an Amazon Simple Notification Service topic, or the Amazon EventBridge default event bus.

", "ConfigurationProfile$LocationUri": "

The URI location of the configuration.

", "ConfigurationProfileSummary$LocationUri": "

The URI location of the configuration.

", "CreateConfigurationProfileRequest$LocationUri": "

A URI to locate the configuration. You can specify the AppConfig hosted configuration store, Systems Manager (SSM) document, an SSM Parameter Store parameter, or an Amazon S3 object. For the hosted configuration store and for feature flags, specify hosted. For an SSM document, specify either the document name in the format ssm-document://<Document_name> or the Amazon Resource Name (ARN). For a parameter, specify either the parameter name in the format ssm-parameter://<Parameter_name> or the ARN. For an Amazon S3 object, specify the URI in the following format: s3://<bucket>/<objectKey> . Here is an example: s3://my-bucket/my-app/us-east-1/my-config.json

", diff --git a/models/apis/appconfig/2019-10-09/paginators-1.json b/models/apis/appconfig/2019-10-09/paginators-1.json index c76cf37f2c..e1a0311325 100644 --- a/models/apis/appconfig/2019-10-09/paginators-1.json +++ b/models/apis/appconfig/2019-10-09/paginators-1.json @@ -25,6 +25,16 @@ "output_token": "NextToken", "limit_key": "MaxResults" }, + "ListExtensionAssociations": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, + "ListExtensions": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, "ListHostedConfigurationVersions": { "input_token": "NextToken", "output_token": "NextToken", diff --git a/service/appconfig/api.go b/service/appconfig/api.go index 429fa0e316..40612ba8b3 100644 --- a/service/appconfig/api.go +++ b/service/appconfig/api.go @@ -57,11 +57,11 @@ func (c *AppConfig) CreateApplicationRequest(input *CreateApplicationInput) (req // CreateApplication API operation for Amazon AppConfig. // -// Creates an application. An application in AppConfig is a logical unit of -// code that provides capabilities for your customers. For example, an application -// can be a microservice that runs on Amazon EC2 instances, a mobile application -// installed by your users, a serverless application using Amazon API Gateway -// and Lambda, or any system you run on behalf of others. +// Creates an application. In AppConfig, an application is simply an organizational +// construct like a folder. This organizational construct has a relationship +// with some unit of executable code. For example, you could create an application +// called MyMobileApp to organize and manage configuration data for a mobile +// application installed by your users. // // 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 @@ -336,9 +336,9 @@ func (c *AppConfig) CreateEnvironmentRequest(input *CreateEnvironmentInput) (req // CreateEnvironment API operation for Amazon AppConfig. // // Creates an environment. For each application, you define one or more environments. -// An environment is a logical deployment group of AppConfig targets, such as -// applications in a Beta or Production environment. You can also define environments -// for application subcomponents such as the Web, Mobile and Back-end components +// An environment is a deployment group of AppConfig targets, such as applications +// in a Beta or Production environment. You can also define environments for +// application subcomponents such as the Web, Mobile and Back-end components // for your application. You can configure Amazon CloudWatch alarms for each // environment. The system monitors alarms during a configuration deployment. // If an alarm is triggered, the system rolls back the configuration. @@ -383,6 +383,207 @@ func (c *AppConfig) CreateEnvironmentWithContext(ctx aws.Context, input *CreateE return out, req.Send() } +const opCreateExtension = "CreateExtension" + +// CreateExtensionRequest generates a "aws/request.Request" representing the +// client's request for the CreateExtension 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 CreateExtension for more information on using the CreateExtension +// 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 CreateExtensionRequest method. +// req, resp := client.CreateExtensionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/CreateExtension +func (c *AppConfig) CreateExtensionRequest(input *CreateExtensionInput) (req *request.Request, output *CreateExtensionOutput) { + op := &request.Operation{ + Name: opCreateExtension, + HTTPMethod: "POST", + HTTPPath: "/extensions", + } + + if input == nil { + input = &CreateExtensionInput{} + } + + output = &CreateExtensionOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateExtension API operation for Amazon AppConfig. +// +// Creates an AppConfig extension. An extension augments your ability to inject +// logic or behavior at different points during the AppConfig workflow of creating +// or deploying a configuration. +// +// You can create your own extensions or use the Amazon Web Services-authored +// extensions provided by AppConfig. For most use-cases, to create your own +// extension, you must create an Lambda function to perform any computation +// and processing defined in the extension. For more information about extensions, +// see Working with AppConfig extensions (https://docs.aws.amazon.com/appconfig/latest/userguide/working-with-appconfig-extensions.html) +// in the AppConfig User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon AppConfig's +// API operation CreateExtension for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// * ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. +// +// * ServiceQuotaExceededException +// The number of hosted configuration versions exceeds the limit for the AppConfig +// hosted configuration store. Delete one or more versions and try again. +// +// * InternalServerException +// There was an internal failure in the AppConfig service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/CreateExtension +func (c *AppConfig) CreateExtension(input *CreateExtensionInput) (*CreateExtensionOutput, error) { + req, out := c.CreateExtensionRequest(input) + return out, req.Send() +} + +// CreateExtensionWithContext is the same as CreateExtension with the addition of +// the ability to pass a context and additional request options. +// +// See CreateExtension 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 *AppConfig) CreateExtensionWithContext(ctx aws.Context, input *CreateExtensionInput, opts ...request.Option) (*CreateExtensionOutput, error) { + req, out := c.CreateExtensionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateExtensionAssociation = "CreateExtensionAssociation" + +// CreateExtensionAssociationRequest generates a "aws/request.Request" representing the +// client's request for the CreateExtensionAssociation 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 CreateExtensionAssociation for more information on using the CreateExtensionAssociation +// 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 CreateExtensionAssociationRequest method. +// req, resp := client.CreateExtensionAssociationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/CreateExtensionAssociation +func (c *AppConfig) CreateExtensionAssociationRequest(input *CreateExtensionAssociationInput) (req *request.Request, output *CreateExtensionAssociationOutput) { + op := &request.Operation{ + Name: opCreateExtensionAssociation, + HTTPMethod: "POST", + HTTPPath: "/extensionassociations", + } + + if input == nil { + input = &CreateExtensionAssociationInput{} + } + + output = &CreateExtensionAssociationOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateExtensionAssociation API operation for Amazon AppConfig. +// +// When you create an extension or configure an Amazon Web Services-authored +// extension, you associate the extension with an AppConfig application, environment, +// or configuration profile. For example, you can choose to run the AppConfig +// deployment events to Amazon SNS Amazon Web Services-authored extension and +// receive notifications on an Amazon SNS topic anytime a configuration deployment +// is started for a specific application. Defining which extension to associate +// with an AppConfig resource is called an extension association. An extension +// association is a specified relationship between an extension and an AppConfig +// resource, such as an application or a configuration profile. For more information +// about extensions and associations, see Working with AppConfig extensions +// (https://docs.aws.amazon.com/appconfig/latest/userguide/working-with-appconfig-extensions.html) +// in the AppConfig User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon AppConfig's +// API operation CreateExtensionAssociation for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// * ResourceNotFoundException +// The requested resource could not be found. +// +// * InternalServerException +// There was an internal failure in the AppConfig service. +// +// * ServiceQuotaExceededException +// The number of hosted configuration versions exceeds the limit for the AppConfig +// hosted configuration store. Delete one or more versions and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/CreateExtensionAssociation +func (c *AppConfig) CreateExtensionAssociation(input *CreateExtensionAssociationInput) (*CreateExtensionAssociationOutput, error) { + req, out := c.CreateExtensionAssociationRequest(input) + return out, req.Send() +} + +// CreateExtensionAssociationWithContext is the same as CreateExtensionAssociation with the addition of +// the ability to pass a context and additional request options. +// +// See CreateExtensionAssociation 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 *AppConfig) CreateExtensionAssociationWithContext(ctx aws.Context, input *CreateExtensionAssociationInput, opts ...request.Option) (*CreateExtensionAssociationOutput, error) { + req, out := c.CreateExtensionAssociationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateHostedConfigurationVersion = "CreateHostedConfigurationVersion" // CreateHostedConfigurationVersionRequest generates a "aws/request.Request" representing the @@ -840,243 +1041,419 @@ func (c *AppConfig) DeleteEnvironmentWithContext(ctx aws.Context, input *DeleteE return out, req.Send() } -const opDeleteHostedConfigurationVersion = "DeleteHostedConfigurationVersion" +const opDeleteExtension = "DeleteExtension" -// DeleteHostedConfigurationVersionRequest generates a "aws/request.Request" representing the -// client's request for the DeleteHostedConfigurationVersion operation. The "output" return +// DeleteExtensionRequest generates a "aws/request.Request" representing the +// client's request for the DeleteExtension 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 DeleteHostedConfigurationVersion for more information on using the DeleteHostedConfigurationVersion +// See DeleteExtension for more information on using the DeleteExtension // 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 DeleteHostedConfigurationVersionRequest method. -// req, resp := client.DeleteHostedConfigurationVersionRequest(params) +// // Example sending a request using the DeleteExtensionRequest method. +// req, resp := client.DeleteExtensionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/DeleteHostedConfigurationVersion -func (c *AppConfig) DeleteHostedConfigurationVersionRequest(input *DeleteHostedConfigurationVersionInput) (req *request.Request, output *DeleteHostedConfigurationVersionOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/DeleteExtension +func (c *AppConfig) DeleteExtensionRequest(input *DeleteExtensionInput) (req *request.Request, output *DeleteExtensionOutput) { op := &request.Operation{ - Name: opDeleteHostedConfigurationVersion, + Name: opDeleteExtension, HTTPMethod: "DELETE", - HTTPPath: "/applications/{ApplicationId}/configurationprofiles/{ConfigurationProfileId}/hostedconfigurationversions/{VersionNumber}", + HTTPPath: "/extensions/{ExtensionIdentifier}", } if input == nil { - input = &DeleteHostedConfigurationVersionInput{} + input = &DeleteExtensionInput{} } - output = &DeleteHostedConfigurationVersionOutput{} + output = &DeleteExtensionOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// DeleteHostedConfigurationVersion API operation for Amazon AppConfig. +// DeleteExtension API operation for Amazon AppConfig. // -// Deletes a version of a configuration from the AppConfig hosted configuration -// store. +// Deletes an AppConfig extension. You must delete all associations to an extension +// before you delete the extension. // // 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 Amazon AppConfig's -// API operation DeleteHostedConfigurationVersion for usage and error information. +// API operation DeleteExtension for usage and error information. // // Returned Error Types: -// * BadRequestException -// The input fails to satisfy the constraints specified by an Amazon Web Services -// service. -// // * ResourceNotFoundException // The requested resource could not be found. // // * InternalServerException // There was an internal failure in the AppConfig service. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/DeleteHostedConfigurationVersion -func (c *AppConfig) DeleteHostedConfigurationVersion(input *DeleteHostedConfigurationVersionInput) (*DeleteHostedConfigurationVersionOutput, error) { - req, out := c.DeleteHostedConfigurationVersionRequest(input) +// * BadRequestException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/DeleteExtension +func (c *AppConfig) DeleteExtension(input *DeleteExtensionInput) (*DeleteExtensionOutput, error) { + req, out := c.DeleteExtensionRequest(input) return out, req.Send() } -// DeleteHostedConfigurationVersionWithContext is the same as DeleteHostedConfigurationVersion with the addition of +// DeleteExtensionWithContext is the same as DeleteExtension with the addition of // the ability to pass a context and additional request options. // -// See DeleteHostedConfigurationVersion for details on how to use this API operation. +// See DeleteExtension 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 *AppConfig) DeleteHostedConfigurationVersionWithContext(ctx aws.Context, input *DeleteHostedConfigurationVersionInput, opts ...request.Option) (*DeleteHostedConfigurationVersionOutput, error) { - req, out := c.DeleteHostedConfigurationVersionRequest(input) +func (c *AppConfig) DeleteExtensionWithContext(ctx aws.Context, input *DeleteExtensionInput, opts ...request.Option) (*DeleteExtensionOutput, error) { + req, out := c.DeleteExtensionRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetApplication = "GetApplication" +const opDeleteExtensionAssociation = "DeleteExtensionAssociation" -// GetApplicationRequest generates a "aws/request.Request" representing the -// client's request for the GetApplication operation. The "output" return +// DeleteExtensionAssociationRequest generates a "aws/request.Request" representing the +// client's request for the DeleteExtensionAssociation 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 GetApplication for more information on using the GetApplication +// See DeleteExtensionAssociation for more information on using the DeleteExtensionAssociation // 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 GetApplicationRequest method. -// req, resp := client.GetApplicationRequest(params) +// // Example sending a request using the DeleteExtensionAssociationRequest method. +// req, resp := client.DeleteExtensionAssociationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/GetApplication -func (c *AppConfig) GetApplicationRequest(input *GetApplicationInput) (req *request.Request, output *GetApplicationOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/DeleteExtensionAssociation +func (c *AppConfig) DeleteExtensionAssociationRequest(input *DeleteExtensionAssociationInput) (req *request.Request, output *DeleteExtensionAssociationOutput) { op := &request.Operation{ - Name: opGetApplication, - HTTPMethod: "GET", - HTTPPath: "/applications/{ApplicationId}", + Name: opDeleteExtensionAssociation, + HTTPMethod: "DELETE", + HTTPPath: "/extensionassociations/{ExtensionAssociationId}", } if input == nil { - input = &GetApplicationInput{} + input = &DeleteExtensionAssociationInput{} } - output = &GetApplicationOutput{} + output = &DeleteExtensionAssociationOutput{} req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// GetApplication API operation for Amazon AppConfig. +// DeleteExtensionAssociation API operation for Amazon AppConfig. // -// Retrieves information about an application. +// Deletes an extension association. This action doesn't delete extensions defined +// in the association. // // 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 Amazon AppConfig's -// API operation GetApplication for usage and error information. +// API operation DeleteExtensionAssociation for usage and error information. // // Returned Error Types: +// * BadRequestException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// // * ResourceNotFoundException // The requested resource could not be found. // // * InternalServerException // There was an internal failure in the AppConfig service. // -// * BadRequestException -// The input fails to satisfy the constraints specified by an Amazon Web Services -// service. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/GetApplication -func (c *AppConfig) GetApplication(input *GetApplicationInput) (*GetApplicationOutput, error) { - req, out := c.GetApplicationRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/DeleteExtensionAssociation +func (c *AppConfig) DeleteExtensionAssociation(input *DeleteExtensionAssociationInput) (*DeleteExtensionAssociationOutput, error) { + req, out := c.DeleteExtensionAssociationRequest(input) return out, req.Send() } -// GetApplicationWithContext is the same as GetApplication with the addition of +// DeleteExtensionAssociationWithContext is the same as DeleteExtensionAssociation with the addition of // the ability to pass a context and additional request options. // -// See GetApplication for details on how to use this API operation. +// See DeleteExtensionAssociation 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 *AppConfig) GetApplicationWithContext(ctx aws.Context, input *GetApplicationInput, opts ...request.Option) (*GetApplicationOutput, error) { - req, out := c.GetApplicationRequest(input) +func (c *AppConfig) DeleteExtensionAssociationWithContext(ctx aws.Context, input *DeleteExtensionAssociationInput, opts ...request.Option) (*DeleteExtensionAssociationOutput, error) { + req, out := c.DeleteExtensionAssociationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetConfiguration = "GetConfiguration" +const opDeleteHostedConfigurationVersion = "DeleteHostedConfigurationVersion" -// GetConfigurationRequest generates a "aws/request.Request" representing the -// client's request for the GetConfiguration operation. The "output" return +// DeleteHostedConfigurationVersionRequest generates a "aws/request.Request" representing the +// client's request for the DeleteHostedConfigurationVersion 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 GetConfiguration for more information on using the GetConfiguration +// See DeleteHostedConfigurationVersion for more information on using the DeleteHostedConfigurationVersion // 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 GetConfigurationRequest method. -// req, resp := client.GetConfigurationRequest(params) +// // Example sending a request using the DeleteHostedConfigurationVersionRequest method. +// req, resp := client.DeleteHostedConfigurationVersionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/GetConfiguration -// -// Deprecated: This API has been deprecated in favor of the GetLatestConfiguration API used in conjunction with StartConfigurationSession. -func (c *AppConfig) GetConfigurationRequest(input *GetConfigurationInput) (req *request.Request, output *GetConfigurationOutput) { - if c.Client.Config.Logger != nil { - c.Client.Config.Logger.Log("This operation, GetConfiguration, has been deprecated") - } +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/DeleteHostedConfigurationVersion +func (c *AppConfig) DeleteHostedConfigurationVersionRequest(input *DeleteHostedConfigurationVersionInput) (req *request.Request, output *DeleteHostedConfigurationVersionOutput) { op := &request.Operation{ - Name: opGetConfiguration, - HTTPMethod: "GET", - HTTPPath: "/applications/{Application}/environments/{Environment}/configurations/{Configuration}", + Name: opDeleteHostedConfigurationVersion, + HTTPMethod: "DELETE", + HTTPPath: "/applications/{ApplicationId}/configurationprofiles/{ConfigurationProfileId}/hostedconfigurationversions/{VersionNumber}", } if input == nil { - input = &GetConfigurationInput{} + input = &DeleteHostedConfigurationVersionInput{} } - output = &GetConfigurationOutput{} + output = &DeleteHostedConfigurationVersionOutput{} req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// GetConfiguration API operation for Amazon AppConfig. -// -// Retrieves the latest deployed configuration. +// DeleteHostedConfigurationVersion API operation for Amazon AppConfig. // -// Note the following important information. +// Deletes a version of a configuration from the AppConfig hosted configuration +// store. // -// * This API action has been deprecated. Calls to receive configuration -// data should use the StartConfigurationSession (https://docs.aws.amazon.com/appconfig/2019-10-09/APIReference/API_appconfigdata_StartConfigurationSession.html) -// and GetLatestConfiguration (https://docs.aws.amazon.com/appconfig/2019-10-09/APIReference/API_appconfigdata_GetLatestConfiguration.html) -// APIs instead. +// 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. // -// * GetConfiguration is a priced call. For more information, see Pricing -// (https://aws.amazon.com/systems-manager/pricing/). +// See the AWS API reference guide for Amazon AppConfig's +// API operation DeleteHostedConfigurationVersion for usage and error information. // -// * AppConfig uses the value of the ClientConfigurationVersion parameter -// to identify the configuration version on your clients. If you don’t +// Returned Error Types: +// * BadRequestException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// * ResourceNotFoundException +// The requested resource could not be found. +// +// * InternalServerException +// There was an internal failure in the AppConfig service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/DeleteHostedConfigurationVersion +func (c *AppConfig) DeleteHostedConfigurationVersion(input *DeleteHostedConfigurationVersionInput) (*DeleteHostedConfigurationVersionOutput, error) { + req, out := c.DeleteHostedConfigurationVersionRequest(input) + return out, req.Send() +} + +// DeleteHostedConfigurationVersionWithContext is the same as DeleteHostedConfigurationVersion with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteHostedConfigurationVersion 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 *AppConfig) DeleteHostedConfigurationVersionWithContext(ctx aws.Context, input *DeleteHostedConfigurationVersionInput, opts ...request.Option) (*DeleteHostedConfigurationVersionOutput, error) { + req, out := c.DeleteHostedConfigurationVersionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetApplication = "GetApplication" + +// GetApplicationRequest generates a "aws/request.Request" representing the +// client's request for the GetApplication 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 GetApplication for more information on using the GetApplication +// 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 GetApplicationRequest method. +// req, resp := client.GetApplicationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/GetApplication +func (c *AppConfig) GetApplicationRequest(input *GetApplicationInput) (req *request.Request, output *GetApplicationOutput) { + op := &request.Operation{ + Name: opGetApplication, + HTTPMethod: "GET", + HTTPPath: "/applications/{ApplicationId}", + } + + if input == nil { + input = &GetApplicationInput{} + } + + output = &GetApplicationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetApplication API operation for Amazon AppConfig. +// +// Retrieves information about an application. +// +// 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 Amazon AppConfig's +// API operation GetApplication for usage and error information. +// +// Returned Error Types: +// * ResourceNotFoundException +// The requested resource could not be found. +// +// * InternalServerException +// There was an internal failure in the AppConfig service. +// +// * BadRequestException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/GetApplication +func (c *AppConfig) GetApplication(input *GetApplicationInput) (*GetApplicationOutput, error) { + req, out := c.GetApplicationRequest(input) + return out, req.Send() +} + +// GetApplicationWithContext is the same as GetApplication with the addition of +// the ability to pass a context and additional request options. +// +// See GetApplication 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 *AppConfig) GetApplicationWithContext(ctx aws.Context, input *GetApplicationInput, opts ...request.Option) (*GetApplicationOutput, error) { + req, out := c.GetApplicationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetConfiguration = "GetConfiguration" + +// GetConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the GetConfiguration 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 GetConfiguration for more information on using the GetConfiguration +// 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 GetConfigurationRequest method. +// req, resp := client.GetConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/GetConfiguration +// +// Deprecated: This API has been deprecated in favor of the GetLatestConfiguration API used in conjunction with StartConfigurationSession. +func (c *AppConfig) GetConfigurationRequest(input *GetConfigurationInput) (req *request.Request, output *GetConfigurationOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, GetConfiguration, has been deprecated") + } + op := &request.Operation{ + Name: opGetConfiguration, + HTTPMethod: "GET", + HTTPPath: "/applications/{Application}/environments/{Environment}/configurations/{Configuration}", + } + + if input == nil { + input = &GetConfigurationInput{} + } + + output = &GetConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetConfiguration API operation for Amazon AppConfig. +// +// Retrieves the latest deployed configuration. +// +// Note the following important information. +// +// * This API action has been deprecated. Calls to receive configuration +// data should use the StartConfigurationSession (https://docs.aws.amazon.com/appconfig/2019-10-09/APIReference/API_appconfigdata_StartConfigurationSession.html) +// and GetLatestConfiguration (https://docs.aws.amazon.com/appconfig/2019-10-09/APIReference/API_appconfigdata_GetLatestConfiguration.html) +// APIs instead. +// +// * GetConfiguration is a priced call. For more information, see Pricing +// (https://aws.amazon.com/systems-manager/pricing/). +// +// * AppConfig uses the value of the ClientConfigurationVersion parameter +// to identify the configuration version on your clients. If you don’t // send ClientConfigurationVersion with each call to GetConfiguration, your // clients receive the current configuration. You are charged each time your // clients receive a configuration. To avoid excess charges, we recommend @@ -1439,7 +1816,7 @@ func (c *AppConfig) GetEnvironmentRequest(input *GetEnvironmentInput) (req *requ // GetEnvironment API operation for Amazon AppConfig. // -// Retrieves information about an environment. An environment is a logical deployment +// Retrieves information about an environment. An environment is a deployment // group of AppConfig applications, such as applications in a Production environment // or in an EU_Region environment. Each configuration deployment targets an // environment. You can enable one or more Amazon CloudWatch alarms for an environment. @@ -1485,187 +1862,362 @@ func (c *AppConfig) GetEnvironmentWithContext(ctx aws.Context, input *GetEnviron return out, req.Send() } -const opGetHostedConfigurationVersion = "GetHostedConfigurationVersion" +const opGetExtension = "GetExtension" -// GetHostedConfigurationVersionRequest generates a "aws/request.Request" representing the -// client's request for the GetHostedConfigurationVersion operation. The "output" return +// GetExtensionRequest generates a "aws/request.Request" representing the +// client's request for the GetExtension 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 GetHostedConfigurationVersion for more information on using the GetHostedConfigurationVersion +// See GetExtension for more information on using the GetExtension // 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 GetHostedConfigurationVersionRequest method. -// req, resp := client.GetHostedConfigurationVersionRequest(params) +// // Example sending a request using the GetExtensionRequest method. +// req, resp := client.GetExtensionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/GetHostedConfigurationVersion -func (c *AppConfig) GetHostedConfigurationVersionRequest(input *GetHostedConfigurationVersionInput) (req *request.Request, output *GetHostedConfigurationVersionOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/GetExtension +func (c *AppConfig) GetExtensionRequest(input *GetExtensionInput) (req *request.Request, output *GetExtensionOutput) { op := &request.Operation{ - Name: opGetHostedConfigurationVersion, + Name: opGetExtension, HTTPMethod: "GET", - HTTPPath: "/applications/{ApplicationId}/configurationprofiles/{ConfigurationProfileId}/hostedconfigurationversions/{VersionNumber}", + HTTPPath: "/extensions/{ExtensionIdentifier}", } if input == nil { - input = &GetHostedConfigurationVersionInput{} + input = &GetExtensionInput{} } - output = &GetHostedConfigurationVersionOutput{} + output = &GetExtensionOutput{} req = c.newRequest(op, input, output) return } -// GetHostedConfigurationVersion API operation for Amazon AppConfig. +// GetExtension API operation for Amazon AppConfig. // -// Retrieves information about a specific configuration version. +// Returns information about an AppConfig extension. // // 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 Amazon AppConfig's -// API operation GetHostedConfigurationVersion for usage and error information. +// API operation GetExtension for usage and error information. // // Returned Error Types: -// * BadRequestException -// The input fails to satisfy the constraints specified by an Amazon Web Services -// service. -// // * ResourceNotFoundException // The requested resource could not be found. // // * InternalServerException // There was an internal failure in the AppConfig service. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/GetHostedConfigurationVersion -func (c *AppConfig) GetHostedConfigurationVersion(input *GetHostedConfigurationVersionInput) (*GetHostedConfigurationVersionOutput, error) { - req, out := c.GetHostedConfigurationVersionRequest(input) +// * BadRequestException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/GetExtension +func (c *AppConfig) GetExtension(input *GetExtensionInput) (*GetExtensionOutput, error) { + req, out := c.GetExtensionRequest(input) return out, req.Send() } -// GetHostedConfigurationVersionWithContext is the same as GetHostedConfigurationVersion with the addition of +// GetExtensionWithContext is the same as GetExtension with the addition of // the ability to pass a context and additional request options. // -// See GetHostedConfigurationVersion for details on how to use this API operation. +// See GetExtension 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 *AppConfig) GetHostedConfigurationVersionWithContext(ctx aws.Context, input *GetHostedConfigurationVersionInput, opts ...request.Option) (*GetHostedConfigurationVersionOutput, error) { - req, out := c.GetHostedConfigurationVersionRequest(input) +func (c *AppConfig) GetExtensionWithContext(ctx aws.Context, input *GetExtensionInput, opts ...request.Option) (*GetExtensionOutput, error) { + req, out := c.GetExtensionRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opListApplications = "ListApplications" +const opGetExtensionAssociation = "GetExtensionAssociation" -// ListApplicationsRequest generates a "aws/request.Request" representing the -// client's request for the ListApplications operation. The "output" return +// GetExtensionAssociationRequest generates a "aws/request.Request" representing the +// client's request for the GetExtensionAssociation 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 ListApplications for more information on using the ListApplications +// See GetExtensionAssociation for more information on using the GetExtensionAssociation // 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 ListApplicationsRequest method. -// req, resp := client.ListApplicationsRequest(params) +// // Example sending a request using the GetExtensionAssociationRequest method. +// req, resp := client.GetExtensionAssociationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/ListApplications -func (c *AppConfig) ListApplicationsRequest(input *ListApplicationsInput) (req *request.Request, output *ListApplicationsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/GetExtensionAssociation +func (c *AppConfig) GetExtensionAssociationRequest(input *GetExtensionAssociationInput) (req *request.Request, output *GetExtensionAssociationOutput) { op := &request.Operation{ - Name: opListApplications, + Name: opGetExtensionAssociation, HTTPMethod: "GET", - HTTPPath: "/applications", - Paginator: &request.Paginator{ - InputTokens: []string{"NextToken"}, - OutputTokens: []string{"NextToken"}, - LimitToken: "MaxResults", - TruncationToken: "", - }, + HTTPPath: "/extensionassociations/{ExtensionAssociationId}", } if input == nil { - input = &ListApplicationsInput{} + input = &GetExtensionAssociationInput{} } - output = &ListApplicationsOutput{} + output = &GetExtensionAssociationOutput{} req = c.newRequest(op, input, output) return } -// ListApplications API operation for Amazon AppConfig. +// GetExtensionAssociation API operation for Amazon AppConfig. // -// Lists all applications in your Amazon Web Services account. +// Returns information about an AppConfig extension association. For more information +// about extensions and associations, see Working with AppConfig extensions +// (https://docs.aws.amazon.com/appconfig/latest/userguide/working-with-appconfig-extensions.html) +// in the AppConfig User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon AppConfig's -// API operation ListApplications for usage and error information. +// API operation GetExtensionAssociation for usage and error information. // // Returned Error Types: -// * InternalServerException -// There was an internal failure in the AppConfig service. -// // * BadRequestException // The input fails to satisfy the constraints specified by an Amazon Web Services // service. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/ListApplications -func (c *AppConfig) ListApplications(input *ListApplicationsInput) (*ListApplicationsOutput, error) { - req, out := c.ListApplicationsRequest(input) +// * ResourceNotFoundException +// The requested resource could not be found. +// +// * InternalServerException +// There was an internal failure in the AppConfig service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/GetExtensionAssociation +func (c *AppConfig) GetExtensionAssociation(input *GetExtensionAssociationInput) (*GetExtensionAssociationOutput, error) { + req, out := c.GetExtensionAssociationRequest(input) return out, req.Send() } -// ListApplicationsWithContext is the same as ListApplications with the addition of +// GetExtensionAssociationWithContext is the same as GetExtensionAssociation with the addition of // the ability to pass a context and additional request options. // -// See ListApplications for details on how to use this API operation. +// See GetExtensionAssociation 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 *AppConfig) ListApplicationsWithContext(ctx aws.Context, input *ListApplicationsInput, opts ...request.Option) (*ListApplicationsOutput, error) { - req, out := c.ListApplicationsRequest(input) +func (c *AppConfig) GetExtensionAssociationWithContext(ctx aws.Context, input *GetExtensionAssociationInput, opts ...request.Option) (*GetExtensionAssociationOutput, error) { + req, out := c.GetExtensionAssociationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListApplicationsPages iterates over the pages of a ListApplications operation, -// calling the "fn" function with the response data for each page. To stop -// iterating, return false from the fn function. -// -// See ListApplications method for more information on how to use this operation. -// +const opGetHostedConfigurationVersion = "GetHostedConfigurationVersion" + +// GetHostedConfigurationVersionRequest generates a "aws/request.Request" representing the +// client's request for the GetHostedConfigurationVersion 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 GetHostedConfigurationVersion for more information on using the GetHostedConfigurationVersion +// 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 GetHostedConfigurationVersionRequest method. +// req, resp := client.GetHostedConfigurationVersionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/GetHostedConfigurationVersion +func (c *AppConfig) GetHostedConfigurationVersionRequest(input *GetHostedConfigurationVersionInput) (req *request.Request, output *GetHostedConfigurationVersionOutput) { + op := &request.Operation{ + Name: opGetHostedConfigurationVersion, + HTTPMethod: "GET", + HTTPPath: "/applications/{ApplicationId}/configurationprofiles/{ConfigurationProfileId}/hostedconfigurationversions/{VersionNumber}", + } + + if input == nil { + input = &GetHostedConfigurationVersionInput{} + } + + output = &GetHostedConfigurationVersionOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetHostedConfigurationVersion API operation for Amazon AppConfig. +// +// Retrieves information about a specific configuration version. +// +// 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 Amazon AppConfig's +// API operation GetHostedConfigurationVersion for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// * ResourceNotFoundException +// The requested resource could not be found. +// +// * InternalServerException +// There was an internal failure in the AppConfig service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/GetHostedConfigurationVersion +func (c *AppConfig) GetHostedConfigurationVersion(input *GetHostedConfigurationVersionInput) (*GetHostedConfigurationVersionOutput, error) { + req, out := c.GetHostedConfigurationVersionRequest(input) + return out, req.Send() +} + +// GetHostedConfigurationVersionWithContext is the same as GetHostedConfigurationVersion with the addition of +// the ability to pass a context and additional request options. +// +// See GetHostedConfigurationVersion 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 *AppConfig) GetHostedConfigurationVersionWithContext(ctx aws.Context, input *GetHostedConfigurationVersionInput, opts ...request.Option) (*GetHostedConfigurationVersionOutput, error) { + req, out := c.GetHostedConfigurationVersionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListApplications = "ListApplications" + +// ListApplicationsRequest generates a "aws/request.Request" representing the +// client's request for the ListApplications 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 ListApplications for more information on using the ListApplications +// 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 ListApplicationsRequest method. +// req, resp := client.ListApplicationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/ListApplications +func (c *AppConfig) ListApplicationsRequest(input *ListApplicationsInput) (req *request.Request, output *ListApplicationsOutput) { + op := &request.Operation{ + Name: opListApplications, + HTTPMethod: "GET", + HTTPPath: "/applications", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListApplicationsInput{} + } + + output = &ListApplicationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListApplications API operation for Amazon AppConfig. +// +// Lists all applications in your Amazon Web Services account. +// +// 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 Amazon AppConfig's +// API operation ListApplications for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// There was an internal failure in the AppConfig service. +// +// * BadRequestException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/ListApplications +func (c *AppConfig) ListApplications(input *ListApplicationsInput) (*ListApplicationsOutput, error) { + req, out := c.ListApplicationsRequest(input) + return out, req.Send() +} + +// ListApplicationsWithContext is the same as ListApplications with the addition of +// the ability to pass a context and additional request options. +// +// See ListApplications 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 *AppConfig) ListApplicationsWithContext(ctx aws.Context, input *ListApplicationsInput, opts ...request.Option) (*ListApplicationsOutput, error) { + req, out := c.ListApplicationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListApplicationsPages iterates over the pages of a ListApplications operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListApplications 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 ListApplications operation. @@ -2286,37 +2838,37 @@ func (c *AppConfig) ListEnvironmentsPagesWithContext(ctx aws.Context, input *Lis return p.Err() } -const opListHostedConfigurationVersions = "ListHostedConfigurationVersions" +const opListExtensionAssociations = "ListExtensionAssociations" -// ListHostedConfigurationVersionsRequest generates a "aws/request.Request" representing the -// client's request for the ListHostedConfigurationVersions operation. The "output" return +// ListExtensionAssociationsRequest generates a "aws/request.Request" representing the +// client's request for the ListExtensionAssociations 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 ListHostedConfigurationVersions for more information on using the ListHostedConfigurationVersions +// See ListExtensionAssociations for more information on using the ListExtensionAssociations // 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 ListHostedConfigurationVersionsRequest method. -// req, resp := client.ListHostedConfigurationVersionsRequest(params) +// // Example sending a request using the ListExtensionAssociationsRequest method. +// req, resp := client.ListExtensionAssociationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/ListHostedConfigurationVersions -func (c *AppConfig) ListHostedConfigurationVersionsRequest(input *ListHostedConfigurationVersionsInput) (req *request.Request, output *ListHostedConfigurationVersionsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/ListExtensionAssociations +func (c *AppConfig) ListExtensionAssociationsRequest(input *ListExtensionAssociationsInput) (req *request.Request, output *ListExtensionAssociationsOutput) { op := &request.Operation{ - Name: opListHostedConfigurationVersions, + Name: opListExtensionAssociations, HTTPMethod: "GET", - HTTPPath: "/applications/{ApplicationId}/configurationprofiles/{ConfigurationProfileId}/hostedconfigurationversions", + HTTPPath: "/extensionassociations", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -2326,96 +2878,95 @@ func (c *AppConfig) ListHostedConfigurationVersionsRequest(input *ListHostedConf } if input == nil { - input = &ListHostedConfigurationVersionsInput{} + input = &ListExtensionAssociationsInput{} } - output = &ListHostedConfigurationVersionsOutput{} + output = &ListExtensionAssociationsOutput{} req = c.newRequest(op, input, output) return } -// ListHostedConfigurationVersions API operation for Amazon AppConfig. +// ListExtensionAssociations API operation for Amazon AppConfig. // -// Lists configurations stored in the AppConfig hosted configuration store by -// version. +// Lists all AppConfig extension associations in the account. For more information +// about extensions and associations, see Working with AppConfig extensions +// (https://docs.aws.amazon.com/appconfig/latest/userguide/working-with-appconfig-extensions.html) +// in the AppConfig User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon AppConfig's -// API operation ListHostedConfigurationVersions for usage and error information. +// API operation ListExtensionAssociations for usage and error information. // // Returned Error Types: +// * InternalServerException +// There was an internal failure in the AppConfig service. +// // * BadRequestException // The input fails to satisfy the constraints specified by an Amazon Web Services // service. // -// * ResourceNotFoundException -// The requested resource could not be found. -// -// * InternalServerException -// There was an internal failure in the AppConfig service. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/ListHostedConfigurationVersions -func (c *AppConfig) ListHostedConfigurationVersions(input *ListHostedConfigurationVersionsInput) (*ListHostedConfigurationVersionsOutput, error) { - req, out := c.ListHostedConfigurationVersionsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/ListExtensionAssociations +func (c *AppConfig) ListExtensionAssociations(input *ListExtensionAssociationsInput) (*ListExtensionAssociationsOutput, error) { + req, out := c.ListExtensionAssociationsRequest(input) return out, req.Send() } -// ListHostedConfigurationVersionsWithContext is the same as ListHostedConfigurationVersions with the addition of +// ListExtensionAssociationsWithContext is the same as ListExtensionAssociations with the addition of // the ability to pass a context and additional request options. // -// See ListHostedConfigurationVersions for details on how to use this API operation. +// See ListExtensionAssociations 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 *AppConfig) ListHostedConfigurationVersionsWithContext(ctx aws.Context, input *ListHostedConfigurationVersionsInput, opts ...request.Option) (*ListHostedConfigurationVersionsOutput, error) { - req, out := c.ListHostedConfigurationVersionsRequest(input) +func (c *AppConfig) ListExtensionAssociationsWithContext(ctx aws.Context, input *ListExtensionAssociationsInput, opts ...request.Option) (*ListExtensionAssociationsOutput, error) { + req, out := c.ListExtensionAssociationsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListHostedConfigurationVersionsPages iterates over the pages of a ListHostedConfigurationVersions operation, +// ListExtensionAssociationsPages iterates over the pages of a ListExtensionAssociations operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListHostedConfigurationVersions method for more information on how to use this operation. +// See ListExtensionAssociations 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 ListHostedConfigurationVersions operation. +// // Example iterating over at most 3 pages of a ListExtensionAssociations operation. // pageNum := 0 -// err := client.ListHostedConfigurationVersionsPages(params, -// func(page *appconfig.ListHostedConfigurationVersionsOutput, lastPage bool) bool { +// err := client.ListExtensionAssociationsPages(params, +// func(page *appconfig.ListExtensionAssociationsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // -func (c *AppConfig) ListHostedConfigurationVersionsPages(input *ListHostedConfigurationVersionsInput, fn func(*ListHostedConfigurationVersionsOutput, bool) bool) error { - return c.ListHostedConfigurationVersionsPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *AppConfig) ListExtensionAssociationsPages(input *ListExtensionAssociationsInput, fn func(*ListExtensionAssociationsOutput, bool) bool) error { + return c.ListExtensionAssociationsPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListHostedConfigurationVersionsPagesWithContext same as ListHostedConfigurationVersionsPages except +// ListExtensionAssociationsPagesWithContext same as ListExtensionAssociationsPages 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 *AppConfig) ListHostedConfigurationVersionsPagesWithContext(ctx aws.Context, input *ListHostedConfigurationVersionsInput, fn func(*ListHostedConfigurationVersionsOutput, bool) bool, opts ...request.Option) error { +func (c *AppConfig) ListExtensionAssociationsPagesWithContext(ctx aws.Context, input *ListExtensionAssociationsInput, fn func(*ListExtensionAssociationsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListHostedConfigurationVersionsInput + var inCpy *ListExtensionAssociationsInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListHostedConfigurationVersionsRequest(inCpy) + req, _ := c.ListExtensionAssociationsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -2423,7 +2974,7 @@ func (c *AppConfig) ListHostedConfigurationVersionsPagesWithContext(ctx aws.Cont } for p.Next() { - if !fn(p.Page().(*ListHostedConfigurationVersionsOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListExtensionAssociationsOutput), !p.HasNextPage()) { break } } @@ -2431,71 +2982,360 @@ func (c *AppConfig) ListHostedConfigurationVersionsPagesWithContext(ctx aws.Cont return p.Err() } -const opListTagsForResource = "ListTagsForResource" +const opListExtensions = "ListExtensions" -// ListTagsForResourceRequest generates a "aws/request.Request" representing the -// client's request for the ListTagsForResource operation. The "output" return +// ListExtensionsRequest generates a "aws/request.Request" representing the +// client's request for the ListExtensions 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 ListExtensions for more information on using the ListExtensions // 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 ListExtensionsRequest method. +// req, resp := client.ListExtensionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/ListTagsForResource -func (c *AppConfig) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/ListExtensions +func (c *AppConfig) ListExtensionsRequest(input *ListExtensionsInput) (req *request.Request, output *ListExtensionsOutput) { op := &request.Operation{ - Name: opListTagsForResource, + Name: opListExtensions, HTTPMethod: "GET", - HTTPPath: "/tags/{ResourceArn}", + HTTPPath: "/extensions", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { - input = &ListTagsForResourceInput{} + input = &ListExtensionsInput{} } - output = &ListTagsForResourceOutput{} + output = &ListExtensionsOutput{} req = c.newRequest(op, input, output) return } -// ListTagsForResource API operation for Amazon AppConfig. +// ListExtensions API operation for Amazon AppConfig. // -// Retrieves the list of key-value tags assigned to the resource. +// Lists all custom and Amazon Web Services-authored AppConfig extensions in +// the account. For more information about extensions, see Working with AppConfig +// extensions (https://docs.aws.amazon.com/appconfig/latest/userguide/working-with-appconfig-extensions.html) +// in the AppConfig User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon AppConfig's -// API operation ListTagsForResource for usage and error information. +// API operation ListExtensions for usage and error information. // // Returned Error Types: -// * ResourceNotFoundException -// The requested resource could not be found. +// * InternalServerException +// There was an internal failure in the AppConfig service. // // * BadRequestException // The input fails to satisfy the constraints specified by an Amazon Web Services // service. // -// * InternalServerException -// There was an internal failure in the AppConfig service. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/ListTagsForResource +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/ListExtensions +func (c *AppConfig) ListExtensions(input *ListExtensionsInput) (*ListExtensionsOutput, error) { + req, out := c.ListExtensionsRequest(input) + return out, req.Send() +} + +// ListExtensionsWithContext is the same as ListExtensions with the addition of +// the ability to pass a context and additional request options. +// +// See ListExtensions 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 *AppConfig) ListExtensionsWithContext(ctx aws.Context, input *ListExtensionsInput, opts ...request.Option) (*ListExtensionsOutput, error) { + req, out := c.ListExtensionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListExtensionsPages iterates over the pages of a ListExtensions operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListExtensions 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 ListExtensions operation. +// pageNum := 0 +// err := client.ListExtensionsPages(params, +// func(page *appconfig.ListExtensionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *AppConfig) ListExtensionsPages(input *ListExtensionsInput, fn func(*ListExtensionsOutput, bool) bool) error { + return c.ListExtensionsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListExtensionsPagesWithContext same as ListExtensionsPages 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 *AppConfig) ListExtensionsPagesWithContext(ctx aws.Context, input *ListExtensionsInput, fn func(*ListExtensionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListExtensionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListExtensionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListExtensionsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListHostedConfigurationVersions = "ListHostedConfigurationVersions" + +// ListHostedConfigurationVersionsRequest generates a "aws/request.Request" representing the +// client's request for the ListHostedConfigurationVersions 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 ListHostedConfigurationVersions for more information on using the ListHostedConfigurationVersions +// 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 ListHostedConfigurationVersionsRequest method. +// req, resp := client.ListHostedConfigurationVersionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/ListHostedConfigurationVersions +func (c *AppConfig) ListHostedConfigurationVersionsRequest(input *ListHostedConfigurationVersionsInput) (req *request.Request, output *ListHostedConfigurationVersionsOutput) { + op := &request.Operation{ + Name: opListHostedConfigurationVersions, + HTTPMethod: "GET", + HTTPPath: "/applications/{ApplicationId}/configurationprofiles/{ConfigurationProfileId}/hostedconfigurationversions", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListHostedConfigurationVersionsInput{} + } + + output = &ListHostedConfigurationVersionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListHostedConfigurationVersions API operation for Amazon AppConfig. +// +// Lists configurations stored in the AppConfig hosted configuration store by +// version. +// +// 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 Amazon AppConfig's +// API operation ListHostedConfigurationVersions for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// * ResourceNotFoundException +// The requested resource could not be found. +// +// * InternalServerException +// There was an internal failure in the AppConfig service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/ListHostedConfigurationVersions +func (c *AppConfig) ListHostedConfigurationVersions(input *ListHostedConfigurationVersionsInput) (*ListHostedConfigurationVersionsOutput, error) { + req, out := c.ListHostedConfigurationVersionsRequest(input) + return out, req.Send() +} + +// ListHostedConfigurationVersionsWithContext is the same as ListHostedConfigurationVersions with the addition of +// the ability to pass a context and additional request options. +// +// See ListHostedConfigurationVersions 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 *AppConfig) ListHostedConfigurationVersionsWithContext(ctx aws.Context, input *ListHostedConfigurationVersionsInput, opts ...request.Option) (*ListHostedConfigurationVersionsOutput, error) { + req, out := c.ListHostedConfigurationVersionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListHostedConfigurationVersionsPages iterates over the pages of a ListHostedConfigurationVersions operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListHostedConfigurationVersions 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 ListHostedConfigurationVersions operation. +// pageNum := 0 +// err := client.ListHostedConfigurationVersionsPages(params, +// func(page *appconfig.ListHostedConfigurationVersionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *AppConfig) ListHostedConfigurationVersionsPages(input *ListHostedConfigurationVersionsInput, fn func(*ListHostedConfigurationVersionsOutput, bool) bool) error { + return c.ListHostedConfigurationVersionsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListHostedConfigurationVersionsPagesWithContext same as ListHostedConfigurationVersionsPages 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 *AppConfig) ListHostedConfigurationVersionsPagesWithContext(ctx aws.Context, input *ListHostedConfigurationVersionsInput, fn func(*ListHostedConfigurationVersionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListHostedConfigurationVersionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListHostedConfigurationVersionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListHostedConfigurationVersionsOutput), !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/appconfig-2019-10-09/ListTagsForResource +func (c *AppConfig) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { + op := &request.Operation{ + Name: opListTagsForResource, + HTTPMethod: "GET", + HTTPPath: "/tags/{ResourceArn}", + } + + if input == nil { + input = &ListTagsForResourceInput{} + } + + output = &ListTagsForResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTagsForResource API operation for Amazon AppConfig. +// +// Retrieves the list of key-value tags assigned to the resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon AppConfig's +// API operation ListTagsForResource for usage and error information. +// +// Returned Error Types: +// * ResourceNotFoundException +// The requested resource could not be found. +// +// * BadRequestException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// * InternalServerException +// There was an internal failure in the AppConfig service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/ListTagsForResource func (c *AppConfig) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { req, out := c.ListTagsForResourceRequest(input) return out, req.Send() @@ -2895,33 +3735,205 @@ const opUpdateApplication = "UpdateApplication" // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/UpdateApplication -func (c *AppConfig) UpdateApplicationRequest(input *UpdateApplicationInput) (req *request.Request, output *UpdateApplicationOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/UpdateApplication +func (c *AppConfig) UpdateApplicationRequest(input *UpdateApplicationInput) (req *request.Request, output *UpdateApplicationOutput) { + op := &request.Operation{ + Name: opUpdateApplication, + HTTPMethod: "PATCH", + HTTPPath: "/applications/{ApplicationId}", + } + + if input == nil { + input = &UpdateApplicationInput{} + } + + output = &UpdateApplicationOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateApplication API operation for Amazon AppConfig. +// +// Updates an application. +// +// 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 Amazon AppConfig's +// API operation UpdateApplication for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// * ResourceNotFoundException +// The requested resource could not be found. +// +// * InternalServerException +// There was an internal failure in the AppConfig service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/UpdateApplication +func (c *AppConfig) UpdateApplication(input *UpdateApplicationInput) (*UpdateApplicationOutput, error) { + req, out := c.UpdateApplicationRequest(input) + return out, req.Send() +} + +// UpdateApplicationWithContext is the same as UpdateApplication with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateApplication 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 *AppConfig) UpdateApplicationWithContext(ctx aws.Context, input *UpdateApplicationInput, opts ...request.Option) (*UpdateApplicationOutput, error) { + req, out := c.UpdateApplicationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateConfigurationProfile = "UpdateConfigurationProfile" + +// UpdateConfigurationProfileRequest generates a "aws/request.Request" representing the +// client's request for the UpdateConfigurationProfile 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 UpdateConfigurationProfile for more information on using the UpdateConfigurationProfile +// 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 UpdateConfigurationProfileRequest method. +// req, resp := client.UpdateConfigurationProfileRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/UpdateConfigurationProfile +func (c *AppConfig) UpdateConfigurationProfileRequest(input *UpdateConfigurationProfileInput) (req *request.Request, output *UpdateConfigurationProfileOutput) { + op := &request.Operation{ + Name: opUpdateConfigurationProfile, + HTTPMethod: "PATCH", + HTTPPath: "/applications/{ApplicationId}/configurationprofiles/{ConfigurationProfileId}", + } + + if input == nil { + input = &UpdateConfigurationProfileInput{} + } + + output = &UpdateConfigurationProfileOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateConfigurationProfile API operation for Amazon AppConfig. +// +// Updates a configuration profile. +// +// 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 Amazon AppConfig's +// API operation UpdateConfigurationProfile for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// * ResourceNotFoundException +// The requested resource could not be found. +// +// * InternalServerException +// There was an internal failure in the AppConfig service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/UpdateConfigurationProfile +func (c *AppConfig) UpdateConfigurationProfile(input *UpdateConfigurationProfileInput) (*UpdateConfigurationProfileOutput, error) { + req, out := c.UpdateConfigurationProfileRequest(input) + return out, req.Send() +} + +// UpdateConfigurationProfileWithContext is the same as UpdateConfigurationProfile with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateConfigurationProfile 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 *AppConfig) UpdateConfigurationProfileWithContext(ctx aws.Context, input *UpdateConfigurationProfileInput, opts ...request.Option) (*UpdateConfigurationProfileOutput, error) { + req, out := c.UpdateConfigurationProfileRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateDeploymentStrategy = "UpdateDeploymentStrategy" + +// UpdateDeploymentStrategyRequest generates a "aws/request.Request" representing the +// client's request for the UpdateDeploymentStrategy 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 UpdateDeploymentStrategy for more information on using the UpdateDeploymentStrategy +// 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 UpdateDeploymentStrategyRequest method. +// req, resp := client.UpdateDeploymentStrategyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/UpdateDeploymentStrategy +func (c *AppConfig) UpdateDeploymentStrategyRequest(input *UpdateDeploymentStrategyInput) (req *request.Request, output *UpdateDeploymentStrategyOutput) { op := &request.Operation{ - Name: opUpdateApplication, + Name: opUpdateDeploymentStrategy, HTTPMethod: "PATCH", - HTTPPath: "/applications/{ApplicationId}", + HTTPPath: "/deploymentstrategies/{DeploymentStrategyId}", } if input == nil { - input = &UpdateApplicationInput{} + input = &UpdateDeploymentStrategyInput{} } - output = &UpdateApplicationOutput{} + output = &UpdateDeploymentStrategyOutput{} req = c.newRequest(op, input, output) return } -// UpdateApplication API operation for Amazon AppConfig. +// UpdateDeploymentStrategy API operation for Amazon AppConfig. // -// Updates an application. +// Updates a deployment strategy. // // 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 Amazon AppConfig's -// API operation UpdateApplication for usage and error information. +// API operation UpdateDeploymentStrategy for usage and error information. // // Returned Error Types: // * BadRequestException @@ -2934,80 +3946,80 @@ func (c *AppConfig) UpdateApplicationRequest(input *UpdateApplicationInput) (req // * InternalServerException // There was an internal failure in the AppConfig service. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/UpdateApplication -func (c *AppConfig) UpdateApplication(input *UpdateApplicationInput) (*UpdateApplicationOutput, error) { - req, out := c.UpdateApplicationRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/UpdateDeploymentStrategy +func (c *AppConfig) UpdateDeploymentStrategy(input *UpdateDeploymentStrategyInput) (*UpdateDeploymentStrategyOutput, error) { + req, out := c.UpdateDeploymentStrategyRequest(input) return out, req.Send() } -// UpdateApplicationWithContext is the same as UpdateApplication with the addition of +// UpdateDeploymentStrategyWithContext is the same as UpdateDeploymentStrategy with the addition of // the ability to pass a context and additional request options. // -// See UpdateApplication for details on how to use this API operation. +// See UpdateDeploymentStrategy 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 *AppConfig) UpdateApplicationWithContext(ctx aws.Context, input *UpdateApplicationInput, opts ...request.Option) (*UpdateApplicationOutput, error) { - req, out := c.UpdateApplicationRequest(input) +func (c *AppConfig) UpdateDeploymentStrategyWithContext(ctx aws.Context, input *UpdateDeploymentStrategyInput, opts ...request.Option) (*UpdateDeploymentStrategyOutput, error) { + req, out := c.UpdateDeploymentStrategyRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateConfigurationProfile = "UpdateConfigurationProfile" +const opUpdateEnvironment = "UpdateEnvironment" -// UpdateConfigurationProfileRequest generates a "aws/request.Request" representing the -// client's request for the UpdateConfigurationProfile operation. The "output" return +// UpdateEnvironmentRequest generates a "aws/request.Request" representing the +// client's request for the UpdateEnvironment 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 UpdateConfigurationProfile for more information on using the UpdateConfigurationProfile +// See UpdateEnvironment for more information on using the UpdateEnvironment // 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 UpdateConfigurationProfileRequest method. -// req, resp := client.UpdateConfigurationProfileRequest(params) +// // Example sending a request using the UpdateEnvironmentRequest method. +// req, resp := client.UpdateEnvironmentRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/UpdateConfigurationProfile -func (c *AppConfig) UpdateConfigurationProfileRequest(input *UpdateConfigurationProfileInput) (req *request.Request, output *UpdateConfigurationProfileOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/UpdateEnvironment +func (c *AppConfig) UpdateEnvironmentRequest(input *UpdateEnvironmentInput) (req *request.Request, output *UpdateEnvironmentOutput) { op := &request.Operation{ - Name: opUpdateConfigurationProfile, + Name: opUpdateEnvironment, HTTPMethod: "PATCH", - HTTPPath: "/applications/{ApplicationId}/configurationprofiles/{ConfigurationProfileId}", + HTTPPath: "/applications/{ApplicationId}/environments/{EnvironmentId}", } if input == nil { - input = &UpdateConfigurationProfileInput{} + input = &UpdateEnvironmentInput{} } - output = &UpdateConfigurationProfileOutput{} + output = &UpdateEnvironmentOutput{} req = c.newRequest(op, input, output) return } -// UpdateConfigurationProfile API operation for Amazon AppConfig. +// UpdateEnvironment API operation for Amazon AppConfig. // -// Updates a configuration profile. +// Updates an environment. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon AppConfig's -// API operation UpdateConfigurationProfile for usage and error information. +// API operation UpdateEnvironment for usage and error information. // // Returned Error Types: // * BadRequestException @@ -3020,80 +4032,82 @@ func (c *AppConfig) UpdateConfigurationProfileRequest(input *UpdateConfiguration // * InternalServerException // There was an internal failure in the AppConfig service. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/UpdateConfigurationProfile -func (c *AppConfig) UpdateConfigurationProfile(input *UpdateConfigurationProfileInput) (*UpdateConfigurationProfileOutput, error) { - req, out := c.UpdateConfigurationProfileRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/UpdateEnvironment +func (c *AppConfig) UpdateEnvironment(input *UpdateEnvironmentInput) (*UpdateEnvironmentOutput, error) { + req, out := c.UpdateEnvironmentRequest(input) return out, req.Send() } -// UpdateConfigurationProfileWithContext is the same as UpdateConfigurationProfile with the addition of +// UpdateEnvironmentWithContext is the same as UpdateEnvironment with the addition of // the ability to pass a context and additional request options. // -// See UpdateConfigurationProfile for details on how to use this API operation. +// See UpdateEnvironment 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 *AppConfig) UpdateConfigurationProfileWithContext(ctx aws.Context, input *UpdateConfigurationProfileInput, opts ...request.Option) (*UpdateConfigurationProfileOutput, error) { - req, out := c.UpdateConfigurationProfileRequest(input) +func (c *AppConfig) UpdateEnvironmentWithContext(ctx aws.Context, input *UpdateEnvironmentInput, opts ...request.Option) (*UpdateEnvironmentOutput, error) { + req, out := c.UpdateEnvironmentRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateDeploymentStrategy = "UpdateDeploymentStrategy" +const opUpdateExtension = "UpdateExtension" -// UpdateDeploymentStrategyRequest generates a "aws/request.Request" representing the -// client's request for the UpdateDeploymentStrategy operation. The "output" return +// UpdateExtensionRequest generates a "aws/request.Request" representing the +// client's request for the UpdateExtension 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 UpdateDeploymentStrategy for more information on using the UpdateDeploymentStrategy +// See UpdateExtension for more information on using the UpdateExtension // 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 UpdateDeploymentStrategyRequest method. -// req, resp := client.UpdateDeploymentStrategyRequest(params) +// // Example sending a request using the UpdateExtensionRequest method. +// req, resp := client.UpdateExtensionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/UpdateDeploymentStrategy -func (c *AppConfig) UpdateDeploymentStrategyRequest(input *UpdateDeploymentStrategyInput) (req *request.Request, output *UpdateDeploymentStrategyOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/UpdateExtension +func (c *AppConfig) UpdateExtensionRequest(input *UpdateExtensionInput) (req *request.Request, output *UpdateExtensionOutput) { op := &request.Operation{ - Name: opUpdateDeploymentStrategy, + Name: opUpdateExtension, HTTPMethod: "PATCH", - HTTPPath: "/deploymentstrategies/{DeploymentStrategyId}", + HTTPPath: "/extensions/{ExtensionIdentifier}", } if input == nil { - input = &UpdateDeploymentStrategyInput{} + input = &UpdateExtensionInput{} } - output = &UpdateDeploymentStrategyOutput{} + output = &UpdateExtensionOutput{} req = c.newRequest(op, input, output) return } -// UpdateDeploymentStrategy API operation for Amazon AppConfig. +// UpdateExtension API operation for Amazon AppConfig. // -// Updates a deployment strategy. +// Updates an AppConfig extension. For more information about extensions, see +// Working with AppConfig extensions (https://docs.aws.amazon.com/appconfig/latest/userguide/working-with-appconfig-extensions.html) +// in the AppConfig User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon AppConfig's -// API operation UpdateDeploymentStrategy for usage and error information. +// API operation UpdateExtension for usage and error information. // // Returned Error Types: // * BadRequestException @@ -3103,83 +4117,89 @@ func (c *AppConfig) UpdateDeploymentStrategyRequest(input *UpdateDeploymentStrat // * ResourceNotFoundException // The requested resource could not be found. // +// * ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. +// // * InternalServerException // There was an internal failure in the AppConfig service. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/UpdateDeploymentStrategy -func (c *AppConfig) UpdateDeploymentStrategy(input *UpdateDeploymentStrategyInput) (*UpdateDeploymentStrategyOutput, error) { - req, out := c.UpdateDeploymentStrategyRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/UpdateExtension +func (c *AppConfig) UpdateExtension(input *UpdateExtensionInput) (*UpdateExtensionOutput, error) { + req, out := c.UpdateExtensionRequest(input) return out, req.Send() } -// UpdateDeploymentStrategyWithContext is the same as UpdateDeploymentStrategy with the addition of +// UpdateExtensionWithContext is the same as UpdateExtension with the addition of // the ability to pass a context and additional request options. // -// See UpdateDeploymentStrategy for details on how to use this API operation. +// See UpdateExtension 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 *AppConfig) UpdateDeploymentStrategyWithContext(ctx aws.Context, input *UpdateDeploymentStrategyInput, opts ...request.Option) (*UpdateDeploymentStrategyOutput, error) { - req, out := c.UpdateDeploymentStrategyRequest(input) +func (c *AppConfig) UpdateExtensionWithContext(ctx aws.Context, input *UpdateExtensionInput, opts ...request.Option) (*UpdateExtensionOutput, error) { + req, out := c.UpdateExtensionRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateEnvironment = "UpdateEnvironment" +const opUpdateExtensionAssociation = "UpdateExtensionAssociation" -// UpdateEnvironmentRequest generates a "aws/request.Request" representing the -// client's request for the UpdateEnvironment operation. The "output" return +// UpdateExtensionAssociationRequest generates a "aws/request.Request" representing the +// client's request for the UpdateExtensionAssociation 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 UpdateEnvironment for more information on using the UpdateEnvironment +// See UpdateExtensionAssociation for more information on using the UpdateExtensionAssociation // 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 UpdateEnvironmentRequest method. -// req, resp := client.UpdateEnvironmentRequest(params) +// // Example sending a request using the UpdateExtensionAssociationRequest method. +// req, resp := client.UpdateExtensionAssociationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/UpdateEnvironment -func (c *AppConfig) UpdateEnvironmentRequest(input *UpdateEnvironmentInput) (req *request.Request, output *UpdateEnvironmentOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/UpdateExtensionAssociation +func (c *AppConfig) UpdateExtensionAssociationRequest(input *UpdateExtensionAssociationInput) (req *request.Request, output *UpdateExtensionAssociationOutput) { op := &request.Operation{ - Name: opUpdateEnvironment, + Name: opUpdateExtensionAssociation, HTTPMethod: "PATCH", - HTTPPath: "/applications/{ApplicationId}/environments/{EnvironmentId}", + HTTPPath: "/extensionassociations/{ExtensionAssociationId}", } if input == nil { - input = &UpdateEnvironmentInput{} + input = &UpdateExtensionAssociationInput{} } - output = &UpdateEnvironmentOutput{} + output = &UpdateExtensionAssociationOutput{} req = c.newRequest(op, input, output) return } -// UpdateEnvironment API operation for Amazon AppConfig. +// UpdateExtensionAssociation API operation for Amazon AppConfig. // -// Updates an environment. +// Updates an association. For more information about extensions and associations, +// see Working with AppConfig extensions (https://docs.aws.amazon.com/appconfig/latest/userguide/working-with-appconfig-extensions.html) +// in the AppConfig User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon AppConfig's -// API operation UpdateEnvironment for usage and error information. +// API operation UpdateExtensionAssociation for usage and error information. // // Returned Error Types: // * BadRequestException @@ -3192,23 +4212,23 @@ func (c *AppConfig) UpdateEnvironmentRequest(input *UpdateEnvironmentInput) (req // * InternalServerException // There was an internal failure in the AppConfig service. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/UpdateEnvironment -func (c *AppConfig) UpdateEnvironment(input *UpdateEnvironmentInput) (*UpdateEnvironmentOutput, error) { - req, out := c.UpdateEnvironmentRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/UpdateExtensionAssociation +func (c *AppConfig) UpdateExtensionAssociation(input *UpdateExtensionAssociationInput) (*UpdateExtensionAssociationOutput, error) { + req, out := c.UpdateExtensionAssociationRequest(input) return out, req.Send() } -// UpdateEnvironmentWithContext is the same as UpdateEnvironment with the addition of +// UpdateExtensionAssociationWithContext is the same as UpdateExtensionAssociation with the addition of // the ability to pass a context and additional request options. // -// See UpdateEnvironment for details on how to use this API operation. +// See UpdateExtensionAssociation 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 *AppConfig) UpdateEnvironmentWithContext(ctx aws.Context, input *UpdateEnvironmentInput, opts ...request.Option) (*UpdateEnvironmentOutput, error) { - req, out := c.UpdateEnvironmentRequest(input) +func (c *AppConfig) UpdateExtensionAssociationWithContext(ctx aws.Context, input *UpdateExtensionAssociationInput, opts ...request.Option) (*UpdateExtensionAssociationOutput, error) { + req, out := c.UpdateExtensionAssociationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() @@ -3301,6 +4321,179 @@ func (c *AppConfig) ValidateConfigurationWithContext(ctx aws.Context, input *Val return out, req.Send() } +// An action defines the tasks the extension performs during the AppConfig workflow. +// Each action includes an action point such as ON_CREATE_HOSTED_CONFIGURATION, +// PRE_DEPLOYMENT, or ON_DEPLOYMENT. Each action also includes a name, a URI +// to an Lambda function, and an Amazon Resource Name (ARN) for an Identity +// and Access Management assume role. You specify the name, URI, and ARN for +// each action point defined in the extension. You can specify the following +// actions for an extension: +// +// * PRE_CREATE_HOSTED_CONFIGURATION_VERSION +// +// * PRE_START_DEPLOYMENT +// +// * ON_DEPLOYMENT_START +// +// * ON_DEPLOYMENT_STEP +// +// * ON_DEPLOYMENT_BAKING +// +// * ON_DEPLOYMENT_COMPLETE +// +// * ON_DEPLOYMENT_ROLLED_BACK +type Action struct { + _ struct{} `type:"structure"` + + // Information about the action. + Description *string `type:"string"` + + // The action name. + Name *string `min:"1" type:"string"` + + // An Amazon Resource Name (ARN) for an Identity and Access Management assume + // role. + RoleArn *string `min:"20" type:"string"` + + // The extension URI associated to the action point in the extension definition. + // The URI can be an Amazon Resource Name (ARN) for one of the following: an + // Lambda function, an Amazon Simple Queue Service queue, an Amazon Simple Notification + // Service topic, or the Amazon EventBridge default event bus. + Uri *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 Action) 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 Action) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *Action) SetDescription(v string) *Action { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *Action) SetName(v string) *Action { + s.Name = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *Action) SetRoleArn(v string) *Action { + s.RoleArn = &v + return s +} + +// SetUri sets the Uri field's value. +func (s *Action) SetUri(v string) *Action { + s.Uri = &v + return s +} + +// An extension that was invoked as part of a deployment event. +type ActionInvocation struct { + _ struct{} `type:"structure"` + + // The name of the action. + ActionName *string `min:"1" type:"string"` + + // The error code when an extension invocation fails. + ErrorCode *string `type:"string"` + + // The error message when an extension invocation fails. + ErrorMessage *string `type:"string"` + + // The name, the ID, or the Amazon Resource Name (ARN) of the extension. + ExtensionIdentifier *string `min:"1" type:"string"` + + // A system-generated ID for this invocation. + InvocationId *string `type:"string"` + + // An Amazon Resource Name (ARN) for an Identity and Access Management assume + // role. + RoleArn *string `min:"20" type:"string"` + + // The extension URI associated to the action point in the extension definition. + // The URI can be an Amazon Resource Name (ARN) for one of the following: an + // Lambda function, an Amazon Simple Queue Service queue, an Amazon Simple Notification + // Service topic, or the Amazon EventBridge default event bus. + Uri *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 ActionInvocation) 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 ActionInvocation) GoString() string { + return s.String() +} + +// SetActionName sets the ActionName field's value. +func (s *ActionInvocation) SetActionName(v string) *ActionInvocation { + s.ActionName = &v + return s +} + +// SetErrorCode sets the ErrorCode field's value. +func (s *ActionInvocation) SetErrorCode(v string) *ActionInvocation { + s.ErrorCode = &v + return s +} + +// SetErrorMessage sets the ErrorMessage field's value. +func (s *ActionInvocation) SetErrorMessage(v string) *ActionInvocation { + s.ErrorMessage = &v + return s +} + +// SetExtensionIdentifier sets the ExtensionIdentifier field's value. +func (s *ActionInvocation) SetExtensionIdentifier(v string) *ActionInvocation { + s.ExtensionIdentifier = &v + return s +} + +// SetInvocationId sets the InvocationId field's value. +func (s *ActionInvocation) SetInvocationId(v string) *ActionInvocation { + s.InvocationId = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *ActionInvocation) SetRoleArn(v string) *ActionInvocation { + s.RoleArn = &v + return s +} + +// SetUri sets the Uri field's value. +func (s *ActionInvocation) SetUri(v string) *ActionInvocation { + s.Uri = &v + return s +} + type Application struct { _ struct{} `type:"structure"` @@ -3350,6 +4543,65 @@ func (s *Application) SetName(v string) *Application { return s } +// An extension that was invoked during a deployment. +type AppliedExtension struct { + _ struct{} `type:"structure"` + + // The system-generated ID for the association. + ExtensionAssociationId *string `type:"string"` + + // The system-generated ID of the extension. + ExtensionId *string `type:"string"` + + // One or more parameters for the actions called by the extension. + Parameters map[string]*string `type:"map"` + + // The extension version number. + VersionNumber *int64 `type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AppliedExtension) 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 AppliedExtension) GoString() string { + return s.String() +} + +// SetExtensionAssociationId sets the ExtensionAssociationId field's value. +func (s *AppliedExtension) SetExtensionAssociationId(v string) *AppliedExtension { + s.ExtensionAssociationId = &v + return s +} + +// SetExtensionId sets the ExtensionId field's value. +func (s *AppliedExtension) SetExtensionId(v string) *AppliedExtension { + s.ExtensionId = &v + return s +} + +// SetParameters sets the Parameters field's value. +func (s *AppliedExtension) SetParameters(v map[string]*string) *AppliedExtension { + s.Parameters = v + return s +} + +// SetVersionNumber sets the VersionNumber field's value. +func (s *AppliedExtension) SetVersionNumber(v int64) *AppliedExtension { + s.VersionNumber = &v + return s +} + // Detailed information about the input that failed to satisfy the constraints // specified by a call. type BadRequestDetails struct { @@ -4000,8 +5252,14 @@ type CreateDeploymentStrategyInput struct { // A description of the deployment strategy. Description *string `type:"string"` - // The amount of time AppConfig monitors for alarms before considering the deployment - // to be complete and no longer eligible for automatic roll back. + // Specifies the amount of time AppConfig monitors for Amazon CloudWatch alarms + // after the configuration has been deployed to 100% of its targets, before + // considering the deployment to be complete. If an alarm is triggered during + // this time, AppConfig rolls back the deployment. You must configure permissions + // for AppConfig to roll back based on CloudWatch alarms. For more information, + // see Configuring permissions for rollback based on Amazon CloudWatch alarms + // (https://docs.aws.amazon.com/appconfig/latest/userguide/getting-started-with-appconfig-cloudwatch-alarms-permissions.html) + // in the AppConfig User Guide. FinalBakeTimeInMinutes *int64 `type:"integer"` // The percentage of targets to receive a deployed configuration during each @@ -4043,9 +5301,7 @@ type CreateDeploymentStrategyInput struct { Name *string `min:"1" type:"string" required:"true"` // Save the deployment strategy to a Systems Manager (SSM) document. - // - // ReplicateTo is a required field - ReplicateTo *string `type:"string" required:"true" enum:"ReplicateTo"` + ReplicateTo *string `type:"string" enum:"ReplicateTo"` // Metadata to assign to the deployment strategy. Tags help organize and categorize // your AppConfig resources. Each tag consists of a key and an optional value, @@ -4089,9 +5345,6 @@ func (s *CreateDeploymentStrategyInput) Validate() error { if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } - if s.ReplicateTo == nil { - invalidParams.Add(request.NewErrParamRequired("ReplicateTo")) - } if invalidParams.Len() > 0 { return invalidParams @@ -4366,9 +5619,380 @@ type CreateEnvironmentOutput struct { // The name of the environment. Name *string `min:"1" type:"string"` - // The state of the environment. An environment can be in one of the following - // states: READY_FOR_DEPLOYMENT, DEPLOYING, ROLLING_BACK, or ROLLED_BACK - State *string `type:"string" enum:"EnvironmentState"` + // The state of the environment. An environment can be in one of the following + // states: READY_FOR_DEPLOYMENT, DEPLOYING, ROLLING_BACK, or ROLLED_BACK + State *string `type:"string" enum:"EnvironmentState"` +} + +// 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 CreateEnvironmentOutput) 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 CreateEnvironmentOutput) GoString() string { + return s.String() +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *CreateEnvironmentOutput) SetApplicationId(v string) *CreateEnvironmentOutput { + s.ApplicationId = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateEnvironmentOutput) SetDescription(v string) *CreateEnvironmentOutput { + s.Description = &v + return s +} + +// SetId sets the Id field's value. +func (s *CreateEnvironmentOutput) SetId(v string) *CreateEnvironmentOutput { + s.Id = &v + return s +} + +// SetMonitors sets the Monitors field's value. +func (s *CreateEnvironmentOutput) SetMonitors(v []*Monitor) *CreateEnvironmentOutput { + s.Monitors = v + return s +} + +// SetName sets the Name field's value. +func (s *CreateEnvironmentOutput) SetName(v string) *CreateEnvironmentOutput { + s.Name = &v + return s +} + +// SetState sets the State field's value. +func (s *CreateEnvironmentOutput) SetState(v string) *CreateEnvironmentOutput { + s.State = &v + return s +} + +type CreateExtensionAssociationInput struct { + _ struct{} `type:"structure"` + + // The name, the ID, or the Amazon Resource Name (ARN) of the extension. + // + // ExtensionIdentifier is a required field + ExtensionIdentifier *string `min:"1" type:"string" required:"true"` + + // The version number of the extension. If not specified, AppConfig uses the + // maximum version of the extension. + ExtensionVersionNumber *int64 `type:"integer"` + + // The parameter names and values defined in the extensions. Extension parameters + // marked Required must be entered for this field. + Parameters map[string]*string `type:"map"` + + // The ARN of an application, configuration profile, or environment. + // + // ResourceIdentifier is a required field + ResourceIdentifier *string `min:"1" type:"string" required:"true"` + + // Adds one or more tags for the specified extension association. Tags are metadata + // that help you categorize resources in different ways, for example, by purpose, + // owner, or environment. Each tag consists of a key and an optional value, + // both of which you define. + Tags map[string]*string `type:"map"` +} + +// 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 CreateExtensionAssociationInput) 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 CreateExtensionAssociationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateExtensionAssociationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateExtensionAssociationInput"} + if s.ExtensionIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ExtensionIdentifier")) + } + if s.ExtensionIdentifier != nil && len(*s.ExtensionIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ExtensionIdentifier", 1)) + } + if s.ResourceIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceIdentifier")) + } + if s.ResourceIdentifier != nil && len(*s.ResourceIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceIdentifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExtensionIdentifier sets the ExtensionIdentifier field's value. +func (s *CreateExtensionAssociationInput) SetExtensionIdentifier(v string) *CreateExtensionAssociationInput { + s.ExtensionIdentifier = &v + return s +} + +// SetExtensionVersionNumber sets the ExtensionVersionNumber field's value. +func (s *CreateExtensionAssociationInput) SetExtensionVersionNumber(v int64) *CreateExtensionAssociationInput { + s.ExtensionVersionNumber = &v + return s +} + +// SetParameters sets the Parameters field's value. +func (s *CreateExtensionAssociationInput) SetParameters(v map[string]*string) *CreateExtensionAssociationInput { + s.Parameters = v + return s +} + +// SetResourceIdentifier sets the ResourceIdentifier field's value. +func (s *CreateExtensionAssociationInput) SetResourceIdentifier(v string) *CreateExtensionAssociationInput { + s.ResourceIdentifier = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateExtensionAssociationInput) SetTags(v map[string]*string) *CreateExtensionAssociationInput { + s.Tags = v + return s +} + +type CreateExtensionAssociationOutput struct { + _ struct{} `type:"structure"` + + // The system-generated Amazon Resource Name (ARN) for the extension. + Arn *string `min:"20" type:"string"` + + // The ARN of the extension defined in the association. + ExtensionArn *string `min:"20" type:"string"` + + // The version number for the extension defined in the association. + ExtensionVersionNumber *int64 `type:"integer"` + + // The system-generated ID for the association. + Id *string `min:"1" type:"string"` + + // The parameter names and values defined in the association. + Parameters map[string]*string `type:"map"` + + // The ARNs of applications, configuration profiles, or environments defined + // in the association. + ResourceArn *string `min:"20" 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 CreateExtensionAssociationOutput) 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 CreateExtensionAssociationOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CreateExtensionAssociationOutput) SetArn(v string) *CreateExtensionAssociationOutput { + s.Arn = &v + return s +} + +// SetExtensionArn sets the ExtensionArn field's value. +func (s *CreateExtensionAssociationOutput) SetExtensionArn(v string) *CreateExtensionAssociationOutput { + s.ExtensionArn = &v + return s +} + +// SetExtensionVersionNumber sets the ExtensionVersionNumber field's value. +func (s *CreateExtensionAssociationOutput) SetExtensionVersionNumber(v int64) *CreateExtensionAssociationOutput { + s.ExtensionVersionNumber = &v + return s +} + +// SetId sets the Id field's value. +func (s *CreateExtensionAssociationOutput) SetId(v string) *CreateExtensionAssociationOutput { + s.Id = &v + return s +} + +// SetParameters sets the Parameters field's value. +func (s *CreateExtensionAssociationOutput) SetParameters(v map[string]*string) *CreateExtensionAssociationOutput { + s.Parameters = v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *CreateExtensionAssociationOutput) SetResourceArn(v string) *CreateExtensionAssociationOutput { + s.ResourceArn = &v + return s +} + +type CreateExtensionInput struct { + _ struct{} `type:"structure"` + + // The actions defined in the extension. + // + // Actions is a required field + Actions map[string][]*Action `min:"1" type:"map" required:"true"` + + // Information about the extension. + Description *string `type:"string"` + + // You can omit this field when you create an extension. When you create a new + // version, specify the most recent current version number. For example, you + // create version 3, enter 2 for this field. + LatestVersionNumber *int64 `location:"header" locationName:"Latest-Version-Number" type:"integer"` + + // A name for the extension. Each extension name in your account must be unique. + // Extension versions use the same name. + // + // Name is a required field + Name *string `min:"1" type:"string" required:"true"` + + // The parameters accepted by the extension. You specify parameter values when + // you associate the extension to an AppConfig resource by using the CreateExtensionAssociation + // API action. For Lambda extension actions, these parameters are included in + // the Lambda request object. + Parameters map[string]*Parameter `min:"1" type:"map"` + + // Adds one or more tags for the specified extension. Tags are metadata that + // help you categorize resources in different ways, for example, by purpose, + // owner, or environment. Each tag consists of a key and an optional value, + // both of which you define. + Tags map[string]*string `type:"map"` +} + +// 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 CreateExtensionInput) 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 CreateExtensionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateExtensionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateExtensionInput"} + if s.Actions == nil { + invalidParams.Add(request.NewErrParamRequired("Actions")) + } + if s.Actions != nil && len(s.Actions) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Actions", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Parameters != nil && len(s.Parameters) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Parameters", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetActions sets the Actions field's value. +func (s *CreateExtensionInput) SetActions(v map[string][]*Action) *CreateExtensionInput { + s.Actions = v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateExtensionInput) SetDescription(v string) *CreateExtensionInput { + s.Description = &v + return s +} + +// SetLatestVersionNumber sets the LatestVersionNumber field's value. +func (s *CreateExtensionInput) SetLatestVersionNumber(v int64) *CreateExtensionInput { + s.LatestVersionNumber = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateExtensionInput) SetName(v string) *CreateExtensionInput { + s.Name = &v + return s +} + +// SetParameters sets the Parameters field's value. +func (s *CreateExtensionInput) SetParameters(v map[string]*Parameter) *CreateExtensionInput { + s.Parameters = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateExtensionInput) SetTags(v map[string]*string) *CreateExtensionInput { + s.Tags = v + return s +} + +type CreateExtensionOutput struct { + _ struct{} `type:"structure"` + + // The actions defined in the extension. + Actions map[string][]*Action `min:"1" type:"map"` + + // The system-generated Amazon Resource Name (ARN) for the extension. + Arn *string `min:"20" type:"string"` + + // Information about the extension. + Description *string `type:"string"` + + // The system-generated ID of the extension. + Id *string `type:"string"` + + // The extension name. + Name *string `min:"1" type:"string"` + + // The parameters accepted by the extension. You specify parameter values when + // you associate the extension to an AppConfig resource by using the CreateExtensionAssociation + // API action. For Lambda extension actions, these parameters are included in + // the Lambda request object. + Parameters map[string]*Parameter `min:"1" type:"map"` + + // The extension version number. + VersionNumber *int64 `type:"integer"` } // String returns the string representation. @@ -4376,7 +6000,7 @@ type CreateEnvironmentOutput 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 CreateEnvironmentOutput) String() string { +func (s CreateExtensionOutput) String() string { return awsutil.Prettify(s) } @@ -4385,43 +6009,49 @@ func (s CreateEnvironmentOutput) 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 CreateEnvironmentOutput) GoString() string { +func (s CreateExtensionOutput) GoString() string { return s.String() } -// SetApplicationId sets the ApplicationId field's value. -func (s *CreateEnvironmentOutput) SetApplicationId(v string) *CreateEnvironmentOutput { - s.ApplicationId = &v +// SetActions sets the Actions field's value. +func (s *CreateExtensionOutput) SetActions(v map[string][]*Action) *CreateExtensionOutput { + s.Actions = v + return s +} + +// SetArn sets the Arn field's value. +func (s *CreateExtensionOutput) SetArn(v string) *CreateExtensionOutput { + s.Arn = &v return s } // SetDescription sets the Description field's value. -func (s *CreateEnvironmentOutput) SetDescription(v string) *CreateEnvironmentOutput { +func (s *CreateExtensionOutput) SetDescription(v string) *CreateExtensionOutput { s.Description = &v return s } // SetId sets the Id field's value. -func (s *CreateEnvironmentOutput) SetId(v string) *CreateEnvironmentOutput { +func (s *CreateExtensionOutput) SetId(v string) *CreateExtensionOutput { s.Id = &v return s } -// SetMonitors sets the Monitors field's value. -func (s *CreateEnvironmentOutput) SetMonitors(v []*Monitor) *CreateEnvironmentOutput { - s.Monitors = v +// SetName sets the Name field's value. +func (s *CreateExtensionOutput) SetName(v string) *CreateExtensionOutput { + s.Name = &v return s } -// SetName sets the Name field's value. -func (s *CreateEnvironmentOutput) SetName(v string) *CreateEnvironmentOutput { - s.Name = &v +// SetParameters sets the Parameters field's value. +func (s *CreateExtensionOutput) SetParameters(v map[string]*Parameter) *CreateExtensionOutput { + s.Parameters = v return s } -// SetState sets the State field's value. -func (s *CreateEnvironmentOutput) SetState(v string) *CreateEnvironmentOutput { - s.State = &v +// SetVersionNumber sets the VersionNumber field's value. +func (s *CreateExtensionOutput) SetVersionNumber(v int64) *CreateExtensionOutput { + s.VersionNumber = &v return s } @@ -4948,6 +6578,159 @@ func (s DeleteEnvironmentOutput) GoString() string { return s.String() } +type DeleteExtensionAssociationInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the extension association to delete. + // + // ExtensionAssociationId is a required field + ExtensionAssociationId *string `location:"uri" locationName:"ExtensionAssociationId" 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 DeleteExtensionAssociationInput) 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 DeleteExtensionAssociationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteExtensionAssociationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteExtensionAssociationInput"} + if s.ExtensionAssociationId == nil { + invalidParams.Add(request.NewErrParamRequired("ExtensionAssociationId")) + } + if s.ExtensionAssociationId != nil && len(*s.ExtensionAssociationId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ExtensionAssociationId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExtensionAssociationId sets the ExtensionAssociationId field's value. +func (s *DeleteExtensionAssociationInput) SetExtensionAssociationId(v string) *DeleteExtensionAssociationInput { + s.ExtensionAssociationId = &v + return s +} + +type DeleteExtensionAssociationOutput 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 DeleteExtensionAssociationOutput) 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 DeleteExtensionAssociationOutput) GoString() string { + return s.String() +} + +type DeleteExtensionInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The name, ID, or Amazon Resource Name (ARN) of the extension you want to + // delete. + // + // ExtensionIdentifier is a required field + ExtensionIdentifier *string `location:"uri" locationName:"ExtensionIdentifier" min:"1" type:"string" required:"true"` + + // A specific version of an extension to delete. If omitted, the highest version + // is deleted. + VersionNumber *int64 `location:"querystring" locationName:"version" type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteExtensionInput) 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 DeleteExtensionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteExtensionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteExtensionInput"} + if s.ExtensionIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ExtensionIdentifier")) + } + if s.ExtensionIdentifier != nil && len(*s.ExtensionIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ExtensionIdentifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExtensionIdentifier sets the ExtensionIdentifier field's value. +func (s *DeleteExtensionInput) SetExtensionIdentifier(v string) *DeleteExtensionInput { + s.ExtensionIdentifier = &v + return s +} + +// SetVersionNumber sets the VersionNumber field's value. +func (s *DeleteExtensionInput) SetVersionNumber(v int64) *DeleteExtensionInput { + s.VersionNumber = &v + return s +} + +type DeleteExtensionOutput 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 DeleteExtensionOutput) 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 DeleteExtensionOutput) GoString() string { + return s.String() +} + type DeleteHostedConfigurationVersionInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -5054,6 +6837,9 @@ func (s DeleteHostedConfigurationVersionOutput) GoString() string { type DeploymentEvent struct { _ struct{} `type:"structure"` + // The list of extensions that were invoked as part of the deployment. + ActionInvocations []*ActionInvocation `type:"list"` + // A description of the deployment event. Descriptions include, but are not // limited to, the user account or the Amazon CloudWatch alarm ARN that initiated // a rollback, the percentage of hosts that received the deployment, or in the @@ -5091,6 +6877,12 @@ func (s DeploymentEvent) GoString() string { return s.String() } +// SetActionInvocations sets the ActionInvocations field's value. +func (s *DeploymentEvent) SetActionInvocations(v []*ActionInvocation) *DeploymentEvent { + s.ActionInvocations = v + return s +} + // SetDescription sets the Description field's value. func (s *DeploymentEvent) SetDescription(v string) *DeploymentEvent { s.Description = &v @@ -5329,33 +7121,162 @@ func (s *DeploymentSummary) SetStartedAt(v time.Time) *DeploymentSummary { return s } -// SetState sets the State field's value. -func (s *DeploymentSummary) SetState(v string) *DeploymentSummary { - s.State = &v +// SetState sets the State field's value. +func (s *DeploymentSummary) SetState(v string) *DeploymentSummary { + s.State = &v + return s +} + +type Environment struct { + _ struct{} `type:"structure"` + + // The application ID. + ApplicationId *string `type:"string"` + + // The description of the environment. + Description *string `type:"string"` + + // The environment ID. + Id *string `type:"string"` + + // Amazon CloudWatch alarms monitored during the deployment. + Monitors []*Monitor `type:"list"` + + // The name of the environment. + Name *string `min:"1" type:"string"` + + // The state of the environment. An environment can be in one of the following + // states: READY_FOR_DEPLOYMENT, DEPLOYING, ROLLING_BACK, or ROLLED_BACK + State *string `type:"string" enum:"EnvironmentState"` +} + +// 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 Environment) 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 Environment) GoString() string { + return s.String() +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *Environment) SetApplicationId(v string) *Environment { + s.ApplicationId = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *Environment) SetDescription(v string) *Environment { + s.Description = &v + return s +} + +// SetId sets the Id field's value. +func (s *Environment) SetId(v string) *Environment { + s.Id = &v + return s +} + +// SetMonitors sets the Monitors field's value. +func (s *Environment) SetMonitors(v []*Monitor) *Environment { + s.Monitors = v + return s +} + +// SetName sets the Name field's value. +func (s *Environment) SetName(v string) *Environment { + s.Name = &v + return s +} + +// SetState sets the State field's value. +func (s *Environment) SetState(v string) *Environment { + s.State = &v + return s +} + +// Information about an association between an extension and an AppConfig resource +// such as an application, environment, or configuration profile. Call GetExtensionAssociation +// to get more information about an association. +type ExtensionAssociationSummary struct { + _ struct{} `type:"structure"` + + // The system-generated Amazon Resource Name (ARN) for the extension. + ExtensionArn *string `min:"20" type:"string"` + + // The extension association ID. This ID is used to call other ExtensionAssociation + // API actions such as GetExtensionAssociation or DeleteExtensionAssociation. + Id *string `min:"1" type:"string"` + + // The ARNs of applications, configuration profiles, or environments defined + // in the association. + ResourceArn *string `min:"20" 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 ExtensionAssociationSummary) 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 ExtensionAssociationSummary) GoString() string { + return s.String() +} + +// SetExtensionArn sets the ExtensionArn field's value. +func (s *ExtensionAssociationSummary) SetExtensionArn(v string) *ExtensionAssociationSummary { + s.ExtensionArn = &v + return s +} + +// SetId sets the Id field's value. +func (s *ExtensionAssociationSummary) SetId(v string) *ExtensionAssociationSummary { + s.Id = &v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *ExtensionAssociationSummary) SetResourceArn(v string) *ExtensionAssociationSummary { + s.ResourceArn = &v return s } -type Environment struct { +// Information about an extension. Call GetExtension to get more information +// about an extension. +type ExtensionSummary struct { _ struct{} `type:"structure"` - // The application ID. - ApplicationId *string `type:"string"` + // The system-generated Amazon Resource Name (ARN) for the extension. + Arn *string `min:"20" type:"string"` - // The description of the environment. + // Information about the extension. Description *string `type:"string"` - // The environment ID. + // The system-generated ID of the extension. Id *string `type:"string"` - // Amazon CloudWatch alarms monitored during the deployment. - Monitors []*Monitor `type:"list"` - - // The name of the environment. + // The extension name. Name *string `min:"1" type:"string"` - // The state of the environment. An environment can be in one of the following - // states: READY_FOR_DEPLOYMENT, DEPLOYING, ROLLING_BACK, or ROLLED_BACK - State *string `type:"string" enum:"EnvironmentState"` + // The extension version number. + VersionNumber *int64 `type:"integer"` } // String returns the string representation. @@ -5363,7 +7284,7 @@ type Environment 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 Environment) String() string { +func (s ExtensionSummary) String() string { return awsutil.Prettify(s) } @@ -5372,43 +7293,37 @@ func (s Environment) 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 Environment) GoString() string { +func (s ExtensionSummary) GoString() string { return s.String() } -// SetApplicationId sets the ApplicationId field's value. -func (s *Environment) SetApplicationId(v string) *Environment { - s.ApplicationId = &v +// SetArn sets the Arn field's value. +func (s *ExtensionSummary) SetArn(v string) *ExtensionSummary { + s.Arn = &v return s } // SetDescription sets the Description field's value. -func (s *Environment) SetDescription(v string) *Environment { +func (s *ExtensionSummary) SetDescription(v string) *ExtensionSummary { s.Description = &v return s } // SetId sets the Id field's value. -func (s *Environment) SetId(v string) *Environment { +func (s *ExtensionSummary) SetId(v string) *ExtensionSummary { s.Id = &v return s } -// SetMonitors sets the Monitors field's value. -func (s *Environment) SetMonitors(v []*Monitor) *Environment { - s.Monitors = v - return s -} - // SetName sets the Name field's value. -func (s *Environment) SetName(v string) *Environment { +func (s *ExtensionSummary) SetName(v string) *ExtensionSummary { s.Name = &v return s } -// SetState sets the State field's value. -func (s *Environment) SetState(v string) *Environment { - s.State = &v +// SetVersionNumber sets the VersionNumber field's value. +func (s *ExtensionSummary) SetVersionNumber(v int64) *ExtensionSummary { + s.VersionNumber = &v return s } @@ -5956,6 +7871,11 @@ type GetDeploymentOutput struct { // The ID of the application that was deployed. ApplicationId *string `type:"string"` + // A list of extensions that were processed as part of the deployment. The extensions + // that were previously associated to the configuration profile, environment, + // or the application when StartDeployment was called. + AppliedExtensions []*AppliedExtension `type:"list"` + // The time the deployment completed. CompletedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` @@ -6035,6 +7955,12 @@ func (s *GetDeploymentOutput) SetApplicationId(v string) *GetDeploymentOutput { return s } +// SetAppliedExtensions sets the AppliedExtensions field's value. +func (s *GetDeploymentOutput) SetAppliedExtensions(v []*AppliedExtension) *GetDeploymentOutput { + s.AppliedExtensions = v + return s +} + // SetCompletedAt sets the CompletedAt field's value. func (s *GetDeploymentOutput) SetCompletedAt(v time.Time) *GetDeploymentOutput { s.CompletedAt = &v @@ -6315,19 +8241,281 @@ func (s GetEnvironmentInput) GoString() string { } // Validate inspects the fields of the type to determine if they are valid. -func (s *GetEnvironmentInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetEnvironmentInput"} - if s.ApplicationId == nil { - invalidParams.Add(request.NewErrParamRequired("ApplicationId")) - } - if s.ApplicationId != nil && len(*s.ApplicationId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 1)) - } - if s.EnvironmentId == nil { - invalidParams.Add(request.NewErrParamRequired("EnvironmentId")) +func (s *GetEnvironmentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetEnvironmentInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 1)) + } + if s.EnvironmentId == nil { + invalidParams.Add(request.NewErrParamRequired("EnvironmentId")) + } + if s.EnvironmentId != nil && len(*s.EnvironmentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("EnvironmentId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *GetEnvironmentInput) SetApplicationId(v string) *GetEnvironmentInput { + s.ApplicationId = &v + return s +} + +// SetEnvironmentId sets the EnvironmentId field's value. +func (s *GetEnvironmentInput) SetEnvironmentId(v string) *GetEnvironmentInput { + s.EnvironmentId = &v + return s +} + +type GetEnvironmentOutput struct { + _ struct{} `type:"structure"` + + // The application ID. + ApplicationId *string `type:"string"` + + // The description of the environment. + Description *string `type:"string"` + + // The environment ID. + Id *string `type:"string"` + + // Amazon CloudWatch alarms monitored during the deployment. + Monitors []*Monitor `type:"list"` + + // The name of the environment. + Name *string `min:"1" type:"string"` + + // The state of the environment. An environment can be in one of the following + // states: READY_FOR_DEPLOYMENT, DEPLOYING, ROLLING_BACK, or ROLLED_BACK + State *string `type:"string" enum:"EnvironmentState"` +} + +// 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 GetEnvironmentOutput) 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 GetEnvironmentOutput) GoString() string { + return s.String() +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *GetEnvironmentOutput) SetApplicationId(v string) *GetEnvironmentOutput { + s.ApplicationId = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetEnvironmentOutput) SetDescription(v string) *GetEnvironmentOutput { + s.Description = &v + return s +} + +// SetId sets the Id field's value. +func (s *GetEnvironmentOutput) SetId(v string) *GetEnvironmentOutput { + s.Id = &v + return s +} + +// SetMonitors sets the Monitors field's value. +func (s *GetEnvironmentOutput) SetMonitors(v []*Monitor) *GetEnvironmentOutput { + s.Monitors = v + return s +} + +// SetName sets the Name field's value. +func (s *GetEnvironmentOutput) SetName(v string) *GetEnvironmentOutput { + s.Name = &v + return s +} + +// SetState sets the State field's value. +func (s *GetEnvironmentOutput) SetState(v string) *GetEnvironmentOutput { + s.State = &v + return s +} + +type GetExtensionAssociationInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The extension association ID to get. + // + // ExtensionAssociationId is a required field + ExtensionAssociationId *string `location:"uri" locationName:"ExtensionAssociationId" 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 GetExtensionAssociationInput) 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 GetExtensionAssociationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetExtensionAssociationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetExtensionAssociationInput"} + if s.ExtensionAssociationId == nil { + invalidParams.Add(request.NewErrParamRequired("ExtensionAssociationId")) + } + if s.ExtensionAssociationId != nil && len(*s.ExtensionAssociationId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ExtensionAssociationId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExtensionAssociationId sets the ExtensionAssociationId field's value. +func (s *GetExtensionAssociationInput) SetExtensionAssociationId(v string) *GetExtensionAssociationInput { + s.ExtensionAssociationId = &v + return s +} + +type GetExtensionAssociationOutput struct { + _ struct{} `type:"structure"` + + // The system-generated Amazon Resource Name (ARN) for the extension. + Arn *string `min:"20" type:"string"` + + // The ARN of the extension defined in the association. + ExtensionArn *string `min:"20" type:"string"` + + // The version number for the extension defined in the association. + ExtensionVersionNumber *int64 `type:"integer"` + + // The system-generated ID for the association. + Id *string `min:"1" type:"string"` + + // The parameter names and values defined in the association. + Parameters map[string]*string `type:"map"` + + // The ARNs of applications, configuration profiles, or environments defined + // in the association. + ResourceArn *string `min:"20" 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 GetExtensionAssociationOutput) 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 GetExtensionAssociationOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *GetExtensionAssociationOutput) SetArn(v string) *GetExtensionAssociationOutput { + s.Arn = &v + return s +} + +// SetExtensionArn sets the ExtensionArn field's value. +func (s *GetExtensionAssociationOutput) SetExtensionArn(v string) *GetExtensionAssociationOutput { + s.ExtensionArn = &v + return s +} + +// SetExtensionVersionNumber sets the ExtensionVersionNumber field's value. +func (s *GetExtensionAssociationOutput) SetExtensionVersionNumber(v int64) *GetExtensionAssociationOutput { + s.ExtensionVersionNumber = &v + return s +} + +// SetId sets the Id field's value. +func (s *GetExtensionAssociationOutput) SetId(v string) *GetExtensionAssociationOutput { + s.Id = &v + return s +} + +// SetParameters sets the Parameters field's value. +func (s *GetExtensionAssociationOutput) SetParameters(v map[string]*string) *GetExtensionAssociationOutput { + s.Parameters = v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *GetExtensionAssociationOutput) SetResourceArn(v string) *GetExtensionAssociationOutput { + s.ResourceArn = &v + return s +} + +type GetExtensionInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The name, the ID, or the Amazon Resource Name (ARN) of the extension. + // + // ExtensionIdentifier is a required field + ExtensionIdentifier *string `location:"uri" locationName:"ExtensionIdentifier" min:"1" type:"string" required:"true"` + + // The extension version number. If no version number was defined, AppConfig + // uses the highest version. + VersionNumber *int64 `location:"querystring" locationName:"version_number" type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetExtensionInput) 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 GetExtensionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetExtensionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetExtensionInput"} + if s.ExtensionIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ExtensionIdentifier")) } - if s.EnvironmentId != nil && len(*s.EnvironmentId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("EnvironmentId", 1)) + if s.ExtensionIdentifier != nil && len(*s.ExtensionIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ExtensionIdentifier", 1)) } if invalidParams.Len() > 0 { @@ -6336,39 +8524,44 @@ func (s *GetEnvironmentInput) Validate() error { return nil } -// SetApplicationId sets the ApplicationId field's value. -func (s *GetEnvironmentInput) SetApplicationId(v string) *GetEnvironmentInput { - s.ApplicationId = &v +// SetExtensionIdentifier sets the ExtensionIdentifier field's value. +func (s *GetExtensionInput) SetExtensionIdentifier(v string) *GetExtensionInput { + s.ExtensionIdentifier = &v return s } -// SetEnvironmentId sets the EnvironmentId field's value. -func (s *GetEnvironmentInput) SetEnvironmentId(v string) *GetEnvironmentInput { - s.EnvironmentId = &v +// SetVersionNumber sets the VersionNumber field's value. +func (s *GetExtensionInput) SetVersionNumber(v int64) *GetExtensionInput { + s.VersionNumber = &v return s } -type GetEnvironmentOutput struct { +type GetExtensionOutput struct { _ struct{} `type:"structure"` - // The application ID. - ApplicationId *string `type:"string"` + // The actions defined in the extension. + Actions map[string][]*Action `min:"1" type:"map"` - // The description of the environment. + // The system-generated Amazon Resource Name (ARN) for the extension. + Arn *string `min:"20" type:"string"` + + // Information about the extension. Description *string `type:"string"` - // The environment ID. + // The system-generated ID of the extension. Id *string `type:"string"` - // Amazon CloudWatch alarms monitored during the deployment. - Monitors []*Monitor `type:"list"` - - // The name of the environment. + // The extension name. Name *string `min:"1" type:"string"` - // The state of the environment. An environment can be in one of the following - // states: READY_FOR_DEPLOYMENT, DEPLOYING, ROLLING_BACK, or ROLLED_BACK - State *string `type:"string" enum:"EnvironmentState"` + // The parameters accepted by the extension. You specify parameter values when + // you associate the extension to an AppConfig resource by using the CreateExtensionAssociation + // API action. For Lambda extension actions, these parameters are included in + // the Lambda request object. + Parameters map[string]*Parameter `min:"1" type:"map"` + + // The extension version number. + VersionNumber *int64 `type:"integer"` } // String returns the string representation. @@ -6376,7 +8569,7 @@ type GetEnvironmentOutput 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 GetEnvironmentOutput) String() string { +func (s GetExtensionOutput) String() string { return awsutil.Prettify(s) } @@ -6385,43 +8578,49 @@ func (s GetEnvironmentOutput) 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 GetEnvironmentOutput) GoString() string { +func (s GetExtensionOutput) GoString() string { return s.String() } -// SetApplicationId sets the ApplicationId field's value. -func (s *GetEnvironmentOutput) SetApplicationId(v string) *GetEnvironmentOutput { - s.ApplicationId = &v +// SetActions sets the Actions field's value. +func (s *GetExtensionOutput) SetActions(v map[string][]*Action) *GetExtensionOutput { + s.Actions = v + return s +} + +// SetArn sets the Arn field's value. +func (s *GetExtensionOutput) SetArn(v string) *GetExtensionOutput { + s.Arn = &v return s } // SetDescription sets the Description field's value. -func (s *GetEnvironmentOutput) SetDescription(v string) *GetEnvironmentOutput { +func (s *GetExtensionOutput) SetDescription(v string) *GetExtensionOutput { s.Description = &v return s } // SetId sets the Id field's value. -func (s *GetEnvironmentOutput) SetId(v string) *GetEnvironmentOutput { +func (s *GetExtensionOutput) SetId(v string) *GetExtensionOutput { s.Id = &v return s } -// SetMonitors sets the Monitors field's value. -func (s *GetEnvironmentOutput) SetMonitors(v []*Monitor) *GetEnvironmentOutput { - s.Monitors = v +// SetName sets the Name field's value. +func (s *GetExtensionOutput) SetName(v string) *GetExtensionOutput { + s.Name = &v return s } -// SetName sets the Name field's value. -func (s *GetEnvironmentOutput) SetName(v string) *GetEnvironmentOutput { - s.Name = &v +// SetParameters sets the Parameters field's value. +func (s *GetExtensionOutput) SetParameters(v map[string]*Parameter) *GetExtensionOutput { + s.Parameters = v return s } -// SetState sets the State field's value. -func (s *GetEnvironmentOutput) SetState(v string) *GetEnvironmentOutput { - s.State = &v +// SetVersionNumber sets the VersionNumber field's value. +func (s *GetExtensionOutput) SetVersionNumber(v int64) *GetExtensionOutput { + s.VersionNumber = &v return s } @@ -6737,6 +8936,10 @@ type InvalidConfigurationDetail struct { // The type of error for an invalid configuration. Type *string `type:"string"` + + // Details about an error with Lambda when a synchronous extension experiences + // an error during an invocation. + Value *string `type:"string"` } // String returns the string representation. @@ -6781,6 +8984,12 @@ func (s *InvalidConfigurationDetail) SetType(v string) *InvalidConfigurationDeta return s } +// SetValue sets the Value field's value. +func (s *InvalidConfigurationDetail) SetValue(v string) *InvalidConfigurationDetail { + s.Value = &v + return s +} + type ListApplicationsInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -7350,13 +9559,259 @@ func (s ListEnvironmentsOutput) GoString() string { } // SetItems sets the Items field's value. -func (s *ListEnvironmentsOutput) SetItems(v []*Environment) *ListEnvironmentsOutput { +func (s *ListEnvironmentsOutput) SetItems(v []*Environment) *ListEnvironmentsOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListEnvironmentsOutput) SetNextToken(v string) *ListEnvironmentsOutput { + s.NextToken = &v + return s +} + +type ListExtensionAssociationsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The name, the ID, or the Amazon Resource Name (ARN) of the extension. + ExtensionIdentifier *string `location:"querystring" locationName:"extension_identifier" min:"1" type:"string"` + + // The version number for the extension defined in the association. + ExtensionVersionNumber *int64 `location:"querystring" locationName:"extension_version_number" type:"integer"` + + // The maximum number of items to return for this call. The call also returns + // a token that you can specify in a subsequent call to get the next set of + // results. + MaxResults *int64 `location:"querystring" locationName:"max_results" min:"1" type:"integer"` + + // A token to start the list. Use this token to get the next set of results + // or pass null to get the first set of results. + NextToken *string `location:"querystring" locationName:"next_token" min:"1" type:"string"` + + // The ARN of an application, configuration profile, or environment. + ResourceIdentifier *string `location:"querystring" locationName:"resource_identifier" min:"20" 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 ListExtensionAssociationsInput) 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 ListExtensionAssociationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListExtensionAssociationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListExtensionAssociationsInput"} + if s.ExtensionIdentifier != nil && len(*s.ExtensionIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ExtensionIdentifier", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.ResourceIdentifier != nil && len(*s.ResourceIdentifier) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ResourceIdentifier", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExtensionIdentifier sets the ExtensionIdentifier field's value. +func (s *ListExtensionAssociationsInput) SetExtensionIdentifier(v string) *ListExtensionAssociationsInput { + s.ExtensionIdentifier = &v + return s +} + +// SetExtensionVersionNumber sets the ExtensionVersionNumber field's value. +func (s *ListExtensionAssociationsInput) SetExtensionVersionNumber(v int64) *ListExtensionAssociationsInput { + s.ExtensionVersionNumber = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListExtensionAssociationsInput) SetMaxResults(v int64) *ListExtensionAssociationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListExtensionAssociationsInput) SetNextToken(v string) *ListExtensionAssociationsInput { + s.NextToken = &v + return s +} + +// SetResourceIdentifier sets the ResourceIdentifier field's value. +func (s *ListExtensionAssociationsInput) SetResourceIdentifier(v string) *ListExtensionAssociationsInput { + s.ResourceIdentifier = &v + return s +} + +type ListExtensionAssociationsOutput struct { + _ struct{} `type:"structure"` + + // The list of extension associations. Each item represents an extension association + // to an application, environment, or configuration profile. + Items []*ExtensionAssociationSummary `type:"list"` + + // The token for the next set of items to return. Use this token to get the + // next set of results. + NextToken *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 ListExtensionAssociationsOutput) 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 ListExtensionAssociationsOutput) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *ListExtensionAssociationsOutput) SetItems(v []*ExtensionAssociationSummary) *ListExtensionAssociationsOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListExtensionAssociationsOutput) SetNextToken(v string) *ListExtensionAssociationsOutput { + s.NextToken = &v + return s +} + +type ListExtensionsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum number of items to return for this call. The call also returns + // a token that you can specify in a subsequent call to get the next set of + // results. + MaxResults *int64 `location:"querystring" locationName:"max_results" min:"1" type:"integer"` + + // The extension name. + Name *string `location:"querystring" locationName:"name" min:"1" type:"string"` + + // A token to start the list. Use this token to get the next set of results. + NextToken *string `location:"querystring" locationName:"next_token" 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 ListExtensionsInput) 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 ListExtensionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListExtensionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListExtensionsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListExtensionsInput) SetMaxResults(v int64) *ListExtensionsInput { + s.MaxResults = &v + return s +} + +// SetName sets the Name field's value. +func (s *ListExtensionsInput) SetName(v string) *ListExtensionsInput { + s.Name = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListExtensionsInput) SetNextToken(v string) *ListExtensionsInput { + s.NextToken = &v + return s +} + +type ListExtensionsOutput struct { + _ struct{} `type:"structure"` + + // The list of available extensions. The list includes Amazon Web Services-authored + // and user-created extensions. + Items []*ExtensionSummary `type:"list"` + + // The token for the next set of items to return. Use this token to get the + // next set of results. + NextToken *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 ListExtensionsOutput) 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 ListExtensionsOutput) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *ListExtensionsOutput) SetItems(v []*ExtensionSummary) *ListExtensionsOutput { s.Items = v return s } // SetNextToken sets the NextToken field's value. -func (s *ListEnvironmentsOutput) SetNextToken(v string) *ListEnvironmentsOutput { +func (s *ListExtensionsOutput) SetNextToken(v string) *ListExtensionsOutput { s.NextToken = &v return s } @@ -7639,6 +10094,51 @@ func (s *Monitor) SetAlarmRoleArn(v string) *Monitor { return s } +// A value such as an Amazon Resource Name (ARN) or an Amazon Simple Notification +// Service topic entered in an extension when invoked. Parameter values are +// specified in an extension association. For more information about extensions, +// see Working with AppConfig extensions (https://docs.aws.amazon.com/appconfig/latest/userguide/working-with-appconfig-extensions.html) +// in the AppConfig User Guide. +type Parameter struct { + _ struct{} `type:"structure"` + + // Information about the parameter. + Description *string `type:"string"` + + // A parameter value must be specified in the extension association. + Required *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 Parameter) 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 Parameter) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *Parameter) SetDescription(v string) *Parameter { + s.Description = &v + return s +} + +// SetRequired sets the Required field's value. +func (s *Parameter) SetRequired(v bool) *Parameter { + s.Required = &v + return s +} + // The configuration size is too large. type PayloadTooLargeException struct { _ struct{} `type:"structure"` @@ -7977,6 +10477,11 @@ type StartDeploymentOutput struct { // The ID of the application that was deployed. ApplicationId *string `type:"string"` + // A list of extensions that were processed as part of the deployment. The extensions + // that were previously associated to the configuration profile, environment, + // or the application when StartDeployment was called. + AppliedExtensions []*AppliedExtension `type:"list"` + // The time the deployment completed. CompletedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` @@ -8056,6 +10561,12 @@ func (s *StartDeploymentOutput) SetApplicationId(v string) *StartDeploymentOutpu return s } +// SetAppliedExtensions sets the AppliedExtensions field's value. +func (s *StartDeploymentOutput) SetAppliedExtensions(v []*AppliedExtension) *StartDeploymentOutput { + s.AppliedExtensions = v + return s +} + // SetCompletedAt sets the CompletedAt field's value. func (s *StartDeploymentOutput) SetCompletedAt(v time.Time) *StartDeploymentOutput { s.CompletedAt = &v @@ -8244,6 +10755,11 @@ type StopDeploymentOutput struct { // The ID of the application that was deployed. ApplicationId *string `type:"string"` + // A list of extensions that were processed as part of the deployment. The extensions + // that were previously associated to the configuration profile, environment, + // or the application when StartDeployment was called. + AppliedExtensions []*AppliedExtension `type:"list"` + // The time the deployment completed. CompletedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` @@ -8323,6 +10839,12 @@ func (s *StopDeploymentOutput) SetApplicationId(v string) *StopDeploymentOutput return s } +// SetAppliedExtensions sets the AppliedExtensions field's value. +func (s *StopDeploymentOutput) SetAppliedExtensions(v []*AppliedExtension) *StopDeploymentOutput { + s.AppliedExtensions = v + return s +} + // SetCompletedAt sets the CompletedAt field's value. func (s *StopDeploymentOutput) SetCompletedAt(v time.Time) *StopDeploymentOutput { s.CompletedAt = &v @@ -9340,6 +11862,320 @@ func (s *UpdateEnvironmentOutput) SetState(v string) *UpdateEnvironmentOutput { return s } +type UpdateExtensionAssociationInput struct { + _ struct{} `type:"structure"` + + // The system-generated ID for the association. + // + // ExtensionAssociationId is a required field + ExtensionAssociationId *string `location:"uri" locationName:"ExtensionAssociationId" type:"string" required:"true"` + + // The parameter names and values defined in the extension. + Parameters map[string]*string `type:"map"` +} + +// 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 UpdateExtensionAssociationInput) 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 UpdateExtensionAssociationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateExtensionAssociationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateExtensionAssociationInput"} + if s.ExtensionAssociationId == nil { + invalidParams.Add(request.NewErrParamRequired("ExtensionAssociationId")) + } + if s.ExtensionAssociationId != nil && len(*s.ExtensionAssociationId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ExtensionAssociationId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExtensionAssociationId sets the ExtensionAssociationId field's value. +func (s *UpdateExtensionAssociationInput) SetExtensionAssociationId(v string) *UpdateExtensionAssociationInput { + s.ExtensionAssociationId = &v + return s +} + +// SetParameters sets the Parameters field's value. +func (s *UpdateExtensionAssociationInput) SetParameters(v map[string]*string) *UpdateExtensionAssociationInput { + s.Parameters = v + return s +} + +type UpdateExtensionAssociationOutput struct { + _ struct{} `type:"structure"` + + // The system-generated Amazon Resource Name (ARN) for the extension. + Arn *string `min:"20" type:"string"` + + // The ARN of the extension defined in the association. + ExtensionArn *string `min:"20" type:"string"` + + // The version number for the extension defined in the association. + ExtensionVersionNumber *int64 `type:"integer"` + + // The system-generated ID for the association. + Id *string `min:"1" type:"string"` + + // The parameter names and values defined in the association. + Parameters map[string]*string `type:"map"` + + // The ARNs of applications, configuration profiles, or environments defined + // in the association. + ResourceArn *string `min:"20" 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 UpdateExtensionAssociationOutput) 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 UpdateExtensionAssociationOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *UpdateExtensionAssociationOutput) SetArn(v string) *UpdateExtensionAssociationOutput { + s.Arn = &v + return s +} + +// SetExtensionArn sets the ExtensionArn field's value. +func (s *UpdateExtensionAssociationOutput) SetExtensionArn(v string) *UpdateExtensionAssociationOutput { + s.ExtensionArn = &v + return s +} + +// SetExtensionVersionNumber sets the ExtensionVersionNumber field's value. +func (s *UpdateExtensionAssociationOutput) SetExtensionVersionNumber(v int64) *UpdateExtensionAssociationOutput { + s.ExtensionVersionNumber = &v + return s +} + +// SetId sets the Id field's value. +func (s *UpdateExtensionAssociationOutput) SetId(v string) *UpdateExtensionAssociationOutput { + s.Id = &v + return s +} + +// SetParameters sets the Parameters field's value. +func (s *UpdateExtensionAssociationOutput) SetParameters(v map[string]*string) *UpdateExtensionAssociationOutput { + s.Parameters = v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *UpdateExtensionAssociationOutput) SetResourceArn(v string) *UpdateExtensionAssociationOutput { + s.ResourceArn = &v + return s +} + +type UpdateExtensionInput struct { + _ struct{} `type:"structure"` + + // The actions defined in the extension. + Actions map[string][]*Action `min:"1" type:"map"` + + // Information about the extension. + Description *string `type:"string"` + + // The name, the ID, or the Amazon Resource Name (ARN) of the extension. + // + // ExtensionIdentifier is a required field + ExtensionIdentifier *string `location:"uri" locationName:"ExtensionIdentifier" min:"1" type:"string" required:"true"` + + // One or more parameters for the actions called by the extension. + Parameters map[string]*Parameter `min:"1" type:"map"` + + // The extension version number. + VersionNumber *int64 `type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateExtensionInput) 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 UpdateExtensionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateExtensionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateExtensionInput"} + if s.Actions != nil && len(s.Actions) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Actions", 1)) + } + if s.ExtensionIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ExtensionIdentifier")) + } + if s.ExtensionIdentifier != nil && len(*s.ExtensionIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ExtensionIdentifier", 1)) + } + if s.Parameters != nil && len(s.Parameters) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Parameters", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetActions sets the Actions field's value. +func (s *UpdateExtensionInput) SetActions(v map[string][]*Action) *UpdateExtensionInput { + s.Actions = v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateExtensionInput) SetDescription(v string) *UpdateExtensionInput { + s.Description = &v + return s +} + +// SetExtensionIdentifier sets the ExtensionIdentifier field's value. +func (s *UpdateExtensionInput) SetExtensionIdentifier(v string) *UpdateExtensionInput { + s.ExtensionIdentifier = &v + return s +} + +// SetParameters sets the Parameters field's value. +func (s *UpdateExtensionInput) SetParameters(v map[string]*Parameter) *UpdateExtensionInput { + s.Parameters = v + return s +} + +// SetVersionNumber sets the VersionNumber field's value. +func (s *UpdateExtensionInput) SetVersionNumber(v int64) *UpdateExtensionInput { + s.VersionNumber = &v + return s +} + +type UpdateExtensionOutput struct { + _ struct{} `type:"structure"` + + // The actions defined in the extension. + Actions map[string][]*Action `min:"1" type:"map"` + + // The system-generated Amazon Resource Name (ARN) for the extension. + Arn *string `min:"20" type:"string"` + + // Information about the extension. + Description *string `type:"string"` + + // The system-generated ID of the extension. + Id *string `type:"string"` + + // The extension name. + Name *string `min:"1" type:"string"` + + // The parameters accepted by the extension. You specify parameter values when + // you associate the extension to an AppConfig resource by using the CreateExtensionAssociation + // API action. For Lambda extension actions, these parameters are included in + // the Lambda request object. + Parameters map[string]*Parameter `min:"1" type:"map"` + + // The extension version number. + VersionNumber *int64 `type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateExtensionOutput) 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 UpdateExtensionOutput) GoString() string { + return s.String() +} + +// SetActions sets the Actions field's value. +func (s *UpdateExtensionOutput) SetActions(v map[string][]*Action) *UpdateExtensionOutput { + s.Actions = v + return s +} + +// SetArn sets the Arn field's value. +func (s *UpdateExtensionOutput) SetArn(v string) *UpdateExtensionOutput { + s.Arn = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateExtensionOutput) SetDescription(v string) *UpdateExtensionOutput { + s.Description = &v + return s +} + +// SetId sets the Id field's value. +func (s *UpdateExtensionOutput) SetId(v string) *UpdateExtensionOutput { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateExtensionOutput) SetName(v string) *UpdateExtensionOutput { + s.Name = &v + return s +} + +// SetParameters sets the Parameters field's value. +func (s *UpdateExtensionOutput) SetParameters(v map[string]*Parameter) *UpdateExtensionOutput { + s.Parameters = v + return s +} + +// SetVersionNumber sets the VersionNumber field's value. +func (s *UpdateExtensionOutput) SetVersionNumber(v int64) *UpdateExtensionOutput { + s.VersionNumber = &v + return s +} + type ValidateConfigurationInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -9515,6 +12351,42 @@ func (s *Validator) SetType(v string) *Validator { return s } +const ( + // ActionPointPreCreateHostedConfigurationVersion is a ActionPoint enum value + ActionPointPreCreateHostedConfigurationVersion = "PRE_CREATE_HOSTED_CONFIGURATION_VERSION" + + // ActionPointPreStartDeployment is a ActionPoint enum value + ActionPointPreStartDeployment = "PRE_START_DEPLOYMENT" + + // ActionPointOnDeploymentStart is a ActionPoint enum value + ActionPointOnDeploymentStart = "ON_DEPLOYMENT_START" + + // ActionPointOnDeploymentStep is a ActionPoint enum value + ActionPointOnDeploymentStep = "ON_DEPLOYMENT_STEP" + + // ActionPointOnDeploymentBaking is a ActionPoint enum value + ActionPointOnDeploymentBaking = "ON_DEPLOYMENT_BAKING" + + // ActionPointOnDeploymentComplete is a ActionPoint enum value + ActionPointOnDeploymentComplete = "ON_DEPLOYMENT_COMPLETE" + + // ActionPointOnDeploymentRolledBack is a ActionPoint enum value + ActionPointOnDeploymentRolledBack = "ON_DEPLOYMENT_ROLLED_BACK" +) + +// ActionPoint_Values returns all elements of the ActionPoint enum +func ActionPoint_Values() []string { + return []string{ + ActionPointPreCreateHostedConfigurationVersion, + ActionPointPreStartDeployment, + ActionPointOnDeploymentStart, + ActionPointOnDeploymentStep, + ActionPointOnDeploymentBaking, + ActionPointOnDeploymentComplete, + ActionPointOnDeploymentRolledBack, + } +} + const ( // BadRequestReasonInvalidConfiguration is a BadRequestReason enum value BadRequestReasonInvalidConfiguration = "InvalidConfiguration" diff --git a/service/appconfig/appconfigiface/interface.go b/service/appconfig/appconfigiface/interface.go index 3068c11c48..22023d0fde 100644 --- a/service/appconfig/appconfigiface/interface.go +++ b/service/appconfig/appconfigiface/interface.go @@ -76,6 +76,14 @@ type AppConfigAPI interface { CreateEnvironmentWithContext(aws.Context, *appconfig.CreateEnvironmentInput, ...request.Option) (*appconfig.CreateEnvironmentOutput, error) CreateEnvironmentRequest(*appconfig.CreateEnvironmentInput) (*request.Request, *appconfig.CreateEnvironmentOutput) + CreateExtension(*appconfig.CreateExtensionInput) (*appconfig.CreateExtensionOutput, error) + CreateExtensionWithContext(aws.Context, *appconfig.CreateExtensionInput, ...request.Option) (*appconfig.CreateExtensionOutput, error) + CreateExtensionRequest(*appconfig.CreateExtensionInput) (*request.Request, *appconfig.CreateExtensionOutput) + + CreateExtensionAssociation(*appconfig.CreateExtensionAssociationInput) (*appconfig.CreateExtensionAssociationOutput, error) + CreateExtensionAssociationWithContext(aws.Context, *appconfig.CreateExtensionAssociationInput, ...request.Option) (*appconfig.CreateExtensionAssociationOutput, error) + CreateExtensionAssociationRequest(*appconfig.CreateExtensionAssociationInput) (*request.Request, *appconfig.CreateExtensionAssociationOutput) + CreateHostedConfigurationVersion(*appconfig.CreateHostedConfigurationVersionInput) (*appconfig.CreateHostedConfigurationVersionOutput, error) CreateHostedConfigurationVersionWithContext(aws.Context, *appconfig.CreateHostedConfigurationVersionInput, ...request.Option) (*appconfig.CreateHostedConfigurationVersionOutput, error) CreateHostedConfigurationVersionRequest(*appconfig.CreateHostedConfigurationVersionInput) (*request.Request, *appconfig.CreateHostedConfigurationVersionOutput) @@ -96,6 +104,14 @@ type AppConfigAPI interface { DeleteEnvironmentWithContext(aws.Context, *appconfig.DeleteEnvironmentInput, ...request.Option) (*appconfig.DeleteEnvironmentOutput, error) DeleteEnvironmentRequest(*appconfig.DeleteEnvironmentInput) (*request.Request, *appconfig.DeleteEnvironmentOutput) + DeleteExtension(*appconfig.DeleteExtensionInput) (*appconfig.DeleteExtensionOutput, error) + DeleteExtensionWithContext(aws.Context, *appconfig.DeleteExtensionInput, ...request.Option) (*appconfig.DeleteExtensionOutput, error) + DeleteExtensionRequest(*appconfig.DeleteExtensionInput) (*request.Request, *appconfig.DeleteExtensionOutput) + + DeleteExtensionAssociation(*appconfig.DeleteExtensionAssociationInput) (*appconfig.DeleteExtensionAssociationOutput, error) + DeleteExtensionAssociationWithContext(aws.Context, *appconfig.DeleteExtensionAssociationInput, ...request.Option) (*appconfig.DeleteExtensionAssociationOutput, error) + DeleteExtensionAssociationRequest(*appconfig.DeleteExtensionAssociationInput) (*request.Request, *appconfig.DeleteExtensionAssociationOutput) + DeleteHostedConfigurationVersion(*appconfig.DeleteHostedConfigurationVersionInput) (*appconfig.DeleteHostedConfigurationVersionOutput, error) DeleteHostedConfigurationVersionWithContext(aws.Context, *appconfig.DeleteHostedConfigurationVersionInput, ...request.Option) (*appconfig.DeleteHostedConfigurationVersionOutput, error) DeleteHostedConfigurationVersionRequest(*appconfig.DeleteHostedConfigurationVersionInput) (*request.Request, *appconfig.DeleteHostedConfigurationVersionOutput) @@ -124,6 +140,14 @@ type AppConfigAPI interface { GetEnvironmentWithContext(aws.Context, *appconfig.GetEnvironmentInput, ...request.Option) (*appconfig.GetEnvironmentOutput, error) GetEnvironmentRequest(*appconfig.GetEnvironmentInput) (*request.Request, *appconfig.GetEnvironmentOutput) + GetExtension(*appconfig.GetExtensionInput) (*appconfig.GetExtensionOutput, error) + GetExtensionWithContext(aws.Context, *appconfig.GetExtensionInput, ...request.Option) (*appconfig.GetExtensionOutput, error) + GetExtensionRequest(*appconfig.GetExtensionInput) (*request.Request, *appconfig.GetExtensionOutput) + + GetExtensionAssociation(*appconfig.GetExtensionAssociationInput) (*appconfig.GetExtensionAssociationOutput, error) + GetExtensionAssociationWithContext(aws.Context, *appconfig.GetExtensionAssociationInput, ...request.Option) (*appconfig.GetExtensionAssociationOutput, error) + GetExtensionAssociationRequest(*appconfig.GetExtensionAssociationInput) (*request.Request, *appconfig.GetExtensionAssociationOutput) + GetHostedConfigurationVersion(*appconfig.GetHostedConfigurationVersionInput) (*appconfig.GetHostedConfigurationVersionOutput, error) GetHostedConfigurationVersionWithContext(aws.Context, *appconfig.GetHostedConfigurationVersionInput, ...request.Option) (*appconfig.GetHostedConfigurationVersionOutput, error) GetHostedConfigurationVersionRequest(*appconfig.GetHostedConfigurationVersionInput) (*request.Request, *appconfig.GetHostedConfigurationVersionOutput) @@ -163,6 +187,20 @@ type AppConfigAPI interface { ListEnvironmentsPages(*appconfig.ListEnvironmentsInput, func(*appconfig.ListEnvironmentsOutput, bool) bool) error ListEnvironmentsPagesWithContext(aws.Context, *appconfig.ListEnvironmentsInput, func(*appconfig.ListEnvironmentsOutput, bool) bool, ...request.Option) error + ListExtensionAssociations(*appconfig.ListExtensionAssociationsInput) (*appconfig.ListExtensionAssociationsOutput, error) + ListExtensionAssociationsWithContext(aws.Context, *appconfig.ListExtensionAssociationsInput, ...request.Option) (*appconfig.ListExtensionAssociationsOutput, error) + ListExtensionAssociationsRequest(*appconfig.ListExtensionAssociationsInput) (*request.Request, *appconfig.ListExtensionAssociationsOutput) + + ListExtensionAssociationsPages(*appconfig.ListExtensionAssociationsInput, func(*appconfig.ListExtensionAssociationsOutput, bool) bool) error + ListExtensionAssociationsPagesWithContext(aws.Context, *appconfig.ListExtensionAssociationsInput, func(*appconfig.ListExtensionAssociationsOutput, bool) bool, ...request.Option) error + + ListExtensions(*appconfig.ListExtensionsInput) (*appconfig.ListExtensionsOutput, error) + ListExtensionsWithContext(aws.Context, *appconfig.ListExtensionsInput, ...request.Option) (*appconfig.ListExtensionsOutput, error) + ListExtensionsRequest(*appconfig.ListExtensionsInput) (*request.Request, *appconfig.ListExtensionsOutput) + + ListExtensionsPages(*appconfig.ListExtensionsInput, func(*appconfig.ListExtensionsOutput, bool) bool) error + ListExtensionsPagesWithContext(aws.Context, *appconfig.ListExtensionsInput, func(*appconfig.ListExtensionsOutput, bool) bool, ...request.Option) error + ListHostedConfigurationVersions(*appconfig.ListHostedConfigurationVersionsInput) (*appconfig.ListHostedConfigurationVersionsOutput, error) ListHostedConfigurationVersionsWithContext(aws.Context, *appconfig.ListHostedConfigurationVersionsInput, ...request.Option) (*appconfig.ListHostedConfigurationVersionsOutput, error) ListHostedConfigurationVersionsRequest(*appconfig.ListHostedConfigurationVersionsInput) (*request.Request, *appconfig.ListHostedConfigurationVersionsOutput) @@ -206,6 +244,14 @@ type AppConfigAPI interface { UpdateEnvironmentWithContext(aws.Context, *appconfig.UpdateEnvironmentInput, ...request.Option) (*appconfig.UpdateEnvironmentOutput, error) UpdateEnvironmentRequest(*appconfig.UpdateEnvironmentInput) (*request.Request, *appconfig.UpdateEnvironmentOutput) + UpdateExtension(*appconfig.UpdateExtensionInput) (*appconfig.UpdateExtensionOutput, error) + UpdateExtensionWithContext(aws.Context, *appconfig.UpdateExtensionInput, ...request.Option) (*appconfig.UpdateExtensionOutput, error) + UpdateExtensionRequest(*appconfig.UpdateExtensionInput) (*request.Request, *appconfig.UpdateExtensionOutput) + + UpdateExtensionAssociation(*appconfig.UpdateExtensionAssociationInput) (*appconfig.UpdateExtensionAssociationOutput, error) + UpdateExtensionAssociationWithContext(aws.Context, *appconfig.UpdateExtensionAssociationInput, ...request.Option) (*appconfig.UpdateExtensionAssociationOutput, error) + UpdateExtensionAssociationRequest(*appconfig.UpdateExtensionAssociationInput) (*request.Request, *appconfig.UpdateExtensionAssociationOutput) + ValidateConfiguration(*appconfig.ValidateConfigurationInput) (*appconfig.ValidateConfigurationOutput, error) ValidateConfigurationWithContext(aws.Context, *appconfig.ValidateConfigurationInput, ...request.Option) (*appconfig.ValidateConfigurationOutput, error) ValidateConfigurationRequest(*appconfig.ValidateConfigurationInput) (*request.Request, *appconfig.ValidateConfigurationOutput)