From ab319580a5ba56f8c6f46e912baa8d8dec10d6a3 Mon Sep 17 00:00:00 2001 From: aws-sdk-go-automation <43143561+aws-sdk-go-automation@users.noreply.github.com> Date: Tue, 17 Jan 2023 11:21:37 -0800 Subject: [PATCH] Release v1.44.181 (2023-01-17) (#4692) Release v1.44.181 (2023-01-17) === ### Service Client Updates * `service/billingconductor`: Updates service API and documentation * `service/cloud9`: Updates service API * Added minimum value to AutomaticStopTimeMinutes parameter. * `service/imagebuilder`: Updates service API and documentation * `service/network-firewall`: Updates service API and documentation --- CHANGELOG.md | 10 + aws/endpoints/defaults.go | 3 + aws/version.go | 2 +- .../billingconductor/2021-07-30/api-2.json | 20 +- .../billingconductor/2021-07-30/docs-2.json | 16 +- .../2021-07-30/endpoint-rule-set-1.json | 75 ++--- .../2021-07-30/endpoint-tests-1.json | 227 ++++++++++++- models/apis/cloud9/2017-09-23/api-2.json | 3 +- .../2017-09-23/endpoint-rule-set-1.json | 11 +- .../apis/imagebuilder/2019-12-02/api-2.json | 29 +- .../apis/imagebuilder/2019-12-02/docs-2.json | 114 ++++--- .../2019-12-02/endpoint-rule-set-1.json | 300 ++++++++++++++++++ .../2019-12-02/endpoint-tests-1.json | 43 +++ .../network-firewall/2020-11-12/api-2.json | 10 +- .../network-firewall/2020-11-12/docs-2.json | 12 +- models/endpoints/endpoints.json | 1 + service/billingconductor/api.go | 63 +++- service/imagebuilder/api.go | 249 +++++++++++---- service/networkfirewall/api.go | 50 ++- 19 files changed, 1037 insertions(+), 201 deletions(-) create mode 100644 models/apis/imagebuilder/2019-12-02/endpoint-rule-set-1.json create mode 100644 models/apis/imagebuilder/2019-12-02/endpoint-tests-1.json diff --git a/CHANGELOG.md b/CHANGELOG.md index e20e4f5b260..0e4026db756 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,13 @@ +Release v1.44.181 (2023-01-17) +=== + +### Service Client Updates +* `service/billingconductor`: Updates service API and documentation +* `service/cloud9`: Updates service API + * Added minimum value to AutomaticStopTimeMinutes parameter. +* `service/imagebuilder`: Updates service API and documentation +* `service/network-firewall`: Updates service API and documentation + Release v1.44.180 (2023-01-13) === diff --git a/aws/endpoints/defaults.go b/aws/endpoints/defaults.go index 7635f10de8f..0d8ae0a7247 100644 --- a/aws/endpoints/defaults.go +++ b/aws/endpoints/defaults.go @@ -3716,6 +3716,9 @@ var awsPartition = partition{ endpointKey{ Region: "eu-west-3", }: endpoint{}, + endpointKey{ + Region: "me-central-1", + }: endpoint{}, endpointKey{ Region: "me-south-1", }: endpoint{}, diff --git a/aws/version.go b/aws/version.go index 5659396dda9..8266fc4edd6 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.180" +const SDKVersion = "1.44.181" diff --git a/models/apis/billingconductor/2021-07-30/api-2.json b/models/apis/billingconductor/2021-07-30/api-2.json index 668b75bc033..f96bd553f67 100644 --- a/models/apis/billingconductor/2021-07-30/api-2.json +++ b/models/apis/billingconductor/2021-07-30/api-2.json @@ -959,7 +959,9 @@ "Service":{"shape":"Service"}, "Tags":{"shape":"TagMap"}, "BillingEntity":{"shape":"BillingEntity"}, - "Tiering":{"shape":"CreateTieringInput"} + "Tiering":{"shape":"CreateTieringInput"}, + "UsageType":{"shape":"UsageType"}, + "Operation":{"shape":"Operation"} } }, "CreatePricingRuleOutput":{ @@ -1586,6 +1588,12 @@ "type":"long", "min":0 }, + "Operation":{ + "type":"string", + "max":256, + "min":1, + "pattern":"\\S+" + }, "PricingPlanArn":{ "type":"string", "pattern":"(arn:aws(-cn)?:billingconductor::[0-9]{12}:pricingplan/)?[a-zA-Z0-9]{10}" @@ -1963,7 +1971,9 @@ "AssociatedPricingPlanCount":{"shape":"NumberOfPricingPlansAssociatedWith"}, "LastModifiedTime":{"shape":"Instant"}, "BillingEntity":{"shape":"BillingEntity"}, - "Tiering":{"shape":"UpdateTieringInput"} + "Tiering":{"shape":"UpdateTieringInput"}, + "UsageType":{"shape":"UsageType"}, + "Operation":{"shape":"Operation"} } }, "UpdateTieringInput":{ @@ -1973,6 +1983,12 @@ "FreeTier":{"shape":"UpdateFreeTierConfig"} } }, + "UsageType":{ + "type":"string", + "max":256, + "min":1, + "pattern":"\\S+" + }, "ValidationException":{ "type":"structure", "required":["Message"], diff --git a/models/apis/billingconductor/2021-07-30/docs-2.json b/models/apis/billingconductor/2021-07-30/docs-2.json index 5daadad1a38..fa26b7b9bf7 100644 --- a/models/apis/billingconductor/2021-07-30/docs-2.json +++ b/models/apis/billingconductor/2021-07-30/docs-2.json @@ -939,6 +939,13 @@ "UpdatePricingRuleOutput$AssociatedPricingPlanCount": "

The pricing plans count that this pricing rule is associated with.

" } }, + "Operation": { + "base": null, + "refs": { + "CreatePricingRuleInput$Operation": "

Operation is the specific Amazon Web Services action covered by this line item. This describes the specific usage of the line item.

If the Scope attribute is set to SKU, this attribute indicates which operation the PricingRule is modifying. For example, a value of RunInstances:0202 indicates the operation of running an Amazon EC2 instance.

", + "UpdatePricingRuleOutput$Operation": "

Operation refers to the specific Amazon Web Services covered by this line item. This describes the specific usage of the line item.

If the Scope attribute is set to SKU, this attribute indicates which operation the PricingRule is modifying. For example, a value of RunInstances:0202 indicates the operation of running an Amazon EC2 instance.

" + } + }, "PricingPlanArn": { "base": null, "refs": { @@ -1106,7 +1113,7 @@ "Service": { "base": null, "refs": { - "CreatePricingRuleInput$Service": "

If the Scope attribute is set to SERVICE, the attribute indicates which service the PricingRule is applicable for.

", + "CreatePricingRuleInput$Service": "

If the Scope attribute is set to SERVICE or SKU, the attribute indicates which service the PricingRule is applicable for.

", "PricingRuleListElement$Service": "

If the Scope attribute is SERVICE, this attribute indicates which service the PricingRule is applicable for.

", "UpdatePricingRuleOutput$Service": "

If the Scope attribute is set to SERVICE, the attribute indicates which service the PricingRule is applicable for.

" } @@ -1304,6 +1311,13 @@ "UpdatePricingRuleOutput$Tiering": "

The set of tiering configurations for the pricing rule.

" } }, + "UsageType": { + "base": null, + "refs": { + "CreatePricingRuleInput$UsageType": "

Usage type is the unit that each service uses to measure the usage of a specific type of resource.

If the Scope attribute is set to SKU, this attribute indicates which usage type the PricingRule is modifying. For example, USW2-BoxUsage:m2.2xlarge describes an M2 High Memory Double Extra Large instance in the US West (Oregon) Region.

</p> 
", + "UpdatePricingRuleOutput$UsageType": "

Usage type is the unit that each service uses to measure the usage of a specific type of resource.

If the Scope attribute is set to SKU, this attribute indicates which usage type the PricingRule is modifying. For example, USW2-BoxUsage:m2.2xlarge describes an M2 High Memory Double Extra Large instance in the US West (Oregon) Region.

" + } + }, "ValidationException": { "base": "

The input doesn't match with the constraints specified by Amazon Web Services services.

", "refs": { diff --git a/models/apis/billingconductor/2021-07-30/endpoint-rule-set-1.json b/models/apis/billingconductor/2021-07-30/endpoint-rule-set-1.json index c5e6c8999b4..1178cc8d240 100644 --- a/models/apis/billingconductor/2021-07-30/endpoint-rule-set-1.json +++ b/models/apis/billingconductor/2021-07-30/endpoint-rule-set-1.json @@ -52,15 +52,6 @@ "ref": "Endpoint" } ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" } ], "type": "tree", @@ -196,15 +187,7 @@ "conditions": [], "endpoint": { "url": "https://billingconductor-fips.{Region}.api.aws", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingRegion": "us-east-1", - "signingName": "billingconductor" - } - ] - }, + "properties": {}, "headers": {} }, "type": "endpoint" @@ -256,15 +239,7 @@ "conditions": [], "endpoint": { "url": "https://billingconductor-fips.{Region}.amazonaws.com", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingRegion": "us-east-1", - "signingName": "billingconductor" - } - ] - }, + "properties": {}, "headers": {} }, "type": "endpoint" @@ -316,15 +291,7 @@ "conditions": [], "endpoint": { "url": "https://billingconductor.{Region}.api.aws", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingRegion": "us-east-1", - "signingName": "billingconductor" - } - ] - }, + "properties": {}, "headers": {} }, "type": "endpoint" @@ -417,12 +384,18 @@ "rules": [ { "conditions": [], - "endpoint": { - "url": "https://billingconductor-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://billingconductor-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] } ] }, @@ -527,12 +500,18 @@ "rules": [ { "conditions": [], - "endpoint": { - "url": "https://billingconductor.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://billingconductor.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] } ] }, diff --git a/models/apis/billingconductor/2021-07-30/endpoint-tests-1.json b/models/apis/billingconductor/2021-07-30/endpoint-tests-1.json index e0583305d6a..2733c3fd064 100644 --- a/models/apis/billingconductor/2021-07-30/endpoint-tests-1.json +++ b/models/apis/billingconductor/2021-07-30/endpoint-tests-1.json @@ -1,5 +1,83 @@ { "testCases": [ + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://billingconductor-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseDualStack": true, + "UseFIPS": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://billingconductor-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://billingconductor.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://billingconductor.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://billingconductor-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://billingconductor.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseDualStack": false, + "UseFIPS": false + } + }, { "documentation": "For region aws-global with FIPS disabled and DualStack disabled", "expect": { @@ -17,9 +95,148 @@ } }, "params": { + "Region": "aws-global", "UseDualStack": false, - "UseFIPS": false, - "Region": "aws-global" + "UseFIPS": false + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://billingconductor-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseDualStack": true, + "UseFIPS": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://billingconductor-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://billingconductor.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "billingconductor", + "signingRegion": "us-east-1" + } + ] + }, + "url": "https://billingconductor.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://billingconductor-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseDualStack": true, + "UseFIPS": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://billingconductor-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://billingconductor.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://billingconductor.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://billingconductor-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://billingconductor.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseDualStack": false, + "UseFIPS": false } }, { @@ -30,9 +247,9 @@ } }, "params": { + "Region": "us-east-1", "UseDualStack": false, "UseFIPS": false, - "Region": "us-east-1", "Endpoint": "https://example.com" } }, @@ -42,9 +259,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { + "Region": "us-east-1", "UseDualStack": false, "UseFIPS": true, - "Region": "us-east-1", "Endpoint": "https://example.com" } }, @@ -54,9 +271,9 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { + "Region": "us-east-1", "UseDualStack": true, "UseFIPS": false, - "Region": "us-east-1", "Endpoint": "https://example.com" } } diff --git a/models/apis/cloud9/2017-09-23/api-2.json b/models/apis/cloud9/2017-09-23/api-2.json index 02f121e0e72..a57b337bf02 100644 --- a/models/apis/cloud9/2017-09-23/api-2.json +++ b/models/apis/cloud9/2017-09-23/api-2.json @@ -247,7 +247,8 @@ "AutomaticStopTimeMinutes":{ "type":"integer", "box":true, - "max":20160 + "max":20160, + "min":0 }, "BadRequestException":{ "type":"structure", diff --git a/models/apis/cloud9/2017-09-23/endpoint-rule-set-1.json b/models/apis/cloud9/2017-09-23/endpoint-rule-set-1.json index 5666c414616..7f41719e6ef 100644 --- a/models/apis/cloud9/2017-09-23/endpoint-rule-set-1.json +++ b/models/apis/cloud9/2017-09-23/endpoint-rule-set-1.json @@ -3,7 +3,7 @@ "parameters": { "Region": { "builtIn": "AWS::Region", - "required": false, + "required": true, "documentation": "The AWS region used to dispatch the request.", "type": "String" }, @@ -52,15 +52,6 @@ "ref": "Endpoint" } ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" } ], "type": "tree", diff --git a/models/apis/imagebuilder/2019-12-02/api-2.json b/models/apis/imagebuilder/2019-12-02/api-2.json index 6072a1fde57..e028973312a 100644 --- a/models/apis/imagebuilder/2019-12-02/api-2.json +++ b/models/apis/imagebuilder/2019-12-02/api-2.json @@ -1048,7 +1048,9 @@ "kmsKeyId":{"shape":"NonEmptyString"}, "encrypted":{"shape":"NullableBoolean"}, "dateCreated":{"shape":"DateTime"}, - "tags":{"shape":"TagMap"} + "tags":{"shape":"TagMap"}, + "publisher":{"shape":"NonEmptyString"}, + "obfuscate":{"shape":"Boolean"} } }, "ComponentBuildVersionArn":{ @@ -1158,7 +1160,9 @@ "description":{"shape":"NonEmptyString"}, "changeDescription":{"shape":"NonEmptyString"}, "dateCreated":{"shape":"DateTime"}, - "tags":{"shape":"TagMap"} + "tags":{"shape":"TagMap"}, + "publisher":{"shape":"NonEmptyString"}, + "obfuscate":{"shape":"Boolean"} } }, "ComponentSummaryList":{ @@ -2038,7 +2042,8 @@ "dateCreated":{"shape":"DateTime"}, "outputResources":{"shape":"OutputResources"}, "tags":{"shape":"TagMap"}, - "buildType":{"shape":"BuildType"} + "buildType":{"shape":"BuildType"}, + "imageSource":{"shape":"ImageSource"} } }, "ImageBuildVersionArn":{ @@ -2129,6 +2134,15 @@ "type":"list", "member":{"shape":"ImageRecipeSummary"} }, + "ImageSource":{ + "type":"string", + "enum":[ + "AMAZON_MANAGED", + "AWS_MARKETPLACE", + "IMPORTED", + "CUSTOM" + ] + }, "ImageState":{ "type":"structure", "members":{ @@ -2166,7 +2180,8 @@ "dateCreated":{"shape":"DateTime"}, "outputResources":{"shape":"OutputResources"}, "tags":{"shape":"TagMap"}, - "buildType":{"shape":"BuildType"} + "buildType":{"shape":"BuildType"}, + "imageSource":{"shape":"ImageSource"} } }, "ImageSummaryList":{ @@ -2203,7 +2218,8 @@ "osVersion":{"shape":"OsVersion"}, "owner":{"shape":"NonEmptyString"}, "dateCreated":{"shape":"DateTime"}, - "buildType":{"shape":"BuildType"} + "buildType":{"shape":"BuildType"}, + "imageSource":{"shape":"ImageSource"} } }, "ImageVersionArn":{ @@ -2762,7 +2778,8 @@ "enum":[ "Self", "Shared", - "Amazon" + "Amazon", + "ThirdParty" ] }, "PaginationToken":{ diff --git a/models/apis/imagebuilder/2019-12-02/docs-2.json b/models/apis/imagebuilder/2019-12-02/docs-2.json index bf0699e3140..64760dc2f38 100644 --- a/models/apis/imagebuilder/2019-12-02/docs-2.json +++ b/models/apis/imagebuilder/2019-12-02/docs-2.json @@ -31,15 +31,15 @@ "ImportComponent": "

Imports a component and transforms its data into a component document.

", "ImportVmImage": "

When you export your virtual machine (VM) from its virtualization environment, that process creates a set of one or more disk container files that act as snapshots of your VM’s environment, settings, and data. The Amazon EC2 API ImportImage action uses those files to import your VM and create an AMI. To import using the CLI command, see import-image

You can reference the task ID from the VM import to pull in the AMI that the import created as the base image for your Image Builder recipe.

", "ListComponentBuildVersions": "

Returns the list of component build versions for the specified semantic version.

The semantic version has four nodes: <major>.<minor>.<patch>/<build>. You can assign values for the first three, and can filter on all of them.

Filtering: With semantic versioning, you have the flexibility to use wildcards (x) to specify the most recent versions or nodes when selecting the base image or components for your recipe. When you use a wildcard in any node, all nodes to the right of the first wildcard must also be wildcards.

", - "ListComponents": "

Returns the list of component build versions for the specified semantic version.

The semantic version has four nodes: <major>.<minor>.<patch>/<build>. You can assign values for the first three, and can filter on all of them.

Filtering: With semantic versioning, you have the flexibility to use wildcards (x) to specify the most recent versions or nodes when selecting the base image or components for your recipe. When you use a wildcard in any node, all nodes to the right of the first wildcard must also be wildcards.

", + "ListComponents": "

Returns the list of components that can be filtered by name, or by using the listed filters to streamline results. Newly created components can take up to two minutes to appear in the ListComponents API Results.

The semantic version has four nodes: <major>.<minor>.<patch>/<build>. You can assign values for the first three, and can filter on all of them.

Filtering: With semantic versioning, you have the flexibility to use wildcards (x) to specify the most recent versions or nodes when selecting the base image or components for your recipe. When you use a wildcard in any node, all nodes to the right of the first wildcard must also be wildcards.

", "ListContainerRecipes": "

Returns a list of container recipes.

", "ListDistributionConfigurations": "

Returns a list of distribution configurations.

", "ListImageBuildVersions": "

Returns a list of image build versions.

", "ListImagePackages": "

List the Packages that are associated with an Image Build Version, as determined by Amazon Web Services Systems Manager Inventory at build time.

", - "ListImagePipelineImages": "

Returns a list of images created by the specified pipeline.

", + "ListImagePipelineImages": "

Returns a list of images created by the specified pipeline.

", "ListImagePipelines": "

Returns a list of image pipelines.

", "ListImageRecipes": "

Returns a list of image recipes.

", - "ListImages": "

Returns the list of images that you have access to.

", + "ListImages": "

Returns the list of images that you have access to. Newly created images can take up to two minutes to appear in the ListImages API Results.

", "ListInfrastructureConfigurations": "

Returns a list of infrastructure configurations.

", "ListTagsForResource": "

Returns the list of tags for the specified resource.

", "PutComponentPolicy": "

Applies a policy to a component. We recommend that you call the RAM API CreateResourceShare to share resources. If you call the Image Builder API PutComponentPolicy, you must also call the RAM API PromoteResourceShareCreatedFromPolicy in order for the resource to be visible to all principals with whom the resource is shared.

", @@ -70,7 +70,7 @@ } }, "AdditionalInstanceConfiguration": { - "base": "

In addition to your infrastruction configuration, these settings provide an extra layer of control over your build instances. For instances where Image Builder installs the Systems Manager agent, you can choose whether to keep it for the AMI that you create. You can also specify commands to run on launch for all of your build instances.

", + "base": "

In addition to your infrastructure configuration, these settings provide an extra layer of control over your build instances. You can also specify commands to run on launch for all of your build instances.

Image Builder does not automatically install the Systems Manager agent on Windows instances. If your base image includes the Systems Manager agent, then the AMI that you create will also include the agent. For Linux instances, if the base image does not already include the Systems Manager agent, Image Builder installs it. For Linux instances where Image Builder installs the Systems Manager agent, you can choose whether to keep it for the AMI that you create.

", "refs": { "CreateImageRecipeRequest$additionalInstanceConfiguration": "

Specify additional settings and launch scripts for your build instances.

", "ImageRecipe$additionalInstanceConfiguration": "

Before you create a new AMI, Image Builder launches temporary Amazon EC2 instances to build and test your image configuration. Instance configuration adds a layer of control over those instances. You can define settings and add scripts to run when an instance is launched from your AMI.

" @@ -114,9 +114,11 @@ "Boolean": { "base": null, "refs": { + "Component$obfuscate": "

Indicates whether component source is hidden from view in the console, and from component detail results for API, CLI, or SDK operations.

", + "ComponentSummary$obfuscate": "

Indicates whether component source is hidden from view in the console, and from component detail results for API, CLI, or SDK operations.

", "FastLaunchConfiguration$enabled": "

A Boolean that represents the current state of faster launching for the Windows AMI. Set to true to start using Windows faster launching, or false to stop using it.

", "LaunchTemplateConfiguration$setDefaultVersion": "

Set the specified Amazon EC2 launch template as the default launch template for the specified account.

", - "ListComponentsRequest$byName": "

Returns the list of component build versions for the specified name.

", + "ListComponentsRequest$byName": "

Returns the list of components for the specified name.

", "ListImagesRequest$byName": "

Requests a list of images with a specific recipe name.

" } }, @@ -208,10 +210,10 @@ "ComponentConfigurationList": { "base": null, "refs": { - "ContainerRecipe$components": "

Components for build and test that are included in the container recipe.

", - "CreateContainerRecipeRequest$components": "

Components for build and test that are included in the container recipe.

", - "CreateImageRecipeRequest$components": "

The components of the image recipe.

", - "ImageRecipe$components": "

The components of the image recipe.

" + "ContainerRecipe$components": "

Build and test components that are included in the container recipe. Recipes require a minimum of one build component, and can have a maximum of 20 build and test components in any combination.

", + "CreateContainerRecipeRequest$components": "

Components for build and test that are included in the container recipe. Recipes require a minimum of one build component, and can have a maximum of 20 build and test components in any combination.

", + "CreateImageRecipeRequest$components": "

The components included in the image recipe.

", + "ImageRecipe$components": "

The components that are included in the image recipe. Recipes require a minimum of one build component, and can have a maximum of 20 build and test components in any combination.

" } }, "ComponentData": { @@ -247,13 +249,13 @@ "ComponentParameterDetailList": { "base": null, "refs": { - "Component$parameters": "

Contains parameter details for each of the parameters that are defined for the component.

" + "Component$parameters": "

Contains parameter details for each of the parameters that the component document defined for the component.

" } }, "ComponentParameterList": { "base": null, "refs": { - "ComponentConfiguration$parameters": "

A group of parameter settings that are used to configure the component for a specific recipe.

" + "ComponentConfiguration$parameters": "

A group of parameter settings that Image Builder uses to configure the component for a specific recipe.

" } }, "ComponentParameterName": { @@ -310,8 +312,8 @@ "ComponentType": { "base": null, "refs": { - "Component$type": "

The type of the component denotes whether the component is used to build the image or only to test it.

", - "ComponentSummary$type": "

The type of the component denotes whether the component is used to build the image or only to test it.

", + "Component$type": "

The component type specifies whether Image Builder uses the component to build the image or only to test it.

", + "ComponentSummary$type": "

The component type specifies whether Image Builder uses the component to build the image or only to test it.

", "ComponentVersion$type": "

The type of the component denotes whether the component is used to build the image or only to test it.

", "ImportComponentRequest$type": "

The type of the component denotes whether the component is used to build the image, or only to test it.

" } @@ -363,7 +365,7 @@ "base": "

A container recipe.

", "refs": { "GetContainerRecipeResponse$containerRecipe": "

The container recipe object that is returned.

", - "Image$containerRecipe": "

The recipe that is used to create an Image Builder container image.

" + "Image$containerRecipe": "

For container images, this is the container recipe that Image Builder used to create the image. For images that distribute an AMI, this is empty.

" } }, "ContainerRecipeArn": { @@ -480,8 +482,8 @@ "DateTime": { "base": null, "refs": { - "Component$dateCreated": "

The date that the component was created.

", - "ComponentSummary$dateCreated": "

The date that the component was created.

", + "Component$dateCreated": "

The date that Image Builder created the component.

", + "ComponentSummary$dateCreated": "

The original creation date of the component.

", "ComponentVersion$dateCreated": "

The date that the component was created.

", "ContainerRecipe$dateCreated": "

The date when this container recipe was created.

", "ContainerRecipeSummary$dateCreated": "

The date when this container recipe was created.

", @@ -489,14 +491,14 @@ "DistributionConfiguration$dateUpdated": "

The date on which this distribution configuration was last updated.

", "DistributionConfigurationSummary$dateCreated": "

The date on which the distribution configuration was created.

", "DistributionConfigurationSummary$dateUpdated": "

The date on which the distribution configuration was updated.

", - "Image$dateCreated": "

The date on which this image was created.

", + "Image$dateCreated": "

The date on which Image Builder created this image.

", "ImagePipeline$dateCreated": "

The date on which this image pipeline was created.

", "ImagePipeline$dateUpdated": "

The date on which this image pipeline was last updated.

", - "ImagePipeline$dateLastRun": "

The date on which this image pipeline was last run.

", - "ImagePipeline$dateNextRun": "

The date on which this image pipeline will next be run.

", + "ImagePipeline$dateLastRun": "

This is no longer supported, and does not return a value.

", + "ImagePipeline$dateNextRun": "

This is no longer supported, and does not return a value.

", "ImageRecipe$dateCreated": "

The date on which this image recipe was created.

", "ImageRecipeSummary$dateCreated": "

The date on which this image recipe was created.

", - "ImageSummary$dateCreated": "

The date on which this image was created.

", + "ImageSummary$dateCreated": "

The date on which Image Builder created this image.

", "ImageVersion$dateCreated": "

The date on which this specific version of the Image Builder image was created.

", "InfrastructureConfiguration$dateCreated": "

The date on which the infrastructure configuration was created.

", "InfrastructureConfiguration$dateUpdated": "

The date on which the infrastructure configuration was last updated.

", @@ -590,7 +592,7 @@ "base": "

A distribution configuration.

", "refs": { "GetDistributionConfigurationResponse$distributionConfiguration": "

The distribution configuration object.

", - "Image$distributionConfiguration": "

The distribution configuration used when creating this image.

" + "Image$distributionConfiguration": "

The distribution configuration that Image Builder used to create this image.

" } }, "DistributionConfigurationArn": { @@ -877,7 +879,7 @@ "HttpPutResponseHopLimit": { "base": null, "refs": { - "InstanceMetadataOptions$httpPutResponseHopLimit": "

Limit the number of hops that an instance metadata request can traverse to reach its destination.

" + "InstanceMetadataOptions$httpPutResponseHopLimit": "

Limit the number of hops that an instance metadata request can traverse to reach its destination. The default is one hop. However, if HTTP tokens are required, container image builds need a minimum of two hops.

" } }, "HttpTokens": { @@ -977,7 +979,7 @@ "base": "

An image recipe.

", "refs": { "GetImageRecipeResponse$imageRecipe": "

The image recipe object.

", - "Image$imageRecipe": "

The image recipe used when creating the image.

" + "Image$imageRecipe": "

For images that distribute an AMI, this is the image recipe that Image Builder used to create the image. For container images, this is empty.

" } }, "ImageRecipeArn": { @@ -1007,6 +1009,14 @@ "ListImageRecipesResponse$imageRecipeSummaryList": "

The list of image pipelines.

" } }, + "ImageSource": { + "base": null, + "refs": { + "Image$imageSource": "

The origin of the base image that Image Builder used to build this image.

", + "ImageSummary$imageSource": "

The origin of the base image that Image Builder used to build this image.

", + "ImageVersion$imageSource": "

The origin of the base image that Image Builder used to build this image.

" + } + }, "ImageState": { "base": "

Image state shows the image status and the reason for that status.

", "refs": { @@ -1039,7 +1049,7 @@ "refs": { "CreateImagePipelineRequest$imageTestsConfiguration": "

The image test configuration of the image pipeline.

", "CreateImageRequest$imageTestsConfiguration": "

The image tests configuration of the image.

", - "Image$imageTestsConfiguration": "

The image tests configuration used when creating this image.

", + "Image$imageTestsConfiguration": "

The image tests that ran when that Image Builder created this image.

", "ImagePipeline$imageTestsConfiguration": "

The image tests configuration of the image pipeline.

", "UpdateImagePipelineRequest$imageTestsConfiguration": "

The image test configuration of the image pipeline.

" } @@ -1047,16 +1057,16 @@ "ImageTestsTimeoutMinutes": { "base": null, "refs": { - "ImageTestsConfiguration$timeoutMinutes": "

The maximum time in minutes that tests are permitted to run.

" + "ImageTestsConfiguration$timeoutMinutes": "

The maximum time in minutes that tests are permitted to run.

The timeoutMinutes attribute is not currently active. This value is ignored.

" } }, "ImageType": { "base": null, "refs": { - "Image$type": "

Specifies whether this is an AMI or container image.

", + "Image$type": "

Specifies whether this image produces an AMI or a container image.

", "ImageRecipe$type": "

Specifies which type of image is created by the recipe - an AMI or a container image.

", - "ImageSummary$type": "

Specifies whether this is an AMI or container image.

", - "ImageVersion$type": "

Specifies whether this image is an AMI or a container image.

" + "ImageSummary$type": "

Specifies whether this image produces an AMI or a container image.

", + "ImageVersion$type": "

Specifies whether this image produces an AMI or a container image.

" } }, "ImageVersion": { @@ -1107,7 +1117,7 @@ "base": "

Details of the infrastructure configuration.

", "refs": { "GetInfrastructureConfigurationResponse$infrastructureConfiguration": "

The infrastructure configuration object.

", - "Image$infrastructureConfiguration": "

The infrastructure used when creating this image.

" + "Image$infrastructureConfiguration": "

The infrastructure that Image Builder used to create this image.

" } }, "InfrastructureConfigurationArn": { @@ -1417,10 +1427,12 @@ "Component$changeDescription": "

The change description of the component.

", "Component$owner": "

The owner of the component.

", "Component$kmsKeyId": "

The KMS key identifier used to encrypt the component.

", + "Component$publisher": "

Contains the name of the publisher if this is a third-party component. Otherwise, this property is empty.

", "ComponentState$reason": "

Describes how or why the component changed state.

", "ComponentSummary$owner": "

The owner of the component.

", "ComponentSummary$description": "

The description of the component.

", - "ComponentSummary$changeDescription": "

The change description of the component.

", + "ComponentSummary$changeDescription": "

The change description for the current version of the component.

", + "ComponentSummary$publisher": "

Contains the name of the publisher if this is a third-party component. Otherwise, this property is empty.

", "ComponentVersion$description": "

The description of the component.

", "ComponentVersion$owner": "

The owner of the component.

", "Container$region": "

Containers and container images are Region-specific. This is the Region context for the container.

", @@ -1432,9 +1444,9 @@ "ContainerRecipe$workingDirectory": "

The working directory for use during build and test workflows.

", "ContainerRecipeSummary$owner": "

The owner of the container recipe.

", "ContainerRecipeSummary$parentImage": "

The base image for the container recipe.

", - "CreateComponentRequest$description": "

The description of the component. Describes the contents of the component.

", + "CreateComponentRequest$description": "

Describes the contents of the component.

", "CreateComponentRequest$changeDescription": "

The change description of the component. Describes what change has been made in this version, or what makes this version different from other versions of this component.

", - "CreateComponentRequest$kmsKeyId": "

The ID of the KMS key that should be used to encrypt this component.

", + "CreateComponentRequest$kmsKeyId": "

The ID of the KMS key that is used to encrypt this component.

", "CreateComponentResponse$requestId": "

The request ID that uniquely identifies this request.

", "CreateContainerRecipeRequest$description": "

The description of the container recipe.

", "CreateContainerRecipeRequest$imageOsVersionOverride": "

Specifies the operating system version for the base image.

", @@ -1557,7 +1569,7 @@ "CreateInfrastructureConfigurationRequest$terminateInstanceOnFailure": "

The terminate instance on failure setting of the infrastructure configuration. Set to false if you want Image Builder to retain the instance used to configure your AMI if the build or test phase of your workflow fails.

", "EbsInstanceBlockDeviceSpecification$encrypted": "

Use to configure device encryption.

", "EbsInstanceBlockDeviceSpecification$deleteOnTermination": "

Use to configure delete on termination of the associated device.

", - "Image$enhancedImageMetadataEnabled": "

Collects additional information about the image being created, including the operating system (OS) version and package list. This information is used to enhance the overall experience of using EC2 Image Builder. Enabled by default.

", + "Image$enhancedImageMetadataEnabled": "

Indicates whether Image Builder collects additional information about the image, such as the operating system (OS) version and package list.

", "ImagePipeline$enhancedImageMetadataEnabled": "

Collects additional information about the image being created, including the operating system (OS) version and package list. This information is used to enhance the overall experience of using EC2 Image Builder. Enabled by default.

", "ImageTestsConfiguration$imageTestsEnabled": "

Determines if tests should run after building the image. Image Builder defaults to enable tests to run following the image build, before image distribution.

", "InfrastructureConfiguration$terminateInstanceOnFailure": "

The terminate instance on failure configuration of the infrastructure configuration.

", @@ -1594,8 +1606,8 @@ "OsVersion": { "base": null, "refs": { - "Image$osVersion": "

The operating system version of the instance. For example, Amazon Linux 2, Ubuntu 18, or Microsoft Windows Server 2019.

", - "ImageSummary$osVersion": "

The operating system version of the instance. For example, Amazon Linux 2, Ubuntu 18, or Microsoft Windows Server 2019.

", + "Image$osVersion": "

The operating system version for instances that launch from this image. For example, Amazon Linux 2, Ubuntu 18, or Microsoft Windows Server 2019.

", + "ImageSummary$osVersion": "

The operating system version of the instances that launch from this image. For example, Amazon Linux 2, Ubuntu 18, or Microsoft Windows Server 2019.

", "ImageVersion$osVersion": "

The operating system version of the Amazon EC2 build instance. For example, Amazon Linux 2, Ubuntu 18, or Microsoft Windows Server 2019.

", "ImportVmImageRequest$osVersion": "

The operating system version for the imported VM.

", "OsVersionList$member": null @@ -1604,8 +1616,8 @@ "OsVersionList": { "base": null, "refs": { - "Component$supportedOsVersions": "

The operating system (OS) version supported by the component. If the OS information is available, a prefix match is performed against the base image OS version during image recipe creation.

", - "ComponentSummary$supportedOsVersions": "

The operating system (OS) version supported by the component. If the OS information is available, a prefix match is performed against the base image OS version during image recipe creation.

", + "Component$supportedOsVersions": "

The operating system (OS) version supported by the component. If the OS information is available, Image Builder performs a prefix match against the base image OS version during image recipe creation.

", + "ComponentSummary$supportedOsVersions": "

The operating system (OS) version that the component supports. If the OS information is available, Image Builder performs a prefix match against the base image OS version during image recipe creation.

", "ComponentVersion$supportedOsVersions": "

he operating system (OS) version supported by the component. If the OS information is available, a prefix match is performed against the base image OS version during image recipe creation.

", "CreateComponentRequest$supportedOsVersions": "

The operating system (OS) version supported by the component. If the OS information is available, a prefix match is performed against the base image OS version during image recipe creation.

" } @@ -1613,14 +1625,14 @@ "OutputResources": { "base": "

The resources produced by this image.

", "refs": { - "Image$outputResources": "

The output resources produced when creating this image.

", - "ImageSummary$outputResources": "

The output resources produced when creating this image.

" + "Image$outputResources": "

The output resources that Image Builder produces for this image.

", + "ImageSummary$outputResources": "

The output resources that Image Builder produced when it created this image.

" } }, "Ownership": { "base": null, "refs": { - "ListComponentsRequest$owner": "

The owner defines which components you want to list. By default, this request will only show components owned by your account. You can use this field to specify if you want to view components owned by yourself, by Amazon, or those components that have been shared with you by other customers.

", + "ListComponentsRequest$owner": "

Filters results based on the type of owner for the component. By default, this request returns a list of components that your account owns. To see results for other types of owners, you can specify components that Amazon manages, third party components, or components that other accounts have shared with you.

", "ListContainerRecipesRequest$owner": "

Returns container recipes belonging to the specified owner, that have been shared with you. You can omit this field to return container recipes belonging to your account.

", "ListImageRecipesRequest$owner": "

The owner defines which image recipes you want to list. By default, this request will only show image recipes owned by your account. You can use this field to specify if you want to view image recipes owned by yourself, by Amazon, or those image recipes that have been shared with you by other customers.

", "ListImagesRequest$owner": "

The owner defines which images you want to list. By default, this request will only show images owned by your account. You can use this field to specify if you want to view images owned by yourself, by Amazon, or those images that have been shared with you by other customers.

" @@ -1668,19 +1680,19 @@ "Platform": { "base": null, "refs": { - "Component$platform": "

The platform of the component.

", - "ComponentSummary$platform": "

The platform of the component.

", + "Component$platform": "

The operating system platform of the component.

", + "ComponentSummary$platform": "

The operating system platform of the component.

", "ComponentVersion$platform": "

The platform of the component.

", "ContainerRecipe$platform": "

The system platform for the container, such as Windows or Linux.

", "ContainerRecipeSummary$platform": "

The system platform for the container, such as Windows or Linux.

", - "CreateComponentRequest$platform": "

The platform of the component.

", + "CreateComponentRequest$platform": "

The operating system platform of the component.

", "CreateContainerRecipeRequest$platformOverride": "

Specifies the operating system platform when you use a custom base image.

", - "Image$platform": "

The platform of the image.

", + "Image$platform": "

The image operating system platform, such as Linux or Windows.

", "ImagePipeline$platform": "

The platform of the image pipeline.

", "ImageRecipe$platform": "

The platform of the image recipe.

", "ImageRecipeSummary$platform": "

The platform of the image recipe.

", - "ImageSummary$platform": "

The platform of the image.

", - "ImageVersion$platform": "

The platform of the image version, for example \"Windows\" or \"Linux\".

", + "ImageSummary$platform": "

The image operating system platform, such as Linux or Windows.

", + "ImageVersion$platform": "

The operating system platform of the image version, for example \"Windows\" or \"Linux\".

", "ImportComponentRequest$platform": "

The platform of the component.

", "ImportVmImageRequest$platform": "

The operating system platform for the imported VM.

" } @@ -1909,11 +1921,11 @@ "base": null, "refs": { "AmiDistributionConfiguration$amiTags": "

The tags to apply to AMIs distributed to this Region.

", - "Component$tags": "

The tags associated with the component.

", - "ComponentSummary$tags": "

The tags associated with the component.

", + "Component$tags": "

The tags that apply to the component.

", + "ComponentSummary$tags": "

The tags that apply to the component.

", "ContainerRecipe$tags": "

Tags that are attached to the container recipe.

", "ContainerRecipeSummary$tags": "

Tags that are attached to the container recipe.

", - "CreateComponentRequest$tags": "

The tags of the component.

", + "CreateComponentRequest$tags": "

The tags that apply to the component.

", "CreateContainerRecipeRequest$tags": "

Tags that are attached to the container recipe.

", "CreateDistributionConfigurationRequest$tags": "

The tags of the distribution configuration.

", "CreateImagePipelineRequest$tags": "

The tags of the image pipeline.

", @@ -1922,11 +1934,11 @@ "CreateInfrastructureConfigurationRequest$tags": "

The tags of the infrastructure configuration.

", "DistributionConfiguration$tags": "

The tags of the distribution configuration.

", "DistributionConfigurationSummary$tags": "

The tags associated with the distribution configuration.

", - "Image$tags": "

The tags of the image.

", + "Image$tags": "

The tags that apply to this image.

", "ImagePipeline$tags": "

The tags of this image pipeline.

", "ImageRecipe$tags": "

The tags of the image recipe.

", "ImageRecipeSummary$tags": "

The tags of the image recipe.

", - "ImageSummary$tags": "

The tags of the image.

", + "ImageSummary$tags": "

The tags that apply to this image.

", "ImportComponentRequest$tags": "

The tags of the component.

", "ImportVmImageRequest$tags": "

Tags that are attached to the import resources.

", "InfrastructureConfiguration$tags": "

The tags of the infrastructure configuration.

", diff --git a/models/apis/imagebuilder/2019-12-02/endpoint-rule-set-1.json b/models/apis/imagebuilder/2019-12-02/endpoint-rule-set-1.json new file mode 100644 index 00000000000..268edfa3b9d --- /dev/null +++ b/models/apis/imagebuilder/2019-12-02/endpoint-rule-set-1.json @@ -0,0 +1,300 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": true, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://imagebuilder-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://imagebuilder-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://imagebuilder.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://imagebuilder.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] +} \ No newline at end of file diff --git a/models/apis/imagebuilder/2019-12-02/endpoint-tests-1.json b/models/apis/imagebuilder/2019-12-02/endpoint-tests-1.json new file mode 100644 index 00000000000..0a11fb3a1c0 --- /dev/null +++ b/models/apis/imagebuilder/2019-12-02/endpoint-tests-1.json @@ -0,0 +1,43 @@ +{ + "testCases": [ + { + "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseDualStack": false, + "UseFIPS": false, + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "UseDualStack": false, + "UseFIPS": true, + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "UseDualStack": true, + "UseFIPS": false, + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff --git a/models/apis/network-firewall/2020-11-12/api-2.json b/models/apis/network-firewall/2020-11-12/api-2.json index 67b2d99c2aa..773a3109830 100644 --- a/models/apis/network-firewall/2020-11-12/api-2.json +++ b/models/apis/network-firewall/2020-11-12/api-2.json @@ -1106,6 +1106,13 @@ "DestinationPort":{"shape":"Port"} } }, + "IPAddressType":{ + "type":"string", + "enum":[ + "DUALSTACK", + "IPV4" + ] + }, "IPSet":{ "type":"structure", "required":["Definition"], @@ -1808,7 +1815,8 @@ "type":"structure", "required":["SubnetId"], "members":{ - "SubnetId":{"shape":"CollectionMember_String"} + "SubnetId":{"shape":"CollectionMember_String"}, + "IPAddressType":{"shape":"IPAddressType"} } }, "SubnetMappings":{ diff --git a/models/apis/network-firewall/2020-11-12/docs-2.json b/models/apis/network-firewall/2020-11-12/docs-2.json index d1ff6123918..9eebf933be7 100644 --- a/models/apis/network-firewall/2020-11-12/docs-2.json +++ b/models/apis/network-firewall/2020-11-12/docs-2.json @@ -56,7 +56,7 @@ "AddressDefinition": { "base": null, "refs": { - "Address$AddressDefinition": "

Specify an IP address or a block of IP addresses in Classless Inter-Domain Routing (CIDR) notation. Network Firewall supports all address ranges for IPv4.

Examples:

For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing.

" + "Address$AddressDefinition": "

Specify an IP address or a block of IP addresses in Classless Inter-Domain Routing (CIDR) notation. Network Firewall supports all address ranges for IPv4 and IPv6.

Examples:

For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing.

" } }, "Addresses": { @@ -335,7 +335,7 @@ "Destination": { "base": null, "refs": { - "Header$Destination": "

The destination IP address or address range to inspect for, in CIDR notation. To match with any address, specify ANY.

Specify an IP address or a block of IP addresses in Classless Inter-Domain Routing (CIDR) notation. Network Firewall supports all address ranges for IPv4.

Examples:

For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing.

" + "Header$Destination": "

The destination IP address or address range to inspect for, in CIDR notation. To match with any address, specify ANY.

Specify an IP address or a block of IP addresses in Classless Inter-Domain Routing (CIDR) notation. Network Firewall supports all address ranges for IPv4 and IPv6.

Examples:

For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing.

" } }, "Dimension": { @@ -504,6 +504,12 @@ "StatefulRule$Header": "

The stateful inspection criteria for this rule, used to inspect traffic flows.

" } }, + "IPAddressType": { + "base": null, + "refs": { + "SubnetMapping$IPAddressType": "

The subnet's IP address type. You can't change the IP address type after you create the subnet.

" + } + }, "IPSet": { "base": "

A list of IP addresses and address ranges, in CIDR notation. This is part of a RuleVariables.

", "refs": { @@ -1099,7 +1105,7 @@ "Source": { "base": null, "refs": { - "Header$Source": "

The source IP address or address range to inspect for, in CIDR notation. To match with any address, specify ANY.

Specify an IP address or a block of IP addresses in Classless Inter-Domain Routing (CIDR) notation. Network Firewall supports all address ranges for IPv4.

Examples:

For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing.

" + "Header$Source": "

The source IP address or address range to inspect for, in CIDR notation. To match with any address, specify ANY.

Specify an IP address or a block of IP addresses in Classless Inter-Domain Routing (CIDR) notation. Network Firewall supports all address ranges for IPv4 and IPv6.

Examples:

For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing.

" } }, "SourceMetadata": { diff --git a/models/endpoints/endpoints.json b/models/endpoints/endpoints.json index 1637ac23749..5cff330f0fb 100644 --- a/models/endpoints/endpoints.json +++ b/models/endpoints/endpoints.json @@ -2069,6 +2069,7 @@ "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, + "me-central-1" : { }, "me-south-1" : { }, "sa-east-1" : { }, "us-east-1" : { }, diff --git a/service/billingconductor/api.go b/service/billingconductor/api.go index de4b56c4467..be5b3293050 100644 --- a/service/billingconductor/api.go +++ b/service/billingconductor/api.go @@ -5086,14 +5086,22 @@ type CreatePricingRuleInput struct { // Name is a required field Name *string `min:"1" type:"string" required:"true" sensitive:"true"` + // Operation is the specific Amazon Web Services action covered by this line + // item. This describes the specific usage of the line item. + // + // If the Scope attribute is set to SKU, this attribute indicates which operation + // the PricingRule is modifying. For example, a value of RunInstances:0202 indicates + // the operation of running an Amazon EC2 instance. + Operation *string `min:"1" type:"string"` + // The scope of pricing rule that indicates if it's globally applicable, or // it's service-specific. // // Scope is a required field Scope *string `type:"string" required:"true" enum:"PricingRuleScope"` - // If the Scope attribute is set to SERVICE, the attribute indicates which service - // the PricingRule is applicable for. + // If the Scope attribute is set to SERVICE or SKU, the attribute indicates + // which service the PricingRule is applicable for. Service *string `min:"1" type:"string"` // A map that contains tag keys and tag values that are attached to a pricing @@ -5107,6 +5115,10 @@ type CreatePricingRuleInput struct { // // Type is a required field Type *string `type:"string" required:"true" enum:"PricingRuleType"` + + // Usage type is the unit that each service uses to measure the usage of a specific + // type of resource. + UsageType *string `min:"1" type:"string"` } // String returns the string representation. @@ -5139,6 +5151,9 @@ func (s *CreatePricingRuleInput) Validate() error { if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } + if s.Operation != nil && len(*s.Operation) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Operation", 1)) + } if s.Scope == nil { invalidParams.Add(request.NewErrParamRequired("Scope")) } @@ -5151,6 +5166,9 @@ func (s *CreatePricingRuleInput) Validate() error { if s.Type == nil { invalidParams.Add(request.NewErrParamRequired("Type")) } + if s.UsageType != nil && len(*s.UsageType) < 1 { + invalidParams.Add(request.NewErrParamMinLen("UsageType", 1)) + } if s.Tiering != nil { if err := s.Tiering.Validate(); err != nil { invalidParams.AddNested("Tiering", err.(request.ErrInvalidParams)) @@ -5193,6 +5211,12 @@ func (s *CreatePricingRuleInput) SetName(v string) *CreatePricingRuleInput { return s } +// SetOperation sets the Operation field's value. +func (s *CreatePricingRuleInput) SetOperation(v string) *CreatePricingRuleInput { + s.Operation = &v + return s +} + // SetScope sets the Scope field's value. func (s *CreatePricingRuleInput) SetScope(v string) *CreatePricingRuleInput { s.Scope = &v @@ -5223,6 +5247,12 @@ func (s *CreatePricingRuleInput) SetType(v string) *CreatePricingRuleInput { return s } +// SetUsageType sets the UsageType field's value. +func (s *CreatePricingRuleInput) SetUsageType(v string) *CreatePricingRuleInput { + s.UsageType = &v + return s +} + type CreatePricingRuleOutput struct { _ struct{} `type:"structure"` @@ -9951,6 +9981,14 @@ type UpdatePricingRuleOutput struct { // String and GoString methods. Name *string `min:"1" type:"string" sensitive:"true"` + // Operation refers to the specific Amazon Web Services covered by this line + // item. This describes the specific usage of the line item. + // + // If the Scope attribute is set to SKU, this attribute indicates which operation + // the PricingRule is modifying. For example, a value of RunInstances:0202 indicates + // the operation of running an Amazon EC2 instance. + Operation *string `min:"1" type:"string"` + // The scope of pricing rule that indicates if it's globally applicable, or // it's service-specific. Scope *string `type:"string" enum:"PricingRuleScope"` @@ -9964,6 +10002,15 @@ type UpdatePricingRuleOutput struct { // The new pricing rule type. Type *string `type:"string" enum:"PricingRuleType"` + + // Usage type is the unit that each service uses to measure the usage of a specific + // type of resource. + // + // If the Scope attribute is set to SKU, this attribute indicates which usage + // type the PricingRule is modifying. For example, USW2-BoxUsage:m2.2xlarge + // describes an M2 High Memory Double Extra Large instance in the US West (Oregon) + // Region. + UsageType *string `min:"1" type:"string"` } // String returns the string representation. @@ -10026,6 +10073,12 @@ func (s *UpdatePricingRuleOutput) SetName(v string) *UpdatePricingRuleOutput { return s } +// SetOperation sets the Operation field's value. +func (s *UpdatePricingRuleOutput) SetOperation(v string) *UpdatePricingRuleOutput { + s.Operation = &v + return s +} + // SetScope sets the Scope field's value. func (s *UpdatePricingRuleOutput) SetScope(v string) *UpdatePricingRuleOutput { s.Scope = &v @@ -10050,6 +10103,12 @@ func (s *UpdatePricingRuleOutput) SetType(v string) *UpdatePricingRuleOutput { return s } +// SetUsageType sets the UsageType field's value. +func (s *UpdatePricingRuleOutput) SetUsageType(v string) *UpdatePricingRuleOutput { + s.UsageType = &v + return s +} + // The set of tiering configurations for the pricing rule. type UpdateTieringInput_ struct { _ struct{} `type:"structure"` diff --git a/service/imagebuilder/api.go b/service/imagebuilder/api.go index 60191c91812..50e4f231e7b 100644 --- a/service/imagebuilder/api.go +++ b/service/imagebuilder/api.go @@ -3099,7 +3099,9 @@ func (c *Imagebuilder) ListComponentsRequest(input *ListComponentsInput) (req *r // ListComponents API operation for EC2 Image Builder. // -// Returns the list of component build versions for the specified semantic version. +// Returns the list of components that can be filtered by name, or by using +// the listed filters to streamline results. Newly created components can take +// up to two minutes to appear in the ListComponents API Results. // // The semantic version has four nodes: ../. You // can assign values for the first three, and can filter on all of them. @@ -4362,7 +4364,8 @@ func (c *Imagebuilder) ListImagesRequest(input *ListImagesInput) (req *request.R // ListImages API operation for EC2 Image Builder. // -// Returns the list of images that you have access to. +// Returns the list of images that you have access to. Newly created images +// can take up to two minutes to appear in the ListImages API Results. // // 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 @@ -5743,11 +5746,17 @@ func (c *Imagebuilder) UpdateInfrastructureConfigurationWithContext(ctx aws.Cont return out, req.Send() } -// In addition to your infrastruction configuration, these settings provide -// an extra layer of control over your build instances. For instances where -// Image Builder installs the Systems Manager agent, you can choose whether -// to keep it for the AMI that you create. You can also specify commands to -// run on launch for all of your build instances. +// In addition to your infrastructure configuration, these settings provide +// an extra layer of control over your build instances. You can also specify +// commands to run on launch for all of your build instances. +// +// Image Builder does not automatically install the Systems Manager agent on +// Windows instances. If your base image includes the Systems Manager agent, +// then the AMI that you create will also include the agent. For Linux instances, +// if the base image does not already include the Systems Manager agent, Image +// Builder installs it. For Linux instances where Image Builder installs the +// Systems Manager agent, you can choose whether to keep it for the AMI that +// you create. type AdditionalInstanceConfiguration struct { _ struct{} `type:"structure"` @@ -6255,7 +6264,7 @@ type Component struct { // Component data contains the YAML document content for the component. Data *string `locationName:"data" type:"string"` - // The date that the component was created. + // The date that Image Builder created the component. DateCreated *string `locationName:"dateCreated" type:"string"` // The description of the component. @@ -6270,30 +6279,38 @@ type Component struct { // The name of the component. Name *string `locationName:"name" type:"string"` + // Indicates whether component source is hidden from view in the console, and + // from component detail results for API, CLI, or SDK operations. + Obfuscate *bool `locationName:"obfuscate" type:"boolean"` + // The owner of the component. Owner *string `locationName:"owner" min:"1" type:"string"` - // Contains parameter details for each of the parameters that are defined for - // the component. + // Contains parameter details for each of the parameters that the component + // document defined for the component. Parameters []*ComponentParameterDetail `locationName:"parameters" type:"list"` - // The platform of the component. + // The operating system platform of the component. Platform *string `locationName:"platform" type:"string" enum:"Platform"` + // Contains the name of the publisher if this is a third-party component. Otherwise, + // this property is empty. + Publisher *string `locationName:"publisher" min:"1" type:"string"` + // Describes the current status of the component. This is used for components // that are no longer active. State *ComponentState `locationName:"state" type:"structure"` // The operating system (OS) version supported by the component. If the OS information - // is available, a prefix match is performed against the base image OS version - // during image recipe creation. + // is available, Image Builder performs a prefix match against the base image + // OS version during image recipe creation. SupportedOsVersions []*string `locationName:"supportedOsVersions" min:"1" type:"list"` - // The tags associated with the component. + // The tags that apply to the component. Tags map[string]*string `locationName:"tags" min:"1" type:"map"` - // The type of the component denotes whether the component is used to build - // the image or only to test it. + // The component type specifies whether Image Builder uses the component to + // build the image or only to test it. Type *string `locationName:"type" type:"string" enum:"ComponentType"` // The version of the component. @@ -6366,6 +6383,12 @@ func (s *Component) SetName(v string) *Component { return s } +// SetObfuscate sets the Obfuscate field's value. +func (s *Component) SetObfuscate(v bool) *Component { + s.Obfuscate = &v + return s +} + // SetOwner sets the Owner field's value. func (s *Component) SetOwner(v string) *Component { s.Owner = &v @@ -6384,6 +6407,12 @@ func (s *Component) SetPlatform(v string) *Component { return s } +// SetPublisher sets the Publisher field's value. +func (s *Component) SetPublisher(v string) *Component { + s.Publisher = &v + return s +} + // SetState sets the State field's value. func (s *Component) SetState(v *ComponentState) *Component { s.State = v @@ -6423,8 +6452,8 @@ type ComponentConfiguration struct { // ComponentArn is a required field ComponentArn *string `locationName:"componentArn" type:"string" required:"true"` - // A group of parameter settings that are used to configure the component for - // a specific recipe. + // A group of parameter settings that Image Builder uses to configure the component + // for a specific recipe. Parameters []*ComponentParameter `locationName:"parameters" min:"1" type:"list"` } @@ -6662,10 +6691,10 @@ type ComponentSummary struct { // The Amazon Resource Name (ARN) of the component. Arn *string `locationName:"arn" type:"string"` - // The change description of the component. + // The change description for the current version of the component. ChangeDescription *string `locationName:"changeDescription" min:"1" type:"string"` - // The date that the component was created. + // The original creation date of the component. DateCreated *string `locationName:"dateCreated" type:"string"` // The description of the component. @@ -6674,25 +6703,33 @@ type ComponentSummary struct { // The name of the component. Name *string `locationName:"name" type:"string"` + // Indicates whether component source is hidden from view in the console, and + // from component detail results for API, CLI, or SDK operations. + Obfuscate *bool `locationName:"obfuscate" type:"boolean"` + // The owner of the component. Owner *string `locationName:"owner" min:"1" type:"string"` - // The platform of the component. + // The operating system platform of the component. Platform *string `locationName:"platform" type:"string" enum:"Platform"` + // Contains the name of the publisher if this is a third-party component. Otherwise, + // this property is empty. + Publisher *string `locationName:"publisher" min:"1" type:"string"` + // Describes the current status of the component. State *ComponentState `locationName:"state" type:"structure"` - // The operating system (OS) version supported by the component. If the OS information - // is available, a prefix match is performed against the base image OS version - // during image recipe creation. + // The operating system (OS) version that the component supports. If the OS + // information is available, Image Builder performs a prefix match against the + // base image OS version during image recipe creation. SupportedOsVersions []*string `locationName:"supportedOsVersions" min:"1" type:"list"` - // The tags associated with the component. + // The tags that apply to the component. Tags map[string]*string `locationName:"tags" min:"1" type:"map"` - // The type of the component denotes whether the component is used to build - // the image or only to test it. + // The component type specifies whether Image Builder uses the component to + // build the image or only to test it. Type *string `locationName:"type" type:"string" enum:"ComponentType"` // The version of the component. @@ -6747,6 +6784,12 @@ func (s *ComponentSummary) SetName(v string) *ComponentSummary { return s } +// SetObfuscate sets the Obfuscate field's value. +func (s *ComponentSummary) SetObfuscate(v bool) *ComponentSummary { + s.Obfuscate = &v + return s +} + // SetOwner sets the Owner field's value. func (s *ComponentSummary) SetOwner(v string) *ComponentSummary { s.Owner = &v @@ -6759,6 +6802,12 @@ func (s *ComponentSummary) SetPlatform(v string) *ComponentSummary { return s } +// SetPublisher sets the Publisher field's value. +func (s *ComponentSummary) SetPublisher(v string) *ComponentSummary { + s.Publisher = &v + return s +} + // SetState sets the State field's value. func (s *ComponentSummary) SetState(v *ComponentState) *ComponentSummary { s.State = v @@ -7061,7 +7110,9 @@ type ContainerRecipe struct { // a specific version of an object. Arn *string `locationName:"arn" type:"string"` - // Components for build and test that are included in the container recipe. + // Build and test components that are included in the container recipe. Recipes + // require a minimum of one build component, and can have a maximum of 20 build + // and test components in any combination. Components []*ComponentConfiguration `locationName:"components" min:"1" type:"list"` // Specifies the type of container, such as Docker. @@ -7364,10 +7415,10 @@ type CreateComponentInput struct { // you cannot specify both properties. Data *string `locationName:"data" min:"1" type:"string"` - // The description of the component. Describes the contents of the component. + // Describes the contents of the component. Description *string `locationName:"description" min:"1" type:"string"` - // The ID of the KMS key that should be used to encrypt this component. + // The ID of the KMS key that is used to encrypt this component. KmsKeyId *string `locationName:"kmsKeyId" min:"1" type:"string"` // The name of the component. @@ -7375,7 +7426,7 @@ type CreateComponentInput struct { // Name is a required field Name *string `locationName:"name" type:"string" required:"true"` - // The platform of the component. + // The operating system platform of the component. // // Platform is a required field Platform *string `locationName:"platform" type:"string" required:"true" enum:"Platform"` @@ -7403,7 +7454,7 @@ type CreateComponentInput struct { // during image recipe creation. SupportedOsVersions []*string `locationName:"supportedOsVersions" min:"1" type:"list"` - // The tags of the component. + // The tags that apply to the component. Tags map[string]*string `locationName:"tags" min:"1" type:"map"` // The uri of a YAML component document file. This must be an S3 URL (s3://bucket/key), @@ -7597,6 +7648,8 @@ type CreateContainerRecipeInput struct { ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` // Components for build and test that are included in the container recipe. + // Recipes require a minimum of one build component, and can have a maximum + // of 20 build and test components in any combination. // // Components is a required field Components []*ComponentConfiguration `locationName:"components" min:"1" type:"list" required:"true"` @@ -8478,7 +8531,7 @@ type CreateImageRecipeInput struct { // The idempotency token used to make this request idempotent. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` - // The components of the image recipe. + // The components included in the image recipe. // // Components is a required field Components []*ComponentConfiguration `locationName:"components" min:"1" type:"list" required:"true"` @@ -11437,41 +11490,44 @@ type Image struct { // the recipe. BuildType *string `locationName:"buildType" type:"string" enum:"BuildType"` - // The recipe that is used to create an Image Builder container image. + // For container images, this is the container recipe that Image Builder used + // to create the image. For images that distribute an AMI, this is empty. ContainerRecipe *ContainerRecipe `locationName:"containerRecipe" type:"structure"` - // The date on which this image was created. + // The date on which Image Builder created this image. DateCreated *string `locationName:"dateCreated" type:"string"` - // The distribution configuration used when creating this image. + // The distribution configuration that Image Builder used to create this image. DistributionConfiguration *DistributionConfiguration `locationName:"distributionConfiguration" type:"structure"` - // Collects additional information about the image being created, including - // the operating system (OS) version and package list. This information is used - // to enhance the overall experience of using EC2 Image Builder. Enabled by - // default. + // Indicates whether Image Builder collects additional information about the + // image, such as the operating system (OS) version and package list. EnhancedImageMetadataEnabled *bool `locationName:"enhancedImageMetadataEnabled" type:"boolean"` - // The image recipe used when creating the image. + // For images that distribute an AMI, this is the image recipe that Image Builder + // used to create the image. For container images, this is empty. ImageRecipe *ImageRecipe `locationName:"imageRecipe" type:"structure"` - // The image tests configuration used when creating this image. + // The origin of the base image that Image Builder used to build this image. + ImageSource *string `locationName:"imageSource" type:"string" enum:"ImageSource"` + + // The image tests that ran when that Image Builder created this image. ImageTestsConfiguration *ImageTestsConfiguration `locationName:"imageTestsConfiguration" type:"structure"` - // The infrastructure used when creating this image. + // The infrastructure that Image Builder used to create this image. InfrastructureConfiguration *InfrastructureConfiguration `locationName:"infrastructureConfiguration" type:"structure"` // The name of the image. Name *string `locationName:"name" type:"string"` - // The operating system version of the instance. For example, Amazon Linux 2, - // Ubuntu 18, or Microsoft Windows Server 2019. + // The operating system version for instances that launch from this image. For + // example, Amazon Linux 2, Ubuntu 18, or Microsoft Windows Server 2019. OsVersion *string `locationName:"osVersion" min:"1" type:"string"` - // The output resources produced when creating this image. + // The output resources that Image Builder produces for this image. OutputResources *OutputResources `locationName:"outputResources" type:"structure"` - // The platform of the image. + // The image operating system platform, such as Linux or Windows. Platform *string `locationName:"platform" type:"string" enum:"Platform"` // The Amazon Resource Name (ARN) of the image pipeline that created this image. @@ -11483,10 +11539,10 @@ type Image struct { // The state of the image. State *ImageState `locationName:"state" type:"structure"` - // The tags of the image. + // The tags that apply to this image. Tags map[string]*string `locationName:"tags" min:"1" type:"map"` - // Specifies whether this is an AMI or container image. + // Specifies whether this image produces an AMI or a container image. Type *string `locationName:"type" type:"string" enum:"ImageType"` // The semantic version of the image. @@ -11570,6 +11626,12 @@ func (s *Image) SetImageRecipe(v *ImageRecipe) *Image { return s } +// SetImageSource sets the ImageSource field's value. +func (s *Image) SetImageSource(v string) *Image { + s.ImageSource = &v + return s +} + // SetImageTestsConfiguration sets the ImageTestsConfiguration field's value. func (s *Image) SetImageTestsConfiguration(v *ImageTestsConfiguration) *Image { s.ImageTestsConfiguration = v @@ -11697,10 +11759,10 @@ type ImagePipeline struct { // The date on which this image pipeline was created. DateCreated *string `locationName:"dateCreated" type:"string"` - // The date on which this image pipeline was last run. + // This is no longer supported, and does not return a value. DateLastRun *string `locationName:"dateLastRun" type:"string"` - // The date on which this image pipeline will next be run. + // This is no longer supported, and does not return a value. DateNextRun *string `locationName:"dateNextRun" type:"string"` // The date on which this image pipeline was last updated. @@ -11882,7 +11944,9 @@ type ImageRecipe struct { // The block device mappings to apply when creating images from this recipe. BlockDeviceMappings []*InstanceBlockDeviceMapping `locationName:"blockDeviceMappings" type:"list"` - // The components of the image recipe. + // The components that are included in the image recipe. Recipes require a minimum + // of one build component, and can have a maximum of 20 build and test components + // in any combination. Components []*ComponentConfiguration `locationName:"components" min:"1" type:"list"` // The date on which this image recipe was created. @@ -12165,32 +12229,35 @@ type ImageSummary struct { // the recipe. BuildType *string `locationName:"buildType" type:"string" enum:"BuildType"` - // The date on which this image was created. + // The date on which Image Builder created this image. DateCreated *string `locationName:"dateCreated" type:"string"` + // The origin of the base image that Image Builder used to build this image. + ImageSource *string `locationName:"imageSource" type:"string" enum:"ImageSource"` + // The name of the image. Name *string `locationName:"name" type:"string"` - // The operating system version of the instance. For example, Amazon Linux 2, - // Ubuntu 18, or Microsoft Windows Server 2019. + // The operating system version of the instances that launch from this image. + // For example, Amazon Linux 2, Ubuntu 18, or Microsoft Windows Server 2019. OsVersion *string `locationName:"osVersion" min:"1" type:"string"` - // The output resources produced when creating this image. + // The output resources that Image Builder produced when it created this image. OutputResources *OutputResources `locationName:"outputResources" type:"structure"` // The owner of the image. Owner *string `locationName:"owner" min:"1" type:"string"` - // The platform of the image. + // The image operating system platform, such as Linux or Windows. Platform *string `locationName:"platform" type:"string" enum:"Platform"` // The state of the image. State *ImageState `locationName:"state" type:"structure"` - // The tags of the image. + // The tags that apply to this image. Tags map[string]*string `locationName:"tags" min:"1" type:"map"` - // Specifies whether this is an AMI or container image. + // Specifies whether this image produces an AMI or a container image. Type *string `locationName:"type" type:"string" enum:"ImageType"` // The version of the image. @@ -12233,6 +12300,12 @@ func (s *ImageSummary) SetDateCreated(v string) *ImageSummary { return s } +// SetImageSource sets the ImageSource field's value. +func (s *ImageSummary) SetImageSource(v string) *ImageSummary { + s.ImageSource = &v + return s +} + // SetName sets the Name field's value. func (s *ImageSummary) SetName(v string) *ImageSummary { s.Name = &v @@ -12298,6 +12371,8 @@ type ImageTestsConfiguration struct { ImageTestsEnabled *bool `locationName:"imageTestsEnabled" type:"boolean"` // The maximum time in minutes that tests are permitted to run. + // + // The timeoutMinutes attribute is not currently active. This value is ignored. TimeoutMinutes *int64 `locationName:"timeoutMinutes" min:"60" type:"integer"` } @@ -12379,6 +12454,9 @@ type ImageVersion struct { // The date on which this specific version of the Image Builder image was created. DateCreated *string `locationName:"dateCreated" type:"string"` + // The origin of the base image that Image Builder used to build this image. + ImageSource *string `locationName:"imageSource" type:"string" enum:"ImageSource"` + // The name of this specific version of an Image Builder image. Name *string `locationName:"name" type:"string"` @@ -12389,10 +12467,11 @@ type ImageVersion struct { // The owner of the image version. Owner *string `locationName:"owner" min:"1" type:"string"` - // The platform of the image version, for example "Windows" or "Linux". + // The operating system platform of the image version, for example "Windows" + // or "Linux". Platform *string `locationName:"platform" type:"string" enum:"Platform"` - // Specifies whether this image is an AMI or a container image. + // Specifies whether this image produces an AMI or a container image. Type *string `locationName:"type" type:"string" enum:"ImageType"` // Details for a specific version of an Image Builder image. This version follows @@ -12453,6 +12532,12 @@ func (s *ImageVersion) SetDateCreated(v string) *ImageVersion { return s } +// SetImageSource sets the ImageSource field's value. +func (s *ImageVersion) SetImageSource(v string) *ImageVersion { + s.ImageSource = &v + return s +} + // SetName sets the Name field's value. func (s *ImageVersion) SetName(v string) *ImageVersion { s.Name = &v @@ -13383,7 +13468,8 @@ type InstanceMetadataOptions struct { _ struct{} `type:"structure"` // Limit the number of hops that an instance metadata request can traverse to - // reach its destination. + // reach its destination. The default is one hop. However, if HTTP tokens are + // required, container image builds need a minimum of two hops. HttpPutResponseHopLimit *int64 `locationName:"httpPutResponseHopLimit" min:"1" type:"integer"` // Indicates whether a signed token header is required for instance metadata @@ -14108,7 +14194,7 @@ func (s *ListComponentBuildVersionsOutput) SetRequestId(v string) *ListComponent type ListComponentsInput struct { _ struct{} `type:"structure"` - // Returns the list of component build versions for the specified name. + // Returns the list of components for the specified name. ByName *bool `locationName:"byName" type:"boolean"` // Use the following filters to streamline results: @@ -14133,10 +14219,11 @@ type ListComponentsInput struct { // a previously truncated response. NextToken *string `locationName:"nextToken" min:"1" type:"string"` - // The owner defines which components you want to list. By default, this request - // will only show components owned by your account. You can use this field to - // specify if you want to view components owned by yourself, by Amazon, or those - // components that have been shared with you by other customers. + // Filters results based on the type of owner for the component. By default, + // this request returns a list of components that your account owns. To see + // results for other types of owners, you can specify components that Amazon + // manages, third party components, or components that other accounts have shared + // with you. Owner *string `locationName:"owner" type:"string" enum:"Ownership"` } @@ -17999,6 +18086,30 @@ func EbsVolumeType_Values() []string { } } +const ( + // ImageSourceAmazonManaged is a ImageSource enum value + ImageSourceAmazonManaged = "AMAZON_MANAGED" + + // ImageSourceAwsMarketplace is a ImageSource enum value + ImageSourceAwsMarketplace = "AWS_MARKETPLACE" + + // ImageSourceImported is a ImageSource enum value + ImageSourceImported = "IMPORTED" + + // ImageSourceCustom is a ImageSource enum value + ImageSourceCustom = "CUSTOM" +) + +// ImageSource_Values returns all elements of the ImageSource enum +func ImageSource_Values() []string { + return []string{ + ImageSourceAmazonManaged, + ImageSourceAwsMarketplace, + ImageSourceImported, + ImageSourceCustom, + } +} + const ( // ImageStatusPending is a ImageStatus enum value ImageStatusPending = "PENDING" @@ -18076,6 +18187,9 @@ const ( // OwnershipAmazon is a Ownership enum value OwnershipAmazon = "Amazon" + + // OwnershipThirdParty is a Ownership enum value + OwnershipThirdParty = "ThirdParty" ) // Ownership_Values returns all elements of the Ownership enum @@ -18084,6 +18198,7 @@ func Ownership_Values() []string { OwnershipSelf, OwnershipShared, OwnershipAmazon, + OwnershipThirdParty, } } diff --git a/service/networkfirewall/api.go b/service/networkfirewall/api.go index 2fcfd95c6dd..183044b37b7 100644 --- a/service/networkfirewall/api.go +++ b/service/networkfirewall/api.go @@ -3551,7 +3551,7 @@ type Address struct { // Specify an IP address or a block of IP addresses in Classless Inter-Domain // Routing (CIDR) notation. Network Firewall supports all address ranges for - // IPv4. + // IPv4 and IPv6. // // Examples: // @@ -3561,6 +3561,12 @@ type Address struct { // * To configure Network Firewall to inspect for IP addresses from 192.0.2.0 // to 192.0.2.255, specify 192.0.2.0/24. // + // * To configure Network Firewall to inspect for the IP address 1111:0000:0000:0000:0000:0000:0000:0111, + // specify 1111:0000:0000:0000:0000:0000:0000:0111/128. + // + // * To configure Network Firewall to inspect for IP addresses from 1111:0000:0000:0000:0000:0000:0000:0000 + // to 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify 1111:0000:0000:0000:0000:0000:0000:0000/64. + // // For more information about CIDR notation, see the Wikipedia entry Classless // Inter-Domain Routing (https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing). // @@ -7050,7 +7056,7 @@ type Header struct { // // Specify an IP address or a block of IP addresses in Classless Inter-Domain // Routing (CIDR) notation. Network Firewall supports all address ranges for - // IPv4. + // IPv4 and IPv6. // // Examples: // @@ -7060,6 +7066,12 @@ type Header struct { // * To configure Network Firewall to inspect for IP addresses from 192.0.2.0 // to 192.0.2.255, specify 192.0.2.0/24. // + // * To configure Network Firewall to inspect for the IP address 1111:0000:0000:0000:0000:0000:0000:0111, + // specify 1111:0000:0000:0000:0000:0000:0000:0111/128. + // + // * To configure Network Firewall to inspect for IP addresses from 1111:0000:0000:0000:0000:0000:0000:0000 + // to 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify 1111:0000:0000:0000:0000:0000:0000:0000/64. + // // For more information about CIDR notation, see the Wikipedia entry Classless // Inter-Domain Routing (https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing). // @@ -7092,7 +7104,7 @@ type Header struct { // // Specify an IP address or a block of IP addresses in Classless Inter-Domain // Routing (CIDR) notation. Network Firewall supports all address ranges for - // IPv4. + // IPv4 and IPv6. // // Examples: // @@ -7102,6 +7114,12 @@ type Header struct { // * To configure Network Firewall to inspect for IP addresses from 192.0.2.0 // to 192.0.2.255, specify 192.0.2.0/24. // + // * To configure Network Firewall to inspect for the IP address 1111:0000:0000:0000:0000:0000:0000:0111, + // specify 1111:0000:0000:0000:0000:0000:0000:0111/128. + // + // * To configure Network Firewall to inspect for IP addresses from 1111:0000:0000:0000:0000:0000:0000:0000 + // to 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify 1111:0000:0000:0000:0000:0000:0000:0000/64. + // // For more information about CIDR notation, see the Wikipedia entry Classless // Inter-Domain Routing (https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing). // @@ -10552,6 +10570,10 @@ func (s *StatelessRulesAndCustomActions) SetStatelessRules(v []*StatelessRule) * type SubnetMapping struct { _ struct{} `type:"structure"` + // The subnet's IP address type. You can't change the IP address type after + // you create the subnet. + IPAddressType *string `type:"string" enum:"IPAddressType"` + // The unique identifier for the subnet. // // SubnetId is a required field @@ -10589,6 +10611,12 @@ func (s *SubnetMapping) Validate() error { return nil } +// SetIPAddressType sets the IPAddressType field's value. +func (s *SubnetMapping) SetIPAddressType(v string) *SubnetMapping { + s.IPAddressType = &v + return s +} + // SetSubnetId sets the SubnetId field's value. func (s *SubnetMapping) SetSubnetId(v string) *SubnetMapping { s.SubnetId = &v @@ -12664,6 +12692,22 @@ func GeneratedRulesType_Values() []string { } } +const ( + // IPAddressTypeDualstack is a IPAddressType enum value + IPAddressTypeDualstack = "DUALSTACK" + + // IPAddressTypeIpv4 is a IPAddressType enum value + IPAddressTypeIpv4 = "IPV4" +) + +// IPAddressType_Values returns all elements of the IPAddressType enum +func IPAddressType_Values() []string { + return []string{ + IPAddressTypeDualstack, + IPAddressTypeIpv4, + } +} + const ( // LogDestinationTypeS3 is a LogDestinationType enum value LogDestinationTypeS3 = "S3"