diff --git a/aws-cloudformation-schema/aws-appconfig-environment.json b/aws-cloudformation-schema/aws-appconfig-environment.json
index fbae43fca1..51dc4eeae0 100644
--- a/aws-cloudformation-schema/aws-appconfig-environment.json
+++ b/aws-cloudformation-schema/aws-appconfig-environment.json
@@ -1,129 +1,137 @@
{
- "typeName" : "AWS::AppConfig::Environment",
- "description" : "Resource Type definition for AWS::AppConfig::Environment",
"sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-appconfig.git",
- "additionalProperties" : false,
- "properties" : {
- "EnvironmentId" : {
- "type" : "string",
- "description" : "The environment ID.",
- "pattern" : "[a-z0-9]{4,7}"
- },
- "ApplicationId" : {
- "type" : "string",
- "description" : "The application ID.",
- "pattern" : "[a-z0-9]{4,7}"
+ "tagging" : {
+ "taggable" : true,
+ "tagOnCreate" : true,
+ "tagUpdatable" : true,
+ "tagProperty" : "/properties/Tags",
+ "cloudFormationSystemTags" : true
+ },
+ "handlers" : {
+ "read" : {
+ "permissions" : [ "appconfig:GetEnvironment", "appconfig:ListTagsForResource" ]
},
- "Name" : {
- "type" : "string",
- "description" : "A name for the environment.",
- "minLength" : 1,
- "maxLength" : 64
+ "create" : {
+ "permissions" : [ "appconfig:CreateEnvironment", "appconfig:GetEnvironment", "appconfig:ListTagsForResource", "appconfig:TagResource", "iam:PassRole" ]
},
- "Description" : {
- "type" : "string",
- "description" : "A description of the environment.",
- "minLength" : 0,
- "maxLength" : 1024
+ "update" : {
+ "permissions" : [ "appconfig:UpdateEnvironment", "appconfig:TagResource", "appconfig:UntagResource", "iam:PassRole" ]
},
- "Monitors" : {
- "type" : "array",
- "description" : "Amazon CloudWatch alarms to monitor during the deployment process.",
- "insertionOrder" : false,
- "items" : {
- "$ref" : "#/definitions/Monitor"
- },
- "minItems" : 0,
- "maxItems" : 5
+ "list" : {
+ "permissions" : [ "appconfig:ListEnvironments" ],
+ "handlerSchema" : {
+ "properties" : {
+ "ApplicationId" : {
+ "$ref" : "resource-schema.json#/properties/ApplicationId"
+ }
+ },
+ "required" : [ "ApplicationId" ]
+ }
},
- "Tags" : {
- "type" : "array",
- "description" : "Metadata to assign to the environment. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define.",
- "uniqueItems" : true,
- "items" : {
- "$ref" : "#/definitions/Tag"
- },
- "insertionOrder" : false
+ "delete" : {
+ "permissions" : [ "appconfig:GetEnvironment", "appconfig:DeleteEnvironment" ]
}
},
+ "typeName" : "AWS::AppConfig::Environment",
+ "readOnlyProperties" : [ "/properties/EnvironmentId" ],
+ "description" : "Resource Type definition for AWS::AppConfig::Environment",
+ "createOnlyProperties" : [ "/properties/ApplicationId" ],
+ "additionalProperties" : false,
+ "primaryIdentifier" : [ "/properties/ApplicationId", "/properties/EnvironmentId" ],
"definitions" : {
"Monitor" : {
- "type" : "object",
"description" : "Amazon CloudWatch alarm to monitor during the deployment process.",
"additionalProperties" : false,
+ "type" : "object",
"properties" : {
"AlarmArn" : {
- "type" : "string",
- "description" : "Amazon Resource Name (ARN) of the Amazon CloudWatch alarm.",
+ "relationshipRef" : {
+ "typeName" : "AWS::CloudWatch::Alarm",
+ "propertyPath" : "/properties/Arn"
+ },
"minLength" : 1,
+ "description" : "Amazon Resource Name (ARN) of the Amazon CloudWatch alarm.",
+ "type" : "string",
"maxLength" : 2048
},
"AlarmRoleArn" : {
- "type" : "string",
- "description" : "ARN of an AWS Identity and Access Management (IAM) role for AWS AppConfig to monitor AlarmArn.",
+ "relationshipRef" : {
+ "typeName" : "AWS::IAM::Role",
+ "propertyPath" : "/properties/Arn"
+ },
"minLength" : 20,
- "maxLength" : 2048,
- "pattern" : "^((arn):(aws|aws-cn|aws-iso|aws-iso-[a-z]{1}|aws-us-gov):(iam)::\\d{12}:role[/].*)$"
+ "pattern" : "^((arn):(aws|aws-cn|aws-iso|aws-iso-[a-z]{1}|aws-us-gov):(iam)::\\d{12}:role[/].*)$",
+ "description" : "ARN of an AWS Identity and Access Management (IAM) role for AWS AppConfig to monitor AlarmArn.",
+ "type" : "string",
+ "maxLength" : 2048
}
},
"required" : [ "AlarmArn" ]
},
"Tag" : {
"description" : "Metadata to assign to the environment. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define.",
- "type" : "object",
"additionalProperties" : false,
+ "type" : "object",
"properties" : {
- "Key" : {
- "type" : "string",
- "description" : "The key-value string map. The valid character set is [a-zA-Z1-9+-=._:/]. The tag key can be up to 128 characters and must not start with aws:.",
- "minLength" : 1,
- "maxLength" : 128,
- "pattern" : "^(?!aws:.)[a-zA-Z1-9+=._:/-]*$"
- },
"Value" : {
- "type" : "string",
- "description" : "The tag value can be up to 256 characters.",
"minLength" : 0,
+ "description" : "The tag value can be up to 256 characters.",
+ "type" : "string",
"maxLength" : 256
+ },
+ "Key" : {
+ "minLength" : 1,
+ "pattern" : "^(?!aws:.)[a-zA-Z1-9+=._:/-]*$",
+ "description" : "The key-value string map. The valid character set is [a-zA-Z1-9+-=._:/]. The tag key can be up to 128 characters and must not start with aws:.",
+ "type" : "string",
+ "maxLength" : 128
}
},
"required" : [ "Key", "Value" ]
}
},
- "required" : [ "Name", "ApplicationId" ],
- "readOnlyProperties" : [ "/properties/EnvironmentId" ],
- "createOnlyProperties" : [ "/properties/ApplicationId" ],
- "primaryIdentifier" : [ "/properties/ApplicationId", "/properties/EnvironmentId" ],
- "handlers" : {
- "create" : {
- "permissions" : [ "appconfig:CreateEnvironment", "appconfig:GetEnvironment", "appconfig:ListTagsForResource", "appconfig:TagResource", "iam:PassRole" ]
+ "properties" : {
+ "EnvironmentId" : {
+ "pattern" : "[a-z0-9]{4,7}",
+ "description" : "The environment ID.",
+ "type" : "string"
},
- "read" : {
- "permissions" : [ "appconfig:GetEnvironment", "appconfig:ListTagsForResource" ]
+ "Description" : {
+ "minLength" : 0,
+ "description" : "A description of the environment.",
+ "type" : "string",
+ "maxLength" : 1024
},
- "update" : {
- "permissions" : [ "appconfig:UpdateEnvironment", "appconfig:TagResource", "appconfig:UntagResource", "iam:PassRole" ]
+ "Monitors" : {
+ "minItems" : 0,
+ "maxItems" : 5,
+ "description" : "Amazon CloudWatch alarms to monitor during the deployment process.",
+ "insertionOrder" : false,
+ "type" : "array",
+ "items" : {
+ "$ref" : "#/definitions/Monitor"
+ }
},
- "delete" : {
- "permissions" : [ "appconfig:GetEnvironment", "appconfig:DeleteEnvironment" ]
+ "ApplicationId" : {
+ "pattern" : "[a-z0-9]{4,7}",
+ "description" : "The application ID.",
+ "type" : "string"
},
- "list" : {
- "handlerSchema" : {
- "properties" : {
- "ApplicationId" : {
- "$ref" : "resource-schema.json#/properties/ApplicationId"
- }
- },
- "required" : [ "ApplicationId" ]
- },
- "permissions" : [ "appconfig:ListEnvironments" ]
+ "Tags" : {
+ "uniqueItems" : true,
+ "description" : "Metadata to assign to the environment. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define.",
+ "insertionOrder" : false,
+ "type" : "array",
+ "items" : {
+ "$ref" : "#/definitions/Tag"
+ }
+ },
+ "Name" : {
+ "minLength" : 1,
+ "description" : "A name for the environment.",
+ "type" : "string",
+ "maxLength" : 64
}
},
- "tagging" : {
- "taggable" : true,
- "tagOnCreate" : true,
- "tagUpdatable" : true,
- "cloudFormationSystemTags" : true,
- "tagProperty" : "/properties/Tags"
- }
+ "required" : [ "Name", "ApplicationId" ]
}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-appconfig-hostedconfigurationversion.json b/aws-cloudformation-schema/aws-appconfig-hostedconfigurationversion.json
index f1ab627785..9baf590e5f 100644
--- a/aws-cloudformation-schema/aws-appconfig-hostedconfigurationversion.json
+++ b/aws-cloudformation-schema/aws-appconfig-hostedconfigurationversion.json
@@ -1,85 +1,85 @@
{
+ "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-appconfig.git",
+ "tagging" : {
+ "taggable" : false,
+ "tagOnCreate" : false,
+ "tagUpdatable" : false,
+ "cloudFormationSystemTags" : false
+ },
+ "handlers" : {
+ "read" : {
+ "permissions" : [ "appconfig:GetHostedConfigurationVersion" ]
+ },
+ "create" : {
+ "permissions" : [ "appconfig:CreateHostedConfigurationVersion" ]
+ },
+ "list" : {
+ "permissions" : [ "appconfig:ListHostedConfigurationVersions" ],
+ "handlerSchema" : {
+ "properties" : {
+ "ConfigurationProfileId" : {
+ "$ref" : "resource-schema.json#/properties/ConfigurationProfileId"
+ },
+ "ApplicationId" : {
+ "$ref" : "resource-schema.json#/properties/ApplicationId"
+ }
+ },
+ "required" : [ "ApplicationId", "ConfigurationProfileId" ]
+ }
+ },
+ "delete" : {
+ "permissions" : [ "appconfig:DeleteHostedConfigurationVersion" ]
+ }
+ },
"typeName" : "AWS::AppConfig::HostedConfigurationVersion",
+ "readOnlyProperties" : [ "/properties/VersionNumber" ],
"description" : "Resource Type definition for AWS::AppConfig::HostedConfigurationVersion",
- "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-appconfig.git",
+ "writeOnlyProperties" : [ "/properties/LatestVersionNumber" ],
+ "createOnlyProperties" : [ "/properties/ApplicationId", "/properties/ConfigurationProfileId", "/properties/Description", "/properties/Content", "/properties/ContentType", "/properties/LatestVersionNumber", "/properties/VersionLabel" ],
"additionalProperties" : false,
+ "primaryIdentifier" : [ "/properties/ApplicationId", "/properties/ConfigurationProfileId", "/properties/VersionNumber" ],
"properties" : {
- "ApplicationId" : {
- "type" : "string",
- "description" : "The application ID.",
- "pattern" : "[a-z0-9]{4,7}"
- },
"ConfigurationProfileId" : {
- "type" : "string",
+ "pattern" : "[a-z0-9]{4,7}",
"description" : "The configuration profile ID.",
- "pattern" : "[a-z0-9]{4,7}"
- },
- "VersionNumber" : {
- "type" : "string",
- "description" : "Current version number of hosted configuration version."
+ "type" : "string"
},
"Description" : {
- "type" : "string",
- "description" : "A description of the hosted configuration version.",
"minLength" : 0,
- "maxLength" : 1024
- },
- "Content" : {
+ "description" : "A description of the hosted configuration version.",
"type" : "string",
- "description" : "The content of the configuration or the configuration data."
+ "maxLength" : 1024
},
"ContentType" : {
- "type" : "string",
- "description" : "A standard MIME type describing the format of the configuration content.",
"minLength" : 1,
+ "description" : "A standard MIME type describing the format of the configuration content.",
+ "type" : "string",
"maxLength" : 255
},
"LatestVersionNumber" : {
- "type" : "integer",
- "description" : "An optional locking token used to prevent race conditions from overwriting configuration updates when creating a new version. To ensure your data is not overwritten when creating multiple hosted configuration versions in rapid succession, specify the version number of the latest hosted configuration version."
+ "description" : "An optional locking token used to prevent race conditions from overwriting configuration updates when creating a new version. To ensure your data is not overwritten when creating multiple hosted configuration versions in rapid succession, specify the version number of the latest hosted configuration version.",
+ "type" : "integer"
+ },
+ "Content" : {
+ "description" : "The content of the configuration or the configuration data.",
+ "type" : "string"
},
"VersionLabel" : {
- "type" : "string",
- "description" : "A user-defined label for an AWS AppConfig hosted configuration version.",
- "pattern" : "^$|.*[^0-9].*",
"minLength" : 0,
+ "pattern" : "^$|.*[^0-9].*",
+ "description" : "A user-defined label for an AWS AppConfig hosted configuration version.",
+ "type" : "string",
"maxLength" : 64
- }
- },
- "required" : [ "ApplicationId", "ConfigurationProfileId", "Content", "ContentType" ],
- "readOnlyProperties" : [ "/properties/VersionNumber" ],
- "writeOnlyProperties" : [ "/properties/LatestVersionNumber" ],
- "createOnlyProperties" : [ "/properties/ApplicationId", "/properties/ConfigurationProfileId", "/properties/Description", "/properties/Content", "/properties/ContentType", "/properties/LatestVersionNumber", "/properties/VersionLabel" ],
- "primaryIdentifier" : [ "/properties/ApplicationId", "/properties/ConfigurationProfileId", "/properties/VersionNumber" ],
- "handlers" : {
- "create" : {
- "permissions" : [ "appconfig:CreateHostedConfigurationVersion" ]
},
- "read" : {
- "permissions" : [ "appconfig:GetHostedConfigurationVersion" ]
- },
- "delete" : {
- "permissions" : [ "appconfig:DeleteHostedConfigurationVersion" ]
+ "ApplicationId" : {
+ "pattern" : "[a-z0-9]{4,7}",
+ "description" : "The application ID.",
+ "type" : "string"
},
- "list" : {
- "handlerSchema" : {
- "properties" : {
- "ApplicationId" : {
- "$ref" : "resource-schema.json#/properties/ApplicationId"
- },
- "ConfigurationProfileId" : {
- "$ref" : "resource-schema.json#/properties/ConfigurationProfileId"
- }
- },
- "required" : [ "ApplicationId", "ConfigurationProfileId" ]
- },
- "permissions" : [ "appconfig:ListHostedConfigurationVersions" ]
+ "VersionNumber" : {
+ "description" : "Current version number of hosted configuration version.",
+ "type" : "string"
}
},
- "tagging" : {
- "taggable" : false,
- "tagOnCreate" : false,
- "tagUpdatable" : false,
- "cloudFormationSystemTags" : false
- }
+ "required" : [ "ApplicationId", "ConfigurationProfileId", "Content", "ContentType" ]
}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-appintegrations-application.json b/aws-cloudformation-schema/aws-appintegrations-application.json
new file mode 100644
index 0000000000..717898f428
--- /dev/null
+++ b/aws-cloudformation-schema/aws-appintegrations-application.json
@@ -0,0 +1,139 @@
+{
+ "typeName" : "AWS::AppIntegrations::Application",
+ "description" : "Resource Type definition for AWS:AppIntegrations::Application",
+ "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git",
+ "definitions" : {
+ "Tag" : {
+ "description" : "A label for tagging Application resources",
+ "type" : "object",
+ "properties" : {
+ "Key" : {
+ "description" : "A key to identify the tag.",
+ "type" : "string",
+ "pattern" : "^(?!aws:)[a-zA-Z+-=._:/]+$",
+ "minLength" : 1,
+ "maxLength" : 128
+ },
+ "Value" : {
+ "description" : "Corresponding tag value for the key.",
+ "type" : "string",
+ "minLength" : 0,
+ "maxLength" : 256
+ }
+ },
+ "additionalProperties" : false,
+ "required" : [ "Key", "Value" ]
+ },
+ "ExternalUrlConfig" : {
+ "type" : "object",
+ "additionalProperties" : false,
+ "required" : [ "AccessUrl", "ApprovedOrigins" ],
+ "properties" : {
+ "AccessUrl" : {
+ "type" : "string",
+ "pattern" : "^\\w+\\:\\/\\/.*$",
+ "minLength" : 1,
+ "maxLength" : 1000
+ },
+ "ApprovedOrigins" : {
+ "type" : "array",
+ "insertionOrder" : false,
+ "items" : {
+ "$ref" : "#/definitions/ApprovedOrigins"
+ },
+ "minItems" : 0,
+ "maxItems" : 50
+ }
+ }
+ },
+ "ApprovedOrigins" : {
+ "type" : "string",
+ "pattern" : "^\\w+\\:\\/\\/.*$",
+ "minLength" : 1,
+ "maxLength" : 1000
+ }
+ },
+ "properties" : {
+ "Name" : {
+ "description" : "The name of the application.",
+ "type" : "string",
+ "pattern" : "^[a-zA-Z0-9/\\._\\-]+$",
+ "minLength" : 1,
+ "maxLength" : 255
+ },
+ "Id" : {
+ "description" : "The id of the application.",
+ "type" : "string",
+ "pattern" : "^[a-zA-Z0-9/\\._\\-]+$",
+ "minLength" : 1,
+ "maxLength" : 255
+ },
+ "Namespace" : {
+ "description" : "The namespace of the application.",
+ "type" : "string",
+ "pattern" : "^[a-zA-Z0-9/\\._\\-]+$",
+ "minLength" : 1,
+ "maxLength" : 255
+ },
+ "Description" : {
+ "description" : "The application description.",
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 1000
+ },
+ "ApplicationArn" : {
+ "description" : "The Amazon Resource Name (ARN) of the application.",
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 2048
+ },
+ "ApplicationSourceConfig" : {
+ "description" : "Application source config",
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "ExternalUrlConfig" : {
+ "$ref" : "#/definitions/ExternalUrlConfig"
+ }
+ },
+ "required" : [ "ExternalUrlConfig" ]
+ },
+ "Tags" : {
+ "description" : "The tags (keys and values) associated with the application.",
+ "type" : "array",
+ "items" : {
+ "$ref" : "#/definitions/Tag"
+ },
+ "minItems" : 0,
+ "maxItems" : 200
+ }
+ },
+ "additionalProperties" : false,
+ "required" : [ "Name", "Description", "ApplicationSourceConfig" ],
+ "tagging" : {
+ "taggable" : true,
+ "tagOnCreate" : true,
+ "tagUpdatable" : true,
+ "cloudFormationSystemTags" : true,
+ "tagProperty" : "/properties/Tags"
+ },
+ "readOnlyProperties" : [ "/properties/ApplicationArn", "/properties/Id" ],
+ "primaryIdentifier" : [ "/properties/ApplicationArn" ],
+ "handlers" : {
+ "create" : {
+ "permissions" : [ "app-integrations:CreateApplication", "app-integrations:TagResource" ]
+ },
+ "read" : {
+ "permissions" : [ "app-integrations:GetApplication" ]
+ },
+ "list" : {
+ "permissions" : [ "app-integrations:ListApplications", "app-integrations:ListTagsForResource" ]
+ },
+ "update" : {
+ "permissions" : [ "app-integrations:GetApplication", "app-integrations:UpdateApplication", "app-integrations:TagResource", "app-integrations:UntagResource" ]
+ },
+ "delete" : {
+ "permissions" : [ "app-integrations:DeleteApplication" ]
+ }
+ }
+}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-appintegrations-eventintegration.json b/aws-cloudformation-schema/aws-appintegrations-eventintegration.json
index 8ac0588e4c..48cbfe8334 100644
--- a/aws-cloudformation-schema/aws-appintegrations-eventintegration.json
+++ b/aws-cloudformation-schema/aws-appintegrations-eventintegration.json
@@ -101,6 +101,13 @@
"maxItems" : 200
}
},
+ "tagging" : {
+ "taggable" : true,
+ "tagOnCreate" : true,
+ "tagUpdatable" : true,
+ "cloudFormationSystemTags" : true,
+ "tagProperty" : "/properties/Tags"
+ },
"additionalProperties" : false,
"required" : [ "Name", "EventBridgeBus", "EventFilter" ],
"readOnlyProperties" : [ "/properties/EventIntegrationArn" ],
diff --git a/aws-cloudformation-schema/aws-appsync-resolver.json b/aws-cloudformation-schema/aws-appsync-resolver.json
index c649a2b759..7320a15061 100644
--- a/aws-cloudformation-schema/aws-appsync-resolver.json
+++ b/aws-cloudformation-schema/aws-appsync-resolver.json
@@ -159,7 +159,7 @@
},
"MetricsConfig" : {
"type" : "string",
- "description" : "",
+ "description" : "Enables or disables enhanced resolver metrics for specified resolvers. Note that ``MetricsConfig`` won't be used unless the ``resolverLevelMetricsBehavior`` value is set to ``PER_RESOLVER_METRICS``. If the ``resolverLevelMetricsBehavior`` is set to ``FULL_REQUEST_RESOLVER_METRICS`` instead, ``MetricsConfig`` will be ignored. However, you can still set its value.",
"enum" : [ "ENABLED", "DISABLED" ]
}
},
diff --git a/aws-cloudformation-schema/aws-aps-scraper.json b/aws-cloudformation-schema/aws-aps-scraper.json
new file mode 100644
index 0000000000..9549d3db1b
--- /dev/null
+++ b/aws-cloudformation-schema/aws-aps-scraper.json
@@ -0,0 +1,188 @@
+{
+ "typeName" : "AWS::APS::Scraper",
+ "description" : "Resource Type definition for AWS::APS::Scraper",
+ "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-aps",
+ "definitions" : {
+ "Tag" : {
+ "description" : "A key-value pair to associate with a resource.",
+ "type" : "object",
+ "properties" : {
+ "Key" : {
+ "type" : "string",
+ "description" : "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.",
+ "minLength" : 1,
+ "maxLength" : 128
+ },
+ "Value" : {
+ "type" : "string",
+ "description" : "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.",
+ "minLength" : 0,
+ "maxLength" : 256
+ }
+ },
+ "required" : [ "Key", "Value" ],
+ "additionalProperties" : false
+ },
+ "ScrapeConfiguration" : {
+ "description" : "Scraper configuration",
+ "type" : "object",
+ "properties" : {
+ "ConfigurationBlob" : {
+ "description" : "Prometheus compatible scrape configuration in base64 encoded blob format",
+ "type" : "string"
+ }
+ },
+ "oneOf" : [ {
+ "required" : [ "ConfigurationBlob" ]
+ } ],
+ "additionalProperties" : false
+ },
+ "Source" : {
+ "description" : "Scraper metrics source",
+ "type" : "object",
+ "properties" : {
+ "EksConfiguration" : {
+ "description" : "Configuration for EKS metrics source",
+ "type" : "object",
+ "properties" : {
+ "ClusterArn" : {
+ "description" : "ARN of an EKS cluster",
+ "type" : "string",
+ "pattern" : "^arn:aws[-a-z]*:eks:[-a-z0-9]+:[0-9]{12}:cluster/.+$"
+ },
+ "SecurityGroupIds" : {
+ "description" : "List of security group IDs",
+ "type" : "array",
+ "insertionOrder" : false,
+ "items" : {
+ "$ref" : "#/definitions/SecurityGroupId"
+ }
+ },
+ "SubnetIds" : {
+ "description" : "List of subnet IDs",
+ "type" : "array",
+ "insertionOrder" : false,
+ "items" : {
+ "$ref" : "#/definitions/SubnetId"
+ }
+ }
+ },
+ "required" : [ "ClusterArn", "SubnetIds" ],
+ "additionalProperties" : false
+ }
+ },
+ "oneOf" : [ {
+ "required" : [ "EksConfiguration" ]
+ } ],
+ "additionalProperties" : false
+ },
+ "Destination" : {
+ "description" : "Scraper metrics destination",
+ "type" : "object",
+ "properties" : {
+ "AmpConfiguration" : {
+ "description" : "Configuration for Amazon Managed Prometheus metrics destination",
+ "type" : "object",
+ "properties" : {
+ "WorkspaceArn" : {
+ "description" : "ARN of an Amazon Managed Prometheus workspace",
+ "type" : "string",
+ "pattern" : "^arn:aws[-a-z]*:aps:[-a-z0-9]+:[0-9]{12}:workspace/.+$"
+ }
+ },
+ "required" : [ "WorkspaceArn" ],
+ "additionalProperties" : false
+ }
+ },
+ "oneOf" : [ {
+ "required" : [ "AmpConfiguration" ]
+ } ],
+ "additionalProperties" : false
+ },
+ "SecurityGroupId" : {
+ "description" : "ID of a security group",
+ "type" : "string",
+ "pattern" : "^sg-[0-9a-z]+$"
+ },
+ "SubnetId" : {
+ "description" : "ID of a subnet",
+ "type" : "string",
+ "pattern" : "^subnet-[0-9a-z]+$"
+ }
+ },
+ "properties" : {
+ "ScraperId" : {
+ "description" : "Required to identify a specific scraper.",
+ "type" : "string",
+ "pattern" : "^s-[a-z0-9]{8}-[a-z0-9]{4}-[a-z0-9]{4}-[a-z0-9]{4}-[a-z0-9]{12}$",
+ "minLength" : 1,
+ "maxLength" : 64
+ },
+ "Alias" : {
+ "description" : "Scraper alias.",
+ "type" : "string",
+ "pattern" : "^[0-9A-Za-z][-.0-9A-Z_a-z]*$",
+ "minLength" : 1,
+ "maxLength" : 100
+ },
+ "Arn" : {
+ "description" : "Scraper ARN.",
+ "type" : "string",
+ "pattern" : "^arn:(aws|aws-us-gov|aws-cn):aps:(af|ap|ca|eu|me|sa|us)-(central|north|(north(?:east|west))|south|south(?:east|west)|east|west)-[0-9]+:[0-9]+:scraper/s-[a-z0-9]{8}-[a-z0-9]{4}-[a-z0-9]{4}-[a-z0-9]{4}-[a-z0-9]{12}$"
+ },
+ "RoleArn" : {
+ "description" : "IAM role ARN for the scraper.",
+ "type" : "string",
+ "pattern" : "^arn:(aws|aws-us-gov|aws-cn):iam::[0-9]{12}:role/[a-zA-Z0-9-]+$",
+ "minLength" : 20,
+ "maxLength" : 2048
+ },
+ "ScrapeConfiguration" : {
+ "$ref" : "#/definitions/ScrapeConfiguration"
+ },
+ "Source" : {
+ "$ref" : "#/definitions/Source"
+ },
+ "Destination" : {
+ "$ref" : "#/definitions/Destination"
+ },
+ "Tags" : {
+ "description" : "An array of key-value pairs to apply to this resource.",
+ "type" : "array",
+ "uniqueItems" : true,
+ "insertionOrder" : false,
+ "items" : {
+ "$ref" : "#/definitions/Tag"
+ }
+ }
+ },
+ "additionalProperties" : false,
+ "required" : [ "ScrapeConfiguration", "Source", "Destination" ],
+ "readOnlyProperties" : [ "/properties/ScraperId", "/properties/Arn", "/properties/RoleArn" ],
+ "createOnlyProperties" : [ "/properties/ScrapeConfiguration", "/properties/Source", "/properties/Destination", "/properties/Alias" ],
+ "tagging" : {
+ "taggable" : true,
+ "tagOnCreate" : true,
+ "tagUpdatable" : true,
+ "cloudFormationSystemTags" : true,
+ "tagProperty" : "/properties/Tags"
+ },
+ "primaryIdentifier" : [ "/properties/Arn" ],
+ "handlers" : {
+ "create" : {
+ "permissions" : [ "aps:CreateScraper", "aps:DescribeScraper", "aps:DescribeWorkspace", "aps:TagResource", "eks:CreateAccessEntry", "eks:AssociateAccessPolicy", "eks:DescribeCluster", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "iam:CreateServiceLinkedRole" ]
+ },
+ "read" : {
+ "permissions" : [ "aps:DescribeScraper", "aps:ListTagsForResource" ]
+ },
+ "update" : {
+ "permissions" : [ "aps:DescribeScraper", "aps:TagResource", "aps:UntagResource", "aps:ListTagsForResource" ]
+ },
+ "delete" : {
+ "permissions" : [ "aps:DeleteScraper", "aps:DescribeScraper", "aps:DescribeWorkspace", "eks:AssociateAccessPolicy", "eks:DescribeCluster", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "iam:DeleteServiceLinkedRole" ]
+ },
+ "list" : {
+ "permissions" : [ "aps:ListScrapers", "aps:ListTagsForResource" ]
+ }
+ }
+}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-bcmdataexports-export.json b/aws-cloudformation-schema/aws-bcmdataexports-export.json
new file mode 100644
index 0000000000..fd4ce322cc
--- /dev/null
+++ b/aws-cloudformation-schema/aws-bcmdataexports-export.json
@@ -0,0 +1,230 @@
+{
+ "typeName" : "AWS::BCMDataExports::Export",
+ "description" : "Definition of AWS::BCMDataExports::Export Resource Type",
+ "definitions" : {
+ "CompressionOption" : {
+ "type" : "string",
+ "enum" : [ "GZIP", "PARQUET" ]
+ },
+ "DataQuery" : {
+ "type" : "object",
+ "properties" : {
+ "QueryStatement" : {
+ "type" : "string",
+ "maxLength" : 36000,
+ "minLength" : 1,
+ "pattern" : "^[\\S\\s]*$"
+ },
+ "TableConfigurations" : {
+ "$ref" : "#/definitions/TableConfigurations"
+ }
+ },
+ "required" : [ "QueryStatement" ],
+ "additionalProperties" : false
+ },
+ "DestinationConfigurations" : {
+ "type" : "object",
+ "properties" : {
+ "S3Destination" : {
+ "$ref" : "#/definitions/S3Destination"
+ }
+ },
+ "required" : [ "S3Destination" ],
+ "additionalProperties" : false
+ },
+ "Export" : {
+ "type" : "object",
+ "properties" : {
+ "ExportArn" : {
+ "type" : "string",
+ "maxLength" : 2048,
+ "minLength" : 20,
+ "pattern" : "^arn:aws[-a-z0-9]*:[-a-z0-9]+:[-a-z0-9]*:[0-9]{12}:[-a-zA-Z0-9/:_]+$"
+ },
+ "Name" : {
+ "type" : "string",
+ "maxLength" : 128,
+ "minLength" : 1,
+ "pattern" : "^[0-9A-Za-z\\-_]+$"
+ },
+ "Description" : {
+ "type" : "string",
+ "maxLength" : 1024,
+ "minLength" : 0,
+ "pattern" : "^[\\S\\s]*$"
+ },
+ "DataQuery" : {
+ "$ref" : "#/definitions/DataQuery"
+ },
+ "DestinationConfigurations" : {
+ "$ref" : "#/definitions/DestinationConfigurations"
+ },
+ "RefreshCadence" : {
+ "$ref" : "#/definitions/RefreshCadence"
+ }
+ },
+ "required" : [ "DataQuery", "DestinationConfigurations", "Name", "RefreshCadence" ],
+ "additionalProperties" : false
+ },
+ "FormatOption" : {
+ "type" : "string",
+ "enum" : [ "TEXT_OR_CSV", "PARQUET" ]
+ },
+ "FrequencyOption" : {
+ "type" : "string",
+ "enum" : [ "SYNCHRONOUS" ]
+ },
+ "OverwriteOption" : {
+ "type" : "string",
+ "enum" : [ "CREATE_NEW_REPORT", "OVERWRITE_REPORT" ]
+ },
+ "RefreshCadence" : {
+ "type" : "object",
+ "properties" : {
+ "Frequency" : {
+ "$ref" : "#/definitions/FrequencyOption"
+ }
+ },
+ "required" : [ "Frequency" ],
+ "additionalProperties" : false
+ },
+ "ResourceTag" : {
+ "type" : "object",
+ "properties" : {
+ "Key" : {
+ "type" : "string",
+ "maxLength" : 128,
+ "minLength" : 1
+ },
+ "Value" : {
+ "type" : "string",
+ "maxLength" : 256,
+ "minLength" : 0
+ }
+ },
+ "required" : [ "Key", "Value" ],
+ "additionalProperties" : false
+ },
+ "S3Destination" : {
+ "type" : "object",
+ "properties" : {
+ "S3Bucket" : {
+ "type" : "string",
+ "maxLength" : 1024,
+ "minLength" : 0,
+ "pattern" : "^[\\S\\s]*$"
+ },
+ "S3Prefix" : {
+ "type" : "string",
+ "maxLength" : 1024,
+ "minLength" : 0,
+ "pattern" : "^[\\S\\s]*$"
+ },
+ "S3Region" : {
+ "type" : "string",
+ "maxLength" : 1024,
+ "minLength" : 0,
+ "pattern" : "^[\\S\\s]*$"
+ },
+ "S3OutputConfigurations" : {
+ "$ref" : "#/definitions/S3OutputConfigurations"
+ }
+ },
+ "required" : [ "S3Bucket", "S3OutputConfigurations", "S3Prefix", "S3Region" ],
+ "additionalProperties" : false
+ },
+ "S3OutputConfigurations" : {
+ "type" : "object",
+ "properties" : {
+ "OutputType" : {
+ "$ref" : "#/definitions/S3OutputType"
+ },
+ "Format" : {
+ "$ref" : "#/definitions/FormatOption"
+ },
+ "Compression" : {
+ "$ref" : "#/definitions/CompressionOption"
+ },
+ "Overwrite" : {
+ "$ref" : "#/definitions/OverwriteOption"
+ }
+ },
+ "required" : [ "Compression", "Format", "OutputType", "Overwrite" ],
+ "additionalProperties" : false
+ },
+ "S3OutputType" : {
+ "type" : "string",
+ "enum" : [ "CUSTOM" ]
+ },
+ "TableConfigurations" : {
+ "type" : "object",
+ "patternProperties" : {
+ "^[\\S\\s]*$" : {
+ "$ref" : "#/definitions/TableProperties"
+ }
+ },
+ "additionalProperties" : false
+ },
+ "TableProperties" : {
+ "type" : "object",
+ "patternProperties" : {
+ "^[\\S\\s]*$" : {
+ "type" : "string",
+ "maxLength" : 1024,
+ "minLength" : 0,
+ "pattern" : "^[\\S\\s]*$"
+ }
+ },
+ "additionalProperties" : false
+ }
+ },
+ "properties" : {
+ "Export" : {
+ "$ref" : "#/definitions/Export"
+ },
+ "ExportArn" : {
+ "type" : "string",
+ "maxLength" : 2048,
+ "minLength" : 20,
+ "pattern" : "^arn:aws[-a-z0-9]*:[-a-z0-9]+:[-a-z0-9]*:[0-9]{12}:[-a-zA-Z0-9/:_]+$"
+ },
+ "Tags" : {
+ "type" : "array",
+ "items" : {
+ "$ref" : "#/definitions/ResourceTag"
+ },
+ "maxItems" : 200,
+ "minItems" : 0
+ }
+ },
+ "required" : [ "Export" ],
+ "readOnlyProperties" : [ "/properties/ExportArn" ],
+ "primaryIdentifier" : [ "/properties/ExportArn" ],
+ "createOnlyProperties" : [ "/properties/Export/Name", "/properties/Export/DataQuery/TableConfigurations", "/properties/Export/RefreshCadence" ],
+ "documentationUrl" : "https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_DataExports_CreateExport.html#API_DataExports_CreateExport_RequestSyntax",
+ "handlers" : {
+ "create" : {
+ "permissions" : [ "bcm-data-exports:CreateExport", "bcm-data-exports:GetExport", "bcm-data-exports:ListTagsForResource", "bcm-data-exports:TagResource", "cur:PutReportDefinition" ]
+ },
+ "read" : {
+ "permissions" : [ "bcm-data-exports:GetExport", "bcm-data-exports:ListTagsForResource" ]
+ },
+ "update" : {
+ "permissions" : [ "bcm-data-exports:UpdateExport", "bcm-data-exports:TagResource", "bcm-data-exports:UntagResource", "bcm-data-exports:GetExport", "bcm-data-exports:ListTagsForResource" ]
+ },
+ "delete" : {
+ "permissions" : [ "bcm-data-exports:DeleteExport" ]
+ },
+ "list" : {
+ "permissions" : [ "bcm-data-exports:ListExports" ]
+ }
+ },
+ "tagging" : {
+ "taggable" : true,
+ "tagOnCreate" : true,
+ "tagUpdatable" : true,
+ "cloudFormationSystemTags" : false,
+ "tagProperty" : "/properties/Tags"
+ },
+ "additionalProperties" : false
+}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-bedrock-agent.json b/aws-cloudformation-schema/aws-bedrock-agent.json
new file mode 100644
index 0000000000..088d5c4c87
--- /dev/null
+++ b/aws-cloudformation-schema/aws-bedrock-agent.json
@@ -0,0 +1,429 @@
+{
+ "typeName" : "AWS::Bedrock::Agent",
+ "description" : "Definition of AWS::Bedrock::Agent Resource Type",
+ "definitions" : {
+ "APISchema" : {
+ "description" : "Contains information about the API Schema for the Action Group",
+ "oneOf" : [ {
+ "type" : "object",
+ "title" : "S3",
+ "properties" : {
+ "S3" : {
+ "$ref" : "#/definitions/S3Identifier"
+ }
+ },
+ "required" : [ "S3" ],
+ "additionalProperties" : false
+ }, {
+ "type" : "object",
+ "title" : "Payload",
+ "properties" : {
+ "Payload" : {
+ "type" : "string",
+ "description" : "String OpenAPI Payload"
+ }
+ },
+ "required" : [ "Payload" ],
+ "additionalProperties" : false
+ } ]
+ },
+ "ActionGroupExecutor" : {
+ "type" : "object",
+ "title" : "Lambda",
+ "properties" : {
+ "Lambda" : {
+ "type" : "string",
+ "maxLength" : 2048,
+ "pattern" : "^arn:(aws[a-zA-Z-]*)?:lambda:[a-z]{2}(-gov)?-[a-z]+-\\d{1}:\\d{12}:function:[a-zA-Z0-9-_\\.]+(:(\\$LATEST|[a-zA-Z0-9-_]+))?$",
+ "description" : "ARN of a Lambda."
+ }
+ },
+ "required" : [ "Lambda" ],
+ "additionalProperties" : false
+ },
+ "ActionGroupSignature" : {
+ "type" : "string",
+ "description" : "Action Group Signature for a BuiltIn Action",
+ "enum" : [ "AMAZON.UserInput" ]
+ },
+ "ActionGroupState" : {
+ "type" : "string",
+ "description" : "State of the action group",
+ "enum" : [ "ENABLED", "DISABLED" ]
+ },
+ "AgentActionGroup" : {
+ "type" : "object",
+ "description" : "Contains the information of an Agent Action Group",
+ "properties" : {
+ "ActionGroupName" : {
+ "type" : "string",
+ "pattern" : "^([0-9a-zA-Z][_-]?){1,100}$",
+ "description" : "Name of the action group"
+ },
+ "Description" : {
+ "type" : "string",
+ "maxLength" : 200,
+ "minLength" : 1,
+ "description" : "Description of action group"
+ },
+ "ParentActionGroupSignature" : {
+ "$ref" : "#/definitions/ActionGroupSignature"
+ },
+ "ActionGroupExecutor" : {
+ "$ref" : "#/definitions/ActionGroupExecutor"
+ },
+ "ApiSchema" : {
+ "$ref" : "#/definitions/APISchema"
+ },
+ "ActionGroupState" : {
+ "$ref" : "#/definitions/ActionGroupState"
+ },
+ "SkipResourceInUseCheckOnDelete" : {
+ "description" : "Specifies whether to allow deleting action group while it is in use.",
+ "type" : "boolean",
+ "default" : false
+ }
+ },
+ "required" : [ "ActionGroupName" ],
+ "additionalProperties" : false
+ },
+ "AgentKnowledgeBase" : {
+ "type" : "object",
+ "description" : "Agent Knowledge Base",
+ "properties" : {
+ "KnowledgeBaseId" : {
+ "type" : "string",
+ "pattern" : "^[0-9a-zA-Z]{10}$",
+ "description" : "Identifier for a resource."
+ },
+ "Description" : {
+ "type" : "string",
+ "maxLength" : 200,
+ "minLength" : 1,
+ "description" : "Description of the Resource."
+ },
+ "KnowledgeBaseState" : {
+ "$ref" : "#/definitions/KnowledgeBaseState"
+ }
+ },
+ "required" : [ "KnowledgeBaseId", "Description" ],
+ "additionalProperties" : false
+ },
+ "AgentStatus" : {
+ "type" : "string",
+ "description" : "Schema Type for Action APIs.",
+ "enum" : [ "CREATING", "PREPARING", "PREPARED", "NOT_PREPARED", "DELETING", "FAILED", "VERSIONING", "UPDATING" ]
+ },
+ "CreationMode" : {
+ "type" : "string",
+ "description" : "Creation Mode for Prompt Configuration.",
+ "enum" : [ "DEFAULT", "OVERRIDDEN" ]
+ },
+ "InferenceConfiguration" : {
+ "type" : "object",
+ "description" : "Configuration for inference in prompt configuration",
+ "properties" : {
+ "Temperature" : {
+ "type" : "number",
+ "maximum" : 1,
+ "minimum" : 0,
+ "description" : "Controls randomness, higher values increase diversity"
+ },
+ "TopP" : {
+ "type" : "number",
+ "maximum" : 1,
+ "minimum" : 0,
+ "description" : "Cumulative probability cutoff for token selection"
+ },
+ "TopK" : {
+ "type" : "number",
+ "maximum" : 500,
+ "minimum" : 0,
+ "description" : "Sample from the k most likely next tokens"
+ },
+ "MaximumLength" : {
+ "type" : "number",
+ "maximum" : 4096,
+ "minimum" : 0,
+ "description" : "Maximum length of output"
+ },
+ "StopSequences" : {
+ "type" : "array",
+ "items" : {
+ "type" : "string"
+ },
+ "maxItems" : 4,
+ "minItems" : 0,
+ "description" : "List of stop sequences",
+ "insertionOrder" : false
+ }
+ },
+ "additionalProperties" : false
+ },
+ "KnowledgeBaseState" : {
+ "type" : "string",
+ "description" : "State of the knowledge base; whether it is enabled or disabled",
+ "enum" : [ "ENABLED", "DISABLED" ]
+ },
+ "PromptConfiguration" : {
+ "type" : "object",
+ "description" : "BasePromptConfiguration per Prompt Type.",
+ "properties" : {
+ "PromptType" : {
+ "$ref" : "#/definitions/PromptType"
+ },
+ "PromptCreationMode" : {
+ "$ref" : "#/definitions/CreationMode"
+ },
+ "PromptState" : {
+ "$ref" : "#/definitions/PromptState"
+ },
+ "BasePromptTemplate" : {
+ "type" : "string",
+ "maxLength" : 100000,
+ "minLength" : 1,
+ "description" : "Base Prompt Template."
+ },
+ "InferenceConfiguration" : {
+ "$ref" : "#/definitions/InferenceConfiguration"
+ },
+ "ParserMode" : {
+ "$ref" : "#/definitions/CreationMode"
+ }
+ },
+ "additionalProperties" : false
+ },
+ "PromptOverrideConfiguration" : {
+ "type" : "object",
+ "description" : "Configuration for prompt override.",
+ "properties" : {
+ "PromptConfigurations" : {
+ "type" : "array",
+ "items" : {
+ "$ref" : "#/definitions/PromptConfiguration"
+ },
+ "maxItems" : 10,
+ "description" : "List of BasePromptConfiguration",
+ "insertionOrder" : false
+ },
+ "OverrideLambda" : {
+ "type" : "string",
+ "maxLength" : 2048,
+ "pattern" : "^arn:(aws[a-zA-Z-]*)?:lambda:[a-z]{2}(-gov)?-[a-z]+-\\d{1}:\\d{12}:function:[a-zA-Z0-9-_\\.]+(:(\\$LATEST|[a-zA-Z0-9-_]+))?$",
+ "description" : "ARN of a Lambda."
+ }
+ },
+ "required" : [ "PromptConfigurations" ],
+ "additionalProperties" : false
+ },
+ "PromptState" : {
+ "type" : "string",
+ "description" : "Prompt State.",
+ "enum" : [ "ENABLED", "DISABLED" ]
+ },
+ "PromptType" : {
+ "type" : "string",
+ "description" : "Prompt Type.",
+ "enum" : [ "PRE_PROCESSING", "ORCHESTRATION", "POST_PROCESSING", "KNOWLEDGE_BASE_RESPONSE_GENERATION" ]
+ },
+ "S3Identifier" : {
+ "type" : "object",
+ "description" : "The identifier for the S3 resource.",
+ "properties" : {
+ "S3BucketName" : {
+ "type" : "string",
+ "maxLength" : 63,
+ "minLength" : 3,
+ "pattern" : "^[a-z0-9][\\.\\-a-z0-9]{1,61}[a-z0-9]$",
+ "description" : "A bucket in S3."
+ },
+ "S3ObjectKey" : {
+ "type" : "string",
+ "maxLength" : 1024,
+ "minLength" : 1,
+ "pattern" : "^[\\.\\-\\!\\*\\_\\'\\(\\)a-zA-Z0-9][\\.\\-\\!\\*\\_\\'\\(\\)\\/a-zA-Z0-9]*$",
+ "description" : "A object key in S3."
+ }
+ },
+ "additionalProperties" : false
+ },
+ "TagsMap" : {
+ "type" : "object",
+ "description" : "A map of tag keys and values",
+ "patternProperties" : {
+ "^[a-zA-Z0-9\\s._:/=+@-]*$" : {
+ "type" : "string",
+ "maxLength" : 256,
+ "minLength" : 0,
+ "pattern" : "^[a-zA-Z0-9\\s._:/=+@-]*$",
+ "description" : "Value of a tag"
+ }
+ },
+ "additionalProperties" : false
+ }
+ },
+ "properties" : {
+ "ActionGroups" : {
+ "type" : "array",
+ "items" : {
+ "$ref" : "#/definitions/AgentActionGroup"
+ },
+ "description" : "List of ActionGroups",
+ "insertionOrder" : false
+ },
+ "AgentArn" : {
+ "type" : "string",
+ "maxLength" : 2048,
+ "pattern" : "^arn:aws(|-cn|-us-gov):bedrock:[a-z0-9-]{1,20}:[0-9]{12}:agent/[0-9a-zA-Z]{10}$",
+ "description" : "Arn representation of the Agent."
+ },
+ "AgentId" : {
+ "type" : "string",
+ "pattern" : "^[0-9a-zA-Z]{10}$",
+ "description" : "Identifier for a resource."
+ },
+ "AgentName" : {
+ "type" : "string",
+ "pattern" : "^([0-9a-zA-Z][_-]?){1,100}$",
+ "description" : "Name for a resource."
+ },
+ "AgentResourceRoleArn" : {
+ "type" : "string",
+ "maxLength" : 2048,
+ "pattern" : "^arn:aws(-[^:]+)?:iam::([0-9]{12})?:role/(service-role/)?AmazonBedrockExecutionRoleForAgents.+$",
+ "description" : "ARN of a IAM role."
+ },
+ "AgentStatus" : {
+ "$ref" : "#/definitions/AgentStatus"
+ },
+ "AgentVersion" : {
+ "type" : "string",
+ "maxLength" : 5,
+ "minLength" : 5,
+ "pattern" : "^DRAFT$",
+ "description" : "Draft Agent Version."
+ },
+ "AutoPrepare" : {
+ "description" : "Specifies whether to automatically prepare after creating or updating the agent.",
+ "type" : "boolean",
+ "default" : false
+ },
+ "CreatedAt" : {
+ "type" : "string",
+ "description" : "Time Stamp.",
+ "format" : "date-time"
+ },
+ "CustomerEncryptionKeyArn" : {
+ "type" : "string",
+ "maxLength" : 2048,
+ "minLength" : 1,
+ "pattern" : "^arn:aws(|-cn|-us-gov):kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}$",
+ "description" : "A KMS key ARN"
+ },
+ "SkipResourceInUseCheckOnDelete" : {
+ "description" : "Specifies whether to allow deleting agent while it is in use.",
+ "type" : "boolean",
+ "default" : false
+ },
+ "Description" : {
+ "type" : "string",
+ "maxLength" : 200,
+ "minLength" : 1,
+ "description" : "Description of the Resource."
+ },
+ "FailureReasons" : {
+ "type" : "array",
+ "items" : {
+ "type" : "string",
+ "maxLength" : 2048,
+ "description" : "Failure Reason for Error."
+ },
+ "maxItems" : 2048,
+ "description" : "Failure Reasons for Error.",
+ "insertionOrder" : false
+ },
+ "FoundationModel" : {
+ "type" : "string",
+ "maxLength" : 2048,
+ "minLength" : 1,
+ "pattern" : "^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:(([0-9]{12}:custom-model/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}(([:][a-z0-9-]{1,63}){0,2})?/[a-z0-9]{12})|(:foundation-model/([a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([.]?[a-z0-9-]{1,63})([:][a-z0-9-]{1,63}){0,2})))|(([a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([.]?[a-z0-9-]{1,63})([:][a-z0-9-]{1,63}){0,2}))|(([0-9a-zA-Z][_-]?)+)$",
+ "description" : "ARN or name of a Bedrock model."
+ },
+ "IdleSessionTTLInSeconds" : {
+ "type" : "number",
+ "maximum" : 3600,
+ "minimum" : 60,
+ "description" : "Max Session Time."
+ },
+ "Instruction" : {
+ "type" : "string",
+ "maxLength" : 1200,
+ "minLength" : 40,
+ "description" : "Instruction for the agent."
+ },
+ "KnowledgeBases" : {
+ "type" : "array",
+ "items" : {
+ "$ref" : "#/definitions/AgentKnowledgeBase"
+ },
+ "description" : "List of Agent Knowledge Bases",
+ "insertionOrder" : false
+ },
+ "PreparedAt" : {
+ "type" : "string",
+ "description" : "Time Stamp.",
+ "format" : "date-time"
+ },
+ "PromptOverrideConfiguration" : {
+ "$ref" : "#/definitions/PromptOverrideConfiguration"
+ },
+ "RecommendedActions" : {
+ "type" : "array",
+ "items" : {
+ "type" : "string",
+ "maxLength" : 2048,
+ "description" : "The recommended action users can take to resolve an error in failureReasons."
+ },
+ "maxItems" : 2048,
+ "description" : "The recommended actions users can take to resolve an error in failureReasons.",
+ "insertionOrder" : false
+ },
+ "Tags" : {
+ "$ref" : "#/definitions/TagsMap"
+ },
+ "UpdatedAt" : {
+ "type" : "string",
+ "description" : "Time Stamp.",
+ "format" : "date-time"
+ }
+ },
+ "required" : [ "AgentName" ],
+ "readOnlyProperties" : [ "/properties/AgentArn", "/properties/AgentId", "/properties/AgentStatus", "/properties/AgentVersion", "/properties/CreatedAt", "/properties/FailureReasons", "/properties/PreparedAt", "/properties/RecommendedActions", "/properties/UpdatedAt" ],
+ "writeOnlyProperties" : [ "/properties/AutoPrepare", "/properties/SkipResourceInUseCheckOnDelete", "/properties/ActionGroups/*/SkipResourceInUseCheckOnDelete" ],
+ "primaryIdentifier" : [ "/properties/AgentId" ],
+ "handlers" : {
+ "create" : {
+ "permissions" : [ "bedrock:CreateAgent", "bedrock:GetAgent", "bedrock:PrepareAgent", "bedrock:GetAgentKnowledgeBase", "bedrock:AssociateAgentKnowledgeBase", "bedrock:ListAgentKnowledgeBases", "bedrock:CreateAgentActionGroup", "bedrock:GetAgentActionGroup", "bedrock:ListAgentActionGroups", "bedrock:TagResource", "bedrock:ListTagsForResource", "iam:PassRole" ]
+ },
+ "read" : {
+ "permissions" : [ "bedrock:GetAgent", "bedrock:GetAgentActionGroup", "bedrock:ListAgentActionGroups", "bedrock:GetAgentKnowledgeBase", "bedrock:ListAgentKnowledgeBases", "bedrock:ListTagsForResource" ]
+ },
+ "update" : {
+ "permissions" : [ "bedrock:GetAgent", "bedrock:UpdateAgent", "bedrock:PrepareAgent", "bedrock:GetAgentKnowledgeBase", "bedrock:UpdateAgentKnowledgeBase", "bedrock:AssociateAgentKnowledgeBase", "bedrock:DisassociateAgentKnowledgeBase", "bedrock:ListAgentKnowledgeBases", "bedrock:CreateAgentActionGroup", "bedrock:GetAgentActionGroup", "bedrock:UpdateAgentActionGroup", "bedrock:DeleteAgentActionGroup", "bedrock:ListAgentActionGroups", "bedrock:TagResource", "bedrock:UntagResource", "bedrock:ListTagsForResource", "iam:PassRole" ]
+ },
+ "delete" : {
+ "permissions" : [ "bedrock:GetAgent", "bedrock:DeleteAgent" ]
+ },
+ "list" : {
+ "permissions" : [ "bedrock:ListAgents" ]
+ }
+ },
+ "tagging" : {
+ "cloudFormationSystemTags" : true,
+ "tagOnCreate" : true,
+ "tagProperty" : "/properties/Tags",
+ "tagUpdatable" : true,
+ "taggable" : true
+ },
+ "additionalProperties" : false
+}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-bedrock-agentalias.json b/aws-cloudformation-schema/aws-bedrock-agentalias.json
new file mode 100644
index 0000000000..c832371269
--- /dev/null
+++ b/aws-cloudformation-schema/aws-bedrock-agentalias.json
@@ -0,0 +1,166 @@
+{
+ "typeName" : "AWS::Bedrock::AgentAlias",
+ "description" : "Definition of AWS::Bedrock::AgentAlias Resource Type",
+ "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-bedrock-agents",
+ "definitions" : {
+ "AgentAliasHistoryEvent" : {
+ "type" : "object",
+ "description" : "History event for an alias for an Agent.",
+ "properties" : {
+ "RoutingConfiguration" : {
+ "type" : "array",
+ "items" : {
+ "$ref" : "#/definitions/AgentAliasRoutingConfigurationListItem"
+ },
+ "maxItems" : 1,
+ "description" : "Routing configuration for an Agent alias.",
+ "insertionOrder" : false
+ },
+ "EndDate" : {
+ "type" : "string",
+ "description" : "Time Stamp."
+ },
+ "StartDate" : {
+ "type" : "string",
+ "description" : "Time Stamp."
+ }
+ },
+ "additionalProperties" : false
+ },
+ "AgentAliasRoutingConfigurationListItem" : {
+ "type" : "object",
+ "description" : "Details about the routing configuration for an Agent alias.",
+ "properties" : {
+ "AgentVersion" : {
+ "type" : "string",
+ "maxLength" : 5,
+ "minLength" : 1,
+ "pattern" : "^(DRAFT|[0-9]{0,4}[1-9][0-9]{0,4})$",
+ "description" : "Agent Version."
+ }
+ },
+ "required" : [ "AgentVersion" ],
+ "additionalProperties" : false
+ },
+ "AgentAliasStatus" : {
+ "type" : "string",
+ "description" : "The statuses an Agent Alias can be in.",
+ "enum" : [ "CREATING", "PREPARED", "FAILED", "UPDATING", "DELETING" ]
+ },
+ "TagsMap" : {
+ "type" : "object",
+ "description" : "A map of tag keys and values",
+ "patternProperties" : {
+ "^[a-zA-Z0-9\\s._:/=+@-]*$" : {
+ "type" : "string",
+ "maxLength" : 256,
+ "minLength" : 0,
+ "pattern" : "^[a-zA-Z0-9\\s._:/=+@-]*$",
+ "description" : "Value of a tag"
+ }
+ },
+ "additionalProperties" : false
+ }
+ },
+ "properties" : {
+ "AgentAliasArn" : {
+ "type" : "string",
+ "maxLength" : 2048,
+ "pattern" : "^arn:aws(|-cn|-us-gov):bedrock:[a-z0-9-]{1,20}:[0-9]{12}:agent-alias/[0-9a-zA-Z]{10}/[0-9a-zA-Z]{10}$",
+ "description" : "Arn representation of the Agent Alias."
+ },
+ "AgentAliasHistoryEvents" : {
+ "type" : "array",
+ "items" : {
+ "$ref" : "#/definitions/AgentAliasHistoryEvent"
+ },
+ "maxItems" : 10,
+ "description" : "The list of history events for an alias for an Agent.",
+ "insertionOrder" : false
+ },
+ "AgentAliasId" : {
+ "type" : "string",
+ "maxLength" : 10,
+ "minLength" : 10,
+ "pattern" : "^(\\bTSTALIASID\\b|[0-9a-zA-Z]+)$",
+ "description" : "Id for an Agent Alias generated at the server side."
+ },
+ "AgentAliasName" : {
+ "type" : "string",
+ "pattern" : "^([0-9a-zA-Z][_-]?){1,100}$",
+ "description" : "Name for a resource."
+ },
+ "AgentAliasStatus" : {
+ "$ref" : "#/definitions/AgentAliasStatus"
+ },
+ "AgentId" : {
+ "type" : "string",
+ "pattern" : "^[0-9a-zA-Z]{10}$",
+ "description" : "Identifier for a resource."
+ },
+ "CreatedAt" : {
+ "type" : "string",
+ "description" : "Time Stamp."
+ },
+ "Description" : {
+ "type" : "string",
+ "maxLength" : 200,
+ "minLength" : 1,
+ "description" : "Description of the Resource."
+ },
+ "RoutingConfiguration" : {
+ "type" : "array",
+ "items" : {
+ "$ref" : "#/definitions/AgentAliasRoutingConfigurationListItem"
+ },
+ "maxItems" : 1,
+ "description" : "Routing configuration for an Agent alias.",
+ "insertionOrder" : false
+ },
+ "Tags" : {
+ "$ref" : "#/definitions/TagsMap"
+ },
+ "UpdatedAt" : {
+ "type" : "string",
+ "description" : "Time Stamp."
+ }
+ },
+ "required" : [ "AgentAliasName", "AgentId" ],
+ "readOnlyProperties" : [ "/properties/AgentAliasArn", "/properties/AgentAliasHistoryEvents", "/properties/AgentAliasId", "/properties/AgentAliasStatus", "/properties/CreatedAt", "/properties/UpdatedAt" ],
+ "createOnlyProperties" : [ "/properties/AgentId" ],
+ "primaryIdentifier" : [ "/properties/AgentId", "/properties/AgentAliasId" ],
+ "additionalIdentifiers" : [ [ "/properties/AgentAliasArn" ] ],
+ "handlers" : {
+ "create" : {
+ "permissions" : [ "bedrock:PrepareAgent", "bedrock:GetAgent", "bedrock:CreateAgentAlias", "bedrock:TagResource", "bedrock:GetAgentAlias", "bedrock:ListTagsForResource" ]
+ },
+ "read" : {
+ "permissions" : [ "bedrock:GetAgentAlias", "bedrock:ListTagsForResource" ]
+ },
+ "update" : {
+ "permissions" : [ "bedrock:PrepareAgent", "bedrock:GetAgent", "bedrock:UpdateAgentAlias", "bedrock:TagResource", "bedrock:UntagResource", "bedrock:GetAgentAlias", "bedrock:ListTagsForResource" ]
+ },
+ "delete" : {
+ "permissions" : [ "bedrock:DeleteAgentAlias" ]
+ },
+ "list" : {
+ "permissions" : [ "bedrock:ListAgentAliases" ],
+ "handlerSchema" : {
+ "properties" : {
+ "AgentId" : {
+ "$ref" : "resource-schema.json#/properties/AgentId"
+ }
+ },
+ "required" : [ "AgentId" ]
+ }
+ }
+ },
+ "tagging" : {
+ "cloudFormationSystemTags" : false,
+ "tagOnCreate" : false,
+ "tagProperty" : "/properties/Tags",
+ "tagUpdatable" : true,
+ "taggable" : true
+ },
+ "additionalProperties" : false
+}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-cleanrooms-configuredtable.json b/aws-cloudformation-schema/aws-cleanrooms-configuredtable.json
index b1800fe92c..f5fd3d9892 100644
--- a/aws-cloudformation-schema/aws-cleanrooms-configuredtable.json
+++ b/aws-cloudformation-schema/aws-cleanrooms-configuredtable.json
@@ -66,7 +66,7 @@
},
"ScalarFunctions" : {
"type" : "string",
- "enum" : [ "TRUNC", "ABS", "CEILING", "FLOOR", "LN", "LOG", "ROUND", "SQRT", "CAST", "LOWER", "RTRIM", "UPPER", "COALESCE" ]
+ "enum" : [ "TRUNC", "ABS", "CEILING", "FLOOR", "LN", "LOG", "ROUND", "SQRT", "CAST", "LOWER", "RTRIM", "UPPER", "COALESCE", "CONVERT", "CURRENT_DATE", "DATEADD", "EXTRACT", "GETDATE", "SUBSTRING", "TO_CHAR", "TO_DATE", "TO_NUMBER", "TO_TIMESTAMP", "TRIM" ]
},
"AnalysisRuleAggregation" : {
"type" : "object",
@@ -181,6 +181,31 @@
"$ref" : "#/definitions/AllowedAnalysisProvider"
}
},
+ "DifferentialPrivacyColumn" : {
+ "type" : "object",
+ "properties" : {
+ "Name" : {
+ "type" : "string"
+ }
+ },
+ "required" : [ "Name" ],
+ "additionalProperties" : false
+ },
+ "DifferentialPrivacy" : {
+ "type" : "object",
+ "properties" : {
+ "Columns" : {
+ "type" : "array",
+ "insertionOrder" : false,
+ "items" : {
+ "$ref" : "#/definitions/DifferentialPrivacyColumn"
+ },
+ "minItems" : 1
+ }
+ },
+ "required" : [ "Columns" ],
+ "additionalProperties" : false
+ },
"AnalysisRuleCustom" : {
"type" : "object",
"properties" : {
@@ -189,6 +214,9 @@
},
"AllowedAnalysisProviders" : {
"$ref" : "#/definitions/AllowedAnalysisProviders"
+ },
+ "DifferentialPrivacy" : {
+ "$ref" : "#/definitions/DifferentialPrivacy"
}
},
"required" : [ "AllowedAnalyses" ],
diff --git a/aws-cloudformation-schema/aws-cloudfront-distribution.json b/aws-cloudformation-schema/aws-cloudfront-distribution.json
index 26252bce20..1bff923ccf 100644
--- a/aws-cloudformation-schema/aws-cloudfront-distribution.json
+++ b/aws-cloudformation-schema/aws-cloudfront-distribution.json
@@ -34,7 +34,7 @@
"DefaultTTL" : {
"default" : 86400,
"type" : "number",
- "description" : "This field is deprecated. We recommend that you use the ``DefaultTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The default amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide"
+ "description" : "This field is deprecated. We recommend that you use the ``DefaultTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The default amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*."
},
"FieldLevelEncryptionId" : {
"default" : "",
@@ -43,7 +43,7 @@
},
"ForwardedValues" : {
"$ref" : "#/definitions/ForwardedValues",
- "description" : "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field. For more information, see [Working with policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/working-with-policies.html) in the *Amazon CloudFront Developer Guide*.\n If you want to include values in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n If you want to send values to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-r"
+ "description" : "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field. For more information, see [Working with policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/working-with-policies.html) in the *Amazon CloudFront Developer Guide*.\n If you want to include values in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n If you want to send values to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) or [Using the managed origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-origin-request-policies.html) in the *Amazon CloudFront Developer Guide*.\n A ``CacheBehavior`` must include either a ``CachePolicyId`` or ``ForwardedValues``. We recommend that you use a ``CachePolicyId``.\n A complex type that specifies how CloudFront handles query strings, cookies, and HTTP headers."
},
"FunctionAssociations" : {
"items" : {
@@ -64,12 +64,12 @@
"MaxTTL" : {
"default" : 31536000,
"type" : "number",
- "description" : "This field is deprecated. We recommend that you use the ``MaxTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The maximum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration."
+ "description" : "This field is deprecated. We recommend that you use the ``MaxTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The maximum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*."
},
"MinTTL" : {
"default" : 0,
"type" : "number",
- "description" : "This field is deprecated. We recommend that you use the ``MinTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*.\n You must specify ``0`` for ``MinTTL`` if you configure CloudFront to forward all headers to your origin (under ``He"
+ "description" : "This field is deprecated. We recommend that you use the ``MinTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*.\n You must specify ``0`` for ``MinTTL`` if you configure CloudFront to forward all headers to your origin (under ``Headers``, if you specify ``1`` for ``Quantity`` and ``*`` for ``Name``)."
},
"OriginRequestPolicyId" : {
"type" : "string",
@@ -114,19 +114,19 @@
},
"ViewerProtocolPolicy" : {
"type" : "string",
- "description" : "The protocol that viewers can use to access the files in the origin specified by ``TargetOriginId`` when a request matches the path pattern in ``PathPattern``. You can specify the following options:\n + ``allow-all``: Viewers can use HTTP or HTTPS.\n + ``redirect-to-https``: If a viewer submits an HTTP request, CloudFront returns an HTTP status code of 301 (Moved Permanently) to the viewer along with the HTTPS URL. The viewer then resubmits the request using the new URL.\n + ``https-only``: If a viewer sends an HTTP request, CloudFront returns an HTTP status code of 403 (Forbidden).\n \n For more information about requiring the HTTPS protocol, see [Requiring HTTPS Between Viewers and CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https-viewers-to-cloudfront.html) in the *Amazon CloudFront Developer Guide*.\n The only way to guarantee that viewers retrieve an object that was fetched from the origin using HTTPS is never to use any other protocol"
+ "description" : "The protocol that viewers can use to access the files in the origin specified by ``TargetOriginId`` when a request matches the path pattern in ``PathPattern``. You can specify the following options:\n + ``allow-all``: Viewers can use HTTP or HTTPS.\n + ``redirect-to-https``: If a viewer submits an HTTP request, CloudFront returns an HTTP status code of 301 (Moved Permanently) to the viewer along with the HTTPS URL. The viewer then resubmits the request using the new URL.\n + ``https-only``: If a viewer sends an HTTP request, CloudFront returns an HTTP status code of 403 (Forbidden).\n \n For more information about requiring the HTTPS protocol, see [Requiring HTTPS Between Viewers and CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https-viewers-to-cloudfront.html) in the *Amazon CloudFront Developer Guide*.\n The only way to guarantee that viewers retrieve an object that was fetched from the origin using HTTPS is never to use any other protocol to fetch the object. If you have recently changed from HTTP to HTTPS, we recommend that you clear your objects' cache because cached objects are protocol agnostic. That means that an edge location will return an object from the cache regardless of whether the current request protocol matches the protocol used previously. For more information, see [Managing Cache Expiration](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*."
}
},
"required" : [ "PathPattern", "TargetOriginId", "ViewerProtocolPolicy" ],
"type" : "object",
- "description" : "A complex type that describes how CloudFront processes requests.\n You must create at least as many cache behaviors (including the default cache behavior) as you have origins if you want CloudFront to serve objects from all of the origins. Each cache behavior specifies the one origin from which you want CloudFront to get objects. If you have two origins and only the default cache behavior, the default cache behavior will cause CloudFront to get objects from one of the origins, but the other origin is never used.\n For the current quota (formerly known as limit) on the number of cache behaviors that you can add to a distribution, see [Quotas](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/cloudfront-limits.html) in the *Amazon CloudFront Developer Guide*.\n If you don't want to specify any cache behaviors, include only an empty ``CacheBehaviors`` element. Don't include an empty ``CacheBehavior`` element because this is invalid.\n To delete all cache behaviors in an exist"
+ "description" : "A complex type that describes how CloudFront processes requests.\n You must create at least as many cache behaviors (including the default cache behavior) as you have origins if you want CloudFront to serve objects from all of the origins. Each cache behavior specifies the one origin from which you want CloudFront to get objects. If you have two origins and only the default cache behavior, the default cache behavior will cause CloudFront to get objects from one of the origins, but the other origin is never used.\n For the current quota (formerly known as limit) on the number of cache behaviors that you can add to a distribution, see [Quotas](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/cloudfront-limits.html) in the *Amazon CloudFront Developer Guide*.\n If you don't want to specify any cache behaviors, include only an empty ``CacheBehaviors`` element. Don't include an empty ``CacheBehavior`` element because this is invalid.\n To delete all cache behaviors in an existing distribution, update the distribution configuration and include only an empty ``CacheBehaviors`` element.\n To add, change, or remove one or more cache behaviors, update the distribution configuration and specify all of the cache behaviors that you want to include in the updated distribution.\n For more information about cache behaviors, see [Cache Behavior Settings](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesCacheBehavior) in the *Amazon CloudFront Developer Guide*."
},
"Cookies" : {
"additionalProperties" : false,
"properties" : {
"Forward" : {
"type" : "string",
- "description" : "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send cookies to the origin but not include them in the cache key, use origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n Specifies which cookies to forward to the origin for this cache behavior: all, none, or the list of cookies specified in the ``WhitelistedNames`` complex type.\n Amazon S3 doesn't process cookies. When the cache behavior is forw"
+ "description" : "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send cookies to the origin but not include them in the cache key, use origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n Specifies which cookies to forward to the origin for this cache behavior: all, none, or the list of cookies specified in the ``WhitelistedNames`` complex type.\n Amazon S3 doesn't process cookies. When the cache behavior is forwarding requests to an Amazon S3 origin, specify none for the ``Forward`` element."
},
"WhitelistedNames" : {
"items" : {
@@ -134,12 +134,12 @@
},
"type" : "array",
"uniqueItems" : false,
- "description" : "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send cookies to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n Required if you specify ``whitelist`` for the value of ``Forward``. A complex type that specifies how many different cookies you want CloudFront to forward to the origin for this cache behavior and, if you want to forward se"
+ "description" : "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send cookies to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n Required if you specify ``whitelist`` for the value of ``Forward``. A complex type that specifies how many different cookies you want CloudFront to forward to the origin for this cache behavior and, if you want to forward selected cookies, the names of those cookies.\n If you specify ``all`` or ``none`` for the value of ``Forward``, omit ``WhitelistedNames``. If you change the value of ``Forward`` from ``whitelist`` to ``all`` or ``none`` and you don't delete the ``WhitelistedNames`` element and its child elements, CloudFront deletes them automatically.\n For the current limit on the number of cookie names that you can whitelist for each cache behavior, see [CloudFront Limits](https://docs.aws.amazon.com/general/latest/gr/xrefaws_service_limits.html#limits_cloudfront) in the *General Reference*."
}
},
"required" : [ "Forward" ],
"type" : "object",
- "description" : "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send cookies to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n A complex type that specifies whether you want CloudFront to forward cookies to the origin and, if so, which ones. For more information about forwarding cookies to the origin, see [How CloudFront Forwards, Caches, and Logs C"
+ "description" : "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send cookies to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n A complex type that specifies whether you want CloudFront to forward cookies to the origin and, if so, which ones. For more information about forwarding cookies to the origin, see [How CloudFront Forwards, Caches, and Logs Cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Cookies.html) in the *Amazon CloudFront Developer Guide*."
},
"CustomErrorResponse" : {
"additionalProperties" : false,
@@ -159,7 +159,7 @@
},
"ResponsePagePath" : {
"type" : "string",
- "description" : "The path to the custom error page that you want CloudFront to return to a viewer when your origin returns the HTTP status code specified by ``ErrorCode``, for example, ``/4xx-errors/403-forbidden.html``. If you want to store your objects and your custom error pages in different locations, your distribution must include a cache behavior for which the following is true:\n + The value of ``PathPattern`` matches the path to your custom error messages. For example, suppose you saved custom error pages for 4xx errors in an Amazon S3 bucket in a directory named ``/4xx-errors``. Your distribution must include a cache behavior for which the path pattern routes requests for your custom error pages to that location, for example, ``/4xx-errors/*``.\n + The value of ``TargetOriginId`` specifies the value of the ``ID`` element for the origin that contains your custom error pages.\n \n If you specify a value for ``ResponsePagePath``, you must also specify a value for ``ResponseCode``.\n We recommend "
+ "description" : "The path to the custom error page that you want CloudFront to return to a viewer when your origin returns the HTTP status code specified by ``ErrorCode``, for example, ``/4xx-errors/403-forbidden.html``. If you want to store your objects and your custom error pages in different locations, your distribution must include a cache behavior for which the following is true:\n + The value of ``PathPattern`` matches the path to your custom error messages. For example, suppose you saved custom error pages for 4xx errors in an Amazon S3 bucket in a directory named ``/4xx-errors``. Your distribution must include a cache behavior for which the path pattern routes requests for your custom error pages to that location, for example, ``/4xx-errors/*``.\n + The value of ``TargetOriginId`` specifies the value of the ``ID`` element for the origin that contains your custom error pages.\n \n If you specify a value for ``ResponsePagePath``, you must also specify a value for ``ResponseCode``.\n We recommend that you store custom error pages in an Amazon S3 bucket. If you store custom error pages on an HTTP server and the server starts to return 5xx errors, CloudFront can't get the files that you want to return to viewers because the origin server is unavailable."
}
},
"required" : [ "ErrorCode" ],
@@ -241,7 +241,7 @@
"DefaultTTL" : {
"default" : 86400,
"type" : "number",
- "description" : "This field is deprecated. We recommend that you use the ``DefaultTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The default amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide"
+ "description" : "This field is deprecated. We recommend that you use the ``DefaultTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The default amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*."
},
"FieldLevelEncryptionId" : {
"default" : "",
@@ -250,7 +250,7 @@
},
"ForwardedValues" : {
"$ref" : "#/definitions/ForwardedValues",
- "description" : "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field. For more information, see [Working with policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/working-with-policies.html) in the *Amazon CloudFront Developer Guide*.\n If you want to include values in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n If you want to send values to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-r"
+ "description" : "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field. For more information, see [Working with policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/working-with-policies.html) in the *Amazon CloudFront Developer Guide*.\n If you want to include values in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n If you want to send values to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) or [Using the managed origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-origin-request-policies.html) in the *Amazon CloudFront Developer Guide*.\n A ``DefaultCacheBehavior`` must include either a ``CachePolicyId`` or ``ForwardedValues``. We recommend that you use a ``CachePolicyId``.\n A complex type that specifies how CloudFront handles query strings, cookies, and HTTP headers."
},
"FunctionAssociations" : {
"items" : {
@@ -271,12 +271,12 @@
"MaxTTL" : {
"default" : 31536000,
"type" : "number",
- "description" : "This field is deprecated. We recommend that you use the ``MaxTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The maximum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration."
+ "description" : "This field is deprecated. We recommend that you use the ``MaxTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The maximum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*."
},
"MinTTL" : {
"default" : 0,
"type" : "number",
- "description" : "This field is deprecated. We recommend that you use the ``MinTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*.\n You must specify ``0`` for ``MinTTL`` if you configure CloudFront to forward all headers to your origin (under ``He"
+ "description" : "This field is deprecated. We recommend that you use the ``MinTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*.\n You must specify ``0`` for ``MinTTL`` if you configure CloudFront to forward all headers to your origin (under ``Headers``, if you specify ``1`` for ``Quantity`` and ``*`` for ``Name``)."
},
"OriginRequestPolicyId" : {
"default" : "",
@@ -320,7 +320,7 @@
},
"ViewerProtocolPolicy" : {
"type" : "string",
- "description" : "The protocol that viewers can use to access the files in the origin specified by ``TargetOriginId`` when a request matches the path pattern in ``PathPattern``. You can specify the following options:\n + ``allow-all``: Viewers can use HTTP or HTTPS.\n + ``redirect-to-https``: If a viewer submits an HTTP request, CloudFront returns an HTTP status code of 301 (Moved Permanently) to the viewer along with the HTTPS URL. The viewer then resubmits the request using the new URL.\n + ``https-only``: If a viewer sends an HTTP request, CloudFront returns an HTTP status code of 403 (Forbidden).\n \n For more information about requiring the HTTPS protocol, see [Requiring HTTPS Between Viewers and CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https-viewers-to-cloudfront.html) in the *Amazon CloudFront Developer Guide*.\n The only way to guarantee that viewers retrieve an object that was fetched from the origin using HTTPS is never to use any other protocol"
+ "description" : "The protocol that viewers can use to access the files in the origin specified by ``TargetOriginId`` when a request matches the path pattern in ``PathPattern``. You can specify the following options:\n + ``allow-all``: Viewers can use HTTP or HTTPS.\n + ``redirect-to-https``: If a viewer submits an HTTP request, CloudFront returns an HTTP status code of 301 (Moved Permanently) to the viewer along with the HTTPS URL. The viewer then resubmits the request using the new URL.\n + ``https-only``: If a viewer sends an HTTP request, CloudFront returns an HTTP status code of 403 (Forbidden).\n \n For more information about requiring the HTTPS protocol, see [Requiring HTTPS Between Viewers and CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https-viewers-to-cloudfront.html) in the *Amazon CloudFront Developer Guide*.\n The only way to guarantee that viewers retrieve an object that was fetched from the origin using HTTPS is never to use any other protocol to fetch the object. If you have recently changed from HTTP to HTTPS, we recommend that you clear your objects' cache because cached objects are protocol agnostic. That means that an edge location will return an object from the cache regardless of whether the current request protocol matches the protocol used previously. For more information, see [Managing Cache Expiration](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*."
}
},
"required" : [ "TargetOriginId", "ViewerProtocolPolicy" ],
@@ -382,7 +382,7 @@
"DefaultRootObject" : {
"default" : "",
"type" : "string",
- "description" : "The object that you want CloudFront to request from your origin (for example, ``index.html``) when a viewer requests the root URL for your distribution (``https://www.example.com``) instead of an object in your distribution (``https://www.example.com/product-description.html``). Specifying a default root object avoids exposing the contents of your distribution.\n Specify only the object name, for example, ``index.html``. Don't add a ``/`` before the object name.\n If you don't want to specify a default root object when you create a distribution, include an empty ``DefaultRootObject`` element.\n To delete the default root object from an existing distribution, update the distribution configuration and include an empty ``DefaultRootObject`` element.\n To replace the default root object, update the distribution configuration and specify the new object.\n For more information about the default root object, see [Creating a Default Root Object](https://docs.aws.amazon.com/AmazonCloudFront/latest/D"
+ "description" : "The object that you want CloudFront to request from your origin (for example, ``index.html``) when a viewer requests the root URL for your distribution (``https://www.example.com``) instead of an object in your distribution (``https://www.example.com/product-description.html``). Specifying a default root object avoids exposing the contents of your distribution.\n Specify only the object name, for example, ``index.html``. Don't add a ``/`` before the object name.\n If you don't want to specify a default root object when you create a distribution, include an empty ``DefaultRootObject`` element.\n To delete the default root object from an existing distribution, update the distribution configuration and include an empty ``DefaultRootObject`` element.\n To replace the default root object, update the distribution configuration and specify the new object.\n For more information about the default root object, see [Creating a Default Root Object](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/DefaultRootObject.html) in the *Amazon CloudFront Developer Guide*."
},
"Enabled" : {
"type" : "boolean",
@@ -395,7 +395,7 @@
},
"IPV6Enabled" : {
"type" : "boolean",
- "description" : "If you want CloudFront to respond to IPv6 DNS requests with an IPv6 address for your distribution, specify ``true``. If you specify ``false``, CloudFront responds to IPv6 DNS requests with the DNS response code ``NOERROR`` and with no IP addresses. This allows viewers to submit a second request, for an IPv4 address for your distribution.\n In general, you should enable IPv6 if you have users on IPv6 networks who want to access your content. However, if you're using signed URLs or signed cookies to restrict access to your content, and if you're using a custom policy that includes the ``IpAddress`` parameter to restrict the IP addresses that can access your content, don't enable IPv6. If you want to restrict access to some content by IP address and not restrict access to other content (or restrict access but not by IP address), you can create two distributions. For more information, see [Creating a Signed URL Using a Custom Policy](https://docs.aws.amazon.com/AmazonCloudFront/latest/Devel"
+ "description" : "If you want CloudFront to respond to IPv6 DNS requests with an IPv6 address for your distribution, specify ``true``. If you specify ``false``, CloudFront responds to IPv6 DNS requests with the DNS response code ``NOERROR`` and with no IP addresses. This allows viewers to submit a second request, for an IPv4 address for your distribution.\n In general, you should enable IPv6 if you have users on IPv6 networks who want to access your content. However, if you're using signed URLs or signed cookies to restrict access to your content, and if you're using a custom policy that includes the ``IpAddress`` parameter to restrict the IP addresses that can access your content, don't enable IPv6. If you want to restrict access to some content by IP address and not restrict access to other content (or restrict access but not by IP address), you can create two distributions. For more information, see [Creating a Signed URL Using a Custom Policy](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-creating-signed-url-custom-policy.html) in the *Amazon CloudFront Developer Guide*.\n If you're using an R53AWSIntlong alias resource record set to route traffic to your CloudFront distribution, you need to create a second alias resource record set when both of the following are true:\n + You enable IPv6 for the distribution\n + You're using alternate domain names in the URLs for your objects\n \n For more information, see [Routing Traffic to an Amazon CloudFront Web Distribution by Using Your Domain Name](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-cloudfront-distribution.html) in the *Developer Guide*.\n If you created a CNAME resource record set, either with R53AWSIntlong or with another DNS service, you don't need to make any changes. A CNAME record will route traffic to your distribution regardless of the IP address format of the viewer request."
},
"Logging" : {
"$ref" : "#/definitions/Logging",
@@ -446,7 +446,7 @@
"WebACLId" : {
"default" : "",
"type" : "string",
- "description" : "A unique identifier that specifies the WAF web ACL, if any, to associate with this distribution. To specify a web ACL created using the latest version of WAF, use the ACL ARN, for example ``arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/473e64fd-f30b-4765-81a0-62ad96dd167a``. To specify a web ACL created using WAF Classic, use the ACL ID, for example ``473e64fd-f30b-4765-81a0-62ad96dd167a``.\n WAF is a web application firewall that lets you monitor the HTTP and HTTPS requests that are forwarded to CloudFront, and lets you control access to your content. Based on conditions that you specify, such as the IP addresses that requests originate from or the values of query strings, CloudFront responds to requests either with the requested content or with an HTTP 403 status code (Forbidden). You can also configure CloudFront to return a custom error page when a request is blocked. For more information about WAF, see the [Developer Guide](https://docs.aws.amazon.com/waf/latest"
+ "description" : "A unique identifier that specifies the WAF web ACL, if any, to associate with this distribution. To specify a web ACL created using the latest version of WAF, use the ACL ARN, for example ``arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/473e64fd-f30b-4765-81a0-62ad96dd167a``. To specify a web ACL created using WAF Classic, use the ACL ID, for example ``473e64fd-f30b-4765-81a0-62ad96dd167a``.\n WAF is a web application firewall that lets you monitor the HTTP and HTTPS requests that are forwarded to CloudFront, and lets you control access to your content. Based on conditions that you specify, such as the IP addresses that requests originate from or the values of query strings, CloudFront responds to requests either with the requested content or with an HTTP 403 status code (Forbidden). You can also configure CloudFront to return a custom error page when a request is blocked. For more information about WAF, see the [Developer Guide](https://docs.aws.amazon.com/waf/latest/developerguide/what-is-aws-waf.html)."
}
},
"required" : [ "Enabled", "DefaultCacheBehavior" ],
@@ -461,7 +461,7 @@
"default" : {
"Forward" : "none"
},
- "description" : "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send cookies to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n A complex type that specifies whether you want CloudFront to forward cookies to the origin and, if so, which ones. For more information about forwarding cookies to the origin, see [How CloudFront Forwards, Caches, and Logs C"
+ "description" : "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send cookies to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n A complex type that specifies whether you want CloudFront to forward cookies to the origin and, if so, which ones. For more information about forwarding cookies to the origin, see [How CloudFront Forwards, Caches, and Logs Cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Cookies.html) in the *Amazon CloudFront Developer Guide*."
},
"Headers" : {
"items" : {
@@ -469,11 +469,11 @@
},
"type" : "array",
"uniqueItems" : false,
- "description" : "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include headers in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send headers to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n A complex type that specifies the ``Headers``, if any, that you want CloudFront to forward to the origin for this cache behavior (whitelisted headers). For the headers that you specify, CloudFront also caches separate versio"
+ "description" : "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include headers in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send headers to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n A complex type that specifies the ``Headers``, if any, that you want CloudFront to forward to the origin for this cache behavior (whitelisted headers). For the headers that you specify, CloudFront also caches separate versions of a specified object that is based on the header values in viewer requests.\n For more information, see [Caching Content Based on Request Headers](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/header-caching.html) in the *Amazon CloudFront Developer Guide*."
},
"QueryString" : {
"type" : "boolean",
- "description" : "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include query strings in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send query strings to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n Indicates whether you want CloudFront to forward query strings to the origin that is associated with this cache behavior and cache based on the query string parameters. CloudFront behavior depends on the value of"
+ "description" : "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include query strings in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send query strings to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n Indicates whether you want CloudFront to forward query strings to the origin that is associated with this cache behavior and cache based on the query string parameters. CloudFront behavior depends on the value of ``QueryString`` and on the values that you specify for ``QueryStringCacheKeys``, if any:\n If you specify true for ``QueryString`` and you don't specify any values for ``QueryStringCacheKeys``, CloudFront forwards all query string parameters to the origin and caches based on all query string parameters. Depending on how many query string parameters and values you have, this can adversely affect performance because CloudFront must forward more requests to the origin.\n If you specify true for ``QueryString`` and you specify one or more values for ``QueryStringCacheKeys``, CloudFront forwards all query string parameters to the origin, but it only caches based on the query string parameters that you specify.\n If you specify false for ``QueryString``, CloudFront doesn't forward any query string parameters to the origin, and doesn't cache based on query string parameters.\n For more information, see [Configuring CloudFront to Cache Based on Query String Parameters](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/QueryStringParameters.html) in the *Amazon CloudFront Developer Guide*."
},
"QueryStringCacheKeys" : {
"items" : {
@@ -801,7 +801,7 @@
"OriginAccessIdentity" : {
"default" : "",
"type" : "string",
- "description" : "The CloudFront origin access identity to associate with the origin. Use an origin access identity to configure the origin so that viewers can *only* access objects in an Amazon S3 bucket through CloudFront. The format of the value is:\n origin-access-identity/cloudfront/*ID-of-origin-access-identity* \n where ``ID-of-origin-access-identity`` is the value that CloudFront returned in the ``ID`` element when you created the origin access identity.\n If you want viewers to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty ``OriginAccessIdentity`` element.\n To delete the origin access identity from an existing distribution, update the distribution configuration and include an empty ``OriginAccessIdentity`` element.\n To replace the origin access identity, update the distribution configuration and specify the new origin access identity.\n For more information about the origin access identity, see [Serving Private Content through CloudFront](https://d"
+ "description" : "The CloudFront origin access identity to associate with the origin. Use an origin access identity to configure the origin so that viewers can *only* access objects in an Amazon S3 bucket through CloudFront. The format of the value is:\n origin-access-identity/cloudfront/*ID-of-origin-access-identity* \n where ``ID-of-origin-access-identity`` is the value that CloudFront returned in the ``ID`` element when you created the origin access identity.\n If you want viewers to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty ``OriginAccessIdentity`` element.\n To delete the origin access identity from an existing distribution, update the distribution configuration and include an empty ``OriginAccessIdentity`` element.\n To replace the origin access identity, update the distribution configuration and specify the new origin access identity.\n For more information about the origin access identity, see [Serving Private Content through CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) in the *Amazon CloudFront Developer Guide*."
}
},
"type" : "object",
@@ -860,15 +860,15 @@
},
"MinimumProtocolVersion" : {
"type" : "string",
- "description" : "If the distribution uses ``Aliases`` (alternate domain names or CNAMEs), specify the security policy that you want CloudFront to use for HTTPS connections with viewers. The security policy determines two settings:\n + The minimum SSL/TLS protocol that CloudFront can use to communicate with viewers.\n + The ciphers that CloudFront can use to encrypt the content that it returns to viewers.\n \n For more information, see [Security Policy](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValues-security-policy) and [Supported Protocols and Ciphers Between Viewers and CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/secure-connections-supported-viewer-protocols-ciphers.html#secure-connections-supported-ciphers) in the *Amazon CloudFront Developer Guide*.\n On the CloudFront console, this setting is called *Security Policy*.\n When you're using SNI only (you set ``SSLSupportMethod`` to ``sni-onl"
+ "description" : "If the distribution uses ``Aliases`` (alternate domain names or CNAMEs), specify the security policy that you want CloudFront to use for HTTPS connections with viewers. The security policy determines two settings:\n + The minimum SSL/TLS protocol that CloudFront can use to communicate with viewers.\n + The ciphers that CloudFront can use to encrypt the content that it returns to viewers.\n \n For more information, see [Security Policy](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValues-security-policy) and [Supported Protocols and Ciphers Between Viewers and CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/secure-connections-supported-viewer-protocols-ciphers.html#secure-connections-supported-ciphers) in the *Amazon CloudFront Developer Guide*.\n On the CloudFront console, this setting is called *Security Policy*.\n When you're using SNI only (you set ``SSLSupportMethod`` to ``sni-only``), you must specify ``TLSv1`` or higher. (In CloudFormation, the field name is ``SslSupportMethod``. Note the different capitalization.)\n If the distribution uses the CloudFront domain name such as ``d111111abcdef8.cloudfront.net`` (you set ``CloudFrontDefaultCertificate`` to ``true``), CloudFront automatically sets the security policy to ``TLSv1`` regardless of the value that you set here."
},
"SslSupportMethod" : {
"type" : "string",
- "description" : "In CloudFormation, this field name is ``SslSupportMethod``. Note the different capitalization.\n If the distribution uses ``Aliases`` (alternate domain names or CNAMEs), specify which viewers the distribution accepts HTTPS connections from.\n + ``sni-only`` – The distribution accepts HTTPS connections from only viewers that support [server name indication (SNI)](https://docs.aws.amazon.com/https://en.wikipedia.org/wiki/Server_Name_Indication). This is recommended. Most browsers and clients support SNI.\n + ``vip`` – The distribution accepts HTTPS connections from all viewers including those that don't support SNI. This is not recommended, and results in additional monthly charges from CloudFront.\n + ``static-ip`` - Do not specify this value unless your distribution has been enabled for this feature by the CloudFront team. If you have a use case that requires static IP addresses for a distribution, contact CloudFront through the [Center](https://docs.aws.amazon.com/support/home)."
+ "description" : "In CloudFormation, this field name is ``SslSupportMethod``. Note the different capitalization.\n If the distribution uses ``Aliases`` (alternate domain names or CNAMEs), specify which viewers the distribution accepts HTTPS connections from.\n + ``sni-only`` – The distribution accepts HTTPS connections from only viewers that support [server name indication (SNI)](https://docs.aws.amazon.com/https://en.wikipedia.org/wiki/Server_Name_Indication). This is recommended. Most browsers and clients support SNI.\n + ``vip`` – The distribution accepts HTTPS connections from all viewers including those that don't support SNI. This is not recommended, and results in additional monthly charges from CloudFront.\n + ``static-ip`` - Do not specify this value unless your distribution has been enabled for this feature by the CloudFront team. If you have a use case that requires static IP addresses for a distribution, contact CloudFront through the [Center](https://docs.aws.amazon.com/support/home).\n \n If the distribution uses the CloudFront domain name such as ``d111111abcdef8.cloudfront.net``, don't set a value for this field."
}
},
"type" : "object",
- "description" : "A complex type that determines the distribution's SSL/TLS configuration for communicating with viewers.\n If the distribution doesn't use ``Aliases`` (also known as alternate domain names or CNAMEs)—that is, if the distribution uses the CloudFront domain name such as ``d111111abcdef8.cloudfront.net``—set ``CloudFrontDefaultCertificate`` to ``true`` and leave all other fields empty.\n If the distribution uses ``Aliases`` (alternate domain names or CNAMEs), use the fields in this type to specify the following settings:\n + Which viewers the distribution accepts HTTPS connections from: only viewers that support [server name indication (SNI)](https://docs.aws.amazon.com/https://en.wikipedia.org/wiki/Server_Name_Indication) (recommended), or all viewers including those that don't support SNI.\n + To accept HTTPS connections from only viewers that support SNI, set ``SSLSupportMethod`` to ``sni-only``. This is recommended. Most browsers and clients support SNI. (In CloudFormation, the field n"
+ "description" : "A complex type that determines the distribution's SSL/TLS configuration for communicating with viewers.\n If the distribution doesn't use ``Aliases`` (also known as alternate domain names or CNAMEs)—that is, if the distribution uses the CloudFront domain name such as ``d111111abcdef8.cloudfront.net``—set ``CloudFrontDefaultCertificate`` to ``true`` and leave all other fields empty.\n If the distribution uses ``Aliases`` (alternate domain names or CNAMEs), use the fields in this type to specify the following settings:\n + Which viewers the distribution accepts HTTPS connections from: only viewers that support [server name indication (SNI)](https://docs.aws.amazon.com/https://en.wikipedia.org/wiki/Server_Name_Indication) (recommended), or all viewers including those that don't support SNI.\n + To accept HTTPS connections from only viewers that support SNI, set ``SSLSupportMethod`` to ``sni-only``. This is recommended. Most browsers and clients support SNI. (In CloudFormation, the field name is ``SslSupportMethod``. Note the different capitalization.)\n + To accept HTTPS connections from all viewers, including those that don't support SNI, set ``SSLSupportMethod`` to ``vip``. This is not recommended, and results in additional monthly charges from CloudFront. (In CloudFormation, the field name is ``SslSupportMethod``. Note the different capitalization.)\n \n + The minimum SSL/TLS protocol version that the distribution can use to communicate with viewers. To specify a minimum version, choose a value for ``MinimumProtocolVersion``. For more information, see [Security Policy](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValues-security-policy) in the *Amazon CloudFront Developer Guide*.\n + The location of the SSL/TLS certificate, [(ACM)](https://docs.aws.amazon.com/acm/latest/userguide/acm-overview.html) (recommended) or [(IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html). You specify the location by setting a value in one of the following fields (not both):\n + ``ACMCertificateArn`` (In CloudFormation, this field name is ``AcmCertificateArn``. Note the different capitalization.)\n + ``IAMCertificateId`` (In CloudFormation, this field name is ``IamCertificateId``. Note the different capitalization.)\n \n \n All distributions support HTTPS connections from viewers. To require viewers to use HTTPS only, or to redirect them from HTTP to HTTPS, use ``ViewerProtocolPolicy`` in the ``CacheBehavior`` or ``DefaultCacheBehavior``. To specify how CloudFront should use SSL/TLS to communicate with your custom origin, use ``CustomOriginConfig``.\n For more information, see [Using HTTPS with CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https.html) and [Using Alternate Domain Names and HTTPS](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https-alternate-domain-names.html) in the *Amazon CloudFront Developer Guide*."
}
},
"deprecatedProperties" : [ "/properties/DistributionConfig/properties/CustomOrigin", "/properties/DistributionConfig/properties/S3Origin" ],
diff --git a/aws-cloudformation-schema/aws-cloudfront-originaccesscontrol.json b/aws-cloudformation-schema/aws-cloudfront-originaccesscontrol.json
index d07a485b6f..96e3045974 100644
--- a/aws-cloudformation-schema/aws-cloudfront-originaccesscontrol.json
+++ b/aws-cloudformation-schema/aws-cloudfront-originaccesscontrol.json
@@ -11,7 +11,7 @@
"type" : "string"
},
"OriginAccessControlOriginType" : {
- "pattern" : "^(s3|mediastore)$",
+ "pattern" : "^(s3|mediastore|lambda|mediapackagev2)$",
"type" : "string"
},
"SigningBehavior" : {
diff --git a/aws-cloudformation-schema/aws-cloudwatch-anomalydetector.json b/aws-cloudformation-schema/aws-cloudwatch-anomalydetector.json
index b15984c3e1..da6f2b7c1f 100644
--- a/aws-cloudformation-schema/aws-cloudwatch-anomalydetector.json
+++ b/aws-cloudformation-schema/aws-cloudwatch-anomalydetector.json
@@ -169,6 +169,9 @@
"$ref" : "#/definitions/Dimension"
}
},
+ "AccountId" : {
+ "type" : "string"
+ },
"Stat" : {
"type" : "string"
},
diff --git a/aws-cloudformation-schema/aws-codeartifact-packagegroup.json b/aws-cloudformation-schema/aws-codeartifact-packagegroup.json
new file mode 100644
index 0000000000..415ba4dd60
--- /dev/null
+++ b/aws-cloudformation-schema/aws-codeartifact-packagegroup.json
@@ -0,0 +1,162 @@
+{
+ "typeName" : "AWS::CodeArtifact::PackageGroup",
+ "description" : "The resource schema to create a CodeArtifact package group.",
+ "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-codeartifact",
+ "definitions" : {
+ "Tag" : {
+ "description" : "A key-value pair to associate with a resource.",
+ "type" : "object",
+ "properties" : {
+ "Key" : {
+ "type" : "string",
+ "description" : "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. ",
+ "minLength" : 1,
+ "maxLength" : 128
+ },
+ "Value" : {
+ "type" : "string",
+ "description" : "The value for the tag. You can specify a value that is 1 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. ",
+ "minLength" : 1,
+ "maxLength" : 256
+ }
+ },
+ "required" : [ "Value", "Key" ],
+ "additionalProperties" : false
+ },
+ "OriginConfiguration" : {
+ "type" : "object",
+ "properties" : {
+ "Restrictions" : {
+ "description" : "The origin configuration that is applied to the package group.",
+ "type" : "object",
+ "$ref" : "#/definitions/Restrictions"
+ }
+ },
+ "required" : [ "Restrictions" ],
+ "additionalProperties" : false
+ },
+ "Restrictions" : {
+ "type" : "object",
+ "properties" : {
+ "Publish" : {
+ "type" : "object",
+ "description" : "The publish restriction determines if new package versions can be published.",
+ "$ref" : "#/definitions/RestrictionType"
+ },
+ "ExternalUpstream" : {
+ "type" : "object",
+ "description" : "The external upstream restriction determines if new package versions can be ingested or retained from external connections.",
+ "$ref" : "#/definitions/RestrictionType"
+ },
+ "InternalUpstream" : {
+ "type" : "object",
+ "description" : "The internal upstream restriction determines if new package versions can be ingested or retained from upstream repositories.",
+ "$ref" : "#/definitions/RestrictionType"
+ }
+ },
+ "additionalProperties" : false
+ },
+ "RestrictionType" : {
+ "type" : "object",
+ "properties" : {
+ "RestrictionMode" : {
+ "type" : "string",
+ "enum" : [ "ALLOW", "BLOCK", "ALLOW_SPECIFIC_REPOSITORIES", "INHERIT" ]
+ },
+ "Repositories" : {
+ "type" : "array",
+ "items" : {
+ "type" : "string"
+ }
+ }
+ },
+ "required" : [ "RestrictionMode" ],
+ "additionalProperties" : false
+ }
+ },
+ "properties" : {
+ "DomainName" : {
+ "description" : "The name of the domain that contains the package group.",
+ "type" : "string",
+ "pattern" : "^([a-z][a-z0-9\\-]{0,48}[a-z0-9])$",
+ "minLength" : 2,
+ "maxLength" : 50
+ },
+ "DomainOwner" : {
+ "description" : "The 12-digit account ID of the AWS account that owns the domain.",
+ "pattern" : "[0-9]{12}",
+ "type" : "string"
+ },
+ "Pattern" : {
+ "description" : "The package group pattern that is used to gather packages.",
+ "type" : "string",
+ "minLength" : 2,
+ "maxLength" : 520
+ },
+ "ContactInfo" : {
+ "description" : "The contact info of the package group.",
+ "type" : "string",
+ "maxLength" : 1000
+ },
+ "Description" : {
+ "description" : "The text description of the package group.",
+ "type" : "string",
+ "maxLength" : 1000
+ },
+ "OriginConfiguration" : {
+ "description" : "The package origin configuration of the package group.",
+ "type" : "object",
+ "$ref" : "#/definitions/OriginConfiguration"
+ },
+ "Tags" : {
+ "type" : "array",
+ "description" : "An array of key-value pairs to apply to the package group.",
+ "items" : {
+ "$ref" : "#/definitions/Tag"
+ }
+ },
+ "Arn" : {
+ "description" : "The ARN of the package group.",
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 2048
+ }
+ },
+ "additionalProperties" : false,
+ "required" : [ "Pattern", "DomainName" ],
+ "createOnlyProperties" : [ "/properties/DomainName", "/properties/Pattern" ],
+ "readOnlyProperties" : [ "/properties/Arn" ],
+ "primaryIdentifier" : [ "/properties/Arn" ],
+ "handlers" : {
+ "create" : {
+ "permissions" : [ "codeartifact:CreatePackageGroup", "codeartifact:DescribePackageGroup", "codeartifact:UpdatePackageGroup", "codeartifact:UpdatePackageGroupOriginConfiguration", "codeartifact:ListAllowedRepositoriesForGroup", "codeartifact:ListTagsForResource", "codeartifact:TagResource" ]
+ },
+ "read" : {
+ "permissions" : [ "codeartifact:DescribePackageGroup", "codeartifact:ListAllowedRepositoriesForGroup", "codeartifact:ListTagsForResource" ]
+ },
+ "update" : {
+ "permissions" : [ "codeartifact:UpdatePackageGroup", "codeartifact:UpdatePackageGroupOriginConfiguration", "codeartifact:DescribePackageGroup", "codeartifact:ListAllowedRepositoriesForGroup", "codeartifact:ListTagsForResource", "codeartifact:TagResource", "codeartifact:UntagResource" ]
+ },
+ "delete" : {
+ "permissions" : [ "codeartifact:DeletePackageGroup", "codeartifact:DescribePackageGroup" ]
+ },
+ "list" : {
+ "handlerSchema" : {
+ "properties" : {
+ "DomainName" : {
+ "$ref" : "resource-schema.json#/properties/DomainName"
+ }
+ },
+ "required" : [ "DomainName" ]
+ },
+ "permissions" : [ "codeartifact:ListPackageGroups" ]
+ }
+ },
+ "tagging" : {
+ "taggable" : true,
+ "tagOnCreate" : true,
+ "tagUpdatable" : true,
+ "cloudFormationSystemTags" : true,
+ "tagProperty" : "/properties/Tags"
+ }
+}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-codeconnections-connection.json b/aws-cloudformation-schema/aws-codeconnections-connection.json
new file mode 100644
index 0000000000..999113b440
--- /dev/null
+++ b/aws-cloudformation-schema/aws-codeconnections-connection.json
@@ -0,0 +1,101 @@
+{
+ "typeName" : "AWS::CodeConnections::Connection",
+ "description" : "Schema for AWS::CodeConnections::Connection resource which can be used to connect external source providers with other AWS services (i.e. AWS CodePipeline)",
+ "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-codeconnections.git",
+ "definitions" : {
+ "Tag" : {
+ "description" : "A key-value pair to associate with a resource.",
+ "type" : "object",
+ "properties" : {
+ "Key" : {
+ "type" : "string",
+ "description" : "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. ",
+ "minLength" : 1,
+ "maxLength" : 128
+ },
+ "Value" : {
+ "type" : "string",
+ "description" : "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. ",
+ "minLength" : 0,
+ "maxLength" : 256
+ }
+ },
+ "required" : [ "Value", "Key" ],
+ "additionalProperties" : false
+ }
+ },
+ "properties" : {
+ "ConnectionArn" : {
+ "description" : "The Amazon Resource Name (ARN) of the connection. The ARN is used as the connection reference when the connection is shared between AWS services.",
+ "type" : "string",
+ "minLength" : 0,
+ "maxLength" : 256,
+ "pattern" : "arn:aws(-[\\w]+)*:.+:.+:[0-9]{12}:.+"
+ },
+ "ConnectionName" : {
+ "description" : "The name of the connection. Connection names must be unique in an AWS user account.",
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 32
+ },
+ "ConnectionStatus" : {
+ "description" : "The current status of the connection.",
+ "type" : "string"
+ },
+ "OwnerAccountId" : {
+ "description" : "The name of the external provider where your third-party code repository is configured. For Bitbucket, this is the account ID of the owner of the Bitbucket repository.",
+ "type" : "string",
+ "minLength" : 12,
+ "maxLength" : 12,
+ "pattern" : "[0-9]{12}"
+ },
+ "ProviderType" : {
+ "description" : "The name of the external provider where your third-party code repository is configured. You must specify either a ProviderType or a HostArn.",
+ "type" : "string"
+ },
+ "HostArn" : {
+ "description" : "The host arn configured to represent the infrastructure where your third-party provider is installed. You must specify either a ProviderType or a HostArn.",
+ "type" : "string",
+ "minLength" : 0,
+ "maxLength" : 256,
+ "pattern" : "arn:aws(-[\\w]+)*:.+:.+:[0-9]{12}:.+"
+ },
+ "Tags" : {
+ "description" : "Specifies the tags applied to a connection.",
+ "type" : "array",
+ "items" : {
+ "$ref" : "#/definitions/Tag"
+ },
+ "insertionOrder" : false
+ }
+ },
+ "required" : [ "ConnectionName" ],
+ "createOnlyProperties" : [ "/properties/ConnectionName", "/properties/ProviderType", "/properties/HostArn" ],
+ "readOnlyProperties" : [ "/properties/ConnectionArn", "/properties/ConnectionStatus", "/properties/OwnerAccountId" ],
+ "primaryIdentifier" : [ "/properties/ConnectionArn" ],
+ "tagging" : {
+ "taggable" : true,
+ "tagOnCreate" : true,
+ "tagUpdatable" : true,
+ "cloudFormationSystemTags" : true,
+ "tagProperty" : "/properties/Tags"
+ },
+ "handlers" : {
+ "create" : {
+ "permissions" : [ "codeconnections:CreateConnection", "codeconnections:TagResource" ]
+ },
+ "read" : {
+ "permissions" : [ "codeconnections:GetConnection", "codeconnections:ListTagsForResource" ]
+ },
+ "update" : {
+ "permissions" : [ "codeconnections:ListTagsForResource", "codeconnections:TagResource", "codeconnections:UntagResource" ]
+ },
+ "delete" : {
+ "permissions" : [ "codeconnections:DeleteConnection" ]
+ },
+ "list" : {
+ "permissions" : [ "codeconnections:ListConnections", "codeconnections:ListTagsForResource" ]
+ }
+ },
+ "additionalProperties" : false
+}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-codestarconnections-repositorylink.json b/aws-cloudformation-schema/aws-codestarconnections-repositorylink.json
index 9a05aeeb6a..b6ea39624e 100644
--- a/aws-cloudformation-schema/aws-codestarconnections-repositorylink.json
+++ b/aws-cloudformation-schema/aws-codestarconnections-repositorylink.json
@@ -33,7 +33,7 @@
"ProviderType" : {
"description" : "The name of the external provider where your third-party code repository is configured.",
"type" : "string",
- "pattern" : "^(GitHub|Bitbucket|GitHubEnterprise|GitLab)$"
+ "enum" : [ "GitHub", "Bitbucket", "GitHubEnterprise", "GitLab", "GitLabSelfManaged" ]
},
"OwnerId" : {
"description" : "the ID of the entity that owns the repository.",
diff --git a/aws-cloudformation-schema/aws-codestarconnections-syncconfiguration.json b/aws-cloudformation-schema/aws-codestarconnections-syncconfiguration.json
index 6ffd762c54..72bf022408 100644
--- a/aws-cloudformation-schema/aws-codestarconnections-syncconfiguration.json
+++ b/aws-cloudformation-schema/aws-codestarconnections-syncconfiguration.json
@@ -22,7 +22,7 @@
"ProviderType" : {
"description" : "The name of the external provider where your third-party code repository is configured.",
"type" : "string",
- "pattern" : "^(GitHub|Bitbucket|GitHubEnterprise|GitLab)$"
+ "enum" : [ "GitHub", "Bitbucket", "GitHubEnterprise", "GitLab", "GitLabSelfManaged" ]
},
"Branch" : {
"description" : "The name of the branch of the repository from which resources are to be synchronized,",
@@ -40,6 +40,16 @@
"description" : "The IAM Role that allows AWS to update CloudFormation stacks based on content in the specified repository.",
"type" : "string"
},
+ "PublishDeploymentStatus" : {
+ "description" : "Whether to enable or disable publishing of deployment status to source providers.",
+ "type" : "string",
+ "enum" : [ "ENABLED", "DISABLED" ]
+ },
+ "TriggerResourceUpdateOn" : {
+ "description" : "When to trigger Git sync to begin the stack update.",
+ "type" : "string",
+ "enum" : [ "ANY_CHANGE", "FILE_CHANGE" ]
+ },
"RepositoryLinkId" : {
"description" : "A UUID that uniquely identifies the RepositoryLink that the SyncConfig is associated with.",
"type" : "string",
diff --git a/aws-cloudformation-schema/aws-config-conformancepack.json b/aws-cloudformation-schema/aws-config-conformancepack.json
index 284f5fb5a3..783d82995a 100644
--- a/aws-cloudformation-schema/aws-config-conformancepack.json
+++ b/aws-cloudformation-schema/aws-config-conformancepack.json
@@ -31,6 +31,13 @@
"required" : [ "ParameterName", "ParameterValue" ]
}
},
+ "tagging" : {
+ "taggable" : false,
+ "tagOnCreate" : false,
+ "tagUpdatable" : false,
+ "cloudFormationSystemTags" : false,
+ "tagProperty" : "/properties/Tags"
+ },
"properties" : {
"ConformancePackName" : {
"description" : "Name of the conformance pack which will be assigned as the unique identifier.",
diff --git a/aws-cloudformation-schema/aws-config-organizationconformancepack.json b/aws-cloudformation-schema/aws-config-organizationconformancepack.json
index 91df302ba8..9125f1943e 100644
--- a/aws-cloudformation-schema/aws-config-organizationconformancepack.json
+++ b/aws-cloudformation-schema/aws-config-organizationconformancepack.json
@@ -83,6 +83,13 @@
"maxItems" : 1000
}
},
+ "tagging" : {
+ "taggable" : false,
+ "tagOnCreate" : false,
+ "tagUpdatable" : false,
+ "cloudFormationSystemTags" : false,
+ "tagProperty" : "/properties/Tags"
+ },
"required" : [ "OrganizationConformancePackName" ],
"writeOnlyProperties" : [ "/properties/TemplateBody", "/properties/TemplateS3Uri" ],
"createOnlyProperties" : [ "/properties/OrganizationConformancePackName" ],
diff --git a/aws-cloudformation-schema/aws-connect-integrationassociation.json b/aws-cloudformation-schema/aws-connect-integrationassociation.json
index 6ae28592e1..7b24edd560 100644
--- a/aws-cloudformation-schema/aws-connect-integrationassociation.json
+++ b/aws-cloudformation-schema/aws-connect-integrationassociation.json
@@ -54,7 +54,7 @@
"primaryIdentifier" : [ "/properties/InstanceId", "/properties/IntegrationType", "/properties/IntegrationArn" ],
"handlers" : {
"create" : {
- "permissions" : [ "connect:DescribeInstance", "ds:DescribeDirectories", "app-integrations:CreateEventIntegrationAssociation", "mobiletargeting:GetApp", "cases:GetDomain", "wisdom:GetAssistant", "wisdom:GetKnowledgeBase", "wisdom:TagResource", "voiceid:DescribeDomain", "events:PutTargets", "events:PutRule", "connect:AssociateBot", "connect:AssociateLambdaFunction", "connect:CreateIntegrationAssociation", "connect:ListBots", "connect:ListLambdaFunctions", "connect:ListIntegrationAssociations", "lambda:addPermission", "lex:GetBot", "lex:DescribeBotAlias", "lex:CreateResourcePolicy", "lex:UpdateResourcePolicy", "lex:CreateResourcePolicyStatement", "lambda:AddPermission", "app-integrations:GetApplication", "iam:AttachRolePolicy", "iam:CreateServiceLinkedRole", "iam:GetRolePolicy", "iam:PutRolePolicy" ]
+ "permissions" : [ "connect:DescribeInstance", "ds:DescribeDirectories", "app-integrations:CreateEventIntegrationAssociation", "mobiletargeting:GetApp", "cases:GetDomain", "wisdom:GetAssistant", "wisdom:GetKnowledgeBase", "wisdom:TagResource", "voiceid:DescribeDomain", "events:PutTargets", "events:PutRule", "connect:AssociateBot", "connect:AssociateLambdaFunction", "connect:CreateIntegrationAssociation", "connect:ListBots", "connect:ListLambdaFunctions", "connect:ListIntegrationAssociations", "lambda:addPermission", "lex:GetBot", "lex:DescribeBotAlias", "lex:CreateResourcePolicy", "lex:UpdateResourcePolicy", "lex:CreateResourcePolicyStatement", "lambda:AddPermission", "app-integrations:GetApplication", "app-integrations:CreateApplicationAssociation", "iam:AttachRolePolicy", "iam:CreateServiceLinkedRole", "iam:GetRolePolicy", "iam:PutRolePolicy" ]
},
"read" : {
"permissions" : [ "connect:ListBots", "connect:ListLambdaFunctions", "connect:ListIntegrationAssociations" ]
@@ -63,10 +63,18 @@
"permissions" : [ ]
},
"delete" : {
- "permissions" : [ "connect:DescribeInstance", "ds:DescribeDirectories", "app-integrations:DeleteEventIntegrationAssociation", "events:ListTargetsByRule", "events:RemoveTargets", "events:DeleteRule", "connect:DisassociateBot", "connect:DisassociateLambdaFunction", "connect:DeleteIntegrationAssociation", "connect:ListBots", "connect:ListLambdaFunctions", "connect:ListIntegrationAssociations", "lex:DeleteResourcePolicy", "lex:DeleteResourcePolicyStatement", "lambda:RemovePermission", "iam:GetRolePolicy", "iam:DeleteRolePolicy", "iam:PutRolePolicy" ]
+ "permissions" : [ "connect:DescribeInstance", "ds:DescribeDirectories", "app-integrations:DeleteEventIntegrationAssociation", "app-integrations:DeleteApplicationAssociation", "events:ListTargetsByRule", "events:RemoveTargets", "events:DeleteRule", "connect:DisassociateBot", "connect:DisassociateLambdaFunction", "connect:DeleteIntegrationAssociation", "connect:ListBots", "connect:ListLambdaFunctions", "connect:ListIntegrationAssociations", "lex:DeleteResourcePolicy", "lex:DeleteResourcePolicyStatement", "lambda:RemovePermission", "iam:GetRolePolicy", "iam:DeleteRolePolicy", "iam:PutRolePolicy" ]
},
"list" : {
- "permissions" : [ "connect:ListBots", "connect:ListLambdaFunctions", "connect:ListIntegrationAssociations" ]
+ "permissions" : [ "connect:ListBots", "connect:ListLambdaFunctions", "connect:ListIntegrationAssociations" ],
+ "handlerSchema" : {
+ "properties" : {
+ "InstanceId" : {
+ "$ref" : "resource-schema.json#/properties/InstanceId"
+ }
+ },
+ "required" : [ "InstanceId" ]
+ }
}
}
}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-connect-predefinedattribute.json b/aws-cloudformation-schema/aws-connect-predefinedattribute.json
index 15c74d0efa..5c9c0aafe7 100644
--- a/aws-cloudformation-schema/aws-connect-predefinedattribute.json
+++ b/aws-cloudformation-schema/aws-connect-predefinedattribute.json
@@ -41,6 +41,15 @@
}
},
"additionalProperties" : false
+ },
+ "LastModifiedRegion" : {
+ "description" : "Last modified region.",
+ "type" : "string",
+ "pattern" : "[a-z]{2}(-[a-z]+){1,2}(-[0-9])?"
+ },
+ "LastModifiedTime" : {
+ "description" : "Last modified time.",
+ "type" : "number"
}
},
"handlers" : {
@@ -70,6 +79,7 @@
},
"additionalProperties" : false,
"createOnlyProperties" : [ "/properties/InstanceArn", "/properties/Name" ],
+ "readOnlyProperties" : [ "/properties/LastModifiedRegion", "/properties/LastModifiedTime" ],
"tagging" : {
"taggable" : false
},
diff --git a/aws-cloudformation-schema/aws-connect-securityprofile.json b/aws-cloudformation-schema/aws-connect-securityprofile.json
index 81b04afd62..d0d76a3f9a 100644
--- a/aws-cloudformation-schema/aws-connect-securityprofile.json
+++ b/aws-cloudformation-schema/aws-connect-securityprofile.json
@@ -10,11 +10,41 @@
"maxLength" : 128
},
"ResourceName" : {
- "description" : "A resource that a security profile applies tag restrictions to in Amazon Connect.",
+ "description" : "A resource that a security profile applies tag or hierarchy restrictions to in Amazon Connect.",
"type" : "string",
"minLength" : 1,
"maxLength" : 128
},
+ "ApplicationPermission" : {
+ "description" : "The permissions that the agent is granted on the application.",
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 128
+ },
+ "Application" : {
+ "description" : "A third-party application's metadata.",
+ "type" : "object",
+ "properties" : {
+ "ApplicationPermissions" : {
+ "type" : "array",
+ "maxItems" : 10,
+ "uniqueItems" : true,
+ "insertionOrder" : false,
+ "description" : "The permissions that the agent is granted on the application",
+ "items" : {
+ "$ref" : "#/definitions/ApplicationPermission"
+ }
+ },
+ "Namespace" : {
+ "type" : "string",
+ "description" : "Namespace of the application that you want to give access to.",
+ "minLength" : 1,
+ "maxLength" : 128
+ }
+ },
+ "required" : [ "ApplicationPermissions", "Namespace" ],
+ "additionalProperties" : false
+ },
"Tag" : {
"description" : "A key-value pair to associate with a resource.",
"type" : "object",
@@ -91,6 +121,33 @@
"$ref" : "#/definitions/ResourceName"
}
},
+ "HierarchyRestrictedResources" : {
+ "type" : "array",
+ "maxItems" : 10,
+ "uniqueItems" : true,
+ "insertionOrder" : false,
+ "description" : "The list of resources that a security profile applies hierarchy restrictions to in Amazon Connect.",
+ "items" : {
+ "$ref" : "#/definitions/ResourceName"
+ }
+ },
+ "AllowedAccessControlHierarchyGroupId" : {
+ "type" : "string",
+ "pattern" : "^[a-zA-Z0-9-]+$",
+ "minLength" : 0,
+ "maxLength" : 127,
+ "description" : "The identifier of the hierarchy group that a security profile uses to restrict access to resources in Amazon Connect."
+ },
+ "Applications" : {
+ "type" : "array",
+ "maxItems" : 10,
+ "uniqueItems" : true,
+ "insertionOrder" : false,
+ "description" : "A list of third-party applications that the security profile will give access to.",
+ "items" : {
+ "$ref" : "#/definitions/Application"
+ }
+ },
"Tags" : {
"type" : "array",
"maxItems" : 50,
@@ -100,6 +157,15 @@
"items" : {
"$ref" : "#/definitions/Tag"
}
+ },
+ "LastModifiedRegion" : {
+ "type" : "string",
+ "pattern" : "[a-z]{2}(-[a-z]+){1,2}(-[0-9])?",
+ "description" : "The AWS Region where this resource was last modified."
+ },
+ "LastModifiedTime" : {
+ "type" : "number",
+ "description" : "The timestamp when this resource was last modified."
}
},
"additionalProperties" : false,
@@ -112,14 +178,14 @@
},
"required" : [ "InstanceArn", "SecurityProfileName" ],
"createOnlyProperties" : [ "/properties/SecurityProfileName", "/properties/InstanceArn" ],
- "readOnlyProperties" : [ "/properties/SecurityProfileArn" ],
+ "readOnlyProperties" : [ "/properties/SecurityProfileArn", "/properties/LastModifiedRegion", "/properties/LastModifiedTime" ],
"primaryIdentifier" : [ "/properties/SecurityProfileArn" ],
"handlers" : {
"create" : {
"permissions" : [ "connect:CreateSecurityProfile", "connect:TagResource" ]
},
"read" : {
- "permissions" : [ "connect:DescribeSecurityProfile", "connect:ListSecurityProfilePermissions" ]
+ "permissions" : [ "connect:DescribeSecurityProfile", "connect:ListSecurityProfileApplications", "connect:ListSecurityProfilePermissions" ]
},
"update" : {
"permissions" : [ "connect:TagResource", "connect:UpdateSecurityProfile", "connect:UntagResource" ]
diff --git a/aws-cloudformation-schema/aws-dms-dataprovider.json b/aws-cloudformation-schema/aws-dms-dataprovider.json
index ec24ebc269..4e5f1b54c9 100644
--- a/aws-cloudformation-schema/aws-dms-dataprovider.json
+++ b/aws-cloudformation-schema/aws-dms-dataprovider.json
@@ -75,7 +75,7 @@
"Settings" : {
"description" : "The property identifies the exact type of settings for the data provider.",
"type" : "object",
- "oneOf" : [ {
+ "anyOf" : [ {
"description" : "PostgreSqlSettings property identifier.",
"type" : "object",
"additionalProperties" : false,
diff --git a/aws-cloudformation-schema/aws-docdbelastic-cluster.json b/aws-cloudformation-schema/aws-docdbelastic-cluster.json
index 8acc2c587e..d909a02ec2 100644
--- a/aws-cloudformation-schema/aws-docdbelastic-cluster.json
+++ b/aws-cloudformation-schema/aws-docdbelastic-cluster.json
@@ -66,6 +66,15 @@
"PreferredMaintenanceWindow" : {
"type" : "string"
},
+ "PreferredBackupWindow" : {
+ "type" : "string"
+ },
+ "BackupRetentionPeriod" : {
+ "type" : "integer"
+ },
+ "ShardInstanceCount" : {
+ "type" : "integer"
+ },
"KmsKeyId" : {
"type" : "string"
},
@@ -97,16 +106,16 @@
},
"handlers" : {
"create" : {
- "permissions" : [ "docdb-elastic:CreateCluster", "ec2:CreateVpcEndpoint", "ec2:DescribeVpcEndpoints", "ec2:DeleteVpcEndpoints", "ec2:ModifyVpcEndpoint", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcAttribute", "ec2:DescribeVpcs", "ec2:DescribeAvailabilityZones", "secretsmanager:ListSecrets", "secretsmanager:ListSecretVersionIds", "secretsmanager:DescribeSecret", "secretsmanager:GetSecretValue", "secretsmanager:GetResourcePolicy", "kms:DescribeKey", "kms:CreateGrant", "kms:GenerateDataKey", "kms:Decrypt", "iam:CreateServiceLinkedRole" ]
+ "permissions" : [ "docdb-elastic:CreateCluster", "docdb-elastic:TagResource", "docdb-elastic:GetCluster", "docdb-elastic:ListTagsForResource", "ec2:CreateVpcEndpoint", "ec2:DescribeVpcEndpoints", "ec2:DeleteVpcEndpoints", "ec2:ModifyVpcEndpoint", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcAttribute", "ec2:DescribeVpcs", "ec2:DescribeAvailabilityZones", "secretsmanager:ListSecrets", "secretsmanager:ListSecretVersionIds", "secretsmanager:DescribeSecret", "secretsmanager:GetSecretValue", "secretsmanager:GetResourcePolicy", "kms:DescribeKey", "kms:CreateGrant", "kms:GenerateDataKey", "kms:Decrypt", "iam:CreateServiceLinkedRole" ]
},
"read" : {
"permissions" : [ "docdb-elastic:GetCluster", "docdb-elastic:ListTagsForResource" ]
},
"update" : {
- "permissions" : [ "docdb-elastic:UpdateCluster", "docdb-elastic:TagResource", "docdb-elastic:UntagResource", "ec2:CreateVpcEndpoint", "ec2:DescribeVpcEndpoints", "ec2:DeleteVpcEndpoints", "ec2:ModifyVpcEndpoint", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcAttribute", "ec2:DescribeVpcs", "ec2:DescribeAvailabilityZones", "secretsmanager:ListSecrets", "secretsmanager:ListSecretVersionIds", "secretsmanager:DescribeSecret", "secretsmanager:GetSecretValue", "secretsmanager:GetResourcePolicy", "kms:DescribeKey", "kms:CreateGrant", "kms:GenerateDataKey", "kms:Decrypt" ]
+ "permissions" : [ "docdb-elastic:UpdateCluster", "docdb-elastic:TagResource", "docdb-elastic:UntagResource", "docdb-elastic:GetCluster", "docdb-elastic:ListTagsForResource", "ec2:CreateVpcEndpoint", "ec2:DescribeVpcEndpoints", "ec2:DeleteVpcEndpoints", "ec2:ModifyVpcEndpoint", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcAttribute", "ec2:DescribeVpcs", "ec2:DescribeAvailabilityZones", "secretsmanager:ListSecrets", "secretsmanager:ListSecretVersionIds", "secretsmanager:DescribeSecret", "secretsmanager:GetSecretValue", "secretsmanager:GetResourcePolicy", "kms:DescribeKey", "kms:CreateGrant", "kms:GenerateDataKey", "kms:Decrypt" ]
},
"delete" : {
- "permissions" : [ "docdb-elastic:DeleteCluster", "ec2:DescribeVpcEndpoints", "ec2:DeleteVpcEndpoints", "ec2:ModifyVpcEndpoint", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcAttribute", "ec2:DescribeVpcs", "ec2:DescribeAvailabilityZones" ]
+ "permissions" : [ "docdb-elastic:DeleteCluster", "docdb-elastic:GetCluster", "ec2:DescribeVpcEndpoints", "ec2:DeleteVpcEndpoints", "ec2:ModifyVpcEndpoint", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcAttribute", "ec2:DescribeVpcs", "ec2:DescribeAvailabilityZones" ]
},
"list" : {
"permissions" : [ "docdb-elastic:ListClusters" ]
diff --git a/aws-cloudformation-schema/aws-dynamodb-globaltable.json b/aws-cloudformation-schema/aws-dynamodb-globaltable.json
index 74453c9888..0adf08a487 100644
--- a/aws-cloudformation-schema/aws-dynamodb-globaltable.json
+++ b/aws-cloudformation-schema/aws-dynamodb-globaltable.json
@@ -1,272 +1,257 @@
{
- "handlers" : {
- "read" : {
- "permissions" : [ "dynamodb:Describe*", "dynamodb:GetResourcePolicy", "application-autoscaling:Describe*", "cloudwatch:PutMetricData", "dynamodb:ListTagsOfResource", "kms:DescribeKey" ]
+ "typeName" : "AWS::DynamoDB::GlobalTable",
+ "description" : "Version: None. Resource Type definition for AWS::DynamoDB::GlobalTable",
+ "additionalProperties" : false,
+ "properties" : {
+ "Arn" : {
+ "type" : "string"
},
- "create" : {
- "permissions" : [ "dynamodb:CreateTable", "dynamodb:CreateTableReplica", "dynamodb:Describe*", "dynamodb:UpdateTimeToLive", "dynamodb:UpdateContributorInsights", "dynamodb:UpdateContinuousBackups", "dynamodb:ListTagsOfResource", "dynamodb:Query", "dynamodb:Scan", "dynamodb:UpdateItem", "dynamodb:PutItem", "dynamodb:GetItem", "dynamodb:DeleteItem", "dynamodb:BatchWriteItem", "dynamodb:TagResource", "dynamodb:EnableKinesisStreamingDestination", "dynamodb:DisableKinesisStreamingDestination", "dynamodb:UpdateTableReplicaAutoScaling", "dynamodb:TagResource", "dynamodb:GetResourcePolicy", "dynamodb:PutResourcePolicy", "application-autoscaling:DeleteScalingPolicy", "application-autoscaling:DeleteScheduledAction", "application-autoscaling:DeregisterScalableTarget", "application-autoscaling:Describe*", "application-autoscaling:PutScalingPolicy", "application-autoscaling:PutScheduledAction", "application-autoscaling:RegisterScalableTarget", "kinesis:ListStreams", "kinesis:DescribeStream", "kinesis:PutRecords", "kms:CreateGrant", "kms:DescribeKey", "kms:ListAliases", "kms:Decrypt", "kms:RevokeGrant", "cloudwatch:PutMetricData", "iam:CreateServiceLinkedRole" ]
+ "StreamArn" : {
+ "type" : "string"
},
- "update" : {
- "permissions" : [ "dynamodb:Describe*", "dynamodb:CreateTableReplica", "dynamodb:UpdateTable", "dynamodb:UpdateTimeToLive", "dynamodb:UpdateContinuousBackups", "dynamodb:UpdateContributorInsights", "dynamodb:ListTagsOfResource", "dynamodb:Query", "dynamodb:Scan", "dynamodb:UpdateItem", "dynamodb:PutItem", "dynamodb:GetItem", "dynamodb:DeleteItem", "dynamodb:BatchWriteItem", "dynamodb:DeleteTable", "dynamodb:DeleteTableReplica", "dynamodb:UpdateItem", "dynamodb:TagResource", "dynamodb:UntagResource", "dynamodb:EnableKinesisStreamingDestination", "dynamodb:DisableKinesisStreamingDestination", "dynamodb:UpdateTableReplicaAutoScaling", "dynamodb:UpdateKinesisStreamingDestination", "dynamodb:GetResourcePolicy", "dynamodb:PutResourcePolicy", "dynamodb:DeleteResourcePolicy", "application-autoscaling:DeleteScalingPolicy", "application-autoscaling:DeleteScheduledAction", "application-autoscaling:DeregisterScalableTarget", "application-autoscaling:Describe*", "application-autoscaling:PutScalingPolicy", "application-autoscaling:PutScheduledAction", "application-autoscaling:RegisterScalableTarget", "kinesis:ListStreams", "kinesis:DescribeStream", "kinesis:PutRecords", "kms:CreateGrant", "kms:DescribeKey", "kms:ListAliases", "kms:RevokeGrant", "cloudwatch:PutMetricData" ],
- "timeoutInMinutes" : 1200
+ "AttributeDefinitions" : {
+ "type" : "array",
+ "uniqueItems" : true,
+ "insertionOrder" : false,
+ "items" : {
+ "$ref" : "#/definitions/AttributeDefinition"
+ },
+ "minItems" : 1
},
- "list" : {
- "permissions" : [ "dynamodb:ListTables", "cloudwatch:PutMetricData" ]
+ "BillingMode" : {
+ "type" : "string"
},
- "delete" : {
- "permissions" : [ "dynamodb:Describe*", "dynamodb:DeleteTable", "application-autoscaling:DeleteScalingPolicy", "application-autoscaling:DeleteScheduledAction", "application-autoscaling:DeregisterScalableTarget", "application-autoscaling:Describe*", "application-autoscaling:PutScalingPolicy", "application-autoscaling:PutScheduledAction", "application-autoscaling:RegisterScalableTarget" ]
+ "GlobalSecondaryIndexes" : {
+ "type" : "array",
+ "uniqueItems" : true,
+ "insertionOrder" : false,
+ "items" : {
+ "$ref" : "#/definitions/GlobalSecondaryIndex"
+ }
+ },
+ "KeySchema" : {
+ "type" : "array",
+ "uniqueItems" : true,
+ "items" : {
+ "$ref" : "#/definitions/KeySchema"
+ },
+ "minItems" : 1,
+ "maxItems" : 2
+ },
+ "LocalSecondaryIndexes" : {
+ "type" : "array",
+ "uniqueItems" : true,
+ "insertionOrder" : false,
+ "items" : {
+ "$ref" : "#/definitions/LocalSecondaryIndex"
+ }
+ },
+ "WriteProvisionedThroughputSettings" : {
+ "$ref" : "#/definitions/WriteProvisionedThroughputSettings"
+ },
+ "Replicas" : {
+ "type" : "array",
+ "uniqueItems" : true,
+ "insertionOrder" : false,
+ "items" : {
+ "$ref" : "#/definitions/ReplicaSpecification"
+ },
+ "minItems" : 1
+ },
+ "SSESpecification" : {
+ "$ref" : "#/definitions/SSESpecification"
+ },
+ "StreamSpecification" : {
+ "$ref" : "#/definitions/StreamSpecification"
+ },
+ "TableName" : {
+ "type" : "string"
+ },
+ "TableId" : {
+ "type" : "string"
+ },
+ "TimeToLiveSpecification" : {
+ "$ref" : "#/definitions/TimeToLiveSpecification"
}
},
- "typeName" : "AWS::DynamoDB::GlobalTable",
- "readOnlyProperties" : [ "/properties/Arn", "/properties/StreamArn", "/properties/TableId" ],
- "description" : "Version: None. Resource Type definition for AWS::DynamoDB::GlobalTable",
- "additionalIdentifiers" : [ [ "/properties/Arn" ], [ "/properties/StreamArn" ] ],
- "writeOnlyProperties" : [ "/properties/Replicas/*/ReadProvisionedThroughputSettings/ReadCapacityAutoScalingSettings/SeedCapacity", "/properties/Replicas/*/GlobalSecondaryIndexes/*/ReadProvisionedThroughputSettings/ReadCapacityAutoScalingSettings/SeedCapacity", "/properties/WriteProvisionedThroughputSettings/WriteCapacityAutoScalingSettings/SeedCapacity", "/properties/GlobalSecondaryIndexes/*/WriteProvisionedThroughputSettings/WriteCapacityAutoScalingSettings/SeedCapacity" ],
- "createOnlyProperties" : [ "/properties/LocalSecondaryIndexes", "/properties/TableName", "/properties/KeySchema" ],
- "additionalProperties" : false,
- "primaryIdentifier" : [ "/properties/TableName" ],
"definitions" : {
- "LocalSecondaryIndex" : {
- "additionalProperties" : false,
+ "StreamSpecification" : {
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
- "IndexName" : {
- "minLength" : 3,
- "type" : "string",
- "maxLength" : 255
- },
- "Projection" : {
- "$ref" : "#/definitions/Projection"
- },
- "KeySchema" : {
- "maxItems" : 2,
- "uniqueItems" : true,
- "type" : "array",
- "items" : {
- "$ref" : "#/definitions/KeySchema"
- }
+ "StreamViewType" : {
+ "type" : "string"
}
},
- "required" : [ "IndexName", "Projection", "KeySchema" ]
+ "required" : [ "StreamViewType" ]
},
- "SSESpecification" : {
+ "ResourcePolicy" : {
+ "type" : "object",
"additionalProperties" : false,
+ "properties" : {
+ "PolicyDocument" : {
+ "type" : "object"
+ }
+ },
+ "required" : [ "PolicyDocument" ]
+ },
+ "ReplicaStreamSpecification" : {
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
- "SSEEnabled" : {
- "type" : "boolean"
- },
- "SSEType" : {
- "type" : "string"
+ "ResourcePolicy" : {
+ "$ref" : "#/definitions/ResourcePolicy"
}
},
- "required" : [ "SSEEnabled" ]
+ "required" : [ "ResourcePolicy" ]
},
"KinesisStreamSpecification" : {
- "additionalProperties" : false,
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
+ "StreamArn" : {
+ "type" : "string"
+ },
"ApproximateCreationDateTimePrecision" : {
"type" : "string",
"enum" : [ "MICROSECOND", "MILLISECOND" ]
- },
- "StreamArn" : {
- "type" : "string"
}
},
"required" : [ "StreamArn" ]
},
- "StreamSpecification" : {
- "additionalProperties" : false,
+ "KeySchema" : {
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
- "StreamViewType" : {
+ "AttributeName" : {
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 255
+ },
+ "KeyType" : {
"type" : "string"
}
},
- "required" : [ "StreamViewType" ]
+ "required" : [ "KeyType", "AttributeName" ]
},
- "ContributorInsightsSpecification" : {
- "additionalProperties" : false,
+ "PointInTimeRecoverySpecification" : {
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
- "Enabled" : {
+ "PointInTimeRecoveryEnabled" : {
"type" : "boolean"
}
- },
- "required" : [ "Enabled" ]
+ }
},
"ReplicaSpecification" : {
- "additionalProperties" : false,
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
- "SSESpecification" : {
- "$ref" : "#/definitions/ReplicaSSESpecification"
- },
- "KinesisStreamSpecification" : {
- "$ref" : "#/definitions/KinesisStreamSpecification"
- },
- "ContributorInsightsSpecification" : {
- "$ref" : "#/definitions/ContributorInsightsSpecification"
+ "Region" : {
+ "type" : "string"
},
"GlobalSecondaryIndexes" : {
+ "type" : "array",
"uniqueItems" : true,
"insertionOrder" : false,
- "type" : "array",
"items" : {
"$ref" : "#/definitions/ReplicaGlobalSecondaryIndexSpecification"
}
},
- "Region" : {
- "type" : "string"
+ "ContributorInsightsSpecification" : {
+ "$ref" : "#/definitions/ContributorInsightsSpecification"
},
"PointInTimeRecoverySpecification" : {
"$ref" : "#/definitions/PointInTimeRecoverySpecification"
},
- "ReadProvisionedThroughputSettings" : {
- "$ref" : "#/definitions/ReadProvisionedThroughputSettings"
- },
"TableClass" : {
"type" : "string"
},
"DeletionProtectionEnabled" : {
"type" : "boolean"
},
+ "SSESpecification" : {
+ "$ref" : "#/definitions/ReplicaSSESpecification"
+ },
"Tags" : {
- "uniqueItems" : true,
- "insertionOrder" : false,
"type" : "array",
+ "insertionOrder" : false,
+ "uniqueItems" : true,
"items" : {
"$ref" : "#/definitions/Tag"
}
- }
- },
- "required" : [ "Region" ]
- },
- "CapacityAutoScalingSettings" : {
- "additionalProperties" : false,
- "type" : "object",
- "properties" : {
- "MinCapacity" : {
- "type" : "integer",
- "minimum" : 1
},
- "SeedCapacity" : {
- "type" : "integer",
- "minimum" : 1
+ "ReadProvisionedThroughputSettings" : {
+ "$ref" : "#/definitions/ReadProvisionedThroughputSettings"
},
- "TargetTrackingScalingPolicyConfiguration" : {
- "$ref" : "#/definitions/TargetTrackingScalingPolicyConfiguration"
+ "KinesisStreamSpecification" : {
+ "$ref" : "#/definitions/KinesisStreamSpecification"
},
- "MaxCapacity" : {
- "type" : "integer",
- "minimum" : 1
+ "ResourcePolicy" : {
+ "$ref" : "#/definitions/ResourcePolicy"
+ },
+ "ReplicaStreamSpecification" : {
+ "$ref" : "#/definitions/ReplicaStreamSpecification"
}
},
- "required" : [ "MinCapacity", "MaxCapacity", "TargetTrackingScalingPolicyConfiguration" ]
+ "required" : [ "Region" ]
},
- "AttributeDefinition" : {
- "additionalProperties" : false,
+ "TimeToLiveSpecification" : {
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
- "AttributeType" : {
+ "AttributeName" : {
"type" : "string"
},
- "AttributeName" : {
- "minLength" : 1,
- "type" : "string",
- "maxLength" : 255
+ "Enabled" : {
+ "type" : "boolean"
}
},
- "required" : [ "AttributeName", "AttributeType" ]
- },
- "Projection" : {
- "additionalProperties" : false,
- "type" : "object",
- "properties" : {
- "NonKeyAttributes" : {
- "maxItems" : 20,
- "uniqueItems" : true,
- "insertionOrder" : false,
- "type" : "array",
- "items" : {
- "type" : "string"
- }
- },
- "ProjectionType" : {
- "type" : "string"
- }
- }
+ "required" : [ "Enabled" ]
},
- "PointInTimeRecoverySpecification" : {
- "additionalProperties" : false,
+ "LocalSecondaryIndex" : {
"type" : "object",
- "properties" : {
- "PointInTimeRecoveryEnabled" : {
- "type" : "boolean"
- }
- }
- },
- "ReplicaGlobalSecondaryIndexSpecification" : {
"additionalProperties" : false,
- "type" : "object",
"properties" : {
"IndexName" : {
- "minLength" : 3,
"type" : "string",
+ "minLength" : 3,
"maxLength" : 255
},
- "ContributorInsightsSpecification" : {
- "$ref" : "#/definitions/ContributorInsightsSpecification"
- },
- "ReadProvisionedThroughputSettings" : {
- "$ref" : "#/definitions/ReadProvisionedThroughputSettings"
- }
- },
- "required" : [ "IndexName" ]
- },
- "TargetTrackingScalingPolicyConfiguration" : {
- "additionalProperties" : false,
- "type" : "object",
- "properties" : {
- "ScaleOutCooldown" : {
- "type" : "integer",
- "minimum" : 0
- },
- "TargetValue" : {
- "format" : "double",
- "type" : "number"
- },
- "DisableScaleIn" : {
- "type" : "boolean"
+ "KeySchema" : {
+ "type" : "array",
+ "uniqueItems" : true,
+ "items" : {
+ "$ref" : "#/definitions/KeySchema"
+ },
+ "maxItems" : 2
},
- "ScaleInCooldown" : {
- "type" : "integer",
- "minimum" : 0
+ "Projection" : {
+ "$ref" : "#/definitions/Projection"
}
},
- "required" : [ "TargetValue" ]
+ "required" : [ "IndexName", "Projection", "KeySchema" ]
},
"GlobalSecondaryIndex" : {
- "additionalProperties" : false,
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
"IndexName" : {
- "minLength" : 3,
"type" : "string",
+ "minLength" : 3,
"maxLength" : 255
},
- "Projection" : {
- "$ref" : "#/definitions/Projection"
- },
"KeySchema" : {
- "minItems" : 1,
- "maxItems" : 2,
- "uniqueItems" : true,
"type" : "array",
+ "uniqueItems" : true,
"items" : {
"$ref" : "#/definitions/KeySchema"
- }
+ },
+ "minItems" : 1,
+ "maxItems" : 2
+ },
+ "Projection" : {
+ "$ref" : "#/definitions/Projection"
},
"WriteProvisionedThroughputSettings" : {
"$ref" : "#/definitions/WriteProvisionedThroughputSettings"
@@ -274,18 +259,22 @@
},
"required" : [ "IndexName", "Projection", "KeySchema" ]
},
- "WriteProvisionedThroughputSettings" : {
- "additionalProperties" : false,
+ "SSESpecification" : {
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
- "WriteCapacityAutoScalingSettings" : {
- "$ref" : "#/definitions/CapacityAutoScalingSettings"
+ "SSEEnabled" : {
+ "type" : "boolean"
+ },
+ "SSEType" : {
+ "type" : "string"
}
- }
+ },
+ "required" : [ "SSEEnabled" ]
},
"ReplicaSSESpecification" : {
- "additionalProperties" : false,
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
"KMSMasterKeyId" : {
"type" : "string"
@@ -293,37 +282,83 @@
},
"required" : [ "KMSMasterKeyId" ]
},
- "KeySchema" : {
- "additionalProperties" : false,
+ "AttributeDefinition" : {
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
- "KeyType" : {
- "type" : "string"
- },
"AttributeName" : {
- "minLength" : 1,
"type" : "string",
+ "minLength" : 1,
"maxLength" : 255
+ },
+ "AttributeType" : {
+ "type" : "string"
}
},
- "required" : [ "KeyType", "AttributeName" ]
+ "required" : [ "AttributeName", "AttributeType" ]
},
"Tag" : {
- "additionalProperties" : false,
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
- "Value" : {
+ "Key" : {
"type" : "string"
},
- "Key" : {
+ "Value" : {
"type" : "string"
}
},
"required" : [ "Value", "Key" ]
},
- "ReadProvisionedThroughputSettings" : {
+ "Projection" : {
+ "type" : "object",
"additionalProperties" : false,
+ "properties" : {
+ "NonKeyAttributes" : {
+ "type" : "array",
+ "uniqueItems" : true,
+ "insertionOrder" : false,
+ "items" : {
+ "type" : "string"
+ },
+ "maxItems" : 20
+ },
+ "ProjectionType" : {
+ "type" : "string"
+ }
+ }
+ },
+ "ReplicaGlobalSecondaryIndexSpecification" : {
"type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "IndexName" : {
+ "type" : "string",
+ "minLength" : 3,
+ "maxLength" : 255
+ },
+ "ContributorInsightsSpecification" : {
+ "$ref" : "#/definitions/ContributorInsightsSpecification"
+ },
+ "ReadProvisionedThroughputSettings" : {
+ "$ref" : "#/definitions/ReadProvisionedThroughputSettings"
+ }
+ },
+ "required" : [ "IndexName" ]
+ },
+ "ContributorInsightsSpecification" : {
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "Enabled" : {
+ "type" : "boolean"
+ }
+ },
+ "required" : [ "Enabled" ]
+ },
+ "ReadProvisionedThroughputSettings" : {
+ "type" : "object",
+ "additionalProperties" : false,
"properties" : {
"ReadCapacityUnits" : {
"type" : "integer",
@@ -334,91 +369,82 @@
}
}
},
- "TimeToLiveSpecification" : {
+ "WriteProvisionedThroughputSettings" : {
+ "type" : "object",
"additionalProperties" : false,
+ "properties" : {
+ "WriteCapacityAutoScalingSettings" : {
+ "$ref" : "#/definitions/CapacityAutoScalingSettings"
+ }
+ }
+ },
+ "CapacityAutoScalingSettings" : {
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
- "Enabled" : {
+ "MinCapacity" : {
+ "type" : "integer",
+ "minimum" : 1
+ },
+ "MaxCapacity" : {
+ "type" : "integer",
+ "minimum" : 1
+ },
+ "SeedCapacity" : {
+ "type" : "integer",
+ "minimum" : 1
+ },
+ "TargetTrackingScalingPolicyConfiguration" : {
+ "$ref" : "#/definitions/TargetTrackingScalingPolicyConfiguration"
+ }
+ },
+ "required" : [ "MinCapacity", "MaxCapacity", "TargetTrackingScalingPolicyConfiguration" ]
+ },
+ "TargetTrackingScalingPolicyConfiguration" : {
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "DisableScaleIn" : {
"type" : "boolean"
},
- "AttributeName" : {
- "type" : "string"
+ "ScaleInCooldown" : {
+ "type" : "integer",
+ "minimum" : 0
+ },
+ "ScaleOutCooldown" : {
+ "type" : "integer",
+ "minimum" : 0
+ },
+ "TargetValue" : {
+ "type" : "number",
+ "format" : "double"
}
},
- "required" : [ "Enabled" ]
+ "required" : [ "TargetValue" ]
}
},
"required" : [ "KeySchema", "AttributeDefinitions", "Replicas" ],
- "properties" : {
- "TableId" : {
- "type" : "string"
- },
- "SSESpecification" : {
- "$ref" : "#/definitions/SSESpecification"
- },
- "StreamSpecification" : {
- "$ref" : "#/definitions/StreamSpecification"
- },
- "Replicas" : {
- "minItems" : 1,
- "uniqueItems" : true,
- "insertionOrder" : false,
- "type" : "array",
- "items" : {
- "$ref" : "#/definitions/ReplicaSpecification"
- }
- },
- "WriteProvisionedThroughputSettings" : {
- "$ref" : "#/definitions/WriteProvisionedThroughputSettings"
- },
- "TableName" : {
- "type" : "string"
- },
- "AttributeDefinitions" : {
- "minItems" : 1,
- "uniqueItems" : true,
- "insertionOrder" : false,
- "type" : "array",
- "items" : {
- "$ref" : "#/definitions/AttributeDefinition"
- }
- },
- "BillingMode" : {
- "type" : "string"
- },
- "GlobalSecondaryIndexes" : {
- "uniqueItems" : true,
- "insertionOrder" : false,
- "type" : "array",
- "items" : {
- "$ref" : "#/definitions/GlobalSecondaryIndex"
- }
- },
- "KeySchema" : {
- "minItems" : 1,
- "maxItems" : 2,
- "uniqueItems" : true,
- "type" : "array",
- "items" : {
- "$ref" : "#/definitions/KeySchema"
- }
+ "readOnlyProperties" : [ "/properties/Arn", "/properties/StreamArn", "/properties/TableId" ],
+ "createOnlyProperties" : [ "/properties/LocalSecondaryIndexes", "/properties/TableName", "/properties/KeySchema" ],
+ "primaryIdentifier" : [ "/properties/TableName" ],
+ "additionalIdentifiers" : [ [ "/properties/Arn" ], [ "/properties/StreamArn" ] ],
+ "writeOnlyProperties" : [ "/properties/Replicas/*/ReadProvisionedThroughputSettings/ReadCapacityAutoScalingSettings/SeedCapacity", "/properties/Replicas/*/GlobalSecondaryIndexes/*/ReadProvisionedThroughputSettings/ReadCapacityAutoScalingSettings/SeedCapacity", "/properties/WriteProvisionedThroughputSettings/WriteCapacityAutoScalingSettings/SeedCapacity", "/properties/GlobalSecondaryIndexes/*/WriteProvisionedThroughputSettings/WriteCapacityAutoScalingSettings/SeedCapacity" ],
+ "handlers" : {
+ "create" : {
+ "permissions" : [ "dynamodb:CreateTable", "dynamodb:CreateTableReplica", "dynamodb:Describe*", "dynamodb:UpdateTimeToLive", "dynamodb:UpdateContributorInsights", "dynamodb:UpdateContinuousBackups", "dynamodb:ListTagsOfResource", "dynamodb:Query", "dynamodb:Scan", "dynamodb:UpdateItem", "dynamodb:PutItem", "dynamodb:GetItem", "dynamodb:DeleteItem", "dynamodb:BatchWriteItem", "dynamodb:TagResource", "dynamodb:EnableKinesisStreamingDestination", "dynamodb:DisableKinesisStreamingDestination", "dynamodb:UpdateTableReplicaAutoScaling", "dynamodb:TagResource", "dynamodb:GetResourcePolicy", "dynamodb:PutResourcePolicy", "application-autoscaling:DeleteScalingPolicy", "application-autoscaling:DeleteScheduledAction", "application-autoscaling:DeregisterScalableTarget", "application-autoscaling:Describe*", "application-autoscaling:PutScalingPolicy", "application-autoscaling:PutScheduledAction", "application-autoscaling:RegisterScalableTarget", "kinesis:ListStreams", "kinesis:DescribeStream", "kinesis:PutRecords", "kms:CreateGrant", "kms:DescribeKey", "kms:ListAliases", "kms:Decrypt", "kms:RevokeGrant", "cloudwatch:PutMetricData", "iam:CreateServiceLinkedRole" ]
},
- "LocalSecondaryIndexes" : {
- "uniqueItems" : true,
- "insertionOrder" : false,
- "type" : "array",
- "items" : {
- "$ref" : "#/definitions/LocalSecondaryIndex"
- }
+ "read" : {
+ "permissions" : [ "dynamodb:Describe*", "dynamodb:GetResourcePolicy", "application-autoscaling:Describe*", "cloudwatch:PutMetricData", "dynamodb:ListTagsOfResource", "kms:DescribeKey" ]
},
- "Arn" : {
- "type" : "string"
+ "update" : {
+ "permissions" : [ "dynamodb:Describe*", "dynamodb:CreateTableReplica", "dynamodb:UpdateTable", "dynamodb:UpdateTimeToLive", "dynamodb:UpdateContinuousBackups", "dynamodb:UpdateContributorInsights", "dynamodb:ListTagsOfResource", "dynamodb:Query", "dynamodb:Scan", "dynamodb:UpdateItem", "dynamodb:PutItem", "dynamodb:GetItem", "dynamodb:DeleteItem", "dynamodb:BatchWriteItem", "dynamodb:DeleteTable", "dynamodb:DeleteTableReplica", "dynamodb:UpdateItem", "dynamodb:TagResource", "dynamodb:UntagResource", "dynamodb:EnableKinesisStreamingDestination", "dynamodb:DisableKinesisStreamingDestination", "dynamodb:UpdateTableReplicaAutoScaling", "dynamodb:UpdateKinesisStreamingDestination", "dynamodb:GetResourcePolicy", "dynamodb:PutResourcePolicy", "dynamodb:DeleteResourcePolicy", "application-autoscaling:DeleteScalingPolicy", "application-autoscaling:DeleteScheduledAction", "application-autoscaling:DeregisterScalableTarget", "application-autoscaling:Describe*", "application-autoscaling:PutScalingPolicy", "application-autoscaling:PutScheduledAction", "application-autoscaling:RegisterScalableTarget", "kinesis:ListStreams", "kinesis:DescribeStream", "kinesis:PutRecords", "kms:CreateGrant", "kms:DescribeKey", "kms:ListAliases", "kms:RevokeGrant", "cloudwatch:PutMetricData" ],
+ "timeoutInMinutes" : 1200
},
- "StreamArn" : {
- "type" : "string"
+ "delete" : {
+ "permissions" : [ "dynamodb:Describe*", "dynamodb:DeleteTable", "application-autoscaling:DeleteScalingPolicy", "application-autoscaling:DeleteScheduledAction", "application-autoscaling:DeregisterScalableTarget", "application-autoscaling:Describe*", "application-autoscaling:PutScalingPolicy", "application-autoscaling:PutScheduledAction", "application-autoscaling:RegisterScalableTarget" ]
},
- "TimeToLiveSpecification" : {
- "$ref" : "#/definitions/TimeToLiveSpecification"
+ "list" : {
+ "permissions" : [ "dynamodb:ListTables", "cloudwatch:PutMetricData" ]
}
}
}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-dynamodb-table.json b/aws-cloudformation-schema/aws-dynamodb-table.json
index 480acb70dc..b735751bfd 100644
--- a/aws-cloudformation-schema/aws-dynamodb-table.json
+++ b/aws-cloudformation-schema/aws-dynamodb-table.json
@@ -107,6 +107,10 @@
"StreamViewType" : {
"description" : "When an item in the table is modified, ``StreamViewType`` determines what information is written to the stream for this table. Valid values for ``StreamViewType`` are:\n + ``KEYS_ONLY`` - Only the key attributes of the modified item are written to the stream.\n + ``NEW_IMAGE`` - The entire item, as it appears after it was modified, is written to the stream.\n + ``OLD_IMAGE`` - The entire item, as it appeared before it was modified, is written to the stream.\n + ``NEW_AND_OLD_IMAGES`` - Both the new and the old item images of the item are written to the stream.",
"type" : "string"
+ },
+ "ResourcePolicy" : {
+ "description" : "",
+ "$ref" : "#/definitions/ResourcePolicy"
}
},
"required" : [ "StreamViewType" ]
@@ -291,6 +295,17 @@
},
"required" : [ "S3Bucket" ]
},
+ "ResourcePolicy" : {
+ "description" : "",
+ "additionalProperties" : false,
+ "type" : "object",
+ "properties" : {
+ "PolicyDocument" : {
+ "type" : "object"
+ }
+ },
+ "required" : [ "PolicyDocument" ]
+ },
"DeprecatedKeySchema" : {
"description" : "",
"additionalProperties" : false,
@@ -418,6 +433,10 @@
"$ref" : "#/definitions/GlobalSecondaryIndex"
}
},
+ "ResourcePolicy" : {
+ "description" : "",
+ "$ref" : "#/definitions/ResourcePolicy"
+ },
"KeySchema" : {
"oneOf" : [ {
"uniqueItems" : true,
diff --git a/aws-cloudformation-schema/aws-ec2-internetgateway.json b/aws-cloudformation-schema/aws-ec2-internetgateway.json
index 5dbda1eaa1..0fa1cb6f5b 100644
--- a/aws-cloudformation-schema/aws-ec2-internetgateway.json
+++ b/aws-cloudformation-schema/aws-ec2-internetgateway.json
@@ -1,6 +1,6 @@
{
"typeName" : "AWS::EC2::InternetGateway",
- "description" : "Resource Type definition for AWS::EC2::InternetGateway",
+ "description" : "Allocates an internet gateway for use with a VPC. After creating the Internet gateway, you then attach it to a VPC.",
"sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git",
"additionalProperties" : false,
"definitions" : {
@@ -11,19 +11,22 @@
"Key" : {
"type" : "string",
"minLength" : 1,
- "maxLength" : 128
+ "maxLength" : 128,
+ "description" : "The tag key."
},
"Value" : {
"type" : "string",
- "maxLength" : 256
+ "maxLength" : 256,
+ "description" : "The tag value."
}
},
- "required" : [ "Value", "Key" ]
+ "required" : [ "Value", "Key" ],
+ "description" : "Specifies a tag. For more information, see [Add tags to a resource](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#cloudformation-add-tag-specifications)."
}
},
"properties" : {
"InternetGatewayId" : {
- "description" : "ID of internet gateway.",
+ "description" : "",
"type" : "string"
},
"Tags" : {
diff --git a/aws-cloudformation-schema/aws-ec2-launchtemplate.json b/aws-cloudformation-schema/aws-ec2-launchtemplate.json
index 4227e186a4..36cb040f49 100644
--- a/aws-cloudformation-schema/aws-ec2-launchtemplate.json
+++ b/aws-cloudformation-schema/aws-ec2-launchtemplate.json
@@ -176,7 +176,7 @@
"$ref" : "#/definitions/InstanceMarketOptions"
},
"InstanceRequirements" : {
- "description" : "The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes.\n You must specify ``VCpuCount`` and ``MemoryMiB``. All other attributes are optional. Any unspecified optional attribute is set to its default.\n When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values.\n To limit the list of instance types from which Amazon EC2 can identify matching instance types, you can use one of the following parameters, but not both in the same request:\n + ``AllowedInstanceTypes`` - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.\n + ``ExcludedInstanceTypes`` - The instance types to exclude from the list, even if they match your specified attributes.\n \n If you specify ``InstanceReq",
+ "description" : "The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes.\n You must specify ``VCpuCount`` and ``MemoryMiB``. All other attributes are optional. Any unspecified optional attribute is set to its default.\n When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values.\n To limit the list of instance types from which Amazon EC2 can identify matching instance types, you can use one of the following parameters, but not both in the same request:\n + ``AllowedInstanceTypes`` - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.\n + ``ExcludedInstanceTypes`` - The instance types to exclude from the list, even if they match your specified attributes.\n \n If you specify ``InstanceRequirements``, you can't specify ``InstanceType``.\n Attribute-based instance type selection is only supported when using Auto Scaling groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in the [launch instance wizard](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-instance-wizard.html), or with the [RunInstances](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html) API or [AWS::EC2::Instance](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html) AWS CloudFormation resource, you can't specify ``InstanceRequirements``.\n For more information, see [Attribute-based instance type selection for EC2 Fleet](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html), [Attribute-based instance type selection for Spot Fleet](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-attribute-based-instance-type-selection.html), and [Spot placement score](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-placement-score.html) in the *Amazon EC2 User Guide*.",
"$ref" : "#/definitions/InstanceRequirements"
},
"RamDiskId" : {
@@ -223,15 +223,11 @@
"AutoRecovery" : {
"description" : "Disables the automatic recovery behavior of your instance or sets it to default.",
"type" : "string"
- },
- "RebootMigration" : {
- "description" : "",
- "type" : "string"
}
}
},
"ElasticGpuSpecification" : {
- "description" : "Specifies a specification for an Elastic GPU for an Amazon EC2 launch template.\n ``ElasticGpuSpecification`` is a property of [AWS::EC2::LaunchTemplate LaunchTemplateData](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html).",
+ "description" : "Amazon Elastic Graphics reached end of life on January 8, 2024. For workloads that require graphics acceleration, we recommend that you use Amazon EC2 G4ad, G4dn, or G5 instances.\n Specifies a specification for an Elastic GPU for an Amazon EC2 launch template.\n ``ElasticGpuSpecification`` is a property of [AWS::EC2::LaunchTemplate LaunchTemplateData](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html).",
"additionalProperties" : false,
"type" : "object",
"properties" : {
@@ -242,7 +238,7 @@
}
},
"IamInstanceProfile" : {
- "description" : "Specifies an IAM instance profile, which is a container for an IAM role for your instance. You can use an IAM role to distribute your AWS credentials to your instances.\n If you are creating the launch template for use with an Amazon EC2 Auto Scaling group, you can specify either the name or the ARN of the instance profile, but not both.\n ``IamInstanceProfile`` is a property of [AWS::EC2::LaunchTemplate LaunchTemplateData](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html).",
+ "description" : "Specifies an IAM instance profile, which is a container for an IAM role for your instance. You can use an IAM role to distribute your AWS credentials to your instances.\n If you are creating the launch template for use with an ASlong group, you can specify either the name or the ARN of the instance profile, but not both.\n ``IamInstanceProfile`` is a property of [AWS::EC2::LaunchTemplate LaunchTemplateData](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html).",
"additionalProperties" : false,
"type" : "object",
"properties" : {
@@ -376,7 +372,7 @@
"type" : "string"
},
"VolumeType" : {
- "description" : "The volume type. For more information, see [Amazon EBS volume types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) in the *Amazon Elastic Compute Cloud User Guide*.",
+ "description" : "The volume type. For more information, see [Amazon EBS volume types](https://docs.aws.amazon.com/ebs/latest/userguide/ebs-volume-types.html) in the *Amazon EBS User Guide*.",
"type" : "string"
},
"KmsKeyId" : {
@@ -533,7 +529,7 @@
"type" : "object",
"properties" : {
"SpotInstanceType" : {
- "description" : "The Spot Instance request type.\n If you are using Spot Instances with an Auto Scaling group, use ``one-time`` requests, as the Amazon EC2 Auto Scaling service handles requesting new Spot Instances whenever the group is below its desired capacity.",
+ "description" : "The Spot Instance request type.\n If you are using Spot Instances with an Auto Scaling group, use ``one-time`` requests, as the ASlong service handles requesting new Spot Instances whenever the group is below its desired capacity.",
"type" : "string"
},
"InstanceInterruptionBehavior" : {
@@ -839,7 +835,7 @@
}
},
"InstanceRequirements" : {
- "description" : "The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes.\n You must specify ``VCpuCount`` and ``MemoryMiB``. All other attributes are optional. Any unspecified optional attribute is set to its default.\n When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values.\n To limit the list of instance types from which Amazon EC2 can identify matching instance types, you can use one of the following parameters, but not both in the same request:\n + ``AllowedInstanceTypes`` - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.\n + ``ExcludedInstanceTypes`` - The instance types to exclude from the list, even if they match your specified attributes.\n \n If you specify ``InstanceReq",
+ "description" : "The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes.\n You must specify ``VCpuCount`` and ``MemoryMiB``. All other attributes are optional. Any unspecified optional attribute is set to its default.\n When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values.\n To limit the list of instance types from which Amazon EC2 can identify matching instance types, you can use one of the following parameters, but not both in the same request:\n + ``AllowedInstanceTypes`` - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.\n + ``ExcludedInstanceTypes`` - The instance types to exclude from the list, even if they match your specified attributes.\n \n If you specify ``InstanceRequirements``, you can't specify ``InstanceType``.\n Attribute-based instance type selection is only supported when using Auto Scaling groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in the [launch instance wizard](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-instance-wizard.html), or with the [RunInstances](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html) API or [AWS::EC2::Instance](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html) AWS CloudFormation resource, you can't specify ``InstanceRequirements``.\n For more information, see [Attribute-based instance type selection for EC2 Fleet](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html), [Attribute-based instance type selection for Spot Fleet](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-attribute-based-instance-type-selection.html), and [Spot placement score](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-placement-score.html) in the *Amazon EC2 User Guide*.",
"additionalProperties" : false,
"type" : "object",
"properties" : {
@@ -933,11 +929,11 @@
"type" : "boolean"
},
"MaxSpotPriceAsPercentageOfOptimalOnDemandPrice" : {
- "description" : "[Price protection] The price protection threshold for Spot Instances, as a percentage of an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold.\n The parameter accepts an integer, which Amazon EC2 interprets as a percentage.\n To indicate no price protection threshold, specify a high value, such as ``999999``.\n If you set ``DesiredCapacityType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is based on the per vCPU or per memory price instead of the per instanc",
+ "description" : "[Price protection] The price protection threshold for Spot Instances, as a percentage of an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold.\n The parameter accepts an integer, which Amazon EC2 interprets as a percentage.\n If you set ``DesiredCapacityType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is based on the per vCPU or per memory price instead of the per instance price.\n Only one of ``SpotMaxPricePercentageOverLowestPrice`` or ``MaxSpotPriceAsPercentageOfOptimalOnDemandPrice`` can be specified. If you don't specify either, Amazon EC2 will automatically apply optimal price protection to consistently select from a wide range of instance types. To indicate no price protection threshold for Spot Instances, meaning you want to consider all instance types that match your attributes, include one of these parameters and specify a high value, such as ``999999``.",
"type" : "integer"
},
"SpotMaxPricePercentageOverLowestPrice" : {
- "description" : "[Price protection] The price protection threshold for Spot Instances, as a percentage higher than an identified Spot price. The identified Spot price is the Spot price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified Spot price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose Spot price exceeds your specified threshold.\n The parameter accepts an integer, which Amazon EC2 interprets as a percentage.\n To indicate no price protection threshold, specify a high value, such as ``999999``.\n If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is applied based on the per-vCPU or per-memory price i",
+ "description" : "[Price protection] The price protection threshold for Spot Instances, as a percentage higher than an identified Spot price. The identified Spot price is the Spot price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified Spot price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose Spot price exceeds your specified threshold.\n The parameter accepts an integer, which Amazon EC2 interprets as a percentage.\n If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price.\n This parameter is not supported for [GetSpotPlacementScores](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html) and [GetInstanceTypesFromInstanceRequirements](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html).\n Only one of ``SpotMaxPricePercentageOverLowestPrice`` or ``MaxSpotPriceAsPercentageOfOptimalOnDemandPrice`` can be specified. If you don't specify either, Amazon EC2 will automatically apply optimal price protection to consistently select from a wide range of instance types. To indicate no price protection threshold for Spot Instances, meaning you want to consider all instance types that match your attributes, include one of these parameters and specify a high value, such as ``999999``.\n Default: ``100``",
"type" : "integer"
},
"BaselineEbsBandwidthMbps" : {
@@ -945,7 +941,7 @@
"$ref" : "#/definitions/BaselineEbsBandwidthMbps"
},
"OnDemandMaxPricePercentageOverLowestPrice" : {
- "description" : "[Price protection] The price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold.\n The parameter accepts an integer, which Amazon EC2 interprets as a percentage.\n To turn off price protection, specify a high value, such as ``999999``.\n This parameter is not supported for [GetSpotPlacementScores](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html) and [GetInstanceTypesFromInstanceRequirements](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html).\n If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is applied based on the per-",
+ "description" : "[Price protection] The price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold.\n The parameter accepts an integer, which Amazon EC2 interprets as a percentage.\n To turn off price protection, specify a high value, such as ``999999``.\n This parameter is not supported for [GetSpotPlacementScores](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html) and [GetInstanceTypesFromInstanceRequirements](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html).\n If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price.\n Default: ``20``",
"type" : "integer"
},
"AcceleratorNames" : {
diff --git a/aws-cloudformation-schema/aws-ec2-subnet.json b/aws-cloudformation-schema/aws-ec2-subnet.json
index adc875de84..a7bef321bd 100644
--- a/aws-cloudformation-schema/aws-ec2-subnet.json
+++ b/aws-cloudformation-schema/aws-ec2-subnet.json
@@ -13,7 +13,11 @@
},
"MapPublicIpOnLaunch" : {
"type" : "boolean",
- "description" : "Indicates whether instances launched in this subnet receive a public IPv4 address. The default value is ``false``.\n AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the [VPC pricing page](https://docs.aws.amazon.com/vpc/pricing/)."
+ "description" : "Indicates whether instances launched in this subnet receive a public IPv4 address. The default value is ``false``.\n AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the [VPC pricing page](https://docs.aws.amazon.com/vpc/pricing/)."
+ },
+ "EnableLniAtDeviceIndex" : {
+ "type" : "integer",
+ "description" : "Indicates the device position for local network interfaces in this subnet. For example, ``1`` indicates local network interfaces in this subnet are the secondary network interface (eth1)."
},
"NetworkAclAssociationId" : {
"type" : "string",
@@ -73,7 +77,7 @@
"type" : "boolean"
}
},
- "description" : "The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries to the instances should be handled. For more information, see [Amazon EC2 instance hostname types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-naming.html) in the *User Guide*.\n Available options:\n + EnableResourceNameDnsAAAARecord (true | false)\n + EnableResourceNameDnsARecord (true | false)\n + HostnameType (ip-name | resource-name)"
+ "description" : "The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries to the instances should be handled. For more information, see [Amazon EC2 instance hostname types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-naming.html) in the *User Guide*.\n Available options:\n + EnableResourceNameDnsAAAARecord (true | false)\n + EnableResourceNameDnsARecord (true | false)\n + HostnameType (ip-name | resource-name)"
},
"Tags" : {
"type" : "array",
@@ -130,7 +134,7 @@
"conditionalCreateOnlyProperties" : [ "/properties/Ipv6CidrBlock" ],
"primaryIdentifier" : [ "/properties/SubnetId" ],
"readOnlyProperties" : [ "/properties/NetworkAclAssociationId", "/properties/SubnetId" ],
- "writeOnlyProperties" : [ "/properties/Ipv4IpamPoolId", "/properties/Ipv4NetmaskLength", "/properties/Ipv6IpamPoolId", "/properties/Ipv6NetmaskLength" ],
+ "writeOnlyProperties" : [ "/properties/EnableLniAtDeviceIndex", "/properties/Ipv4IpamPoolId", "/properties/Ipv4NetmaskLength", "/properties/Ipv6IpamPoolId", "/properties/Ipv6NetmaskLength" ],
"handlers" : {
"create" : {
"permissions" : [ "ec2:DescribeSubnets", "ec2:CreateSubnet", "ec2:CreateTags", "ec2:ModifySubnetAttribute" ]
diff --git a/aws-cloudformation-schema/aws-ec2-transitgatewayroutetableassociation.json b/aws-cloudformation-schema/aws-ec2-transitgatewayroutetableassociation.json
index 01f1b15f93..ea73ce1e36 100644
--- a/aws-cloudformation-schema/aws-ec2-transitgatewayroutetableassociation.json
+++ b/aws-cloudformation-schema/aws-ec2-transitgatewayroutetableassociation.json
@@ -1,20 +1,49 @@
{
"typeName" : "AWS::EC2::TransitGatewayRouteTableAssociation",
"description" : "Resource Type definition for AWS::EC2::TransitGatewayRouteTableAssociation",
+ "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-transitgateway.git",
"additionalProperties" : false,
"properties" : {
- "Id" : {
- "type" : "string"
- },
"TransitGatewayRouteTableId" : {
+ "description" : "The ID of transit gateway route table.",
"type" : "string"
},
"TransitGatewayAttachmentId" : {
+ "description" : "The ID of transit gateway attachment.",
"type" : "string"
}
},
+ "definitions" : { },
+ "replacementStrategy" : "delete_then_create",
"required" : [ "TransitGatewayRouteTableId", "TransitGatewayAttachmentId" ],
"createOnlyProperties" : [ "/properties/TransitGatewayRouteTableId", "/properties/TransitGatewayAttachmentId" ],
- "readOnlyProperties" : [ "/properties/Id" ],
- "primaryIdentifier" : [ "/properties/Id" ]
+ "primaryIdentifier" : [ "/properties/TransitGatewayRouteTableId", "/properties/TransitGatewayAttachmentId" ],
+ "tagging" : {
+ "taggable" : false,
+ "tagOnCreate" : false,
+ "tagUpdatable" : false,
+ "cloudFormationSystemTags" : false
+ },
+ "handlers" : {
+ "create" : {
+ "permissions" : [ "ec2:AssociateTransitGatewayRouteTable", "ec2:GetTransitGatewayRouteTableAssociations" ]
+ },
+ "read" : {
+ "permissions" : [ "ec2:GetTransitGatewayRouteTableAssociations" ]
+ },
+ "delete" : {
+ "permissions" : [ "ec2:GetTransitGatewayRouteTableAssociations", "ec2:DisassociateTransitGatewayRouteTable" ]
+ },
+ "list" : {
+ "handlerSchema" : {
+ "properties" : {
+ "TransitGatewayRouteTableId" : {
+ "$ref" : "resource-schema.json#/properties/TransitGatewayRouteTableId"
+ }
+ },
+ "required" : [ "TransitGatewayRouteTableId" ]
+ },
+ "permissions" : [ "ec2:GetTransitGatewayRouteTableAssociations" ]
+ }
+ }
}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-ecr-pullthroughcacherule.json b/aws-cloudformation-schema/aws-ecr-pullthroughcacherule.json
index 35f2c741a1..49db7b08d5 100644
--- a/aws-cloudformation-schema/aws-ecr-pullthroughcacherule.json
+++ b/aws-cloudformation-schema/aws-ecr-pullthroughcacherule.json
@@ -79,7 +79,9 @@
"description" : "The name of the upstream registry."
}
},
- "taggable" : false,
+ "tagging" : {
+ "taggable" : false
+ },
"primaryIdentifier" : [ "/properties/EcrRepositoryPrefix" ],
"createOnlyProperties" : [ "/properties/EcrRepositoryPrefix", "/properties/UpstreamRegistryUrl", "/properties/CredentialArn", "/properties/UpstreamRegistry" ],
"writeOnlyProperties" : [ "/properties/CredentialArn", "/properties/UpstreamRegistry" ],
diff --git a/aws-cloudformation-schema/aws-ecr-registrypolicy.json b/aws-cloudformation-schema/aws-ecr-registrypolicy.json
index 6e28b7270b..2df5e78f39 100644
--- a/aws-cloudformation-schema/aws-ecr-registrypolicy.json
+++ b/aws-cloudformation-schema/aws-ecr-registrypolicy.json
@@ -41,5 +41,8 @@
"permissions" : [ "ecr:DeleteRegistryPolicy" ]
}
},
+ "tagging" : {
+ "taggable" : false
+ },
"additionalProperties" : false
}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-ecr-replicationconfiguration.json b/aws-cloudformation-schema/aws-ecr-replicationconfiguration.json
index 5fd405c98e..2aeb8d6793 100644
--- a/aws-cloudformation-schema/aws-ecr-replicationconfiguration.json
+++ b/aws-cloudformation-schema/aws-ecr-replicationconfiguration.json
@@ -107,6 +107,9 @@
"required" : [ "ReplicationConfiguration" ],
"primaryIdentifier" : [ "/properties/RegistryId" ],
"readOnlyProperties" : [ "/properties/RegistryId" ],
+ "tagging" : {
+ "taggable" : false
+ },
"additionalProperties" : false,
"handlers" : {
"create" : {
diff --git a/aws-cloudformation-schema/aws-ecr-repository.json b/aws-cloudformation-schema/aws-ecr-repository.json
index 9ee0e7d885..0f37d446fd 100644
--- a/aws-cloudformation-schema/aws-ecr-repository.json
+++ b/aws-cloudformation-schema/aws-ecr-repository.json
@@ -171,5 +171,12 @@
"permissions" : [ "ecr:DescribeRepositories" ]
}
},
+ "tagging" : {
+ "taggable" : true,
+ "tagOnCreate" : true,
+ "tagUpdatable" : true,
+ "cloudFormationSystemTags" : true,
+ "tagProperty" : "/properties/Tags"
+ },
"additionalProperties" : false
}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-efs-filesystem.json b/aws-cloudformation-schema/aws-efs-filesystem.json
index d0ade3d847..cf0814ab95 100644
--- a/aws-cloudformation-schema/aws-efs-filesystem.json
+++ b/aws-cloudformation-schema/aws-efs-filesystem.json
@@ -47,6 +47,7 @@
"properties" : {
"Status" : {
"type" : "string",
+ "enum" : [ "DISABLED", "ENABLED" ],
"description" : "Set the backup policy status for the file system.\n + *ENABLED* - Turns automatic backups on for the file system. \n + *DISABLED* - Turns automatic backups off for the file system."
}
},
diff --git a/aws-cloudformation-schema/aws-elasticache-parametergroup.json b/aws-cloudformation-schema/aws-elasticache-parametergroup.json
index c1fc861e4f..74b9972bf4 100644
--- a/aws-cloudformation-schema/aws-elasticache-parametergroup.json
+++ b/aws-cloudformation-schema/aws-elasticache-parametergroup.json
@@ -3,9 +3,6 @@
"description" : "Resource Type definition for AWS::ElastiCache::ParameterGroup",
"additionalProperties" : false,
"properties" : {
- "CacheParameterGroupName" : {
- "type" : "string"
- },
"Description" : {
"type" : "string"
},
@@ -49,5 +46,5 @@
"required" : [ "Description", "CacheParameterGroupFamily" ],
"createOnlyProperties" : [ "/properties/CacheParameterGroupFamily" ],
"primaryIdentifier" : [ "/properties/Id" ],
- "readOnlyProperties" : [ "/properties/CacheParameterGroupName", "/properties/Id" ]
+ "readOnlyProperties" : [ "/properties/Id" ]
}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-elasticache-serverlesscache.json b/aws-cloudformation-schema/aws-elasticache-serverlesscache.json
index fe412ef596..19dfe3d60d 100644
--- a/aws-cloudformation-schema/aws-elasticache-serverlesscache.json
+++ b/aws-cloudformation-schema/aws-elasticache-serverlesscache.json
@@ -20,30 +20,37 @@
"description" : "The cached data capacity of the Serverless Cache.",
"type" : "object",
"properties" : {
+ "Minimum" : {
+ "description" : "The minimum cached data capacity of the Serverless Cache.",
+ "type" : "integer"
+ },
"Maximum" : {
"description" : "The maximum cached data capacity of the Serverless Cache.",
"type" : "integer"
},
"Unit" : {
- "description" : "The unix of cached data capacity of the Serverless Cache.",
+ "description" : "The unit of cached data capacity of the Serverless Cache.",
"type" : "string",
"enum" : [ "GB" ]
}
},
"additionalProperties" : false,
- "required" : [ "Maximum", "Unit" ]
+ "required" : [ "Unit" ]
},
"ECPUPerSecond" : {
"description" : "The ECPU per second of the Serverless Cache.",
"type" : "object",
"properties" : {
+ "Minimum" : {
+ "description" : "The minimum ECPU per second of the Serverless Cache.",
+ "type" : "integer"
+ },
"Maximum" : {
"description" : "The maximum ECPU per second of the Serverless Cache.",
"type" : "integer"
}
},
- "additionalProperties" : false,
- "required" : [ "Maximum" ]
+ "additionalProperties" : false
},
"Tag" : {
"description" : "A key-value pair to associate with Serverless Cache.",
diff --git a/aws-cloudformation-schema/aws-elasticache-user.json b/aws-cloudformation-schema/aws-elasticache-user.json
index e04b221c0c..61673e16df 100644
--- a/aws-cloudformation-schema/aws-elasticache-user.json
+++ b/aws-cloudformation-schema/aws-elasticache-user.json
@@ -115,7 +115,7 @@
"primaryIdentifier" : [ "/properties/UserId" ],
"handlers" : {
"create" : {
- "permissions" : [ "elasticache:CreateUser", "elasticache:DescribeUsers", "elasticache:ListTagsForResource" ]
+ "permissions" : [ "elasticache:CreateUser", "elasticache:DescribeUsers", "elasticache:ListTagsForResource", "elasticache:AddTagsToResource" ]
},
"read" : {
"permissions" : [ "elasticache:DescribeUsers", "elasticache:ListTagsForResource" ]
diff --git a/aws-cloudformation-schema/aws-elasticache-usergroup.json b/aws-cloudformation-schema/aws-elasticache-usergroup.json
index 67f8c41e43..c83c9cd875 100644
--- a/aws-cloudformation-schema/aws-elasticache-usergroup.json
+++ b/aws-cloudformation-schema/aws-elasticache-usergroup.json
@@ -80,7 +80,7 @@
},
"handlers" : {
"create" : {
- "permissions" : [ "elasticache:CreateUserGroup", "elasticache:DescribeUserGroups", "elasticache:ListTagsForResource" ]
+ "permissions" : [ "elasticache:CreateUserGroup", "elasticache:DescribeUserGroups", "elasticache:ListTagsForResource", "elasticache:AddTagsToResource" ]
},
"read" : {
"permissions" : [ "elasticache:DescribeUserGroups", "elasticache:ListTagsForResource" ]
diff --git a/aws-cloudformation-schema/aws-entityresolution-idmappingworkflow.json b/aws-cloudformation-schema/aws-entityresolution-idmappingworkflow.json
index 6ad71a3e75..8f12e8738d 100644
--- a/aws-cloudformation-schema/aws-entityresolution-idmappingworkflow.json
+++ b/aws-cloudformation-schema/aws-entityresolution-idmappingworkflow.json
@@ -46,16 +46,20 @@
"type" : "object",
"properties" : {
"InputSourceARN" : {
- "description" : "An Glue table ARN for the input source table",
+ "description" : "An Glue table ARN for the input source table or IdNamespace ARN",
"type" : "string",
"pattern" : "arn:(aws|aws-us-gov|aws-cn):.*:.*:[0-9]+:.*$"
},
"SchemaArn" : {
"type" : "string",
"$ref" : "#/definitions/SchemaMappingArn"
+ },
+ "Type" : {
+ "type" : "string",
+ "enum" : [ "SOURCE", "TARGET" ]
}
},
- "required" : [ "InputSourceARN", "SchemaArn" ],
+ "required" : [ "InputSourceARN" ],
"additionalProperties" : false
},
"IdMappingWorkflowOutputSource" : {
@@ -224,6 +228,6 @@
"permissions" : [ "entityresolution:ListIdMappingWorkflows" ]
}
},
- "required" : [ "WorkflowName", "InputSourceConfig", "OutputSourceConfig", "IdMappingTechniques", "RoleArn" ],
+ "required" : [ "WorkflowName", "InputSourceConfig", "IdMappingTechniques", "RoleArn" ],
"additionalProperties" : false
}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-gamelift-gameservergroup.json b/aws-cloudformation-schema/aws-gamelift-gameservergroup.json
index 24ea47ec9f..63cdbf9427 100644
--- a/aws-cloudformation-schema/aws-gamelift-gameservergroup.json
+++ b/aws-cloudformation-schema/aws-gamelift-gameservergroup.json
@@ -6,7 +6,7 @@
"definitions" : {
"AutoScalingPolicy" : {
"type" : "object",
- "description" : "Configuration settings to define a scaling policy for the Auto Scaling group that is optimized for game hosting",
+ "description" : "Configuration settings to define a scaling policy for the Auto Scaling group that is optimized for game hosting. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource.",
"properties" : {
"EstimatedInstanceWarmup" : {
"$ref" : "#/definitions/EstimatedInstanceWarmup"
@@ -101,7 +101,7 @@
},
"LaunchTemplate" : {
"type" : "object",
- "description" : "The EC2 launch template that contains configuration settings and game server code to be deployed to all instances in the game server group.",
+ "description" : "The EC2 launch template that contains configuration settings and game server code to be deployed to all instances in the game server group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource.",
"properties" : {
"LaunchTemplateId" : {
"$ref" : "#/definitions/LaunchTemplateId"
@@ -129,12 +129,12 @@
},
"MaxSize" : {
"type" : "number",
- "description" : "The maximum number of instances allowed in the EC2 Auto Scaling group.",
+ "description" : "The maximum number of instances allowed in the EC2 Auto Scaling group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource.",
"minimum" : 1
},
"MinSize" : {
"type" : "number",
- "description" : "The minimum number of instances allowed in the EC2 Auto Scaling group.",
+ "description" : "The minimum number of instances allowed in the EC2 Auto Scaling group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource.",
"minimum" : 0
},
"RoleArn" : {
@@ -146,7 +146,7 @@
},
"Tags" : {
"type" : "array",
- "description" : "A list of labels to assign to the new game server group resource.",
+ "description" : "A list of labels to assign to the new game server group resource. Updating game server group tags with CloudFormation will not take effect. Please update this property using AWS GameLift APIs instead.",
"items" : {
"$ref" : "#/definitions/Tag"
},
@@ -170,7 +170,7 @@
},
"VpcSubnets" : {
"type" : "array",
- "description" : "A list of virtual private cloud (VPC) subnets to use with instances in the game server group.",
+ "description" : "A list of virtual private cloud (VPC) subnets to use with instances in the game server group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource.",
"items" : {
"type" : "string",
"pattern" : "^subnet-[0-9a-z]+$",
@@ -264,7 +264,7 @@
"$ref" : "#/definitions/AutoScalingGroupArn"
},
"AutoScalingPolicy" : {
- "description" : "Configuration settings to define a scaling policy for the Auto Scaling group that is optimized for game hosting",
+ "description" : "Configuration settings to define a scaling policy for the Auto Scaling group that is optimized for game hosting. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource.",
"$ref" : "#/definitions/AutoScalingPolicy"
},
"BalancingStrategy" : {
@@ -292,15 +292,15 @@
"$ref" : "#/definitions/InstanceDefinitions"
},
"LaunchTemplate" : {
- "description" : "The EC2 launch template that contains configuration settings and game server code to be deployed to all instances in the game server group.",
+ "description" : "The EC2 launch template that contains configuration settings and game server code to be deployed to all instances in the game server group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource.",
"$ref" : "#/definitions/LaunchTemplate"
},
"MaxSize" : {
- "description" : "The maximum number of instances allowed in the EC2 Auto Scaling group.",
+ "description" : "The maximum number of instances allowed in the EC2 Auto Scaling group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource.",
"$ref" : "#/definitions/MaxSize"
},
"MinSize" : {
- "description" : "The minimum number of instances allowed in the EC2 Auto Scaling group.",
+ "description" : "The minimum number of instances allowed in the EC2 Auto Scaling group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource.",
"$ref" : "#/definitions/MinSize"
},
"RoleArn" : {
@@ -308,11 +308,11 @@
"$ref" : "#/definitions/RoleArn"
},
"Tags" : {
- "description" : "A list of labels to assign to the new game server group resource.",
+ "description" : "A list of labels to assign to the new game server group resource. Updating game server group tags with CloudFormation will not take effect. Please update this property using AWS GameLift APIs instead.",
"$ref" : "#/definitions/Tags"
},
"VpcSubnets" : {
- "description" : "A list of virtual private cloud (VPC) subnets to use with instances in the game server group.",
+ "description" : "A list of virtual private cloud (VPC) subnets to use with instances in the game server group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource.",
"$ref" : "#/definitions/VpcSubnets"
}
},
diff --git a/aws-cloudformation-schema/aws-glue-crawler.json b/aws-cloudformation-schema/aws-glue-crawler.json
index aa4d02e253..ecb3f783f9 100644
--- a/aws-cloudformation-schema/aws-glue-crawler.json
+++ b/aws-cloudformation-schema/aws-glue-crawler.json
@@ -37,6 +37,9 @@
"Role" : {
"type" : "string"
},
+ "LakeFormationConfiguration" : {
+ "$ref" : "#/definitions/LakeFormationConfiguration"
+ },
"Schedule" : {
"$ref" : "#/definitions/Schedule"
},
@@ -79,6 +82,18 @@
}
}
},
+ "LakeFormationConfiguration" : {
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "UseLakeFormationCredentials" : {
+ "type" : "boolean"
+ },
+ "AccountId" : {
+ "type" : "string"
+ }
+ }
+ },
"SchemaChangePolicy" : {
"type" : "object",
"additionalProperties" : false,
diff --git a/aws-cloudformation-schema/aws-iam-managedpolicy.json b/aws-cloudformation-schema/aws-iam-managedpolicy.json
index d7b7bc0169..3f36ab57b0 100644
--- a/aws-cloudformation-schema/aws-iam-managedpolicy.json
+++ b/aws-cloudformation-schema/aws-iam-managedpolicy.json
@@ -1,17 +1,17 @@
{
"typeName" : "AWS::IAM::ManagedPolicy",
- "description" : "Resource Type definition for AWS::IAM::ManagedPolicy",
+ "description" : "Creates a new managed policy for your AWS-account.\n This operation creates a policy version with a version identifier of ``v1`` and sets v1 as the policy's default version. For more information about policy versions, see [Versioning for managed policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html) in the *IAM User Guide*.\n As a best practice, you can validate your IAM policies. To learn more, see [Validating IAM policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_policy-validator.html) in the *IAM User Guide*.\n For more information about managed policies in general, see [Managed policies and inline policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the *IAM User Guide*.",
"sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-iam",
"additionalProperties" : false,
"properties" : {
"Description" : {
"type" : "string",
- "description" : "A friendly description of the policy."
+ "description" : "A friendly description of the policy.\n Typically used to store information about the permissions defined in the policy. For example, \"Grants access to production DynamoDB tables.\"\n The policy description is immutable. After a value is assigned, it cannot be changed."
},
"Groups" : {
"insertionOrder" : false,
"type" : "array",
- "description" : "The name (friendly name, not ARN) of the group to attach the policy to.",
+ "description" : "The name (friendly name, not ARN) of the group to attach the policy to.\n This parameter allows (through its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-",
"uniqueItems" : true,
"items" : {
"type" : "string"
@@ -19,20 +19,21 @@
},
"ManagedPolicyName" : {
"type" : "string",
- "description" : "The friendly name of the policy."
+ "description" : "The friendly name of the policy.\n If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.\n If you specify a name, you must specify the ``CAPABILITY_NAMED_IAM`` value to acknowledge your template's capabilities. For more information, see [Acknowledging Resources in Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#using-iam-capabilities).\n Naming an IAM resource can cause an unrecoverable error if you reuse the same template in multiple Regions. To prevent this, we recommend using ``Fn::Join`` and ``AWS::Region`` to create a Region-specific name, as in the following example: ``{\"Fn::Join\": [\"\", [{\"Ref\": \"AWS::Region\"}, {\"Ref\": \"MyResourceName\"}]]}``."
},
"Path" : {
"type" : "string",
- "description" : "The path for the policy."
+ "default" : "/",
+ "description" : "The path for the policy.\n For more information about paths, see [IAM identifiers](https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) in the *IAM User Guide*.\n This parameter is optional. If it is not included, it defaults to a slash (/).\n This parameter allows (through its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (``\\u0021``) through the DEL character (``\\u007F``), including most punctuation characters, digits, and upper and lowercased letters.\n You cannot use an asterisk (*) in the path name."
},
"PolicyDocument" : {
"type" : [ "object", "string" ],
- "description" : "The JSON policy document that you want to use as the content for the new policy."
+ "description" : "The JSON policy document that you want to use as the content for the new policy.\n You must provide policies in JSON format in IAM. However, for CFN templates formatted in YAML, you can provide the policy in JSON or YAML format. CFN always converts a YAML policy to JSON format before submitting it to IAM.\n The maximum length of the policy document that you can pass in this operation, including whitespace, is listed below. To view the maximum character counts of a managed policy with no whitespaces, see [IAM and character quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length).\n To learn more about JSON policy grammar, see [Grammar of the IAM JSON policy language](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_grammar.html) in the *IAM User Guide*. \n The [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex) used to validate this parameter is a string of characters consisting of the following:\n + Any printable ASCII character ranging from the space character (``\\u0020``) through the end of the ASCII character range\n + The printable characters in the Basic Latin and Latin-1 Supplement character set (through ``\\u00FF``)\n + The special characters tab (``\\u0009``), line feed (``\\u000A``), and carriage return (``\\u000D``)"
},
"Roles" : {
"insertionOrder" : false,
"type" : "array",
- "description" : "The name (friendly name, not ARN) of the role to attach the policy to.",
+ "description" : "The name (friendly name, not ARN) of the role to attach the policy to.\n This parameter allows (per its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-\n If an external policy (such as ``AWS::IAM::Policy`` or ``AWS::IAM::ManagedPolicy``) has a ``Ref`` to a role and if a resource (such as ``AWS::ECS::Service``) also has a ``Ref`` to the same role, add a ``DependsOn`` attribute to the resource to make the resource depend on the external policy. This dependency ensures that the role's policy is available throughout the resource's lifecycle. For example, when you delete a stack with an ``AWS::ECS::Service`` resource, the ``DependsOn`` attribute ensures that CFN deletes the ``AWS::ECS::Service`` resource before deleting its role's policy.",
"uniqueItems" : true,
"items" : {
"type" : "string"
@@ -41,7 +42,7 @@
"Users" : {
"insertionOrder" : false,
"type" : "array",
- "description" : "The name (friendly name, not ARN) of the IAM user to attach the policy to.",
+ "description" : "The name (friendly name, not ARN) of the IAM user to attach the policy to.\n This parameter allows (through its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-",
"uniqueItems" : true,
"items" : {
"type" : "string"
@@ -49,35 +50,35 @@
},
"PolicyArn" : {
"type" : "string",
- "description" : "Amazon Resource Name (ARN) of the managed policy"
+ "description" : ""
},
"AttachmentCount" : {
"type" : "integer",
- "description" : "The number of entities (users, groups, and roles) that the policy is attached to."
+ "description" : ""
},
"CreateDate" : {
"type" : "string",
- "description" : "The date and time, in ISO 8601 date-time format, when the policy was created."
+ "description" : ""
},
"UpdateDate" : {
"type" : "string",
- "description" : "The date and time, in ISO 8601 date-time format, when the policy was last updated."
+ "description" : ""
},
"DefaultVersionId" : {
"type" : "string",
- "description" : "The identifier for the version of the policy that is set as the default version."
+ "description" : ""
},
"IsAttachable" : {
"type" : "boolean",
- "description" : "Specifies whether the policy can be attached to an IAM user, group, or role."
+ "description" : ""
},
"PermissionsBoundaryUsageCount" : {
"type" : "integer",
- "description" : "The number of entities (users and roles) for which the policy is used to set the permissions boundary."
+ "description" : ""
},
"PolicyId" : {
"type" : "string",
- "description" : "The stable and unique string identifying the policy."
+ "description" : ""
}
},
"required" : [ "PolicyDocument" ],
diff --git a/aws-cloudformation-schema/aws-iotsitewise-gateway.json b/aws-cloudformation-schema/aws-iotsitewise-gateway.json
index dafcd7c513..71ebcdca77 100644
--- a/aws-cloudformation-schema/aws-iotsitewise-gateway.json
+++ b/aws-cloudformation-schema/aws-iotsitewise-gateway.json
@@ -15,12 +15,18 @@
"GreengrassV2" : {
"description" : "A gateway that runs on AWS IoT Greengrass V2.",
"$ref" : "#/definitions/GreengrassV2"
+ },
+ "SiemensIE" : {
+ "description" : "A gateway that runs on Siemens Industrial Edge.",
+ "$ref" : "#/definitions/SiemensIE"
}
},
"oneOf" : [ {
"required" : [ "Greengrass" ]
}, {
"required" : [ "GreengrassV2" ]
+ }, {
+ "required" : [ "SiemensIE" ]
} ]
},
"Greengrass" : {
@@ -47,6 +53,18 @@
},
"required" : [ "CoreDeviceThingName" ]
},
+ "SiemensIE" : {
+ "description" : "Contains the IotCoreThingName of AWS IoT Thing that the gateway runs on.",
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "IotCoreThingName" : {
+ "description" : "The name of the IoT Core Thing.",
+ "type" : "string"
+ }
+ },
+ "required" : [ "IotCoreThingName" ]
+ },
"Tag" : {
"description" : "To add or update tag, provide both key and value. To delete tag, provide only tag key to be deleted",
"type" : "object",
diff --git a/aws-cloudformation-schema/aws-ivschat-loggingconfiguration.json b/aws-cloudformation-schema/aws-ivschat-loggingconfiguration.json
index 6822f9168d..80677fd16d 100644
--- a/aws-cloudformation-schema/aws-ivschat-loggingconfiguration.json
+++ b/aws-cloudformation-schema/aws-ivschat-loggingconfiguration.json
@@ -145,7 +145,7 @@
"permissions" : [ "ivschat:GetLoggingConfiguration", "ivschat:ListTagsForResource" ]
},
"update" : {
- "permissions" : [ "ivschat:UpdateLoggingConfiguration", "ivschat:GetLoggingConfiguration", "ivschat:TagResource", "ivschat:UnTagResource", "ivschat:ListTagsForResource", "logs:CreateLogDelivery", "logs:GetLogDelivery", "logs:UpdateLogDelivery", "logs:DeleteLogDelivery", "logs:ListLogDeliveries", "logs:PutResourcePolicy", "logs:DescribeResourcePolicies", "logs:DescribeLogGroups", "s3:PutBucketPolicy", "s3:GetBucketPolicy", "iam:CreateServiceLinkedRole", "firehose:TagDeliveryStream" ]
+ "permissions" : [ "ivschat:UpdateLoggingConfiguration", "ivschat:GetLoggingConfiguration", "ivschat:TagResource", "ivschat:UntagResource", "ivschat:ListTagsForResource", "logs:CreateLogDelivery", "logs:GetLogDelivery", "logs:UpdateLogDelivery", "logs:DeleteLogDelivery", "logs:ListLogDeliveries", "logs:PutResourcePolicy", "logs:DescribeResourcePolicies", "logs:DescribeLogGroups", "s3:PutBucketPolicy", "s3:GetBucketPolicy", "iam:CreateServiceLinkedRole", "firehose:TagDeliveryStream" ]
},
"delete" : {
"permissions" : [ "ivschat:DeleteLoggingConfiguration", "ivschat:GetLoggingConfiguration", "logs:DeleteLogDelivery", "logs:ListLogDeliveries", "ivschat:UntagResource", "logs:GetLogDelivery" ]
diff --git a/aws-cloudformation-schema/aws-ivschat-room.json b/aws-cloudformation-schema/aws-ivschat-room.json
index 078dd7bde3..72e26a26e5 100644
--- a/aws-cloudformation-schema/aws-ivschat-room.json
+++ b/aws-cloudformation-schema/aws-ivschat-room.json
@@ -127,7 +127,7 @@
"permissions" : [ "ivschat:GetRoom", "ivschat:ListTagsForResource" ]
},
"update" : {
- "permissions" : [ "ivschat:UpdateRoom", "ivschat:TagResource", "ivschat:UnTagResource", "ivschat:ListTagsForResource" ]
+ "permissions" : [ "ivschat:UpdateRoom", "ivschat:TagResource", "ivschat:UntagResource", "ivschat:ListTagsForResource" ]
},
"delete" : {
"permissions" : [ "ivschat:DeleteRoom", "ivschat:UntagResource" ]
diff --git a/aws-cloudformation-schema/aws-kafkaconnect-customplugin.json b/aws-cloudformation-schema/aws-kafkaconnect-customplugin.json
new file mode 100644
index 0000000000..b730042ddc
--- /dev/null
+++ b/aws-cloudformation-schema/aws-kafkaconnect-customplugin.json
@@ -0,0 +1,147 @@
+{
+ "typeName" : "AWS::KafkaConnect::CustomPlugin",
+ "description" : "An example resource schema demonstrating some basic constructs and validation rules.",
+ "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git",
+ "definitions" : {
+ "Tag" : {
+ "description" : "A key-value pair to associate with a resource.",
+ "type" : "object",
+ "properties" : {
+ "Key" : {
+ "type" : "string",
+ "description" : "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.",
+ "minLength" : 1,
+ "maxLength" : 128
+ },
+ "Value" : {
+ "type" : "string",
+ "description" : "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.",
+ "minLength" : 0,
+ "maxLength" : 256
+ }
+ },
+ "required" : [ "Key", "Value" ],
+ "additionalProperties" : false
+ },
+ "CustomPluginFileDescription" : {
+ "description" : "Details about the custom plugin file.",
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "FileMd5" : {
+ "description" : "The hex-encoded MD5 checksum of the custom plugin file. You can use it to validate the file.",
+ "type" : "string"
+ },
+ "FileSize" : {
+ "description" : "The size in bytes of the custom plugin file. You can use it to validate the file.",
+ "type" : "integer",
+ "format" : "int64"
+ }
+ }
+ },
+ "CustomPluginLocation" : {
+ "description" : "Information about the location of a custom plugin.",
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "S3Location" : {
+ "$ref" : "#/definitions/S3Location"
+ }
+ },
+ "required" : [ "S3Location" ]
+ },
+ "S3Location" : {
+ "description" : "The S3 bucket Amazon Resource Name (ARN), file key, and object version of the plugin file stored in Amazon S3.",
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "BucketArn" : {
+ "type" : "string",
+ "description" : "The Amazon Resource Name (ARN) of an S3 bucket."
+ },
+ "FileKey" : {
+ "type" : "string",
+ "description" : "The file key for an object in an S3 bucket."
+ },
+ "ObjectVersion" : {
+ "type" : "string",
+ "description" : "The version of an object in an S3 bucket."
+ }
+ },
+ "required" : [ "BucketArn", "FileKey" ]
+ }
+ },
+ "properties" : {
+ "Name" : {
+ "description" : "The name of the custom plugin.",
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 128
+ },
+ "Description" : {
+ "description" : "A summary description of the custom plugin.",
+ "type" : "string",
+ "maxLength" : 1024
+ },
+ "CustomPluginArn" : {
+ "description" : "The Amazon Resource Name (ARN) of the custom plugin to use.",
+ "type" : "string",
+ "pattern" : "arn:(aws|aws-us-gov|aws-cn):kafkaconnect:.*"
+ },
+ "ContentType" : {
+ "description" : "The type of the plugin file.",
+ "type" : "string",
+ "enum" : [ "JAR", "ZIP" ]
+ },
+ "FileDescription" : {
+ "$ref" : "#/definitions/CustomPluginFileDescription"
+ },
+ "Location" : {
+ "$ref" : "#/definitions/CustomPluginLocation"
+ },
+ "Revision" : {
+ "description" : "The revision of the custom plugin.",
+ "type" : "integer",
+ "format" : "int64"
+ },
+ "Tags" : {
+ "description" : "An array of key-value pairs to apply to this resource.",
+ "type" : "array",
+ "uniqueItems" : false,
+ "insertionOrder" : false,
+ "items" : {
+ "$ref" : "#/definitions/Tag"
+ }
+ }
+ },
+ "additionalProperties" : false,
+ "required" : [ "Name", "ContentType", "Location" ],
+ "primaryIdentifier" : [ "/properties/CustomPluginArn" ],
+ "additionalIdentifiers" : [ [ "/properties/Name" ] ],
+ "readOnlyProperties" : [ "/properties/CustomPluginArn", "/properties/Revision", "/properties/FileDescription" ],
+ "createOnlyProperties" : [ "/properties/Name", "/properties/Description", "/properties/ContentType", "/properties/Location" ],
+ "tagging" : {
+ "taggable" : true,
+ "tagOnCreate" : true,
+ "tagUpdatable" : true,
+ "cloudFormationSystemTags" : true,
+ "tagProperty" : "/properties/Tags"
+ },
+ "handlers" : {
+ "create" : {
+ "permissions" : [ "kafkaconnect:DescribeCustomPlugin", "kafkaconnect:ListTagsForResource", "kafkaconnect:CreateCustomPlugin", "kafkaconnect:TagResource", "s3:GetObject", "s3:GetObjectVersion", "s3:GetObjectAttributes", "s3:GetObjectVersionAttributes" ]
+ },
+ "read" : {
+ "permissions" : [ "kafkaconnect:DescribeCustomPlugin", "kafkaconnect:ListTagsForResource" ]
+ },
+ "update" : {
+ "permissions" : [ "kafkaconnect:DescribeCustomPlugin", "kafkaconnect:ListTagsForResource", "kafkaconnect:TagResource", "kafkaconnect:UntagResource" ]
+ },
+ "delete" : {
+ "permissions" : [ "kafkaconnect:DeleteCustomPlugin", "kafkaconnect:DescribeCustomPlugin" ]
+ },
+ "list" : {
+ "permissions" : [ "kafkaconnect:ListCustomPlugins" ]
+ }
+ }
+}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-kafkaconnect-workerconfiguration.json b/aws-cloudformation-schema/aws-kafkaconnect-workerconfiguration.json
new file mode 100644
index 0000000000..4c0d637646
--- /dev/null
+++ b/aws-cloudformation-schema/aws-kafkaconnect-workerconfiguration.json
@@ -0,0 +1,89 @@
+{
+ "typeName" : "AWS::KafkaConnect::WorkerConfiguration",
+ "description" : "The configuration of the workers, which are the processes that run the connector logic.",
+ "additionalProperties" : false,
+ "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-kafkaconnect.git",
+ "properties" : {
+ "Name" : {
+ "description" : "The name of the worker configuration.",
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 128
+ },
+ "Description" : {
+ "description" : "A summary description of the worker configuration.",
+ "type" : "string",
+ "maxLength" : 1024
+ },
+ "WorkerConfigurationArn" : {
+ "description" : "The Amazon Resource Name (ARN) of the custom configuration.",
+ "type" : "string",
+ "pattern" : "arn:(aws|aws-us-gov|aws-cn):kafkaconnect:.*"
+ },
+ "PropertiesFileContent" : {
+ "description" : "Base64 encoded contents of connect-distributed.properties file.",
+ "type" : "string"
+ },
+ "Revision" : {
+ "description" : "The description of a revision of the worker configuration.",
+ "type" : "integer",
+ "format" : "int64"
+ },
+ "Tags" : {
+ "description" : "A collection of tags associated with a resource",
+ "type" : "array",
+ "uniqueItems" : true,
+ "insertionOrder" : false,
+ "items" : {
+ "$ref" : "#/definitions/Tag"
+ }
+ }
+ },
+ "definitions" : {
+ "Tag" : {
+ "type" : "object",
+ "properties" : {
+ "Key" : {
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 128
+ },
+ "Value" : {
+ "type" : "string",
+ "maxLength" : 256
+ }
+ },
+ "required" : [ "Value", "Key" ],
+ "additionalProperties" : false
+ }
+ },
+ "required" : [ "Name", "PropertiesFileContent" ],
+ "primaryIdentifier" : [ "/properties/WorkerConfigurationArn" ],
+ "additionalIdentifiers" : [ [ "/properties/Name" ] ],
+ "readOnlyProperties" : [ "/properties/WorkerConfigurationArn", "/properties/Revision" ],
+ "createOnlyProperties" : [ "/properties/Name", "/properties/Description", "/properties/PropertiesFileContent" ],
+ "tagging" : {
+ "taggable" : true,
+ "tagOnCreate" : true,
+ "tagUpdatable" : true,
+ "cloudFormationSystemTags" : true,
+ "tagProperty" : "/properties/Tags"
+ },
+ "handlers" : {
+ "create" : {
+ "permissions" : [ "kafkaconnect:DescribeWorkerConfiguration", "kafkaconnect:CreateWorkerConfiguration", "kafkaconnect:TagResource", "kafkaconnect:ListTagsForResource" ]
+ },
+ "read" : {
+ "permissions" : [ "kafkaconnect:DescribeWorkerConfiguration", "kafkaconnect:ListTagsForResource" ]
+ },
+ "update" : {
+ "permissions" : [ "kafkaconnect:DescribeWorkerConfiguration", "kafkaconnect:ListTagsForResource", "kafkaconnect:TagResource", "kafkaconnect:UntagResource" ]
+ },
+ "delete" : {
+ "permissions" : [ "kafkaconnect:DescribeWorkerConfiguration", "kafkaconnect:DeleteWorkerConfiguration" ]
+ },
+ "list" : {
+ "permissions" : [ "kafkaconnect:ListWorkerConfigurations" ]
+ }
+ }
+}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-logs-loggroup.json b/aws-cloudformation-schema/aws-logs-loggroup.json
index 59267bd530..8f185fad25 100644
--- a/aws-cloudformation-schema/aws-logs-loggroup.json
+++ b/aws-cloudformation-schema/aws-logs-loggroup.json
@@ -1,22 +1,22 @@
{
"typeName" : "AWS::Logs::LogGroup",
- "description" : "Resource schema for AWS::Logs::LogGroup",
+ "description" : "The ``AWS::Logs::LogGroup`` resource specifies a log group. A log group defines common properties for log streams, such as their retention and access control rules. Each log stream must belong to one log group.\n You can create up to 1,000,000 log groups per Region per account. You must use the following guidelines when naming a log group:\n + Log group names must be unique within a Region for an AWS account.\n + Log group names can be between 1 and 512 characters long.\n + Log group names consist of the following characters: a-z, A-Z, 0-9, '_' (underscore), '-' (hyphen), '/' (forward slash), and '.' (period).",
"sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git",
"definitions" : {
"Tag" : {
- "description" : "A key-value pair to associate with a resource.",
+ "description" : "",
"type" : "object",
"additionalProperties" : false,
"properties" : {
"Key" : {
"type" : "string",
- "description" : "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., :, /, =, +, - and @.",
+ "description" : "",
"minLength" : 1,
"maxLength" : 128
},
"Value" : {
"type" : "string",
- "description" : "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., :, /, =, +, - and @.",
+ "description" : "",
"minLength" : 0,
"maxLength" : 256
}
@@ -26,35 +26,35 @@
},
"properties" : {
"LogGroupName" : {
- "description" : "The name of the log group. If you don't specify a name, AWS CloudFormation generates a unique ID for the log group.",
+ "description" : "The name of the log group. If you don't specify a name, CFNlong generates a unique ID for the log group.",
"type" : "string",
"minLength" : 1,
"maxLength" : 512,
"pattern" : "^[.\\-_/#A-Za-z0-9]{1,512}\\Z"
},
"KmsKeyId" : {
- "description" : "The Amazon Resource Name (ARN) of the CMK to use when encrypting log data.",
+ "description" : "The Amazon Resource Name (ARN) of the KMS key to use when encrypting log data.\n To associate an KMS key with the log group, specify the ARN of that KMS key here. If you do so, ingested data is encrypted using this key. This association is stored as long as the data encrypted with the KMS key is still within CWL. This enables CWL to decrypt this data whenever it is requested.\n If you attempt to associate a KMS key with the log group but the KMS key doesn't exist or is deactivated, you will receive an ``InvalidParameterException`` error.\n Log group data is always encrypted in CWL. If you omit this key, the encryption does not use KMS. For more information, see [Encrypt log data in using](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/encrypt-log-data-kms.html)",
"type" : "string",
"maxLength" : 256,
"pattern" : "^arn:[a-z0-9-]+:kms:[a-z0-9-]+:\\d{12}:(key|alias)/.+\\Z"
},
"DataProtectionPolicy" : {
- "description" : "The body of the policy document you want to use for this topic.\n\nYou can only add one policy per topic.\n\nThe policy must be in JSON string format.\n\nLength Constraints: Maximum length of 30720",
+ "description" : "Creates a data protection policy and assigns it to the log group. A data protection policy can help safeguard sensitive data that's ingested by the log group by auditing and masking the sensitive log data. When a user who does not have permission to view masked data views a log event that includes masked data, the sensitive data is replaced by asterisks.\n For more information, including a list of types of data that can be audited and masked, see [Protect sensitive log data with masking](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/mask-sensitive-log-data.html).",
"type" : "object"
},
"LogGroupClass" : {
- "description" : "The class of the log group. Possible values are: STANDARD and INFREQUENT_ACCESS, with STANDARD being the default class",
+ "description" : "Specifies the log group class for this log group. There are two classes:\n + The ``Standard`` log class supports all CWL features.\n + The ``Infrequent Access`` log class supports a subset of CWL features and incurs lower costs.\n \n For details about the features supported by each class, see [Log classes](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch_Logs_Log_Classes.html)",
"type" : "string",
"enum" : [ "STANDARD", "INFREQUENT_ACCESS" ],
"default" : "STANDARD"
},
"RetentionInDays" : {
- "description" : "The number of days to retain the log events in the specified log group. Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1096, 1827, and 3653.",
+ "description" : "The number of days to retain the log events in the specified log group. Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1096, 1827, 2192, 2557, 2922, 3288, and 3653.\n To set a log group so that its log events do not expire, use [DeleteRetentionPolicy](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DeleteRetentionPolicy.html).",
"type" : "integer",
"enum" : [ 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1096, 1827, 2192, 2557, 2922, 3288, 3653 ]
},
"Tags" : {
- "description" : "An array of key-value pairs to apply to this resource.",
+ "description" : "An array of key-value pairs to apply to the log group.\n For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html).",
"type" : "array",
"uniqueItems" : true,
"insertionOrder" : false,
@@ -63,7 +63,7 @@
}
},
"Arn" : {
- "description" : "The CloudWatch log group ARN.",
+ "description" : "",
"type" : "string"
}
},
diff --git a/aws-cloudformation-schema/aws-logs-metricfilter.json b/aws-cloudformation-schema/aws-logs-metricfilter.json
index ed5f3fd9a1..b27c4e7cde 100644
--- a/aws-cloudformation-schema/aws-logs-metricfilter.json
+++ b/aws-cloudformation-schema/aws-logs-metricfilter.json
@@ -7,7 +7,7 @@
"LogGroupName" : "/LogGroupName"
}
},
- "description" : "Specifies a metric filter that describes how CloudWatch Logs extracts information from logs and transforms it into Amazon CloudWatch metrics.",
+ "description" : "The ``AWS::Logs::MetricFilter`` resource specifies a metric filter that describes how CWL extracts information from logs and transforms it into Amazon CloudWatch metrics. If you have multiple metric filters that are associated with a log group, all the filters are applied to the log streams in that group.\n The maximum number of metric filters that can be associated with a log group is 100.",
"sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git",
"tagging" : {
"taggable" : false
@@ -15,19 +15,19 @@
"replacementStrategy" : "delete_then_create",
"definitions" : {
"Dimension" : {
- "description" : "the key-value pairs that further define a metric.",
+ "description" : "Specifies the CW metric dimensions to publish with this metric.\n Because dimensions are part of the unique identifier for a metric, whenever a unique dimension name/value pair is extracted from your logs, you are creating a new variation of that metric.\n For more information about publishing dimensions with metrics created by metric filters, see [Publishing dimensions with metrics from values in JSON or space-delimited log events](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html#logs-metric-filters-dimensions).\n Metrics extracted from log events are charged as custom metrics. To prevent unexpected high charges, do not specify high-cardinality fields such as ``IPAddress`` or ``requestID`` as dimensions. Each different value found for a dimension is treated as a separate metric and accrues charges as a separate custom metric. \n To help prevent accidental high charges, Amazon disables a metric filter if it generates 1000 different name/value pairs for the dimensions that you have specified within a certain amount of time.\n You can also set up a billing alarm to alert you if your charges are higher than expected. For more information, see [Creating a Billing Alarm to Monitor Your Estimated Charges](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/monitor_estimated_charges_with_cloudwatch.html).",
"type" : "object",
"additionalProperties" : false,
"properties" : {
"Key" : {
"type" : "string",
- "description" : "The key of the dimension. Maximum length of 255.",
+ "description" : "The name for the CW metric dimension that the metric filter creates.\n Dimension names must contain only ASCII characters, must include at least one non-whitespace character, and cannot start with a colon (:).",
"minLength" : 1,
"maxLength" : 255
},
"Value" : {
"type" : "string",
- "description" : "The value of the dimension. Maximum length of 255.",
+ "description" : "The log event field that will contain the value for this dimension. This dimension will only be published for a metric if the value is found in the log event. For example, ``$.eventType`` for JSON log events, or ``$server`` for space-delimited log events.",
"minLength" : 1,
"maxLength" : 255
}
@@ -38,11 +38,11 @@
"type" : "object",
"properties" : {
"DefaultValue" : {
- "description" : "The value to emit when a filter pattern does not match a log event. This value can be null.",
+ "description" : "(Optional) The value to emit when a filter pattern does not match a log event. This value can be null.",
"type" : "number"
},
"MetricName" : {
- "description" : "The name of the CloudWatch metric. Metric name must be in ASCII format.",
+ "description" : "The name of the CloudWatch metric.",
"type" : "string",
"minLength" : 1,
"maxLength" : 255,
@@ -50,26 +50,26 @@
},
"MetricNamespace" : {
"$comment" : "Namespaces can be up to 256 characters long; valid characters include 0-9A-Za-z.-_/#",
- "description" : "The namespace of the CloudWatch metric.",
+ "description" : "A custom namespace to contain your metric in CloudWatch. Use namespaces to group together metrics that are similar. For more information, see [Namespaces](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Namespace).",
"type" : "string",
"minLength" : 1,
"maxLength" : 256,
"pattern" : "^[0-9a-zA-Z\\.\\-_\\/#]{1,256}"
},
"MetricValue" : {
- "description" : "The value to publish to the CloudWatch metric when a filter pattern matches a log event.",
+ "description" : "The value that is published to the CloudWatch metric. For example, if you're counting the occurrences of a particular term like ``Error``, specify 1 for the metric value. If you're counting the number of bytes transferred, reference the value that is in the log event by using $. followed by the name of the field that you specified in the filter pattern, such as ``$.size``.",
"type" : "string",
"pattern" : ".{1,100}",
"minLength" : 1,
"maxLength" : 100
},
"Unit" : {
- "description" : "The unit to assign to the metric. If you omit this, the unit is set as None.",
+ "description" : "The unit to assign to the metric. If you omit this, the unit is set as ``None``.",
"type" : "string",
"enum" : [ "Seconds", "Microseconds", "Milliseconds", "Bytes", "Kilobytes", "Megabytes", "Gigabytes", "Terabytes", "Bits", "Kilobits", "Megabits", "Gigabits", "Terabits", "Percent", "Count", "Bytes/Second", "Kilobytes/Second", "Megabytes/Second", "Gigabytes/Second", "Terabytes/Second", "Bits/Second", "Kilobits/Second", "Megabits/Second", "Gigabits/Second", "Terabits/Second", "Count/Second", "None" ]
},
"Dimensions" : {
- "description" : "Dimensions are the key-value pairs that further define a metric",
+ "description" : "The fields to use as dimensions for the metric. One metric filter can include as many as three dimensions.\n Metrics extracted from log events are charged as custom metrics. To prevent unexpected high charges, do not specify high-cardinality fields such as ``IPAddress`` or ``requestID`` as dimensions. Each different value found for a dimension is treated as a separate metric and accrues charges as a separate custom metric. \n CloudWatch Logs disables a metric filter if it generates 1000 different name/value pairs for your specified dimensions within a certain amount of time. This helps to prevent accidental high charges.\n You can also set up a billing alarm to alert you if your charges are higher than expected. For more information, see [Creating a Billing Alarm to Monitor Your Estimated Charges](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/monitor_estimated_charges_with_cloudwatch.html).",
"type" : "array",
"uniqueItems" : true,
"insertionOrder" : false,
@@ -81,31 +81,32 @@
}
},
"required" : [ "MetricName", "MetricNamespace", "MetricValue" ],
- "additionalProperties" : false
+ "additionalProperties" : false,
+ "description" : "``MetricTransformation`` is a property of the ``AWS::Logs::MetricFilter`` resource that describes how to transform log streams into a CloudWatch metric."
}
},
"properties" : {
"FilterName" : {
- "description" : "A name for the metric filter.",
+ "description" : "The name of the metric filter.",
"type" : "string",
"minLength" : 1,
"maxLength" : 512,
"pattern" : "^[^:*]{1,512}"
},
"FilterPattern" : {
- "description" : "Pattern that Logs follows to interpret each entry in a log.",
+ "description" : "A filter pattern for extracting metric data out of ingested log events. For more information, see [Filter and Pattern Syntax](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html).",
"type" : "string",
"maxLength" : 1024
},
"LogGroupName" : {
- "description" : "Existing log group that you want to associate with this filter.",
+ "description" : "The name of an existing log group that you want to associate with this metric filter.",
"type" : "string",
"minLength" : 1,
"maxLength" : 512,
"pattern" : "^[.\\-_/#A-Za-z0-9]{1,512}"
},
"MetricTransformations" : {
- "description" : "A collection of information that defines how metric data gets emitted.",
+ "description" : "The metric transformations.",
"type" : "array",
"minItems" : 1,
"maxItems" : 1,
diff --git a/aws-cloudformation-schema/aws-logs-subscriptionfilter.json b/aws-cloudformation-schema/aws-logs-subscriptionfilter.json
index ec4b705f8e..2f82a596dd 100644
--- a/aws-cloudformation-schema/aws-logs-subscriptionfilter.json
+++ b/aws-cloudformation-schema/aws-logs-subscriptionfilter.json
@@ -1,7 +1,7 @@
{
"typeName" : "AWS::Logs::SubscriptionFilter",
"$schema" : "https://raw.githubusercontent.com/aws-cloudformation/cloudformation-cli/master/src/rpdk/core/data/schema/provider.definition.schema.v1.json",
- "description" : "Subscription filters allow you to subscribe to a real-time stream of log events and have them delivered to a specific destination.",
+ "description" : "The ``AWS::Logs::SubscriptionFilter`` resource specifies a subscription filter and associates it with the specified log group. Subscription filters allow you to subscribe to a real-time stream of log events and have them delivered to a specific destination. Currently, the supported destinations are:\n + An Amazon Kinesis data stream belonging to the same account as the subscription filter, for same-account delivery.\n + A logical destination that belongs to a different account, for cross-account delivery.\n + An Amazon Kinesis Firehose delivery stream that belongs to the same account as the subscription filter, for same-account delivery.\n + An LAMlong function that belongs to the same account as the subscription filter, for same-account delivery.\n \n There can be as many as two subscription filters associated with a log group.",
"sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs",
"tagging" : {
"taggable" : false,
@@ -12,7 +12,7 @@
"replacementStrategy" : "delete_then_create",
"properties" : {
"FilterName" : {
- "description" : "The name of the filter generated by resource.",
+ "description" : "The name of the subscription filter.",
"type" : "string"
},
"DestinationArn" : {
@@ -20,19 +20,19 @@
"type" : "string"
},
"FilterPattern" : {
- "description" : "The filtering expressions that restrict what gets delivered to the destination AWS resource.",
+ "description" : "The filtering expressions that restrict what gets delivered to the destination AWS resource. For more information about the filter pattern syntax, see [Filter and Pattern Syntax](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html).",
"type" : "string"
},
"LogGroupName" : {
- "description" : "Existing log group that you want to associate with this filter.",
+ "description" : "The log group to associate with the subscription filter. All log events that are uploaded to this log group are filtered and delivered to the specified AWS resource if the filter pattern matches the log events.",
"type" : "string"
},
"RoleArn" : {
- "description" : "The ARN of an IAM role that grants CloudWatch Logs permissions to deliver ingested log events to the destination stream. You don't need to provide the ARN when you are working with a logical destination for cross-account delivery.",
+ "description" : "The ARN of an IAM role that grants CWL permissions to deliver ingested log events to the destination stream. You don't need to provide the ARN when you are working with a logical destination for cross-account delivery.",
"type" : "string"
},
"Distribution" : {
- "description" : "The method used to distribute log data to the destination. By default, log data is grouped by log stream, but the grouping can be set to random for a more even distribution. This property is only applicable when the destination is an Amazon Kinesis stream.",
+ "description" : "The method used to distribute log data to the destination, which can be either random or grouped by log stream.",
"type" : "string",
"enum" : [ "Random", "ByLogStream" ]
}
diff --git a/aws-cloudformation-schema/aws-networkfirewall-tlsinspectionconfiguration.json b/aws-cloudformation-schema/aws-networkfirewall-tlsinspectionconfiguration.json
index 151c0a25d7..5e55cf3641 100644
--- a/aws-cloudformation-schema/aws-networkfirewall-tlsinspectionconfiguration.json
+++ b/aws-cloudformation-schema/aws-networkfirewall-tlsinspectionconfiguration.json
@@ -224,7 +224,7 @@
"createOnlyProperties" : [ "/properties/TLSInspectionConfigurationName" ],
"handlers" : {
"create" : {
- "permissions" : [ "network-firewall:CreateTLSInspectionConfiguration", "network-firewall:DescribeTLSInspectionConfiguration", "network-firewall:TagResource" ]
+ "permissions" : [ "iam:CreateServiceLinkedRole", "network-firewall:CreateTLSInspectionConfiguration", "network-firewall:DescribeTLSInspectionConfiguration", "network-firewall:TagResource" ]
},
"read" : {
"permissions" : [ "network-firewall:DescribeTLSInspectionConfiguration", "network-firewall:ListTagsForResources" ]
diff --git a/aws-cloudformation-schema/aws-rds-integration.json b/aws-cloudformation-schema/aws-rds-integration.json
index 40c72a920d..900634893f 100644
--- a/aws-cloudformation-schema/aws-rds-integration.json
+++ b/aws-cloudformation-schema/aws-rds-integration.json
@@ -9,6 +9,12 @@
"minLength" : 1,
"maxLength" : 64
},
+ "Description" : {
+ "type" : "string",
+ "description" : "The description of the integration.",
+ "minLength" : 1,
+ "maxLength" : 1000
+ },
"Tags" : {
"type" : "array",
"maxItems" : 50,
@@ -19,6 +25,13 @@
"$ref" : "#/definitions/Tag"
}
},
+ "DataFilter" : {
+ "type" : "string",
+ "description" : "The data filter for the integration.",
+ "minLength" : 1,
+ "maxLength" : 25600,
+ "pattern" : "[a-zA-Z0-9_ \"\\\\\\-$,*.:?+\\/]*"
+ },
"SourceArn" : {
"type" : "string",
"description" : "The Amazon Resource Name (ARN) of the Aurora DB cluster to use as the source for replication."
@@ -91,7 +104,7 @@
"/properties/SourceArn" : "$lowercase(SourceArn)",
"/properties/KmsKeyId" : "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", KmsKeyId])"
},
- "createOnlyProperties" : [ "/properties/SourceArn", "/properties/TargetArn", "/properties/KMSKeyId", "/properties/AdditionalEncryptionContext", "/properties/IntegrationName" ],
+ "createOnlyProperties" : [ "/properties/SourceArn", "/properties/TargetArn", "/properties/KMSKeyId", "/properties/AdditionalEncryptionContext" ],
"readOnlyProperties" : [ "/properties/IntegrationArn", "/properties/CreateTime" ],
"primaryIdentifier" : [ "/properties/IntegrationArn" ],
"handlers" : {
@@ -102,7 +115,7 @@
"permissions" : [ "rds:DescribeIntegrations" ]
},
"update" : {
- "permissions" : [ "rds:DescribeIntegrations", "rds:AddTagsToResource", "rds:RemoveTagsFromResource" ]
+ "permissions" : [ "rds:DescribeIntegrations", "rds:AddTagsToResource", "rds:RemoveTagsFromResource", "rds:ModifyIntegration" ]
},
"delete" : {
"permissions" : [ "rds:DeleteIntegration", "rds:DescribeIntegrations" ]
diff --git a/aws-cloudformation-schema/aws-resiliencehub-resiliencypolicy.json b/aws-cloudformation-schema/aws-resiliencehub-resiliencypolicy.json
index 0fdf02a240..e18ddcb1d8 100644
--- a/aws-cloudformation-schema/aws-resiliencehub-resiliencypolicy.json
+++ b/aws-cloudformation-schema/aws-resiliencehub-resiliencypolicy.json
@@ -21,11 +21,21 @@
},
"PolicyMap" : {
"type" : "object",
- "patternProperties" : {
- ".*{1,8}" : {
+ "properties" : {
+ "AZ" : {
+ "$ref" : "#/definitions/FailurePolicy"
+ },
+ "Hardware" : {
+ "$ref" : "#/definitions/FailurePolicy"
+ },
+ "Software" : {
+ "$ref" : "#/definitions/FailurePolicy"
+ },
+ "Region" : {
"$ref" : "#/definitions/FailurePolicy"
}
},
+ "required" : [ "AZ", "Hardware", "Software" ],
"additionalProperties" : false
},
"TagValue" : {
diff --git a/aws-cloudformation-schema/aws-securitylake-awslogsource.json b/aws-cloudformation-schema/aws-securitylake-awslogsource.json
new file mode 100644
index 0000000000..5362b4d137
--- /dev/null
+++ b/aws-cloudformation-schema/aws-securitylake-awslogsource.json
@@ -0,0 +1,57 @@
+{
+ "typeName" : "AWS::SecurityLake::AwsLogSource",
+ "description" : "Resource Type definition for AWS::SecurityLake::AwsLogSource",
+ "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-securitylake.git",
+ "additionalProperties" : false,
+ "properties" : {
+ "Accounts" : {
+ "description" : "AWS account where you want to collect logs from.",
+ "type" : "array",
+ "uniqueItems" : true,
+ "insertionOrder" : false,
+ "items" : {
+ "type" : "string",
+ "pattern" : "^[0-9]{12}$"
+ }
+ },
+ "DataLakeArn" : {
+ "description" : "The ARN for the data lake.",
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 256
+ },
+ "SourceName" : {
+ "description" : "The name for a AWS source. This must be a Regionally unique value.",
+ "type" : "string"
+ },
+ "SourceVersion" : {
+ "description" : "The version for a AWS source. This must be a Regionally unique value.",
+ "type" : "string",
+ "pattern" : "^(latest|[0-9]\\.[0-9])$"
+ }
+ },
+ "required" : [ "DataLakeArn", "SourceVersion", "SourceName" ],
+ "primaryIdentifier" : [ "/properties/SourceName", "/properties/SourceVersion" ],
+ "createOnlyProperties" : [ "/properties/DataLakeArn", "/properties/SourceName", "/properties/SourceVersion" ],
+ "tagging" : {
+ "taggable" : false
+ },
+ "replacementStrategy" : "delete_then_create",
+ "handlers" : {
+ "create" : {
+ "permissions" : [ "glue:CreateDatabase", "glue:CreateTable", "glue:GetDatabase", "glue:GetTable", "iam:CreateServiceLinkedRole", "kms:CreateGrant", "kms:DescribeKey", "securitylake:CreateDataLake", "securitylake:CreateAwsLogSource", "securitylake:ListLogSources" ]
+ },
+ "read" : {
+ "permissions" : [ "securitylake:ListLogSources" ]
+ },
+ "list" : {
+ "permissions" : [ "securitylake:ListLogSources" ]
+ },
+ "delete" : {
+ "permissions" : [ "securitylake:DeleteAwsLogSource", "securitylake:ListLogSources" ]
+ },
+ "update" : {
+ "permissions" : [ "securitylake:CreateAwsLogSource", "securitylake:DeleteAwsLogSource", "glue:CreateDatabase", "glue:CreateTable", "glue:GetDatabase", "glue:GetTable", "iam:CreateServiceLinkedRole", "kms:CreateGrant", "kms:DescribeKey" ]
+ }
+ }
+}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-securitylake-datalake.json b/aws-cloudformation-schema/aws-securitylake-datalake.json
new file mode 100644
index 0000000000..7982aa24f5
--- /dev/null
+++ b/aws-cloudformation-schema/aws-securitylake-datalake.json
@@ -0,0 +1,172 @@
+{
+ "typeName" : "AWS::SecurityLake::DataLake",
+ "description" : "Resource Type definition for AWS::SecurityLake::DataLake",
+ "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-securitylake.git",
+ "additionalProperties" : false,
+ "definitions" : {
+ "EncryptionConfiguration" : {
+ "description" : "Provides encryption details of Amazon Security Lake object.",
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "KmsKeyId" : {
+ "description" : "The id of KMS encryption key used by Amazon Security Lake to encrypt the Security Lake object.",
+ "type" : "string"
+ }
+ }
+ },
+ "LifecycleConfiguration" : {
+ "description" : "Provides lifecycle details of Amazon Security Lake object.",
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "Expiration" : {
+ "$ref" : "#/definitions/Expiration"
+ },
+ "Transitions" : {
+ "description" : "Provides data storage transition details of Amazon Security Lake object.",
+ "type" : "array",
+ "uniqueItems" : false,
+ "insertionOrder" : false,
+ "items" : {
+ "$ref" : "#/definitions/Transitions"
+ }
+ }
+ }
+ },
+ "Expiration" : {
+ "description" : "Provides data expiration details of Amazon Security Lake object.",
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "Days" : {
+ "$ref" : "#/definitions/Days"
+ }
+ }
+ },
+ "Days" : {
+ "description" : "Number of days before data expires in the Amazon Security Lake object.",
+ "type" : "integer",
+ "minimum" : 1
+ },
+ "Transitions" : {
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "Days" : {
+ "description" : "Number of days before data transitions to a different S3 Storage Class in the Amazon Security Lake object.",
+ "type" : "integer",
+ "minimum" : 1
+ },
+ "StorageClass" : {
+ "description" : "The range of storage classes that you can choose from based on the data access, resiliency, and cost requirements of your workloads.",
+ "type" : "string"
+ }
+ }
+ },
+ "ReplicationConfiguration" : {
+ "description" : "Provides replication details of Amazon Security Lake object.",
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "Regions" : {
+ "$ref" : "#/definitions/Regions"
+ },
+ "RoleArn" : {
+ "description" : "Replication settings for the Amazon S3 buckets. This parameter uses the AWS Identity and Access Management (IAM) role you created that is managed by Security Lake, to ensure the replication setting is correct.",
+ "type" : "string",
+ "pattern" : "^arn:.*$"
+ }
+ }
+ },
+ "Regions" : {
+ "description" : "Replication enables automatic, asynchronous copying of objects across Amazon S3 buckets. Amazon S3 buckets that are configured for object replication can be owned by the same AWS account or by different accounts. You can replicate objects to a single destination bucket or to multiple destination buckets. The destination buckets can be in different AWS Regions or within the same Region as the source bucket.",
+ "type" : "array",
+ "uniqueItems" : true,
+ "insertionOrder" : false,
+ "items" : {
+ "type" : "string",
+ "pattern" : "^(af|ap|ca|eu|me|sa|us)-(central|north|(north(?:east|west))|south|south(?:east|west)|east|west)-\\d+$"
+ }
+ },
+ "Tag" : {
+ "description" : "A key-value pair to associate with a resource.",
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "Key" : {
+ "type" : "string",
+ "description" : "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, `_`, `.`, `/`, `=`, `+`, and `-`."
+ },
+ "Value" : {
+ "type" : "string",
+ "description" : "The value for the tag. You can specify a value that is 0 to 256 characters in length."
+ }
+ },
+ "required" : [ "Key", "Value" ]
+ }
+ },
+ "properties" : {
+ "EncryptionConfiguration" : {
+ "$ref" : "#/definitions/EncryptionConfiguration"
+ },
+ "LifecycleConfiguration" : {
+ "$ref" : "#/definitions/LifecycleConfiguration"
+ },
+ "ReplicationConfiguration" : {
+ "$ref" : "#/definitions/ReplicationConfiguration"
+ },
+ "MetaStoreManagerRoleArn" : {
+ "description" : "The Amazon Resource Name (ARN) used to index AWS Glue table partitions that are generated by the ingestion and normalization of AWS log sources and custom sources.",
+ "type" : "string",
+ "pattern" : "^arn:.*$"
+ },
+ "Tags" : {
+ "type" : "array",
+ "uniqueItems" : false,
+ "insertionOrder" : false,
+ "items" : {
+ "$ref" : "#/definitions/Tag"
+ }
+ },
+ "Arn" : {
+ "description" : "The Amazon Resource Name (ARN) created by you to provide to the subscriber.",
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 1011
+ },
+ "S3BucketArn" : {
+ "description" : "The ARN for the Amazon Security Lake Amazon S3 bucket.",
+ "type" : "string"
+ }
+ },
+ "primaryIdentifier" : [ "/properties/Arn" ],
+ "createOnlyProperties" : [ "/properties/MetaStoreManagerRoleArn" ],
+ "writeOnlyProperties" : [ "/properties/MetaStoreManagerRoleArn" ],
+ "readOnlyProperties" : [ "/properties/Arn", "/properties/S3BucketArn" ],
+ "tagging" : {
+ "taggable" : true,
+ "tagOnCreate" : true,
+ "tagUpdatable" : true,
+ "cloudFormationSystemTags" : false,
+ "tagProperty" : "/properties/Tags"
+ },
+ "replacementStrategy" : "delete_then_create",
+ "handlers" : {
+ "create" : {
+ "permissions" : [ "events:*", "iam:CreateServiceLinkedRole", "iam:GetRole", "iam:ListAttachedRolePolicies", "iam:PutRolePolicy", "iam:PassRole", "glue:*", "organizations:*", "kms:DescribeKey", "kms:CreateGrant", "lakeformation:*", "lambda:*", "s3:*", "securitylake:CreateDataLake", "securitylake:TagResource", "securitylake:List*", "sqs:*" ]
+ },
+ "update" : {
+ "permissions" : [ "events:*", "iam:CreateServiceLinkedRole", "iam:DeleteRolePolicy", "iam:GetRole", "iam:PassRole", "iam:PutRolePolicy", "kms:DescribeKey", "kms:CreateGrant", "lakeformation:*", "lambda:*", "organizations:*", "s3:*", "securitylake:List*", "securitylake:TagResource", "securitylake:UntagResource", "securitylake:UpdateDataLake", "sqs:*" ]
+ },
+ "delete" : {
+ "permissions" : [ "organizations:*", "securitylake:DeleteDataLake", "securitylake:List*" ]
+ },
+ "read" : {
+ "permissions" : [ "securitylake:List*" ]
+ },
+ "list" : {
+ "permissions" : [ "securitylake:List*" ]
+ }
+ }
+}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-securitylake-subscriber.json b/aws-cloudformation-schema/aws-securitylake-subscriber.json
new file mode 100644
index 0000000000..de2e5a2d51
--- /dev/null
+++ b/aws-cloudformation-schema/aws-securitylake-subscriber.json
@@ -0,0 +1,197 @@
+{
+ "typeName" : "AWS::SecurityLake::Subscriber",
+ "description" : "Resource Type definition for AWS::SecurityLake::Subscriber",
+ "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-securitylake.git",
+ "definitions" : {
+ "AccessTypes" : {
+ "type" : "array",
+ "insertionOrder" : true,
+ "items" : {
+ "type" : "string",
+ "enum" : [ "LAKEFORMATION", "S3" ]
+ },
+ "minItems" : 1,
+ "uniqueItems" : true,
+ "description" : "The Amazon S3 or AWS Lake Formation access type."
+ },
+ "AwsLogSource" : {
+ "type" : "object",
+ "properties" : {
+ "SourceName" : {
+ "type" : "string",
+ "description" : "The name for a AWS source. This must be a Regionally unique value."
+ },
+ "SourceVersion" : {
+ "type" : "string",
+ "pattern" : "^(latest|[0-9]\\.[0-9])$",
+ "description" : "The version for a AWS source. This must be a Regionally unique value."
+ }
+ },
+ "description" : "Amazon Security Lake supports log and event collection for natively supported AWS services.",
+ "additionalProperties" : false
+ },
+ "CustomLogSource" : {
+ "type" : "object",
+ "properties" : {
+ "SourceName" : {
+ "type" : "string",
+ "pattern" : "^[\\\\\\w\\-_:/.]*$",
+ "minLength" : 1,
+ "maxLength" : 64,
+ "description" : "The name for a third-party custom source. This must be a Regionally unique value."
+ },
+ "SourceVersion" : {
+ "type" : "string",
+ "pattern" : "^[A-Za-z0-9\\-\\.\\_]*$",
+ "minLength" : 1,
+ "maxLength" : 32,
+ "description" : "The version for a third-party custom source. This must be a Regionally unique value."
+ }
+ },
+ "additionalProperties" : false
+ },
+ "Source" : {
+ "oneOf" : [ {
+ "type" : "object",
+ "properties" : {
+ "AwsLogSource" : {
+ "$ref" : "#/definitions/AwsLogSource"
+ }
+ },
+ "required" : [ "AwsLogSource" ],
+ "additionalProperties" : false
+ }, {
+ "type" : "object",
+ "properties" : {
+ "CustomLogSource" : {
+ "$ref" : "#/definitions/CustomLogSource"
+ }
+ },
+ "required" : [ "CustomLogSource" ],
+ "additionalProperties" : false
+ } ]
+ },
+ "Tag" : {
+ "type" : "object",
+ "properties" : {
+ "Key" : {
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 128,
+ "description" : "The name of the tag. This is a general label that acts as a category for a more specific tag value (value)."
+ },
+ "Value" : {
+ "type" : "string",
+ "minLength" : 0,
+ "maxLength" : 256,
+ "description" : "The value that is associated with the specified tag key (key). This value acts as a descriptor for the tag key. A tag value cannot be null, but it can be an empty string."
+ }
+ },
+ "required" : [ "Key", "Value" ],
+ "additionalProperties" : false
+ }
+ },
+ "properties" : {
+ "AccessTypes" : {
+ "$ref" : "#/definitions/AccessTypes"
+ },
+ "DataLakeArn" : {
+ "description" : "The ARN for the data lake.",
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 256
+ },
+ "SubscriberIdentity" : {
+ "type" : "object",
+ "properties" : {
+ "ExternalId" : {
+ "type" : "string",
+ "pattern" : "^[\\w+=,.@:/-]*$",
+ "minLength" : 2,
+ "maxLength" : 1224,
+ "description" : "The external ID used to establish trust relationship with the AWS identity."
+ },
+ "Principal" : {
+ "type" : "string",
+ "pattern" : "^([0-9]{12}|[a-z0-9\\.\\-]*\\.(amazonaws|amazon)\\.com)$",
+ "description" : "The AWS identity principal."
+ }
+ },
+ "required" : [ "ExternalId", "Principal" ],
+ "description" : "The AWS identity used to access your data.",
+ "additionalProperties" : false
+ },
+ "SubscriberName" : {
+ "type" : "string",
+ "pattern" : "^[\\\\\\w\\s\\-_:/,.@=+]*$",
+ "minLength" : 1,
+ "maxLength" : 64,
+ "description" : "The name of your Security Lake subscriber account."
+ },
+ "SubscriberDescription" : {
+ "type" : "string",
+ "description" : "The description for your subscriber account in Security Lake."
+ },
+ "Tags" : {
+ "type" : "array",
+ "insertionOrder" : true,
+ "items" : {
+ "$ref" : "#/definitions/Tag"
+ },
+ "description" : "An array of objects, one for each tag to associate with the subscriber. For each tag, you must specify both a tag key and a tag value. A tag value cannot be null, but it can be an empty string."
+ },
+ "Sources" : {
+ "type" : "array",
+ "insertionOrder" : true,
+ "items" : {
+ "$ref" : "#/definitions/Source"
+ },
+ "description" : "The supported AWS services from which logs and events are collected."
+ },
+ "ResourceShareArn" : {
+ "type" : "string"
+ },
+ "ResourceShareName" : {
+ "type" : "string"
+ },
+ "SubscriberRoleArn" : {
+ "type" : "string"
+ },
+ "S3BucketArn" : {
+ "type" : "string"
+ },
+ "SubscriberArn" : {
+ "type" : "string"
+ }
+ },
+ "additionalProperties" : false,
+ "tagging" : {
+ "taggable" : true,
+ "tagOnCreate" : true,
+ "tagUpdatable" : true,
+ "cloudFormationSystemTags" : false,
+ "tagProperty" : "/properties/Tags"
+ },
+ "primaryIdentifier" : [ "/properties/SubscriberArn" ],
+ "required" : [ "AccessTypes", "DataLakeArn", "Sources", "SubscriberIdentity", "SubscriberName" ],
+ "readOnlyProperties" : [ "/properties/SubscriberArn", "/properties/S3BucketArn", "/properties/SubscriberRoleArn", "/properties/ResourceShareArn", "/properties/ResourceShareName" ],
+ "createOnlyProperties" : [ "/properties/DataLakeArn" ],
+ "replacementStrategy" : "delete_then_create",
+ "handlers" : {
+ "create" : {
+ "permissions" : [ "securitylake:CreateSubscriber", "securitylake:CreateCustomLogSource", "securitylake:CreateDataLake", "securitylake:TagResource", "securitylake:GetSubscriber", "securitylake:ListTagsForResource", "iam:GetRole", "iam:GetRolePolicy", "iam:PutRolePolicy", "iam:CreateRole", "iam:CreateServiceLinkedRole", "glue:GetDatabase", "glue:GetTable", "lakeformation:RegisterResource", "lakeformation:GrantPermissions", "lakeformation:RevokePermissions", "lakeformation:ListPermissions", "ram:GetResourceShareAssociations", "ram:CreateResourceShare", "ram:UpdateResourceShare", "ram:GetResourceShares" ]
+ },
+ "read" : {
+ "permissions" : [ "securitylake:GetSubscriber", "securitylake:ListTagsForResource" ]
+ },
+ "update" : {
+ "permissions" : [ "securitylake:UpdateSubscriber", "securitylake:GetSubscriber", "securitylake:TagResource", "securitylake:UntagResource", "securitylake:ListTagsForResource", "glue:GetDatabase", "glue:GetTable", "lakeformation:ListPermissions", "lakeformation:GrantPermissions", "lakeformation:RevokePermissions", "ram:CreateResourceShare", "ram:GetResourceShares", "ram:GetResourceShareAssociations", "ram:UpdateResourceShare", "ram:DeleteResourceShare", "iam:CreateRole", "iam:GetRole", "iam:DeleteRole", "iam:PutRolePolicy", "iam:DeleteRolePolicy", "iam:ListRolePolicies", "events:CreateApiDestination", "events:CreateConnection", "events:ListApiDestinations", "events:ListConnections", "events:PutRule", "events:UpdateApiDestination", "events:UpdateConnection", "events:DeleteApiDestination", "events:DeleteConnection", "events:DeleteRule", "events:RemoveTargets", "events:ListTargetsByRule", "events:DescribeRule", "events:PutTargets" ]
+ },
+ "delete" : {
+ "permissions" : [ "securitylake:DeleteSubscriber", "iam:GetRole", "iam:ListRolePolicies", "iam:DeleteRole", "iam:DeleteRolePolicy", "glue:GetTable", "lakeformation:RevokePermissions", "lakeformation:ListPermissions", "ram:GetResourceShares", "ram:DeleteResourceShare", "events:DeleteApiDestination", "events:DeleteConnection", "events:DeleteRule", "events:ListApiDestinations", "events:ListTargetsByRule", "events:DescribeRule", "events:RemoveTargets", "sqs:DeleteQueue", "sqs:GetQueueUrl" ]
+ },
+ "list" : {
+ "permissions" : [ "securitylake:ListSubscribers" ]
+ }
+ }
+}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-signer-profilepermission.json b/aws-cloudformation-schema/aws-signer-profilepermission.json
index 95b29197b5..995443ba46 100644
--- a/aws-cloudformation-schema/aws-signer-profilepermission.json
+++ b/aws-cloudformation-schema/aws-signer-profilepermission.json
@@ -35,6 +35,16 @@
"permissions" : [ "signer:RemoveProfilePermission", "signer:ListProfilePermissions" ]
},
"list" : {
+ "handlerSchema" : {
+ "properties" : {
+ "ProfileName" : {
+ "$ref" : "resource-schema.json#/properties/ProfileName"
+ },
+ "StatementId" : {
+ "$ref" : "resource-schema.json#/properties/StatementId"
+ }
+ }
+ },
"permissions" : [ "signer:ListProfilePermissions", "signer:GetSigningProfile" ]
}
}
diff --git a/aws-cloudformation-schema/aws-wafv2-webacl.json b/aws-cloudformation-schema/aws-wafv2-webacl.json
index e8b16440ea..a234642d83 100644
--- a/aws-cloudformation-schema/aws-wafv2-webacl.json
+++ b/aws-cloudformation-schema/aws-wafv2-webacl.json
@@ -1454,7 +1454,7 @@
"type" : "object",
"description" : "Map of AssociatedResourceType and RequestBodyAssociatedResourceTypeConfig",
"patternProperties" : {
- "^(CLOUDFRONT)$" : {
+ "^(CLOUDFRONT|API_GATEWAY|COGNITO_USER_POOL|APP_RUNNER_SERVICE|VERIFIED_ACCESS_INSTANCE)$" : {
"$ref" : "#/definitions/RequestBodyAssociatedResourceTypeConfig"
}
},
diff --git a/aws-cloudformation-schema/aws-workspacesthinclient-environment.json b/aws-cloudformation-schema/aws-workspacesthinclient-environment.json
index bc10b31b77..21dc7b3566 100644
--- a/aws-cloudformation-schema/aws-workspacesthinclient-environment.json
+++ b/aws-cloudformation-schema/aws-workspacesthinclient-environment.json
@@ -204,19 +204,19 @@
"primaryIdentifier" : [ "/properties/Id" ],
"handlers" : {
"create" : {
- "permissions" : [ "thinclient:CreateEnvironment", "thinclient:TagResource", "thinclient:ListTagsForResource", "appstream:DescribeStacks", "workspaces:DescribeWorkspaceDirectories", "workspaces-web:GetPortal", "workspaces-web:GetUserSettings", "kms:DescribeKey", "kms:Encrypt", "kms:Decrypt", "kms:CreateGrant" ]
+ "permissions" : [ "thinclient:CreateEnvironment", "thinclient:TagResource", "thinclient:ListTagsForResource", "appstream:DescribeStacks", "workspaces:DescribeWorkspaceDirectories", "workspaces-web:GetPortal", "workspaces-web:GetUserSettings", "kms:DescribeKey", "kms:Encrypt", "kms:Decrypt", "kms:CreateGrant", "kms:GenerateDataKey" ]
},
"read" : {
- "permissions" : [ "thinclient:GetEnvironment", "thinclient:ListTagsForResource", "kms:DescribeKey", "kms:Encrypt", "kms:Decrypt" ]
+ "permissions" : [ "thinclient:GetEnvironment", "thinclient:ListTagsForResource", "kms:DescribeKey", "kms:Encrypt", "kms:Decrypt", "kms:GenerateDataKey" ]
},
"update" : {
- "permissions" : [ "appstream:DescribeStacks", "workspaces:DescribeWorkspaceDirectories", "workspaces-web:GetPortal", "workspaces-web:GetUserSettings", "thinclient:UpdateEnvironment", "thinclient:GetEnvironment", "thinclient:TagResource", "thinclient:UntagResource", "thinclient:ListTagsForResource", "kms:DescribeKey", "kms:Encrypt", "kms:Decrypt", "kms:CreateGrant", "kms:RetireGrant" ]
+ "permissions" : [ "appstream:DescribeStacks", "workspaces:DescribeWorkspaceDirectories", "workspaces-web:GetPortal", "workspaces-web:GetUserSettings", "thinclient:UpdateEnvironment", "thinclient:GetEnvironment", "thinclient:TagResource", "thinclient:UntagResource", "thinclient:ListTagsForResource", "kms:DescribeKey", "kms:Encrypt", "kms:Decrypt", "kms:CreateGrant", "kms:RetireGrant", "kms:GenerateDataKey" ]
},
"delete" : {
"permissions" : [ "thinclient:DeleteEnvironment", "thinclient:UntagResource", "kms:DescribeKey", "kms:RetireGrant" ]
},
"list" : {
- "permissions" : [ "thinclient:ListEnvironment", "thinclient:ListTagsForResource", "kms:DescribeKey", "kms:Encrypt", "kms:Decrypt" ]
+ "permissions" : [ "thinclient:ListEnvironment", "thinclient:ListTagsForResource", "kms:DescribeKey", "kms:Encrypt", "kms:Decrypt", "kms:GenerateDataKey" ]
}
}
}
\ No newline at end of file
diff --git a/provider/cmd/pulumi-gen-aws-native/deprecated-types.txt b/provider/cmd/pulumi-gen-aws-native/deprecated-types.txt
index 25340906bf..cc72d58327 100644
--- a/provider/cmd/pulumi-gen-aws-native/deprecated-types.txt
+++ b/provider/cmd/pulumi-gen-aws-native/deprecated-types.txt
@@ -3,7 +3,6 @@ AWS::Cognito::UserPoolDomain
AWS::Cognito::UserPoolIdentityProvider
AWS::Cognito::UserPoolResourceServer
AWS::Cognito::UserPoolUICustomizationAttachment
-AWS::EC2::TransitGatewayRouteTableAssociation
AWS::GameCast::Application
AWS::GameCast::StreamGroup
AWS::SNS::TopicPolicy
diff --git a/provider/cmd/pulumi-gen-aws-native/supported-types.txt b/provider/cmd/pulumi-gen-aws-native/supported-types.txt
index b6bf26cea7..457890613b 100644
--- a/provider/cmd/pulumi-gen-aws-native/supported-types.txt
+++ b/provider/cmd/pulumi-gen-aws-native/supported-types.txt
@@ -3,6 +3,7 @@ AWS::ACMPCA::CertificateAuthority
AWS::ACMPCA::CertificateAuthorityActivation
AWS::ACMPCA::Permission
AWS::APS::RuleGroupsNamespace
+AWS::APS::Scraper
AWS::APS::Workspace
AWS::ARCZonalShift::ZonalAutoshiftConfiguration
AWS::AccessAnalyzer::Analyzer
@@ -49,6 +50,7 @@ AWS::AppConfig::HostedConfigurationVersion
AWS::AppFlow::Connector
AWS::AppFlow::ConnectorProfile
AWS::AppFlow::Flow
+AWS::AppIntegrations::Application
AWS::AppIntegrations::DataIntegration
AWS::AppIntegrations::EventIntegration
AWS::AppRunner::AutoScalingConfiguration
@@ -100,6 +102,8 @@ AWS::Batch::ComputeEnvironment
AWS::Batch::JobDefinition
AWS::Batch::JobQueue
AWS::Batch::SchedulingPolicy
+AWS::Bedrock::Agent
+AWS::Bedrock::AgentAlias
AWS::Budgets::BudgetsAction
AWS::CE::AnomalyMonitor
AWS::CE::AnomalySubscription
@@ -147,8 +151,10 @@ AWS::CloudWatch::Alarm
AWS::CloudWatch::CompositeAlarm
AWS::CloudWatch::MetricStream
AWS::CodeArtifact::Domain
+AWS::CodeArtifact::PackageGroup
AWS::CodeArtifact::Repository
AWS::CodeBuild::Fleet
+AWS::CodeConnections::Connection
AWS::CodeDeploy::Application
AWS::CodeDeploy::DeploymentConfig
AWS::CodeGuruProfiler::ProfilingGroup
@@ -545,6 +551,8 @@ AWS::KMS::Alias
AWS::KMS::Key
AWS::KMS::ReplicaKey
AWS::KafkaConnect::Connector
+AWS::KafkaConnect::CustomPlugin
+AWS::KafkaConnect::WorkerConfiguration
AWS::Kendra::DataSource
AWS::Kendra::Faq
AWS::Kendra::Index
@@ -869,6 +877,9 @@ AWS::SecretsManager::Secret
AWS::SecurityHub::AutomationRule
AWS::SecurityHub::Hub
AWS::SecurityHub::Standard
+AWS::SecurityLake::AwsLogSource
+AWS::SecurityLake::DataLake
+AWS::SecurityLake::Subscriber
AWS::ServiceCatalog::CloudFormationProvisionedProduct
AWS::ServiceCatalog::ServiceAction
AWS::ServiceCatalog::ServiceActionAssociation
diff --git a/provider/cmd/pulumi-resource-aws-native/metadata.json b/provider/cmd/pulumi-resource-aws-native/metadata.json
index 84cfe31ece..4d308e9edd 100644
--- a/provider/cmd/pulumi-resource-aws-native/metadata.json
+++ b/provider/cmd/pulumi-resource-aws-native/metadata.json
@@ -4230,6 +4230,81 @@
"tagsProperty": "tags",
"tagsStyle": "keyValueArray"
},
+ "aws-native:appintegrations:Application": {
+ "cf": "AWS::AppIntegrations::Application",
+ "inputs": {
+ "applicationSourceConfig": {
+ "$ref": "#/types/aws-native:appintegrations:ApplicationSourceConfigProperties",
+ "description": "Application source config"
+ },
+ "description": {
+ "type": "string",
+ "description": "The application description."
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the application."
+ },
+ "namespace": {
+ "type": "string",
+ "description": "The namespace of the application."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "The tags (keys and values) associated with the application."
+ }
+ },
+ "outputs": {
+ "applicationArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) of the application."
+ },
+ "applicationSourceConfig": {
+ "$ref": "#/types/aws-native:appintegrations:ApplicationSourceConfigProperties",
+ "description": "Application source config"
+ },
+ "awsId": {
+ "type": "string",
+ "description": "The id of the application."
+ },
+ "description": {
+ "type": "string",
+ "description": "The application description."
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the application."
+ },
+ "namespace": {
+ "type": "string",
+ "description": "The namespace of the application."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "The tags (keys and values) associated with the application."
+ }
+ },
+ "autoNamingSpec": {
+ "sdkName": "name",
+ "minLength": 1,
+ "maxLength": 255
+ },
+ "required": [
+ "applicationSourceConfig",
+ "description"
+ ],
+ "irreversibleNames": {
+ "awsId": "Id"
+ },
+ "tagsProperty": "tags",
+ "tagsStyle": "keyValueArray"
+ },
"aws-native:appintegrations:DataIntegration": {
"cf": "AWS::AppIntegrations::DataIntegration",
"inputs": {
@@ -6121,7 +6196,8 @@
"description": "The maximum number of resolver request inputs that will be sent to a single LAMlong function in a ``BatchInvoke`` operation."
},
"metricsConfig": {
- "$ref": "#/types/aws-native:appsync:ResolverMetricsConfig"
+ "$ref": "#/types/aws-native:appsync:ResolverMetricsConfig",
+ "description": "Enables or disables enhanced resolver metrics for specified resolvers. Note that ``MetricsConfig`` won't be used unless the ``resolverLevelMetricsBehavior`` value is set to ``PER_RESOLVER_METRICS``. If the ``resolverLevelMetricsBehavior`` is set to ``FULL_REQUEST_RESOLVER_METRICS`` instead, ``MetricsConfig`` will be ignored. However, you can still set its value."
},
"pipelineConfig": {
"$ref": "#/types/aws-native:appsync:ResolverPipelineConfig",
@@ -6192,7 +6268,8 @@
"description": "The maximum number of resolver request inputs that will be sent to a single LAMlong function in a ``BatchInvoke`` operation."
},
"metricsConfig": {
- "$ref": "#/types/aws-native:appsync:ResolverMetricsConfig"
+ "$ref": "#/types/aws-native:appsync:ResolverMetricsConfig",
+ "description": "Enables or disables enhanced resolver metrics for specified resolvers. Note that ``MetricsConfig`` won't be used unless the ``resolverLevelMetricsBehavior`` value is set to ``PER_RESOLVER_METRICS``. If the ``resolverLevelMetricsBehavior`` is set to ``FULL_REQUEST_RESOLVER_METRICS`` instead, ``MetricsConfig`` will be ignored. However, you can still set its value."
},
"pipelineConfig": {
"$ref": "#/types/aws-native:appsync:ResolverPipelineConfig",
@@ -6403,6 +6480,82 @@
"tagsProperty": "tags",
"tagsStyle": "keyValueArray"
},
+ "aws-native:aps:Scraper": {
+ "cf": "AWS::APS::Scraper",
+ "inputs": {
+ "alias": {
+ "type": "string",
+ "description": "Scraper alias."
+ },
+ "destination": {
+ "$ref": "#/types/aws-native:aps:ScraperDestination"
+ },
+ "scrapeConfiguration": {
+ "$ref": "#/types/aws-native:aps:ScraperScrapeConfiguration"
+ },
+ "source": {
+ "$ref": "#/types/aws-native:aps:ScraperSource"
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "An array of key-value pairs to apply to this resource."
+ }
+ },
+ "outputs": {
+ "alias": {
+ "type": "string",
+ "description": "Scraper alias.",
+ "replaceOnChanges": true
+ },
+ "arn": {
+ "type": "string",
+ "description": "Scraper ARN."
+ },
+ "destination": {
+ "$ref": "#/types/aws-native:aps:ScraperDestination",
+ "replaceOnChanges": true
+ },
+ "roleArn": {
+ "type": "string",
+ "description": "IAM role ARN for the scraper."
+ },
+ "scrapeConfiguration": {
+ "$ref": "#/types/aws-native:aps:ScraperScrapeConfiguration",
+ "replaceOnChanges": true
+ },
+ "scraperId": {
+ "type": "string",
+ "description": "Required to identify a specific scraper."
+ },
+ "source": {
+ "$ref": "#/types/aws-native:aps:ScraperSource",
+ "replaceOnChanges": true
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "An array of key-value pairs to apply to this resource."
+ }
+ },
+ "required": [
+ "destination",
+ "scrapeConfiguration",
+ "source"
+ ],
+ "createOnly": [
+ "alias",
+ "destination",
+ "scrapeConfiguration",
+ "source"
+ ],
+ "tagsProperty": "tags",
+ "tagsStyle": "keyValueArray"
+ },
"aws-native:aps:Workspace": {
"cf": "AWS::APS::Workspace",
"inputs": {
@@ -9087,6 +9240,280 @@
"tagsProperty": "tags",
"tagsStyle": "stringMap"
},
+ "aws-native:bedrock:Agent": {
+ "cf": "AWS::Bedrock::Agent",
+ "inputs": {
+ "actionGroups": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:bedrock:AgentActionGroup"
+ },
+ "description": "List of ActionGroups"
+ },
+ "agentName": {
+ "type": "string",
+ "description": "Name for a resource."
+ },
+ "agentResourceRoleArn": {
+ "type": "string",
+ "description": "ARN of a IAM role."
+ },
+ "autoPrepare": {
+ "type": "boolean",
+ "description": "Specifies whether to automatically prepare after creating or updating the agent."
+ },
+ "customerEncryptionKeyArn": {
+ "type": "string",
+ "description": "A KMS key ARN"
+ },
+ "description": {
+ "type": "string",
+ "description": "Description of the Resource."
+ },
+ "foundationModel": {
+ "type": "string",
+ "description": "ARN or name of a Bedrock model."
+ },
+ "idleSessionTtlInSeconds": {
+ "type": "number",
+ "description": "Max Session Time."
+ },
+ "instruction": {
+ "type": "string",
+ "description": "Instruction for the agent."
+ },
+ "knowledgeBases": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:bedrock:AgentKnowledgeBase"
+ },
+ "description": "List of Agent Knowledge Bases"
+ },
+ "promptOverrideConfiguration": {
+ "$ref": "#/types/aws-native:bedrock:AgentPromptOverrideConfiguration"
+ },
+ "skipResourceInUseCheckOnDelete": {
+ "type": "boolean",
+ "description": "Specifies whether to allow deleting agent while it is in use."
+ },
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ },
+ "outputs": {
+ "actionGroups": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:bedrock:AgentActionGroup"
+ },
+ "description": "List of ActionGroups"
+ },
+ "agentArn": {
+ "type": "string",
+ "description": "Arn representation of the Agent."
+ },
+ "agentId": {
+ "type": "string",
+ "description": "Identifier for a resource."
+ },
+ "agentName": {
+ "type": "string",
+ "description": "Name for a resource."
+ },
+ "agentResourceRoleArn": {
+ "type": "string",
+ "description": "ARN of a IAM role."
+ },
+ "agentStatus": {
+ "$ref": "#/types/aws-native:bedrock:AgentStatus"
+ },
+ "agentVersion": {
+ "type": "string",
+ "description": "Draft Agent Version."
+ },
+ "autoPrepare": {
+ "type": "boolean",
+ "description": "Specifies whether to automatically prepare after creating or updating the agent."
+ },
+ "createdAt": {
+ "type": "string",
+ "description": "Time Stamp."
+ },
+ "customerEncryptionKeyArn": {
+ "type": "string",
+ "description": "A KMS key ARN"
+ },
+ "description": {
+ "type": "string",
+ "description": "Description of the Resource."
+ },
+ "failureReasons": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Failure Reasons for Error."
+ },
+ "foundationModel": {
+ "type": "string",
+ "description": "ARN or name of a Bedrock model."
+ },
+ "idleSessionTtlInSeconds": {
+ "type": "number",
+ "description": "Max Session Time."
+ },
+ "instruction": {
+ "type": "string",
+ "description": "Instruction for the agent."
+ },
+ "knowledgeBases": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:bedrock:AgentKnowledgeBase"
+ },
+ "description": "List of Agent Knowledge Bases"
+ },
+ "preparedAt": {
+ "type": "string",
+ "description": "Time Stamp."
+ },
+ "promptOverrideConfiguration": {
+ "$ref": "#/types/aws-native:bedrock:AgentPromptOverrideConfiguration"
+ },
+ "recommendedActions": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The recommended actions users can take to resolve an error in failureReasons."
+ },
+ "skipResourceInUseCheckOnDelete": {
+ "type": "boolean",
+ "description": "Specifies whether to allow deleting agent while it is in use."
+ },
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "updatedAt": {
+ "type": "string",
+ "description": "Time Stamp."
+ }
+ },
+ "autoNamingSpec": {
+ "sdkName": "agentName"
+ },
+ "writeOnly": [
+ "actionGroups/*/SkipResourceInUseCheckOnDelete",
+ "autoPrepare",
+ "skipResourceInUseCheckOnDelete"
+ ],
+ "irreversibleNames": {
+ "idleSessionTtlInSeconds": "IdleSessionTTLInSeconds"
+ },
+ "tagsProperty": "tags",
+ "tagsStyle": "stringMap"
+ },
+ "aws-native:bedrock:AgentAlias": {
+ "cf": "AWS::Bedrock::AgentAlias",
+ "inputs": {
+ "agentAliasName": {
+ "type": "string",
+ "description": "Name for a resource."
+ },
+ "agentId": {
+ "type": "string",
+ "description": "Identifier for a resource."
+ },
+ "description": {
+ "type": "string",
+ "description": "Description of the Resource."
+ },
+ "routingConfiguration": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:bedrock:AgentAliasRoutingConfigurationListItem"
+ },
+ "description": "Routing configuration for an Agent alias."
+ },
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ },
+ "outputs": {
+ "agentAliasArn": {
+ "type": "string",
+ "description": "Arn representation of the Agent Alias."
+ },
+ "agentAliasHistoryEvents": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:bedrock:AgentAliasHistoryEvent"
+ },
+ "description": "The list of history events for an alias for an Agent."
+ },
+ "agentAliasId": {
+ "type": "string",
+ "description": "Id for an Agent Alias generated at the server side."
+ },
+ "agentAliasName": {
+ "type": "string",
+ "description": "Name for a resource."
+ },
+ "agentAliasStatus": {
+ "$ref": "#/types/aws-native:bedrock:AgentAliasStatus"
+ },
+ "agentId": {
+ "type": "string",
+ "description": "Identifier for a resource.",
+ "replaceOnChanges": true
+ },
+ "createdAt": {
+ "type": "string",
+ "description": "Time Stamp."
+ },
+ "description": {
+ "type": "string",
+ "description": "Description of the Resource."
+ },
+ "routingConfiguration": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:bedrock:AgentAliasRoutingConfigurationListItem"
+ },
+ "description": "Routing configuration for an Agent alias."
+ },
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "updatedAt": {
+ "type": "string",
+ "description": "Time Stamp."
+ }
+ },
+ "autoNamingSpec": {
+ "sdkName": "agentAliasName"
+ },
+ "required": [
+ "agentId"
+ ],
+ "createOnly": [
+ "agentId"
+ ],
+ "tagsProperty": "tags",
+ "tagsStyle": "stringMap"
+ },
"aws-native:budgets:BudgetsAction": {
"cf": "AWS::Budgets::BudgetsAction",
"inputs": {
@@ -12719,6 +13146,91 @@
"tagsProperty": "tags",
"tagsStyle": "keyValueArray"
},
+ "aws-native:codeartifact:PackageGroup": {
+ "cf": "AWS::CodeArtifact::PackageGroup",
+ "inputs": {
+ "contactInfo": {
+ "type": "string",
+ "description": "The contact info of the package group."
+ },
+ "description": {
+ "type": "string",
+ "description": "The text description of the package group."
+ },
+ "domainName": {
+ "type": "string",
+ "description": "The name of the domain that contains the package group."
+ },
+ "domainOwner": {
+ "type": "string",
+ "description": "The 12-digit account ID of the AWS account that owns the domain."
+ },
+ "originConfiguration": {
+ "$ref": "#/types/aws-native:codeartifact:PackageGroupOriginConfiguration",
+ "description": "The package origin configuration of the package group."
+ },
+ "pattern": {
+ "type": "string",
+ "description": "The package group pattern that is used to gather packages."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "An array of key-value pairs to apply to the package group."
+ }
+ },
+ "outputs": {
+ "arn": {
+ "type": "string",
+ "description": "The ARN of the package group."
+ },
+ "contactInfo": {
+ "type": "string",
+ "description": "The contact info of the package group."
+ },
+ "description": {
+ "type": "string",
+ "description": "The text description of the package group."
+ },
+ "domainName": {
+ "type": "string",
+ "description": "The name of the domain that contains the package group.",
+ "replaceOnChanges": true
+ },
+ "domainOwner": {
+ "type": "string",
+ "description": "The 12-digit account ID of the AWS account that owns the domain."
+ },
+ "originConfiguration": {
+ "$ref": "#/types/aws-native:codeartifact:PackageGroupOriginConfiguration",
+ "description": "The package origin configuration of the package group."
+ },
+ "pattern": {
+ "type": "string",
+ "description": "The package group pattern that is used to gather packages.",
+ "replaceOnChanges": true
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "An array of key-value pairs to apply to the package group."
+ }
+ },
+ "required": [
+ "domainName",
+ "pattern"
+ ],
+ "createOnly": [
+ "domainName",
+ "pattern"
+ ],
+ "tagsProperty": "tags",
+ "tagsStyle": "keyValueArray"
+ },
"aws-native:codeartifact:Repository": {
"cf": "AWS::CodeArtifact::Repository",
"inputs": {
@@ -12887,6 +13399,78 @@
"tagsProperty": "tags",
"tagsStyle": "keyValueArray"
},
+ "aws-native:codeconnections:Connection": {
+ "cf": "AWS::CodeConnections::Connection",
+ "inputs": {
+ "connectionName": {
+ "type": "string",
+ "description": "The name of the connection. Connection names must be unique in an AWS user account."
+ },
+ "hostArn": {
+ "type": "string",
+ "description": "The host arn configured to represent the infrastructure where your third-party provider is installed. You must specify either a ProviderType or a HostArn."
+ },
+ "providerType": {
+ "type": "string",
+ "description": "The name of the external provider where your third-party code repository is configured. You must specify either a ProviderType or a HostArn."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "Specifies the tags applied to a connection."
+ }
+ },
+ "outputs": {
+ "connectionArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) of the connection. The ARN is used as the connection reference when the connection is shared between AWS services."
+ },
+ "connectionName": {
+ "type": "string",
+ "description": "The name of the connection. Connection names must be unique in an AWS user account.",
+ "replaceOnChanges": true
+ },
+ "connectionStatus": {
+ "type": "string",
+ "description": "The current status of the connection."
+ },
+ "hostArn": {
+ "type": "string",
+ "description": "The host arn configured to represent the infrastructure where your third-party provider is installed. You must specify either a ProviderType or a HostArn.",
+ "replaceOnChanges": true
+ },
+ "ownerAccountId": {
+ "type": "string",
+ "description": "The name of the external provider where your third-party code repository is configured. For Bitbucket, this is the account ID of the owner of the Bitbucket repository."
+ },
+ "providerType": {
+ "type": "string",
+ "description": "The name of the external provider where your third-party code repository is configured. You must specify either a ProviderType or a HostArn.",
+ "replaceOnChanges": true
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "Specifies the tags applied to a connection."
+ }
+ },
+ "autoNamingSpec": {
+ "sdkName": "connectionName",
+ "minLength": 1,
+ "maxLength": 32
+ },
+ "createOnly": [
+ "connectionName",
+ "hostArn",
+ "providerType"
+ ],
+ "tagsProperty": "tags",
+ "tagsStyle": "keyValueArray"
+ },
"aws-native:codedeploy:Application": {
"cf": "AWS::CodeDeploy::Application",
"inputs": {
@@ -13393,7 +13977,7 @@
"replaceOnChanges": true
},
"providerType": {
- "type": "string",
+ "$ref": "#/types/aws-native:codestarconnections:RepositoryLinkProviderType",
"description": "The name of the external provider where your third-party code repository is configured."
},
"repositoryLinkArn": {
@@ -13440,6 +14024,10 @@
"type": "string",
"description": "The source provider repository path of the sync configuration file of the respective SyncType."
},
+ "publishDeploymentStatus": {
+ "$ref": "#/types/aws-native:codestarconnections:SyncConfigurationPublishDeploymentStatus",
+ "description": "Whether to enable or disable publishing of deployment status to source providers."
+ },
"repositoryLinkId": {
"type": "string",
"description": "A UUID that uniquely identifies the RepositoryLink that the SyncConfig is associated with."
@@ -13455,6 +14043,10 @@
"syncType": {
"type": "string",
"description": "The type of resource synchronization service that is to be configured, for example, CFN_STACK_SYNC."
+ },
+ "triggerResourceUpdateOn": {
+ "$ref": "#/types/aws-native:codestarconnections:SyncConfigurationTriggerResourceUpdateOn",
+ "description": "When to trigger Git sync to begin the stack update."
}
},
"outputs": {
@@ -13471,9 +14063,13 @@
"description": "the ID of the entity that owns the repository."
},
"providerType": {
- "type": "string",
+ "$ref": "#/types/aws-native:codestarconnections:SyncConfigurationProviderType",
"description": "The name of the external provider where your third-party code repository is configured."
},
+ "publishDeploymentStatus": {
+ "$ref": "#/types/aws-native:codestarconnections:SyncConfigurationPublishDeploymentStatus",
+ "description": "Whether to enable or disable publishing of deployment status to source providers."
+ },
"repositoryLinkId": {
"type": "string",
"description": "A UUID that uniquely identifies the RepositoryLink that the SyncConfig is associated with."
@@ -13495,6 +14091,10 @@
"type": "string",
"description": "The type of resource synchronization service that is to be configured, for example, CFN_STACK_SYNC.",
"replaceOnChanges": true
+ },
+ "triggerResourceUpdateOn": {
+ "$ref": "#/types/aws-native:codestarconnections:SyncConfigurationTriggerResourceUpdateOn",
+ "description": "When to trigger Git sync to begin the stack update."
}
},
"required": [
@@ -15262,7 +15862,8 @@
"deliveryS3KeyPrefix": "DeliveryS3KeyPrefix",
"templateS3Uri": "TemplateS3Uri",
"templateSsmDocumentDetails": "TemplateSSMDocumentDetails"
- }
+ },
+ "tagsProperty": "tags"
},
"aws-native:configuration:OrganizationConformancePack": {
"cf": "AWS::Config::OrganizationConformancePack",
@@ -15355,7 +15956,8 @@
"deliveryS3Bucket": "DeliveryS3Bucket",
"deliveryS3KeyPrefix": "DeliveryS3KeyPrefix",
"templateS3Uri": "TemplateS3Uri"
- }
+ },
+ "tagsProperty": "tags"
},
"aws-native:configuration:StoredQuery": {
"cf": "AWS::Config::StoredQuery",
@@ -16103,6 +16705,14 @@
"description": "The identifier of the Amazon Connect instance.",
"replaceOnChanges": true
},
+ "lastModifiedRegion": {
+ "type": "string",
+ "description": "Last modified region."
+ },
+ "lastModifiedTime": {
+ "type": "number",
+ "description": "Last modified time."
+ },
"name": {
"type": "string",
"description": "The name of the predefined attribute.",
@@ -16614,6 +17224,10 @@
"aws-native:connect:SecurityProfile": {
"cf": "AWS::Connect::SecurityProfile",
"inputs": {
+ "allowedAccessControlHierarchyGroupId": {
+ "type": "string",
+ "description": "The identifier of the hierarchy group that a security profile uses to restrict access to resources in Amazon Connect."
+ },
"allowedAccessControlTags": {
"type": "array",
"items": {
@@ -16621,10 +17235,24 @@
},
"description": "The list of tags that a security profile uses to restrict access to resources in Amazon Connect."
},
+ "applications": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:connect:SecurityProfileApplication"
+ },
+ "description": "A list of third-party applications that the security profile will give access to."
+ },
"description": {
"type": "string",
"description": "The description of the security profile."
},
+ "hierarchyRestrictedResources": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The list of resources that a security profile applies hierarchy restrictions to in Amazon Connect."
+ },
"instanceArn": {
"type": "string",
"description": "The identifier of the Amazon Connect instance."
@@ -16656,6 +17284,10 @@
}
},
"outputs": {
+ "allowedAccessControlHierarchyGroupId": {
+ "type": "string",
+ "description": "The identifier of the hierarchy group that a security profile uses to restrict access to resources in Amazon Connect."
+ },
"allowedAccessControlTags": {
"type": "array",
"items": {
@@ -16663,15 +17295,37 @@
},
"description": "The list of tags that a security profile uses to restrict access to resources in Amazon Connect."
},
+ "applications": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:connect:SecurityProfileApplication"
+ },
+ "description": "A list of third-party applications that the security profile will give access to."
+ },
"description": {
"type": "string",
"description": "The description of the security profile."
},
+ "hierarchyRestrictedResources": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The list of resources that a security profile applies hierarchy restrictions to in Amazon Connect."
+ },
"instanceArn": {
"type": "string",
"description": "The identifier of the Amazon Connect instance.",
"replaceOnChanges": true
},
+ "lastModifiedRegion": {
+ "type": "string",
+ "description": "The AWS Region where this resource was last modified."
+ },
+ "lastModifiedTime": {
+ "type": "number",
+ "description": "The timestamp when this resource was last modified."
+ },
"permissions": {
"type": "array",
"items": {
@@ -22135,12 +22789,18 @@
"authType": {
"type": "string"
},
+ "backupRetentionPeriod": {
+ "type": "integer"
+ },
"clusterName": {
"type": "string"
},
"kmsKeyId": {
"type": "string"
},
+ "preferredBackupWindow": {
+ "type": "string"
+ },
"preferredMaintenanceWindow": {
"type": "string"
},
@@ -22150,6 +22810,9 @@
"shardCount": {
"type": "integer"
},
+ "shardInstanceCount": {
+ "type": "integer"
+ },
"subnetIds": {
"type": "array",
"items": {
@@ -22181,6 +22844,9 @@
"type": "string",
"replaceOnChanges": true
},
+ "backupRetentionPeriod": {
+ "type": "integer"
+ },
"clusterArn": {
"type": "string"
},
@@ -22195,6 +22861,9 @@
"type": "string",
"replaceOnChanges": true
},
+ "preferredBackupWindow": {
+ "type": "string"
+ },
"preferredMaintenanceWindow": {
"type": "string"
},
@@ -22204,6 +22873,9 @@
"shardCount": {
"type": "integer"
},
+ "shardInstanceCount": {
+ "type": "integer"
+ },
"subnetIds": {
"type": "array",
"items": {
@@ -22449,6 +23121,9 @@
"$ref": "#/types/aws-native:dynamodb:TableProvisionedThroughput",
"description": "Throughput for the specified table, which consists of values for ``ReadCapacityUnits`` and ``WriteCapacityUnits``. For more information about the contents of a provisioned throughput structure, see [Amazon DynamoDB Table ProvisionedThroughput](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ProvisionedThroughput.html). \n If you set ``BillingMode`` as ``PROVISIONED``, you must specify this property. If you set ``BillingMode`` as ``PAY_PER_REQUEST``, you cannot specify this property."
},
+ "resourcePolicy": {
+ "$ref": "#/types/aws-native:dynamodb:TableResourcePolicy"
+ },
"sseSpecification": {
"$ref": "#/types/aws-native:dynamodb:TableSseSpecification",
"description": "Specifies the settings to enable server-side encryption."
@@ -22545,6 +23220,9 @@
"$ref": "#/types/aws-native:dynamodb:TableProvisionedThroughput",
"description": "Throughput for the specified table, which consists of values for ``ReadCapacityUnits`` and ``WriteCapacityUnits``. For more information about the contents of a provisioned throughput structure, see [Amazon DynamoDB Table ProvisionedThroughput](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ProvisionedThroughput.html). \n If you set ``BillingMode`` as ``PROVISIONED``, you must specify this property. If you set ``BillingMode`` as ``PAY_PER_REQUEST``, you cannot specify this property."
},
+ "resourcePolicy": {
+ "$ref": "#/types/aws-native:dynamodb:TableResourcePolicy"
+ },
"sseSpecification": {
"$ref": "#/types/aws-native:dynamodb:TableSseSpecification",
"description": "Specifies the settings to enable server-side encryption."
@@ -24222,8 +24900,7 @@
},
"outputs": {
"internetGatewayId": {
- "type": "string",
- "description": "ID of internet gateway."
+ "type": "string"
},
"tags": {
"type": "array",
@@ -26849,6 +27526,10 @@
"type": "boolean",
"description": "Indicates whether DNS queries made to the Amazon-provided DNS Resolver in this subnet should return synthetic IPv6 addresses for IPv4-only destinations. For more information, see [DNS64 and NAT64](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-nat64-dns64) in the *User Guide*."
},
+ "enableLniAtDeviceIndex": {
+ "type": "integer",
+ "description": "Indicates the device position for local network interfaces in this subnet. For example, ``1`` indicates local network interfaces in this subnet are the secondary network interface (eth1)."
+ },
"ipv4IpamPoolId": {
"type": "string",
"description": "An IPv4 IPAM pool ID for the subnet."
@@ -26882,7 +27563,7 @@
},
"mapPublicIpOnLaunch": {
"type": "boolean",
- "description": "Indicates whether instances launched in this subnet receive a public IPv4 address. The default value is ``false``.\n AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the [VPC pricing page](https://docs.aws.amazon.com/vpc/pricing/)."
+ "description": "Indicates whether instances launched in this subnet receive a public IPv4 address. The default value is ``false``.\n AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the [VPC pricing page](https://docs.aws.amazon.com/vpc/pricing/)."
},
"outpostArn": {
"type": "string",
@@ -26890,7 +27571,7 @@
},
"privateDnsNameOptionsOnLaunch": {
"$ref": "#/types/aws-native:ec2:PrivateDnsNameOptionsOnLaunchProperties",
- "description": "The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries to the instances should be handled. For more information, see [Amazon EC2 instance hostname types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-naming.html) in the *User Guide*.\n Available options:\n + EnableResourceNameDnsAAAARecord (true | false)\n + EnableResourceNameDnsARecord (true | false)\n + HostnameType (ip-name | resource-name)"
+ "description": "The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries to the instances should be handled. For more information, see [Amazon EC2 instance hostname types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-naming.html) in the *User Guide*.\n Available options:\n + EnableResourceNameDnsAAAARecord (true | false)\n + EnableResourceNameDnsARecord (true | false)\n + HostnameType (ip-name | resource-name)"
},
"tags": {
"type": "array",
@@ -26928,6 +27609,10 @@
"type": "boolean",
"description": "Indicates whether DNS queries made to the Amazon-provided DNS Resolver in this subnet should return synthetic IPv6 addresses for IPv4-only destinations. For more information, see [DNS64 and NAT64](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-nat64-dns64) in the *User Guide*."
},
+ "enableLniAtDeviceIndex": {
+ "type": "integer",
+ "description": "Indicates the device position for local network interfaces in this subnet. For example, ``1`` indicates local network interfaces in this subnet are the secondary network interface (eth1)."
+ },
"ipv4IpamPoolId": {
"type": "string",
"description": "An IPv4 IPAM pool ID for the subnet.",
@@ -26966,7 +27651,7 @@
},
"mapPublicIpOnLaunch": {
"type": "boolean",
- "description": "Indicates whether instances launched in this subnet receive a public IPv4 address. The default value is ``false``.\n AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the [VPC pricing page](https://docs.aws.amazon.com/vpc/pricing/)."
+ "description": "Indicates whether instances launched in this subnet receive a public IPv4 address. The default value is ``false``.\n AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the [VPC pricing page](https://docs.aws.amazon.com/vpc/pricing/)."
},
"networkAclAssociationId": {
"type": "string"
@@ -26978,7 +27663,7 @@
},
"privateDnsNameOptionsOnLaunch": {
"$ref": "#/types/aws-native:ec2:PrivateDnsNameOptionsOnLaunchProperties",
- "description": "The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries to the instances should be handled. For more information, see [Amazon EC2 instance hostname types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-naming.html) in the *User Guide*.\n Available options:\n + EnableResourceNameDnsAAAARecord (true | false)\n + EnableResourceNameDnsARecord (true | false)\n + HostnameType (ip-name | resource-name)"
+ "description": "The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries to the instances should be handled. For more information, see [Amazon EC2 instance hostname types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-naming.html) in the *User Guide*.\n Available options:\n + EnableResourceNameDnsAAAARecord (true | false)\n + EnableResourceNameDnsARecord (true | false)\n + HostnameType (ip-name | resource-name)"
},
"subnetId": {
"type": "string"
@@ -27012,6 +27697,7 @@
"vpcId"
],
"writeOnly": [
+ "enableLniAtDeviceIndex",
"ipv4IpamPoolId",
"ipv4NetmaskLength",
"ipv6IpamPoolId",
@@ -27809,22 +28495,23 @@
"cf": "AWS::EC2::TransitGatewayRouteTableAssociation",
"inputs": {
"transitGatewayAttachmentId": {
- "type": "string"
+ "type": "string",
+ "description": "The ID of transit gateway attachment."
},
"transitGatewayRouteTableId": {
- "type": "string"
+ "type": "string",
+ "description": "The ID of transit gateway route table."
}
},
"outputs": {
- "awsId": {
- "type": "string"
- },
"transitGatewayAttachmentId": {
"type": "string",
+ "description": "The ID of transit gateway attachment.",
"replaceOnChanges": true
},
"transitGatewayRouteTableId": {
"type": "string",
+ "description": "The ID of transit gateway route table.",
"replaceOnChanges": true
}
},
@@ -27835,10 +28522,7 @@
"createOnly": [
"transitGatewayAttachmentId",
"transitGatewayRouteTableId"
- ],
- "irreversibleNames": {
- "awsId": "Id"
- }
+ ]
},
"aws-native:ec2:TransitGatewayVpcAttachment": {
"cf": "AWS::EC2::TransitGatewayVpcAttachment",
@@ -33805,7 +34489,6 @@
"required": [
"idMappingTechniques",
"inputSourceConfig",
- "outputSourceConfig",
"roleArn"
],
"createOnly": [
@@ -36804,7 +37487,7 @@
"inputs": {
"autoScalingPolicy": {
"$ref": "#/types/aws-native:gamelift:GameServerGroupAutoScalingPolicy",
- "description": "Configuration settings to define a scaling policy for the Auto Scaling group that is optimized for game hosting"
+ "description": "Configuration settings to define a scaling policy for the Auto Scaling group that is optimized for game hosting. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource."
},
"balancingStrategy": {
"$ref": "#/types/aws-native:gamelift:GameServerGroupBalancingStrategy",
@@ -36831,15 +37514,15 @@
},
"launchTemplate": {
"$ref": "#/types/aws-native:gamelift:GameServerGroupLaunchTemplate",
- "description": "The EC2 launch template that contains configuration settings and game server code to be deployed to all instances in the game server group."
+ "description": "The EC2 launch template that contains configuration settings and game server code to be deployed to all instances in the game server group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource."
},
"maxSize": {
"type": "number",
- "description": "The maximum number of instances allowed in the EC2 Auto Scaling group."
+ "description": "The maximum number of instances allowed in the EC2 Auto Scaling group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource."
},
"minSize": {
"type": "number",
- "description": "The minimum number of instances allowed in the EC2 Auto Scaling group."
+ "description": "The minimum number of instances allowed in the EC2 Auto Scaling group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource."
},
"roleArn": {
"type": "string",
@@ -36850,14 +37533,14 @@
"items": {
"$ref": "#/types/aws-native:index:Tag"
},
- "description": "A list of labels to assign to the new game server group resource."
+ "description": "A list of labels to assign to the new game server group resource. Updating game server group tags with CloudFormation will not take effect. Please update this property using AWS GameLift APIs instead."
},
"vpcSubnets": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of virtual private cloud (VPC) subnets to use with instances in the game server group."
+ "description": "A list of virtual private cloud (VPC) subnets to use with instances in the game server group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource."
}
},
"outputs": {
@@ -36867,7 +37550,7 @@
},
"autoScalingPolicy": {
"$ref": "#/types/aws-native:gamelift:GameServerGroupAutoScalingPolicy",
- "description": "Configuration settings to define a scaling policy for the Auto Scaling group that is optimized for game hosting"
+ "description": "Configuration settings to define a scaling policy for the Auto Scaling group that is optimized for game hosting. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource."
},
"balancingStrategy": {
"$ref": "#/types/aws-native:gamelift:GameServerGroupBalancingStrategy",
@@ -36898,15 +37581,15 @@
},
"launchTemplate": {
"$ref": "#/types/aws-native:gamelift:GameServerGroupLaunchTemplate",
- "description": "The EC2 launch template that contains configuration settings and game server code to be deployed to all instances in the game server group."
+ "description": "The EC2 launch template that contains configuration settings and game server code to be deployed to all instances in the game server group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource."
},
"maxSize": {
"type": "number",
- "description": "The maximum number of instances allowed in the EC2 Auto Scaling group."
+ "description": "The maximum number of instances allowed in the EC2 Auto Scaling group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource."
},
"minSize": {
"type": "number",
- "description": "The minimum number of instances allowed in the EC2 Auto Scaling group."
+ "description": "The minimum number of instances allowed in the EC2 Auto Scaling group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource."
},
"roleArn": {
"type": "string",
@@ -36917,14 +37600,14 @@
"items": {
"$ref": "#/types/aws-native:index:Tag"
},
- "description": "A list of labels to assign to the new game server group resource."
+ "description": "A list of labels to assign to the new game server group resource. Updating game server group tags with CloudFormation will not take effect. Please update this property using AWS GameLift APIs instead."
},
"vpcSubnets": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of virtual private cloud (VPC) subnets to use with instances in the game server group."
+ "description": "A list of virtual private cloud (VPC) subnets to use with instances in the game server group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource."
}
},
"autoNamingSpec": {
@@ -39156,58 +39839,55 @@
"inputs": {
"description": {
"type": "string",
- "description": "A friendly description of the policy."
+ "description": "A friendly description of the policy.\n Typically used to store information about the permissions defined in the policy. For example, \"Grants access to production DynamoDB tables.\"\n The policy description is immutable. After a value is assigned, it cannot be changed."
},
"groups": {
"type": "array",
"items": {
"type": "string"
},
- "description": "The name (friendly name, not ARN) of the group to attach the policy to."
+ "description": "The name (friendly name, not ARN) of the group to attach the policy to.\n This parameter allows (through its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-"
},
"managedPolicyName": {
"type": "string",
- "description": "The friendly name of the policy."
+ "description": "The friendly name of the policy.\n If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.\n If you specify a name, you must specify the ``CAPABILITY_NAMED_IAM`` value to acknowledge your template's capabilities. For more information, see [Acknowledging Resources in Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#using-iam-capabilities).\n Naming an IAM resource can cause an unrecoverable error if you reuse the same template in multiple Regions. To prevent this, we recommend using ``Fn::Join`` and ``AWS::Region`` to create a Region-specific name, as in the following example: ``{\"Fn::Join\": [\"\", [{\"Ref\": \"AWS::Region\"}, {\"Ref\": \"MyResourceName\"}]]}``."
},
"path": {
"type": "string",
- "description": "The path for the policy."
+ "description": "The path for the policy.\n For more information about paths, see [IAM identifiers](https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) in the *IAM User Guide*.\n This parameter is optional. If it is not included, it defaults to a slash (/).\n This parameter allows (through its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (``\\u0021``) through the DEL character (``\\u007F``), including most punctuation characters, digits, and upper and lowercased letters.\n You cannot use an asterisk (*) in the path name."
},
"policyDocument": {
"$ref": "pulumi.json#/Any",
- "description": "The JSON policy document that you want to use as the content for the new policy.\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::IAM::ManagedPolicy` for more information about the expected schema for this property."
+ "description": "The JSON policy document that you want to use as the content for the new policy.\n You must provide policies in JSON format in IAM. However, for CFN templates formatted in YAML, you can provide the policy in JSON or YAML format. CFN always converts a YAML policy to JSON format before submitting it to IAM.\n The maximum length of the policy document that you can pass in this operation, including whitespace, is listed below. To view the maximum character counts of a managed policy with no whitespaces, see [IAM and character quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length).\n To learn more about JSON policy grammar, see [Grammar of the IAM JSON policy language](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_grammar.html) in the *IAM User Guide*. \n The [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex) used to validate this parameter is a string of characters consisting of the following:\n + Any printable ASCII character ranging from the space character (``\\u0020``) through the end of the ASCII character range\n + The printable characters in the Basic Latin and Latin-1 Supplement character set (through ``\\u00FF``)\n + The special characters tab (``\\u0009``), line feed (``\\u000A``), and carriage return (``\\u000D``)\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::IAM::ManagedPolicy` for more information about the expected schema for this property."
},
"roles": {
"type": "array",
"items": {
"type": "string"
},
- "description": "The name (friendly name, not ARN) of the role to attach the policy to."
+ "description": "The name (friendly name, not ARN) of the role to attach the policy to.\n This parameter allows (per its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-\n If an external policy (such as ``AWS::IAM::Policy`` or ``AWS::IAM::ManagedPolicy``) has a ``Ref`` to a role and if a resource (such as ``AWS::ECS::Service``) also has a ``Ref`` to the same role, add a ``DependsOn`` attribute to the resource to make the resource depend on the external policy. This dependency ensures that the role's policy is available throughout the resource's lifecycle. For example, when you delete a stack with an ``AWS::ECS::Service`` resource, the ``DependsOn`` attribute ensures that CFN deletes the ``AWS::ECS::Service`` resource before deleting its role's policy."
},
"users": {
"type": "array",
"items": {
"type": "string"
},
- "description": "The name (friendly name, not ARN) of the IAM user to attach the policy to."
+ "description": "The name (friendly name, not ARN) of the IAM user to attach the policy to.\n This parameter allows (through its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-"
}
},
"outputs": {
"attachmentCount": {
- "type": "integer",
- "description": "The number of entities (users, groups, and roles) that the policy is attached to."
+ "type": "integer"
},
"createDate": {
- "type": "string",
- "description": "The date and time, in ISO 8601 date-time format, when the policy was created."
+ "type": "string"
},
"defaultVersionId": {
- "type": "string",
- "description": "The identifier for the version of the policy that is set as the default version."
+ "type": "string"
},
"description": {
"type": "string",
- "description": "A friendly description of the policy.",
+ "description": "A friendly description of the policy.\n Typically used to store information about the permissions defined in the policy. For example, \"Grants access to production DynamoDB tables.\"\n The policy description is immutable. After a value is assigned, it cannot be changed.",
"replaceOnChanges": true
},
"groups": {
@@ -39215,55 +39895,50 @@
"items": {
"type": "string"
},
- "description": "The name (friendly name, not ARN) of the group to attach the policy to."
+ "description": "The name (friendly name, not ARN) of the group to attach the policy to.\n This parameter allows (through its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-"
},
"isAttachable": {
- "type": "boolean",
- "description": "Specifies whether the policy can be attached to an IAM user, group, or role."
+ "type": "boolean"
},
"managedPolicyName": {
"type": "string",
- "description": "The friendly name of the policy.",
+ "description": "The friendly name of the policy.\n If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.\n If you specify a name, you must specify the ``CAPABILITY_NAMED_IAM`` value to acknowledge your template's capabilities. For more information, see [Acknowledging Resources in Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#using-iam-capabilities).\n Naming an IAM resource can cause an unrecoverable error if you reuse the same template in multiple Regions. To prevent this, we recommend using ``Fn::Join`` and ``AWS::Region`` to create a Region-specific name, as in the following example: ``{\"Fn::Join\": [\"\", [{\"Ref\": \"AWS::Region\"}, {\"Ref\": \"MyResourceName\"}]]}``.",
"replaceOnChanges": true
},
"path": {
"type": "string",
- "description": "The path for the policy.",
+ "description": "The path for the policy.\n For more information about paths, see [IAM identifiers](https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) in the *IAM User Guide*.\n This parameter is optional. If it is not included, it defaults to a slash (/).\n This parameter allows (through its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (``\\u0021``) through the DEL character (``\\u007F``), including most punctuation characters, digits, and upper and lowercased letters.\n You cannot use an asterisk (*) in the path name.",
"replaceOnChanges": true
},
"permissionsBoundaryUsageCount": {
- "type": "integer",
- "description": "The number of entities (users and roles) for which the policy is used to set the permissions boundary."
+ "type": "integer"
},
"policyArn": {
- "type": "string",
- "description": "Amazon Resource Name (ARN) of the managed policy"
+ "type": "string"
},
"policyDocument": {
"$ref": "pulumi.json#/Any",
- "description": "The JSON policy document that you want to use as the content for the new policy.\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::IAM::ManagedPolicy` for more information about the expected schema for this property."
+ "description": "The JSON policy document that you want to use as the content for the new policy.\n You must provide policies in JSON format in IAM. However, for CFN templates formatted in YAML, you can provide the policy in JSON or YAML format. CFN always converts a YAML policy to JSON format before submitting it to IAM.\n The maximum length of the policy document that you can pass in this operation, including whitespace, is listed below. To view the maximum character counts of a managed policy with no whitespaces, see [IAM and character quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length).\n To learn more about JSON policy grammar, see [Grammar of the IAM JSON policy language](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_grammar.html) in the *IAM User Guide*. \n The [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex) used to validate this parameter is a string of characters consisting of the following:\n + Any printable ASCII character ranging from the space character (``\\u0020``) through the end of the ASCII character range\n + The printable characters in the Basic Latin and Latin-1 Supplement character set (through ``\\u00FF``)\n + The special characters tab (``\\u0009``), line feed (``\\u000A``), and carriage return (``\\u000D``)\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::IAM::ManagedPolicy` for more information about the expected schema for this property."
},
"policyId": {
- "type": "string",
- "description": "The stable and unique string identifying the policy."
+ "type": "string"
},
"roles": {
"type": "array",
"items": {
"type": "string"
},
- "description": "The name (friendly name, not ARN) of the role to attach the policy to."
+ "description": "The name (friendly name, not ARN) of the role to attach the policy to.\n This parameter allows (per its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-\n If an external policy (such as ``AWS::IAM::Policy`` or ``AWS::IAM::ManagedPolicy``) has a ``Ref`` to a role and if a resource (such as ``AWS::ECS::Service``) also has a ``Ref`` to the same role, add a ``DependsOn`` attribute to the resource to make the resource depend on the external policy. This dependency ensures that the role's policy is available throughout the resource's lifecycle. For example, when you delete a stack with an ``AWS::ECS::Service`` resource, the ``DependsOn`` attribute ensures that CFN deletes the ``AWS::ECS::Service`` resource before deleting its role's policy."
},
"updateDate": {
- "type": "string",
- "description": "The date and time, in ISO 8601 date-time format, when the policy was last updated."
+ "type": "string"
},
"users": {
"type": "array",
"items": {
"type": "string"
},
- "description": "The name (friendly name, not ARN) of the IAM user to attach the policy to."
+ "description": "The name (friendly name, not ARN) of the IAM user to attach the policy to.\n This parameter allows (through its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-"
}
},
"autoNamingSpec": {
@@ -46596,6 +47271,160 @@
"tagsProperty": "tags",
"tagsStyle": "keyValueArray"
},
+ "aws-native:kafkaconnect:CustomPlugin": {
+ "cf": "AWS::KafkaConnect::CustomPlugin",
+ "inputs": {
+ "contentType": {
+ "$ref": "#/types/aws-native:kafkaconnect:CustomPluginContentType",
+ "description": "The type of the plugin file."
+ },
+ "description": {
+ "type": "string",
+ "description": "A summary description of the custom plugin."
+ },
+ "location": {
+ "$ref": "#/types/aws-native:kafkaconnect:CustomPluginLocation"
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the custom plugin."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "An array of key-value pairs to apply to this resource."
+ }
+ },
+ "outputs": {
+ "contentType": {
+ "$ref": "#/types/aws-native:kafkaconnect:CustomPluginContentType",
+ "description": "The type of the plugin file.",
+ "replaceOnChanges": true
+ },
+ "customPluginArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) of the custom plugin to use."
+ },
+ "description": {
+ "type": "string",
+ "description": "A summary description of the custom plugin.",
+ "replaceOnChanges": true
+ },
+ "fileDescription": {
+ "$ref": "#/types/aws-native:kafkaconnect:CustomPluginFileDescription"
+ },
+ "location": {
+ "$ref": "#/types/aws-native:kafkaconnect:CustomPluginLocation",
+ "replaceOnChanges": true
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the custom plugin.",
+ "replaceOnChanges": true
+ },
+ "revision": {
+ "type": "integer",
+ "description": "The revision of the custom plugin."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "An array of key-value pairs to apply to this resource."
+ }
+ },
+ "autoNamingSpec": {
+ "sdkName": "name",
+ "minLength": 1,
+ "maxLength": 128
+ },
+ "required": [
+ "contentType",
+ "location"
+ ],
+ "createOnly": [
+ "contentType",
+ "description",
+ "location",
+ "name"
+ ],
+ "tagsProperty": "tags",
+ "tagsStyle": "keyValueArray"
+ },
+ "aws-native:kafkaconnect:WorkerConfiguration": {
+ "cf": "AWS::KafkaConnect::WorkerConfiguration",
+ "inputs": {
+ "description": {
+ "type": "string",
+ "description": "A summary description of the worker configuration."
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the worker configuration."
+ },
+ "propertiesFileContent": {
+ "type": "string",
+ "description": "Base64 encoded contents of connect-distributed.properties file."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "A collection of tags associated with a resource"
+ }
+ },
+ "outputs": {
+ "description": {
+ "type": "string",
+ "description": "A summary description of the worker configuration.",
+ "replaceOnChanges": true
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the worker configuration.",
+ "replaceOnChanges": true
+ },
+ "propertiesFileContent": {
+ "type": "string",
+ "description": "Base64 encoded contents of connect-distributed.properties file.",
+ "replaceOnChanges": true
+ },
+ "revision": {
+ "type": "integer",
+ "description": "The description of a revision of the worker configuration."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "A collection of tags associated with a resource"
+ },
+ "workerConfigurationArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) of the custom configuration."
+ }
+ },
+ "autoNamingSpec": {
+ "sdkName": "name",
+ "minLength": 1,
+ "maxLength": 128
+ },
+ "required": [
+ "propertiesFileContent"
+ ],
+ "createOnly": [
+ "description",
+ "name",
+ "propertiesFileContent"
+ ],
+ "tagsProperty": "tags",
+ "tagsStyle": "keyValueArray"
+ },
"aws-native:kendra:DataSource": {
"cf": "AWS::Kendra::DataSource",
"inputs": {
@@ -51464,64 +52293,63 @@
"inputs": {
"dataProtectionPolicy": {
"$ref": "pulumi.json#/Any",
- "description": "The body of the policy document you want to use for this topic.\n\nYou can only add one policy per topic.\n\nThe policy must be in JSON string format.\n\nLength Constraints: Maximum length of 30720\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Logs::LogGroup` for more information about the expected schema for this property."
+ "description": "Creates a data protection policy and assigns it to the log group. A data protection policy can help safeguard sensitive data that's ingested by the log group by auditing and masking the sensitive log data. When a user who does not have permission to view masked data views a log event that includes masked data, the sensitive data is replaced by asterisks.\n For more information, including a list of types of data that can be audited and masked, see [Protect sensitive log data with masking](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/mask-sensitive-log-data.html).\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Logs::LogGroup` for more information about the expected schema for this property."
},
"kmsKeyId": {
"type": "string",
- "description": "The Amazon Resource Name (ARN) of the CMK to use when encrypting log data."
+ "description": "The Amazon Resource Name (ARN) of the KMS key to use when encrypting log data.\n To associate an KMS key with the log group, specify the ARN of that KMS key here. If you do so, ingested data is encrypted using this key. This association is stored as long as the data encrypted with the KMS key is still within CWL. This enables CWL to decrypt this data whenever it is requested.\n If you attempt to associate a KMS key with the log group but the KMS key doesn't exist or is deactivated, you will receive an ``InvalidParameterException`` error.\n Log group data is always encrypted in CWL. If you omit this key, the encryption does not use KMS. For more information, see [Encrypt log data in using](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/encrypt-log-data-kms.html)"
},
"logGroupClass": {
"$ref": "#/types/aws-native:logs:LogGroupClass",
- "description": "The class of the log group. Possible values are: STANDARD and INFREQUENT_ACCESS, with STANDARD being the default class"
+ "description": "Specifies the log group class for this log group. There are two classes:\n + The ``Standard`` log class supports all CWL features.\n + The ``Infrequent Access`` log class supports a subset of CWL features and incurs lower costs.\n \n For details about the features supported by each class, see [Log classes](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch_Logs_Log_Classes.html)"
},
"logGroupName": {
"type": "string",
- "description": "The name of the log group. If you don't specify a name, AWS CloudFormation generates a unique ID for the log group."
+ "description": "The name of the log group. If you don't specify a name, CFNlong generates a unique ID for the log group."
},
"retentionInDays": {
"type": "integer",
- "description": "The number of days to retain the log events in the specified log group. Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1096, 1827, and 3653."
+ "description": "The number of days to retain the log events in the specified log group. Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1096, 1827, 2192, 2557, 2922, 3288, and 3653.\n To set a log group so that its log events do not expire, use [DeleteRetentionPolicy](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DeleteRetentionPolicy.html)."
},
"tags": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:index:Tag"
},
- "description": "An array of key-value pairs to apply to this resource."
+ "description": "An array of key-value pairs to apply to the log group.\n For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html)."
}
},
"outputs": {
"arn": {
- "type": "string",
- "description": "The CloudWatch log group ARN."
+ "type": "string"
},
"dataProtectionPolicy": {
"$ref": "pulumi.json#/Any",
- "description": "The body of the policy document you want to use for this topic.\n\nYou can only add one policy per topic.\n\nThe policy must be in JSON string format.\n\nLength Constraints: Maximum length of 30720\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Logs::LogGroup` for more information about the expected schema for this property."
+ "description": "Creates a data protection policy and assigns it to the log group. A data protection policy can help safeguard sensitive data that's ingested by the log group by auditing and masking the sensitive log data. When a user who does not have permission to view masked data views a log event that includes masked data, the sensitive data is replaced by asterisks.\n For more information, including a list of types of data that can be audited and masked, see [Protect sensitive log data with masking](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/mask-sensitive-log-data.html).\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Logs::LogGroup` for more information about the expected schema for this property."
},
"kmsKeyId": {
"type": "string",
- "description": "The Amazon Resource Name (ARN) of the CMK to use when encrypting log data."
+ "description": "The Amazon Resource Name (ARN) of the KMS key to use when encrypting log data.\n To associate an KMS key with the log group, specify the ARN of that KMS key here. If you do so, ingested data is encrypted using this key. This association is stored as long as the data encrypted with the KMS key is still within CWL. This enables CWL to decrypt this data whenever it is requested.\n If you attempt to associate a KMS key with the log group but the KMS key doesn't exist or is deactivated, you will receive an ``InvalidParameterException`` error.\n Log group data is always encrypted in CWL. If you omit this key, the encryption does not use KMS. For more information, see [Encrypt log data in using](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/encrypt-log-data-kms.html)"
},
"logGroupClass": {
"$ref": "#/types/aws-native:logs:LogGroupClass",
- "description": "The class of the log group. Possible values are: STANDARD and INFREQUENT_ACCESS, with STANDARD being the default class"
+ "description": "Specifies the log group class for this log group. There are two classes:\n + The ``Standard`` log class supports all CWL features.\n + The ``Infrequent Access`` log class supports a subset of CWL features and incurs lower costs.\n \n For details about the features supported by each class, see [Log classes](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch_Logs_Log_Classes.html)"
},
"logGroupName": {
"type": "string",
- "description": "The name of the log group. If you don't specify a name, AWS CloudFormation generates a unique ID for the log group.",
+ "description": "The name of the log group. If you don't specify a name, CFNlong generates a unique ID for the log group.",
"replaceOnChanges": true
},
"retentionInDays": {
"type": "integer",
- "description": "The number of days to retain the log events in the specified log group. Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1096, 1827, and 3653."
+ "description": "The number of days to retain the log events in the specified log group. Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1096, 1827, 2192, 2557, 2922, 3288, and 3653.\n To set a log group so that its log events do not expire, use [DeleteRetentionPolicy](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DeleteRetentionPolicy.html)."
},
"tags": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:index:Tag"
},
- "description": "An array of key-value pairs to apply to this resource."
+ "description": "An array of key-value pairs to apply to the log group.\n For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html)."
}
},
"autoNamingSpec": {
@@ -51575,37 +52403,37 @@
"inputs": {
"filterName": {
"type": "string",
- "description": "A name for the metric filter."
+ "description": "The name of the metric filter."
},
"filterPattern": {
"type": "string",
- "description": "Pattern that Logs follows to interpret each entry in a log."
+ "description": "A filter pattern for extracting metric data out of ingested log events. For more information, see [Filter and Pattern Syntax](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html)."
},
"logGroupName": {
"type": "string",
- "description": "Existing log group that you want to associate with this filter."
+ "description": "The name of an existing log group that you want to associate with this metric filter."
},
"metricTransformations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:logs:MetricFilterMetricTransformation"
},
- "description": "A collection of information that defines how metric data gets emitted."
+ "description": "The metric transformations."
}
},
"outputs": {
"filterName": {
"type": "string",
- "description": "A name for the metric filter.",
+ "description": "The name of the metric filter.",
"replaceOnChanges": true
},
"filterPattern": {
"type": "string",
- "description": "Pattern that Logs follows to interpret each entry in a log."
+ "description": "A filter pattern for extracting metric data out of ingested log events. For more information, see [Filter and Pattern Syntax](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html)."
},
"logGroupName": {
"type": "string",
- "description": "Existing log group that you want to associate with this filter.",
+ "description": "The name of an existing log group that you want to associate with this metric filter.",
"replaceOnChanges": true
},
"metricTransformations": {
@@ -51613,7 +52441,7 @@
"items": {
"$ref": "#/types/aws-native:logs:MetricFilterMetricTransformation"
},
- "description": "A collection of information that defines how metric data gets emitted."
+ "description": "The metric transformations."
}
},
"autoNamingSpec": {
@@ -51724,23 +52552,23 @@
},
"distribution": {
"$ref": "#/types/aws-native:logs:SubscriptionFilterDistribution",
- "description": "The method used to distribute log data to the destination. By default, log data is grouped by log stream, but the grouping can be set to random for a more even distribution. This property is only applicable when the destination is an Amazon Kinesis stream."
+ "description": "The method used to distribute log data to the destination, which can be either random or grouped by log stream."
},
"filterName": {
"type": "string",
- "description": "The name of the filter generated by resource."
+ "description": "The name of the subscription filter."
},
"filterPattern": {
"type": "string",
- "description": "The filtering expressions that restrict what gets delivered to the destination AWS resource."
+ "description": "The filtering expressions that restrict what gets delivered to the destination AWS resource. For more information about the filter pattern syntax, see [Filter and Pattern Syntax](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html)."
},
"logGroupName": {
"type": "string",
- "description": "Existing log group that you want to associate with this filter."
+ "description": "The log group to associate with the subscription filter. All log events that are uploaded to this log group are filtered and delivered to the specified AWS resource if the filter pattern matches the log events."
},
"roleArn": {
"type": "string",
- "description": "The ARN of an IAM role that grants CloudWatch Logs permissions to deliver ingested log events to the destination stream. You don't need to provide the ARN when you are working with a logical destination for cross-account delivery."
+ "description": "The ARN of an IAM role that grants CWL permissions to deliver ingested log events to the destination stream. You don't need to provide the ARN when you are working with a logical destination for cross-account delivery."
}
},
"outputs": {
@@ -51750,25 +52578,25 @@
},
"distribution": {
"$ref": "#/types/aws-native:logs:SubscriptionFilterDistribution",
- "description": "The method used to distribute log data to the destination. By default, log data is grouped by log stream, but the grouping can be set to random for a more even distribution. This property is only applicable when the destination is an Amazon Kinesis stream."
+ "description": "The method used to distribute log data to the destination, which can be either random or grouped by log stream."
},
"filterName": {
"type": "string",
- "description": "The name of the filter generated by resource.",
+ "description": "The name of the subscription filter.",
"replaceOnChanges": true
},
"filterPattern": {
"type": "string",
- "description": "The filtering expressions that restrict what gets delivered to the destination AWS resource."
+ "description": "The filtering expressions that restrict what gets delivered to the destination AWS resource. For more information about the filter pattern syntax, see [Filter and Pattern Syntax](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html)."
},
"logGroupName": {
"type": "string",
- "description": "Existing log group that you want to associate with this filter.",
+ "description": "The log group to associate with the subscription filter. All log events that are uploaded to this log group are filtered and delivered to the specified AWS resource if the filter pattern matches the log events.",
"replaceOnChanges": true
},
"roleArn": {
"type": "string",
- "description": "The ARN of an IAM role that grants CloudWatch Logs permissions to deliver ingested log events to the destination stream. You don't need to provide the ARN when you are working with a logical destination for cross-account delivery."
+ "description": "The ARN of an IAM role that grants CWL permissions to deliver ingested log events to the destination stream. You don't need to provide the ARN when you are working with a logical destination for cross-account delivery."
}
},
"autoNamingSpec": {
@@ -65001,6 +65829,14 @@
"type": "string"
}
},
+ "dataFilter": {
+ "type": "string",
+ "description": "The data filter for the integration."
+ },
+ "description": {
+ "type": "string",
+ "description": "The description of the integration."
+ },
"integrationName": {
"type": "string",
"description": "The name of the integration."
@@ -65036,14 +65872,21 @@
"createTime": {
"type": "string"
},
+ "dataFilter": {
+ "type": "string",
+ "description": "The data filter for the integration."
+ },
+ "description": {
+ "type": "string",
+ "description": "The description of the integration."
+ },
"integrationArn": {
"type": "string",
"description": "The ARN of the integration."
},
"integrationName": {
"type": "string",
- "description": "The name of the integration.",
- "replaceOnChanges": true
+ "description": "The name of the integration."
},
"kmsKeyId": {
"type": "string",
@@ -65079,7 +65922,6 @@
],
"createOnly": [
"additionalEncryptionContext",
- "integrationName",
"kmsKeyId",
"sourceArn",
"targetArn"
@@ -67285,10 +68127,7 @@
"description": "Data Location Constraint of the Policy."
},
"policy": {
- "type": "object",
- "additionalProperties": {
- "$ref": "#/types/aws-native:resiliencehub:ResiliencyPolicyFailurePolicy"
- }
+ "$ref": "#/types/aws-native:resiliencehub:ResiliencyPolicyPolicyMap"
},
"policyDescription": {
"type": "string",
@@ -67315,10 +68154,7 @@
"description": "Data Location Constraint of the Policy."
},
"policy": {
- "type": "object",
- "additionalProperties": {
- "$ref": "#/types/aws-native:resiliencehub:ResiliencyPolicyFailurePolicy"
- }
+ "$ref": "#/types/aws-native:resiliencehub:ResiliencyPolicyPolicyMap"
},
"policyArn": {
"type": "string",
@@ -73652,6 +74488,259 @@
],
"tagsProperty": "tags"
},
+ "aws-native:securitylake:AwsLogSource": {
+ "cf": "AWS::SecurityLake::AwsLogSource",
+ "inputs": {
+ "accounts": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "AWS account where you want to collect logs from."
+ },
+ "dataLakeArn": {
+ "type": "string",
+ "description": "The ARN for the data lake."
+ },
+ "sourceName": {
+ "type": "string",
+ "description": "The name for a AWS source. This must be a Regionally unique value."
+ },
+ "sourceVersion": {
+ "type": "string",
+ "description": "The version for a AWS source. This must be a Regionally unique value."
+ }
+ },
+ "outputs": {
+ "accounts": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "AWS account where you want to collect logs from."
+ },
+ "dataLakeArn": {
+ "type": "string",
+ "description": "The ARN for the data lake.",
+ "replaceOnChanges": true
+ },
+ "sourceName": {
+ "type": "string",
+ "description": "The name for a AWS source. This must be a Regionally unique value.",
+ "replaceOnChanges": true
+ },
+ "sourceVersion": {
+ "type": "string",
+ "description": "The version for a AWS source. This must be a Regionally unique value.",
+ "replaceOnChanges": true
+ }
+ },
+ "autoNamingSpec": {
+ "sdkName": "sourceName"
+ },
+ "required": [
+ "dataLakeArn",
+ "sourceVersion"
+ ],
+ "createOnly": [
+ "dataLakeArn",
+ "sourceName",
+ "sourceVersion"
+ ]
+ },
+ "aws-native:securitylake:DataLake": {
+ "cf": "AWS::SecurityLake::DataLake",
+ "inputs": {
+ "encryptionConfiguration": {
+ "$ref": "#/types/aws-native:securitylake:DataLakeEncryptionConfiguration"
+ },
+ "lifecycleConfiguration": {
+ "$ref": "#/types/aws-native:securitylake:DataLakeLifecycleConfiguration"
+ },
+ "metaStoreManagerRoleArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) used to index AWS Glue table partitions that are generated by the ingestion and normalization of AWS log sources and custom sources."
+ },
+ "replicationConfiguration": {
+ "$ref": "#/types/aws-native:securitylake:DataLakeReplicationConfiguration"
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ }
+ }
+ },
+ "outputs": {
+ "arn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) created by you to provide to the subscriber."
+ },
+ "encryptionConfiguration": {
+ "$ref": "#/types/aws-native:securitylake:DataLakeEncryptionConfiguration"
+ },
+ "lifecycleConfiguration": {
+ "$ref": "#/types/aws-native:securitylake:DataLakeLifecycleConfiguration"
+ },
+ "metaStoreManagerRoleArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) used to index AWS Glue table partitions that are generated by the ingestion and normalization of AWS log sources and custom sources.",
+ "replaceOnChanges": true
+ },
+ "replicationConfiguration": {
+ "$ref": "#/types/aws-native:securitylake:DataLakeReplicationConfiguration"
+ },
+ "s3BucketArn": {
+ "type": "string",
+ "description": "The ARN for the Amazon Security Lake Amazon S3 bucket."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ }
+ }
+ },
+ "createOnly": [
+ "metaStoreManagerRoleArn"
+ ],
+ "writeOnly": [
+ "metaStoreManagerRoleArn"
+ ],
+ "irreversibleNames": {
+ "s3BucketArn": "S3BucketArn"
+ },
+ "tagsProperty": "tags",
+ "tagsStyle": "keyValueArray"
+ },
+ "aws-native:securitylake:Subscriber": {
+ "cf": "AWS::SecurityLake::Subscriber",
+ "inputs": {
+ "accessTypes": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:securitylake:SubscriberAccessTypesItem"
+ }
+ },
+ "dataLakeArn": {
+ "type": "string",
+ "description": "The ARN for the data lake."
+ },
+ "sources": {
+ "type": "array",
+ "items": {
+ "oneOf": [
+ {
+ "$ref": "#/types/aws-native:securitylake:SubscriberSource0Properties"
+ },
+ {
+ "$ref": "#/types/aws-native:securitylake:SubscriberSource1Properties"
+ }
+ ]
+ },
+ "description": "The supported AWS services from which logs and events are collected."
+ },
+ "subscriberDescription": {
+ "type": "string",
+ "description": "The description for your subscriber account in Security Lake."
+ },
+ "subscriberIdentity": {
+ "$ref": "#/types/aws-native:securitylake:SubscriberIdentityProperties",
+ "description": "The AWS identity used to access your data."
+ },
+ "subscriberName": {
+ "type": "string",
+ "description": "The name of your Security Lake subscriber account."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "An array of objects, one for each tag to associate with the subscriber. For each tag, you must specify both a tag key and a tag value. A tag value cannot be null, but it can be an empty string."
+ }
+ },
+ "outputs": {
+ "accessTypes": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:securitylake:SubscriberAccessTypesItem"
+ }
+ },
+ "dataLakeArn": {
+ "type": "string",
+ "description": "The ARN for the data lake.",
+ "replaceOnChanges": true
+ },
+ "resourceShareArn": {
+ "type": "string"
+ },
+ "resourceShareName": {
+ "type": "string"
+ },
+ "s3BucketArn": {
+ "type": "string"
+ },
+ "sources": {
+ "type": "array",
+ "items": {
+ "oneOf": [
+ {
+ "$ref": "#/types/aws-native:securitylake:SubscriberSource0Properties"
+ },
+ {
+ "$ref": "#/types/aws-native:securitylake:SubscriberSource1Properties"
+ }
+ ]
+ },
+ "description": "The supported AWS services from which logs and events are collected."
+ },
+ "subscriberArn": {
+ "type": "string"
+ },
+ "subscriberDescription": {
+ "type": "string",
+ "description": "The description for your subscriber account in Security Lake."
+ },
+ "subscriberIdentity": {
+ "$ref": "#/types/aws-native:securitylake:SubscriberIdentityProperties",
+ "description": "The AWS identity used to access your data."
+ },
+ "subscriberName": {
+ "type": "string",
+ "description": "The name of your Security Lake subscriber account."
+ },
+ "subscriberRoleArn": {
+ "type": "string"
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "An array of objects, one for each tag to associate with the subscriber. For each tag, you must specify both a tag key and a tag value. A tag value cannot be null, but it can be an empty string."
+ }
+ },
+ "autoNamingSpec": {
+ "sdkName": "subscriberName",
+ "minLength": 1,
+ "maxLength": 64
+ },
+ "required": [
+ "accessTypes",
+ "dataLakeArn",
+ "sources",
+ "subscriberIdentity"
+ ],
+ "createOnly": [
+ "dataLakeArn"
+ ],
+ "irreversibleNames": {
+ "s3BucketArn": "S3BucketArn"
+ },
+ "tagsProperty": "tags",
+ "tagsStyle": "keyValueArray"
+ },
"aws-native:servicecatalog:CloudFormationProvisionedProduct": {
"cf": "AWS::ServiceCatalog::CloudFormationProvisionedProduct",
"inputs": {
@@ -84911,6 +86000,41 @@
}
}
},
+ "aws-native:appintegrations:ApplicationExternalUrlConfig": {
+ "type": "object",
+ "properties": {
+ "accessUrl": {
+ "type": "string"
+ },
+ "approvedOrigins": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "aws-native:appintegrations:ApplicationSourceConfigProperties": {
+ "type": "object",
+ "properties": {
+ "externalUrlConfig": {
+ "$ref": "#/types/aws-native:appintegrations:ApplicationExternalUrlConfig"
+ }
+ }
+ },
+ "aws-native:appintegrations:ApplicationTag": {
+ "type": "object",
+ "properties": {
+ "key": {
+ "type": "string",
+ "description": "A key to identify the tag."
+ },
+ "value": {
+ "type": "string",
+ "description": "Corresponding tag value for the key."
+ }
+ }
+ },
"aws-native:appintegrations:DataIntegrationFileConfiguration": {
"type": "object",
"properties": {
@@ -86392,6 +87516,78 @@
}
}
},
+ "aws-native:aps:ScraperDestination": {
+ "type": "object",
+ "properties": {
+ "ampConfiguration": {
+ "$ref": "#/types/aws-native:aps:ScraperDestinationAmpConfigurationProperties",
+ "description": "Configuration for Amazon Managed Prometheus metrics destination"
+ }
+ }
+ },
+ "aws-native:aps:ScraperDestinationAmpConfigurationProperties": {
+ "type": "object",
+ "properties": {
+ "workspaceArn": {
+ "type": "string",
+ "description": "ARN of an Amazon Managed Prometheus workspace"
+ }
+ }
+ },
+ "aws-native:aps:ScraperScrapeConfiguration": {
+ "type": "object",
+ "properties": {
+ "configurationBlob": {
+ "type": "string",
+ "description": "Prometheus compatible scrape configuration in base64 encoded blob format"
+ }
+ }
+ },
+ "aws-native:aps:ScraperSource": {
+ "type": "object",
+ "properties": {
+ "eksConfiguration": {
+ "$ref": "#/types/aws-native:aps:ScraperSourceEksConfigurationProperties",
+ "description": "Configuration for EKS metrics source"
+ }
+ }
+ },
+ "aws-native:aps:ScraperSourceEksConfigurationProperties": {
+ "type": "object",
+ "properties": {
+ "clusterArn": {
+ "type": "string",
+ "description": "ARN of an EKS cluster"
+ },
+ "securityGroupIds": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of security group IDs"
+ },
+ "subnetIds": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of subnet IDs"
+ }
+ }
+ },
+ "aws-native:aps:ScraperTag": {
+ "type": "object",
+ "properties": {
+ "key": {
+ "type": "string",
+ "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -."
+ },
+ "value": {
+ "type": "string",
+ "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -."
+ }
+ }
+ },
"aws-native:aps:WorkspaceLoggingConfiguration": {
"type": "object",
"properties": {
@@ -89141,6 +90337,225 @@
}
}
},
+ "aws-native:bedrock:AgentActionGroup": {
+ "type": "object",
+ "properties": {
+ "actionGroupExecutor": {
+ "$ref": "#/types/aws-native:bedrock:AgentActionGroupExecutor"
+ },
+ "actionGroupName": {
+ "type": "string",
+ "description": "Name of the action group"
+ },
+ "actionGroupState": {
+ "$ref": "#/types/aws-native:bedrock:AgentActionGroupState"
+ },
+ "apiSchema": {
+ "oneOf": [
+ {
+ "$ref": "#/types/aws-native:bedrock:AgentApiSchema0Properties"
+ },
+ {
+ "$ref": "#/types/aws-native:bedrock:AgentApiSchema1Properties"
+ }
+ ]
+ },
+ "description": {
+ "type": "string",
+ "description": "Description of action group"
+ },
+ "parentActionGroupSignature": {
+ "$ref": "#/types/aws-native:bedrock:AgentActionGroupSignature"
+ },
+ "skipResourceInUseCheckOnDelete": {
+ "type": "boolean",
+ "description": "Specifies whether to allow deleting action group while it is in use."
+ }
+ }
+ },
+ "aws-native:bedrock:AgentActionGroupExecutor": {
+ "type": "object",
+ "properties": {
+ "lambda": {
+ "type": "string",
+ "description": "ARN of a Lambda."
+ }
+ }
+ },
+ "aws-native:bedrock:AgentActionGroupSignature": {
+ "type": "string"
+ },
+ "aws-native:bedrock:AgentActionGroupState": {
+ "type": "string"
+ },
+ "aws-native:bedrock:AgentAliasHistoryEvent": {
+ "type": "object",
+ "properties": {
+ "endDate": {
+ "type": "string",
+ "description": "Time Stamp."
+ },
+ "routingConfiguration": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:bedrock:AgentAliasRoutingConfigurationListItem"
+ },
+ "description": "Routing configuration for an Agent alias."
+ },
+ "startDate": {
+ "type": "string",
+ "description": "Time Stamp."
+ }
+ }
+ },
+ "aws-native:bedrock:AgentAliasRoutingConfigurationListItem": {
+ "type": "object",
+ "properties": {
+ "agentVersion": {
+ "type": "string",
+ "description": "Agent Version."
+ }
+ }
+ },
+ "aws-native:bedrock:AgentAliasStatus": {
+ "type": "string"
+ },
+ "aws-native:bedrock:AgentApiSchema0Properties": {
+ "type": "object",
+ "properties": {
+ "s3": {
+ "$ref": "#/types/aws-native:bedrock:AgentS3Identifier"
+ }
+ },
+ "irreversibleNames": {
+ "s3": "S3"
+ }
+ },
+ "aws-native:bedrock:AgentApiSchema1Properties": {
+ "type": "object",
+ "properties": {
+ "payload": {
+ "type": "string",
+ "description": "String OpenAPI Payload"
+ }
+ }
+ },
+ "aws-native:bedrock:AgentCreationMode": {
+ "type": "string"
+ },
+ "aws-native:bedrock:AgentInferenceConfiguration": {
+ "type": "object",
+ "properties": {
+ "maximumLength": {
+ "type": "number",
+ "description": "Maximum length of output"
+ },
+ "stopSequences": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of stop sequences"
+ },
+ "temperature": {
+ "type": "number",
+ "description": "Controls randomness, higher values increase diversity"
+ },
+ "topK": {
+ "type": "number",
+ "description": "Sample from the k most likely next tokens"
+ },
+ "topP": {
+ "type": "number",
+ "description": "Cumulative probability cutoff for token selection"
+ }
+ }
+ },
+ "aws-native:bedrock:AgentKnowledgeBase": {
+ "type": "object",
+ "properties": {
+ "description": {
+ "type": "string",
+ "description": "Description of the Resource."
+ },
+ "knowledgeBaseId": {
+ "type": "string",
+ "description": "Identifier for a resource."
+ },
+ "knowledgeBaseState": {
+ "$ref": "#/types/aws-native:bedrock:AgentKnowledgeBaseState"
+ }
+ }
+ },
+ "aws-native:bedrock:AgentKnowledgeBaseState": {
+ "type": "string"
+ },
+ "aws-native:bedrock:AgentPromptConfiguration": {
+ "type": "object",
+ "properties": {
+ "basePromptTemplate": {
+ "type": "string",
+ "description": "Base Prompt Template."
+ },
+ "inferenceConfiguration": {
+ "$ref": "#/types/aws-native:bedrock:AgentInferenceConfiguration"
+ },
+ "parserMode": {
+ "$ref": "#/types/aws-native:bedrock:AgentCreationMode"
+ },
+ "promptCreationMode": {
+ "$ref": "#/types/aws-native:bedrock:AgentCreationMode"
+ },
+ "promptState": {
+ "$ref": "#/types/aws-native:bedrock:AgentPromptState"
+ },
+ "promptType": {
+ "$ref": "#/types/aws-native:bedrock:AgentPromptType"
+ }
+ }
+ },
+ "aws-native:bedrock:AgentPromptOverrideConfiguration": {
+ "type": "object",
+ "properties": {
+ "overrideLambda": {
+ "type": "string",
+ "description": "ARN of a Lambda."
+ },
+ "promptConfigurations": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:bedrock:AgentPromptConfiguration"
+ },
+ "description": "List of BasePromptConfiguration"
+ }
+ }
+ },
+ "aws-native:bedrock:AgentPromptState": {
+ "type": "string"
+ },
+ "aws-native:bedrock:AgentPromptType": {
+ "type": "string"
+ },
+ "aws-native:bedrock:AgentS3Identifier": {
+ "type": "object",
+ "properties": {
+ "s3BucketName": {
+ "type": "string",
+ "description": "A bucket in S3."
+ },
+ "s3ObjectKey": {
+ "type": "string",
+ "description": "A object key in S3."
+ }
+ },
+ "irreversibleNames": {
+ "s3BucketName": "S3BucketName",
+ "s3ObjectKey": "S3ObjectKey"
+ }
+ },
+ "aws-native:bedrock:AgentStatus": {
+ "type": "string"
+ },
"aws-native:budgets:BudgetsActionActionThreshold": {
"type": "object",
"properties": {
@@ -89721,6 +91136,9 @@
"items": {
"type": "string"
}
+ },
+ "differentialPrivacy": {
+ "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableDifferentialPrivacy"
}
}
},
@@ -89806,6 +91224,25 @@
}
}
},
+ "aws-native:cleanrooms:ConfiguredTableDifferentialPrivacy": {
+ "type": "object",
+ "properties": {
+ "columns": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableDifferentialPrivacyColumn"
+ }
+ }
+ }
+ },
+ "aws-native:cleanrooms:ConfiguredTableDifferentialPrivacyColumn": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string"
+ }
+ }
+ },
"aws-native:cleanrooms:ConfiguredTableGlueTableReference": {
"type": "object",
"properties": {
@@ -90384,7 +91821,7 @@
},
"defaultTtl": {
"type": "number",
- "description": "This field is deprecated. We recommend that you use the ``DefaultTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The default amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide"
+ "description": "This field is deprecated. We recommend that you use the ``DefaultTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The default amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*."
},
"fieldLevelEncryptionId": {
"type": "string",
@@ -90392,7 +91829,7 @@
},
"forwardedValues": {
"$ref": "#/types/aws-native:cloudfront:DistributionForwardedValues",
- "description": "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field. For more information, see [Working with policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/working-with-policies.html) in the *Amazon CloudFront Developer Guide*.\n If you want to include values in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n If you want to send values to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-r"
+ "description": "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field. For more information, see [Working with policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/working-with-policies.html) in the *Amazon CloudFront Developer Guide*.\n If you want to include values in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n If you want to send values to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) or [Using the managed origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-origin-request-policies.html) in the *Amazon CloudFront Developer Guide*.\n A ``CacheBehavior`` must include either a ``CachePolicyId`` or ``ForwardedValues``. We recommend that you use a ``CachePolicyId``.\n A complex type that specifies how CloudFront handles query strings, cookies, and HTTP headers."
},
"functionAssociations": {
"type": "array",
@@ -90410,11 +91847,11 @@
},
"maxTtl": {
"type": "number",
- "description": "This field is deprecated. We recommend that you use the ``MaxTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The maximum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration."
+ "description": "This field is deprecated. We recommend that you use the ``MaxTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The maximum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*."
},
"minTtl": {
"type": "number",
- "description": "This field is deprecated. We recommend that you use the ``MinTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*.\n You must specify ``0`` for ``MinTTL`` if you configure CloudFront to forward all headers to your origin (under ``He"
+ "description": "This field is deprecated. We recommend that you use the ``MinTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*.\n You must specify ``0`` for ``MinTTL`` if you configure CloudFront to forward all headers to your origin (under ``Headers``, if you specify ``1`` for ``Quantity`` and ``*`` for ``Name``)."
},
"originRequestPolicyId": {
"type": "string",
@@ -90456,7 +91893,7 @@
},
"viewerProtocolPolicy": {
"type": "string",
- "description": "The protocol that viewers can use to access the files in the origin specified by ``TargetOriginId`` when a request matches the path pattern in ``PathPattern``. You can specify the following options:\n + ``allow-all``: Viewers can use HTTP or HTTPS.\n + ``redirect-to-https``: If a viewer submits an HTTP request, CloudFront returns an HTTP status code of 301 (Moved Permanently) to the viewer along with the HTTPS URL. The viewer then resubmits the request using the new URL.\n + ``https-only``: If a viewer sends an HTTP request, CloudFront returns an HTTP status code of 403 (Forbidden).\n \n For more information about requiring the HTTPS protocol, see [Requiring HTTPS Between Viewers and CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https-viewers-to-cloudfront.html) in the *Amazon CloudFront Developer Guide*.\n The only way to guarantee that viewers retrieve an object that was fetched from the origin using HTTPS is never to use any other protocol"
+ "description": "The protocol that viewers can use to access the files in the origin specified by ``TargetOriginId`` when a request matches the path pattern in ``PathPattern``. You can specify the following options:\n + ``allow-all``: Viewers can use HTTP or HTTPS.\n + ``redirect-to-https``: If a viewer submits an HTTP request, CloudFront returns an HTTP status code of 301 (Moved Permanently) to the viewer along with the HTTPS URL. The viewer then resubmits the request using the new URL.\n + ``https-only``: If a viewer sends an HTTP request, CloudFront returns an HTTP status code of 403 (Forbidden).\n \n For more information about requiring the HTTPS protocol, see [Requiring HTTPS Between Viewers and CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https-viewers-to-cloudfront.html) in the *Amazon CloudFront Developer Guide*.\n The only way to guarantee that viewers retrieve an object that was fetched from the origin using HTTPS is never to use any other protocol to fetch the object. If you have recently changed from HTTP to HTTPS, we recommend that you clear your objects' cache because cached objects are protocol agnostic. That means that an edge location will return an object from the cache regardless of whether the current request protocol matches the protocol used previously. For more information, see [Managing Cache Expiration](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*."
}
},
"irreversibleNames": {
@@ -90512,7 +91949,7 @@
},
"defaultRootObject": {
"type": "string",
- "description": "The object that you want CloudFront to request from your origin (for example, ``index.html``) when a viewer requests the root URL for your distribution (``https://www.example.com``) instead of an object in your distribution (``https://www.example.com/product-description.html``). Specifying a default root object avoids exposing the contents of your distribution.\n Specify only the object name, for example, ``index.html``. Don't add a ``/`` before the object name.\n If you don't want to specify a default root object when you create a distribution, include an empty ``DefaultRootObject`` element.\n To delete the default root object from an existing distribution, update the distribution configuration and include an empty ``DefaultRootObject`` element.\n To replace the default root object, update the distribution configuration and specify the new object.\n For more information about the default root object, see [Creating a Default Root Object](https://docs.aws.amazon.com/AmazonCloudFront/latest/D"
+ "description": "The object that you want CloudFront to request from your origin (for example, ``index.html``) when a viewer requests the root URL for your distribution (``https://www.example.com``) instead of an object in your distribution (``https://www.example.com/product-description.html``). Specifying a default root object avoids exposing the contents of your distribution.\n Specify only the object name, for example, ``index.html``. Don't add a ``/`` before the object name.\n If you don't want to specify a default root object when you create a distribution, include an empty ``DefaultRootObject`` element.\n To delete the default root object from an existing distribution, update the distribution configuration and include an empty ``DefaultRootObject`` element.\n To replace the default root object, update the distribution configuration and specify the new object.\n For more information about the default root object, see [Creating a Default Root Object](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/DefaultRootObject.html) in the *Amazon CloudFront Developer Guide*."
},
"enabled": {
"type": "boolean",
@@ -90524,7 +91961,7 @@
},
"ipv6Enabled": {
"type": "boolean",
- "description": "If you want CloudFront to respond to IPv6 DNS requests with an IPv6 address for your distribution, specify ``true``. If you specify ``false``, CloudFront responds to IPv6 DNS requests with the DNS response code ``NOERROR`` and with no IP addresses. This allows viewers to submit a second request, for an IPv4 address for your distribution.\n In general, you should enable IPv6 if you have users on IPv6 networks who want to access your content. However, if you're using signed URLs or signed cookies to restrict access to your content, and if you're using a custom policy that includes the ``IpAddress`` parameter to restrict the IP addresses that can access your content, don't enable IPv6. If you want to restrict access to some content by IP address and not restrict access to other content (or restrict access but not by IP address), you can create two distributions. For more information, see [Creating a Signed URL Using a Custom Policy](https://docs.aws.amazon.com/AmazonCloudFront/latest/Devel"
+ "description": "If you want CloudFront to respond to IPv6 DNS requests with an IPv6 address for your distribution, specify ``true``. If you specify ``false``, CloudFront responds to IPv6 DNS requests with the DNS response code ``NOERROR`` and with no IP addresses. This allows viewers to submit a second request, for an IPv4 address for your distribution.\n In general, you should enable IPv6 if you have users on IPv6 networks who want to access your content. However, if you're using signed URLs or signed cookies to restrict access to your content, and if you're using a custom policy that includes the ``IpAddress`` parameter to restrict the IP addresses that can access your content, don't enable IPv6. If you want to restrict access to some content by IP address and not restrict access to other content (or restrict access but not by IP address), you can create two distributions. For more information, see [Creating a Signed URL Using a Custom Policy](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-creating-signed-url-custom-policy.html) in the *Amazon CloudFront Developer Guide*.\n If you're using an R53AWSIntlong alias resource record set to route traffic to your CloudFront distribution, you need to create a second alias resource record set when both of the following are true:\n + You enable IPv6 for the distribution\n + You're using alternate domain names in the URLs for your objects\n \n For more information, see [Routing Traffic to an Amazon CloudFront Web Distribution by Using Your Domain Name](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-cloudfront-distribution.html) in the *Developer Guide*.\n If you created a CNAME resource record set, either with R53AWSIntlong or with another DNS service, you don't need to make any changes. A CNAME record will route traffic to your distribution regardless of the IP address format of the viewer request."
},
"logging": {
"$ref": "#/types/aws-native:cloudfront:DistributionLogging",
@@ -90562,7 +91999,7 @@
},
"webAclId": {
"type": "string",
- "description": "A unique identifier that specifies the WAF web ACL, if any, to associate with this distribution. To specify a web ACL created using the latest version of WAF, use the ACL ARN, for example ``arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/473e64fd-f30b-4765-81a0-62ad96dd167a``. To specify a web ACL created using WAF Classic, use the ACL ID, for example ``473e64fd-f30b-4765-81a0-62ad96dd167a``.\n WAF is a web application firewall that lets you monitor the HTTP and HTTPS requests that are forwarded to CloudFront, and lets you control access to your content. Based on conditions that you specify, such as the IP addresses that requests originate from or the values of query strings, CloudFront responds to requests either with the requested content or with an HTTP 403 status code (Forbidden). You can also configure CloudFront to return a custom error page when a request is blocked. For more information about WAF, see the [Developer Guide](https://docs.aws.amazon.com/waf/latest"
+ "description": "A unique identifier that specifies the WAF web ACL, if any, to associate with this distribution. To specify a web ACL created using the latest version of WAF, use the ACL ARN, for example ``arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/473e64fd-f30b-4765-81a0-62ad96dd167a``. To specify a web ACL created using WAF Classic, use the ACL ID, for example ``473e64fd-f30b-4765-81a0-62ad96dd167a``.\n WAF is a web application firewall that lets you monitor the HTTP and HTTPS requests that are forwarded to CloudFront, and lets you control access to your content. Based on conditions that you specify, such as the IP addresses that requests originate from or the values of query strings, CloudFront responds to requests either with the requested content or with an HTTP 403 status code (Forbidden). You can also configure CloudFront to return a custom error page when a request is blocked. For more information about WAF, see the [Developer Guide](https://docs.aws.amazon.com/waf/latest/developerguide/what-is-aws-waf.html)."
}
},
"irreversibleNames": {
@@ -90577,14 +92014,14 @@
"properties": {
"forward": {
"type": "string",
- "description": "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send cookies to the origin but not include them in the cache key, use origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n Specifies which cookies to forward to the origin for this cache behavior: all, none, or the list of cookies specified in the ``WhitelistedNames`` complex type.\n Amazon S3 doesn't process cookies. When the cache behavior is forw"
+ "description": "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send cookies to the origin but not include them in the cache key, use origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n Specifies which cookies to forward to the origin for this cache behavior: all, none, or the list of cookies specified in the ``WhitelistedNames`` complex type.\n Amazon S3 doesn't process cookies. When the cache behavior is forwarding requests to an Amazon S3 origin, specify none for the ``Forward`` element."
},
"whitelistedNames": {
"type": "array",
"items": {
"type": "string"
},
- "description": "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send cookies to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n Required if you specify ``whitelist`` for the value of ``Forward``. A complex type that specifies how many different cookies you want CloudFront to forward to the origin for this cache behavior and, if you want to forward se"
+ "description": "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send cookies to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n Required if you specify ``whitelist`` for the value of ``Forward``. A complex type that specifies how many different cookies you want CloudFront to forward to the origin for this cache behavior and, if you want to forward selected cookies, the names of those cookies.\n If you specify ``all`` or ``none`` for the value of ``Forward``, omit ``WhitelistedNames``. If you change the value of ``Forward`` from ``whitelist`` to ``all`` or ``none`` and you don't delete the ``WhitelistedNames`` element and its child elements, CloudFront deletes them automatically.\n For the current limit on the number of cookie names that you can whitelist for each cache behavior, see [CloudFront Limits](https://docs.aws.amazon.com/general/latest/gr/xrefaws_service_limits.html#limits_cloudfront) in the *General Reference*."
}
}
},
@@ -90605,7 +92042,7 @@
},
"responsePagePath": {
"type": "string",
- "description": "The path to the custom error page that you want CloudFront to return to a viewer when your origin returns the HTTP status code specified by ``ErrorCode``, for example, ``/4xx-errors/403-forbidden.html``. If you want to store your objects and your custom error pages in different locations, your distribution must include a cache behavior for which the following is true:\n + The value of ``PathPattern`` matches the path to your custom error messages. For example, suppose you saved custom error pages for 4xx errors in an Amazon S3 bucket in a directory named ``/4xx-errors``. Your distribution must include a cache behavior for which the path pattern routes requests for your custom error pages to that location, for example, ``/4xx-errors/*``.\n + The value of ``TargetOriginId`` specifies the value of the ``ID`` element for the origin that contains your custom error pages.\n \n If you specify a value for ``ResponsePagePath``, you must also specify a value for ``ResponseCode``.\n We recommend "
+ "description": "The path to the custom error page that you want CloudFront to return to a viewer when your origin returns the HTTP status code specified by ``ErrorCode``, for example, ``/4xx-errors/403-forbidden.html``. If you want to store your objects and your custom error pages in different locations, your distribution must include a cache behavior for which the following is true:\n + The value of ``PathPattern`` matches the path to your custom error messages. For example, suppose you saved custom error pages for 4xx errors in an Amazon S3 bucket in a directory named ``/4xx-errors``. Your distribution must include a cache behavior for which the path pattern routes requests for your custom error pages to that location, for example, ``/4xx-errors/*``.\n + The value of ``TargetOriginId`` specifies the value of the ``ID`` element for the origin that contains your custom error pages.\n \n If you specify a value for ``ResponsePagePath``, you must also specify a value for ``ResponseCode``.\n We recommend that you store custom error pages in an Amazon S3 bucket. If you store custom error pages on an HTTP server and the server starts to return 5xx errors, CloudFront can't get the files that you want to return to viewers because the origin server is unavailable."
}
},
"irreversibleNames": {
@@ -90676,7 +92113,7 @@
},
"defaultTtl": {
"type": "number",
- "description": "This field is deprecated. We recommend that you use the ``DefaultTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The default amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide"
+ "description": "This field is deprecated. We recommend that you use the ``DefaultTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The default amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*."
},
"fieldLevelEncryptionId": {
"type": "string",
@@ -90684,7 +92121,7 @@
},
"forwardedValues": {
"$ref": "#/types/aws-native:cloudfront:DistributionForwardedValues",
- "description": "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field. For more information, see [Working with policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/working-with-policies.html) in the *Amazon CloudFront Developer Guide*.\n If you want to include values in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n If you want to send values to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-r"
+ "description": "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field. For more information, see [Working with policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/working-with-policies.html) in the *Amazon CloudFront Developer Guide*.\n If you want to include values in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n If you want to send values to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) or [Using the managed origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-origin-request-policies.html) in the *Amazon CloudFront Developer Guide*.\n A ``DefaultCacheBehavior`` must include either a ``CachePolicyId`` or ``ForwardedValues``. We recommend that you use a ``CachePolicyId``.\n A complex type that specifies how CloudFront handles query strings, cookies, and HTTP headers."
},
"functionAssociations": {
"type": "array",
@@ -90702,11 +92139,11 @@
},
"maxTtl": {
"type": "number",
- "description": "This field is deprecated. We recommend that you use the ``MaxTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The maximum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration."
+ "description": "This field is deprecated. We recommend that you use the ``MaxTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The maximum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*."
},
"minTtl": {
"type": "number",
- "description": "This field is deprecated. We recommend that you use the ``MinTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*.\n You must specify ``0`` for ``MinTTL`` if you configure CloudFront to forward all headers to your origin (under ``He"
+ "description": "This field is deprecated. We recommend that you use the ``MinTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*.\n You must specify ``0`` for ``MinTTL`` if you configure CloudFront to forward all headers to your origin (under ``Headers``, if you specify ``1`` for ``Quantity`` and ``*`` for ``Name``)."
},
"originRequestPolicyId": {
"type": "string",
@@ -90744,7 +92181,7 @@
},
"viewerProtocolPolicy": {
"type": "string",
- "description": "The protocol that viewers can use to access the files in the origin specified by ``TargetOriginId`` when a request matches the path pattern in ``PathPattern``. You can specify the following options:\n + ``allow-all``: Viewers can use HTTP or HTTPS.\n + ``redirect-to-https``: If a viewer submits an HTTP request, CloudFront returns an HTTP status code of 301 (Moved Permanently) to the viewer along with the HTTPS URL. The viewer then resubmits the request using the new URL.\n + ``https-only``: If a viewer sends an HTTP request, CloudFront returns an HTTP status code of 403 (Forbidden).\n \n For more information about requiring the HTTPS protocol, see [Requiring HTTPS Between Viewers and CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https-viewers-to-cloudfront.html) in the *Amazon CloudFront Developer Guide*.\n The only way to guarantee that viewers retrieve an object that was fetched from the origin using HTTPS is never to use any other protocol"
+ "description": "The protocol that viewers can use to access the files in the origin specified by ``TargetOriginId`` when a request matches the path pattern in ``PathPattern``. You can specify the following options:\n + ``allow-all``: Viewers can use HTTP or HTTPS.\n + ``redirect-to-https``: If a viewer submits an HTTP request, CloudFront returns an HTTP status code of 301 (Moved Permanently) to the viewer along with the HTTPS URL. The viewer then resubmits the request using the new URL.\n + ``https-only``: If a viewer sends an HTTP request, CloudFront returns an HTTP status code of 403 (Forbidden).\n \n For more information about requiring the HTTPS protocol, see [Requiring HTTPS Between Viewers and CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https-viewers-to-cloudfront.html) in the *Amazon CloudFront Developer Guide*.\n The only way to guarantee that viewers retrieve an object that was fetched from the origin using HTTPS is never to use any other protocol to fetch the object. If you have recently changed from HTTP to HTTPS, we recommend that you clear your objects' cache because cached objects are protocol agnostic. That means that an edge location will return an object from the cache regardless of whether the current request protocol matches the protocol used previously. For more information, see [Managing Cache Expiration](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*."
}
},
"irreversibleNames": {
@@ -90758,18 +92195,18 @@
"properties": {
"cookies": {
"$ref": "#/types/aws-native:cloudfront:DistributionCookies",
- "description": "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send cookies to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n A complex type that specifies whether you want CloudFront to forward cookies to the origin and, if so, which ones. For more information about forwarding cookies to the origin, see [How CloudFront Forwards, Caches, and Logs C"
+ "description": "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send cookies to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n A complex type that specifies whether you want CloudFront to forward cookies to the origin and, if so, which ones. For more information about forwarding cookies to the origin, see [How CloudFront Forwards, Caches, and Logs Cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Cookies.html) in the *Amazon CloudFront Developer Guide*."
},
"headers": {
"type": "array",
"items": {
"type": "string"
},
- "description": "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include headers in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send headers to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n A complex type that specifies the ``Headers``, if any, that you want CloudFront to forward to the origin for this cache behavior (whitelisted headers). For the headers that you specify, CloudFront also caches separate versio"
+ "description": "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include headers in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send headers to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n A complex type that specifies the ``Headers``, if any, that you want CloudFront to forward to the origin for this cache behavior (whitelisted headers). For the headers that you specify, CloudFront also caches separate versions of a specified object that is based on the header values in viewer requests.\n For more information, see [Caching Content Based on Request Headers](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/header-caching.html) in the *Amazon CloudFront Developer Guide*."
},
"queryString": {
"type": "boolean",
- "description": "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include query strings in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send query strings to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n Indicates whether you want CloudFront to forward query strings to the origin that is associated with this cache behavior and cache based on the query string parameters. CloudFront behavior depends on the value of"
+ "description": "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include query strings in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send query strings to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n Indicates whether you want CloudFront to forward query strings to the origin that is associated with this cache behavior and cache based on the query string parameters. CloudFront behavior depends on the value of ``QueryString`` and on the values that you specify for ``QueryStringCacheKeys``, if any:\n If you specify true for ``QueryString`` and you don't specify any values for ``QueryStringCacheKeys``, CloudFront forwards all query string parameters to the origin and caches based on all query string parameters. Depending on how many query string parameters and values you have, this can adversely affect performance because CloudFront must forward more requests to the origin.\n If you specify true for ``QueryString`` and you specify one or more values for ``QueryStringCacheKeys``, CloudFront forwards all query string parameters to the origin, but it only caches based on the query string parameters that you specify.\n If you specify false for ``QueryString``, CloudFront doesn't forward any query string parameters to the origin, and doesn't cache based on query string parameters.\n For more information, see [Configuring CloudFront to Cache Based on Query String Parameters](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/QueryStringParameters.html) in the *Amazon CloudFront Developer Guide*."
},
"queryStringCacheKeys": {
"type": "array",
@@ -91050,7 +92487,7 @@
"properties": {
"originAccessIdentity": {
"type": "string",
- "description": "The CloudFront origin access identity to associate with the origin. Use an origin access identity to configure the origin so that viewers can *only* access objects in an Amazon S3 bucket through CloudFront. The format of the value is:\n origin-access-identity/cloudfront/*ID-of-origin-access-identity* \n where ``ID-of-origin-access-identity`` is the value that CloudFront returned in the ``ID`` element when you created the origin access identity.\n If you want viewers to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty ``OriginAccessIdentity`` element.\n To delete the origin access identity from an existing distribution, update the distribution configuration and include an empty ``OriginAccessIdentity`` element.\n To replace the origin access identity, update the distribution configuration and specify the new origin access identity.\n For more information about the origin access identity, see [Serving Private Content through CloudFront](https://d"
+ "description": "The CloudFront origin access identity to associate with the origin. Use an origin access identity to configure the origin so that viewers can *only* access objects in an Amazon S3 bucket through CloudFront. The format of the value is:\n origin-access-identity/cloudfront/*ID-of-origin-access-identity* \n where ``ID-of-origin-access-identity`` is the value that CloudFront returned in the ``ID`` element when you created the origin access identity.\n If you want viewers to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty ``OriginAccessIdentity`` element.\n To delete the origin access identity from an existing distribution, update the distribution configuration and include an empty ``OriginAccessIdentity`` element.\n To replace the origin access identity, update the distribution configuration and specify the new origin access identity.\n For more information about the origin access identity, see [Serving Private Content through CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) in the *Amazon CloudFront Developer Guide*."
}
}
},
@@ -91100,11 +92537,11 @@
},
"minimumProtocolVersion": {
"type": "string",
- "description": "If the distribution uses ``Aliases`` (alternate domain names or CNAMEs), specify the security policy that you want CloudFront to use for HTTPS connections with viewers. The security policy determines two settings:\n + The minimum SSL/TLS protocol that CloudFront can use to communicate with viewers.\n + The ciphers that CloudFront can use to encrypt the content that it returns to viewers.\n \n For more information, see [Security Policy](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValues-security-policy) and [Supported Protocols and Ciphers Between Viewers and CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/secure-connections-supported-viewer-protocols-ciphers.html#secure-connections-supported-ciphers) in the *Amazon CloudFront Developer Guide*.\n On the CloudFront console, this setting is called *Security Policy*.\n When you're using SNI only (you set ``SSLSupportMethod`` to ``sni-onl"
+ "description": "If the distribution uses ``Aliases`` (alternate domain names or CNAMEs), specify the security policy that you want CloudFront to use for HTTPS connections with viewers. The security policy determines two settings:\n + The minimum SSL/TLS protocol that CloudFront can use to communicate with viewers.\n + The ciphers that CloudFront can use to encrypt the content that it returns to viewers.\n \n For more information, see [Security Policy](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValues-security-policy) and [Supported Protocols and Ciphers Between Viewers and CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/secure-connections-supported-viewer-protocols-ciphers.html#secure-connections-supported-ciphers) in the *Amazon CloudFront Developer Guide*.\n On the CloudFront console, this setting is called *Security Policy*.\n When you're using SNI only (you set ``SSLSupportMethod`` to ``sni-only``), you must specify ``TLSv1`` or higher. (In CloudFormation, the field name is ``SslSupportMethod``. Note the different capitalization.)\n If the distribution uses the CloudFront domain name such as ``d111111abcdef8.cloudfront.net`` (you set ``CloudFrontDefaultCertificate`` to ``true``), CloudFront automatically sets the security policy to ``TLSv1`` regardless of the value that you set here."
},
"sslSupportMethod": {
"type": "string",
- "description": "In CloudFormation, this field name is ``SslSupportMethod``. Note the different capitalization.\n If the distribution uses ``Aliases`` (alternate domain names or CNAMEs), specify which viewers the distribution accepts HTTPS connections from.\n + ``sni-only`` – The distribution accepts HTTPS connections from only viewers that support [server name indication (SNI)](https://docs.aws.amazon.com/https://en.wikipedia.org/wiki/Server_Name_Indication). This is recommended. Most browsers and clients support SNI.\n + ``vip`` – The distribution accepts HTTPS connections from all viewers including those that don't support SNI. This is not recommended, and results in additional monthly charges from CloudFront.\n + ``static-ip`` - Do not specify this value unless your distribution has been enabled for this feature by the CloudFront team. If you have a use case that requires static IP addresses for a distribution, contact CloudFront through the [Center](https://docs.aws.amazon.com/support/home)."
+ "description": "In CloudFormation, this field name is ``SslSupportMethod``. Note the different capitalization.\n If the distribution uses ``Aliases`` (alternate domain names or CNAMEs), specify which viewers the distribution accepts HTTPS connections from.\n + ``sni-only`` – The distribution accepts HTTPS connections from only viewers that support [server name indication (SNI)](https://docs.aws.amazon.com/https://en.wikipedia.org/wiki/Server_Name_Indication). This is recommended. Most browsers and clients support SNI.\n + ``vip`` – The distribution accepts HTTPS connections from all viewers including those that don't support SNI. This is not recommended, and results in additional monthly charges from CloudFront.\n + ``static-ip`` - Do not specify this value unless your distribution has been enabled for this feature by the CloudFront team. If you have a use case that requires static IP addresses for a distribution, contact CloudFront through the [Center](https://docs.aws.amazon.com/support/home).\n \n If the distribution uses the CloudFront domain name such as ``d111111abcdef8.cloudfront.net``, don't set a value for this field."
}
}
},
@@ -91980,6 +93417,62 @@
}
}
},
+ "aws-native:codeartifact:PackageGroupOriginConfiguration": {
+ "type": "object",
+ "properties": {
+ "restrictions": {
+ "$ref": "#/types/aws-native:codeartifact:PackageGroupRestrictions",
+ "description": "The origin configuration that is applied to the package group."
+ }
+ }
+ },
+ "aws-native:codeartifact:PackageGroupRestrictionType": {
+ "type": "object",
+ "properties": {
+ "repositories": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "restrictionMode": {
+ "$ref": "#/types/aws-native:codeartifact:PackageGroupRestrictionTypeRestrictionMode"
+ }
+ }
+ },
+ "aws-native:codeartifact:PackageGroupRestrictionTypeRestrictionMode": {
+ "type": "string"
+ },
+ "aws-native:codeartifact:PackageGroupRestrictions": {
+ "type": "object",
+ "properties": {
+ "externalUpstream": {
+ "$ref": "#/types/aws-native:codeartifact:PackageGroupRestrictionType",
+ "description": "The external upstream restriction determines if new package versions can be ingested or retained from external connections."
+ },
+ "internalUpstream": {
+ "$ref": "#/types/aws-native:codeartifact:PackageGroupRestrictionType",
+ "description": "The internal upstream restriction determines if new package versions can be ingested or retained from upstream repositories."
+ },
+ "publish": {
+ "$ref": "#/types/aws-native:codeartifact:PackageGroupRestrictionType",
+ "description": "The publish restriction determines if new package versions can be published."
+ }
+ }
+ },
+ "aws-native:codeartifact:PackageGroupTag": {
+ "type": "object",
+ "properties": {
+ "key": {
+ "type": "string",
+ "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. "
+ },
+ "value": {
+ "type": "string",
+ "description": "The value for the tag. You can specify a value that is 1 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. "
+ }
+ }
+ },
"aws-native:codeartifact:RepositoryTag": {
"type": "object",
"properties": {
@@ -92012,6 +93505,19 @@
}
}
},
+ "aws-native:codeconnections:ConnectionTag": {
+ "type": "object",
+ "properties": {
+ "key": {
+ "type": "string",
+ "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. "
+ },
+ "value": {
+ "type": "string",
+ "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. "
+ }
+ }
+ },
"aws-native:codedeploy:ApplicationTag": {
"type": "object",
"properties": {
@@ -92241,6 +93747,9 @@
}
}
},
+ "aws-native:codestarconnections:RepositoryLinkProviderType": {
+ "type": "string"
+ },
"aws-native:codestarconnections:RepositoryLinkTag": {
"type": "object",
"properties": {
@@ -92254,6 +93763,15 @@
}
}
},
+ "aws-native:codestarconnections:SyncConfigurationProviderType": {
+ "type": "string"
+ },
+ "aws-native:codestarconnections:SyncConfigurationPublishDeploymentStatus": {
+ "type": "string"
+ },
+ "aws-native:codestarconnections:SyncConfigurationTriggerResourceUpdateOn": {
+ "type": "string"
+ },
"aws-native:codestarnotifications:NotificationRuleDetailType": {
"type": "string"
},
@@ -94268,6 +95786,22 @@
}
}
},
+ "aws-native:connect:SecurityProfileApplication": {
+ "type": "object",
+ "properties": {
+ "applicationPermissions": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The permissions that the agent is granted on the application"
+ },
+ "namespace": {
+ "type": "string",
+ "description": "Namespace of the application that you want to give access to."
+ }
+ }
+ },
"aws-native:connect:SecurityProfileTag": {
"type": "object",
"properties": {
@@ -98370,6 +99904,12 @@
"region": {
"type": "string"
},
+ "replicaStreamSpecification": {
+ "$ref": "#/types/aws-native:dynamodb:GlobalTableReplicaStreamSpecification"
+ },
+ "resourcePolicy": {
+ "$ref": "#/types/aws-native:dynamodb:GlobalTableResourcePolicy"
+ },
"sseSpecification": {
"$ref": "#/types/aws-native:dynamodb:GlobalTableReplicaSseSpecification"
},
@@ -98398,6 +99938,22 @@
"kmsMasterKeyId": "KMSMasterKeyId"
}
},
+ "aws-native:dynamodb:GlobalTableReplicaStreamSpecification": {
+ "type": "object",
+ "properties": {
+ "resourcePolicy": {
+ "$ref": "#/types/aws-native:dynamodb:GlobalTableResourcePolicy"
+ }
+ }
+ },
+ "aws-native:dynamodb:GlobalTableResourcePolicy": {
+ "type": "object",
+ "properties": {
+ "policyDocument": {
+ "$ref": "pulumi.json#/Any"
+ }
+ }
+ },
"aws-native:dynamodb:GlobalTableSseSpecification": {
"type": "object",
"properties": {
@@ -98654,6 +100210,14 @@
}
}
},
+ "aws-native:dynamodb:TableResourcePolicy": {
+ "type": "object",
+ "properties": {
+ "policyDocument": {
+ "$ref": "pulumi.json#/Any"
+ }
+ }
+ },
"aws-native:dynamodb:TableS3BucketSource": {
"type": "object",
"properties": {
@@ -98701,6 +100265,9 @@
"aws-native:dynamodb:TableStreamSpecification": {
"type": "object",
"properties": {
+ "resourcePolicy": {
+ "$ref": "#/types/aws-native:dynamodb:TableResourcePolicy"
+ },
"streamViewType": {
"type": "string",
"description": "When an item in the table is modified, ``StreamViewType`` determines what information is written to the stream for this table. Valid values for ``StreamViewType`` are:\n + ``KEYS_ONLY`` - Only the key attributes of the modified item are written to the stream.\n + ``NEW_IMAGE`` - The entire item, as it appears after it was modified, is written to the stream.\n + ``OLD_IMAGE`` - The entire item, as it appeared before it was modified, is written to the stream.\n + ``NEW_AND_OLD_IMAGES`` - Both the new and the old item images of the item are written to the stream."
@@ -99690,10 +101257,12 @@
"type": "object",
"properties": {
"key": {
- "type": "string"
+ "type": "string",
+ "description": "The tag key."
},
"value": {
- "type": "string"
+ "type": "string",
+ "description": "The tag value."
}
}
},
@@ -100048,7 +101617,7 @@
},
"instanceRequirements": {
"$ref": "#/types/aws-native:ec2:LaunchTemplateInstanceRequirements",
- "description": "The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes.\n You must specify ``VCpuCount`` and ``MemoryMiB``. All other attributes are optional. Any unspecified optional attribute is set to its default.\n When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values.\n To limit the list of instance types from which Amazon EC2 can identify matching instance types, you can use one of the following parameters, but not both in the same request:\n + ``AllowedInstanceTypes`` - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.\n + ``ExcludedInstanceTypes`` - The instance types to exclude from the list, even if they match your specified attributes.\n \n If you specify ``InstanceReq"
+ "description": "The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes.\n You must specify ``VCpuCount`` and ``MemoryMiB``. All other attributes are optional. Any unspecified optional attribute is set to its default.\n When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values.\n To limit the list of instance types from which Amazon EC2 can identify matching instance types, you can use one of the following parameters, but not both in the same request:\n + ``AllowedInstanceTypes`` - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.\n + ``ExcludedInstanceTypes`` - The instance types to exclude from the list, even if they match your specified attributes.\n \n If you specify ``InstanceRequirements``, you can't specify ``InstanceType``.\n Attribute-based instance type selection is only supported when using Auto Scaling groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in the [launch instance wizard](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-instance-wizard.html), or with the [RunInstances](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html) API or [AWS::EC2::Instance](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html) AWS CloudFormation resource, you can't specify ``InstanceRequirements``.\n For more information, see [Attribute-based instance type selection for EC2 Fleet](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html), [Attribute-based instance type selection for Spot Fleet](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-attribute-based-instance-type-selection.html), and [Spot placement score](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-placement-score.html) in the *Amazon EC2 User Guide*."
},
"instanceType": {
"type": "string",
@@ -100160,7 +101729,7 @@
},
"volumeType": {
"type": "string",
- "description": "The volume type. For more information, see [Amazon EBS volume types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) in the *Amazon Elastic Compute Cloud User Guide*."
+ "description": "The volume type. For more information, see [Amazon EBS volume types](https://docs.aws.amazon.com/ebs/latest/userguide/ebs-volume-types.html) in the *Amazon EBS User Guide*."
}
}
},
@@ -100337,7 +101906,7 @@
},
"maxSpotPriceAsPercentageOfOptimalOnDemandPrice": {
"type": "integer",
- "description": "[Price protection] The price protection threshold for Spot Instances, as a percentage of an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold.\n The parameter accepts an integer, which Amazon EC2 interprets as a percentage.\n To indicate no price protection threshold, specify a high value, such as ``999999``.\n If you set ``DesiredCapacityType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is based on the per vCPU or per memory price instead of the per instanc"
+ "description": "[Price protection] The price protection threshold for Spot Instances, as a percentage of an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold.\n The parameter accepts an integer, which Amazon EC2 interprets as a percentage.\n If you set ``DesiredCapacityType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is based on the per vCPU or per memory price instead of the per instance price.\n Only one of ``SpotMaxPricePercentageOverLowestPrice`` or ``MaxSpotPriceAsPercentageOfOptimalOnDemandPrice`` can be specified. If you don't specify either, Amazon EC2 will automatically apply optimal price protection to consistently select from a wide range of instance types. To indicate no price protection threshold for Spot Instances, meaning you want to consider all instance types that match your attributes, include one of these parameters and specify a high value, such as ``999999``."
},
"memoryGiBPerVCpu": {
"$ref": "#/types/aws-native:ec2:LaunchTemplateMemoryGiBPerVCpu",
@@ -100357,7 +101926,7 @@
},
"onDemandMaxPricePercentageOverLowestPrice": {
"type": "integer",
- "description": "[Price protection] The price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold.\n The parameter accepts an integer, which Amazon EC2 interprets as a percentage.\n To turn off price protection, specify a high value, such as ``999999``.\n This parameter is not supported for [GetSpotPlacementScores](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html) and [GetInstanceTypesFromInstanceRequirements](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html).\n If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is applied based on the per-"
+ "description": "[Price protection] The price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold.\n The parameter accepts an integer, which Amazon EC2 interprets as a percentage.\n To turn off price protection, specify a high value, such as ``999999``.\n This parameter is not supported for [GetSpotPlacementScores](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html) and [GetInstanceTypesFromInstanceRequirements](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html).\n If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price.\n Default: ``20``"
},
"requireHibernateSupport": {
"type": "boolean",
@@ -100365,7 +101934,7 @@
},
"spotMaxPricePercentageOverLowestPrice": {
"type": "integer",
- "description": "[Price protection] The price protection threshold for Spot Instances, as a percentage higher than an identified Spot price. The identified Spot price is the Spot price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified Spot price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose Spot price exceeds your specified threshold.\n The parameter accepts an integer, which Amazon EC2 interprets as a percentage.\n To indicate no price protection threshold, specify a high value, such as ``999999``.\n If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is applied based on the per-vCPU or per-memory price i"
+ "description": "[Price protection] The price protection threshold for Spot Instances, as a percentage higher than an identified Spot price. The identified Spot price is the Spot price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified Spot price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose Spot price exceeds your specified threshold.\n The parameter accepts an integer, which Amazon EC2 interprets as a percentage.\n If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price.\n This parameter is not supported for [GetSpotPlacementScores](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html) and [GetInstanceTypesFromInstanceRequirements](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html).\n Only one of ``SpotMaxPricePercentageOverLowestPrice`` or ``MaxSpotPriceAsPercentageOfOptimalOnDemandPrice`` can be specified. If you don't specify either, Amazon EC2 will automatically apply optimal price protection to consistently select from a wide range of instance types. To indicate no price protection threshold for Spot Instances, meaning you want to consider all instance types that match your attributes, include one of these parameters and specify a high value, such as ``999999``.\n Default: ``100``"
},
"totalLocalStorageGb": {
"$ref": "#/types/aws-native:ec2:LaunchTemplateTotalLocalStorageGb",
@@ -100422,9 +101991,6 @@
"autoRecovery": {
"type": "string",
"description": "Disables the automatic recovery behavior of your instance or sets it to default."
- },
- "rebootMigration": {
- "type": "string"
}
}
},
@@ -100713,7 +102279,7 @@
},
"spotInstanceType": {
"type": "string",
- "description": "The Spot Instance request type.\n If you are using Spot Instances with an Auto Scaling group, use ``one-time`` requests, as the Amazon EC2 Auto Scaling service handles requesting new Spot Instances whenever the group is below its desired capacity."
+ "description": "The Spot Instance request type.\n If you are using Spot Instances with an Auto Scaling group, use ``one-time`` requests, as the ASlong service handles requesting new Spot Instances whenever the group is below its desired capacity."
},
"validUntil": {
"type": "string",
@@ -104629,11 +106195,14 @@
"type": "object",
"properties": {
"status": {
- "type": "string",
+ "$ref": "#/types/aws-native:efs:FileSystemBackupPolicyStatus",
"description": "Set the backup policy status for the file system.\n + *ENABLED* - Turns automatic backups on for the file system. \n + *DISABLED* - Turns automatic backups off for the file system."
}
}
},
+ "aws-native:efs:FileSystemBackupPolicyStatus": {
+ "type": "string"
+ },
"aws-native:efs:FileSystemElasticFileSystemTag": {
"type": "object",
"properties": {
@@ -105226,9 +106795,13 @@
"type": "integer",
"description": "The maximum cached data capacity of the Serverless Cache."
},
+ "minimum": {
+ "type": "integer",
+ "description": "The minimum cached data capacity of the Serverless Cache."
+ },
"unit": {
"$ref": "#/types/aws-native:elasticache:ServerlessCacheDataStorageUnit",
- "description": "The unix of cached data capacity of the Serverless Cache."
+ "description": "The unit of cached data capacity of the Serverless Cache."
}
}
},
@@ -105241,6 +106814,10 @@
"maximum": {
"type": "integer",
"description": "The maximum ECPU per second of the Serverless Cache."
+ },
+ "minimum": {
+ "type": "integer",
+ "description": "The minimum ECPU per second of the Serverless Cache."
}
}
},
@@ -106575,16 +108152,22 @@
"properties": {
"inputSourceArn": {
"type": "string",
- "description": "An Glue table ARN for the input source table"
+ "description": "An Glue table ARN for the input source table or IdNamespace ARN"
},
"schemaArn": {
"type": "string"
+ },
+ "type": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowInputSourceType"
}
},
"irreversibleNames": {
"inputSourceArn": "InputSourceARN"
}
},
+ "aws-native:entityresolution:IdMappingWorkflowInputSourceType": {
+ "type": "string"
+ },
"aws-native:entityresolution:IdMappingWorkflowIntermediateSourceConfiguration": {
"type": "object",
"properties": {
@@ -115760,10 +117343,24 @@
"greengrassV2": {
"$ref": "#/types/aws-native:iotsitewise:GatewayGreengrassV2",
"description": "A gateway that runs on AWS IoT Greengrass V2."
+ },
+ "siemensIe": {
+ "$ref": "#/types/aws-native:iotsitewise:GatewaySiemensIe",
+ "description": "A gateway that runs on Siemens Industrial Edge."
}
},
"irreversibleNames": {
- "greengrassV2": "GreengrassV2"
+ "greengrassV2": "GreengrassV2",
+ "siemensIe": "SiemensIE"
+ }
+ },
+ "aws-native:iotsitewise:GatewaySiemensIe": {
+ "type": "object",
+ "properties": {
+ "iotCoreThingName": {
+ "type": "string",
+ "description": "The name of the IoT Core Thing."
+ }
}
},
"aws-native:iotsitewise:GatewayTag": {
@@ -117312,6 +118909,74 @@
"s3": "S3"
}
},
+ "aws-native:kafkaconnect:CustomPluginContentType": {
+ "type": "string"
+ },
+ "aws-native:kafkaconnect:CustomPluginFileDescription": {
+ "type": "object",
+ "properties": {
+ "fileMd5": {
+ "type": "string",
+ "description": "The hex-encoded MD5 checksum of the custom plugin file. You can use it to validate the file."
+ },
+ "fileSize": {
+ "type": "integer",
+ "description": "The size in bytes of the custom plugin file. You can use it to validate the file."
+ }
+ }
+ },
+ "aws-native:kafkaconnect:CustomPluginLocation": {
+ "type": "object",
+ "properties": {
+ "s3Location": {
+ "$ref": "#/types/aws-native:kafkaconnect:CustomPluginS3Location"
+ }
+ },
+ "irreversibleNames": {
+ "s3Location": "S3Location"
+ }
+ },
+ "aws-native:kafkaconnect:CustomPluginS3Location": {
+ "type": "object",
+ "properties": {
+ "bucketArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) of an S3 bucket."
+ },
+ "fileKey": {
+ "type": "string",
+ "description": "The file key for an object in an S3 bucket."
+ },
+ "objectVersion": {
+ "type": "string",
+ "description": "The version of an object in an S3 bucket."
+ }
+ }
+ },
+ "aws-native:kafkaconnect:CustomPluginTag": {
+ "type": "object",
+ "properties": {
+ "key": {
+ "type": "string",
+ "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -."
+ },
+ "value": {
+ "type": "string",
+ "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -."
+ }
+ }
+ },
+ "aws-native:kafkaconnect:WorkerConfigurationTag": {
+ "type": "object",
+ "properties": {
+ "key": {
+ "type": "string"
+ },
+ "value": {
+ "type": "string"
+ }
+ }
+ },
"aws-native:kendra:DataSourceAccessControlListConfiguration": {
"type": "object",
"properties": {
@@ -123629,12 +125294,10 @@
"type": "object",
"properties": {
"key": {
- "type": "string",
- "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., :, /, =, +, - and @."
+ "type": "string"
},
"value": {
- "type": "string",
- "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., :, /, =, +, - and @."
+ "type": "string"
}
}
},
@@ -123643,11 +125306,11 @@
"properties": {
"key": {
"type": "string",
- "description": "The key of the dimension. Maximum length of 255."
+ "description": "The name for the CW metric dimension that the metric filter creates.\n Dimension names must contain only ASCII characters, must include at least one non-whitespace character, and cannot start with a colon (:)."
},
"value": {
"type": "string",
- "description": "The value of the dimension. Maximum length of 255."
+ "description": "The log event field that will contain the value for this dimension. This dimension will only be published for a metric if the value is found in the log event. For example, ``$.eventType`` for JSON log events, or ``$server`` for space-delimited log events."
}
}
},
@@ -123656,30 +125319,30 @@
"properties": {
"defaultValue": {
"type": "number",
- "description": "The value to emit when a filter pattern does not match a log event. This value can be null."
+ "description": "(Optional) The value to emit when a filter pattern does not match a log event. This value can be null."
},
"dimensions": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:logs:MetricFilterDimension"
},
- "description": "Dimensions are the key-value pairs that further define a metric"
+ "description": "The fields to use as dimensions for the metric. One metric filter can include as many as three dimensions.\n Metrics extracted from log events are charged as custom metrics. To prevent unexpected high charges, do not specify high-cardinality fields such as ``IPAddress`` or ``requestID`` as dimensions. Each different value found for a dimension is treated as a separate metric and accrues charges as a separate custom metric. \n CloudWatch Logs disables a metric filter if it generates 1000 different name/value pairs for your specified dimensions within a certain amount of time. This helps to prevent accidental high charges.\n You can also set up a billing alarm to alert you if your charges are higher than expected. For more information, see [Creating a Billing Alarm to Monitor Your Estimated Charges](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/monitor_estimated_charges_with_cloudwatch.html)."
},
"metricName": {
"type": "string",
- "description": "The name of the CloudWatch metric. Metric name must be in ASCII format."
+ "description": "The name of the CloudWatch metric."
},
"metricNamespace": {
"type": "string",
- "description": "The namespace of the CloudWatch metric."
+ "description": "A custom namespace to contain your metric in CloudWatch. Use namespaces to group together metrics that are similar. For more information, see [Namespaces](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Namespace)."
},
"metricValue": {
"type": "string",
- "description": "The value to publish to the CloudWatch metric when a filter pattern matches a log event."
+ "description": "The value that is published to the CloudWatch metric. For example, if you're counting the occurrences of a particular term like ``Error``, specify 1 for the metric value. If you're counting the number of bytes transferred, reference the value that is in the log event by using $. followed by the name of the field that you specified in the filter pattern, such as ``$.size``."
},
"unit": {
"$ref": "#/types/aws-native:logs:MetricFilterMetricTransformationUnit",
- "description": "The unit to assign to the metric. If you omit this, the unit is set as None."
+ "description": "The unit to assign to the metric. If you omit this, the unit is set as ``None``."
}
}
},
@@ -159497,6 +161160,26 @@
}
}
},
+ "aws-native:resiliencehub:ResiliencyPolicyPolicyMap": {
+ "type": "object",
+ "properties": {
+ "az": {
+ "$ref": "#/types/aws-native:resiliencehub:ResiliencyPolicyFailurePolicy"
+ },
+ "hardware": {
+ "$ref": "#/types/aws-native:resiliencehub:ResiliencyPolicyFailurePolicy"
+ },
+ "region": {
+ "$ref": "#/types/aws-native:resiliencehub:ResiliencyPolicyFailurePolicy"
+ },
+ "software": {
+ "$ref": "#/types/aws-native:resiliencehub:ResiliencyPolicyFailurePolicy"
+ }
+ },
+ "irreversibleNames": {
+ "az": "AZ"
+ }
+ },
"aws-native:resiliencehub:ResiliencyPolicyTier": {
"type": "string"
},
@@ -167886,6 +169569,150 @@
}
}
},
+ "aws-native:securitylake:DataLakeEncryptionConfiguration": {
+ "type": "object",
+ "properties": {
+ "kmsKeyId": {
+ "type": "string",
+ "description": "The id of KMS encryption key used by Amazon Security Lake to encrypt the Security Lake object."
+ }
+ }
+ },
+ "aws-native:securitylake:DataLakeExpiration": {
+ "type": "object",
+ "properties": {
+ "days": {
+ "type": "integer"
+ }
+ }
+ },
+ "aws-native:securitylake:DataLakeLifecycleConfiguration": {
+ "type": "object",
+ "properties": {
+ "expiration": {
+ "$ref": "#/types/aws-native:securitylake:DataLakeExpiration"
+ },
+ "transitions": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:securitylake:DataLakeTransitions"
+ },
+ "description": "Provides data storage transition details of Amazon Security Lake object."
+ }
+ }
+ },
+ "aws-native:securitylake:DataLakeReplicationConfiguration": {
+ "type": "object",
+ "properties": {
+ "regions": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "roleArn": {
+ "type": "string",
+ "description": "Replication settings for the Amazon S3 buckets. This parameter uses the AWS Identity and Access Management (IAM) role you created that is managed by Security Lake, to ensure the replication setting is correct."
+ }
+ }
+ },
+ "aws-native:securitylake:DataLakeTag": {
+ "type": "object",
+ "properties": {
+ "key": {
+ "type": "string",
+ "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, `_`, `.`, `/`, `=`, `+`, and `-`."
+ },
+ "value": {
+ "type": "string",
+ "description": "The value for the tag. You can specify a value that is 0 to 256 characters in length."
+ }
+ }
+ },
+ "aws-native:securitylake:DataLakeTransitions": {
+ "type": "object",
+ "properties": {
+ "days": {
+ "type": "integer",
+ "description": "Number of days before data transitions to a different S3 Storage Class in the Amazon Security Lake object."
+ },
+ "storageClass": {
+ "type": "string",
+ "description": "The range of storage classes that you can choose from based on the data access, resiliency, and cost requirements of your workloads."
+ }
+ }
+ },
+ "aws-native:securitylake:SubscriberAccessTypesItem": {
+ "type": "string"
+ },
+ "aws-native:securitylake:SubscriberAwsLogSource": {
+ "type": "object",
+ "properties": {
+ "sourceName": {
+ "type": "string",
+ "description": "The name for a AWS source. This must be a Regionally unique value."
+ },
+ "sourceVersion": {
+ "type": "string",
+ "description": "The version for a AWS source. This must be a Regionally unique value."
+ }
+ }
+ },
+ "aws-native:securitylake:SubscriberCustomLogSource": {
+ "type": "object",
+ "properties": {
+ "sourceName": {
+ "type": "string",
+ "description": "The name for a third-party custom source. This must be a Regionally unique value."
+ },
+ "sourceVersion": {
+ "type": "string",
+ "description": "The version for a third-party custom source. This must be a Regionally unique value."
+ }
+ }
+ },
+ "aws-native:securitylake:SubscriberIdentityProperties": {
+ "type": "object",
+ "properties": {
+ "externalId": {
+ "type": "string",
+ "description": "The external ID used to establish trust relationship with the AWS identity."
+ },
+ "principal": {
+ "type": "string",
+ "description": "The AWS identity principal."
+ }
+ }
+ },
+ "aws-native:securitylake:SubscriberSource0Properties": {
+ "type": "object",
+ "properties": {
+ "awsLogSource": {
+ "$ref": "#/types/aws-native:securitylake:SubscriberAwsLogSource"
+ }
+ }
+ },
+ "aws-native:securitylake:SubscriberSource1Properties": {
+ "type": "object",
+ "properties": {
+ "customLogSource": {
+ "$ref": "#/types/aws-native:securitylake:SubscriberCustomLogSource"
+ }
+ }
+ },
+ "aws-native:securitylake:SubscriberTag": {
+ "type": "object",
+ "properties": {
+ "key": {
+ "type": "string",
+ "description": "The name of the tag. This is a general label that acts as a category for a more specific tag value (value)."
+ },
+ "value": {
+ "type": "string",
+ "description": "The value that is associated with the specified tag key (key). This value acts as a descriptor for the tag key. A tag value cannot be null, but it can be an empty string."
+ }
+ }
+ },
"aws-native:servicecatalog:CloudFormationProvisionedProductAcceptLanguage": {
"type": "string"
},
@@ -173796,6 +175623,12 @@
"flowName"
]
},
+ "aws-native:appintegrations:getApplication": {
+ "cf": "AWS::AppIntegrations::Application",
+ "ids": [
+ "applicationArn"
+ ]
+ },
"aws-native:appintegrations:getDataIntegration": {
"cf": "AWS::AppIntegrations::DataIntegration",
"ids": [
@@ -173932,6 +175765,12 @@
"arn"
]
},
+ "aws-native:aps:getScraper": {
+ "cf": "AWS::APS::Scraper",
+ "ids": [
+ "arn"
+ ]
+ },
"aws-native:aps:getWorkspace": {
"cf": "AWS::APS::Workspace",
"ids": [
@@ -174110,6 +175949,19 @@
"arn"
]
},
+ "aws-native:bedrock:getAgent": {
+ "cf": "AWS::Bedrock::Agent",
+ "ids": [
+ "agentId"
+ ]
+ },
+ "aws-native:bedrock:getAgentAlias": {
+ "cf": "AWS::Bedrock::AgentAlias",
+ "ids": [
+ "agentId",
+ "agentAliasId"
+ ]
+ },
"aws-native:budgets:getBudgetsAction": {
"cf": "AWS::Budgets::BudgetsAction",
"ids": [
@@ -174390,6 +176242,12 @@
"arn"
]
},
+ "aws-native:codeartifact:getPackageGroup": {
+ "cf": "AWS::CodeArtifact::PackageGroup",
+ "ids": [
+ "arn"
+ ]
+ },
"aws-native:codeartifact:getRepository": {
"cf": "AWS::CodeArtifact::Repository",
"ids": [
@@ -174402,6 +176260,12 @@
"arn"
]
},
+ "aws-native:codeconnections:getConnection": {
+ "cf": "AWS::CodeConnections::Connection",
+ "ids": [
+ "connectionArn"
+ ]
+ },
"aws-native:codedeploy:getApplication": {
"cf": "AWS::CodeDeploy::Application",
"ids": [
@@ -175438,12 +177302,6 @@
"transitGatewayRouteTableId"
]
},
- "aws-native:ec2:getTransitGatewayRouteTableAssociation": {
- "cf": "AWS::EC2::TransitGatewayRouteTableAssociation",
- "ids": [
- "id"
- ]
- },
"aws-native:ec2:getTransitGatewayVpcAttachment": {
"cf": "AWS::EC2::TransitGatewayVpcAttachment",
"ids": [
@@ -176748,6 +178606,18 @@
"connectorArn"
]
},
+ "aws-native:kafkaconnect:getCustomPlugin": {
+ "cf": "AWS::KafkaConnect::CustomPlugin",
+ "ids": [
+ "customPluginArn"
+ ]
+ },
+ "aws-native:kafkaconnect:getWorkerConfiguration": {
+ "cf": "AWS::KafkaConnect::WorkerConfiguration",
+ "ids": [
+ "workerConfigurationArn"
+ ]
+ },
"aws-native:kendra:getDataSource": {
"cf": "AWS::Kendra::DataSource",
"ids": [
@@ -178519,6 +180389,25 @@
"standardsSubscriptionArn"
]
},
+ "aws-native:securitylake:getAwsLogSource": {
+ "cf": "AWS::SecurityLake::AwsLogSource",
+ "ids": [
+ "sourceName",
+ "sourceVersion"
+ ]
+ },
+ "aws-native:securitylake:getDataLake": {
+ "cf": "AWS::SecurityLake::DataLake",
+ "ids": [
+ "arn"
+ ]
+ },
+ "aws-native:securitylake:getSubscriber": {
+ "cf": "AWS::SecurityLake::Subscriber",
+ "ids": [
+ "subscriberArn"
+ ]
+ },
"aws-native:servicecatalog:getCloudFormationProvisionedProduct": {
"cf": "AWS::ServiceCatalog::CloudFormationProvisionedProduct",
"ids": [
diff --git a/provider/cmd/pulumi-resource-aws-native/schema.json b/provider/cmd/pulumi-resource-aws-native/schema.json
index e4850e4e5f..083ff37474 100644
--- a/provider/cmd/pulumi-resource-aws-native/schema.json
+++ b/provider/cmd/pulumi-resource-aws-native/schema.json
@@ -40,6 +40,7 @@
"backup": "Backup",
"backupgateway": "BackupGateway",
"batch": "Batch",
+ "bedrock": "Bedrock",
"budgets": "Budgets",
"cassandra": "Cassandra",
"ce": "Ce",
@@ -52,6 +53,7 @@
"cloudwatch": "CloudWatch",
"codeartifact": "CodeArtifact",
"codebuild": "CodeBuild",
+ "codeconnections": "CodeConnections",
"codedeploy": "CodeDeploy",
"codeguruprofiler": "CodeGuruProfiler",
"codegurureviewer": "CodeGuruReviewer",
@@ -193,6 +195,7 @@
"scheduler": "Scheduler",
"secretsmanager": "SecretsManager",
"securityhub": "SecurityHub",
+ "securitylake": "SecurityLake",
"servicecatalog": "ServiceCatalog",
"servicecatalogappregistry": "ServiceCatalogAppRegistry",
"ses": "Ses",
@@ -6947,6 +6950,54 @@
"object"
]
},
+ "aws-native:appintegrations:ApplicationExternalUrlConfig": {
+ "properties": {
+ "accessUrl": {
+ "type": "string"
+ },
+ "approvedOrigins": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "type": "object",
+ "required": [
+ "accessUrl",
+ "approvedOrigins"
+ ]
+ },
+ "aws-native:appintegrations:ApplicationSourceConfigProperties": {
+ "description": "Application source config",
+ "properties": {
+ "externalUrlConfig": {
+ "$ref": "#/types/aws-native:appintegrations:ApplicationExternalUrlConfig"
+ }
+ },
+ "type": "object",
+ "required": [
+ "externalUrlConfig"
+ ]
+ },
+ "aws-native:appintegrations:ApplicationTag": {
+ "description": "A label for tagging Application resources",
+ "properties": {
+ "key": {
+ "type": "string",
+ "description": "A key to identify the tag."
+ },
+ "value": {
+ "type": "string",
+ "description": "Corresponding tag value for the key."
+ }
+ },
+ "type": "object",
+ "required": [
+ "key",
+ "value"
+ ]
+ },
"aws-native:appintegrations:DataIntegrationFileConfiguration": {
"description": "The configuration for what files should be pulled from the source.",
"properties": {
@@ -8826,6 +8877,7 @@
"type": "object"
},
"aws-native:appsync:ResolverMetricsConfig": {
+ "description": "Enables or disables enhanced resolver metrics for specified resolvers. Note that ``MetricsConfig`` won't be used unless the ``resolverLevelMetricsBehavior`` value is set to ``PER_RESOLVER_METRICS``. If the ``resolverLevelMetricsBehavior`` is set to ``FULL_REQUEST_RESOLVER_METRICS`` instead, ``MetricsConfig`` will be ignored. However, you can still set its value.",
"type": "string",
"enum": [
{
@@ -8951,6 +9003,95 @@
"value"
]
},
+ "aws-native:aps:ScraperDestination": {
+ "description": "Scraper metrics destination",
+ "properties": {
+ "ampConfiguration": {
+ "$ref": "#/types/aws-native:aps:ScraperDestinationAmpConfigurationProperties",
+ "description": "Configuration for Amazon Managed Prometheus metrics destination"
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:aps:ScraperDestinationAmpConfigurationProperties": {
+ "description": "Configuration for Amazon Managed Prometheus metrics destination",
+ "properties": {
+ "workspaceArn": {
+ "type": "string",
+ "description": "ARN of an Amazon Managed Prometheus workspace"
+ }
+ },
+ "type": "object",
+ "required": [
+ "workspaceArn"
+ ]
+ },
+ "aws-native:aps:ScraperScrapeConfiguration": {
+ "description": "Scraper configuration",
+ "properties": {
+ "configurationBlob": {
+ "type": "string",
+ "description": "Prometheus compatible scrape configuration in base64 encoded blob format"
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:aps:ScraperSource": {
+ "description": "Scraper metrics source",
+ "properties": {
+ "eksConfiguration": {
+ "$ref": "#/types/aws-native:aps:ScraperSourceEksConfigurationProperties",
+ "description": "Configuration for EKS metrics source"
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:aps:ScraperSourceEksConfigurationProperties": {
+ "description": "Configuration for EKS metrics source",
+ "properties": {
+ "clusterArn": {
+ "type": "string",
+ "description": "ARN of an EKS cluster"
+ },
+ "securityGroupIds": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of security group IDs"
+ },
+ "subnetIds": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of subnet IDs"
+ }
+ },
+ "type": "object",
+ "required": [
+ "clusterArn",
+ "subnetIds"
+ ]
+ },
+ "aws-native:aps:ScraperTag": {
+ "description": "A key-value pair to associate with a resource.",
+ "properties": {
+ "key": {
+ "type": "string",
+ "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -."
+ },
+ "value": {
+ "type": "string",
+ "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -."
+ }
+ },
+ "type": "object",
+ "required": [
+ "key",
+ "value"
+ ]
+ },
"aws-native:aps:WorkspaceLoggingConfiguration": {
"description": "Logging configuration",
"properties": {
@@ -12468,6 +12609,378 @@
},
"type": "object"
},
+ "aws-native:bedrock:AgentActionGroup": {
+ "description": "Contains the information of an Agent Action Group",
+ "properties": {
+ "actionGroupExecutor": {
+ "$ref": "#/types/aws-native:bedrock:AgentActionGroupExecutor"
+ },
+ "actionGroupName": {
+ "type": "string",
+ "description": "Name of the action group"
+ },
+ "actionGroupState": {
+ "$ref": "#/types/aws-native:bedrock:AgentActionGroupState"
+ },
+ "apiSchema": {
+ "oneOf": [
+ {
+ "$ref": "#/types/aws-native:bedrock:AgentApiSchema0Properties"
+ },
+ {
+ "$ref": "#/types/aws-native:bedrock:AgentApiSchema1Properties"
+ }
+ ]
+ },
+ "description": {
+ "type": "string",
+ "description": "Description of action group"
+ },
+ "parentActionGroupSignature": {
+ "$ref": "#/types/aws-native:bedrock:AgentActionGroupSignature"
+ },
+ "skipResourceInUseCheckOnDelete": {
+ "type": "boolean",
+ "description": "Specifies whether to allow deleting action group while it is in use."
+ }
+ },
+ "type": "object",
+ "required": [
+ "actionGroupName"
+ ]
+ },
+ "aws-native:bedrock:AgentActionGroupExecutor": {
+ "properties": {
+ "lambda": {
+ "type": "string",
+ "description": "ARN of a Lambda."
+ }
+ },
+ "type": "object",
+ "required": [
+ "lambda"
+ ]
+ },
+ "aws-native:bedrock:AgentActionGroupSignature": {
+ "description": "Action Group Signature for a BuiltIn Action",
+ "type": "string",
+ "enum": [
+ {
+ "name": "AmazonUserInput",
+ "value": "AMAZON.UserInput"
+ }
+ ]
+ },
+ "aws-native:bedrock:AgentActionGroupState": {
+ "description": "State of the action group",
+ "type": "string",
+ "enum": [
+ {
+ "name": "Enabled",
+ "value": "ENABLED"
+ },
+ {
+ "name": "Disabled",
+ "value": "DISABLED"
+ }
+ ]
+ },
+ "aws-native:bedrock:AgentAliasHistoryEvent": {
+ "description": "History event for an alias for an Agent.",
+ "properties": {
+ "endDate": {
+ "type": "string",
+ "description": "Time Stamp."
+ },
+ "routingConfiguration": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:bedrock:AgentAliasRoutingConfigurationListItem"
+ },
+ "description": "Routing configuration for an Agent alias."
+ },
+ "startDate": {
+ "type": "string",
+ "description": "Time Stamp."
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:bedrock:AgentAliasRoutingConfigurationListItem": {
+ "description": "Details about the routing configuration for an Agent alias.",
+ "properties": {
+ "agentVersion": {
+ "type": "string",
+ "description": "Agent Version."
+ }
+ },
+ "type": "object",
+ "required": [
+ "agentVersion"
+ ]
+ },
+ "aws-native:bedrock:AgentAliasStatus": {
+ "description": "The statuses an Agent Alias can be in.",
+ "type": "string",
+ "enum": [
+ {
+ "name": "Creating",
+ "value": "CREATING"
+ },
+ {
+ "name": "Prepared",
+ "value": "PREPARED"
+ },
+ {
+ "name": "Failed",
+ "value": "FAILED"
+ },
+ {
+ "name": "Updating",
+ "value": "UPDATING"
+ },
+ {
+ "name": "Deleting",
+ "value": "DELETING"
+ }
+ ]
+ },
+ "aws-native:bedrock:AgentApiSchema0Properties": {
+ "description": "Contains information about the API Schema for the Action Group",
+ "properties": {
+ "s3": {
+ "$ref": "#/types/aws-native:bedrock:AgentS3Identifier"
+ }
+ },
+ "type": "object",
+ "required": [
+ "s3"
+ ]
+ },
+ "aws-native:bedrock:AgentApiSchema1Properties": {
+ "description": "Contains information about the API Schema for the Action Group",
+ "properties": {
+ "payload": {
+ "type": "string",
+ "description": "String OpenAPI Payload"
+ }
+ },
+ "type": "object",
+ "required": [
+ "payload"
+ ]
+ },
+ "aws-native:bedrock:AgentCreationMode": {
+ "description": "Creation Mode for Prompt Configuration.",
+ "type": "string",
+ "enum": [
+ {
+ "name": "Default",
+ "value": "DEFAULT"
+ },
+ {
+ "name": "Overridden",
+ "value": "OVERRIDDEN"
+ }
+ ]
+ },
+ "aws-native:bedrock:AgentInferenceConfiguration": {
+ "description": "Configuration for inference in prompt configuration",
+ "properties": {
+ "maximumLength": {
+ "type": "number",
+ "description": "Maximum length of output"
+ },
+ "stopSequences": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of stop sequences"
+ },
+ "temperature": {
+ "type": "number",
+ "description": "Controls randomness, higher values increase diversity"
+ },
+ "topK": {
+ "type": "number",
+ "description": "Sample from the k most likely next tokens"
+ },
+ "topP": {
+ "type": "number",
+ "description": "Cumulative probability cutoff for token selection"
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:bedrock:AgentKnowledgeBase": {
+ "description": "Agent Knowledge Base",
+ "properties": {
+ "description": {
+ "type": "string",
+ "description": "Description of the Resource."
+ },
+ "knowledgeBaseId": {
+ "type": "string",
+ "description": "Identifier for a resource."
+ },
+ "knowledgeBaseState": {
+ "$ref": "#/types/aws-native:bedrock:AgentKnowledgeBaseState"
+ }
+ },
+ "type": "object",
+ "required": [
+ "description",
+ "knowledgeBaseId"
+ ]
+ },
+ "aws-native:bedrock:AgentKnowledgeBaseState": {
+ "description": "State of the knowledge base; whether it is enabled or disabled",
+ "type": "string",
+ "enum": [
+ {
+ "name": "Enabled",
+ "value": "ENABLED"
+ },
+ {
+ "name": "Disabled",
+ "value": "DISABLED"
+ }
+ ]
+ },
+ "aws-native:bedrock:AgentPromptConfiguration": {
+ "description": "BasePromptConfiguration per Prompt Type.",
+ "properties": {
+ "basePromptTemplate": {
+ "type": "string",
+ "description": "Base Prompt Template."
+ },
+ "inferenceConfiguration": {
+ "$ref": "#/types/aws-native:bedrock:AgentInferenceConfiguration"
+ },
+ "parserMode": {
+ "$ref": "#/types/aws-native:bedrock:AgentCreationMode"
+ },
+ "promptCreationMode": {
+ "$ref": "#/types/aws-native:bedrock:AgentCreationMode"
+ },
+ "promptState": {
+ "$ref": "#/types/aws-native:bedrock:AgentPromptState"
+ },
+ "promptType": {
+ "$ref": "#/types/aws-native:bedrock:AgentPromptType"
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:bedrock:AgentPromptOverrideConfiguration": {
+ "description": "Configuration for prompt override.",
+ "properties": {
+ "overrideLambda": {
+ "type": "string",
+ "description": "ARN of a Lambda."
+ },
+ "promptConfigurations": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:bedrock:AgentPromptConfiguration"
+ },
+ "description": "List of BasePromptConfiguration"
+ }
+ },
+ "type": "object",
+ "required": [
+ "promptConfigurations"
+ ]
+ },
+ "aws-native:bedrock:AgentPromptState": {
+ "description": "Prompt State.",
+ "type": "string",
+ "enum": [
+ {
+ "name": "Enabled",
+ "value": "ENABLED"
+ },
+ {
+ "name": "Disabled",
+ "value": "DISABLED"
+ }
+ ]
+ },
+ "aws-native:bedrock:AgentPromptType": {
+ "description": "Prompt Type.",
+ "type": "string",
+ "enum": [
+ {
+ "name": "PreProcessing",
+ "value": "PRE_PROCESSING"
+ },
+ {
+ "name": "Orchestration",
+ "value": "ORCHESTRATION"
+ },
+ {
+ "name": "PostProcessing",
+ "value": "POST_PROCESSING"
+ },
+ {
+ "name": "KnowledgeBaseResponseGeneration",
+ "value": "KNOWLEDGE_BASE_RESPONSE_GENERATION"
+ }
+ ]
+ },
+ "aws-native:bedrock:AgentS3Identifier": {
+ "description": "The identifier for the S3 resource.",
+ "properties": {
+ "s3BucketName": {
+ "type": "string",
+ "description": "A bucket in S3."
+ },
+ "s3ObjectKey": {
+ "type": "string",
+ "description": "A object key in S3."
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:bedrock:AgentStatus": {
+ "description": "Schema Type for Action APIs.",
+ "type": "string",
+ "enum": [
+ {
+ "name": "Creating",
+ "value": "CREATING"
+ },
+ {
+ "name": "Preparing",
+ "value": "PREPARING"
+ },
+ {
+ "name": "Prepared",
+ "value": "PREPARED"
+ },
+ {
+ "name": "NotPrepared",
+ "value": "NOT_PREPARED"
+ },
+ {
+ "name": "Deleting",
+ "value": "DELETING"
+ },
+ {
+ "name": "Failed",
+ "value": "FAILED"
+ },
+ {
+ "name": "Versioning",
+ "value": "VERSIONING"
+ },
+ {
+ "name": "Updating",
+ "value": "UPDATING"
+ }
+ ]
+ },
"aws-native:budgets:BudgetsActionActionThreshold": {
"properties": {
"type": {
@@ -13527,6 +14040,9 @@
"items": {
"type": "string"
}
+ },
+ "differentialPrivacy": {
+ "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableDifferentialPrivacy"
}
},
"type": "object",
@@ -13647,6 +14163,31 @@
"value"
]
},
+ "aws-native:cleanrooms:ConfiguredTableDifferentialPrivacy": {
+ "properties": {
+ "columns": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableDifferentialPrivacyColumn"
+ }
+ }
+ },
+ "type": "object",
+ "required": [
+ "columns"
+ ]
+ },
+ "aws-native:cleanrooms:ConfiguredTableDifferentialPrivacyColumn": {
+ "properties": {
+ "name": {
+ "type": "string"
+ }
+ },
+ "type": "object",
+ "required": [
+ "name"
+ ]
+ },
"aws-native:cleanrooms:ConfiguredTableGlueTableReference": {
"properties": {
"databaseName": {
@@ -13738,6 +14279,50 @@
{
"name": "Coalesce",
"value": "COALESCE"
+ },
+ {
+ "name": "Convert",
+ "value": "CONVERT"
+ },
+ {
+ "name": "CurrentDate",
+ "value": "CURRENT_DATE"
+ },
+ {
+ "name": "Dateadd",
+ "value": "DATEADD"
+ },
+ {
+ "name": "Extract",
+ "value": "EXTRACT"
+ },
+ {
+ "name": "Getdate",
+ "value": "GETDATE"
+ },
+ {
+ "name": "Substring",
+ "value": "SUBSTRING"
+ },
+ {
+ "name": "ToChar",
+ "value": "TO_CHAR"
+ },
+ {
+ "name": "ToDate",
+ "value": "TO_DATE"
+ },
+ {
+ "name": "ToNumber",
+ "value": "TO_NUMBER"
+ },
+ {
+ "name": "ToTimestamp",
+ "value": "TO_TIMESTAMP"
+ },
+ {
+ "name": "Trim",
+ "value": "TRIM"
}
]
},
@@ -14691,7 +15276,7 @@
]
},
"aws-native:cloudfront:DistributionCacheBehavior": {
- "description": "A complex type that describes how CloudFront processes requests.\n You must create at least as many cache behaviors (including the default cache behavior) as you have origins if you want CloudFront to serve objects from all of the origins. Each cache behavior specifies the one origin from which you want CloudFront to get objects. If you have two origins and only the default cache behavior, the default cache behavior will cause CloudFront to get objects from one of the origins, but the other origin is never used.\n For the current quota (formerly known as limit) on the number of cache behaviors that you can add to a distribution, see [Quotas](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/cloudfront-limits.html) in the *Amazon CloudFront Developer Guide*.\n If you don't want to specify any cache behaviors, include only an empty ``CacheBehaviors`` element. Don't include an empty ``CacheBehavior`` element because this is invalid.\n To delete all cache behaviors in an exist",
+ "description": "A complex type that describes how CloudFront processes requests.\n You must create at least as many cache behaviors (including the default cache behavior) as you have origins if you want CloudFront to serve objects from all of the origins. Each cache behavior specifies the one origin from which you want CloudFront to get objects. If you have two origins and only the default cache behavior, the default cache behavior will cause CloudFront to get objects from one of the origins, but the other origin is never used.\n For the current quota (formerly known as limit) on the number of cache behaviors that you can add to a distribution, see [Quotas](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/cloudfront-limits.html) in the *Amazon CloudFront Developer Guide*.\n If you don't want to specify any cache behaviors, include only an empty ``CacheBehaviors`` element. Don't include an empty ``CacheBehavior`` element because this is invalid.\n To delete all cache behaviors in an existing distribution, update the distribution configuration and include only an empty ``CacheBehaviors`` element.\n To add, change, or remove one or more cache behaviors, update the distribution configuration and specify all of the cache behaviors that you want to include in the updated distribution.\n For more information about cache behaviors, see [Cache Behavior Settings](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesCacheBehavior) in the *Amazon CloudFront Developer Guide*.",
"properties": {
"allowedMethods": {
"type": "array",
@@ -14717,7 +15302,7 @@
},
"defaultTtl": {
"type": "number",
- "description": "This field is deprecated. We recommend that you use the ``DefaultTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The default amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide"
+ "description": "This field is deprecated. We recommend that you use the ``DefaultTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The default amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*."
},
"fieldLevelEncryptionId": {
"type": "string",
@@ -14725,7 +15310,7 @@
},
"forwardedValues": {
"$ref": "#/types/aws-native:cloudfront:DistributionForwardedValues",
- "description": "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field. For more information, see [Working with policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/working-with-policies.html) in the *Amazon CloudFront Developer Guide*.\n If you want to include values in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n If you want to send values to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-r"
+ "description": "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field. For more information, see [Working with policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/working-with-policies.html) in the *Amazon CloudFront Developer Guide*.\n If you want to include values in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n If you want to send values to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) or [Using the managed origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-origin-request-policies.html) in the *Amazon CloudFront Developer Guide*.\n A ``CacheBehavior`` must include either a ``CachePolicyId`` or ``ForwardedValues``. We recommend that you use a ``CachePolicyId``.\n A complex type that specifies how CloudFront handles query strings, cookies, and HTTP headers."
},
"functionAssociations": {
"type": "array",
@@ -14743,11 +15328,11 @@
},
"maxTtl": {
"type": "number",
- "description": "This field is deprecated. We recommend that you use the ``MaxTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The maximum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration."
+ "description": "This field is deprecated. We recommend that you use the ``MaxTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The maximum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*."
},
"minTtl": {
"type": "number",
- "description": "This field is deprecated. We recommend that you use the ``MinTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*.\n You must specify ``0`` for ``MinTTL`` if you configure CloudFront to forward all headers to your origin (under ``He"
+ "description": "This field is deprecated. We recommend that you use the ``MinTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*.\n You must specify ``0`` for ``MinTTL`` if you configure CloudFront to forward all headers to your origin (under ``Headers``, if you specify ``1`` for ``Quantity`` and ``*`` for ``Name``)."
},
"originRequestPolicyId": {
"type": "string",
@@ -14789,7 +15374,7 @@
},
"viewerProtocolPolicy": {
"type": "string",
- "description": "The protocol that viewers can use to access the files in the origin specified by ``TargetOriginId`` when a request matches the path pattern in ``PathPattern``. You can specify the following options:\n + ``allow-all``: Viewers can use HTTP or HTTPS.\n + ``redirect-to-https``: If a viewer submits an HTTP request, CloudFront returns an HTTP status code of 301 (Moved Permanently) to the viewer along with the HTTPS URL. The viewer then resubmits the request using the new URL.\n + ``https-only``: If a viewer sends an HTTP request, CloudFront returns an HTTP status code of 403 (Forbidden).\n \n For more information about requiring the HTTPS protocol, see [Requiring HTTPS Between Viewers and CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https-viewers-to-cloudfront.html) in the *Amazon CloudFront Developer Guide*.\n The only way to guarantee that viewers retrieve an object that was fetched from the origin using HTTPS is never to use any other protocol"
+ "description": "The protocol that viewers can use to access the files in the origin specified by ``TargetOriginId`` when a request matches the path pattern in ``PathPattern``. You can specify the following options:\n + ``allow-all``: Viewers can use HTTP or HTTPS.\n + ``redirect-to-https``: If a viewer submits an HTTP request, CloudFront returns an HTTP status code of 301 (Moved Permanently) to the viewer along with the HTTPS URL. The viewer then resubmits the request using the new URL.\n + ``https-only``: If a viewer sends an HTTP request, CloudFront returns an HTTP status code of 403 (Forbidden).\n \n For more information about requiring the HTTPS protocol, see [Requiring HTTPS Between Viewers and CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https-viewers-to-cloudfront.html) in the *Amazon CloudFront Developer Guide*.\n The only way to guarantee that viewers retrieve an object that was fetched from the origin using HTTPS is never to use any other protocol to fetch the object. If you have recently changed from HTTP to HTTPS, we recommend that you clear your objects' cache because cached objects are protocol agnostic. That means that an edge location will return an object from the cache regardless of whether the current request protocol matches the protocol used previously. For more information, see [Managing Cache Expiration](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*."
}
},
"type": "object",
@@ -14846,7 +15431,7 @@
},
"defaultRootObject": {
"type": "string",
- "description": "The object that you want CloudFront to request from your origin (for example, ``index.html``) when a viewer requests the root URL for your distribution (``https://www.example.com``) instead of an object in your distribution (``https://www.example.com/product-description.html``). Specifying a default root object avoids exposing the contents of your distribution.\n Specify only the object name, for example, ``index.html``. Don't add a ``/`` before the object name.\n If you don't want to specify a default root object when you create a distribution, include an empty ``DefaultRootObject`` element.\n To delete the default root object from an existing distribution, update the distribution configuration and include an empty ``DefaultRootObject`` element.\n To replace the default root object, update the distribution configuration and specify the new object.\n For more information about the default root object, see [Creating a Default Root Object](https://docs.aws.amazon.com/AmazonCloudFront/latest/D"
+ "description": "The object that you want CloudFront to request from your origin (for example, ``index.html``) when a viewer requests the root URL for your distribution (``https://www.example.com``) instead of an object in your distribution (``https://www.example.com/product-description.html``). Specifying a default root object avoids exposing the contents of your distribution.\n Specify only the object name, for example, ``index.html``. Don't add a ``/`` before the object name.\n If you don't want to specify a default root object when you create a distribution, include an empty ``DefaultRootObject`` element.\n To delete the default root object from an existing distribution, update the distribution configuration and include an empty ``DefaultRootObject`` element.\n To replace the default root object, update the distribution configuration and specify the new object.\n For more information about the default root object, see [Creating a Default Root Object](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/DefaultRootObject.html) in the *Amazon CloudFront Developer Guide*."
},
"enabled": {
"type": "boolean",
@@ -14858,7 +15443,7 @@
},
"ipv6Enabled": {
"type": "boolean",
- "description": "If you want CloudFront to respond to IPv6 DNS requests with an IPv6 address for your distribution, specify ``true``. If you specify ``false``, CloudFront responds to IPv6 DNS requests with the DNS response code ``NOERROR`` and with no IP addresses. This allows viewers to submit a second request, for an IPv4 address for your distribution.\n In general, you should enable IPv6 if you have users on IPv6 networks who want to access your content. However, if you're using signed URLs or signed cookies to restrict access to your content, and if you're using a custom policy that includes the ``IpAddress`` parameter to restrict the IP addresses that can access your content, don't enable IPv6. If you want to restrict access to some content by IP address and not restrict access to other content (or restrict access but not by IP address), you can create two distributions. For more information, see [Creating a Signed URL Using a Custom Policy](https://docs.aws.amazon.com/AmazonCloudFront/latest/Devel"
+ "description": "If you want CloudFront to respond to IPv6 DNS requests with an IPv6 address for your distribution, specify ``true``. If you specify ``false``, CloudFront responds to IPv6 DNS requests with the DNS response code ``NOERROR`` and with no IP addresses. This allows viewers to submit a second request, for an IPv4 address for your distribution.\n In general, you should enable IPv6 if you have users on IPv6 networks who want to access your content. However, if you're using signed URLs or signed cookies to restrict access to your content, and if you're using a custom policy that includes the ``IpAddress`` parameter to restrict the IP addresses that can access your content, don't enable IPv6. If you want to restrict access to some content by IP address and not restrict access to other content (or restrict access but not by IP address), you can create two distributions. For more information, see [Creating a Signed URL Using a Custom Policy](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-creating-signed-url-custom-policy.html) in the *Amazon CloudFront Developer Guide*.\n If you're using an R53AWSIntlong alias resource record set to route traffic to your CloudFront distribution, you need to create a second alias resource record set when both of the following are true:\n + You enable IPv6 for the distribution\n + You're using alternate domain names in the URLs for your objects\n \n For more information, see [Routing Traffic to an Amazon CloudFront Web Distribution by Using Your Domain Name](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-cloudfront-distribution.html) in the *Developer Guide*.\n If you created a CNAME resource record set, either with R53AWSIntlong or with another DNS service, you don't need to make any changes. A CNAME record will route traffic to your distribution regardless of the IP address format of the viewer request."
},
"logging": {
"$ref": "#/types/aws-native:cloudfront:DistributionLogging",
@@ -14896,7 +15481,7 @@
},
"webAclId": {
"type": "string",
- "description": "A unique identifier that specifies the WAF web ACL, if any, to associate with this distribution. To specify a web ACL created using the latest version of WAF, use the ACL ARN, for example ``arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/473e64fd-f30b-4765-81a0-62ad96dd167a``. To specify a web ACL created using WAF Classic, use the ACL ID, for example ``473e64fd-f30b-4765-81a0-62ad96dd167a``.\n WAF is a web application firewall that lets you monitor the HTTP and HTTPS requests that are forwarded to CloudFront, and lets you control access to your content. Based on conditions that you specify, such as the IP addresses that requests originate from or the values of query strings, CloudFront responds to requests either with the requested content or with an HTTP 403 status code (Forbidden). You can also configure CloudFront to return a custom error page when a request is blocked. For more information about WAF, see the [Developer Guide](https://docs.aws.amazon.com/waf/latest"
+ "description": "A unique identifier that specifies the WAF web ACL, if any, to associate with this distribution. To specify a web ACL created using the latest version of WAF, use the ACL ARN, for example ``arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/473e64fd-f30b-4765-81a0-62ad96dd167a``. To specify a web ACL created using WAF Classic, use the ACL ID, for example ``473e64fd-f30b-4765-81a0-62ad96dd167a``.\n WAF is a web application firewall that lets you monitor the HTTP and HTTPS requests that are forwarded to CloudFront, and lets you control access to your content. Based on conditions that you specify, such as the IP addresses that requests originate from or the values of query strings, CloudFront responds to requests either with the requested content or with an HTTP 403 status code (Forbidden). You can also configure CloudFront to return a custom error page when a request is blocked. For more information about WAF, see the [Developer Guide](https://docs.aws.amazon.com/waf/latest/developerguide/what-is-aws-waf.html)."
}
},
"type": "object",
@@ -14906,18 +15491,18 @@
]
},
"aws-native:cloudfront:DistributionCookies": {
- "description": "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send cookies to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n A complex type that specifies whether you want CloudFront to forward cookies to the origin and, if so, which ones. For more information about forwarding cookies to the origin, see [How CloudFront Forwards, Caches, and Logs C",
+ "description": "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send cookies to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n A complex type that specifies whether you want CloudFront to forward cookies to the origin and, if so, which ones. For more information about forwarding cookies to the origin, see [How CloudFront Forwards, Caches, and Logs Cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Cookies.html) in the *Amazon CloudFront Developer Guide*.",
"properties": {
"forward": {
"type": "string",
- "description": "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send cookies to the origin but not include them in the cache key, use origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n Specifies which cookies to forward to the origin for this cache behavior: all, none, or the list of cookies specified in the ``WhitelistedNames`` complex type.\n Amazon S3 doesn't process cookies. When the cache behavior is forw"
+ "description": "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send cookies to the origin but not include them in the cache key, use origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n Specifies which cookies to forward to the origin for this cache behavior: all, none, or the list of cookies specified in the ``WhitelistedNames`` complex type.\n Amazon S3 doesn't process cookies. When the cache behavior is forwarding requests to an Amazon S3 origin, specify none for the ``Forward`` element."
},
"whitelistedNames": {
"type": "array",
"items": {
"type": "string"
},
- "description": "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send cookies to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n Required if you specify ``whitelist`` for the value of ``Forward``. A complex type that specifies how many different cookies you want CloudFront to forward to the origin for this cache behavior and, if you want to forward se"
+ "description": "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send cookies to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n Required if you specify ``whitelist`` for the value of ``Forward``. A complex type that specifies how many different cookies you want CloudFront to forward to the origin for this cache behavior and, if you want to forward selected cookies, the names of those cookies.\n If you specify ``all`` or ``none`` for the value of ``Forward``, omit ``WhitelistedNames``. If you change the value of ``Forward`` from ``whitelist`` to ``all`` or ``none`` and you don't delete the ``WhitelistedNames`` element and its child elements, CloudFront deletes them automatically.\n For the current limit on the number of cookie names that you can whitelist for each cache behavior, see [CloudFront Limits](https://docs.aws.amazon.com/general/latest/gr/xrefaws_service_limits.html#limits_cloudfront) in the *General Reference*."
}
},
"type": "object",
@@ -14942,7 +15527,7 @@
},
"responsePagePath": {
"type": "string",
- "description": "The path to the custom error page that you want CloudFront to return to a viewer when your origin returns the HTTP status code specified by ``ErrorCode``, for example, ``/4xx-errors/403-forbidden.html``. If you want to store your objects and your custom error pages in different locations, your distribution must include a cache behavior for which the following is true:\n + The value of ``PathPattern`` matches the path to your custom error messages. For example, suppose you saved custom error pages for 4xx errors in an Amazon S3 bucket in a directory named ``/4xx-errors``. Your distribution must include a cache behavior for which the path pattern routes requests for your custom error pages to that location, for example, ``/4xx-errors/*``.\n + The value of ``TargetOriginId`` specifies the value of the ``ID`` element for the origin that contains your custom error pages.\n \n If you specify a value for ``ResponsePagePath``, you must also specify a value for ``ResponseCode``.\n We recommend "
+ "description": "The path to the custom error page that you want CloudFront to return to a viewer when your origin returns the HTTP status code specified by ``ErrorCode``, for example, ``/4xx-errors/403-forbidden.html``. If you want to store your objects and your custom error pages in different locations, your distribution must include a cache behavior for which the following is true:\n + The value of ``PathPattern`` matches the path to your custom error messages. For example, suppose you saved custom error pages for 4xx errors in an Amazon S3 bucket in a directory named ``/4xx-errors``. Your distribution must include a cache behavior for which the path pattern routes requests for your custom error pages to that location, for example, ``/4xx-errors/*``.\n + The value of ``TargetOriginId`` specifies the value of the ``ID`` element for the origin that contains your custom error pages.\n \n If you specify a value for ``ResponsePagePath``, you must also specify a value for ``ResponseCode``.\n We recommend that you store custom error pages in an Amazon S3 bucket. If you store custom error pages on an HTTP server and the server starts to return 5xx errors, CloudFront can't get the files that you want to return to viewers because the origin server is unavailable."
}
},
"type": "object",
@@ -15013,7 +15598,7 @@
},
"defaultTtl": {
"type": "number",
- "description": "This field is deprecated. We recommend that you use the ``DefaultTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The default amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide"
+ "description": "This field is deprecated. We recommend that you use the ``DefaultTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The default amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*."
},
"fieldLevelEncryptionId": {
"type": "string",
@@ -15021,7 +15606,7 @@
},
"forwardedValues": {
"$ref": "#/types/aws-native:cloudfront:DistributionForwardedValues",
- "description": "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field. For more information, see [Working with policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/working-with-policies.html) in the *Amazon CloudFront Developer Guide*.\n If you want to include values in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n If you want to send values to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-r"
+ "description": "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field. For more information, see [Working with policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/working-with-policies.html) in the *Amazon CloudFront Developer Guide*.\n If you want to include values in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n If you want to send values to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) or [Using the managed origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-origin-request-policies.html) in the *Amazon CloudFront Developer Guide*.\n A ``DefaultCacheBehavior`` must include either a ``CachePolicyId`` or ``ForwardedValues``. We recommend that you use a ``CachePolicyId``.\n A complex type that specifies how CloudFront handles query strings, cookies, and HTTP headers."
},
"functionAssociations": {
"type": "array",
@@ -15039,11 +15624,11 @@
},
"maxTtl": {
"type": "number",
- "description": "This field is deprecated. We recommend that you use the ``MaxTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The maximum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration."
+ "description": "This field is deprecated. We recommend that you use the ``MaxTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The maximum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*."
},
"minTtl": {
"type": "number",
- "description": "This field is deprecated. We recommend that you use the ``MinTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*.\n You must specify ``0`` for ``MinTTL`` if you configure CloudFront to forward all headers to your origin (under ``He"
+ "description": "This field is deprecated. We recommend that you use the ``MinTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.\n The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*.\n You must specify ``0`` for ``MinTTL`` if you configure CloudFront to forward all headers to your origin (under ``Headers``, if you specify ``1`` for ``Quantity`` and ``*`` for ``Name``)."
},
"originRequestPolicyId": {
"type": "string",
@@ -15081,7 +15666,7 @@
},
"viewerProtocolPolicy": {
"type": "string",
- "description": "The protocol that viewers can use to access the files in the origin specified by ``TargetOriginId`` when a request matches the path pattern in ``PathPattern``. You can specify the following options:\n + ``allow-all``: Viewers can use HTTP or HTTPS.\n + ``redirect-to-https``: If a viewer submits an HTTP request, CloudFront returns an HTTP status code of 301 (Moved Permanently) to the viewer along with the HTTPS URL. The viewer then resubmits the request using the new URL.\n + ``https-only``: If a viewer sends an HTTP request, CloudFront returns an HTTP status code of 403 (Forbidden).\n \n For more information about requiring the HTTPS protocol, see [Requiring HTTPS Between Viewers and CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https-viewers-to-cloudfront.html) in the *Amazon CloudFront Developer Guide*.\n The only way to guarantee that viewers retrieve an object that was fetched from the origin using HTTPS is never to use any other protocol"
+ "description": "The protocol that viewers can use to access the files in the origin specified by ``TargetOriginId`` when a request matches the path pattern in ``PathPattern``. You can specify the following options:\n + ``allow-all``: Viewers can use HTTP or HTTPS.\n + ``redirect-to-https``: If a viewer submits an HTTP request, CloudFront returns an HTTP status code of 301 (Moved Permanently) to the viewer along with the HTTPS URL. The viewer then resubmits the request using the new URL.\n + ``https-only``: If a viewer sends an HTTP request, CloudFront returns an HTTP status code of 403 (Forbidden).\n \n For more information about requiring the HTTPS protocol, see [Requiring HTTPS Between Viewers and CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https-viewers-to-cloudfront.html) in the *Amazon CloudFront Developer Guide*.\n The only way to guarantee that viewers retrieve an object that was fetched from the origin using HTTPS is never to use any other protocol to fetch the object. If you have recently changed from HTTP to HTTPS, we recommend that you clear your objects' cache because cached objects are protocol agnostic. That means that an edge location will return an object from the cache regardless of whether the current request protocol matches the protocol used previously. For more information, see [Managing Cache Expiration](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*."
}
},
"type": "object",
@@ -15095,18 +15680,18 @@
"properties": {
"cookies": {
"$ref": "#/types/aws-native:cloudfront:DistributionCookies",
- "description": "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send cookies to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n A complex type that specifies whether you want CloudFront to forward cookies to the origin and, if so, which ones. For more information about forwarding cookies to the origin, see [How CloudFront Forwards, Caches, and Logs C"
+ "description": "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send cookies to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n A complex type that specifies whether you want CloudFront to forward cookies to the origin and, if so, which ones. For more information about forwarding cookies to the origin, see [How CloudFront Forwards, Caches, and Logs Cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Cookies.html) in the *Amazon CloudFront Developer Guide*."
},
"headers": {
"type": "array",
"items": {
"type": "string"
},
- "description": "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include headers in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send headers to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n A complex type that specifies the ``Headers``, if any, that you want CloudFront to forward to the origin for this cache behavior (whitelisted headers). For the headers that you specify, CloudFront also caches separate versio"
+ "description": "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include headers in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send headers to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n A complex type that specifies the ``Headers``, if any, that you want CloudFront to forward to the origin for this cache behavior (whitelisted headers). For the headers that you specify, CloudFront also caches separate versions of a specified object that is based on the header values in viewer requests.\n For more information, see [Caching Content Based on Request Headers](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/header-caching.html) in the *Amazon CloudFront Developer Guide*."
},
"queryString": {
"type": "boolean",
- "description": "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include query strings in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send query strings to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n Indicates whether you want CloudFront to forward query strings to the origin that is associated with this cache behavior and cache based on the query string parameters. CloudFront behavior depends on the value of"
+ "description": "This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.\n If you want to include query strings in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.\n If you want to send query strings to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.\n Indicates whether you want CloudFront to forward query strings to the origin that is associated with this cache behavior and cache based on the query string parameters. CloudFront behavior depends on the value of ``QueryString`` and on the values that you specify for ``QueryStringCacheKeys``, if any:\n If you specify true for ``QueryString`` and you don't specify any values for ``QueryStringCacheKeys``, CloudFront forwards all query string parameters to the origin and caches based on all query string parameters. Depending on how many query string parameters and values you have, this can adversely affect performance because CloudFront must forward more requests to the origin.\n If you specify true for ``QueryString`` and you specify one or more values for ``QueryStringCacheKeys``, CloudFront forwards all query string parameters to the origin, but it only caches based on the query string parameters that you specify.\n If you specify false for ``QueryString``, CloudFront doesn't forward any query string parameters to the origin, and doesn't cache based on query string parameters.\n For more information, see [Configuring CloudFront to Cache Based on Query String Parameters](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/QueryStringParameters.html) in the *Amazon CloudFront Developer Guide*."
},
"queryStringCacheKeys": {
"type": "array",
@@ -15429,7 +16014,7 @@
"properties": {
"originAccessIdentity": {
"type": "string",
- "description": "The CloudFront origin access identity to associate with the origin. Use an origin access identity to configure the origin so that viewers can *only* access objects in an Amazon S3 bucket through CloudFront. The format of the value is:\n origin-access-identity/cloudfront/*ID-of-origin-access-identity* \n where ``ID-of-origin-access-identity`` is the value that CloudFront returned in the ``ID`` element when you created the origin access identity.\n If you want viewers to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty ``OriginAccessIdentity`` element.\n To delete the origin access identity from an existing distribution, update the distribution configuration and include an empty ``OriginAccessIdentity`` element.\n To replace the origin access identity, update the distribution configuration and specify the new origin access identity.\n For more information about the origin access identity, see [Serving Private Content through CloudFront](https://d"
+ "description": "The CloudFront origin access identity to associate with the origin. Use an origin access identity to configure the origin so that viewers can *only* access objects in an Amazon S3 bucket through CloudFront. The format of the value is:\n origin-access-identity/cloudfront/*ID-of-origin-access-identity* \n where ``ID-of-origin-access-identity`` is the value that CloudFront returned in the ``ID`` element when you created the origin access identity.\n If you want viewers to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty ``OriginAccessIdentity`` element.\n To delete the origin access identity from an existing distribution, update the distribution configuration and include an empty ``OriginAccessIdentity`` element.\n To replace the origin access identity, update the distribution configuration and specify the new origin access identity.\n For more information about the origin access identity, see [Serving Private Content through CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) in the *Amazon CloudFront Developer Guide*."
}
},
"type": "object"
@@ -15474,7 +16059,7 @@
]
},
"aws-native:cloudfront:DistributionViewerCertificate": {
- "description": "A complex type that determines the distribution's SSL/TLS configuration for communicating with viewers.\n If the distribution doesn't use ``Aliases`` (also known as alternate domain names or CNAMEs)—that is, if the distribution uses the CloudFront domain name such as ``d111111abcdef8.cloudfront.net``—set ``CloudFrontDefaultCertificate`` to ``true`` and leave all other fields empty.\n If the distribution uses ``Aliases`` (alternate domain names or CNAMEs), use the fields in this type to specify the following settings:\n + Which viewers the distribution accepts HTTPS connections from: only viewers that support [server name indication (SNI)](https://docs.aws.amazon.com/https://en.wikipedia.org/wiki/Server_Name_Indication) (recommended), or all viewers including those that don't support SNI.\n + To accept HTTPS connections from only viewers that support SNI, set ``SSLSupportMethod`` to ``sni-only``. This is recommended. Most browsers and clients support SNI. (In CloudFormation, the field n",
+ "description": "A complex type that determines the distribution's SSL/TLS configuration for communicating with viewers.\n If the distribution doesn't use ``Aliases`` (also known as alternate domain names or CNAMEs)—that is, if the distribution uses the CloudFront domain name such as ``d111111abcdef8.cloudfront.net``—set ``CloudFrontDefaultCertificate`` to ``true`` and leave all other fields empty.\n If the distribution uses ``Aliases`` (alternate domain names or CNAMEs), use the fields in this type to specify the following settings:\n + Which viewers the distribution accepts HTTPS connections from: only viewers that support [server name indication (SNI)](https://docs.aws.amazon.com/https://en.wikipedia.org/wiki/Server_Name_Indication) (recommended), or all viewers including those that don't support SNI.\n + To accept HTTPS connections from only viewers that support SNI, set ``SSLSupportMethod`` to ``sni-only``. This is recommended. Most browsers and clients support SNI. (In CloudFormation, the field name is ``SslSupportMethod``. Note the different capitalization.)\n + To accept HTTPS connections from all viewers, including those that don't support SNI, set ``SSLSupportMethod`` to ``vip``. This is not recommended, and results in additional monthly charges from CloudFront. (In CloudFormation, the field name is ``SslSupportMethod``. Note the different capitalization.)\n \n + The minimum SSL/TLS protocol version that the distribution can use to communicate with viewers. To specify a minimum version, choose a value for ``MinimumProtocolVersion``. For more information, see [Security Policy](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValues-security-policy) in the *Amazon CloudFront Developer Guide*.\n + The location of the SSL/TLS certificate, [(ACM)](https://docs.aws.amazon.com/acm/latest/userguide/acm-overview.html) (recommended) or [(IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html). You specify the location by setting a value in one of the following fields (not both):\n + ``ACMCertificateArn`` (In CloudFormation, this field name is ``AcmCertificateArn``. Note the different capitalization.)\n + ``IAMCertificateId`` (In CloudFormation, this field name is ``IamCertificateId``. Note the different capitalization.)\n \n \n All distributions support HTTPS connections from viewers. To require viewers to use HTTPS only, or to redirect them from HTTP to HTTPS, use ``ViewerProtocolPolicy`` in the ``CacheBehavior`` or ``DefaultCacheBehavior``. To specify how CloudFront should use SSL/TLS to communicate with your custom origin, use ``CustomOriginConfig``.\n For more information, see [Using HTTPS with CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https.html) and [Using Alternate Domain Names and HTTPS](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https-alternate-domain-names.html) in the *Amazon CloudFront Developer Guide*.",
"properties": {
"acmCertificateArn": {
"type": "string",
@@ -15490,11 +16075,11 @@
},
"minimumProtocolVersion": {
"type": "string",
- "description": "If the distribution uses ``Aliases`` (alternate domain names or CNAMEs), specify the security policy that you want CloudFront to use for HTTPS connections with viewers. The security policy determines two settings:\n + The minimum SSL/TLS protocol that CloudFront can use to communicate with viewers.\n + The ciphers that CloudFront can use to encrypt the content that it returns to viewers.\n \n For more information, see [Security Policy](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValues-security-policy) and [Supported Protocols and Ciphers Between Viewers and CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/secure-connections-supported-viewer-protocols-ciphers.html#secure-connections-supported-ciphers) in the *Amazon CloudFront Developer Guide*.\n On the CloudFront console, this setting is called *Security Policy*.\n When you're using SNI only (you set ``SSLSupportMethod`` to ``sni-onl"
+ "description": "If the distribution uses ``Aliases`` (alternate domain names or CNAMEs), specify the security policy that you want CloudFront to use for HTTPS connections with viewers. The security policy determines two settings:\n + The minimum SSL/TLS protocol that CloudFront can use to communicate with viewers.\n + The ciphers that CloudFront can use to encrypt the content that it returns to viewers.\n \n For more information, see [Security Policy](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValues-security-policy) and [Supported Protocols and Ciphers Between Viewers and CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/secure-connections-supported-viewer-protocols-ciphers.html#secure-connections-supported-ciphers) in the *Amazon CloudFront Developer Guide*.\n On the CloudFront console, this setting is called *Security Policy*.\n When you're using SNI only (you set ``SSLSupportMethod`` to ``sni-only``), you must specify ``TLSv1`` or higher. (In CloudFormation, the field name is ``SslSupportMethod``. Note the different capitalization.)\n If the distribution uses the CloudFront domain name such as ``d111111abcdef8.cloudfront.net`` (you set ``CloudFrontDefaultCertificate`` to ``true``), CloudFront automatically sets the security policy to ``TLSv1`` regardless of the value that you set here."
},
"sslSupportMethod": {
"type": "string",
- "description": "In CloudFormation, this field name is ``SslSupportMethod``. Note the different capitalization.\n If the distribution uses ``Aliases`` (alternate domain names or CNAMEs), specify which viewers the distribution accepts HTTPS connections from.\n + ``sni-only`` – The distribution accepts HTTPS connections from only viewers that support [server name indication (SNI)](https://docs.aws.amazon.com/https://en.wikipedia.org/wiki/Server_Name_Indication). This is recommended. Most browsers and clients support SNI.\n + ``vip`` – The distribution accepts HTTPS connections from all viewers including those that don't support SNI. This is not recommended, and results in additional monthly charges from CloudFront.\n + ``static-ip`` - Do not specify this value unless your distribution has been enabled for this feature by the CloudFront team. If you have a use case that requires static IP addresses for a distribution, contact CloudFront through the [Center](https://docs.aws.amazon.com/support/home)."
+ "description": "In CloudFormation, this field name is ``SslSupportMethod``. Note the different capitalization.\n If the distribution uses ``Aliases`` (alternate domain names or CNAMEs), specify which viewers the distribution accepts HTTPS connections from.\n + ``sni-only`` – The distribution accepts HTTPS connections from only viewers that support [server name indication (SNI)](https://docs.aws.amazon.com/https://en.wikipedia.org/wiki/Server_Name_Indication). This is recommended. Most browsers and clients support SNI.\n + ``vip`` – The distribution accepts HTTPS connections from all viewers including those that don't support SNI. This is not recommended, and results in additional monthly charges from CloudFront.\n + ``static-ip`` - Do not specify this value unless your distribution has been enabled for this feature by the CloudFront team. If you have a use case that requires static IP addresses for a distribution, contact CloudFront through the [Center](https://docs.aws.amazon.com/support/home).\n \n If the distribution uses the CloudFront domain name such as ``d111111abcdef8.cloudfront.net``, don't set a value for this field."
}
},
"type": "object"
@@ -16591,6 +17176,91 @@
"value"
]
},
+ "aws-native:codeartifact:PackageGroupOriginConfiguration": {
+ "properties": {
+ "restrictions": {
+ "$ref": "#/types/aws-native:codeartifact:PackageGroupRestrictions",
+ "description": "The origin configuration that is applied to the package group."
+ }
+ },
+ "type": "object",
+ "required": [
+ "restrictions"
+ ]
+ },
+ "aws-native:codeartifact:PackageGroupRestrictionType": {
+ "properties": {
+ "repositories": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "restrictionMode": {
+ "$ref": "#/types/aws-native:codeartifact:PackageGroupRestrictionTypeRestrictionMode"
+ }
+ },
+ "type": "object",
+ "required": [
+ "restrictionMode"
+ ]
+ },
+ "aws-native:codeartifact:PackageGroupRestrictionTypeRestrictionMode": {
+ "type": "string",
+ "enum": [
+ {
+ "name": "Allow",
+ "value": "ALLOW"
+ },
+ {
+ "name": "Block",
+ "value": "BLOCK"
+ },
+ {
+ "name": "AllowSpecificRepositories",
+ "value": "ALLOW_SPECIFIC_REPOSITORIES"
+ },
+ {
+ "name": "Inherit",
+ "value": "INHERIT"
+ }
+ ]
+ },
+ "aws-native:codeartifact:PackageGroupRestrictions": {
+ "properties": {
+ "externalUpstream": {
+ "$ref": "#/types/aws-native:codeartifact:PackageGroupRestrictionType",
+ "description": "The external upstream restriction determines if new package versions can be ingested or retained from external connections."
+ },
+ "internalUpstream": {
+ "$ref": "#/types/aws-native:codeartifact:PackageGroupRestrictionType",
+ "description": "The internal upstream restriction determines if new package versions can be ingested or retained from upstream repositories."
+ },
+ "publish": {
+ "$ref": "#/types/aws-native:codeartifact:PackageGroupRestrictionType",
+ "description": "The publish restriction determines if new package versions can be published."
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:codeartifact:PackageGroupTag": {
+ "description": "A key-value pair to associate with a resource.",
+ "properties": {
+ "key": {
+ "type": "string",
+ "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. "
+ },
+ "value": {
+ "type": "string",
+ "description": "The value for the tag. You can specify a value that is 1 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. "
+ }
+ },
+ "type": "object",
+ "required": [
+ "key",
+ "value"
+ ]
+ },
"aws-native:codeartifact:RepositoryTag": {
"description": "A key-value pair to associate with a resource.",
"properties": {
@@ -16672,6 +17342,24 @@
"value"
]
},
+ "aws-native:codeconnections:ConnectionTag": {
+ "description": "A key-value pair to associate with a resource.",
+ "properties": {
+ "key": {
+ "type": "string",
+ "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. "
+ },
+ "value": {
+ "type": "string",
+ "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. "
+ }
+ },
+ "type": "object",
+ "required": [
+ "key",
+ "value"
+ ]
+ },
"aws-native:codedeploy:ApplicationTag": {
"properties": {
"key": {
@@ -16994,6 +17682,32 @@
"value"
]
},
+ "aws-native:codestarconnections:RepositoryLinkProviderType": {
+ "description": "The name of the external provider where your third-party code repository is configured.",
+ "type": "string",
+ "enum": [
+ {
+ "name": "GitHub",
+ "value": "GitHub"
+ },
+ {
+ "name": "Bitbucket",
+ "value": "Bitbucket"
+ },
+ {
+ "name": "GitHubEnterprise",
+ "value": "GitHubEnterprise"
+ },
+ {
+ "name": "GitLab",
+ "value": "GitLab"
+ },
+ {
+ "name": "GitLabSelfManaged",
+ "value": "GitLabSelfManaged"
+ }
+ ]
+ },
"aws-native:codestarconnections:RepositoryLinkTag": {
"description": "A key-value pair to associate with a resource.",
"properties": {
@@ -17012,6 +17726,60 @@
"value"
]
},
+ "aws-native:codestarconnections:SyncConfigurationProviderType": {
+ "description": "The name of the external provider where your third-party code repository is configured.",
+ "type": "string",
+ "enum": [
+ {
+ "name": "GitHub",
+ "value": "GitHub"
+ },
+ {
+ "name": "Bitbucket",
+ "value": "Bitbucket"
+ },
+ {
+ "name": "GitHubEnterprise",
+ "value": "GitHubEnterprise"
+ },
+ {
+ "name": "GitLab",
+ "value": "GitLab"
+ },
+ {
+ "name": "GitLabSelfManaged",
+ "value": "GitLabSelfManaged"
+ }
+ ]
+ },
+ "aws-native:codestarconnections:SyncConfigurationPublishDeploymentStatus": {
+ "description": "Whether to enable or disable publishing of deployment status to source providers.",
+ "type": "string",
+ "enum": [
+ {
+ "name": "Enabled",
+ "value": "ENABLED"
+ },
+ {
+ "name": "Disabled",
+ "value": "DISABLED"
+ }
+ ]
+ },
+ "aws-native:codestarconnections:SyncConfigurationTriggerResourceUpdateOn": {
+ "description": "When to trigger Git sync to begin the stack update.",
+ "type": "string",
+ "enum": [
+ {
+ "name": "AnyChange",
+ "value": "ANY_CHANGE"
+ },
+ {
+ "name": "FileChange",
+ "value": "FILE_CHANGE"
+ }
+ ]
+ },
"aws-native:codestarnotifications:NotificationRuleDetailType": {
"type": "string",
"enum": [
@@ -20161,6 +20929,27 @@
"fields"
]
},
+ "aws-native:connect:SecurityProfileApplication": {
+ "description": "A third-party application's metadata.",
+ "properties": {
+ "applicationPermissions": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The permissions that the agent is granted on the application"
+ },
+ "namespace": {
+ "type": "string",
+ "description": "Namespace of the application that you want to give access to."
+ }
+ },
+ "type": "object",
+ "required": [
+ "applicationPermissions",
+ "namespace"
+ ]
+ },
"aws-native:connect:SecurityProfileTag": {
"description": "A key-value pair to associate with a resource.",
"properties": {
@@ -26959,6 +27748,12 @@
"region": {
"type": "string"
},
+ "replicaStreamSpecification": {
+ "$ref": "#/types/aws-native:dynamodb:GlobalTableReplicaStreamSpecification"
+ },
+ "resourcePolicy": {
+ "$ref": "#/types/aws-native:dynamodb:GlobalTableResourcePolicy"
+ },
"sseSpecification": {
"$ref": "#/types/aws-native:dynamodb:GlobalTableReplicaSseSpecification"
},
@@ -26988,6 +27783,28 @@
"kmsMasterKeyId"
]
},
+ "aws-native:dynamodb:GlobalTableReplicaStreamSpecification": {
+ "properties": {
+ "resourcePolicy": {
+ "$ref": "#/types/aws-native:dynamodb:GlobalTableResourcePolicy"
+ }
+ },
+ "type": "object",
+ "required": [
+ "resourcePolicy"
+ ]
+ },
+ "aws-native:dynamodb:GlobalTableResourcePolicy": {
+ "properties": {
+ "policyDocument": {
+ "$ref": "pulumi.json#/Any"
+ }
+ },
+ "type": "object",
+ "required": [
+ "policyDocument"
+ ]
+ },
"aws-native:dynamodb:GlobalTableSseSpecification": {
"properties": {
"sseEnabled": {
@@ -27308,6 +28125,17 @@
"writeCapacityUnits"
]
},
+ "aws-native:dynamodb:TableResourcePolicy": {
+ "properties": {
+ "policyDocument": {
+ "$ref": "pulumi.json#/Any"
+ }
+ },
+ "type": "object",
+ "required": [
+ "policyDocument"
+ ]
+ },
"aws-native:dynamodb:TableS3BucketSource": {
"description": "The S3 bucket that is being imported from.",
"properties": {
@@ -27353,6 +28181,9 @@
"aws-native:dynamodb:TableStreamSpecification": {
"description": "Represents the DynamoDB Streams configuration for a table in DynamoDB.",
"properties": {
+ "resourcePolicy": {
+ "$ref": "#/types/aws-native:dynamodb:TableResourcePolicy"
+ },
"streamViewType": {
"type": "string",
"description": "When an item in the table is modified, ``StreamViewType`` determines what information is written to the stream for this table. Valid values for ``StreamViewType`` are:\n + ``KEYS_ONLY`` - Only the key attributes of the modified item are written to the stream.\n + ``NEW_IMAGE`` - The entire item, as it appears after it was modified, is written to the stream.\n + ``OLD_IMAGE`` - The entire item, as it appeared before it was modified, is written to the stream.\n + ``NEW_AND_OLD_IMAGES`` - Both the new and the old item images of the item are written to the stream."
@@ -28978,12 +29809,15 @@
]
},
"aws-native:ec2:InternetGatewayTag": {
+ "description": "Specifies a tag. For more information, see [Add tags to a resource](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#cloudformation-add-tag-specifications).",
"properties": {
"key": {
- "type": "string"
+ "type": "string",
+ "description": "The tag key."
},
"value": {
- "type": "string"
+ "type": "string",
+ "description": "The tag value."
}
},
"type": "object",
@@ -29512,7 +30346,7 @@
},
"instanceRequirements": {
"$ref": "#/types/aws-native:ec2:LaunchTemplateInstanceRequirements",
- "description": "The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes.\n You must specify ``VCpuCount`` and ``MemoryMiB``. All other attributes are optional. Any unspecified optional attribute is set to its default.\n When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values.\n To limit the list of instance types from which Amazon EC2 can identify matching instance types, you can use one of the following parameters, but not both in the same request:\n + ``AllowedInstanceTypes`` - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.\n + ``ExcludedInstanceTypes`` - The instance types to exclude from the list, even if they match your specified attributes.\n \n If you specify ``InstanceReq"
+ "description": "The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes.\n You must specify ``VCpuCount`` and ``MemoryMiB``. All other attributes are optional. Any unspecified optional attribute is set to its default.\n When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values.\n To limit the list of instance types from which Amazon EC2 can identify matching instance types, you can use one of the following parameters, but not both in the same request:\n + ``AllowedInstanceTypes`` - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.\n + ``ExcludedInstanceTypes`` - The instance types to exclude from the list, even if they match your specified attributes.\n \n If you specify ``InstanceRequirements``, you can't specify ``InstanceType``.\n Attribute-based instance type selection is only supported when using Auto Scaling groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in the [launch instance wizard](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-instance-wizard.html), or with the [RunInstances](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html) API or [AWS::EC2::Instance](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html) AWS CloudFormation resource, you can't specify ``InstanceRequirements``.\n For more information, see [Attribute-based instance type selection for EC2 Fleet](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html), [Attribute-based instance type selection for Spot Fleet](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-attribute-based-instance-type-selection.html), and [Spot placement score](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-placement-score.html) in the *Amazon EC2 User Guide*."
},
"instanceType": {
"type": "string",
@@ -29625,13 +30459,13 @@
},
"volumeType": {
"type": "string",
- "description": "The volume type. For more information, see [Amazon EBS volume types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) in the *Amazon Elastic Compute Cloud User Guide*."
+ "description": "The volume type. For more information, see [Amazon EBS volume types](https://docs.aws.amazon.com/ebs/latest/userguide/ebs-volume-types.html) in the *Amazon EBS User Guide*."
}
},
"type": "object"
},
"aws-native:ec2:LaunchTemplateElasticGpuSpecification": {
- "description": "Specifies a specification for an Elastic GPU for an Amazon EC2 launch template.\n ``ElasticGpuSpecification`` is a property of [AWS::EC2::LaunchTemplate LaunchTemplateData](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html).",
+ "description": "Amazon Elastic Graphics reached end of life on January 8, 2024. For workloads that require graphics acceleration, we recommend that you use Amazon EC2 G4ad, G4dn, or G5 instances.\n Specifies a specification for an Elastic GPU for an Amazon EC2 launch template.\n ``ElasticGpuSpecification`` is a property of [AWS::EC2::LaunchTemplate LaunchTemplateData](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html).",
"properties": {
"type": {
"type": "string",
@@ -29699,7 +30533,7 @@
"type": "object"
},
"aws-native:ec2:LaunchTemplateIamInstanceProfile": {
- "description": "Specifies an IAM instance profile, which is a container for an IAM role for your instance. You can use an IAM role to distribute your AWS credentials to your instances.\n If you are creating the launch template for use with an Amazon EC2 Auto Scaling group, you can specify either the name or the ARN of the instance profile, but not both.\n ``IamInstanceProfile`` is a property of [AWS::EC2::LaunchTemplate LaunchTemplateData](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html).",
+ "description": "Specifies an IAM instance profile, which is a container for an IAM role for your instance. You can use an IAM role to distribute your AWS credentials to your instances.\n If you are creating the launch template for use with an ASlong group, you can specify either the name or the ARN of the instance profile, but not both.\n ``IamInstanceProfile`` is a property of [AWS::EC2::LaunchTemplate LaunchTemplateData](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html).",
"properties": {
"arn": {
"type": "string",
@@ -29727,7 +30561,7 @@
"type": "object"
},
"aws-native:ec2:LaunchTemplateInstanceRequirements": {
- "description": "The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes.\n You must specify ``VCpuCount`` and ``MemoryMiB``. All other attributes are optional. Any unspecified optional attribute is set to its default.\n When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values.\n To limit the list of instance types from which Amazon EC2 can identify matching instance types, you can use one of the following parameters, but not both in the same request:\n + ``AllowedInstanceTypes`` - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.\n + ``ExcludedInstanceTypes`` - The instance types to exclude from the list, even if they match your specified attributes.\n \n If you specify ``InstanceReq",
+ "description": "The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes.\n You must specify ``VCpuCount`` and ``MemoryMiB``. All other attributes are optional. Any unspecified optional attribute is set to its default.\n When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values.\n To limit the list of instance types from which Amazon EC2 can identify matching instance types, you can use one of the following parameters, but not both in the same request:\n + ``AllowedInstanceTypes`` - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.\n + ``ExcludedInstanceTypes`` - The instance types to exclude from the list, even if they match your specified attributes.\n \n If you specify ``InstanceRequirements``, you can't specify ``InstanceType``.\n Attribute-based instance type selection is only supported when using Auto Scaling groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in the [launch instance wizard](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-instance-wizard.html), or with the [RunInstances](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html) API or [AWS::EC2::Instance](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html) AWS CloudFormation resource, you can't specify ``InstanceRequirements``.\n For more information, see [Attribute-based instance type selection for EC2 Fleet](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html), [Attribute-based instance type selection for Spot Fleet](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-attribute-based-instance-type-selection.html), and [Spot placement score](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-placement-score.html) in the *Amazon EC2 User Guide*.",
"properties": {
"acceleratorCount": {
"$ref": "#/types/aws-native:ec2:LaunchTemplateAcceleratorCount",
@@ -29811,7 +30645,7 @@
},
"maxSpotPriceAsPercentageOfOptimalOnDemandPrice": {
"type": "integer",
- "description": "[Price protection] The price protection threshold for Spot Instances, as a percentage of an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold.\n The parameter accepts an integer, which Amazon EC2 interprets as a percentage.\n To indicate no price protection threshold, specify a high value, such as ``999999``.\n If you set ``DesiredCapacityType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is based on the per vCPU or per memory price instead of the per instanc"
+ "description": "[Price protection] The price protection threshold for Spot Instances, as a percentage of an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold.\n The parameter accepts an integer, which Amazon EC2 interprets as a percentage.\n If you set ``DesiredCapacityType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is based on the per vCPU or per memory price instead of the per instance price.\n Only one of ``SpotMaxPricePercentageOverLowestPrice`` or ``MaxSpotPriceAsPercentageOfOptimalOnDemandPrice`` can be specified. If you don't specify either, Amazon EC2 will automatically apply optimal price protection to consistently select from a wide range of instance types. To indicate no price protection threshold for Spot Instances, meaning you want to consider all instance types that match your attributes, include one of these parameters and specify a high value, such as ``999999``."
},
"memoryGiBPerVCpu": {
"$ref": "#/types/aws-native:ec2:LaunchTemplateMemoryGiBPerVCpu",
@@ -29831,7 +30665,7 @@
},
"onDemandMaxPricePercentageOverLowestPrice": {
"type": "integer",
- "description": "[Price protection] The price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold.\n The parameter accepts an integer, which Amazon EC2 interprets as a percentage.\n To turn off price protection, specify a high value, such as ``999999``.\n This parameter is not supported for [GetSpotPlacementScores](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html) and [GetInstanceTypesFromInstanceRequirements](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html).\n If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is applied based on the per-"
+ "description": "[Price protection] The price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold.\n The parameter accepts an integer, which Amazon EC2 interprets as a percentage.\n To turn off price protection, specify a high value, such as ``999999``.\n This parameter is not supported for [GetSpotPlacementScores](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html) and [GetInstanceTypesFromInstanceRequirements](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html).\n If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price.\n Default: ``20``"
},
"requireHibernateSupport": {
"type": "boolean",
@@ -29839,7 +30673,7 @@
},
"spotMaxPricePercentageOverLowestPrice": {
"type": "integer",
- "description": "[Price protection] The price protection threshold for Spot Instances, as a percentage higher than an identified Spot price. The identified Spot price is the Spot price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified Spot price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose Spot price exceeds your specified threshold.\n The parameter accepts an integer, which Amazon EC2 interprets as a percentage.\n To indicate no price protection threshold, specify a high value, such as ``999999``.\n If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is applied based on the per-vCPU or per-memory price i"
+ "description": "[Price protection] The price protection threshold for Spot Instances, as a percentage higher than an identified Spot price. The identified Spot price is the Spot price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified Spot price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose Spot price exceeds your specified threshold.\n The parameter accepts an integer, which Amazon EC2 interprets as a percentage.\n If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price.\n This parameter is not supported for [GetSpotPlacementScores](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html) and [GetInstanceTypesFromInstanceRequirements](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html).\n Only one of ``SpotMaxPricePercentageOverLowestPrice`` or ``MaxSpotPriceAsPercentageOfOptimalOnDemandPrice`` can be specified. If you don't specify either, Amazon EC2 will automatically apply optimal price protection to consistently select from a wide range of instance types. To indicate no price protection threshold for Spot Instances, meaning you want to consider all instance types that match your attributes, include one of these parameters and specify a high value, such as ``999999``.\n Default: ``100``"
},
"totalLocalStorageGb": {
"$ref": "#/types/aws-native:ec2:LaunchTemplateTotalLocalStorageGb",
@@ -29898,9 +30732,6 @@
"autoRecovery": {
"type": "string",
"description": "Disables the automatic recovery behavior of your instance or sets it to default."
- },
- "rebootMigration": {
- "type": "string"
}
},
"type": "object"
@@ -30197,7 +31028,7 @@
},
"spotInstanceType": {
"type": "string",
- "description": "The Spot Instance request type.\n If you are using Spot Instances with an Auto Scaling group, use ``one-time`` requests, as the Amazon EC2 Auto Scaling service handles requesting new Spot Instances whenever the group is below its desired capacity."
+ "description": "The Spot Instance request type.\n If you are using Spot Instances with an Auto Scaling group, use ``one-time`` requests, as the ASlong service handles requesting new Spot Instances whenever the group is below its desired capacity."
},
"validUntil": {
"type": "string",
@@ -31238,7 +32069,7 @@
]
},
"aws-native:ec2:PrivateDnsNameOptionsOnLaunchProperties": {
- "description": "The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries to the instances should be handled. For more information, see [Amazon EC2 instance hostname types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-naming.html) in the *User Guide*.\n Available options:\n + EnableResourceNameDnsAAAARecord (true | false)\n + EnableResourceNameDnsARecord (true | false)\n + HostnameType (ip-name | resource-name)",
+ "description": "The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries to the instances should be handled. For more information, see [Amazon EC2 instance hostname types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-naming.html) in the *User Guide*.\n Available options:\n + EnableResourceNameDnsAAAARecord (true | false)\n + EnableResourceNameDnsARecord (true | false)\n + HostnameType (ip-name | resource-name)",
"properties": {
"enableResourceNameDnsARecord": {
"type": "boolean"
@@ -35291,7 +36122,7 @@
"description": "The backup policy turns automatic backups for the file system on or off.",
"properties": {
"status": {
- "type": "string",
+ "$ref": "#/types/aws-native:efs:FileSystemBackupPolicyStatus",
"description": "Set the backup policy status for the file system.\n + *ENABLED* - Turns automatic backups on for the file system. \n + *DISABLED* - Turns automatic backups off for the file system."
}
},
@@ -35300,6 +36131,20 @@
"status"
]
},
+ "aws-native:efs:FileSystemBackupPolicyStatus": {
+ "description": "Set the backup policy status for the file system.\n + *ENABLED* - Turns automatic backups on for the file system. \n + *DISABLED* - Turns automatic backups off for the file system.",
+ "type": "string",
+ "enum": [
+ {
+ "name": "Disabled",
+ "value": "DISABLED"
+ },
+ {
+ "name": "Enabled",
+ "value": "ENABLED"
+ }
+ ]
+ },
"aws-native:efs:FileSystemElasticFileSystemTag": {
"description": "A tag is a key-value pair attached to a file system. Allowed characters in the ``Key`` and ``Value`` properties are letters, white space, and numbers that can be represented in UTF-8, and the following characters:``+ - = . _ : /``",
"properties": {
@@ -36084,19 +36929,22 @@
"type": "integer",
"description": "The maximum cached data capacity of the Serverless Cache."
},
+ "minimum": {
+ "type": "integer",
+ "description": "The minimum cached data capacity of the Serverless Cache."
+ },
"unit": {
"$ref": "#/types/aws-native:elasticache:ServerlessCacheDataStorageUnit",
- "description": "The unix of cached data capacity of the Serverless Cache."
+ "description": "The unit of cached data capacity of the Serverless Cache."
}
},
"type": "object",
"required": [
- "maximum",
"unit"
]
},
"aws-native:elasticache:ServerlessCacheDataStorageUnit": {
- "description": "The unix of cached data capacity of the Serverless Cache.",
+ "description": "The unit of cached data capacity of the Serverless Cache.",
"type": "string",
"enum": [
{
@@ -36111,12 +36959,13 @@
"maximum": {
"type": "integer",
"description": "The maximum ECPU per second of the Serverless Cache."
+ },
+ "minimum": {
+ "type": "integer",
+ "description": "The minimum ECPU per second of the Serverless Cache."
}
},
- "type": "object",
- "required": [
- "maximum"
- ]
+ "type": "object"
},
"aws-native:elasticache:ServerlessCacheEndpoint": {
"description": "The address and the port.",
@@ -37695,16 +38544,31 @@
"properties": {
"inputSourceArn": {
"type": "string",
- "description": "An Glue table ARN for the input source table"
+ "description": "An Glue table ARN for the input source table or IdNamespace ARN"
},
"schemaArn": {
"type": "string"
+ },
+ "type": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowInputSourceType"
}
},
"type": "object",
"required": [
- "inputSourceArn",
- "schemaArn"
+ "inputSourceArn"
+ ]
+ },
+ "aws-native:entityresolution:IdMappingWorkflowInputSourceType": {
+ "type": "string",
+ "enum": [
+ {
+ "name": "Source",
+ "value": "SOURCE"
+ },
+ {
+ "name": "Target",
+ "value": "TARGET"
+ }
]
},
"aws-native:entityresolution:IdMappingWorkflowIntermediateSourceConfiguration": {
@@ -41661,7 +42525,7 @@
]
},
"aws-native:gamelift:GameServerGroupAutoScalingPolicy": {
- "description": "Configuration settings to define a scaling policy for the Auto Scaling group that is optimized for game hosting",
+ "description": "Configuration settings to define a scaling policy for the Auto Scaling group that is optimized for game hosting. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource.",
"properties": {
"estimatedInstanceWarmup": {
"type": "number"
@@ -41741,7 +42605,7 @@
]
},
"aws-native:gamelift:GameServerGroupLaunchTemplate": {
- "description": "The EC2 launch template that contains configuration settings and game server code to be deployed to all instances in the game server group.",
+ "description": "The EC2 launch template that contains configuration settings and game server code to be deployed to all instances in the game server group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource.",
"properties": {
"launchTemplateId": {
"type": "string"
@@ -51427,10 +52291,27 @@
"greengrassV2": {
"$ref": "#/types/aws-native:iotsitewise:GatewayGreengrassV2",
"description": "A gateway that runs on AWS IoT Greengrass V2."
+ },
+ "siemensIe": {
+ "$ref": "#/types/aws-native:iotsitewise:GatewaySiemensIe",
+ "description": "A gateway that runs on Siemens Industrial Edge."
}
},
"type": "object"
},
+ "aws-native:iotsitewise:GatewaySiemensIe": {
+ "description": "Contains the IotCoreThingName of AWS IoT Thing that the gateway runs on.",
+ "properties": {
+ "iotCoreThingName": {
+ "type": "string",
+ "description": "The name of the IoT Core Thing."
+ }
+ },
+ "type": "object",
+ "required": [
+ "iotCoreThingName"
+ ]
+ },
"aws-native:iotsitewise:GatewayTag": {
"description": "To add or update tag, provide both key and value. To delete tag, provide only tag key to be deleted",
"properties": {
@@ -53599,6 +54480,101 @@
},
"type": "object"
},
+ "aws-native:kafkaconnect:CustomPluginContentType": {
+ "description": "The type of the plugin file.",
+ "type": "string",
+ "enum": [
+ {
+ "name": "Jar",
+ "value": "JAR"
+ },
+ {
+ "name": "Zip",
+ "value": "ZIP"
+ }
+ ]
+ },
+ "aws-native:kafkaconnect:CustomPluginFileDescription": {
+ "description": "Details about the custom plugin file.",
+ "properties": {
+ "fileMd5": {
+ "type": "string",
+ "description": "The hex-encoded MD5 checksum of the custom plugin file. You can use it to validate the file."
+ },
+ "fileSize": {
+ "type": "integer",
+ "description": "The size in bytes of the custom plugin file. You can use it to validate the file."
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:kafkaconnect:CustomPluginLocation": {
+ "description": "Information about the location of a custom plugin.",
+ "properties": {
+ "s3Location": {
+ "$ref": "#/types/aws-native:kafkaconnect:CustomPluginS3Location"
+ }
+ },
+ "type": "object",
+ "required": [
+ "s3Location"
+ ]
+ },
+ "aws-native:kafkaconnect:CustomPluginS3Location": {
+ "description": "The S3 bucket Amazon Resource Name (ARN), file key, and object version of the plugin file stored in Amazon S3.",
+ "properties": {
+ "bucketArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) of an S3 bucket."
+ },
+ "fileKey": {
+ "type": "string",
+ "description": "The file key for an object in an S3 bucket."
+ },
+ "objectVersion": {
+ "type": "string",
+ "description": "The version of an object in an S3 bucket."
+ }
+ },
+ "type": "object",
+ "required": [
+ "bucketArn",
+ "fileKey"
+ ]
+ },
+ "aws-native:kafkaconnect:CustomPluginTag": {
+ "description": "A key-value pair to associate with a resource.",
+ "properties": {
+ "key": {
+ "type": "string",
+ "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -."
+ },
+ "value": {
+ "type": "string",
+ "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -."
+ }
+ },
+ "type": "object",
+ "required": [
+ "key",
+ "value"
+ ]
+ },
+ "aws-native:kafkaconnect:WorkerConfigurationTag": {
+ "properties": {
+ "key": {
+ "type": "string"
+ },
+ "value": {
+ "type": "string"
+ }
+ },
+ "type": "object",
+ "required": [
+ "key",
+ "value"
+ ]
+ },
"aws-native:kendra:DataSourceAccessControlListConfiguration": {
"properties": {
"keyPath": {
@@ -62398,7 +63374,7 @@
]
},
"aws-native:logs:LogGroupClass": {
- "description": "The class of the log group. Possible values are: STANDARD and INFREQUENT_ACCESS, with STANDARD being the default class",
+ "description": "Specifies the log group class for this log group. There are two classes:\n + The ``Standard`` log class supports all CWL features.\n + The ``Infrequent Access`` log class supports a subset of CWL features and incurs lower costs.\n \n For details about the features supported by each class, see [Log classes](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch_Logs_Log_Classes.html)",
"type": "string",
"enum": [
{
@@ -62412,15 +63388,12 @@
]
},
"aws-native:logs:LogGroupTag": {
- "description": "A key-value pair to associate with a resource.",
"properties": {
"key": {
- "type": "string",
- "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., :, /, =, +, - and @."
+ "type": "string"
},
"value": {
- "type": "string",
- "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., :, /, =, +, - and @."
+ "type": "string"
}
},
"type": "object",
@@ -62430,15 +63403,15 @@
]
},
"aws-native:logs:MetricFilterDimension": {
- "description": "the key-value pairs that further define a metric.",
+ "description": "Specifies the CW metric dimensions to publish with this metric.\n Because dimensions are part of the unique identifier for a metric, whenever a unique dimension name/value pair is extracted from your logs, you are creating a new variation of that metric.\n For more information about publishing dimensions with metrics created by metric filters, see [Publishing dimensions with metrics from values in JSON or space-delimited log events](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html#logs-metric-filters-dimensions).\n Metrics extracted from log events are charged as custom metrics. To prevent unexpected high charges, do not specify high-cardinality fields such as ``IPAddress`` or ``requestID`` as dimensions. Each different value found for a dimension is treated as a separate metric and accrues charges as a separate custom metric. \n To help prevent accidental high charges, Amazon disables a metric filter if it generates 1000 different name/value pairs for the dimensions that you have specified within a certain amount of time.\n You can also set up a billing alarm to alert you if your charges are higher than expected. For more information, see [Creating a Billing Alarm to Monitor Your Estimated Charges](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/monitor_estimated_charges_with_cloudwatch.html).",
"properties": {
"key": {
"type": "string",
- "description": "The key of the dimension. Maximum length of 255."
+ "description": "The name for the CW metric dimension that the metric filter creates.\n Dimension names must contain only ASCII characters, must include at least one non-whitespace character, and cannot start with a colon (:)."
},
"value": {
"type": "string",
- "description": "The value of the dimension. Maximum length of 255."
+ "description": "The log event field that will contain the value for this dimension. This dimension will only be published for a metric if the value is found in the log event. For example, ``$.eventType`` for JSON log events, or ``$server`` for space-delimited log events."
}
},
"type": "object",
@@ -62448,33 +63421,34 @@
]
},
"aws-native:logs:MetricFilterMetricTransformation": {
+ "description": "``MetricTransformation`` is a property of the ``AWS::Logs::MetricFilter`` resource that describes how to transform log streams into a CloudWatch metric.",
"properties": {
"defaultValue": {
"type": "number",
- "description": "The value to emit when a filter pattern does not match a log event. This value can be null."
+ "description": "(Optional) The value to emit when a filter pattern does not match a log event. This value can be null."
},
"dimensions": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:logs:MetricFilterDimension"
},
- "description": "Dimensions are the key-value pairs that further define a metric"
+ "description": "The fields to use as dimensions for the metric. One metric filter can include as many as three dimensions.\n Metrics extracted from log events are charged as custom metrics. To prevent unexpected high charges, do not specify high-cardinality fields such as ``IPAddress`` or ``requestID`` as dimensions. Each different value found for a dimension is treated as a separate metric and accrues charges as a separate custom metric. \n CloudWatch Logs disables a metric filter if it generates 1000 different name/value pairs for your specified dimensions within a certain amount of time. This helps to prevent accidental high charges.\n You can also set up a billing alarm to alert you if your charges are higher than expected. For more information, see [Creating a Billing Alarm to Monitor Your Estimated Charges](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/monitor_estimated_charges_with_cloudwatch.html)."
},
"metricName": {
"type": "string",
- "description": "The name of the CloudWatch metric. Metric name must be in ASCII format."
+ "description": "The name of the CloudWatch metric."
},
"metricNamespace": {
"type": "string",
- "description": "The namespace of the CloudWatch metric."
+ "description": "A custom namespace to contain your metric in CloudWatch. Use namespaces to group together metrics that are similar. For more information, see [Namespaces](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Namespace)."
},
"metricValue": {
"type": "string",
- "description": "The value to publish to the CloudWatch metric when a filter pattern matches a log event."
+ "description": "The value that is published to the CloudWatch metric. For example, if you're counting the occurrences of a particular term like ``Error``, specify 1 for the metric value. If you're counting the number of bytes transferred, reference the value that is in the log event by using $. followed by the name of the field that you specified in the filter pattern, such as ``$.size``."
},
"unit": {
"$ref": "#/types/aws-native:logs:MetricFilterMetricTransformationUnit",
- "description": "The unit to assign to the metric. If you omit this, the unit is set as None."
+ "description": "The unit to assign to the metric. If you omit this, the unit is set as ``None``."
}
},
"type": "object",
@@ -62485,7 +63459,7 @@
]
},
"aws-native:logs:MetricFilterMetricTransformationUnit": {
- "description": "The unit to assign to the metric. If you omit this, the unit is set as None.",
+ "description": "The unit to assign to the metric. If you omit this, the unit is set as ``None``.",
"type": "string",
"enum": [
{
@@ -62599,7 +63573,7 @@
]
},
"aws-native:logs:SubscriptionFilterDistribution": {
- "description": "The method used to distribute log data to the destination. By default, log data is grouped by log stream, but the grouping can be set to random for a more even distribution. This property is only applicable when the destination is an Amazon Kinesis stream.",
+ "description": "The method used to distribute log data to the destination, which can be either random or grouped by log stream.",
"type": "string",
"enum": [
{
@@ -111503,6 +112477,28 @@
"rtoInSecs"
]
},
+ "aws-native:resiliencehub:ResiliencyPolicyPolicyMap": {
+ "properties": {
+ "az": {
+ "$ref": "#/types/aws-native:resiliencehub:ResiliencyPolicyFailurePolicy"
+ },
+ "hardware": {
+ "$ref": "#/types/aws-native:resiliencehub:ResiliencyPolicyFailurePolicy"
+ },
+ "region": {
+ "$ref": "#/types/aws-native:resiliencehub:ResiliencyPolicyFailurePolicy"
+ },
+ "software": {
+ "$ref": "#/types/aws-native:resiliencehub:ResiliencyPolicyFailurePolicy"
+ }
+ },
+ "type": "object",
+ "required": [
+ "az",
+ "hardware",
+ "software"
+ ]
+ },
"aws-native:resiliencehub:ResiliencyPolicyTier": {
"description": "Resiliency Policy Tier.",
"type": "string",
@@ -124694,6 +125690,185 @@
"standardsControlArn"
]
},
+ "aws-native:securitylake:DataLakeEncryptionConfiguration": {
+ "description": "Provides encryption details of Amazon Security Lake object.",
+ "properties": {
+ "kmsKeyId": {
+ "type": "string",
+ "description": "The id of KMS encryption key used by Amazon Security Lake to encrypt the Security Lake object."
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:securitylake:DataLakeExpiration": {
+ "description": "Provides data expiration details of Amazon Security Lake object.",
+ "properties": {
+ "days": {
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:securitylake:DataLakeLifecycleConfiguration": {
+ "description": "Provides lifecycle details of Amazon Security Lake object.",
+ "properties": {
+ "expiration": {
+ "$ref": "#/types/aws-native:securitylake:DataLakeExpiration"
+ },
+ "transitions": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:securitylake:DataLakeTransitions"
+ },
+ "description": "Provides data storage transition details of Amazon Security Lake object."
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:securitylake:DataLakeReplicationConfiguration": {
+ "description": "Provides replication details of Amazon Security Lake object.",
+ "properties": {
+ "regions": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "roleArn": {
+ "type": "string",
+ "description": "Replication settings for the Amazon S3 buckets. This parameter uses the AWS Identity and Access Management (IAM) role you created that is managed by Security Lake, to ensure the replication setting is correct."
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:securitylake:DataLakeTag": {
+ "description": "A key-value pair to associate with a resource.",
+ "properties": {
+ "key": {
+ "type": "string",
+ "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, `_`, `.`, `/`, `=`, `+`, and `-`."
+ },
+ "value": {
+ "type": "string",
+ "description": "The value for the tag. You can specify a value that is 0 to 256 characters in length."
+ }
+ },
+ "type": "object",
+ "required": [
+ "key",
+ "value"
+ ]
+ },
+ "aws-native:securitylake:DataLakeTransitions": {
+ "properties": {
+ "days": {
+ "type": "integer",
+ "description": "Number of days before data transitions to a different S3 Storage Class in the Amazon Security Lake object."
+ },
+ "storageClass": {
+ "type": "string",
+ "description": "The range of storage classes that you can choose from based on the data access, resiliency, and cost requirements of your workloads."
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:securitylake:SubscriberAccessTypesItem": {
+ "type": "string",
+ "enum": [
+ {
+ "name": "Lakeformation",
+ "value": "LAKEFORMATION"
+ },
+ {
+ "name": "S3",
+ "value": "S3"
+ }
+ ]
+ },
+ "aws-native:securitylake:SubscriberAwsLogSource": {
+ "description": "Amazon Security Lake supports log and event collection for natively supported AWS services.",
+ "properties": {
+ "sourceName": {
+ "type": "string",
+ "description": "The name for a AWS source. This must be a Regionally unique value."
+ },
+ "sourceVersion": {
+ "type": "string",
+ "description": "The version for a AWS source. This must be a Regionally unique value."
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:securitylake:SubscriberCustomLogSource": {
+ "properties": {
+ "sourceName": {
+ "type": "string",
+ "description": "The name for a third-party custom source. This must be a Regionally unique value."
+ },
+ "sourceVersion": {
+ "type": "string",
+ "description": "The version for a third-party custom source. This must be a Regionally unique value."
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:securitylake:SubscriberIdentityProperties": {
+ "description": "The AWS identity used to access your data.",
+ "properties": {
+ "externalId": {
+ "type": "string",
+ "description": "The external ID used to establish trust relationship with the AWS identity."
+ },
+ "principal": {
+ "type": "string",
+ "description": "The AWS identity principal."
+ }
+ },
+ "type": "object",
+ "required": [
+ "externalId",
+ "principal"
+ ]
+ },
+ "aws-native:securitylake:SubscriberSource0Properties": {
+ "properties": {
+ "awsLogSource": {
+ "$ref": "#/types/aws-native:securitylake:SubscriberAwsLogSource"
+ }
+ },
+ "type": "object",
+ "required": [
+ "awsLogSource"
+ ]
+ },
+ "aws-native:securitylake:SubscriberSource1Properties": {
+ "properties": {
+ "customLogSource": {
+ "$ref": "#/types/aws-native:securitylake:SubscriberCustomLogSource"
+ }
+ },
+ "type": "object",
+ "required": [
+ "customLogSource"
+ ]
+ },
+ "aws-native:securitylake:SubscriberTag": {
+ "properties": {
+ "key": {
+ "type": "string",
+ "description": "The name of the tag. This is a general label that acts as a category for a more specific tag value (value)."
+ },
+ "value": {
+ "type": "string",
+ "description": "The value that is associated with the specified tag key (key). This value acts as a descriptor for the tag key. A tag value cannot be null, but it can be an empty string."
+ }
+ },
+ "type": "object",
+ "required": [
+ "key",
+ "value"
+ ]
+ },
"aws-native:servicecatalog:CloudFormationProvisionedProductAcceptLanguage": {
"type": "string",
"enum": [
@@ -137799,6 +138974,79 @@
"triggerConfig"
]
},
+ "aws-native:appintegrations:Application": {
+ "description": "Resource Type definition for AWS:AppIntegrations::Application",
+ "properties": {
+ "applicationArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) of the application."
+ },
+ "applicationSourceConfig": {
+ "$ref": "#/types/aws-native:appintegrations:ApplicationSourceConfigProperties",
+ "description": "Application source config"
+ },
+ "awsId": {
+ "type": "string",
+ "description": "The id of the application."
+ },
+ "description": {
+ "type": "string",
+ "description": "The application description."
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the application."
+ },
+ "namespace": {
+ "type": "string",
+ "description": "The namespace of the application."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "The tags (keys and values) associated with the application."
+ }
+ },
+ "type": "object",
+ "required": [
+ "applicationArn",
+ "applicationSourceConfig",
+ "awsId",
+ "description",
+ "name"
+ ],
+ "inputProperties": {
+ "applicationSourceConfig": {
+ "$ref": "#/types/aws-native:appintegrations:ApplicationSourceConfigProperties",
+ "description": "Application source config"
+ },
+ "description": {
+ "type": "string",
+ "description": "The application description."
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the application."
+ },
+ "namespace": {
+ "type": "string",
+ "description": "The namespace of the application."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "The tags (keys and values) associated with the application."
+ }
+ },
+ "requiredInputs": [
+ "applicationSourceConfig",
+ "description"
+ ]
+ },
"aws-native:appintegrations:DataIntegration": {
"description": "Resource Type definition for AWS::AppIntegrations::DataIntegration",
"properties": {
@@ -139590,7 +140838,8 @@
"description": "The maximum number of resolver request inputs that will be sent to a single LAMlong function in a ``BatchInvoke`` operation."
},
"metricsConfig": {
- "$ref": "#/types/aws-native:appsync:ResolverMetricsConfig"
+ "$ref": "#/types/aws-native:appsync:ResolverMetricsConfig",
+ "description": "Enables or disables enhanced resolver metrics for specified resolvers. Note that ``MetricsConfig`` won't be used unless the ``resolverLevelMetricsBehavior`` value is set to ``PER_RESOLVER_METRICS``. If the ``resolverLevelMetricsBehavior`` is set to ``FULL_REQUEST_RESOLVER_METRICS`` instead, ``MetricsConfig`` will be ignored. However, you can still set its value."
},
"pipelineConfig": {
"$ref": "#/types/aws-native:appsync:ResolverPipelineConfig",
@@ -139670,7 +140919,8 @@
"description": "The maximum number of resolver request inputs that will be sent to a single LAMlong function in a ``BatchInvoke`` operation."
},
"metricsConfig": {
- "$ref": "#/types/aws-native:appsync:ResolverMetricsConfig"
+ "$ref": "#/types/aws-native:appsync:ResolverMetricsConfig",
+ "description": "Enables or disables enhanced resolver metrics for specified resolvers. Note that ``MetricsConfig`` won't be used unless the ``resolverLevelMetricsBehavior`` value is set to ``PER_RESOLVER_METRICS``. If the ``resolverLevelMetricsBehavior`` is set to ``FULL_REQUEST_RESOLVER_METRICS`` instead, ``MetricsConfig`` will be ignored. However, you can still set its value."
},
"pipelineConfig": {
"$ref": "#/types/aws-native:appsync:ResolverPipelineConfig",
@@ -139862,6 +141112,83 @@
"workspace"
]
},
+ "aws-native:aps:Scraper": {
+ "description": "Resource Type definition for AWS::APS::Scraper",
+ "properties": {
+ "alias": {
+ "type": "string",
+ "description": "Scraper alias.",
+ "replaceOnChanges": true
+ },
+ "arn": {
+ "type": "string",
+ "description": "Scraper ARN."
+ },
+ "destination": {
+ "$ref": "#/types/aws-native:aps:ScraperDestination",
+ "replaceOnChanges": true
+ },
+ "roleArn": {
+ "type": "string",
+ "description": "IAM role ARN for the scraper."
+ },
+ "scrapeConfiguration": {
+ "$ref": "#/types/aws-native:aps:ScraperScrapeConfiguration",
+ "replaceOnChanges": true
+ },
+ "scraperId": {
+ "type": "string",
+ "description": "Required to identify a specific scraper."
+ },
+ "source": {
+ "$ref": "#/types/aws-native:aps:ScraperSource",
+ "replaceOnChanges": true
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "An array of key-value pairs to apply to this resource."
+ }
+ },
+ "type": "object",
+ "required": [
+ "arn",
+ "destination",
+ "roleArn",
+ "scrapeConfiguration",
+ "scraperId",
+ "source"
+ ],
+ "inputProperties": {
+ "alias": {
+ "type": "string",
+ "description": "Scraper alias."
+ },
+ "destination": {
+ "$ref": "#/types/aws-native:aps:ScraperDestination"
+ },
+ "scrapeConfiguration": {
+ "$ref": "#/types/aws-native:aps:ScraperScrapeConfiguration"
+ },
+ "source": {
+ "$ref": "#/types/aws-native:aps:ScraperSource"
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "An array of key-value pairs to apply to this resource."
+ }
+ },
+ "requiredInputs": [
+ "destination",
+ "scrapeConfiguration",
+ "source"
+ ]
+ },
"aws-native:aps:Workspace": {
"description": "Resource Type definition for AWS::APS::Workspace\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var apsWorkspace = new AwsNative.Aps.Workspace(\"apsWorkspace\", new()\n {\n Alias = \"TestWorkspace\",\n Tags = new[]\n {\n new AwsNative.Inputs.TagArgs\n {\n Key = \"BusinessPurpose\",\n Value = \"LoadTesting\",\n },\n },\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\tawsnative \"github.com/pulumi/pulumi-aws-native/sdk/go/aws\"\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/aps\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := aps.NewWorkspace(ctx, \"apsWorkspace\", \u0026aps.WorkspaceArgs{\n\t\t\tAlias: pulumi.String(\"TestWorkspace\"),\n\t\t\tTags: aws.TagArray{\n\t\t\t\t\u0026aws.TagArgs{\n\t\t\t\t\tKey: pulumi.String(\"BusinessPurpose\"),\n\t\t\t\t\tValue: pulumi.String(\"LoadTesting\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst apsWorkspace = new aws_native.aps.Workspace(\"apsWorkspace\", {\n alias: \"TestWorkspace\",\n tags: [{\n key: \"BusinessPurpose\",\n value: \"LoadTesting\",\n }],\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\naps_workspace = aws_native.aps.Workspace(\"apsWorkspace\",\n alias=\"TestWorkspace\",\n tags=[aws_native.TagArgs(\n key=\"BusinessPurpose\",\n value=\"LoadTesting\",\n )])\n\n```\n\n{{% /example %}}\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var apsWorkspace = new AwsNative.Aps.Workspace(\"apsWorkspace\", new()\n {\n Alias = \"TestWorkspace\",\n LoggingConfiguration = new AwsNative.Aps.Inputs.WorkspaceLoggingConfigurationArgs\n {\n LogGroupArn = \"arn:aws:logs:{region}:{account}:log-group:test-log-group:*\",\n },\n Tags = new[]\n {\n new AwsNative.Inputs.TagArgs\n {\n Key = \"BusinessPurpose\",\n Value = \"LoadTesting\",\n },\n },\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\tawsnative \"github.com/pulumi/pulumi-aws-native/sdk/go/aws\"\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/aps\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := aps.NewWorkspace(ctx, \"apsWorkspace\", \u0026aps.WorkspaceArgs{\n\t\t\tAlias: pulumi.String(\"TestWorkspace\"),\n\t\t\tLoggingConfiguration: \u0026aps.WorkspaceLoggingConfigurationArgs{\n\t\t\t\tLogGroupArn: pulumi.String(\"arn:aws:logs:{region}:{account}:log-group:test-log-group:*\"),\n\t\t\t},\n\t\t\tTags: aws.TagArray{\n\t\t\t\t\u0026aws.TagArgs{\n\t\t\t\t\tKey: pulumi.String(\"BusinessPurpose\"),\n\t\t\t\t\tValue: pulumi.String(\"LoadTesting\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst apsWorkspace = new aws_native.aps.Workspace(\"apsWorkspace\", {\n alias: \"TestWorkspace\",\n loggingConfiguration: {\n logGroupArn: \"arn:aws:logs:{region}:{account}:log-group:test-log-group:*\",\n },\n tags: [{\n key: \"BusinessPurpose\",\n value: \"LoadTesting\",\n }],\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\naps_workspace = aws_native.aps.Workspace(\"apsWorkspace\",\n alias=\"TestWorkspace\",\n logging_configuration=aws_native.aps.WorkspaceLoggingConfigurationArgs(\n log_group_arn=\"arn:aws:logs:{region}:{account}:log-group:test-log-group:*\",\n ),\n tags=[aws_native.TagArgs(\n key=\"BusinessPurpose\",\n value=\"LoadTesting\",\n )])\n\n```\n\n{{% /example %}}\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var apsWorkspace = new AwsNative.Aps.Workspace(\"apsWorkspace\", new()\n {\n Alias = \"TestWorkspace\",\n LoggingConfiguration = new AwsNative.Aps.Inputs.WorkspaceLoggingConfigurationArgs\n {\n LogGroupArn = \"arn:aws:logs:{region}:{account}:log-group:test-log-group:*\",\n },\n Tags = new[]\n {\n new AwsNative.Inputs.TagArgs\n {\n Key = \"BusinessPurpose\",\n Value = \"LoadTesting\",\n },\n },\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\tawsnative \"github.com/pulumi/pulumi-aws-native/sdk/go/aws\"\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/aps\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := aps.NewWorkspace(ctx, \"apsWorkspace\", \u0026aps.WorkspaceArgs{\n\t\t\tAlias: pulumi.String(\"TestWorkspace\"),\n\t\t\tLoggingConfiguration: \u0026aps.WorkspaceLoggingConfigurationArgs{\n\t\t\t\tLogGroupArn: pulumi.String(\"arn:aws:logs:{region}:{account}:log-group:test-log-group:*\"),\n\t\t\t},\n\t\t\tTags: aws.TagArray{\n\t\t\t\t\u0026aws.TagArgs{\n\t\t\t\t\tKey: pulumi.String(\"BusinessPurpose\"),\n\t\t\t\t\tValue: pulumi.String(\"LoadTesting\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst apsWorkspace = new aws_native.aps.Workspace(\"apsWorkspace\", {\n alias: \"TestWorkspace\",\n loggingConfiguration: {\n logGroupArn: \"arn:aws:logs:{region}:{account}:log-group:test-log-group:*\",\n },\n tags: [{\n key: \"BusinessPurpose\",\n value: \"LoadTesting\",\n }],\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\naps_workspace = aws_native.aps.Workspace(\"apsWorkspace\",\n alias=\"TestWorkspace\",\n logging_configuration=aws_native.aps.WorkspaceLoggingConfigurationArgs(\n log_group_arn=\"arn:aws:logs:{region}:{account}:log-group:test-log-group:*\",\n ),\n tags=[aws_native.TagArgs(\n key=\"BusinessPurpose\",\n value=\"LoadTesting\",\n )])\n\n```\n\n{{% /example %}}\n{{% /examples %}}\n",
"properties": {
@@ -142428,6 +143755,283 @@
}
}
},
+ "aws-native:bedrock:Agent": {
+ "description": "Definition of AWS::Bedrock::Agent Resource Type",
+ "properties": {
+ "actionGroups": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:bedrock:AgentActionGroup"
+ },
+ "description": "List of ActionGroups"
+ },
+ "agentArn": {
+ "type": "string",
+ "description": "Arn representation of the Agent."
+ },
+ "agentId": {
+ "type": "string",
+ "description": "Identifier for a resource."
+ },
+ "agentName": {
+ "type": "string",
+ "description": "Name for a resource."
+ },
+ "agentResourceRoleArn": {
+ "type": "string",
+ "description": "ARN of a IAM role."
+ },
+ "agentStatus": {
+ "$ref": "#/types/aws-native:bedrock:AgentStatus"
+ },
+ "agentVersion": {
+ "type": "string",
+ "description": "Draft Agent Version."
+ },
+ "autoPrepare": {
+ "type": "boolean",
+ "description": "Specifies whether to automatically prepare after creating or updating the agent."
+ },
+ "createdAt": {
+ "type": "string",
+ "description": "Time Stamp."
+ },
+ "customerEncryptionKeyArn": {
+ "type": "string",
+ "description": "A KMS key ARN"
+ },
+ "description": {
+ "type": "string",
+ "description": "Description of the Resource."
+ },
+ "failureReasons": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Failure Reasons for Error."
+ },
+ "foundationModel": {
+ "type": "string",
+ "description": "ARN or name of a Bedrock model."
+ },
+ "idleSessionTtlInSeconds": {
+ "type": "number",
+ "description": "Max Session Time."
+ },
+ "instruction": {
+ "type": "string",
+ "description": "Instruction for the agent."
+ },
+ "knowledgeBases": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:bedrock:AgentKnowledgeBase"
+ },
+ "description": "List of Agent Knowledge Bases"
+ },
+ "preparedAt": {
+ "type": "string",
+ "description": "Time Stamp."
+ },
+ "promptOverrideConfiguration": {
+ "$ref": "#/types/aws-native:bedrock:AgentPromptOverrideConfiguration"
+ },
+ "recommendedActions": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The recommended actions users can take to resolve an error in failureReasons."
+ },
+ "skipResourceInUseCheckOnDelete": {
+ "type": "boolean",
+ "description": "Specifies whether to allow deleting agent while it is in use."
+ },
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "updatedAt": {
+ "type": "string",
+ "description": "Time Stamp."
+ }
+ },
+ "type": "object",
+ "required": [
+ "agentArn",
+ "agentId",
+ "agentName",
+ "agentStatus",
+ "agentVersion",
+ "createdAt",
+ "failureReasons",
+ "preparedAt",
+ "recommendedActions",
+ "updatedAt"
+ ],
+ "inputProperties": {
+ "actionGroups": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:bedrock:AgentActionGroup"
+ },
+ "description": "List of ActionGroups"
+ },
+ "agentName": {
+ "type": "string",
+ "description": "Name for a resource."
+ },
+ "agentResourceRoleArn": {
+ "type": "string",
+ "description": "ARN of a IAM role."
+ },
+ "autoPrepare": {
+ "type": "boolean",
+ "description": "Specifies whether to automatically prepare after creating or updating the agent."
+ },
+ "customerEncryptionKeyArn": {
+ "type": "string",
+ "description": "A KMS key ARN"
+ },
+ "description": {
+ "type": "string",
+ "description": "Description of the Resource."
+ },
+ "foundationModel": {
+ "type": "string",
+ "description": "ARN or name of a Bedrock model."
+ },
+ "idleSessionTtlInSeconds": {
+ "type": "number",
+ "description": "Max Session Time."
+ },
+ "instruction": {
+ "type": "string",
+ "description": "Instruction for the agent."
+ },
+ "knowledgeBases": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:bedrock:AgentKnowledgeBase"
+ },
+ "description": "List of Agent Knowledge Bases"
+ },
+ "promptOverrideConfiguration": {
+ "$ref": "#/types/aws-native:bedrock:AgentPromptOverrideConfiguration"
+ },
+ "skipResourceInUseCheckOnDelete": {
+ "type": "boolean",
+ "description": "Specifies whether to allow deleting agent while it is in use."
+ },
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "aws-native:bedrock:AgentAlias": {
+ "description": "Definition of AWS::Bedrock::AgentAlias Resource Type",
+ "properties": {
+ "agentAliasArn": {
+ "type": "string",
+ "description": "Arn representation of the Agent Alias."
+ },
+ "agentAliasHistoryEvents": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:bedrock:AgentAliasHistoryEvent"
+ },
+ "description": "The list of history events for an alias for an Agent."
+ },
+ "agentAliasId": {
+ "type": "string",
+ "description": "Id for an Agent Alias generated at the server side."
+ },
+ "agentAliasName": {
+ "type": "string",
+ "description": "Name for a resource."
+ },
+ "agentAliasStatus": {
+ "$ref": "#/types/aws-native:bedrock:AgentAliasStatus"
+ },
+ "agentId": {
+ "type": "string",
+ "description": "Identifier for a resource.",
+ "replaceOnChanges": true
+ },
+ "createdAt": {
+ "type": "string",
+ "description": "Time Stamp."
+ },
+ "description": {
+ "type": "string",
+ "description": "Description of the Resource."
+ },
+ "routingConfiguration": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:bedrock:AgentAliasRoutingConfigurationListItem"
+ },
+ "description": "Routing configuration for an Agent alias."
+ },
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "updatedAt": {
+ "type": "string",
+ "description": "Time Stamp."
+ }
+ },
+ "type": "object",
+ "required": [
+ "agentAliasArn",
+ "agentAliasHistoryEvents",
+ "agentAliasId",
+ "agentAliasName",
+ "agentAliasStatus",
+ "agentId",
+ "createdAt",
+ "updatedAt"
+ ],
+ "inputProperties": {
+ "agentAliasName": {
+ "type": "string",
+ "description": "Name for a resource."
+ },
+ "agentId": {
+ "type": "string",
+ "description": "Identifier for a resource."
+ },
+ "description": {
+ "type": "string",
+ "description": "Description of the Resource."
+ },
+ "routingConfiguration": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:bedrock:AgentAliasRoutingConfigurationListItem"
+ },
+ "description": "Routing configuration for an Agent alias."
+ },
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ },
+ "requiredInputs": [
+ "agentId"
+ ]
+ },
"aws-native:budgets:BudgetsAction": {
"description": "An example resource schema demonstrating some basic constructs and validation rules.",
"properties": {
@@ -146013,6 +147617,91 @@
}
}
},
+ "aws-native:codeartifact:PackageGroup": {
+ "description": "The resource schema to create a CodeArtifact package group.",
+ "properties": {
+ "arn": {
+ "type": "string",
+ "description": "The ARN of the package group."
+ },
+ "contactInfo": {
+ "type": "string",
+ "description": "The contact info of the package group."
+ },
+ "description": {
+ "type": "string",
+ "description": "The text description of the package group."
+ },
+ "domainName": {
+ "type": "string",
+ "description": "The name of the domain that contains the package group.",
+ "replaceOnChanges": true
+ },
+ "domainOwner": {
+ "type": "string",
+ "description": "The 12-digit account ID of the AWS account that owns the domain."
+ },
+ "originConfiguration": {
+ "$ref": "#/types/aws-native:codeartifact:PackageGroupOriginConfiguration",
+ "description": "The package origin configuration of the package group."
+ },
+ "pattern": {
+ "type": "string",
+ "description": "The package group pattern that is used to gather packages.",
+ "replaceOnChanges": true
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "An array of key-value pairs to apply to the package group."
+ }
+ },
+ "type": "object",
+ "required": [
+ "arn",
+ "domainName",
+ "pattern"
+ ],
+ "inputProperties": {
+ "contactInfo": {
+ "type": "string",
+ "description": "The contact info of the package group."
+ },
+ "description": {
+ "type": "string",
+ "description": "The text description of the package group."
+ },
+ "domainName": {
+ "type": "string",
+ "description": "The name of the domain that contains the package group."
+ },
+ "domainOwner": {
+ "type": "string",
+ "description": "The 12-digit account ID of the AWS account that owns the domain."
+ },
+ "originConfiguration": {
+ "$ref": "#/types/aws-native:codeartifact:PackageGroupOriginConfiguration",
+ "description": "The package origin configuration of the package group."
+ },
+ "pattern": {
+ "type": "string",
+ "description": "The package group pattern that is used to gather packages."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "An array of key-value pairs to apply to the package group."
+ }
+ },
+ "requiredInputs": [
+ "domainName",
+ "pattern"
+ ]
+ },
"aws-native:codeartifact:Repository": {
"description": "The resource schema to create a CodeArtifact repository.",
"properties": {
@@ -146174,6 +147863,73 @@
}
}
},
+ "aws-native:codeconnections:Connection": {
+ "description": "Schema for AWS::CodeConnections::Connection resource which can be used to connect external source providers with other AWS services (i.e. AWS CodePipeline)",
+ "properties": {
+ "connectionArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) of the connection. The ARN is used as the connection reference when the connection is shared between AWS services."
+ },
+ "connectionName": {
+ "type": "string",
+ "description": "The name of the connection. Connection names must be unique in an AWS user account.",
+ "replaceOnChanges": true
+ },
+ "connectionStatus": {
+ "type": "string",
+ "description": "The current status of the connection."
+ },
+ "hostArn": {
+ "type": "string",
+ "description": "The host arn configured to represent the infrastructure where your third-party provider is installed. You must specify either a ProviderType or a HostArn.",
+ "replaceOnChanges": true
+ },
+ "ownerAccountId": {
+ "type": "string",
+ "description": "The name of the external provider where your third-party code repository is configured. For Bitbucket, this is the account ID of the owner of the Bitbucket repository."
+ },
+ "providerType": {
+ "type": "string",
+ "description": "The name of the external provider where your third-party code repository is configured. You must specify either a ProviderType or a HostArn.",
+ "replaceOnChanges": true
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "Specifies the tags applied to a connection."
+ }
+ },
+ "type": "object",
+ "required": [
+ "connectionArn",
+ "connectionName",
+ "connectionStatus",
+ "ownerAccountId"
+ ],
+ "inputProperties": {
+ "connectionName": {
+ "type": "string",
+ "description": "The name of the connection. Connection names must be unique in an AWS user account."
+ },
+ "hostArn": {
+ "type": "string",
+ "description": "The host arn configured to represent the infrastructure where your third-party provider is installed. You must specify either a ProviderType or a HostArn."
+ },
+ "providerType": {
+ "type": "string",
+ "description": "The name of the external provider where your third-party code repository is configured. You must specify either a ProviderType or a HostArn."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "Specifies the tags applied to a connection."
+ }
+ }
+ },
"aws-native:codedeploy:Application": {
"description": "The AWS::CodeDeploy::Application resource creates an AWS CodeDeploy application",
"properties": {
@@ -146610,7 +148366,7 @@
"replaceOnChanges": true
},
"providerType": {
- "type": "string",
+ "$ref": "#/types/aws-native:codestarconnections:RepositoryLinkProviderType",
"description": "The name of the external provider where your third-party code repository is configured."
},
"repositoryLinkArn": {
@@ -146690,9 +148446,13 @@
"description": "the ID of the entity that owns the repository."
},
"providerType": {
- "type": "string",
+ "$ref": "#/types/aws-native:codestarconnections:SyncConfigurationProviderType",
"description": "The name of the external provider where your third-party code repository is configured."
},
+ "publishDeploymentStatus": {
+ "$ref": "#/types/aws-native:codestarconnections:SyncConfigurationPublishDeploymentStatus",
+ "description": "Whether to enable or disable publishing of deployment status to source providers."
+ },
"repositoryLinkId": {
"type": "string",
"description": "A UUID that uniquely identifies the RepositoryLink that the SyncConfig is associated with."
@@ -146714,6 +148474,10 @@
"type": "string",
"description": "The type of resource synchronization service that is to be configured, for example, CFN_STACK_SYNC.",
"replaceOnChanges": true
+ },
+ "triggerResourceUpdateOn": {
+ "$ref": "#/types/aws-native:codestarconnections:SyncConfigurationTriggerResourceUpdateOn",
+ "description": "When to trigger Git sync to begin the stack update."
}
},
"type": "object",
@@ -146737,6 +148501,10 @@
"type": "string",
"description": "The source provider repository path of the sync configuration file of the respective SyncType."
},
+ "publishDeploymentStatus": {
+ "$ref": "#/types/aws-native:codestarconnections:SyncConfigurationPublishDeploymentStatus",
+ "description": "Whether to enable or disable publishing of deployment status to source providers."
+ },
"repositoryLinkId": {
"type": "string",
"description": "A UUID that uniquely identifies the RepositoryLink that the SyncConfig is associated with."
@@ -146752,6 +148520,10 @@
"syncType": {
"type": "string",
"description": "The type of resource synchronization service that is to be configured, for example, CFN_STACK_SYNC."
+ },
+ "triggerResourceUpdateOn": {
+ "$ref": "#/types/aws-native:codestarconnections:SyncConfigurationTriggerResourceUpdateOn",
+ "description": "When to trigger Git sync to begin the stack update."
}
},
"requiredInputs": [
@@ -149231,6 +151003,14 @@
"description": "The identifier of the Amazon Connect instance.",
"replaceOnChanges": true
},
+ "lastModifiedRegion": {
+ "type": "string",
+ "description": "Last modified region."
+ },
+ "lastModifiedTime": {
+ "type": "number",
+ "description": "Last modified time."
+ },
"name": {
"type": "string",
"description": "The name of the predefined attribute.",
@@ -149244,6 +151024,8 @@
"type": "object",
"required": [
"instanceArn",
+ "lastModifiedRegion",
+ "lastModifiedTime",
"name",
"values"
],
@@ -149753,6 +151535,10 @@
"aws-native:connect:SecurityProfile": {
"description": "Resource Type definition for AWS::Connect::SecurityProfile",
"properties": {
+ "allowedAccessControlHierarchyGroupId": {
+ "type": "string",
+ "description": "The identifier of the hierarchy group that a security profile uses to restrict access to resources in Amazon Connect."
+ },
"allowedAccessControlTags": {
"type": "array",
"items": {
@@ -149760,15 +151546,37 @@
},
"description": "The list of tags that a security profile uses to restrict access to resources in Amazon Connect."
},
+ "applications": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:connect:SecurityProfileApplication"
+ },
+ "description": "A list of third-party applications that the security profile will give access to."
+ },
"description": {
"type": "string",
"description": "The description of the security profile."
},
+ "hierarchyRestrictedResources": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The list of resources that a security profile applies hierarchy restrictions to in Amazon Connect."
+ },
"instanceArn": {
"type": "string",
"description": "The identifier of the Amazon Connect instance.",
"replaceOnChanges": true
},
+ "lastModifiedRegion": {
+ "type": "string",
+ "description": "The AWS Region where this resource was last modified."
+ },
+ "lastModifiedTime": {
+ "type": "number",
+ "description": "The timestamp when this resource was last modified."
+ },
"permissions": {
"type": "array",
"items": {
@@ -149803,10 +151611,16 @@
"type": "object",
"required": [
"instanceArn",
+ "lastModifiedRegion",
+ "lastModifiedTime",
"securityProfileArn",
"securityProfileName"
],
"inputProperties": {
+ "allowedAccessControlHierarchyGroupId": {
+ "type": "string",
+ "description": "The identifier of the hierarchy group that a security profile uses to restrict access to resources in Amazon Connect."
+ },
"allowedAccessControlTags": {
"type": "array",
"items": {
@@ -149814,10 +151628,24 @@
},
"description": "The list of tags that a security profile uses to restrict access to resources in Amazon Connect."
},
+ "applications": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:connect:SecurityProfileApplication"
+ },
+ "description": "A list of third-party applications that the security profile will give access to."
+ },
"description": {
"type": "string",
"description": "The description of the security profile."
},
+ "hierarchyRestrictedResources": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The list of resources that a security profile applies hierarchy restrictions to in Amazon Connect."
+ },
"instanceArn": {
"type": "string",
"description": "The identifier of the Amazon Connect instance."
@@ -155112,6 +156940,9 @@
"type": "string",
"replaceOnChanges": true
},
+ "backupRetentionPeriod": {
+ "type": "integer"
+ },
"clusterArn": {
"type": "string"
},
@@ -155126,6 +156957,9 @@
"type": "string",
"replaceOnChanges": true
},
+ "preferredBackupWindow": {
+ "type": "string"
+ },
"preferredMaintenanceWindow": {
"type": "string"
},
@@ -155135,6 +156969,9 @@
"shardCount": {
"type": "integer"
},
+ "shardInstanceCount": {
+ "type": "integer"
+ },
"subnetIds": {
"type": "array",
"items": {
@@ -155174,12 +157011,18 @@
"authType": {
"type": "string"
},
+ "backupRetentionPeriod": {
+ "type": "integer"
+ },
"clusterName": {
"type": "string"
},
"kmsKeyId": {
"type": "string"
},
+ "preferredBackupWindow": {
+ "type": "string"
+ },
"preferredMaintenanceWindow": {
"type": "string"
},
@@ -155189,6 +157032,9 @@
"shardCount": {
"type": "integer"
},
+ "shardInstanceCount": {
+ "type": "integer"
+ },
"subnetIds": {
"type": "array",
"items": {
@@ -155414,6 +157260,9 @@
"$ref": "#/types/aws-native:dynamodb:TableProvisionedThroughput",
"description": "Throughput for the specified table, which consists of values for ``ReadCapacityUnits`` and ``WriteCapacityUnits``. For more information about the contents of a provisioned throughput structure, see [Amazon DynamoDB Table ProvisionedThroughput](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ProvisionedThroughput.html). \n If you set ``BillingMode`` as ``PROVISIONED``, you must specify this property. If you set ``BillingMode`` as ``PAY_PER_REQUEST``, you cannot specify this property."
},
+ "resourcePolicy": {
+ "$ref": "#/types/aws-native:dynamodb:TableResourcePolicy"
+ },
"sseSpecification": {
"$ref": "#/types/aws-native:dynamodb:TableSseSpecification",
"description": "Specifies the settings to enable server-side encryption."
@@ -155516,6 +157365,9 @@
"$ref": "#/types/aws-native:dynamodb:TableProvisionedThroughput",
"description": "Throughput for the specified table, which consists of values for ``ReadCapacityUnits`` and ``WriteCapacityUnits``. For more information about the contents of a provisioned throughput structure, see [Amazon DynamoDB Table ProvisionedThroughput](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ProvisionedThroughput.html). \n If you set ``BillingMode`` as ``PROVISIONED``, you must specify this property. If you set ``BillingMode`` as ``PAY_PER_REQUEST``, you cannot specify this property."
},
+ "resourcePolicy": {
+ "$ref": "#/types/aws-native:dynamodb:TableResourcePolicy"
+ },
"sseSpecification": {
"$ref": "#/types/aws-native:dynamodb:TableSseSpecification",
"description": "Specifies the settings to enable server-side encryption."
@@ -157088,11 +158940,10 @@
]
},
"aws-native:ec2:InternetGateway": {
- "description": "Resource Type definition for AWS::EC2::InternetGateway\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var myInternetGateway = new AwsNative.Ec2.InternetGateway(\"myInternetGateway\", new()\n {\n Tags = new[]\n {\n new AwsNative.Inputs.TagArgs\n {\n Key = \"stack\",\n Value = \"production\",\n },\n },\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\tawsnative \"github.com/pulumi/pulumi-aws-native/sdk/go/aws\"\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/ec2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ec2.NewInternetGateway(ctx, \"myInternetGateway\", \u0026ec2.InternetGatewayArgs{\n\t\t\tTags: aws.TagArray{\n\t\t\t\t\u0026aws.TagArgs{\n\t\t\t\t\tKey: pulumi.String(\"stack\"),\n\t\t\t\t\tValue: pulumi.String(\"production\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst myInternetGateway = new aws_native.ec2.InternetGateway(\"myInternetGateway\", {tags: [{\n key: \"stack\",\n value: \"production\",\n}]});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nmy_internet_gateway = aws_native.ec2.InternetGateway(\"myInternetGateway\", tags=[aws_native.TagArgs(\n key=\"stack\",\n value=\"production\",\n)])\n\n```\n\n{{% /example %}}\n{{% /examples %}}\n",
+ "description": "Allocates an internet gateway for use with a VPC. After creating the Internet gateway, you then attach it to a VPC.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var myInternetGateway = new AwsNative.Ec2.InternetGateway(\"myInternetGateway\", new()\n {\n Tags = new[]\n {\n new AwsNative.Inputs.TagArgs\n {\n Key = \"stack\",\n Value = \"production\",\n },\n },\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\tawsnative \"github.com/pulumi/pulumi-aws-native/sdk/go/aws\"\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/ec2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ec2.NewInternetGateway(ctx, \"myInternetGateway\", \u0026ec2.InternetGatewayArgs{\n\t\t\tTags: aws.TagArray{\n\t\t\t\t\u0026aws.TagArgs{\n\t\t\t\t\tKey: pulumi.String(\"stack\"),\n\t\t\t\t\tValue: pulumi.String(\"production\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst myInternetGateway = new aws_native.ec2.InternetGateway(\"myInternetGateway\", {tags: [{\n key: \"stack\",\n value: \"production\",\n}]});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nmy_internet_gateway = aws_native.ec2.InternetGateway(\"myInternetGateway\", tags=[aws_native.TagArgs(\n key=\"stack\",\n value=\"production\",\n)])\n\n```\n\n{{% /example %}}\n{{% /examples %}}\n",
"properties": {
"internetGatewayId": {
- "type": "string",
- "description": "ID of internet gateway."
+ "type": "string"
},
"tags": {
"type": "array",
@@ -159713,6 +161564,10 @@
"type": "boolean",
"description": "Indicates whether DNS queries made to the Amazon-provided DNS Resolver in this subnet should return synthetic IPv6 addresses for IPv4-only destinations. For more information, see [DNS64 and NAT64](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-nat64-dns64) in the *User Guide*."
},
+ "enableLniAtDeviceIndex": {
+ "type": "integer",
+ "description": "Indicates the device position for local network interfaces in this subnet. For example, ``1`` indicates local network interfaces in this subnet are the secondary network interface (eth1)."
+ },
"ipv4IpamPoolId": {
"type": "string",
"description": "An IPv4 IPAM pool ID for the subnet.",
@@ -159751,7 +161606,7 @@
},
"mapPublicIpOnLaunch": {
"type": "boolean",
- "description": "Indicates whether instances launched in this subnet receive a public IPv4 address. The default value is ``false``.\n AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the [VPC pricing page](https://docs.aws.amazon.com/vpc/pricing/)."
+ "description": "Indicates whether instances launched in this subnet receive a public IPv4 address. The default value is ``false``.\n AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the [VPC pricing page](https://docs.aws.amazon.com/vpc/pricing/)."
},
"networkAclAssociationId": {
"type": "string"
@@ -159763,7 +161618,7 @@
},
"privateDnsNameOptionsOnLaunch": {
"$ref": "#/types/aws-native:ec2:PrivateDnsNameOptionsOnLaunchProperties",
- "description": "The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries to the instances should be handled. For more information, see [Amazon EC2 instance hostname types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-naming.html) in the *User Guide*.\n Available options:\n + EnableResourceNameDnsAAAARecord (true | false)\n + EnableResourceNameDnsARecord (true | false)\n + HostnameType (ip-name | resource-name)"
+ "description": "The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries to the instances should be handled. For more information, see [Amazon EC2 instance hostname types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-naming.html) in the *User Guide*.\n Available options:\n + EnableResourceNameDnsAAAARecord (true | false)\n + EnableResourceNameDnsARecord (true | false)\n + HostnameType (ip-name | resource-name)"
},
"subnetId": {
"type": "string"
@@ -159808,6 +161663,10 @@
"type": "boolean",
"description": "Indicates whether DNS queries made to the Amazon-provided DNS Resolver in this subnet should return synthetic IPv6 addresses for IPv4-only destinations. For more information, see [DNS64 and NAT64](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-nat64-dns64) in the *User Guide*."
},
+ "enableLniAtDeviceIndex": {
+ "type": "integer",
+ "description": "Indicates the device position for local network interfaces in this subnet. For example, ``1`` indicates local network interfaces in this subnet are the secondary network interface (eth1)."
+ },
"ipv4IpamPoolId": {
"type": "string",
"description": "An IPv4 IPAM pool ID for the subnet."
@@ -159841,7 +161700,7 @@
},
"mapPublicIpOnLaunch": {
"type": "boolean",
- "description": "Indicates whether instances launched in this subnet receive a public IPv4 address. The default value is ``false``.\n AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the [VPC pricing page](https://docs.aws.amazon.com/vpc/pricing/)."
+ "description": "Indicates whether instances launched in this subnet receive a public IPv4 address. The default value is ``false``.\n AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the [VPC pricing page](https://docs.aws.amazon.com/vpc/pricing/)."
},
"outpostArn": {
"type": "string",
@@ -159849,7 +161708,7 @@
},
"privateDnsNameOptionsOnLaunch": {
"$ref": "#/types/aws-native:ec2:PrivateDnsNameOptionsOnLaunchProperties",
- "description": "The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries to the instances should be handled. For more information, see [Amazon EC2 instance hostname types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-naming.html) in the *User Guide*.\n Available options:\n + EnableResourceNameDnsAAAARecord (true | false)\n + EnableResourceNameDnsARecord (true | false)\n + HostnameType (ip-name | resource-name)"
+ "description": "The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries to the instances should be handled. For more information, see [Amazon EC2 instance hostname types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-naming.html) in the *User Guide*.\n Available options:\n + EnableResourceNameDnsAAAARecord (true | false)\n + EnableResourceNameDnsARecord (true | false)\n + HostnameType (ip-name | resource-name)"
},
"tags": {
"type": "array",
@@ -160669,30 +162528,30 @@
"aws-native:ec2:TransitGatewayRouteTableAssociation": {
"description": "Resource Type definition for AWS::EC2::TransitGatewayRouteTableAssociation",
"properties": {
- "awsId": {
- "type": "string"
- },
"transitGatewayAttachmentId": {
"type": "string",
+ "description": "The ID of transit gateway attachment.",
"replaceOnChanges": true
},
"transitGatewayRouteTableId": {
"type": "string",
+ "description": "The ID of transit gateway route table.",
"replaceOnChanges": true
}
},
"type": "object",
"required": [
- "awsId",
"transitGatewayAttachmentId",
"transitGatewayRouteTableId"
],
"inputProperties": {
"transitGatewayAttachmentId": {
- "type": "string"
+ "type": "string",
+ "description": "The ID of transit gateway attachment."
},
"transitGatewayRouteTableId": {
- "type": "string"
+ "type": "string",
+ "description": "The ID of transit gateway route table."
}
},
"requiredInputs": [
@@ -166377,7 +168236,6 @@
"createdAt",
"idMappingTechniques",
"inputSourceConfig",
- "outputSourceConfig",
"roleArn",
"updatedAt",
"workflowArn",
@@ -166420,7 +168278,6 @@
"requiredInputs": [
"idMappingTechniques",
"inputSourceConfig",
- "outputSourceConfig",
"roleArn"
]
},
@@ -169341,7 +171198,7 @@
},
"autoScalingPolicy": {
"$ref": "#/types/aws-native:gamelift:GameServerGroupAutoScalingPolicy",
- "description": "Configuration settings to define a scaling policy for the Auto Scaling group that is optimized for game hosting"
+ "description": "Configuration settings to define a scaling policy for the Auto Scaling group that is optimized for game hosting. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource."
},
"balancingStrategy": {
"$ref": "#/types/aws-native:gamelift:GameServerGroupBalancingStrategy",
@@ -169372,15 +171229,15 @@
},
"launchTemplate": {
"$ref": "#/types/aws-native:gamelift:GameServerGroupLaunchTemplate",
- "description": "The EC2 launch template that contains configuration settings and game server code to be deployed to all instances in the game server group."
+ "description": "The EC2 launch template that contains configuration settings and game server code to be deployed to all instances in the game server group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource."
},
"maxSize": {
"type": "number",
- "description": "The maximum number of instances allowed in the EC2 Auto Scaling group."
+ "description": "The maximum number of instances allowed in the EC2 Auto Scaling group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource."
},
"minSize": {
"type": "number",
- "description": "The minimum number of instances allowed in the EC2 Auto Scaling group."
+ "description": "The minimum number of instances allowed in the EC2 Auto Scaling group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource."
},
"roleArn": {
"type": "string",
@@ -169391,14 +171248,14 @@
"items": {
"$ref": "#/types/aws-native:index:Tag"
},
- "description": "A list of labels to assign to the new game server group resource."
+ "description": "A list of labels to assign to the new game server group resource. Updating game server group tags with CloudFormation will not take effect. Please update this property using AWS GameLift APIs instead."
},
"vpcSubnets": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of virtual private cloud (VPC) subnets to use with instances in the game server group."
+ "description": "A list of virtual private cloud (VPC) subnets to use with instances in the game server group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource."
}
},
"type": "object",
@@ -169412,7 +171269,7 @@
"inputProperties": {
"autoScalingPolicy": {
"$ref": "#/types/aws-native:gamelift:GameServerGroupAutoScalingPolicy",
- "description": "Configuration settings to define a scaling policy for the Auto Scaling group that is optimized for game hosting"
+ "description": "Configuration settings to define a scaling policy for the Auto Scaling group that is optimized for game hosting. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource."
},
"balancingStrategy": {
"$ref": "#/types/aws-native:gamelift:GameServerGroupBalancingStrategy",
@@ -169439,15 +171296,15 @@
},
"launchTemplate": {
"$ref": "#/types/aws-native:gamelift:GameServerGroupLaunchTemplate",
- "description": "The EC2 launch template that contains configuration settings and game server code to be deployed to all instances in the game server group."
+ "description": "The EC2 launch template that contains configuration settings and game server code to be deployed to all instances in the game server group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource."
},
"maxSize": {
"type": "number",
- "description": "The maximum number of instances allowed in the EC2 Auto Scaling group."
+ "description": "The maximum number of instances allowed in the EC2 Auto Scaling group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource."
},
"minSize": {
"type": "number",
- "description": "The minimum number of instances allowed in the EC2 Auto Scaling group."
+ "description": "The minimum number of instances allowed in the EC2 Auto Scaling group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource."
},
"roleArn": {
"type": "string",
@@ -169458,14 +171315,14 @@
"items": {
"$ref": "#/types/aws-native:index:Tag"
},
- "description": "A list of labels to assign to the new game server group resource."
+ "description": "A list of labels to assign to the new game server group resource. Updating game server group tags with CloudFormation will not take effect. Please update this property using AWS GameLift APIs instead."
},
"vpcSubnets": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of virtual private cloud (VPC) subnets to use with instances in the game server group."
+ "description": "A list of virtual private cloud (VPC) subnets to use with instances in the game server group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource."
}
},
"requiredInputs": [
@@ -171606,23 +173463,20 @@
]
},
"aws-native:iam:ManagedPolicy": {
- "description": "Resource Type definition for AWS::IAM::ManagedPolicy",
+ "description": "Creates a new managed policy for your AWS-account.\n This operation creates a policy version with a version identifier of ``v1`` and sets v1 as the policy's default version. For more information about policy versions, see [Versioning for managed policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html) in the *IAM User Guide*.\n As a best practice, you can validate your IAM policies. To learn more, see [Validating IAM policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_policy-validator.html) in the *IAM User Guide*.\n For more information about managed policies in general, see [Managed policies and inline policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the *IAM User Guide*.",
"properties": {
"attachmentCount": {
- "type": "integer",
- "description": "The number of entities (users, groups, and roles) that the policy is attached to."
+ "type": "integer"
},
"createDate": {
- "type": "string",
- "description": "The date and time, in ISO 8601 date-time format, when the policy was created."
+ "type": "string"
},
"defaultVersionId": {
- "type": "string",
- "description": "The identifier for the version of the policy that is set as the default version."
+ "type": "string"
},
"description": {
"type": "string",
- "description": "A friendly description of the policy.",
+ "description": "A friendly description of the policy.\n Typically used to store information about the permissions defined in the policy. For example, \"Grants access to production DynamoDB tables.\"\n The policy description is immutable. After a value is assigned, it cannot be changed.",
"replaceOnChanges": true
},
"groups": {
@@ -171630,55 +173484,50 @@
"items": {
"type": "string"
},
- "description": "The name (friendly name, not ARN) of the group to attach the policy to."
+ "description": "The name (friendly name, not ARN) of the group to attach the policy to.\n This parameter allows (through its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-"
},
"isAttachable": {
- "type": "boolean",
- "description": "Specifies whether the policy can be attached to an IAM user, group, or role."
+ "type": "boolean"
},
"managedPolicyName": {
"type": "string",
- "description": "The friendly name of the policy.",
+ "description": "The friendly name of the policy.\n If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.\n If you specify a name, you must specify the ``CAPABILITY_NAMED_IAM`` value to acknowledge your template's capabilities. For more information, see [Acknowledging Resources in Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#using-iam-capabilities).\n Naming an IAM resource can cause an unrecoverable error if you reuse the same template in multiple Regions. To prevent this, we recommend using ``Fn::Join`` and ``AWS::Region`` to create a Region-specific name, as in the following example: ``{\"Fn::Join\": [\"\", [{\"Ref\": \"AWS::Region\"}, {\"Ref\": \"MyResourceName\"}]]}``.",
"replaceOnChanges": true
},
"path": {
"type": "string",
- "description": "The path for the policy.",
+ "description": "The path for the policy.\n For more information about paths, see [IAM identifiers](https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) in the *IAM User Guide*.\n This parameter is optional. If it is not included, it defaults to a slash (/).\n This parameter allows (through its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (``\\u0021``) through the DEL character (``\\u007F``), including most punctuation characters, digits, and upper and lowercased letters.\n You cannot use an asterisk (*) in the path name.",
"replaceOnChanges": true
},
"permissionsBoundaryUsageCount": {
- "type": "integer",
- "description": "The number of entities (users and roles) for which the policy is used to set the permissions boundary."
+ "type": "integer"
},
"policyArn": {
- "type": "string",
- "description": "Amazon Resource Name (ARN) of the managed policy"
+ "type": "string"
},
"policyDocument": {
"$ref": "pulumi.json#/Any",
- "description": "The JSON policy document that you want to use as the content for the new policy.\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::IAM::ManagedPolicy` for more information about the expected schema for this property."
+ "description": "The JSON policy document that you want to use as the content for the new policy.\n You must provide policies in JSON format in IAM. However, for CFN templates formatted in YAML, you can provide the policy in JSON or YAML format. CFN always converts a YAML policy to JSON format before submitting it to IAM.\n The maximum length of the policy document that you can pass in this operation, including whitespace, is listed below. To view the maximum character counts of a managed policy with no whitespaces, see [IAM and character quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length).\n To learn more about JSON policy grammar, see [Grammar of the IAM JSON policy language](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_grammar.html) in the *IAM User Guide*. \n The [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex) used to validate this parameter is a string of characters consisting of the following:\n + Any printable ASCII character ranging from the space character (``\\u0020``) through the end of the ASCII character range\n + The printable characters in the Basic Latin and Latin-1 Supplement character set (through ``\\u00FF``)\n + The special characters tab (``\\u0009``), line feed (``\\u000A``), and carriage return (``\\u000D``)\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::IAM::ManagedPolicy` for more information about the expected schema for this property."
},
"policyId": {
- "type": "string",
- "description": "The stable and unique string identifying the policy."
+ "type": "string"
},
"roles": {
"type": "array",
"items": {
"type": "string"
},
- "description": "The name (friendly name, not ARN) of the role to attach the policy to."
+ "description": "The name (friendly name, not ARN) of the role to attach the policy to.\n This parameter allows (per its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-\n If an external policy (such as ``AWS::IAM::Policy`` or ``AWS::IAM::ManagedPolicy``) has a ``Ref`` to a role and if a resource (such as ``AWS::ECS::Service``) also has a ``Ref`` to the same role, add a ``DependsOn`` attribute to the resource to make the resource depend on the external policy. This dependency ensures that the role's policy is available throughout the resource's lifecycle. For example, when you delete a stack with an ``AWS::ECS::Service`` resource, the ``DependsOn`` attribute ensures that CFN deletes the ``AWS::ECS::Service`` resource before deleting its role's policy."
},
"updateDate": {
- "type": "string",
- "description": "The date and time, in ISO 8601 date-time format, when the policy was last updated."
+ "type": "string"
},
"users": {
"type": "array",
"items": {
"type": "string"
},
- "description": "The name (friendly name, not ARN) of the IAM user to attach the policy to."
+ "description": "The name (friendly name, not ARN) of the IAM user to attach the policy to.\n This parameter allows (through its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-"
}
},
"type": "object",
@@ -171696,40 +173545,40 @@
"inputProperties": {
"description": {
"type": "string",
- "description": "A friendly description of the policy."
+ "description": "A friendly description of the policy.\n Typically used to store information about the permissions defined in the policy. For example, \"Grants access to production DynamoDB tables.\"\n The policy description is immutable. After a value is assigned, it cannot be changed."
},
"groups": {
"type": "array",
"items": {
"type": "string"
},
- "description": "The name (friendly name, not ARN) of the group to attach the policy to."
+ "description": "The name (friendly name, not ARN) of the group to attach the policy to.\n This parameter allows (through its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-"
},
"managedPolicyName": {
"type": "string",
- "description": "The friendly name of the policy."
+ "description": "The friendly name of the policy.\n If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.\n If you specify a name, you must specify the ``CAPABILITY_NAMED_IAM`` value to acknowledge your template's capabilities. For more information, see [Acknowledging Resources in Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#using-iam-capabilities).\n Naming an IAM resource can cause an unrecoverable error if you reuse the same template in multiple Regions. To prevent this, we recommend using ``Fn::Join`` and ``AWS::Region`` to create a Region-specific name, as in the following example: ``{\"Fn::Join\": [\"\", [{\"Ref\": \"AWS::Region\"}, {\"Ref\": \"MyResourceName\"}]]}``."
},
"path": {
"type": "string",
- "description": "The path for the policy."
+ "description": "The path for the policy.\n For more information about paths, see [IAM identifiers](https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) in the *IAM User Guide*.\n This parameter is optional. If it is not included, it defaults to a slash (/).\n This parameter allows (through its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (``\\u0021``) through the DEL character (``\\u007F``), including most punctuation characters, digits, and upper and lowercased letters.\n You cannot use an asterisk (*) in the path name."
},
"policyDocument": {
"$ref": "pulumi.json#/Any",
- "description": "The JSON policy document that you want to use as the content for the new policy.\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::IAM::ManagedPolicy` for more information about the expected schema for this property."
+ "description": "The JSON policy document that you want to use as the content for the new policy.\n You must provide policies in JSON format in IAM. However, for CFN templates formatted in YAML, you can provide the policy in JSON or YAML format. CFN always converts a YAML policy to JSON format before submitting it to IAM.\n The maximum length of the policy document that you can pass in this operation, including whitespace, is listed below. To view the maximum character counts of a managed policy with no whitespaces, see [IAM and character quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length).\n To learn more about JSON policy grammar, see [Grammar of the IAM JSON policy language](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_grammar.html) in the *IAM User Guide*. \n The [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex) used to validate this parameter is a string of characters consisting of the following:\n + Any printable ASCII character ranging from the space character (``\\u0020``) through the end of the ASCII character range\n + The printable characters in the Basic Latin and Latin-1 Supplement character set (through ``\\u00FF``)\n + The special characters tab (``\\u0009``), line feed (``\\u000A``), and carriage return (``\\u000D``)\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::IAM::ManagedPolicy` for more information about the expected schema for this property."
},
"roles": {
"type": "array",
"items": {
"type": "string"
},
- "description": "The name (friendly name, not ARN) of the role to attach the policy to."
+ "description": "The name (friendly name, not ARN) of the role to attach the policy to.\n This parameter allows (per its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-\n If an external policy (such as ``AWS::IAM::Policy`` or ``AWS::IAM::ManagedPolicy``) has a ``Ref`` to a role and if a resource (such as ``AWS::ECS::Service``) also has a ``Ref`` to the same role, add a ``DependsOn`` attribute to the resource to make the resource depend on the external policy. This dependency ensures that the role's policy is available throughout the resource's lifecycle. For example, when you delete a stack with an ``AWS::ECS::Service`` resource, the ``DependsOn`` attribute ensures that CFN deletes the ``AWS::ECS::Service`` resource before deleting its role's policy."
},
"users": {
"type": "array",
"items": {
"type": "string"
},
- "description": "The name (friendly name, not ARN) of the IAM user to attach the policy to."
+ "description": "The name (friendly name, not ARN) of the IAM user to attach the policy to.\n This parameter allows (through its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-"
}
},
"requiredInputs": [
@@ -178747,6 +180596,151 @@
"serviceExecutionRoleArn"
]
},
+ "aws-native:kafkaconnect:CustomPlugin": {
+ "description": "An example resource schema demonstrating some basic constructs and validation rules.",
+ "properties": {
+ "contentType": {
+ "$ref": "#/types/aws-native:kafkaconnect:CustomPluginContentType",
+ "description": "The type of the plugin file.",
+ "replaceOnChanges": true
+ },
+ "customPluginArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) of the custom plugin to use."
+ },
+ "description": {
+ "type": "string",
+ "description": "A summary description of the custom plugin.",
+ "replaceOnChanges": true
+ },
+ "fileDescription": {
+ "$ref": "#/types/aws-native:kafkaconnect:CustomPluginFileDescription"
+ },
+ "location": {
+ "$ref": "#/types/aws-native:kafkaconnect:CustomPluginLocation",
+ "replaceOnChanges": true
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the custom plugin.",
+ "replaceOnChanges": true
+ },
+ "revision": {
+ "type": "integer",
+ "description": "The revision of the custom plugin."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "An array of key-value pairs to apply to this resource."
+ }
+ },
+ "type": "object",
+ "required": [
+ "contentType",
+ "customPluginArn",
+ "fileDescription",
+ "location",
+ "name",
+ "revision"
+ ],
+ "inputProperties": {
+ "contentType": {
+ "$ref": "#/types/aws-native:kafkaconnect:CustomPluginContentType",
+ "description": "The type of the plugin file."
+ },
+ "description": {
+ "type": "string",
+ "description": "A summary description of the custom plugin."
+ },
+ "location": {
+ "$ref": "#/types/aws-native:kafkaconnect:CustomPluginLocation"
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the custom plugin."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "An array of key-value pairs to apply to this resource."
+ }
+ },
+ "requiredInputs": [
+ "contentType",
+ "location"
+ ]
+ },
+ "aws-native:kafkaconnect:WorkerConfiguration": {
+ "description": "The configuration of the workers, which are the processes that run the connector logic.",
+ "properties": {
+ "description": {
+ "type": "string",
+ "description": "A summary description of the worker configuration.",
+ "replaceOnChanges": true
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the worker configuration.",
+ "replaceOnChanges": true
+ },
+ "propertiesFileContent": {
+ "type": "string",
+ "description": "Base64 encoded contents of connect-distributed.properties file.",
+ "replaceOnChanges": true
+ },
+ "revision": {
+ "type": "integer",
+ "description": "The description of a revision of the worker configuration."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "A collection of tags associated with a resource"
+ },
+ "workerConfigurationArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) of the custom configuration."
+ }
+ },
+ "type": "object",
+ "required": [
+ "name",
+ "propertiesFileContent",
+ "revision",
+ "workerConfigurationArn"
+ ],
+ "inputProperties": {
+ "description": {
+ "type": "string",
+ "description": "A summary description of the worker configuration."
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the worker configuration."
+ },
+ "propertiesFileContent": {
+ "type": "string",
+ "description": "Base64 encoded contents of connect-distributed.properties file."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "A collection of tags associated with a resource"
+ }
+ },
+ "requiredInputs": [
+ "propertiesFileContent"
+ ]
+ },
"aws-native:kendra:DataSource": {
"description": "Kendra DataSource",
"properties": {
@@ -183470,39 +185464,38 @@
}
},
"aws-native:logs:LogGroup": {
- "description": "Resource schema for AWS::Logs::LogGroup",
+ "description": "The ``AWS::Logs::LogGroup`` resource specifies a log group. A log group defines common properties for log streams, such as their retention and access control rules. Each log stream must belong to one log group.\n You can create up to 1,000,000 log groups per Region per account. You must use the following guidelines when naming a log group:\n + Log group names must be unique within a Region for an AWS account.\n + Log group names can be between 1 and 512 characters long.\n + Log group names consist of the following characters: a-z, A-Z, 0-9, '_' (underscore), '-' (hyphen), '/' (forward slash), and '.' (period).",
"properties": {
"arn": {
- "type": "string",
- "description": "The CloudWatch log group ARN."
+ "type": "string"
},
"dataProtectionPolicy": {
"$ref": "pulumi.json#/Any",
- "description": "The body of the policy document you want to use for this topic.\n\nYou can only add one policy per topic.\n\nThe policy must be in JSON string format.\n\nLength Constraints: Maximum length of 30720\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Logs::LogGroup` for more information about the expected schema for this property."
+ "description": "Creates a data protection policy and assigns it to the log group. A data protection policy can help safeguard sensitive data that's ingested by the log group by auditing and masking the sensitive log data. When a user who does not have permission to view masked data views a log event that includes masked data, the sensitive data is replaced by asterisks.\n For more information, including a list of types of data that can be audited and masked, see [Protect sensitive log data with masking](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/mask-sensitive-log-data.html).\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Logs::LogGroup` for more information about the expected schema for this property."
},
"kmsKeyId": {
"type": "string",
- "description": "The Amazon Resource Name (ARN) of the CMK to use when encrypting log data."
+ "description": "The Amazon Resource Name (ARN) of the KMS key to use when encrypting log data.\n To associate an KMS key with the log group, specify the ARN of that KMS key here. If you do so, ingested data is encrypted using this key. This association is stored as long as the data encrypted with the KMS key is still within CWL. This enables CWL to decrypt this data whenever it is requested.\n If you attempt to associate a KMS key with the log group but the KMS key doesn't exist or is deactivated, you will receive an ``InvalidParameterException`` error.\n Log group data is always encrypted in CWL. If you omit this key, the encryption does not use KMS. For more information, see [Encrypt log data in using](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/encrypt-log-data-kms.html)"
},
"logGroupClass": {
"$ref": "#/types/aws-native:logs:LogGroupClass",
- "description": "The class of the log group. Possible values are: STANDARD and INFREQUENT_ACCESS, with STANDARD being the default class"
+ "description": "Specifies the log group class for this log group. There are two classes:\n + The ``Standard`` log class supports all CWL features.\n + The ``Infrequent Access`` log class supports a subset of CWL features and incurs lower costs.\n \n For details about the features supported by each class, see [Log classes](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch_Logs_Log_Classes.html)"
},
"logGroupName": {
"type": "string",
- "description": "The name of the log group. If you don't specify a name, AWS CloudFormation generates a unique ID for the log group.",
+ "description": "The name of the log group. If you don't specify a name, CFNlong generates a unique ID for the log group.",
"replaceOnChanges": true
},
"retentionInDays": {
"type": "integer",
- "description": "The number of days to retain the log events in the specified log group. Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1096, 1827, and 3653."
+ "description": "The number of days to retain the log events in the specified log group. Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1096, 1827, 2192, 2557, 2922, 3288, and 3653.\n To set a log group so that its log events do not expire, use [DeleteRetentionPolicy](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DeleteRetentionPolicy.html)."
},
"tags": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:index:Tag"
},
- "description": "An array of key-value pairs to apply to this resource."
+ "description": "An array of key-value pairs to apply to the log group.\n For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html)."
}
},
"type": "object",
@@ -183512,30 +185505,30 @@
"inputProperties": {
"dataProtectionPolicy": {
"$ref": "pulumi.json#/Any",
- "description": "The body of the policy document you want to use for this topic.\n\nYou can only add one policy per topic.\n\nThe policy must be in JSON string format.\n\nLength Constraints: Maximum length of 30720\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Logs::LogGroup` for more information about the expected schema for this property."
+ "description": "Creates a data protection policy and assigns it to the log group. A data protection policy can help safeguard sensitive data that's ingested by the log group by auditing and masking the sensitive log data. When a user who does not have permission to view masked data views a log event that includes masked data, the sensitive data is replaced by asterisks.\n For more information, including a list of types of data that can be audited and masked, see [Protect sensitive log data with masking](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/mask-sensitive-log-data.html).\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Logs::LogGroup` for more information about the expected schema for this property."
},
"kmsKeyId": {
"type": "string",
- "description": "The Amazon Resource Name (ARN) of the CMK to use when encrypting log data."
+ "description": "The Amazon Resource Name (ARN) of the KMS key to use when encrypting log data.\n To associate an KMS key with the log group, specify the ARN of that KMS key here. If you do so, ingested data is encrypted using this key. This association is stored as long as the data encrypted with the KMS key is still within CWL. This enables CWL to decrypt this data whenever it is requested.\n If you attempt to associate a KMS key with the log group but the KMS key doesn't exist or is deactivated, you will receive an ``InvalidParameterException`` error.\n Log group data is always encrypted in CWL. If you omit this key, the encryption does not use KMS. For more information, see [Encrypt log data in using](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/encrypt-log-data-kms.html)"
},
"logGroupClass": {
"$ref": "#/types/aws-native:logs:LogGroupClass",
- "description": "The class of the log group. Possible values are: STANDARD and INFREQUENT_ACCESS, with STANDARD being the default class"
+ "description": "Specifies the log group class for this log group. There are two classes:\n + The ``Standard`` log class supports all CWL features.\n + The ``Infrequent Access`` log class supports a subset of CWL features and incurs lower costs.\n \n For details about the features supported by each class, see [Log classes](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch_Logs_Log_Classes.html)"
},
"logGroupName": {
"type": "string",
- "description": "The name of the log group. If you don't specify a name, AWS CloudFormation generates a unique ID for the log group."
+ "description": "The name of the log group. If you don't specify a name, CFNlong generates a unique ID for the log group."
},
"retentionInDays": {
"type": "integer",
- "description": "The number of days to retain the log events in the specified log group. Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1096, 1827, and 3653."
+ "description": "The number of days to retain the log events in the specified log group. Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1096, 1827, 2192, 2557, 2922, 3288, and 3653.\n To set a log group so that its log events do not expire, use [DeleteRetentionPolicy](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DeleteRetentionPolicy.html)."
},
"tags": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:index:Tag"
},
- "description": "An array of key-value pairs to apply to this resource."
+ "description": "An array of key-value pairs to apply to the log group.\n For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html)."
}
}
},
@@ -183572,20 +185565,20 @@
]
},
"aws-native:logs:MetricFilter": {
- "description": "Specifies a metric filter that describes how CloudWatch Logs extracts information from logs and transforms it into Amazon CloudWatch metrics.",
+ "description": "The ``AWS::Logs::MetricFilter`` resource specifies a metric filter that describes how CWL extracts information from logs and transforms it into Amazon CloudWatch metrics. If you have multiple metric filters that are associated with a log group, all the filters are applied to the log streams in that group.\n The maximum number of metric filters that can be associated with a log group is 100.",
"properties": {
"filterName": {
"type": "string",
- "description": "A name for the metric filter.",
+ "description": "The name of the metric filter.",
"replaceOnChanges": true
},
"filterPattern": {
"type": "string",
- "description": "Pattern that Logs follows to interpret each entry in a log."
+ "description": "A filter pattern for extracting metric data out of ingested log events. For more information, see [Filter and Pattern Syntax](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html)."
},
"logGroupName": {
"type": "string",
- "description": "Existing log group that you want to associate with this filter.",
+ "description": "The name of an existing log group that you want to associate with this metric filter.",
"replaceOnChanges": true
},
"metricTransformations": {
@@ -183593,7 +185586,7 @@
"items": {
"$ref": "#/types/aws-native:logs:MetricFilterMetricTransformation"
},
- "description": "A collection of information that defines how metric data gets emitted."
+ "description": "The metric transformations."
}
},
"type": "object",
@@ -183605,22 +185598,22 @@
"inputProperties": {
"filterName": {
"type": "string",
- "description": "A name for the metric filter."
+ "description": "The name of the metric filter."
},
"filterPattern": {
"type": "string",
- "description": "Pattern that Logs follows to interpret each entry in a log."
+ "description": "A filter pattern for extracting metric data out of ingested log events. For more information, see [Filter and Pattern Syntax](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html)."
},
"logGroupName": {
"type": "string",
- "description": "Existing log group that you want to associate with this filter."
+ "description": "The name of an existing log group that you want to associate with this metric filter."
},
"metricTransformations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:logs:MetricFilterMetricTransformation"
},
- "description": "A collection of information that defines how metric data gets emitted."
+ "description": "The metric transformations."
}
},
"requiredInputs": [
@@ -183712,7 +185705,7 @@
]
},
"aws-native:logs:SubscriptionFilter": {
- "description": "Subscription filters allow you to subscribe to a real-time stream of log events and have them delivered to a specific destination.",
+ "description": "The ``AWS::Logs::SubscriptionFilter`` resource specifies a subscription filter and associates it with the specified log group. Subscription filters allow you to subscribe to a real-time stream of log events and have them delivered to a specific destination. Currently, the supported destinations are:\n + An Amazon Kinesis data stream belonging to the same account as the subscription filter, for same-account delivery.\n + A logical destination that belongs to a different account, for cross-account delivery.\n + An Amazon Kinesis Firehose delivery stream that belongs to the same account as the subscription filter, for same-account delivery.\n + An LAMlong function that belongs to the same account as the subscription filter, for same-account delivery.\n \n There can be as many as two subscription filters associated with a log group.",
"properties": {
"destinationArn": {
"type": "string",
@@ -183720,25 +185713,25 @@
},
"distribution": {
"$ref": "#/types/aws-native:logs:SubscriptionFilterDistribution",
- "description": "The method used to distribute log data to the destination. By default, log data is grouped by log stream, but the grouping can be set to random for a more even distribution. This property is only applicable when the destination is an Amazon Kinesis stream."
+ "description": "The method used to distribute log data to the destination, which can be either random or grouped by log stream."
},
"filterName": {
"type": "string",
- "description": "The name of the filter generated by resource.",
+ "description": "The name of the subscription filter.",
"replaceOnChanges": true
},
"filterPattern": {
"type": "string",
- "description": "The filtering expressions that restrict what gets delivered to the destination AWS resource."
+ "description": "The filtering expressions that restrict what gets delivered to the destination AWS resource. For more information about the filter pattern syntax, see [Filter and Pattern Syntax](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html)."
},
"logGroupName": {
"type": "string",
- "description": "Existing log group that you want to associate with this filter.",
+ "description": "The log group to associate with the subscription filter. All log events that are uploaded to this log group are filtered and delivered to the specified AWS resource if the filter pattern matches the log events.",
"replaceOnChanges": true
},
"roleArn": {
"type": "string",
- "description": "The ARN of an IAM role that grants CloudWatch Logs permissions to deliver ingested log events to the destination stream. You don't need to provide the ARN when you are working with a logical destination for cross-account delivery."
+ "description": "The ARN of an IAM role that grants CWL permissions to deliver ingested log events to the destination stream. You don't need to provide the ARN when you are working with a logical destination for cross-account delivery."
}
},
"type": "object",
@@ -183754,23 +185747,23 @@
},
"distribution": {
"$ref": "#/types/aws-native:logs:SubscriptionFilterDistribution",
- "description": "The method used to distribute log data to the destination. By default, log data is grouped by log stream, but the grouping can be set to random for a more even distribution. This property is only applicable when the destination is an Amazon Kinesis stream."
+ "description": "The method used to distribute log data to the destination, which can be either random or grouped by log stream."
},
"filterName": {
"type": "string",
- "description": "The name of the filter generated by resource."
+ "description": "The name of the subscription filter."
},
"filterPattern": {
"type": "string",
- "description": "The filtering expressions that restrict what gets delivered to the destination AWS resource."
+ "description": "The filtering expressions that restrict what gets delivered to the destination AWS resource. For more information about the filter pattern syntax, see [Filter and Pattern Syntax](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html)."
},
"logGroupName": {
"type": "string",
- "description": "Existing log group that you want to associate with this filter."
+ "description": "The log group to associate with the subscription filter. All log events that are uploaded to this log group are filtered and delivered to the specified AWS resource if the filter pattern matches the log events."
},
"roleArn": {
"type": "string",
- "description": "The ARN of an IAM role that grants CloudWatch Logs permissions to deliver ingested log events to the destination stream. You don't need to provide the ARN when you are working with a logical destination for cross-account delivery."
+ "description": "The ARN of an IAM role that grants CWL permissions to deliver ingested log events to the destination stream. You don't need to provide the ARN when you are working with a logical destination for cross-account delivery."
}
},
"requiredInputs": [
@@ -196454,14 +198447,21 @@
"createTime": {
"type": "string"
},
+ "dataFilter": {
+ "type": "string",
+ "description": "The data filter for the integration."
+ },
+ "description": {
+ "type": "string",
+ "description": "The description of the integration."
+ },
"integrationArn": {
"type": "string",
"description": "The ARN of the integration."
},
"integrationName": {
"type": "string",
- "description": "The name of the integration.",
- "replaceOnChanges": true
+ "description": "The name of the integration."
},
"kmsKeyId": {
"type": "string",
@@ -196500,6 +198500,14 @@
"type": "string"
}
},
+ "dataFilter": {
+ "type": "string",
+ "description": "The data filter for the integration."
+ },
+ "description": {
+ "type": "string",
+ "description": "The description of the integration."
+ },
"integrationName": {
"type": "string",
"description": "The name of the integration."
@@ -198616,10 +200624,7 @@
"description": "Data Location Constraint of the Policy."
},
"policy": {
- "type": "object",
- "additionalProperties": {
- "$ref": "#/types/aws-native:resiliencehub:ResiliencyPolicyFailurePolicy"
- }
+ "$ref": "#/types/aws-native:resiliencehub:ResiliencyPolicyPolicyMap"
},
"policyArn": {
"type": "string",
@@ -198657,10 +200662,7 @@
"description": "Data Location Constraint of the Policy."
},
"policy": {
- "type": "object",
- "additionalProperties": {
- "$ref": "#/types/aws-native:resiliencehub:ResiliencyPolicyFailurePolicy"
- }
+ "$ref": "#/types/aws-native:resiliencehub:ResiliencyPolicyPolicyMap"
},
"policyDescription": {
"type": "string",
@@ -204699,6 +206701,251 @@
"standardsArn"
]
},
+ "aws-native:securitylake:AwsLogSource": {
+ "description": "Resource Type definition for AWS::SecurityLake::AwsLogSource",
+ "properties": {
+ "accounts": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "AWS account where you want to collect logs from."
+ },
+ "dataLakeArn": {
+ "type": "string",
+ "description": "The ARN for the data lake.",
+ "replaceOnChanges": true
+ },
+ "sourceName": {
+ "type": "string",
+ "description": "The name for a AWS source. This must be a Regionally unique value.",
+ "replaceOnChanges": true
+ },
+ "sourceVersion": {
+ "type": "string",
+ "description": "The version for a AWS source. This must be a Regionally unique value.",
+ "replaceOnChanges": true
+ }
+ },
+ "type": "object",
+ "required": [
+ "dataLakeArn",
+ "sourceName",
+ "sourceVersion"
+ ],
+ "inputProperties": {
+ "accounts": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "AWS account where you want to collect logs from."
+ },
+ "dataLakeArn": {
+ "type": "string",
+ "description": "The ARN for the data lake."
+ },
+ "sourceName": {
+ "type": "string",
+ "description": "The name for a AWS source. This must be a Regionally unique value."
+ },
+ "sourceVersion": {
+ "type": "string",
+ "description": "The version for a AWS source. This must be a Regionally unique value."
+ }
+ },
+ "requiredInputs": [
+ "dataLakeArn",
+ "sourceVersion"
+ ]
+ },
+ "aws-native:securitylake:DataLake": {
+ "description": "Resource Type definition for AWS::SecurityLake::DataLake",
+ "properties": {
+ "arn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) created by you to provide to the subscriber."
+ },
+ "encryptionConfiguration": {
+ "$ref": "#/types/aws-native:securitylake:DataLakeEncryptionConfiguration"
+ },
+ "lifecycleConfiguration": {
+ "$ref": "#/types/aws-native:securitylake:DataLakeLifecycleConfiguration"
+ },
+ "metaStoreManagerRoleArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) used to index AWS Glue table partitions that are generated by the ingestion and normalization of AWS log sources and custom sources.",
+ "replaceOnChanges": true
+ },
+ "replicationConfiguration": {
+ "$ref": "#/types/aws-native:securitylake:DataLakeReplicationConfiguration"
+ },
+ "s3BucketArn": {
+ "type": "string",
+ "description": "The ARN for the Amazon Security Lake Amazon S3 bucket."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ }
+ }
+ },
+ "type": "object",
+ "required": [
+ "arn",
+ "s3BucketArn"
+ ],
+ "inputProperties": {
+ "encryptionConfiguration": {
+ "$ref": "#/types/aws-native:securitylake:DataLakeEncryptionConfiguration"
+ },
+ "lifecycleConfiguration": {
+ "$ref": "#/types/aws-native:securitylake:DataLakeLifecycleConfiguration"
+ },
+ "metaStoreManagerRoleArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) used to index AWS Glue table partitions that are generated by the ingestion and normalization of AWS log sources and custom sources."
+ },
+ "replicationConfiguration": {
+ "$ref": "#/types/aws-native:securitylake:DataLakeReplicationConfiguration"
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ }
+ }
+ }
+ },
+ "aws-native:securitylake:Subscriber": {
+ "description": "Resource Type definition for AWS::SecurityLake::Subscriber",
+ "properties": {
+ "accessTypes": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:securitylake:SubscriberAccessTypesItem"
+ }
+ },
+ "dataLakeArn": {
+ "type": "string",
+ "description": "The ARN for the data lake.",
+ "replaceOnChanges": true
+ },
+ "resourceShareArn": {
+ "type": "string"
+ },
+ "resourceShareName": {
+ "type": "string"
+ },
+ "s3BucketArn": {
+ "type": "string"
+ },
+ "sources": {
+ "type": "array",
+ "items": {
+ "oneOf": [
+ {
+ "$ref": "#/types/aws-native:securitylake:SubscriberSource0Properties"
+ },
+ {
+ "$ref": "#/types/aws-native:securitylake:SubscriberSource1Properties"
+ }
+ ]
+ },
+ "description": "The supported AWS services from which logs and events are collected."
+ },
+ "subscriberArn": {
+ "type": "string"
+ },
+ "subscriberDescription": {
+ "type": "string",
+ "description": "The description for your subscriber account in Security Lake."
+ },
+ "subscriberIdentity": {
+ "$ref": "#/types/aws-native:securitylake:SubscriberIdentityProperties",
+ "description": "The AWS identity used to access your data."
+ },
+ "subscriberName": {
+ "type": "string",
+ "description": "The name of your Security Lake subscriber account."
+ },
+ "subscriberRoleArn": {
+ "type": "string"
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "An array of objects, one for each tag to associate with the subscriber. For each tag, you must specify both a tag key and a tag value. A tag value cannot be null, but it can be an empty string."
+ }
+ },
+ "type": "object",
+ "required": [
+ "accessTypes",
+ "dataLakeArn",
+ "resourceShareArn",
+ "resourceShareName",
+ "s3BucketArn",
+ "sources",
+ "subscriberArn",
+ "subscriberIdentity",
+ "subscriberName",
+ "subscriberRoleArn"
+ ],
+ "inputProperties": {
+ "accessTypes": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:securitylake:SubscriberAccessTypesItem"
+ }
+ },
+ "dataLakeArn": {
+ "type": "string",
+ "description": "The ARN for the data lake."
+ },
+ "sources": {
+ "type": "array",
+ "items": {
+ "oneOf": [
+ {
+ "$ref": "#/types/aws-native:securitylake:SubscriberSource0Properties"
+ },
+ {
+ "$ref": "#/types/aws-native:securitylake:SubscriberSource1Properties"
+ }
+ ]
+ },
+ "description": "The supported AWS services from which logs and events are collected."
+ },
+ "subscriberDescription": {
+ "type": "string",
+ "description": "The description for your subscriber account in Security Lake."
+ },
+ "subscriberIdentity": {
+ "$ref": "#/types/aws-native:securitylake:SubscriberIdentityProperties",
+ "description": "The AWS identity used to access your data."
+ },
+ "subscriberName": {
+ "type": "string",
+ "description": "The name of your Security Lake subscriber account."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "An array of objects, one for each tag to associate with the subscriber. For each tag, you must specify both a tag key and a tag value. A tag value cannot be null, but it can be an empty string."
+ }
+ },
+ "requiredInputs": [
+ "accessTypes",
+ "dataLakeArn",
+ "sources",
+ "subscriberIdentity"
+ ]
+ },
"aws-native:servicecatalog:CloudFormationProvisionedProduct": {
"description": "Resource Schema for AWS::ServiceCatalog::CloudFormationProvisionedProduct",
"properties": {
@@ -213647,6 +215894,55 @@
}
}
},
+ "aws-native:appintegrations:getApplication": {
+ "description": "Resource Type definition for AWS:AppIntegrations::Application",
+ "inputs": {
+ "properties": {
+ "applicationArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) of the application."
+ }
+ },
+ "required": [
+ "applicationArn"
+ ]
+ },
+ "outputs": {
+ "properties": {
+ "applicationArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) of the application."
+ },
+ "applicationSourceConfig": {
+ "$ref": "#/types/aws-native:appintegrations:ApplicationSourceConfigProperties",
+ "description": "Application source config"
+ },
+ "description": {
+ "type": "string",
+ "description": "The application description."
+ },
+ "id": {
+ "type": "string",
+ "description": "The id of the application."
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the application."
+ },
+ "namespace": {
+ "type": "string",
+ "description": "The namespace of the application."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "The tags (keys and values) associated with the application."
+ }
+ }
+ }
+ },
"aws-native:appintegrations:getDataIntegration": {
"description": "Resource Type definition for AWS::AppIntegrations::DataIntegration",
"inputs": {
@@ -214436,7 +216732,8 @@
"description": "The maximum number of resolver request inputs that will be sent to a single LAMlong function in a ``BatchInvoke`` operation."
},
"metricsConfig": {
- "$ref": "#/types/aws-native:appsync:ResolverMetricsConfig"
+ "$ref": "#/types/aws-native:appsync:ResolverMetricsConfig",
+ "description": "Enables or disables enhanced resolver metrics for specified resolvers. Note that ``MetricsConfig`` won't be used unless the ``resolverLevelMetricsBehavior`` value is set to ``PER_RESOLVER_METRICS``. If the ``resolverLevelMetricsBehavior`` is set to ``FULL_REQUEST_RESOLVER_METRICS`` instead, ``MetricsConfig`` will be ignored. However, you can still set its value."
},
"pipelineConfig": {
"$ref": "#/types/aws-native:appsync:ResolverPipelineConfig",
@@ -214559,6 +216856,43 @@
}
}
},
+ "aws-native:aps:getScraper": {
+ "description": "Resource Type definition for AWS::APS::Scraper",
+ "inputs": {
+ "properties": {
+ "arn": {
+ "type": "string",
+ "description": "Scraper ARN."
+ }
+ },
+ "required": [
+ "arn"
+ ]
+ },
+ "outputs": {
+ "properties": {
+ "arn": {
+ "type": "string",
+ "description": "Scraper ARN."
+ },
+ "roleArn": {
+ "type": "string",
+ "description": "IAM role ARN for the scraper."
+ },
+ "scraperId": {
+ "type": "string",
+ "description": "Required to identify a specific scraper."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "An array of key-value pairs to apply to this resource."
+ }
+ }
+ }
+ },
"aws-native:aps:getWorkspace": {
"description": "Resource Type definition for AWS::APS::Workspace",
"inputs": {
@@ -215870,6 +218204,186 @@
}
}
},
+ "aws-native:bedrock:getAgent": {
+ "description": "Definition of AWS::Bedrock::Agent Resource Type",
+ "inputs": {
+ "properties": {
+ "agentId": {
+ "type": "string",
+ "description": "Identifier for a resource."
+ }
+ },
+ "required": [
+ "agentId"
+ ]
+ },
+ "outputs": {
+ "properties": {
+ "actionGroups": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:bedrock:AgentActionGroup"
+ },
+ "description": "List of ActionGroups"
+ },
+ "agentArn": {
+ "type": "string",
+ "description": "Arn representation of the Agent."
+ },
+ "agentId": {
+ "type": "string",
+ "description": "Identifier for a resource."
+ },
+ "agentName": {
+ "type": "string",
+ "description": "Name for a resource."
+ },
+ "agentResourceRoleArn": {
+ "type": "string",
+ "description": "ARN of a IAM role."
+ },
+ "agentStatus": {
+ "$ref": "#/types/aws-native:bedrock:AgentStatus"
+ },
+ "agentVersion": {
+ "type": "string",
+ "description": "Draft Agent Version."
+ },
+ "createdAt": {
+ "type": "string",
+ "description": "Time Stamp."
+ },
+ "customerEncryptionKeyArn": {
+ "type": "string",
+ "description": "A KMS key ARN"
+ },
+ "description": {
+ "type": "string",
+ "description": "Description of the Resource."
+ },
+ "failureReasons": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Failure Reasons for Error."
+ },
+ "foundationModel": {
+ "type": "string",
+ "description": "ARN or name of a Bedrock model."
+ },
+ "idleSessionTtlInSeconds": {
+ "type": "number",
+ "description": "Max Session Time."
+ },
+ "instruction": {
+ "type": "string",
+ "description": "Instruction for the agent."
+ },
+ "knowledgeBases": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:bedrock:AgentKnowledgeBase"
+ },
+ "description": "List of Agent Knowledge Bases"
+ },
+ "preparedAt": {
+ "type": "string",
+ "description": "Time Stamp."
+ },
+ "promptOverrideConfiguration": {
+ "$ref": "#/types/aws-native:bedrock:AgentPromptOverrideConfiguration"
+ },
+ "recommendedActions": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The recommended actions users can take to resolve an error in failureReasons."
+ },
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "updatedAt": {
+ "type": "string",
+ "description": "Time Stamp."
+ }
+ }
+ }
+ },
+ "aws-native:bedrock:getAgentAlias": {
+ "description": "Definition of AWS::Bedrock::AgentAlias Resource Type",
+ "inputs": {
+ "properties": {
+ "agentAliasId": {
+ "type": "string",
+ "description": "Id for an Agent Alias generated at the server side."
+ },
+ "agentId": {
+ "type": "string",
+ "description": "Identifier for a resource."
+ }
+ },
+ "required": [
+ "agentId",
+ "agentAliasId"
+ ]
+ },
+ "outputs": {
+ "properties": {
+ "agentAliasArn": {
+ "type": "string",
+ "description": "Arn representation of the Agent Alias."
+ },
+ "agentAliasHistoryEvents": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:bedrock:AgentAliasHistoryEvent"
+ },
+ "description": "The list of history events for an alias for an Agent."
+ },
+ "agentAliasId": {
+ "type": "string",
+ "description": "Id for an Agent Alias generated at the server side."
+ },
+ "agentAliasName": {
+ "type": "string",
+ "description": "Name for a resource."
+ },
+ "agentAliasStatus": {
+ "$ref": "#/types/aws-native:bedrock:AgentAliasStatus"
+ },
+ "createdAt": {
+ "type": "string",
+ "description": "Time Stamp."
+ },
+ "description": {
+ "type": "string",
+ "description": "Description of the Resource."
+ },
+ "routingConfiguration": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:bedrock:AgentAliasRoutingConfigurationListItem"
+ },
+ "description": "Routing configuration for an Agent alias."
+ },
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "updatedAt": {
+ "type": "string",
+ "description": "Time Stamp."
+ }
+ }
+ }
+ },
"aws-native:budgets:getBudgetsAction": {
"description": "An example resource schema demonstrating some basic constructs and validation rules.",
"inputs": {
@@ -217866,6 +220380,51 @@
}
}
},
+ "aws-native:codeartifact:getPackageGroup": {
+ "description": "The resource schema to create a CodeArtifact package group.",
+ "inputs": {
+ "properties": {
+ "arn": {
+ "type": "string",
+ "description": "The ARN of the package group."
+ }
+ },
+ "required": [
+ "arn"
+ ]
+ },
+ "outputs": {
+ "properties": {
+ "arn": {
+ "type": "string",
+ "description": "The ARN of the package group."
+ },
+ "contactInfo": {
+ "type": "string",
+ "description": "The contact info of the package group."
+ },
+ "description": {
+ "type": "string",
+ "description": "The text description of the package group."
+ },
+ "domainOwner": {
+ "type": "string",
+ "description": "The 12-digit account ID of the AWS account that owns the domain."
+ },
+ "originConfiguration": {
+ "$ref": "#/types/aws-native:codeartifact:PackageGroupOriginConfiguration",
+ "description": "The package origin configuration of the package group."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "An array of key-value pairs to apply to the package group."
+ }
+ }
+ }
+ },
"aws-native:codeartifact:getRepository": {
"description": "The resource schema to create a CodeArtifact repository.",
"inputs": {
@@ -217959,6 +220518,43 @@
}
}
},
+ "aws-native:codeconnections:getConnection": {
+ "description": "Schema for AWS::CodeConnections::Connection resource which can be used to connect external source providers with other AWS services (i.e. AWS CodePipeline)",
+ "inputs": {
+ "properties": {
+ "connectionArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) of the connection. The ARN is used as the connection reference when the connection is shared between AWS services."
+ }
+ },
+ "required": [
+ "connectionArn"
+ ]
+ },
+ "outputs": {
+ "properties": {
+ "connectionArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) of the connection. The ARN is used as the connection reference when the connection is shared between AWS services."
+ },
+ "connectionStatus": {
+ "type": "string",
+ "description": "The current status of the connection."
+ },
+ "ownerAccountId": {
+ "type": "string",
+ "description": "The name of the external provider where your third-party code repository is configured. For Bitbucket, this is the account ID of the owner of the Bitbucket repository."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "Specifies the tags applied to a connection."
+ }
+ }
+ }
+ },
"aws-native:codedeploy:getApplication": {
"description": "The AWS::CodeDeploy::Application resource creates an AWS CodeDeploy application",
"inputs": {
@@ -218145,7 +220741,7 @@
"description": "The ARN of the KMS key that the customer can optionally specify to use to encrypt RepositoryLink properties. If not specified, a default key will be used."
},
"providerType": {
- "type": "string",
+ "$ref": "#/types/aws-native:codestarconnections:RepositoryLinkProviderType",
"description": "The name of the external provider where your third-party code repository is configured."
},
"repositoryLinkArn": {
@@ -218199,9 +220795,13 @@
"description": "the ID of the entity that owns the repository."
},
"providerType": {
- "type": "string",
+ "$ref": "#/types/aws-native:codestarconnections:SyncConfigurationProviderType",
"description": "The name of the external provider where your third-party code repository is configured."
},
+ "publishDeploymentStatus": {
+ "$ref": "#/types/aws-native:codestarconnections:SyncConfigurationPublishDeploymentStatus",
+ "description": "Whether to enable or disable publishing of deployment status to source providers."
+ },
"repositoryLinkId": {
"type": "string",
"description": "A UUID that uniquely identifies the RepositoryLink that the SyncConfig is associated with."
@@ -218213,6 +220813,10 @@
"roleArn": {
"type": "string",
"description": "The IAM Role that allows AWS to update CloudFormation stacks based on content in the specified repository."
+ },
+ "triggerResourceUpdateOn": {
+ "$ref": "#/types/aws-native:codestarconnections:SyncConfigurationTriggerResourceUpdateOn",
+ "description": "When to trigger Git sync to begin the stack update."
}
}
}
@@ -219501,6 +222105,14 @@
},
"outputs": {
"properties": {
+ "lastModifiedRegion": {
+ "type": "string",
+ "description": "Last modified region."
+ },
+ "lastModifiedTime": {
+ "type": "number",
+ "description": "Last modified time."
+ },
"values": {
"$ref": "#/types/aws-native:connect:ValuesProperties",
"description": "The values of a predefined attribute."
@@ -219813,6 +222425,10 @@
},
"outputs": {
"properties": {
+ "allowedAccessControlHierarchyGroupId": {
+ "type": "string",
+ "description": "The identifier of the hierarchy group that a security profile uses to restrict access to resources in Amazon Connect."
+ },
"allowedAccessControlTags": {
"type": "array",
"items": {
@@ -219820,10 +222436,32 @@
},
"description": "The list of tags that a security profile uses to restrict access to resources in Amazon Connect."
},
+ "applications": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:connect:SecurityProfileApplication"
+ },
+ "description": "A list of third-party applications that the security profile will give access to."
+ },
"description": {
"type": "string",
"description": "The description of the security profile."
},
+ "hierarchyRestrictedResources": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The list of resources that a security profile applies hierarchy restrictions to in Amazon Connect."
+ },
+ "lastModifiedRegion": {
+ "type": "string",
+ "description": "The AWS Region where this resource was last modified."
+ },
+ "lastModifiedTime": {
+ "type": "number",
+ "description": "The timestamp when this resource was last modified."
+ },
"permissions": {
"type": "array",
"items": {
@@ -222762,12 +225400,18 @@
},
"outputs": {
"properties": {
+ "backupRetentionPeriod": {
+ "type": "integer"
+ },
"clusterArn": {
"type": "string"
},
"clusterEndpoint": {
"type": "string"
},
+ "preferredBackupWindow": {
+ "type": "string"
+ },
"preferredMaintenanceWindow": {
"type": "string"
},
@@ -222777,6 +225421,9 @@
"shardCount": {
"type": "integer"
},
+ "shardInstanceCount": {
+ "type": "integer"
+ },
"subnetIds": {
"type": "array",
"items": {
@@ -222934,6 +225581,9 @@
"$ref": "#/types/aws-native:dynamodb:TableProvisionedThroughput",
"description": "Throughput for the specified table, which consists of values for ``ReadCapacityUnits`` and ``WriteCapacityUnits``. For more information about the contents of a provisioned throughput structure, see [Amazon DynamoDB Table ProvisionedThroughput](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ProvisionedThroughput.html). \n If you set ``BillingMode`` as ``PROVISIONED``, you must specify this property. If you set ``BillingMode`` as ``PAY_PER_REQUEST``, you cannot specify this property."
},
+ "resourcePolicy": {
+ "$ref": "#/types/aws-native:dynamodb:TableResourcePolicy"
+ },
"sseSpecification": {
"$ref": "#/types/aws-native:dynamodb:TableSseSpecification",
"description": "Specifies the settings to enable server-side encryption."
@@ -223526,12 +226176,11 @@
}
},
"aws-native:ec2:getInternetGateway": {
- "description": "Resource Type definition for AWS::EC2::InternetGateway",
+ "description": "Allocates an internet gateway for use with a VPC. After creating the Internet gateway, you then attach it to a VPC.",
"inputs": {
"properties": {
"internetGatewayId": {
- "type": "string",
- "description": "ID of internet gateway."
+ "type": "string"
}
},
"required": [
@@ -223541,8 +226190,7 @@
"outputs": {
"properties": {
"internetGatewayId": {
- "type": "string",
- "description": "ID of internet gateway."
+ "type": "string"
},
"tags": {
"type": "array",
@@ -224934,14 +227582,14 @@
},
"mapPublicIpOnLaunch": {
"type": "boolean",
- "description": "Indicates whether instances launched in this subnet receive a public IPv4 address. The default value is ``false``.\n AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the [VPC pricing page](https://docs.aws.amazon.com/vpc/pricing/)."
+ "description": "Indicates whether instances launched in this subnet receive a public IPv4 address. The default value is ``false``.\n AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the [VPC pricing page](https://docs.aws.amazon.com/vpc/pricing/)."
},
"networkAclAssociationId": {
"type": "string"
},
"privateDnsNameOptionsOnLaunch": {
"$ref": "#/types/aws-native:ec2:PrivateDnsNameOptionsOnLaunchProperties",
- "description": "The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries to the instances should be handled. For more information, see [Amazon EC2 instance hostname types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-naming.html) in the *User Guide*.\n Available options:\n + EnableResourceNameDnsAAAARecord (true | false)\n + EnableResourceNameDnsARecord (true | false)\n + HostnameType (ip-name | resource-name)"
+ "description": "The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries to the instances should be handled. For more information, see [Amazon EC2 instance hostname types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-naming.html) in the *User Guide*.\n Available options:\n + EnableResourceNameDnsAAAARecord (true | false)\n + EnableResourceNameDnsARecord (true | false)\n + HostnameType (ip-name | resource-name)"
},
"subnetId": {
"type": "string"
@@ -225422,26 +228070,6 @@
}
}
},
- "aws-native:ec2:getTransitGatewayRouteTableAssociation": {
- "description": "Resource Type definition for AWS::EC2::TransitGatewayRouteTableAssociation",
- "inputs": {
- "properties": {
- "id": {
- "type": "string"
- }
- },
- "required": [
- "id"
- ]
- },
- "outputs": {
- "properties": {
- "id": {
- "type": "string"
- }
- }
- }
- },
"aws-native:ec2:getTransitGatewayVpcAttachment": {
"description": "Resource Type definition for AWS::EC2::TransitGatewayVpcAttachment",
"inputs": {
@@ -230919,12 +233547,11 @@
}
},
"aws-native:iam:getManagedPolicy": {
- "description": "Resource Type definition for AWS::IAM::ManagedPolicy",
+ "description": "Creates a new managed policy for your AWS-account.\n This operation creates a policy version with a version identifier of ``v1`` and sets v1 as the policy's default version. For more information about policy versions, see [Versioning for managed policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html) in the *IAM User Guide*.\n As a best practice, you can validate your IAM policies. To learn more, see [Validating IAM policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_policy-validator.html) in the *IAM User Guide*.\n For more information about managed policies in general, see [Managed policies and inline policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the *IAM User Guide*.",
"inputs": {
"properties": {
"policyArn": {
- "type": "string",
- "description": "Amazon Resource Name (ARN) of the managed policy"
+ "type": "string"
}
},
"required": [
@@ -230934,61 +233561,53 @@
"outputs": {
"properties": {
"attachmentCount": {
- "type": "integer",
- "description": "The number of entities (users, groups, and roles) that the policy is attached to."
+ "type": "integer"
},
"createDate": {
- "type": "string",
- "description": "The date and time, in ISO 8601 date-time format, when the policy was created."
+ "type": "string"
},
"defaultVersionId": {
- "type": "string",
- "description": "The identifier for the version of the policy that is set as the default version."
+ "type": "string"
},
"groups": {
"type": "array",
"items": {
"type": "string"
},
- "description": "The name (friendly name, not ARN) of the group to attach the policy to."
+ "description": "The name (friendly name, not ARN) of the group to attach the policy to.\n This parameter allows (through its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-"
},
"isAttachable": {
- "type": "boolean",
- "description": "Specifies whether the policy can be attached to an IAM user, group, or role."
+ "type": "boolean"
},
"permissionsBoundaryUsageCount": {
- "type": "integer",
- "description": "The number of entities (users and roles) for which the policy is used to set the permissions boundary."
+ "type": "integer"
},
"policyArn": {
- "type": "string",
- "description": "Amazon Resource Name (ARN) of the managed policy"
+ "type": "string"
},
"policyDocument": {
"$ref": "pulumi.json#/Any",
- "description": "The JSON policy document that you want to use as the content for the new policy.\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::IAM::ManagedPolicy` for more information about the expected schema for this property."
+ "description": "The JSON policy document that you want to use as the content for the new policy.\n You must provide policies in JSON format in IAM. However, for CFN templates formatted in YAML, you can provide the policy in JSON or YAML format. CFN always converts a YAML policy to JSON format before submitting it to IAM.\n The maximum length of the policy document that you can pass in this operation, including whitespace, is listed below. To view the maximum character counts of a managed policy with no whitespaces, see [IAM and character quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length).\n To learn more about JSON policy grammar, see [Grammar of the IAM JSON policy language](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_grammar.html) in the *IAM User Guide*. \n The [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex) used to validate this parameter is a string of characters consisting of the following:\n + Any printable ASCII character ranging from the space character (``\\u0020``) through the end of the ASCII character range\n + The printable characters in the Basic Latin and Latin-1 Supplement character set (through ``\\u00FF``)\n + The special characters tab (``\\u0009``), line feed (``\\u000A``), and carriage return (``\\u000D``)\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::IAM::ManagedPolicy` for more information about the expected schema for this property."
},
"policyId": {
- "type": "string",
- "description": "The stable and unique string identifying the policy."
+ "type": "string"
},
"roles": {
"type": "array",
"items": {
"type": "string"
},
- "description": "The name (friendly name, not ARN) of the role to attach the policy to."
+ "description": "The name (friendly name, not ARN) of the role to attach the policy to.\n This parameter allows (per its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-\n If an external policy (such as ``AWS::IAM::Policy`` or ``AWS::IAM::ManagedPolicy``) has a ``Ref`` to a role and if a resource (such as ``AWS::ECS::Service``) also has a ``Ref`` to the same role, add a ``DependsOn`` attribute to the resource to make the resource depend on the external policy. This dependency ensures that the role's policy is available throughout the resource's lifecycle. For example, when you delete a stack with an ``AWS::ECS::Service`` resource, the ``DependsOn`` attribute ensures that CFN deletes the ``AWS::ECS::Service`` resource before deleting its role's policy."
},
"updateDate": {
- "type": "string",
- "description": "The date and time, in ISO 8601 date-time format, when the policy was last updated."
+ "type": "string"
},
"users": {
"type": "array",
"items": {
"type": "string"
},
- "description": "The name (friendly name, not ARN) of the IAM user to attach the policy to."
+ "description": "The name (friendly name, not ARN) of the IAM user to attach the policy to.\n This parameter allows (through its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-"
}
}
}
@@ -235000,6 +237619,75 @@
}
}
},
+ "aws-native:kafkaconnect:getCustomPlugin": {
+ "description": "An example resource schema demonstrating some basic constructs and validation rules.",
+ "inputs": {
+ "properties": {
+ "customPluginArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) of the custom plugin to use."
+ }
+ },
+ "required": [
+ "customPluginArn"
+ ]
+ },
+ "outputs": {
+ "properties": {
+ "customPluginArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) of the custom plugin to use."
+ },
+ "fileDescription": {
+ "$ref": "#/types/aws-native:kafkaconnect:CustomPluginFileDescription"
+ },
+ "revision": {
+ "type": "integer",
+ "description": "The revision of the custom plugin."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "An array of key-value pairs to apply to this resource."
+ }
+ }
+ }
+ },
+ "aws-native:kafkaconnect:getWorkerConfiguration": {
+ "description": "The configuration of the workers, which are the processes that run the connector logic.",
+ "inputs": {
+ "properties": {
+ "workerConfigurationArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) of the custom configuration."
+ }
+ },
+ "required": [
+ "workerConfigurationArn"
+ ]
+ },
+ "outputs": {
+ "properties": {
+ "revision": {
+ "type": "integer",
+ "description": "The description of a revision of the worker configuration."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "A collection of tags associated with a resource"
+ },
+ "workerConfigurationArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) of the custom configuration."
+ }
+ }
+ }
+ },
"aws-native:kendra:getDataSource": {
"description": "Kendra DataSource",
"inputs": {
@@ -237402,12 +240090,12 @@
}
},
"aws-native:logs:getLogGroup": {
- "description": "Resource schema for AWS::Logs::LogGroup",
+ "description": "The ``AWS::Logs::LogGroup`` resource specifies a log group. A log group defines common properties for log streams, such as their retention and access control rules. Each log stream must belong to one log group.\n You can create up to 1,000,000 log groups per Region per account. You must use the following guidelines when naming a log group:\n + Log group names must be unique within a Region for an AWS account.\n + Log group names can be between 1 and 512 characters long.\n + Log group names consist of the following characters: a-z, A-Z, 0-9, '_' (underscore), '-' (hyphen), '/' (forward slash), and '.' (period).",
"inputs": {
"properties": {
"logGroupName": {
"type": "string",
- "description": "The name of the log group. If you don't specify a name, AWS CloudFormation generates a unique ID for the log group."
+ "description": "The name of the log group. If you don't specify a name, CFNlong generates a unique ID for the log group."
}
},
"required": [
@@ -237417,46 +240105,45 @@
"outputs": {
"properties": {
"arn": {
- "type": "string",
- "description": "The CloudWatch log group ARN."
+ "type": "string"
},
"dataProtectionPolicy": {
"$ref": "pulumi.json#/Any",
- "description": "The body of the policy document you want to use for this topic.\n\nYou can only add one policy per topic.\n\nThe policy must be in JSON string format.\n\nLength Constraints: Maximum length of 30720\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Logs::LogGroup` for more information about the expected schema for this property."
+ "description": "Creates a data protection policy and assigns it to the log group. A data protection policy can help safeguard sensitive data that's ingested by the log group by auditing and masking the sensitive log data. When a user who does not have permission to view masked data views a log event that includes masked data, the sensitive data is replaced by asterisks.\n For more information, including a list of types of data that can be audited and masked, see [Protect sensitive log data with masking](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/mask-sensitive-log-data.html).\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Logs::LogGroup` for more information about the expected schema for this property."
},
"kmsKeyId": {
"type": "string",
- "description": "The Amazon Resource Name (ARN) of the CMK to use when encrypting log data."
+ "description": "The Amazon Resource Name (ARN) of the KMS key to use when encrypting log data.\n To associate an KMS key with the log group, specify the ARN of that KMS key here. If you do so, ingested data is encrypted using this key. This association is stored as long as the data encrypted with the KMS key is still within CWL. This enables CWL to decrypt this data whenever it is requested.\n If you attempt to associate a KMS key with the log group but the KMS key doesn't exist or is deactivated, you will receive an ``InvalidParameterException`` error.\n Log group data is always encrypted in CWL. If you omit this key, the encryption does not use KMS. For more information, see [Encrypt log data in using](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/encrypt-log-data-kms.html)"
},
"logGroupClass": {
"$ref": "#/types/aws-native:logs:LogGroupClass",
- "description": "The class of the log group. Possible values are: STANDARD and INFREQUENT_ACCESS, with STANDARD being the default class"
+ "description": "Specifies the log group class for this log group. There are two classes:\n + The ``Standard`` log class supports all CWL features.\n + The ``Infrequent Access`` log class supports a subset of CWL features and incurs lower costs.\n \n For details about the features supported by each class, see [Log classes](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch_Logs_Log_Classes.html)"
},
"retentionInDays": {
"type": "integer",
- "description": "The number of days to retain the log events in the specified log group. Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1096, 1827, and 3653."
+ "description": "The number of days to retain the log events in the specified log group. Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1096, 1827, 2192, 2557, 2922, 3288, and 3653.\n To set a log group so that its log events do not expire, use [DeleteRetentionPolicy](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DeleteRetentionPolicy.html)."
},
"tags": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:index:Tag"
},
- "description": "An array of key-value pairs to apply to this resource."
+ "description": "An array of key-value pairs to apply to the log group.\n For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html)."
}
}
}
},
"aws-native:logs:getMetricFilter": {
- "description": "Specifies a metric filter that describes how CloudWatch Logs extracts information from logs and transforms it into Amazon CloudWatch metrics.",
+ "description": "The ``AWS::Logs::MetricFilter`` resource specifies a metric filter that describes how CWL extracts information from logs and transforms it into Amazon CloudWatch metrics. If you have multiple metric filters that are associated with a log group, all the filters are applied to the log streams in that group.\n The maximum number of metric filters that can be associated with a log group is 100.",
"inputs": {
"properties": {
"filterName": {
"type": "string",
- "description": "A name for the metric filter."
+ "description": "The name of the metric filter."
},
"logGroupName": {
"type": "string",
- "description": "Existing log group that you want to associate with this filter."
+ "description": "The name of an existing log group that you want to associate with this metric filter."
}
},
"required": [
@@ -237468,14 +240155,14 @@
"properties": {
"filterPattern": {
"type": "string",
- "description": "Pattern that Logs follows to interpret each entry in a log."
+ "description": "A filter pattern for extracting metric data out of ingested log events. For more information, see [Filter and Pattern Syntax](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html)."
},
"metricTransformations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:logs:MetricFilterMetricTransformation"
},
- "description": "A collection of information that defines how metric data gets emitted."
+ "description": "The metric transformations."
}
}
}
@@ -237540,16 +240227,16 @@
}
},
"aws-native:logs:getSubscriptionFilter": {
- "description": "Subscription filters allow you to subscribe to a real-time stream of log events and have them delivered to a specific destination.",
+ "description": "The ``AWS::Logs::SubscriptionFilter`` resource specifies a subscription filter and associates it with the specified log group. Subscription filters allow you to subscribe to a real-time stream of log events and have them delivered to a specific destination. Currently, the supported destinations are:\n + An Amazon Kinesis data stream belonging to the same account as the subscription filter, for same-account delivery.\n + A logical destination that belongs to a different account, for cross-account delivery.\n + An Amazon Kinesis Firehose delivery stream that belongs to the same account as the subscription filter, for same-account delivery.\n + An LAMlong function that belongs to the same account as the subscription filter, for same-account delivery.\n \n There can be as many as two subscription filters associated with a log group.",
"inputs": {
"properties": {
"filterName": {
"type": "string",
- "description": "The name of the filter generated by resource."
+ "description": "The name of the subscription filter."
},
"logGroupName": {
"type": "string",
- "description": "Existing log group that you want to associate with this filter."
+ "description": "The log group to associate with the subscription filter. All log events that are uploaded to this log group are filtered and delivered to the specified AWS resource if the filter pattern matches the log events."
}
},
"required": [
@@ -237565,15 +240252,15 @@
},
"distribution": {
"$ref": "#/types/aws-native:logs:SubscriptionFilterDistribution",
- "description": "The method used to distribute log data to the destination. By default, log data is grouped by log stream, but the grouping can be set to random for a more even distribution. This property is only applicable when the destination is an Amazon Kinesis stream."
+ "description": "The method used to distribute log data to the destination, which can be either random or grouped by log stream."
},
"filterPattern": {
"type": "string",
- "description": "The filtering expressions that restrict what gets delivered to the destination AWS resource."
+ "description": "The filtering expressions that restrict what gets delivered to the destination AWS resource. For more information about the filter pattern syntax, see [Filter and Pattern Syntax](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html)."
},
"roleArn": {
"type": "string",
- "description": "The ARN of an IAM role that grants CloudWatch Logs permissions to deliver ingested log events to the destination stream. You don't need to provide the ARN when you are working with a logical destination for cross-account delivery."
+ "description": "The ARN of an IAM role that grants CWL permissions to deliver ingested log events to the destination stream. You don't need to provide the ARN when you are working with a logical destination for cross-account delivery."
}
}
}
@@ -243849,10 +246536,22 @@
"createTime": {
"type": "string"
},
+ "dataFilter": {
+ "type": "string",
+ "description": "The data filter for the integration."
+ },
+ "description": {
+ "type": "string",
+ "description": "The description of the integration."
+ },
"integrationArn": {
"type": "string",
"description": "The ARN of the integration."
},
+ "integrationName": {
+ "type": "string",
+ "description": "The name of the integration."
+ },
"tags": {
"type": "array",
"items": {
@@ -244841,10 +247540,7 @@
"description": "Data Location Constraint of the Policy."
},
"policy": {
- "type": "object",
- "additionalProperties": {
- "$ref": "#/types/aws-native:resiliencehub:ResiliencyPolicyFailurePolicy"
- }
+ "$ref": "#/types/aws-native:resiliencehub:ResiliencyPolicyPolicyMap"
},
"policyArn": {
"type": "string",
@@ -248057,6 +250753,148 @@
}
}
},
+ "aws-native:securitylake:getAwsLogSource": {
+ "description": "Resource Type definition for AWS::SecurityLake::AwsLogSource",
+ "inputs": {
+ "properties": {
+ "sourceName": {
+ "type": "string",
+ "description": "The name for a AWS source. This must be a Regionally unique value."
+ },
+ "sourceVersion": {
+ "type": "string",
+ "description": "The version for a AWS source. This must be a Regionally unique value."
+ }
+ },
+ "required": [
+ "sourceName",
+ "sourceVersion"
+ ]
+ },
+ "outputs": {
+ "properties": {
+ "accounts": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "AWS account where you want to collect logs from."
+ }
+ }
+ }
+ },
+ "aws-native:securitylake:getDataLake": {
+ "description": "Resource Type definition for AWS::SecurityLake::DataLake",
+ "inputs": {
+ "properties": {
+ "arn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) created by you to provide to the subscriber."
+ }
+ },
+ "required": [
+ "arn"
+ ]
+ },
+ "outputs": {
+ "properties": {
+ "arn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) created by you to provide to the subscriber."
+ },
+ "encryptionConfiguration": {
+ "$ref": "#/types/aws-native:securitylake:DataLakeEncryptionConfiguration"
+ },
+ "lifecycleConfiguration": {
+ "$ref": "#/types/aws-native:securitylake:DataLakeLifecycleConfiguration"
+ },
+ "replicationConfiguration": {
+ "$ref": "#/types/aws-native:securitylake:DataLakeReplicationConfiguration"
+ },
+ "s3BucketArn": {
+ "type": "string",
+ "description": "The ARN for the Amazon Security Lake Amazon S3 bucket."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ }
+ }
+ }
+ }
+ },
+ "aws-native:securitylake:getSubscriber": {
+ "description": "Resource Type definition for AWS::SecurityLake::Subscriber",
+ "inputs": {
+ "properties": {
+ "subscriberArn": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "subscriberArn"
+ ]
+ },
+ "outputs": {
+ "properties": {
+ "accessTypes": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:securitylake:SubscriberAccessTypesItem"
+ }
+ },
+ "resourceShareArn": {
+ "type": "string"
+ },
+ "resourceShareName": {
+ "type": "string"
+ },
+ "s3BucketArn": {
+ "type": "string"
+ },
+ "sources": {
+ "type": "array",
+ "items": {
+ "oneOf": [
+ {
+ "$ref": "#/types/aws-native:securitylake:SubscriberSource0Properties"
+ },
+ {
+ "$ref": "#/types/aws-native:securitylake:SubscriberSource1Properties"
+ }
+ ]
+ },
+ "description": "The supported AWS services from which logs and events are collected."
+ },
+ "subscriberArn": {
+ "type": "string"
+ },
+ "subscriberDescription": {
+ "type": "string",
+ "description": "The description for your subscriber account in Security Lake."
+ },
+ "subscriberIdentity": {
+ "$ref": "#/types/aws-native:securitylake:SubscriberIdentityProperties",
+ "description": "The AWS identity used to access your data."
+ },
+ "subscriberName": {
+ "type": "string",
+ "description": "The name of your Security Lake subscriber account."
+ },
+ "subscriberRoleArn": {
+ "type": "string"
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "An array of objects, one for each tag to associate with the subscriber. For each tag, you must specify both a tag key and a tag value. A tag value cannot be null, but it can be an empty string."
+ }
+ }
+ }
+ },
"aws-native:servicecatalog:getCloudFormationProvisionedProduct": {
"description": "Resource Schema for AWS::ServiceCatalog::CloudFormationProvisionedProduct",
"inputs": {
diff --git a/reports/missedAutonaming.json b/reports/missedAutonaming.json
index 0eaf95142f..4b0b305907 100644
--- a/reports/missedAutonaming.json
+++ b/reports/missedAutonaming.json
@@ -864,7 +864,8 @@
"description": "The maximum number of resolver request inputs that will be sent to a single LAMlong function in a ``BatchInvoke`` operation."
},
"metricsConfig": {
- "$ref": "#/types/aws-native:appsync:ResolverMetricsConfig"
+ "$ref": "#/types/aws-native:appsync:ResolverMetricsConfig",
+ "description": "Enables or disables enhanced resolver metrics for specified resolvers. Note that ``MetricsConfig`` won't be used unless the ``resolverLevelMetricsBehavior`` value is set to ``PER_RESOLVER_METRICS``. If the ``resolverLevelMetricsBehavior`` is set to ``FULL_REQUEST_RESOLVER_METRICS`` instead, ``MetricsConfig`` will be ignored. However, you can still set its value."
},
"pipelineConfig": {
"$ref": "#/types/aws-native:appsync:ResolverPipelineConfig",
@@ -921,6 +922,31 @@
}
}
},
+ "aws-native:aps:Scraper": {
+ "cfTypeName": "AWS::APS::Scraper",
+ "properties": {
+ "alias": {
+ "type": "string",
+ "description": "Scraper alias."
+ },
+ "destination": {
+ "$ref": "#/types/aws-native:aps:ScraperDestination"
+ },
+ "scrapeConfiguration": {
+ "$ref": "#/types/aws-native:aps:ScraperScrapeConfiguration"
+ },
+ "source": {
+ "$ref": "#/types/aws-native:aps:ScraperSource"
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "An array of key-value pairs to apply to this resource."
+ }
+ }
+ },
"aws-native:aps:Workspace": {
"cfTypeName": "AWS::APS::Workspace",
"properties": {
@@ -1494,6 +1520,42 @@
}
}
},
+ "aws-native:codeartifact:PackageGroup": {
+ "cfTypeName": "AWS::CodeArtifact::PackageGroup",
+ "properties": {
+ "contactInfo": {
+ "type": "string",
+ "description": "The contact info of the package group."
+ },
+ "description": {
+ "type": "string",
+ "description": "The text description of the package group."
+ },
+ "domainName": {
+ "type": "string",
+ "description": "The name of the domain that contains the package group."
+ },
+ "domainOwner": {
+ "type": "string",
+ "description": "The 12-digit account ID of the AWS account that owns the domain."
+ },
+ "originConfiguration": {
+ "$ref": "#/types/aws-native:codeartifact:PackageGroupOriginConfiguration",
+ "description": "The package origin configuration of the package group."
+ },
+ "pattern": {
+ "type": "string",
+ "description": "The package group pattern that is used to gather packages."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ },
+ "description": "An array of key-value pairs to apply to the package group."
+ }
+ }
+ },
"aws-native:codepipeline:CustomActionType": {
"cfTypeName": "AWS::CodePipeline::CustomActionType",
"properties": {
@@ -1576,6 +1638,10 @@
"type": "string",
"description": "The source provider repository path of the sync configuration file of the respective SyncType."
},
+ "publishDeploymentStatus": {
+ "$ref": "#/types/aws-native:codestarconnections:SyncConfigurationPublishDeploymentStatus",
+ "description": "Whether to enable or disable publishing of deployment status to source providers."
+ },
"repositoryLinkId": {
"type": "string",
"description": "A UUID that uniquely identifies the RepositoryLink that the SyncConfig is associated with."
@@ -1591,6 +1657,10 @@
"syncType": {
"type": "string",
"description": "The type of resource synchronization service that is to be configured, for example, CFN_STACK_SYNC."
+ },
+ "triggerResourceUpdateOn": {
+ "$ref": "#/types/aws-native:codestarconnections:SyncConfigurationTriggerResourceUpdateOn",
+ "description": "When to trigger Git sync to begin the stack update."
}
}
},
@@ -4103,6 +4173,10 @@
"type": "boolean",
"description": "Indicates whether DNS queries made to the Amazon-provided DNS Resolver in this subnet should return synthetic IPv6 addresses for IPv4-only destinations. For more information, see [DNS64 and NAT64](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-nat64-dns64) in the *User Guide*."
},
+ "enableLniAtDeviceIndex": {
+ "type": "integer",
+ "description": "Indicates the device position for local network interfaces in this subnet. For example, ``1`` indicates local network interfaces in this subnet are the secondary network interface (eth1)."
+ },
"ipv4IpamPoolId": {
"type": "string",
"description": "An IPv4 IPAM pool ID for the subnet."
@@ -4136,7 +4210,7 @@
},
"mapPublicIpOnLaunch": {
"type": "boolean",
- "description": "Indicates whether instances launched in this subnet receive a public IPv4 address. The default value is ``false``.\n AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the [VPC pricing page](https://docs.aws.amazon.com/vpc/pricing/)."
+ "description": "Indicates whether instances launched in this subnet receive a public IPv4 address. The default value is ``false``.\n AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the [VPC pricing page](https://docs.aws.amazon.com/vpc/pricing/)."
},
"outpostArn": {
"type": "string",
@@ -4144,7 +4218,7 @@
},
"privateDnsNameOptionsOnLaunch": {
"$ref": "#/types/aws-native:ec2:PrivateDnsNameOptionsOnLaunchProperties",
- "description": "The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries to the instances should be handled. For more information, see [Amazon EC2 instance hostname types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-naming.html) in the *User Guide*.\n Available options:\n + EnableResourceNameDnsAAAARecord (true | false)\n + EnableResourceNameDnsARecord (true | false)\n + HostnameType (ip-name | resource-name)"
+ "description": "The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries to the instances should be handled. For more information, see [Amazon EC2 instance hostname types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-naming.html) in the *User Guide*.\n Available options:\n + EnableResourceNameDnsAAAARecord (true | false)\n + EnableResourceNameDnsARecord (true | false)\n + HostnameType (ip-name | resource-name)"
},
"tags": {
"type": "array",
@@ -4419,10 +4493,12 @@
"cfTypeName": "AWS::EC2::TransitGatewayRouteTableAssociation",
"properties": {
"transitGatewayAttachmentId": {
- "type": "string"
+ "type": "string",
+ "description": "The ID of transit gateway attachment."
},
"transitGatewayRouteTableId": {
- "type": "string"
+ "type": "string",
+ "description": "The ID of transit gateway route table."
}
}
},
@@ -9782,6 +9858,30 @@
}
}
},
+ "aws-native:securitylake:DataLake": {
+ "cfTypeName": "AWS::SecurityLake::DataLake",
+ "properties": {
+ "encryptionConfiguration": {
+ "$ref": "#/types/aws-native:securitylake:DataLakeEncryptionConfiguration"
+ },
+ "lifecycleConfiguration": {
+ "$ref": "#/types/aws-native:securitylake:DataLakeLifecycleConfiguration"
+ },
+ "metaStoreManagerRoleArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) used to index AWS Glue table partitions that are generated by the ingestion and normalization of AWS log sources and custom sources."
+ },
+ "replicationConfiguration": {
+ "$ref": "#/types/aws-native:securitylake:DataLakeReplicationConfiguration"
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:index:Tag"
+ }
+ }
+ }
+ },
"aws-native:servicecatalog:CloudFormationProvisionedProduct": {
"cfTypeName": "AWS::ServiceCatalog::CloudFormationProvisionedProduct",
"properties": {
diff --git a/sdk/dotnet/AppIntegrations/Application.cs b/sdk/dotnet/AppIntegrations/Application.cs
new file mode 100644
index 0000000000..0b46b357ad
--- /dev/null
+++ b/sdk/dotnet/AppIntegrations/Application.cs
@@ -0,0 +1,146 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.AppIntegrations
+{
+ ///
+ /// Resource Type definition for AWS:AppIntegrations::Application
+ ///
+ [AwsNativeResourceType("aws-native:appintegrations:Application")]
+ public partial class Application : global::Pulumi.CustomResource
+ {
+ ///
+ /// The Amazon Resource Name (ARN) of the application.
+ ///
+ [Output("applicationArn")]
+ public Output ApplicationArn { get; private set; } = null!;
+
+ ///
+ /// Application source config
+ ///
+ [Output("applicationSourceConfig")]
+ public Output ApplicationSourceConfig { get; private set; } = null!;
+
+ ///
+ /// The id of the application.
+ ///
+ [Output("awsId")]
+ public Output AwsId { get; private set; } = null!;
+
+ ///
+ /// The application description.
+ ///
+ [Output("description")]
+ public Output Description { get; private set; } = null!;
+
+ ///
+ /// The name of the application.
+ ///
+ [Output("name")]
+ public Output Name { get; private set; } = null!;
+
+ ///
+ /// The namespace of the application.
+ ///
+ [Output("namespace")]
+ public Output Namespace { get; private set; } = null!;
+
+ ///
+ /// The tags (keys and values) associated with the application.
+ ///
+ [Output("tags")]
+ public Output> Tags { get; private set; } = null!;
+
+
+ ///
+ /// Create a Application resource with the given unique name, arguments, and options.
+ ///
+ ///
+ /// The unique name of the resource
+ /// The arguments used to populate this resource's properties
+ /// A bag of options that control this resource's behavior
+ public Application(string name, ApplicationArgs args, CustomResourceOptions? options = null)
+ : base("aws-native:appintegrations:Application", name, args ?? new ApplicationArgs(), MakeResourceOptions(options, ""))
+ {
+ }
+
+ private Application(string name, Input id, CustomResourceOptions? options = null)
+ : base("aws-native:appintegrations:Application", name, null, MakeResourceOptions(options, id))
+ {
+ }
+
+ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id)
+ {
+ var defaultOptions = new CustomResourceOptions
+ {
+ Version = Utilities.Version,
+ };
+ var merged = CustomResourceOptions.Merge(defaultOptions, options);
+ // Override the ID if one was specified for consistency with other language SDKs.
+ merged.Id = id ?? merged.Id;
+ return merged;
+ }
+ ///
+ /// Get an existing Application resource's state with the given name, ID, and optional extra
+ /// properties used to qualify the lookup.
+ ///
+ ///
+ /// The unique name of the resulting resource.
+ /// The unique provider ID of the resource to lookup.
+ /// A bag of options that control this resource's behavior
+ public static Application Get(string name, Input id, CustomResourceOptions? options = null)
+ {
+ return new Application(name, id, options);
+ }
+ }
+
+ public sealed class ApplicationArgs : global::Pulumi.ResourceArgs
+ {
+ ///
+ /// Application source config
+ ///
+ [Input("applicationSourceConfig", required: true)]
+ public Input ApplicationSourceConfig { get; set; } = null!;
+
+ ///
+ /// The application description.
+ ///
+ [Input("description", required: true)]
+ public Input Description { get; set; } = null!;
+
+ ///
+ /// The name of the application.
+ ///
+ [Input("name")]
+ public Input? Name { get; set; }
+
+ ///
+ /// The namespace of the application.
+ ///
+ [Input("namespace")]
+ public Input? Namespace { get; set; }
+
+ [Input("tags")]
+ private InputList? _tags;
+
+ ///
+ /// The tags (keys and values) associated with the application.
+ ///
+ public InputList Tags
+ {
+ get => _tags ?? (_tags = new InputList());
+ set => _tags = value;
+ }
+
+ public ApplicationArgs()
+ {
+ }
+ public static new ApplicationArgs Empty => new ApplicationArgs();
+ }
+}
diff --git a/sdk/dotnet/AppIntegrations/GetApplication.cs b/sdk/dotnet/AppIntegrations/GetApplication.cs
new file mode 100644
index 0000000000..2b2c01d71a
--- /dev/null
+++ b/sdk/dotnet/AppIntegrations/GetApplication.cs
@@ -0,0 +1,114 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.AppIntegrations
+{
+ public static class GetApplication
+ {
+ ///
+ /// Resource Type definition for AWS:AppIntegrations::Application
+ ///
+ public static Task InvokeAsync(GetApplicationArgs args, InvokeOptions? options = null)
+ => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:appintegrations:getApplication", args ?? new GetApplicationArgs(), options.WithDefaults());
+
+ ///
+ /// Resource Type definition for AWS:AppIntegrations::Application
+ ///
+ public static Output Invoke(GetApplicationInvokeArgs args, InvokeOptions? options = null)
+ => global::Pulumi.Deployment.Instance.Invoke("aws-native:appintegrations:getApplication", args ?? new GetApplicationInvokeArgs(), options.WithDefaults());
+ }
+
+
+ public sealed class GetApplicationArgs : global::Pulumi.InvokeArgs
+ {
+ ///
+ /// The Amazon Resource Name (ARN) of the application.
+ ///
+ [Input("applicationArn", required: true)]
+ public string ApplicationArn { get; set; } = null!;
+
+ public GetApplicationArgs()
+ {
+ }
+ public static new GetApplicationArgs Empty => new GetApplicationArgs();
+ }
+
+ public sealed class GetApplicationInvokeArgs : global::Pulumi.InvokeArgs
+ {
+ ///
+ /// The Amazon Resource Name (ARN) of the application.
+ ///
+ [Input("applicationArn", required: true)]
+ public Input ApplicationArn { get; set; } = null!;
+
+ public GetApplicationInvokeArgs()
+ {
+ }
+ public static new GetApplicationInvokeArgs Empty => new GetApplicationInvokeArgs();
+ }
+
+
+ [OutputType]
+ public sealed class GetApplicationResult
+ {
+ ///
+ /// The Amazon Resource Name (ARN) of the application.
+ ///
+ public readonly string? ApplicationArn;
+ ///
+ /// Application source config
+ ///
+ public readonly Outputs.ApplicationSourceConfigProperties? ApplicationSourceConfig;
+ ///
+ /// The application description.
+ ///
+ public readonly string? Description;
+ ///
+ /// The id of the application.
+ ///
+ public readonly string? Id;
+ ///
+ /// The name of the application.
+ ///
+ public readonly string? Name;
+ ///
+ /// The namespace of the application.
+ ///
+ public readonly string? Namespace;
+ ///
+ /// The tags (keys and values) associated with the application.
+ ///
+ public readonly ImmutableArray Tags;
+
+ [OutputConstructor]
+ private GetApplicationResult(
+ string? applicationArn,
+
+ Outputs.ApplicationSourceConfigProperties? applicationSourceConfig,
+
+ string? description,
+
+ string? id,
+
+ string? name,
+
+ string? @namespace,
+
+ ImmutableArray tags)
+ {
+ ApplicationArn = applicationArn;
+ ApplicationSourceConfig = applicationSourceConfig;
+ Description = description;
+ Id = id;
+ Name = name;
+ Namespace = @namespace;
+ Tags = tags;
+ }
+ }
+}
diff --git a/sdk/dotnet/AppIntegrations/Inputs/ApplicationExternalUrlConfigArgs.cs b/sdk/dotnet/AppIntegrations/Inputs/ApplicationExternalUrlConfigArgs.cs
new file mode 100644
index 0000000000..9bb902c772
--- /dev/null
+++ b/sdk/dotnet/AppIntegrations/Inputs/ApplicationExternalUrlConfigArgs.cs
@@ -0,0 +1,31 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.AppIntegrations.Inputs
+{
+
+ public sealed class ApplicationExternalUrlConfigArgs : global::Pulumi.ResourceArgs
+ {
+ [Input("accessUrl", required: true)]
+ public Input AccessUrl { get; set; } = null!;
+
+ [Input("approvedOrigins", required: true)]
+ private InputList? _approvedOrigins;
+ public InputList ApprovedOrigins
+ {
+ get => _approvedOrigins ?? (_approvedOrigins = new InputList());
+ set => _approvedOrigins = value;
+ }
+
+ public ApplicationExternalUrlConfigArgs()
+ {
+ }
+ public static new ApplicationExternalUrlConfigArgs Empty => new ApplicationExternalUrlConfigArgs();
+ }
+}
diff --git a/sdk/dotnet/AppIntegrations/Inputs/ApplicationSourceConfigPropertiesArgs.cs b/sdk/dotnet/AppIntegrations/Inputs/ApplicationSourceConfigPropertiesArgs.cs
new file mode 100644
index 0000000000..6bd8bed3fc
--- /dev/null
+++ b/sdk/dotnet/AppIntegrations/Inputs/ApplicationSourceConfigPropertiesArgs.cs
@@ -0,0 +1,26 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.AppIntegrations.Inputs
+{
+
+ ///
+ /// Application source config
+ ///
+ public sealed class ApplicationSourceConfigPropertiesArgs : global::Pulumi.ResourceArgs
+ {
+ [Input("externalUrlConfig", required: true)]
+ public Input ExternalUrlConfig { get; set; } = null!;
+
+ public ApplicationSourceConfigPropertiesArgs()
+ {
+ }
+ public static new ApplicationSourceConfigPropertiesArgs Empty => new ApplicationSourceConfigPropertiesArgs();
+ }
+}
diff --git a/sdk/dotnet/AppIntegrations/Outputs/ApplicationExternalUrlConfig.cs b/sdk/dotnet/AppIntegrations/Outputs/ApplicationExternalUrlConfig.cs
new file mode 100644
index 0000000000..b1c5c7e900
--- /dev/null
+++ b/sdk/dotnet/AppIntegrations/Outputs/ApplicationExternalUrlConfig.cs
@@ -0,0 +1,29 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.AppIntegrations.Outputs
+{
+
+ [OutputType]
+ public sealed class ApplicationExternalUrlConfig
+ {
+ public readonly string AccessUrl;
+ public readonly ImmutableArray ApprovedOrigins;
+
+ [OutputConstructor]
+ private ApplicationExternalUrlConfig(
+ string accessUrl,
+
+ ImmutableArray approvedOrigins)
+ {
+ AccessUrl = accessUrl;
+ ApprovedOrigins = approvedOrigins;
+ }
+ }
+}
diff --git a/sdk/dotnet/AppIntegrations/Outputs/ApplicationSourceConfigProperties.cs b/sdk/dotnet/AppIntegrations/Outputs/ApplicationSourceConfigProperties.cs
new file mode 100644
index 0000000000..8a53e3e6f0
--- /dev/null
+++ b/sdk/dotnet/AppIntegrations/Outputs/ApplicationSourceConfigProperties.cs
@@ -0,0 +1,27 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.AppIntegrations.Outputs
+{
+
+ ///
+ /// Application source config
+ ///
+ [OutputType]
+ public sealed class ApplicationSourceConfigProperties
+ {
+ public readonly Outputs.ApplicationExternalUrlConfig ExternalUrlConfig;
+
+ [OutputConstructor]
+ private ApplicationSourceConfigProperties(Outputs.ApplicationExternalUrlConfig externalUrlConfig)
+ {
+ ExternalUrlConfig = externalUrlConfig;
+ }
+ }
+}
diff --git a/sdk/dotnet/AppSync/Enums.cs b/sdk/dotnet/AppSync/Enums.cs
index d240ffbbe9..8debb843a0 100644
--- a/sdk/dotnet/AppSync/Enums.cs
+++ b/sdk/dotnet/AppSync/Enums.cs
@@ -7,6 +7,9 @@
namespace Pulumi.AwsNative.AppSync
{
+ ///
+ /// Enables or disables enhanced resolver metrics for specified resolvers. Note that ``MetricsConfig`` won't be used unless the ``resolverLevelMetricsBehavior`` value is set to ``PER_RESOLVER_METRICS``. If the ``resolverLevelMetricsBehavior`` is set to ``FULL_REQUEST_RESOLVER_METRICS`` instead, ``MetricsConfig`` will be ignored. However, you can still set its value.
+ ///
[EnumType]
public readonly struct ResolverMetricsConfig : IEquatable
{
diff --git a/sdk/dotnet/AppSync/GetResolver.cs b/sdk/dotnet/AppSync/GetResolver.cs
index 5dbedd4760..7ca99b4336 100644
--- a/sdk/dotnet/AppSync/GetResolver.cs
+++ b/sdk/dotnet/AppSync/GetResolver.cs
@@ -77,6 +77,9 @@ public sealed class GetResolverResult
/// The maximum number of resolver request inputs that will be sent to a single LAMlong function in a ``BatchInvoke`` operation.
///
public readonly int? MaxBatchSize;
+ ///
+ /// Enables or disables enhanced resolver metrics for specified resolvers. Note that ``MetricsConfig`` won't be used unless the ``resolverLevelMetricsBehavior`` value is set to ``PER_RESOLVER_METRICS``. If the ``resolverLevelMetricsBehavior`` is set to ``FULL_REQUEST_RESOLVER_METRICS`` instead, ``MetricsConfig`` will be ignored. However, you can still set its value.
+ ///
public readonly Pulumi.AwsNative.AppSync.ResolverMetricsConfig? MetricsConfig;
///
/// Functions linked with the pipeline resolver.
diff --git a/sdk/dotnet/AppSync/Resolver.cs b/sdk/dotnet/AppSync/Resolver.cs
index 83e23e9298..8284bb4d6a 100644
--- a/sdk/dotnet/AppSync/Resolver.cs
+++ b/sdk/dotnet/AppSync/Resolver.cs
@@ -99,6 +99,9 @@ public partial class Resolver : global::Pulumi.CustomResource
[Output("maxBatchSize")]
public Output MaxBatchSize { get; private set; } = null!;
+ ///
+ /// Enables or disables enhanced resolver metrics for specified resolvers. Note that ``MetricsConfig`` won't be used unless the ``resolverLevelMetricsBehavior`` value is set to ``PER_RESOLVER_METRICS``. If the ``resolverLevelMetricsBehavior`` is set to ``FULL_REQUEST_RESOLVER_METRICS`` instead, ``MetricsConfig`` will be ignored. However, you can still set its value.
+ ///
[Output("metricsConfig")]
public Output MetricsConfig { get; private set; } = null!;
@@ -255,6 +258,9 @@ public sealed class ResolverArgs : global::Pulumi.ResourceArgs
[Input("maxBatchSize")]
public Input? MaxBatchSize { get; set; }
+ ///
+ /// Enables or disables enhanced resolver metrics for specified resolvers. Note that ``MetricsConfig`` won't be used unless the ``resolverLevelMetricsBehavior`` value is set to ``PER_RESOLVER_METRICS``. If the ``resolverLevelMetricsBehavior`` is set to ``FULL_REQUEST_RESOLVER_METRICS`` instead, ``MetricsConfig`` will be ignored. However, you can still set its value.
+ ///
[Input("metricsConfig")]
public Input? MetricsConfig { get; set; }
diff --git a/sdk/dotnet/Aps/GetScraper.cs b/sdk/dotnet/Aps/GetScraper.cs
new file mode 100644
index 0000000000..28a08bd288
--- /dev/null
+++ b/sdk/dotnet/Aps/GetScraper.cs
@@ -0,0 +1,93 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Aps
+{
+ public static class GetScraper
+ {
+ ///
+ /// Resource Type definition for AWS::APS::Scraper
+ ///
+ public static Task InvokeAsync(GetScraperArgs args, InvokeOptions? options = null)
+ => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:aps:getScraper", args ?? new GetScraperArgs(), options.WithDefaults());
+
+ ///
+ /// Resource Type definition for AWS::APS::Scraper
+ ///
+ public static Output Invoke(GetScraperInvokeArgs args, InvokeOptions? options = null)
+ => global::Pulumi.Deployment.Instance.Invoke("aws-native:aps:getScraper", args ?? new GetScraperInvokeArgs(), options.WithDefaults());
+ }
+
+
+ public sealed class GetScraperArgs : global::Pulumi.InvokeArgs
+ {
+ ///
+ /// Scraper ARN.
+ ///
+ [Input("arn", required: true)]
+ public string Arn { get; set; } = null!;
+
+ public GetScraperArgs()
+ {
+ }
+ public static new GetScraperArgs Empty => new GetScraperArgs();
+ }
+
+ public sealed class GetScraperInvokeArgs : global::Pulumi.InvokeArgs
+ {
+ ///
+ /// Scraper ARN.
+ ///
+ [Input("arn", required: true)]
+ public Input Arn { get; set; } = null!;
+
+ public GetScraperInvokeArgs()
+ {
+ }
+ public static new GetScraperInvokeArgs Empty => new GetScraperInvokeArgs();
+ }
+
+
+ [OutputType]
+ public sealed class GetScraperResult
+ {
+ ///
+ /// Scraper ARN.
+ ///
+ public readonly string? Arn;
+ ///
+ /// IAM role ARN for the scraper.
+ ///
+ public readonly string? RoleArn;
+ ///
+ /// Required to identify a specific scraper.
+ ///
+ public readonly string? ScraperId;
+ ///
+ /// An array of key-value pairs to apply to this resource.
+ ///
+ public readonly ImmutableArray Tags;
+
+ [OutputConstructor]
+ private GetScraperResult(
+ string? arn,
+
+ string? roleArn,
+
+ string? scraperId,
+
+ ImmutableArray tags)
+ {
+ Arn = arn;
+ RoleArn = roleArn;
+ ScraperId = scraperId;
+ Tags = tags;
+ }
+ }
+}
diff --git a/sdk/dotnet/Aps/Inputs/ScraperDestinationAmpConfigurationPropertiesArgs.cs b/sdk/dotnet/Aps/Inputs/ScraperDestinationAmpConfigurationPropertiesArgs.cs
new file mode 100644
index 0000000000..8463146d53
--- /dev/null
+++ b/sdk/dotnet/Aps/Inputs/ScraperDestinationAmpConfigurationPropertiesArgs.cs
@@ -0,0 +1,29 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Aps.Inputs
+{
+
+ ///
+ /// Configuration for Amazon Managed Prometheus metrics destination
+ ///
+ public sealed class ScraperDestinationAmpConfigurationPropertiesArgs : global::Pulumi.ResourceArgs
+ {
+ ///
+ /// ARN of an Amazon Managed Prometheus workspace
+ ///
+ [Input("workspaceArn", required: true)]
+ public Input WorkspaceArn { get; set; } = null!;
+
+ public ScraperDestinationAmpConfigurationPropertiesArgs()
+ {
+ }
+ public static new ScraperDestinationAmpConfigurationPropertiesArgs Empty => new ScraperDestinationAmpConfigurationPropertiesArgs();
+ }
+}
diff --git a/sdk/dotnet/Aps/Inputs/ScraperDestinationArgs.cs b/sdk/dotnet/Aps/Inputs/ScraperDestinationArgs.cs
new file mode 100644
index 0000000000..d608d8d6d9
--- /dev/null
+++ b/sdk/dotnet/Aps/Inputs/ScraperDestinationArgs.cs
@@ -0,0 +1,29 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Aps.Inputs
+{
+
+ ///
+ /// Scraper metrics destination
+ ///
+ public sealed class ScraperDestinationArgs : global::Pulumi.ResourceArgs
+ {
+ ///
+ /// Configuration for Amazon Managed Prometheus metrics destination
+ ///
+ [Input("ampConfiguration")]
+ public Input? AmpConfiguration { get; set; }
+
+ public ScraperDestinationArgs()
+ {
+ }
+ public static new ScraperDestinationArgs Empty => new ScraperDestinationArgs();
+ }
+}
diff --git a/sdk/dotnet/Aps/Inputs/ScraperScrapeConfigurationArgs.cs b/sdk/dotnet/Aps/Inputs/ScraperScrapeConfigurationArgs.cs
new file mode 100644
index 0000000000..333e1c56d3
--- /dev/null
+++ b/sdk/dotnet/Aps/Inputs/ScraperScrapeConfigurationArgs.cs
@@ -0,0 +1,29 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Aps.Inputs
+{
+
+ ///
+ /// Scraper configuration
+ ///
+ public sealed class ScraperScrapeConfigurationArgs : global::Pulumi.ResourceArgs
+ {
+ ///
+ /// Prometheus compatible scrape configuration in base64 encoded blob format
+ ///
+ [Input("configurationBlob")]
+ public Input? ConfigurationBlob { get; set; }
+
+ public ScraperScrapeConfigurationArgs()
+ {
+ }
+ public static new ScraperScrapeConfigurationArgs Empty => new ScraperScrapeConfigurationArgs();
+ }
+}
diff --git a/sdk/dotnet/Aps/Inputs/ScraperSourceArgs.cs b/sdk/dotnet/Aps/Inputs/ScraperSourceArgs.cs
new file mode 100644
index 0000000000..4ba4fc7974
--- /dev/null
+++ b/sdk/dotnet/Aps/Inputs/ScraperSourceArgs.cs
@@ -0,0 +1,29 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Aps.Inputs
+{
+
+ ///
+ /// Scraper metrics source
+ ///
+ public sealed class ScraperSourceArgs : global::Pulumi.ResourceArgs
+ {
+ ///
+ /// Configuration for EKS metrics source
+ ///
+ [Input("eksConfiguration")]
+ public Input? EksConfiguration { get; set; }
+
+ public ScraperSourceArgs()
+ {
+ }
+ public static new ScraperSourceArgs Empty => new ScraperSourceArgs();
+ }
+}
diff --git a/sdk/dotnet/Aps/Inputs/ScraperSourceEksConfigurationPropertiesArgs.cs b/sdk/dotnet/Aps/Inputs/ScraperSourceEksConfigurationPropertiesArgs.cs
new file mode 100644
index 0000000000..219dd47875
--- /dev/null
+++ b/sdk/dotnet/Aps/Inputs/ScraperSourceEksConfigurationPropertiesArgs.cs
@@ -0,0 +1,53 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Aps.Inputs
+{
+
+ ///
+ /// Configuration for EKS metrics source
+ ///
+ public sealed class ScraperSourceEksConfigurationPropertiesArgs : global::Pulumi.ResourceArgs
+ {
+ ///
+ /// ARN of an EKS cluster
+ ///
+ [Input("clusterArn", required: true)]
+ public Input ClusterArn { get; set; } = null!;
+
+ [Input("securityGroupIds")]
+ private InputList? _securityGroupIds;
+
+ ///
+ /// List of security group IDs
+ ///
+ public InputList SecurityGroupIds
+ {
+ get => _securityGroupIds ?? (_securityGroupIds = new InputList());
+ set => _securityGroupIds = value;
+ }
+
+ [Input("subnetIds", required: true)]
+ private InputList? _subnetIds;
+
+ ///
+ /// List of subnet IDs
+ ///
+ public InputList SubnetIds
+ {
+ get => _subnetIds ?? (_subnetIds = new InputList());
+ set => _subnetIds = value;
+ }
+
+ public ScraperSourceEksConfigurationPropertiesArgs()
+ {
+ }
+ public static new ScraperSourceEksConfigurationPropertiesArgs Empty => new ScraperSourceEksConfigurationPropertiesArgs();
+ }
+}
diff --git a/sdk/dotnet/Aps/Outputs/ScraperDestination.cs b/sdk/dotnet/Aps/Outputs/ScraperDestination.cs
new file mode 100644
index 0000000000..93ed54a6e8
--- /dev/null
+++ b/sdk/dotnet/Aps/Outputs/ScraperDestination.cs
@@ -0,0 +1,30 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Aps.Outputs
+{
+
+ ///
+ /// Scraper metrics destination
+ ///
+ [OutputType]
+ public sealed class ScraperDestination
+ {
+ ///
+ /// Configuration for Amazon Managed Prometheus metrics destination
+ ///
+ public readonly Outputs.ScraperDestinationAmpConfigurationProperties? AmpConfiguration;
+
+ [OutputConstructor]
+ private ScraperDestination(Outputs.ScraperDestinationAmpConfigurationProperties? ampConfiguration)
+ {
+ AmpConfiguration = ampConfiguration;
+ }
+ }
+}
diff --git a/sdk/dotnet/Aps/Outputs/ScraperDestinationAmpConfigurationProperties.cs b/sdk/dotnet/Aps/Outputs/ScraperDestinationAmpConfigurationProperties.cs
new file mode 100644
index 0000000000..ae09969ac9
--- /dev/null
+++ b/sdk/dotnet/Aps/Outputs/ScraperDestinationAmpConfigurationProperties.cs
@@ -0,0 +1,30 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Aps.Outputs
+{
+
+ ///
+ /// Configuration for Amazon Managed Prometheus metrics destination
+ ///
+ [OutputType]
+ public sealed class ScraperDestinationAmpConfigurationProperties
+ {
+ ///
+ /// ARN of an Amazon Managed Prometheus workspace
+ ///
+ public readonly string WorkspaceArn;
+
+ [OutputConstructor]
+ private ScraperDestinationAmpConfigurationProperties(string workspaceArn)
+ {
+ WorkspaceArn = workspaceArn;
+ }
+ }
+}
diff --git a/sdk/dotnet/Aps/Outputs/ScraperScrapeConfiguration.cs b/sdk/dotnet/Aps/Outputs/ScraperScrapeConfiguration.cs
new file mode 100644
index 0000000000..ce966a2efa
--- /dev/null
+++ b/sdk/dotnet/Aps/Outputs/ScraperScrapeConfiguration.cs
@@ -0,0 +1,30 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Aps.Outputs
+{
+
+ ///
+ /// Scraper configuration
+ ///
+ [OutputType]
+ public sealed class ScraperScrapeConfiguration
+ {
+ ///
+ /// Prometheus compatible scrape configuration in base64 encoded blob format
+ ///
+ public readonly string? ConfigurationBlob;
+
+ [OutputConstructor]
+ private ScraperScrapeConfiguration(string? configurationBlob)
+ {
+ ConfigurationBlob = configurationBlob;
+ }
+ }
+}
diff --git a/sdk/dotnet/Aps/Outputs/ScraperSource.cs b/sdk/dotnet/Aps/Outputs/ScraperSource.cs
new file mode 100644
index 0000000000..2682eca626
--- /dev/null
+++ b/sdk/dotnet/Aps/Outputs/ScraperSource.cs
@@ -0,0 +1,30 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Aps.Outputs
+{
+
+ ///
+ /// Scraper metrics source
+ ///
+ [OutputType]
+ public sealed class ScraperSource
+ {
+ ///
+ /// Configuration for EKS metrics source
+ ///
+ public readonly Outputs.ScraperSourceEksConfigurationProperties? EksConfiguration;
+
+ [OutputConstructor]
+ private ScraperSource(Outputs.ScraperSourceEksConfigurationProperties? eksConfiguration)
+ {
+ EksConfiguration = eksConfiguration;
+ }
+ }
+}
diff --git a/sdk/dotnet/Aps/Outputs/ScraperSourceEksConfigurationProperties.cs b/sdk/dotnet/Aps/Outputs/ScraperSourceEksConfigurationProperties.cs
new file mode 100644
index 0000000000..c731aea832
--- /dev/null
+++ b/sdk/dotnet/Aps/Outputs/ScraperSourceEksConfigurationProperties.cs
@@ -0,0 +1,45 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Aps.Outputs
+{
+
+ ///
+ /// Configuration for EKS metrics source
+ ///
+ [OutputType]
+ public sealed class ScraperSourceEksConfigurationProperties
+ {
+ ///
+ /// ARN of an EKS cluster
+ ///
+ public readonly string ClusterArn;
+ ///
+ /// List of security group IDs
+ ///
+ public readonly ImmutableArray SecurityGroupIds;
+ ///
+ /// List of subnet IDs
+ ///
+ public readonly ImmutableArray SubnetIds;
+
+ [OutputConstructor]
+ private ScraperSourceEksConfigurationProperties(
+ string clusterArn,
+
+ ImmutableArray securityGroupIds,
+
+ ImmutableArray subnetIds)
+ {
+ ClusterArn = clusterArn;
+ SecurityGroupIds = securityGroupIds;
+ SubnetIds = subnetIds;
+ }
+ }
+}
diff --git a/sdk/dotnet/Aps/Scraper.cs b/sdk/dotnet/Aps/Scraper.cs
new file mode 100644
index 0000000000..cd7ce6e0ac
--- /dev/null
+++ b/sdk/dotnet/Aps/Scraper.cs
@@ -0,0 +1,141 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Aps
+{
+ ///
+ /// Resource Type definition for AWS::APS::Scraper
+ ///
+ [AwsNativeResourceType("aws-native:aps:Scraper")]
+ public partial class Scraper : global::Pulumi.CustomResource
+ {
+ ///
+ /// Scraper alias.
+ ///
+ [Output("alias")]
+ public Output Alias { get; private set; } = null!;
+
+ ///
+ /// Scraper ARN.
+ ///
+ [Output("arn")]
+ public Output Arn { get; private set; } = null!;
+
+ [Output("destination")]
+ public Output Destination { get; private set; } = null!;
+
+ ///
+ /// IAM role ARN for the scraper.
+ ///
+ [Output("roleArn")]
+ public Output RoleArn { get; private set; } = null!;
+
+ [Output("scrapeConfiguration")]
+ public Output ScrapeConfiguration { get; private set; } = null!;
+
+ ///
+ /// Required to identify a specific scraper.
+ ///
+ [Output("scraperId")]
+ public Output ScraperId { get; private set; } = null!;
+
+ [Output("source")]
+ public Output Source { get; private set; } = null!;
+
+ ///
+ /// An array of key-value pairs to apply to this resource.
+ ///
+ [Output("tags")]
+ public Output> Tags { get; private set; } = null!;
+
+
+ ///
+ /// Create a Scraper resource with the given unique name, arguments, and options.
+ ///
+ ///
+ /// The unique name of the resource
+ /// The arguments used to populate this resource's properties
+ /// A bag of options that control this resource's behavior
+ public Scraper(string name, ScraperArgs args, CustomResourceOptions? options = null)
+ : base("aws-native:aps:Scraper", name, args ?? new ScraperArgs(), MakeResourceOptions(options, ""))
+ {
+ }
+
+ private Scraper(string name, Input id, CustomResourceOptions? options = null)
+ : base("aws-native:aps:Scraper", name, null, MakeResourceOptions(options, id))
+ {
+ }
+
+ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id)
+ {
+ var defaultOptions = new CustomResourceOptions
+ {
+ Version = Utilities.Version,
+ ReplaceOnChanges =
+ {
+ "alias",
+ "destination",
+ "scrapeConfiguration",
+ "source",
+ },
+ };
+ var merged = CustomResourceOptions.Merge(defaultOptions, options);
+ // Override the ID if one was specified for consistency with other language SDKs.
+ merged.Id = id ?? merged.Id;
+ return merged;
+ }
+ ///
+ /// Get an existing Scraper resource's state with the given name, ID, and optional extra
+ /// properties used to qualify the lookup.
+ ///
+ ///
+ /// The unique name of the resulting resource.
+ /// The unique provider ID of the resource to lookup.
+ /// A bag of options that control this resource's behavior
+ public static Scraper Get(string name, Input id, CustomResourceOptions? options = null)
+ {
+ return new Scraper(name, id, options);
+ }
+ }
+
+ public sealed class ScraperArgs : global::Pulumi.ResourceArgs
+ {
+ ///
+ /// Scraper alias.
+ ///
+ [Input("alias")]
+ public Input? Alias { get; set; }
+
+ [Input("destination", required: true)]
+ public Input Destination { get; set; } = null!;
+
+ [Input("scrapeConfiguration", required: true)]
+ public Input ScrapeConfiguration { get; set; } = null!;
+
+ [Input("source", required: true)]
+ public Input Source { get; set; } = null!;
+
+ [Input("tags")]
+ private InputList? _tags;
+
+ ///
+ /// An array of key-value pairs to apply to this resource.
+ ///
+ public InputList Tags
+ {
+ get => _tags ?? (_tags = new InputList());
+ set => _tags = value;
+ }
+
+ public ScraperArgs()
+ {
+ }
+ public static new ScraperArgs Empty => new ScraperArgs();
+ }
+}
diff --git a/sdk/dotnet/Bedrock/Agent.cs b/sdk/dotnet/Bedrock/Agent.cs
new file mode 100644
index 0000000000..be40a0f47a
--- /dev/null
+++ b/sdk/dotnet/Bedrock/Agent.cs
@@ -0,0 +1,280 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Bedrock
+{
+ ///
+ /// Definition of AWS::Bedrock::Agent Resource Type
+ ///
+ [AwsNativeResourceType("aws-native:bedrock:Agent")]
+ public partial class Agent : global::Pulumi.CustomResource
+ {
+ ///
+ /// List of ActionGroups
+ ///
+ [Output("actionGroups")]
+ public Output> ActionGroups { get; private set; } = null!;
+
+ ///
+ /// Arn representation of the Agent.
+ ///
+ [Output("agentArn")]
+ public Output AgentArn { get; private set; } = null!;
+
+ ///
+ /// Identifier for a resource.
+ ///
+ [Output("agentId")]
+ public Output AgentId { get; private set; } = null!;
+
+ ///
+ /// Name for a resource.
+ ///
+ [Output("agentName")]
+ public Output AgentName { get; private set; } = null!;
+
+ ///
+ /// ARN of a IAM role.
+ ///
+ [Output("agentResourceRoleArn")]
+ public Output AgentResourceRoleArn { get; private set; } = null!;
+
+ [Output("agentStatus")]
+ public Output AgentStatus { get; private set; } = null!;
+
+ ///
+ /// Draft Agent Version.
+ ///
+ [Output("agentVersion")]
+ public Output AgentVersion { get; private set; } = null!;
+
+ ///
+ /// Specifies whether to automatically prepare after creating or updating the agent.
+ ///
+ [Output("autoPrepare")]
+ public Output AutoPrepare { get; private set; } = null!;
+
+ ///
+ /// Time Stamp.
+ ///
+ [Output("createdAt")]
+ public Output CreatedAt { get; private set; } = null!;
+
+ ///
+ /// A KMS key ARN
+ ///
+ [Output("customerEncryptionKeyArn")]
+ public Output CustomerEncryptionKeyArn { get; private set; } = null!;
+
+ ///
+ /// Description of the Resource.
+ ///
+ [Output("description")]
+ public Output Description { get; private set; } = null!;
+
+ ///
+ /// Failure Reasons for Error.
+ ///
+ [Output("failureReasons")]
+ public Output> FailureReasons { get; private set; } = null!;
+
+ ///
+ /// ARN or name of a Bedrock model.
+ ///
+ [Output("foundationModel")]
+ public Output FoundationModel { get; private set; } = null!;
+
+ ///
+ /// Max Session Time.
+ ///
+ [Output("idleSessionTtlInSeconds")]
+ public Output IdleSessionTtlInSeconds { get; private set; } = null!;
+
+ ///
+ /// Instruction for the agent.
+ ///
+ [Output("instruction")]
+ public Output Instruction { get; private set; } = null!;
+
+ ///
+ /// List of Agent Knowledge Bases
+ ///
+ [Output("knowledgeBases")]
+ public Output> KnowledgeBases { get; private set; } = null!;
+
+ ///
+ /// Time Stamp.
+ ///
+ [Output("preparedAt")]
+ public Output PreparedAt { get; private set; } = null!;
+
+ [Output("promptOverrideConfiguration")]
+ public Output PromptOverrideConfiguration { get; private set; } = null!;
+
+ ///
+ /// The recommended actions users can take to resolve an error in failureReasons.
+ ///
+ [Output("recommendedActions")]
+ public Output> RecommendedActions { get; private set; } = null!;
+
+ ///
+ /// Specifies whether to allow deleting agent while it is in use.
+ ///
+ [Output("skipResourceInUseCheckOnDelete")]
+ public Output SkipResourceInUseCheckOnDelete { get; private set; } = null!;
+
+ [Output("tags")]
+ public Output?> Tags { get; private set; } = null!;
+
+ ///
+ /// Time Stamp.
+ ///
+ [Output("updatedAt")]
+ public Output UpdatedAt { get; private set; } = null!;
+
+
+ ///
+ /// Create a Agent resource with the given unique name, arguments, and options.
+ ///
+ ///
+ /// The unique name of the resource
+ /// The arguments used to populate this resource's properties
+ /// A bag of options that control this resource's behavior
+ public Agent(string name, AgentArgs? args = null, CustomResourceOptions? options = null)
+ : base("aws-native:bedrock:Agent", name, args ?? new AgentArgs(), MakeResourceOptions(options, ""))
+ {
+ }
+
+ private Agent(string name, Input id, CustomResourceOptions? options = null)
+ : base("aws-native:bedrock:Agent", name, null, MakeResourceOptions(options, id))
+ {
+ }
+
+ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id)
+ {
+ var defaultOptions = new CustomResourceOptions
+ {
+ Version = Utilities.Version,
+ };
+ var merged = CustomResourceOptions.Merge(defaultOptions, options);
+ // Override the ID if one was specified for consistency with other language SDKs.
+ merged.Id = id ?? merged.Id;
+ return merged;
+ }
+ ///
+ /// Get an existing Agent resource's state with the given name, ID, and optional extra
+ /// properties used to qualify the lookup.
+ ///
+ ///
+ /// The unique name of the resulting resource.
+ /// The unique provider ID of the resource to lookup.
+ /// A bag of options that control this resource's behavior
+ public static Agent Get(string name, Input id, CustomResourceOptions? options = null)
+ {
+ return new Agent(name, id, options);
+ }
+ }
+
+ public sealed class AgentArgs : global::Pulumi.ResourceArgs
+ {
+ [Input("actionGroups")]
+ private InputList? _actionGroups;
+
+ ///
+ /// List of ActionGroups
+ ///
+ public InputList ActionGroups
+ {
+ get => _actionGroups ?? (_actionGroups = new InputList());
+ set => _actionGroups = value;
+ }
+
+ ///
+ /// Name for a resource.
+ ///
+ [Input("agentName")]
+ public Input? AgentName { get; set; }
+
+ ///
+ /// ARN of a IAM role.
+ ///
+ [Input("agentResourceRoleArn")]
+ public Input? AgentResourceRoleArn { get; set; }
+
+ ///
+ /// Specifies whether to automatically prepare after creating or updating the agent.
+ ///
+ [Input("autoPrepare")]
+ public Input? AutoPrepare { get; set; }
+
+ ///
+ /// A KMS key ARN
+ ///
+ [Input("customerEncryptionKeyArn")]
+ public Input? CustomerEncryptionKeyArn { get; set; }
+
+ ///
+ /// Description of the Resource.
+ ///
+ [Input("description")]
+ public Input? Description { get; set; }
+
+ ///
+ /// ARN or name of a Bedrock model.
+ ///
+ [Input("foundationModel")]
+ public Input? FoundationModel { get; set; }
+
+ ///
+ /// Max Session Time.
+ ///
+ [Input("idleSessionTtlInSeconds")]
+ public Input? IdleSessionTtlInSeconds { get; set; }
+
+ ///
+ /// Instruction for the agent.
+ ///
+ [Input("instruction")]
+ public Input? Instruction { get; set; }
+
+ [Input("knowledgeBases")]
+ private InputList? _knowledgeBases;
+
+ ///
+ /// List of Agent Knowledge Bases
+ ///
+ public InputList KnowledgeBases
+ {
+ get => _knowledgeBases ?? (_knowledgeBases = new InputList());
+ set => _knowledgeBases = value;
+ }
+
+ [Input("promptOverrideConfiguration")]
+ public Input? PromptOverrideConfiguration { get; set; }
+
+ ///
+ /// Specifies whether to allow deleting agent while it is in use.
+ ///
+ [Input("skipResourceInUseCheckOnDelete")]
+ public Input? SkipResourceInUseCheckOnDelete { get; set; }
+
+ [Input("tags")]
+ private InputMap? _tags;
+ public InputMap Tags
+ {
+ get => _tags ?? (_tags = new InputMap());
+ set => _tags = value;
+ }
+
+ public AgentArgs()
+ {
+ }
+ public static new AgentArgs Empty => new AgentArgs();
+ }
+}
diff --git a/sdk/dotnet/Bedrock/AgentAlias.cs b/sdk/dotnet/Bedrock/AgentAlias.cs
new file mode 100644
index 0000000000..6baa3b76ae
--- /dev/null
+++ b/sdk/dotnet/Bedrock/AgentAlias.cs
@@ -0,0 +1,170 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Bedrock
+{
+ ///
+ /// Definition of AWS::Bedrock::AgentAlias Resource Type
+ ///
+ [AwsNativeResourceType("aws-native:bedrock:AgentAlias")]
+ public partial class AgentAlias : global::Pulumi.CustomResource
+ {
+ ///
+ /// Arn representation of the Agent Alias.
+ ///
+ [Output("agentAliasArn")]
+ public Output AgentAliasArn { get; private set; } = null!;
+
+ ///
+ /// The list of history events for an alias for an Agent.
+ ///
+ [Output("agentAliasHistoryEvents")]
+ public Output> AgentAliasHistoryEvents { get; private set; } = null!;
+
+ ///
+ /// Id for an Agent Alias generated at the server side.
+ ///
+ [Output("agentAliasId")]
+ public Output AgentAliasId { get; private set; } = null!;
+
+ ///
+ /// Name for a resource.
+ ///
+ [Output("agentAliasName")]
+ public Output AgentAliasName { get; private set; } = null!;
+
+ [Output("agentAliasStatus")]
+ public Output AgentAliasStatus { get; private set; } = null!;
+
+ ///
+ /// Identifier for a resource.
+ ///
+ [Output("agentId")]
+ public Output AgentId { get; private set; } = null!;
+
+ ///
+ /// Time Stamp.
+ ///
+ [Output("createdAt")]
+ public Output CreatedAt { get; private set; } = null!;
+
+ ///
+ /// Description of the Resource.
+ ///
+ [Output("description")]
+ public Output Description { get; private set; } = null!;
+
+ ///
+ /// Routing configuration for an Agent alias.
+ ///
+ [Output("routingConfiguration")]
+ public Output> RoutingConfiguration { get; private set; } = null!;
+
+ [Output("tags")]
+ public Output?> Tags { get; private set; } = null!;
+
+ ///
+ /// Time Stamp.
+ ///
+ [Output("updatedAt")]
+ public Output UpdatedAt { get; private set; } = null!;
+
+
+ ///
+ /// Create a AgentAlias resource with the given unique name, arguments, and options.
+ ///
+ ///
+ /// The unique name of the resource
+ /// The arguments used to populate this resource's properties
+ /// A bag of options that control this resource's behavior
+ public AgentAlias(string name, AgentAliasArgs args, CustomResourceOptions? options = null)
+ : base("aws-native:bedrock:AgentAlias", name, args ?? new AgentAliasArgs(), MakeResourceOptions(options, ""))
+ {
+ }
+
+ private AgentAlias(string name, Input id, CustomResourceOptions? options = null)
+ : base("aws-native:bedrock:AgentAlias", name, null, MakeResourceOptions(options, id))
+ {
+ }
+
+ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id)
+ {
+ var defaultOptions = new CustomResourceOptions
+ {
+ Version = Utilities.Version,
+ ReplaceOnChanges =
+ {
+ "agentId",
+ },
+ };
+ var merged = CustomResourceOptions.Merge(defaultOptions, options);
+ // Override the ID if one was specified for consistency with other language SDKs.
+ merged.Id = id ?? merged.Id;
+ return merged;
+ }
+ ///
+ /// Get an existing AgentAlias resource's state with the given name, ID, and optional extra
+ /// properties used to qualify the lookup.
+ ///
+ ///
+ /// The unique name of the resulting resource.
+ /// The unique provider ID of the resource to lookup.
+ /// A bag of options that control this resource's behavior
+ public static AgentAlias Get(string name, Input id, CustomResourceOptions? options = null)
+ {
+ return new AgentAlias(name, id, options);
+ }
+ }
+
+ public sealed class AgentAliasArgs : global::Pulumi.ResourceArgs
+ {
+ ///
+ /// Name for a resource.
+ ///
+ [Input("agentAliasName")]
+ public Input? AgentAliasName { get; set; }
+
+ ///
+ /// Identifier for a resource.
+ ///
+ [Input("agentId", required: true)]
+ public Input AgentId { get; set; } = null!;
+
+ ///
+ /// Description of the Resource.
+ ///
+ [Input("description")]
+ public Input? Description { get; set; }
+
+ [Input("routingConfiguration")]
+ private InputList? _routingConfiguration;
+
+ ///
+ /// Routing configuration for an Agent alias.
+ ///
+ public InputList RoutingConfiguration
+ {
+ get => _routingConfiguration ?? (_routingConfiguration = new InputList());
+ set => _routingConfiguration = value;
+ }
+
+ [Input("tags")]
+ private InputMap? _tags;
+ public InputMap Tags
+ {
+ get => _tags ?? (_tags = new InputMap());
+ set => _tags = value;
+ }
+
+ public AgentAliasArgs()
+ {
+ }
+ public static new AgentAliasArgs Empty => new AgentAliasArgs();
+ }
+}
diff --git a/sdk/dotnet/Bedrock/Enums.cs b/sdk/dotnet/Bedrock/Enums.cs
new file mode 100644
index 0000000000..12f744bfed
--- /dev/null
+++ b/sdk/dotnet/Bedrock/Enums.cs
@@ -0,0 +1,267 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.ComponentModel;
+using Pulumi;
+
+namespace Pulumi.AwsNative.Bedrock
+{
+ ///
+ /// Action Group Signature for a BuiltIn Action
+ ///
+ [EnumType]
+ public readonly struct AgentActionGroupSignature : IEquatable
+ {
+ private readonly string _value;
+
+ private AgentActionGroupSignature(string value)
+ {
+ _value = value ?? throw new ArgumentNullException(nameof(value));
+ }
+
+ public static AgentActionGroupSignature AmazonUserInput { get; } = new AgentActionGroupSignature("AMAZON.UserInput");
+
+ public static bool operator ==(AgentActionGroupSignature left, AgentActionGroupSignature right) => left.Equals(right);
+ public static bool operator !=(AgentActionGroupSignature left, AgentActionGroupSignature right) => !left.Equals(right);
+
+ public static explicit operator string(AgentActionGroupSignature value) => value._value;
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override bool Equals(object? obj) => obj is AgentActionGroupSignature other && Equals(other);
+ public bool Equals(AgentActionGroupSignature other) => string.Equals(_value, other._value, StringComparison.Ordinal);
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override int GetHashCode() => _value?.GetHashCode() ?? 0;
+
+ public override string ToString() => _value;
+ }
+
+ ///
+ /// State of the action group
+ ///
+ [EnumType]
+ public readonly struct AgentActionGroupState : IEquatable
+ {
+ private readonly string _value;
+
+ private AgentActionGroupState(string value)
+ {
+ _value = value ?? throw new ArgumentNullException(nameof(value));
+ }
+
+ public static AgentActionGroupState Enabled { get; } = new AgentActionGroupState("ENABLED");
+ public static AgentActionGroupState Disabled { get; } = new AgentActionGroupState("DISABLED");
+
+ public static bool operator ==(AgentActionGroupState left, AgentActionGroupState right) => left.Equals(right);
+ public static bool operator !=(AgentActionGroupState left, AgentActionGroupState right) => !left.Equals(right);
+
+ public static explicit operator string(AgentActionGroupState value) => value._value;
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override bool Equals(object? obj) => obj is AgentActionGroupState other && Equals(other);
+ public bool Equals(AgentActionGroupState other) => string.Equals(_value, other._value, StringComparison.Ordinal);
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override int GetHashCode() => _value?.GetHashCode() ?? 0;
+
+ public override string ToString() => _value;
+ }
+
+ ///
+ /// The statuses an Agent Alias can be in.
+ ///
+ [EnumType]
+ public readonly struct AgentAliasStatus : IEquatable
+ {
+ private readonly string _value;
+
+ private AgentAliasStatus(string value)
+ {
+ _value = value ?? throw new ArgumentNullException(nameof(value));
+ }
+
+ public static AgentAliasStatus Creating { get; } = new AgentAliasStatus("CREATING");
+ public static AgentAliasStatus Prepared { get; } = new AgentAliasStatus("PREPARED");
+ public static AgentAliasStatus Failed { get; } = new AgentAliasStatus("FAILED");
+ public static AgentAliasStatus Updating { get; } = new AgentAliasStatus("UPDATING");
+ public static AgentAliasStatus Deleting { get; } = new AgentAliasStatus("DELETING");
+
+ public static bool operator ==(AgentAliasStatus left, AgentAliasStatus right) => left.Equals(right);
+ public static bool operator !=(AgentAliasStatus left, AgentAliasStatus right) => !left.Equals(right);
+
+ public static explicit operator string(AgentAliasStatus value) => value._value;
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override bool Equals(object? obj) => obj is AgentAliasStatus other && Equals(other);
+ public bool Equals(AgentAliasStatus other) => string.Equals(_value, other._value, StringComparison.Ordinal);
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override int GetHashCode() => _value?.GetHashCode() ?? 0;
+
+ public override string ToString() => _value;
+ }
+
+ ///
+ /// Creation Mode for Prompt Configuration.
+ ///
+ [EnumType]
+ public readonly struct AgentCreationMode : IEquatable
+ {
+ private readonly string _value;
+
+ private AgentCreationMode(string value)
+ {
+ _value = value ?? throw new ArgumentNullException(nameof(value));
+ }
+
+ public static AgentCreationMode Default { get; } = new AgentCreationMode("DEFAULT");
+ public static AgentCreationMode Overridden { get; } = new AgentCreationMode("OVERRIDDEN");
+
+ public static bool operator ==(AgentCreationMode left, AgentCreationMode right) => left.Equals(right);
+ public static bool operator !=(AgentCreationMode left, AgentCreationMode right) => !left.Equals(right);
+
+ public static explicit operator string(AgentCreationMode value) => value._value;
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override bool Equals(object? obj) => obj is AgentCreationMode other && Equals(other);
+ public bool Equals(AgentCreationMode other) => string.Equals(_value, other._value, StringComparison.Ordinal);
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override int GetHashCode() => _value?.GetHashCode() ?? 0;
+
+ public override string ToString() => _value;
+ }
+
+ ///
+ /// State of the knowledge base; whether it is enabled or disabled
+ ///
+ [EnumType]
+ public readonly struct AgentKnowledgeBaseState : IEquatable
+ {
+ private readonly string _value;
+
+ private AgentKnowledgeBaseState(string value)
+ {
+ _value = value ?? throw new ArgumentNullException(nameof(value));
+ }
+
+ public static AgentKnowledgeBaseState Enabled { get; } = new AgentKnowledgeBaseState("ENABLED");
+ public static AgentKnowledgeBaseState Disabled { get; } = new AgentKnowledgeBaseState("DISABLED");
+
+ public static bool operator ==(AgentKnowledgeBaseState left, AgentKnowledgeBaseState right) => left.Equals(right);
+ public static bool operator !=(AgentKnowledgeBaseState left, AgentKnowledgeBaseState right) => !left.Equals(right);
+
+ public static explicit operator string(AgentKnowledgeBaseState value) => value._value;
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override bool Equals(object? obj) => obj is AgentKnowledgeBaseState other && Equals(other);
+ public bool Equals(AgentKnowledgeBaseState other) => string.Equals(_value, other._value, StringComparison.Ordinal);
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override int GetHashCode() => _value?.GetHashCode() ?? 0;
+
+ public override string ToString() => _value;
+ }
+
+ ///
+ /// Prompt State.
+ ///
+ [EnumType]
+ public readonly struct AgentPromptState : IEquatable
+ {
+ private readonly string _value;
+
+ private AgentPromptState(string value)
+ {
+ _value = value ?? throw new ArgumentNullException(nameof(value));
+ }
+
+ public static AgentPromptState Enabled { get; } = new AgentPromptState("ENABLED");
+ public static AgentPromptState Disabled { get; } = new AgentPromptState("DISABLED");
+
+ public static bool operator ==(AgentPromptState left, AgentPromptState right) => left.Equals(right);
+ public static bool operator !=(AgentPromptState left, AgentPromptState right) => !left.Equals(right);
+
+ public static explicit operator string(AgentPromptState value) => value._value;
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override bool Equals(object? obj) => obj is AgentPromptState other && Equals(other);
+ public bool Equals(AgentPromptState other) => string.Equals(_value, other._value, StringComparison.Ordinal);
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override int GetHashCode() => _value?.GetHashCode() ?? 0;
+
+ public override string ToString() => _value;
+ }
+
+ ///
+ /// Prompt Type.
+ ///
+ [EnumType]
+ public readonly struct AgentPromptType : IEquatable
+ {
+ private readonly string _value;
+
+ private AgentPromptType(string value)
+ {
+ _value = value ?? throw new ArgumentNullException(nameof(value));
+ }
+
+ public static AgentPromptType PreProcessing { get; } = new AgentPromptType("PRE_PROCESSING");
+ public static AgentPromptType Orchestration { get; } = new AgentPromptType("ORCHESTRATION");
+ public static AgentPromptType PostProcessing { get; } = new AgentPromptType("POST_PROCESSING");
+ public static AgentPromptType KnowledgeBaseResponseGeneration { get; } = new AgentPromptType("KNOWLEDGE_BASE_RESPONSE_GENERATION");
+
+ public static bool operator ==(AgentPromptType left, AgentPromptType right) => left.Equals(right);
+ public static bool operator !=(AgentPromptType left, AgentPromptType right) => !left.Equals(right);
+
+ public static explicit operator string(AgentPromptType value) => value._value;
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override bool Equals(object? obj) => obj is AgentPromptType other && Equals(other);
+ public bool Equals(AgentPromptType other) => string.Equals(_value, other._value, StringComparison.Ordinal);
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override int GetHashCode() => _value?.GetHashCode() ?? 0;
+
+ public override string ToString() => _value;
+ }
+
+ ///
+ /// Schema Type for Action APIs.
+ ///
+ [EnumType]
+ public readonly struct AgentStatus : IEquatable
+ {
+ private readonly string _value;
+
+ private AgentStatus(string value)
+ {
+ _value = value ?? throw new ArgumentNullException(nameof(value));
+ }
+
+ public static AgentStatus Creating { get; } = new AgentStatus("CREATING");
+ public static AgentStatus Preparing { get; } = new AgentStatus("PREPARING");
+ public static AgentStatus Prepared { get; } = new AgentStatus("PREPARED");
+ public static AgentStatus NotPrepared { get; } = new AgentStatus("NOT_PREPARED");
+ public static AgentStatus Deleting { get; } = new AgentStatus("DELETING");
+ public static AgentStatus Failed { get; } = new AgentStatus("FAILED");
+ public static AgentStatus Versioning { get; } = new AgentStatus("VERSIONING");
+ public static AgentStatus Updating { get; } = new AgentStatus("UPDATING");
+
+ public static bool operator ==(AgentStatus left, AgentStatus right) => left.Equals(right);
+ public static bool operator !=(AgentStatus left, AgentStatus right) => !left.Equals(right);
+
+ public static explicit operator string(AgentStatus value) => value._value;
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override bool Equals(object? obj) => obj is AgentStatus other && Equals(other);
+ public bool Equals(AgentStatus other) => string.Equals(_value, other._value, StringComparison.Ordinal);
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override int GetHashCode() => _value?.GetHashCode() ?? 0;
+
+ public override string ToString() => _value;
+ }
+}
diff --git a/sdk/dotnet/Bedrock/GetAgent.cs b/sdk/dotnet/Bedrock/GetAgent.cs
new file mode 100644
index 0000000000..b6d378eab7
--- /dev/null
+++ b/sdk/dotnet/Bedrock/GetAgent.cs
@@ -0,0 +1,196 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Bedrock
+{
+ public static class GetAgent
+ {
+ ///
+ /// Definition of AWS::Bedrock::Agent Resource Type
+ ///
+ public static Task InvokeAsync(GetAgentArgs args, InvokeOptions? options = null)
+ => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:bedrock:getAgent", args ?? new GetAgentArgs(), options.WithDefaults());
+
+ ///
+ /// Definition of AWS::Bedrock::Agent Resource Type
+ ///
+ public static Output Invoke(GetAgentInvokeArgs args, InvokeOptions? options = null)
+ => global::Pulumi.Deployment.Instance.Invoke("aws-native:bedrock:getAgent", args ?? new GetAgentInvokeArgs(), options.WithDefaults());
+ }
+
+
+ public sealed class GetAgentArgs : global::Pulumi.InvokeArgs
+ {
+ ///
+ /// Identifier for a resource.
+ ///
+ [Input("agentId", required: true)]
+ public string AgentId { get; set; } = null!;
+
+ public GetAgentArgs()
+ {
+ }
+ public static new GetAgentArgs Empty => new GetAgentArgs();
+ }
+
+ public sealed class GetAgentInvokeArgs : global::Pulumi.InvokeArgs
+ {
+ ///
+ /// Identifier for a resource.
+ ///
+ [Input("agentId", required: true)]
+ public Input AgentId { get; set; } = null!;
+
+ public GetAgentInvokeArgs()
+ {
+ }
+ public static new GetAgentInvokeArgs Empty => new GetAgentInvokeArgs();
+ }
+
+
+ [OutputType]
+ public sealed class GetAgentResult
+ {
+ ///
+ /// List of ActionGroups
+ ///
+ public readonly ImmutableArray ActionGroups;
+ ///
+ /// Arn representation of the Agent.
+ ///
+ public readonly string? AgentArn;
+ ///
+ /// Identifier for a resource.
+ ///
+ public readonly string? AgentId;
+ ///
+ /// Name for a resource.
+ ///
+ public readonly string? AgentName;
+ ///
+ /// ARN of a IAM role.
+ ///
+ public readonly string? AgentResourceRoleArn;
+ public readonly Pulumi.AwsNative.Bedrock.AgentStatus? AgentStatus;
+ ///
+ /// Draft Agent Version.
+ ///
+ public readonly string? AgentVersion;
+ ///
+ /// Time Stamp.
+ ///
+ public readonly string? CreatedAt;
+ ///
+ /// A KMS key ARN
+ ///
+ public readonly string? CustomerEncryptionKeyArn;
+ ///
+ /// Description of the Resource.
+ ///
+ public readonly string? Description;
+ ///
+ /// Failure Reasons for Error.
+ ///
+ public readonly ImmutableArray FailureReasons;
+ ///
+ /// ARN or name of a Bedrock model.
+ ///
+ public readonly string? FoundationModel;
+ ///
+ /// Max Session Time.
+ ///
+ public readonly double? IdleSessionTtlInSeconds;
+ ///
+ /// Instruction for the agent.
+ ///
+ public readonly string? Instruction;
+ ///
+ /// List of Agent Knowledge Bases
+ ///
+ public readonly ImmutableArray KnowledgeBases;
+ ///
+ /// Time Stamp.
+ ///
+ public readonly string? PreparedAt;
+ public readonly Outputs.AgentPromptOverrideConfiguration? PromptOverrideConfiguration;
+ ///
+ /// The recommended actions users can take to resolve an error in failureReasons.
+ ///
+ public readonly ImmutableArray RecommendedActions;
+ public readonly ImmutableDictionary? Tags;
+ ///
+ /// Time Stamp.
+ ///
+ public readonly string? UpdatedAt;
+
+ [OutputConstructor]
+ private GetAgentResult(
+ ImmutableArray actionGroups,
+
+ string? agentArn,
+
+ string? agentId,
+
+ string? agentName,
+
+ string? agentResourceRoleArn,
+
+ Pulumi.AwsNative.Bedrock.AgentStatus? agentStatus,
+
+ string? agentVersion,
+
+ string? createdAt,
+
+ string? customerEncryptionKeyArn,
+
+ string? description,
+
+ ImmutableArray failureReasons,
+
+ string? foundationModel,
+
+ double? idleSessionTtlInSeconds,
+
+ string? instruction,
+
+ ImmutableArray knowledgeBases,
+
+ string? preparedAt,
+
+ Outputs.AgentPromptOverrideConfiguration? promptOverrideConfiguration,
+
+ ImmutableArray recommendedActions,
+
+ ImmutableDictionary? tags,
+
+ string? updatedAt)
+ {
+ ActionGroups = actionGroups;
+ AgentArn = agentArn;
+ AgentId = agentId;
+ AgentName = agentName;
+ AgentResourceRoleArn = agentResourceRoleArn;
+ AgentStatus = agentStatus;
+ AgentVersion = agentVersion;
+ CreatedAt = createdAt;
+ CustomerEncryptionKeyArn = customerEncryptionKeyArn;
+ Description = description;
+ FailureReasons = failureReasons;
+ FoundationModel = foundationModel;
+ IdleSessionTtlInSeconds = idleSessionTtlInSeconds;
+ Instruction = instruction;
+ KnowledgeBases = knowledgeBases;
+ PreparedAt = preparedAt;
+ PromptOverrideConfiguration = promptOverrideConfiguration;
+ RecommendedActions = recommendedActions;
+ Tags = tags;
+ UpdatedAt = updatedAt;
+ }
+ }
+}
diff --git a/sdk/dotnet/Bedrock/GetAgentAlias.cs b/sdk/dotnet/Bedrock/GetAgentAlias.cs
new file mode 100644
index 0000000000..c1a2177d48
--- /dev/null
+++ b/sdk/dotnet/Bedrock/GetAgentAlias.cs
@@ -0,0 +1,141 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Bedrock
+{
+ public static class GetAgentAlias
+ {
+ ///
+ /// Definition of AWS::Bedrock::AgentAlias Resource Type
+ ///
+ public static Task InvokeAsync(GetAgentAliasArgs args, InvokeOptions? options = null)
+ => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:bedrock:getAgentAlias", args ?? new GetAgentAliasArgs(), options.WithDefaults());
+
+ ///
+ /// Definition of AWS::Bedrock::AgentAlias Resource Type
+ ///
+ public static Output Invoke(GetAgentAliasInvokeArgs args, InvokeOptions? options = null)
+ => global::Pulumi.Deployment.Instance.Invoke("aws-native:bedrock:getAgentAlias", args ?? new GetAgentAliasInvokeArgs(), options.WithDefaults());
+ }
+
+
+ public sealed class GetAgentAliasArgs : global::Pulumi.InvokeArgs
+ {
+ ///
+ /// Id for an Agent Alias generated at the server side.
+ ///
+ [Input("agentAliasId", required: true)]
+ public string AgentAliasId { get; set; } = null!;
+
+ ///
+ /// Identifier for a resource.
+ ///
+ [Input("agentId", required: true)]
+ public string AgentId { get; set; } = null!;
+
+ public GetAgentAliasArgs()
+ {
+ }
+ public static new GetAgentAliasArgs Empty => new GetAgentAliasArgs();
+ }
+
+ public sealed class GetAgentAliasInvokeArgs : global::Pulumi.InvokeArgs
+ {
+ ///
+ /// Id for an Agent Alias generated at the server side.
+ ///
+ [Input("agentAliasId", required: true)]
+ public Input AgentAliasId { get; set; } = null!;
+
+ ///
+ /// Identifier for a resource.
+ ///
+ [Input("agentId", required: true)]
+ public Input AgentId { get; set; } = null!;
+
+ public GetAgentAliasInvokeArgs()
+ {
+ }
+ public static new GetAgentAliasInvokeArgs Empty => new GetAgentAliasInvokeArgs();
+ }
+
+
+ [OutputType]
+ public sealed class GetAgentAliasResult
+ {
+ ///
+ /// Arn representation of the Agent Alias.
+ ///
+ public readonly string? AgentAliasArn;
+ ///
+ /// The list of history events for an alias for an Agent.
+ ///
+ public readonly ImmutableArray AgentAliasHistoryEvents;
+ ///
+ /// Id for an Agent Alias generated at the server side.
+ ///
+ public readonly string? AgentAliasId;
+ ///
+ /// Name for a resource.
+ ///
+ public readonly string? AgentAliasName;
+ public readonly Pulumi.AwsNative.Bedrock.AgentAliasStatus? AgentAliasStatus;
+ ///
+ /// Time Stamp.
+ ///
+ public readonly string? CreatedAt;
+ ///
+ /// Description of the Resource.
+ ///
+ public readonly string? Description;
+ ///
+ /// Routing configuration for an Agent alias.
+ ///
+ public readonly ImmutableArray RoutingConfiguration;
+ public readonly ImmutableDictionary? Tags;
+ ///
+ /// Time Stamp.
+ ///
+ public readonly string? UpdatedAt;
+
+ [OutputConstructor]
+ private GetAgentAliasResult(
+ string? agentAliasArn,
+
+ ImmutableArray agentAliasHistoryEvents,
+
+ string? agentAliasId,
+
+ string? agentAliasName,
+
+ Pulumi.AwsNative.Bedrock.AgentAliasStatus? agentAliasStatus,
+
+ string? createdAt,
+
+ string? description,
+
+ ImmutableArray routingConfiguration,
+
+ ImmutableDictionary? tags,
+
+ string? updatedAt)
+ {
+ AgentAliasArn = agentAliasArn;
+ AgentAliasHistoryEvents = agentAliasHistoryEvents;
+ AgentAliasId = agentAliasId;
+ AgentAliasName = agentAliasName;
+ AgentAliasStatus = agentAliasStatus;
+ CreatedAt = createdAt;
+ Description = description;
+ RoutingConfiguration = routingConfiguration;
+ Tags = tags;
+ UpdatedAt = updatedAt;
+ }
+ }
+}
diff --git a/sdk/dotnet/Bedrock/Inputs/AgentActionGroupArgs.cs b/sdk/dotnet/Bedrock/Inputs/AgentActionGroupArgs.cs
new file mode 100644
index 0000000000..f1988d951a
--- /dev/null
+++ b/sdk/dotnet/Bedrock/Inputs/AgentActionGroupArgs.cs
@@ -0,0 +1,53 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Bedrock.Inputs
+{
+
+ ///
+ /// Contains the information of an Agent Action Group
+ ///
+ public sealed class AgentActionGroupArgs : global::Pulumi.ResourceArgs
+ {
+ [Input("actionGroupExecutor")]
+ public Input? ActionGroupExecutor { get; set; }
+
+ ///
+ /// Name of the action group
+ ///
+ [Input("actionGroupName", required: true)]
+ public Input ActionGroupName { get; set; } = null!;
+
+ [Input("actionGroupState")]
+ public Input? ActionGroupState { get; set; }
+
+ [Input("apiSchema")]
+ public InputUnion? ApiSchema { get; set; }
+
+ ///
+ /// Description of action group
+ ///
+ [Input("description")]
+ public Input? Description { get; set; }
+
+ [Input("parentActionGroupSignature")]
+ public Input? ParentActionGroupSignature { get; set; }
+
+ ///
+ /// Specifies whether to allow deleting action group while it is in use.
+ ///
+ [Input("skipResourceInUseCheckOnDelete")]
+ public Input? SkipResourceInUseCheckOnDelete { get; set; }
+
+ public AgentActionGroupArgs()
+ {
+ }
+ public static new AgentActionGroupArgs Empty => new AgentActionGroupArgs();
+ }
+}
diff --git a/sdk/dotnet/Bedrock/Inputs/AgentActionGroupExecutorArgs.cs b/sdk/dotnet/Bedrock/Inputs/AgentActionGroupExecutorArgs.cs
new file mode 100644
index 0000000000..a279e5d9a7
--- /dev/null
+++ b/sdk/dotnet/Bedrock/Inputs/AgentActionGroupExecutorArgs.cs
@@ -0,0 +1,26 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Bedrock.Inputs
+{
+
+ public sealed class AgentActionGroupExecutorArgs : global::Pulumi.ResourceArgs
+ {
+ ///
+ /// ARN of a Lambda.
+ ///
+ [Input("lambda", required: true)]
+ public Input Lambda { get; set; } = null!;
+
+ public AgentActionGroupExecutorArgs()
+ {
+ }
+ public static new AgentActionGroupExecutorArgs Empty => new AgentActionGroupExecutorArgs();
+ }
+}
diff --git a/sdk/dotnet/Bedrock/Inputs/AgentAliasRoutingConfigurationListItemArgs.cs b/sdk/dotnet/Bedrock/Inputs/AgentAliasRoutingConfigurationListItemArgs.cs
new file mode 100644
index 0000000000..3761b12221
--- /dev/null
+++ b/sdk/dotnet/Bedrock/Inputs/AgentAliasRoutingConfigurationListItemArgs.cs
@@ -0,0 +1,29 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Bedrock.Inputs
+{
+
+ ///
+ /// Details about the routing configuration for an Agent alias.
+ ///
+ public sealed class AgentAliasRoutingConfigurationListItemArgs : global::Pulumi.ResourceArgs
+ {
+ ///
+ /// Agent Version.
+ ///
+ [Input("agentVersion", required: true)]
+ public Input AgentVersion { get; set; } = null!;
+
+ public AgentAliasRoutingConfigurationListItemArgs()
+ {
+ }
+ public static new AgentAliasRoutingConfigurationListItemArgs Empty => new AgentAliasRoutingConfigurationListItemArgs();
+ }
+}
diff --git a/sdk/dotnet/Bedrock/Inputs/AgentApiSchema0PropertiesArgs.cs b/sdk/dotnet/Bedrock/Inputs/AgentApiSchema0PropertiesArgs.cs
new file mode 100644
index 0000000000..8c69ebaf38
--- /dev/null
+++ b/sdk/dotnet/Bedrock/Inputs/AgentApiSchema0PropertiesArgs.cs
@@ -0,0 +1,26 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Bedrock.Inputs
+{
+
+ ///
+ /// Contains information about the API Schema for the Action Group
+ ///
+ public sealed class AgentApiSchema0PropertiesArgs : global::Pulumi.ResourceArgs
+ {
+ [Input("s3", required: true)]
+ public Input S3 { get; set; } = null!;
+
+ public AgentApiSchema0PropertiesArgs()
+ {
+ }
+ public static new AgentApiSchema0PropertiesArgs Empty => new AgentApiSchema0PropertiesArgs();
+ }
+}
diff --git a/sdk/dotnet/Bedrock/Inputs/AgentApiSchema1PropertiesArgs.cs b/sdk/dotnet/Bedrock/Inputs/AgentApiSchema1PropertiesArgs.cs
new file mode 100644
index 0000000000..1fd880bd15
--- /dev/null
+++ b/sdk/dotnet/Bedrock/Inputs/AgentApiSchema1PropertiesArgs.cs
@@ -0,0 +1,29 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Bedrock.Inputs
+{
+
+ ///
+ /// Contains information about the API Schema for the Action Group
+ ///
+ public sealed class AgentApiSchema1PropertiesArgs : global::Pulumi.ResourceArgs
+ {
+ ///
+ /// String OpenAPI Payload
+ ///
+ [Input("payload", required: true)]
+ public Input Payload { get; set; } = null!;
+
+ public AgentApiSchema1PropertiesArgs()
+ {
+ }
+ public static new AgentApiSchema1PropertiesArgs Empty => new AgentApiSchema1PropertiesArgs();
+ }
+}
diff --git a/sdk/dotnet/Bedrock/Inputs/AgentInferenceConfigurationArgs.cs b/sdk/dotnet/Bedrock/Inputs/AgentInferenceConfigurationArgs.cs
new file mode 100644
index 0000000000..7397159f93
--- /dev/null
+++ b/sdk/dotnet/Bedrock/Inputs/AgentInferenceConfigurationArgs.cs
@@ -0,0 +1,59 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Bedrock.Inputs
+{
+
+ ///
+ /// Configuration for inference in prompt configuration
+ ///
+ public sealed class AgentInferenceConfigurationArgs : global::Pulumi.ResourceArgs
+ {
+ ///
+ /// Maximum length of output
+ ///
+ [Input("maximumLength")]
+ public Input? MaximumLength { get; set; }
+
+ [Input("stopSequences")]
+ private InputList? _stopSequences;
+
+ ///
+ /// List of stop sequences
+ ///
+ public InputList StopSequences
+ {
+ get => _stopSequences ?? (_stopSequences = new InputList());
+ set => _stopSequences = value;
+ }
+
+ ///
+ /// Controls randomness, higher values increase diversity
+ ///
+ [Input("temperature")]
+ public Input? Temperature { get; set; }
+
+ ///
+ /// Sample from the k most likely next tokens
+ ///
+ [Input("topK")]
+ public Input? TopK { get; set; }
+
+ ///
+ /// Cumulative probability cutoff for token selection
+ ///
+ [Input("topP")]
+ public Input? TopP { get; set; }
+
+ public AgentInferenceConfigurationArgs()
+ {
+ }
+ public static new AgentInferenceConfigurationArgs Empty => new AgentInferenceConfigurationArgs();
+ }
+}
diff --git a/sdk/dotnet/Bedrock/Inputs/AgentKnowledgeBaseArgs.cs b/sdk/dotnet/Bedrock/Inputs/AgentKnowledgeBaseArgs.cs
new file mode 100644
index 0000000000..e056af26c6
--- /dev/null
+++ b/sdk/dotnet/Bedrock/Inputs/AgentKnowledgeBaseArgs.cs
@@ -0,0 +1,38 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Bedrock.Inputs
+{
+
+ ///
+ /// Agent Knowledge Base
+ ///
+ public sealed class AgentKnowledgeBaseArgs : global::Pulumi.ResourceArgs
+ {
+ ///
+ /// Description of the Resource.
+ ///
+ [Input("description", required: true)]
+ public Input Description { get; set; } = null!;
+
+ ///
+ /// Identifier for a resource.
+ ///
+ [Input("knowledgeBaseId", required: true)]
+ public Input KnowledgeBaseId { get; set; } = null!;
+
+ [Input("knowledgeBaseState")]
+ public Input? KnowledgeBaseState { get; set; }
+
+ public AgentKnowledgeBaseArgs()
+ {
+ }
+ public static new AgentKnowledgeBaseArgs Empty => new AgentKnowledgeBaseArgs();
+ }
+}
diff --git a/sdk/dotnet/Bedrock/Inputs/AgentPromptConfigurationArgs.cs b/sdk/dotnet/Bedrock/Inputs/AgentPromptConfigurationArgs.cs
new file mode 100644
index 0000000000..27ddfbb086
--- /dev/null
+++ b/sdk/dotnet/Bedrock/Inputs/AgentPromptConfigurationArgs.cs
@@ -0,0 +1,44 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Bedrock.Inputs
+{
+
+ ///
+ /// BasePromptConfiguration per Prompt Type.
+ ///
+ public sealed class AgentPromptConfigurationArgs : global::Pulumi.ResourceArgs
+ {
+ ///
+ /// Base Prompt Template.
+ ///
+ [Input("basePromptTemplate")]
+ public Input? BasePromptTemplate { get; set; }
+
+ [Input("inferenceConfiguration")]
+ public Input? InferenceConfiguration { get; set; }
+
+ [Input("parserMode")]
+ public Input? ParserMode { get; set; }
+
+ [Input("promptCreationMode")]
+ public Input? PromptCreationMode { get; set; }
+
+ [Input("promptState")]
+ public Input? PromptState { get; set; }
+
+ [Input("promptType")]
+ public Input? PromptType { get; set; }
+
+ public AgentPromptConfigurationArgs()
+ {
+ }
+ public static new AgentPromptConfigurationArgs Empty => new AgentPromptConfigurationArgs();
+ }
+}
diff --git a/sdk/dotnet/Bedrock/Inputs/AgentPromptOverrideConfigurationArgs.cs b/sdk/dotnet/Bedrock/Inputs/AgentPromptOverrideConfigurationArgs.cs
new file mode 100644
index 0000000000..a942089fd3
--- /dev/null
+++ b/sdk/dotnet/Bedrock/Inputs/AgentPromptOverrideConfigurationArgs.cs
@@ -0,0 +1,41 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Bedrock.Inputs
+{
+
+ ///
+ /// Configuration for prompt override.
+ ///
+ public sealed class AgentPromptOverrideConfigurationArgs : global::Pulumi.ResourceArgs
+ {
+ ///
+ /// ARN of a Lambda.
+ ///
+ [Input("overrideLambda")]
+ public Input? OverrideLambda { get; set; }
+
+ [Input("promptConfigurations", required: true)]
+ private InputList? _promptConfigurations;
+
+ ///
+ /// List of BasePromptConfiguration
+ ///
+ public InputList PromptConfigurations
+ {
+ get => _promptConfigurations ?? (_promptConfigurations = new InputList());
+ set => _promptConfigurations = value;
+ }
+
+ public AgentPromptOverrideConfigurationArgs()
+ {
+ }
+ public static new AgentPromptOverrideConfigurationArgs Empty => new AgentPromptOverrideConfigurationArgs();
+ }
+}
diff --git a/sdk/dotnet/Bedrock/Inputs/AgentS3IdentifierArgs.cs b/sdk/dotnet/Bedrock/Inputs/AgentS3IdentifierArgs.cs
new file mode 100644
index 0000000000..3b213e65bb
--- /dev/null
+++ b/sdk/dotnet/Bedrock/Inputs/AgentS3IdentifierArgs.cs
@@ -0,0 +1,35 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Bedrock.Inputs
+{
+
+ ///
+ /// The identifier for the S3 resource.
+ ///
+ public sealed class AgentS3IdentifierArgs : global::Pulumi.ResourceArgs
+ {
+ ///
+ /// A bucket in S3.
+ ///
+ [Input("s3BucketName")]
+ public Input? S3BucketName { get; set; }
+
+ ///
+ /// A object key in S3.
+ ///
+ [Input("s3ObjectKey")]
+ public Input? S3ObjectKey { get; set; }
+
+ public AgentS3IdentifierArgs()
+ {
+ }
+ public static new AgentS3IdentifierArgs Empty => new AgentS3IdentifierArgs();
+ }
+}
diff --git a/sdk/dotnet/Bedrock/Outputs/AgentActionGroup.cs b/sdk/dotnet/Bedrock/Outputs/AgentActionGroup.cs
new file mode 100644
index 0000000000..2f4e75da1a
--- /dev/null
+++ b/sdk/dotnet/Bedrock/Outputs/AgentActionGroup.cs
@@ -0,0 +1,61 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Bedrock.Outputs
+{
+
+ ///
+ /// Contains the information of an Agent Action Group
+ ///
+ [OutputType]
+ public sealed class AgentActionGroup
+ {
+ public readonly Outputs.AgentActionGroupExecutor? ActionGroupExecutor;
+ ///
+ /// Name of the action group
+ ///
+ public readonly string ActionGroupName;
+ public readonly Pulumi.AwsNative.Bedrock.AgentActionGroupState? ActionGroupState;
+ public readonly Union? ApiSchema;
+ ///
+ /// Description of action group
+ ///
+ public readonly string? Description;
+ public readonly Pulumi.AwsNative.Bedrock.AgentActionGroupSignature? ParentActionGroupSignature;
+ ///
+ /// Specifies whether to allow deleting action group while it is in use.
+ ///
+ public readonly bool? SkipResourceInUseCheckOnDelete;
+
+ [OutputConstructor]
+ private AgentActionGroup(
+ Outputs.AgentActionGroupExecutor? actionGroupExecutor,
+
+ string actionGroupName,
+
+ Pulumi.AwsNative.Bedrock.AgentActionGroupState? actionGroupState,
+
+ Union? apiSchema,
+
+ string? description,
+
+ Pulumi.AwsNative.Bedrock.AgentActionGroupSignature? parentActionGroupSignature,
+
+ bool? skipResourceInUseCheckOnDelete)
+ {
+ ActionGroupExecutor = actionGroupExecutor;
+ ActionGroupName = actionGroupName;
+ ActionGroupState = actionGroupState;
+ ApiSchema = apiSchema;
+ Description = description;
+ ParentActionGroupSignature = parentActionGroupSignature;
+ SkipResourceInUseCheckOnDelete = skipResourceInUseCheckOnDelete;
+ }
+ }
+}
diff --git a/sdk/dotnet/Bedrock/Outputs/AgentActionGroupExecutor.cs b/sdk/dotnet/Bedrock/Outputs/AgentActionGroupExecutor.cs
new file mode 100644
index 0000000000..3a5b3fab6a
--- /dev/null
+++ b/sdk/dotnet/Bedrock/Outputs/AgentActionGroupExecutor.cs
@@ -0,0 +1,27 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Bedrock.Outputs
+{
+
+ [OutputType]
+ public sealed class AgentActionGroupExecutor
+ {
+ ///
+ /// ARN of a Lambda.
+ ///
+ public readonly string Lambda;
+
+ [OutputConstructor]
+ private AgentActionGroupExecutor(string lambda)
+ {
+ Lambda = lambda;
+ }
+ }
+}
diff --git a/sdk/dotnet/Bedrock/Outputs/AgentAliasHistoryEvent.cs b/sdk/dotnet/Bedrock/Outputs/AgentAliasHistoryEvent.cs
new file mode 100644
index 0000000000..ec174e6d0f
--- /dev/null
+++ b/sdk/dotnet/Bedrock/Outputs/AgentAliasHistoryEvent.cs
@@ -0,0 +1,45 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Bedrock.Outputs
+{
+
+ ///
+ /// History event for an alias for an Agent.
+ ///
+ [OutputType]
+ public sealed class AgentAliasHistoryEvent
+ {
+ ///
+ /// Time Stamp.
+ ///
+ public readonly string? EndDate;
+ ///
+ /// Routing configuration for an Agent alias.
+ ///
+ public readonly ImmutableArray RoutingConfiguration;
+ ///
+ /// Time Stamp.
+ ///
+ public readonly string? StartDate;
+
+ [OutputConstructor]
+ private AgentAliasHistoryEvent(
+ string? endDate,
+
+ ImmutableArray routingConfiguration,
+
+ string? startDate)
+ {
+ EndDate = endDate;
+ RoutingConfiguration = routingConfiguration;
+ StartDate = startDate;
+ }
+ }
+}
diff --git a/sdk/dotnet/Bedrock/Outputs/AgentAliasRoutingConfigurationListItem.cs b/sdk/dotnet/Bedrock/Outputs/AgentAliasRoutingConfigurationListItem.cs
new file mode 100644
index 0000000000..bf27e01467
--- /dev/null
+++ b/sdk/dotnet/Bedrock/Outputs/AgentAliasRoutingConfigurationListItem.cs
@@ -0,0 +1,30 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Bedrock.Outputs
+{
+
+ ///
+ /// Details about the routing configuration for an Agent alias.
+ ///
+ [OutputType]
+ public sealed class AgentAliasRoutingConfigurationListItem
+ {
+ ///
+ /// Agent Version.
+ ///
+ public readonly string AgentVersion;
+
+ [OutputConstructor]
+ private AgentAliasRoutingConfigurationListItem(string agentVersion)
+ {
+ AgentVersion = agentVersion;
+ }
+ }
+}
diff --git a/sdk/dotnet/Bedrock/Outputs/AgentApiSchema0Properties.cs b/sdk/dotnet/Bedrock/Outputs/AgentApiSchema0Properties.cs
new file mode 100644
index 0000000000..c532713f79
--- /dev/null
+++ b/sdk/dotnet/Bedrock/Outputs/AgentApiSchema0Properties.cs
@@ -0,0 +1,27 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Bedrock.Outputs
+{
+
+ ///
+ /// Contains information about the API Schema for the Action Group
+ ///
+ [OutputType]
+ public sealed class AgentApiSchema0Properties
+ {
+ public readonly Outputs.AgentS3Identifier S3;
+
+ [OutputConstructor]
+ private AgentApiSchema0Properties(Outputs.AgentS3Identifier s3)
+ {
+ S3 = s3;
+ }
+ }
+}
diff --git a/sdk/dotnet/Bedrock/Outputs/AgentApiSchema1Properties.cs b/sdk/dotnet/Bedrock/Outputs/AgentApiSchema1Properties.cs
new file mode 100644
index 0000000000..ca278065d0
--- /dev/null
+++ b/sdk/dotnet/Bedrock/Outputs/AgentApiSchema1Properties.cs
@@ -0,0 +1,30 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Bedrock.Outputs
+{
+
+ ///
+ /// Contains information about the API Schema for the Action Group
+ ///
+ [OutputType]
+ public sealed class AgentApiSchema1Properties
+ {
+ ///
+ /// String OpenAPI Payload
+ ///
+ public readonly string Payload;
+
+ [OutputConstructor]
+ private AgentApiSchema1Properties(string payload)
+ {
+ Payload = payload;
+ }
+ }
+}
diff --git a/sdk/dotnet/Bedrock/Outputs/AgentInferenceConfiguration.cs b/sdk/dotnet/Bedrock/Outputs/AgentInferenceConfiguration.cs
new file mode 100644
index 0000000000..26b56b7e30
--- /dev/null
+++ b/sdk/dotnet/Bedrock/Outputs/AgentInferenceConfiguration.cs
@@ -0,0 +1,59 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Bedrock.Outputs
+{
+
+ ///
+ /// Configuration for inference in prompt configuration
+ ///
+ [OutputType]
+ public sealed class AgentInferenceConfiguration
+ {
+ ///
+ /// Maximum length of output
+ ///
+ public readonly double? MaximumLength;
+ ///
+ /// List of stop sequences
+ ///
+ public readonly ImmutableArray StopSequences;
+ ///
+ /// Controls randomness, higher values increase diversity
+ ///
+ public readonly double? Temperature;
+ ///
+ /// Sample from the k most likely next tokens
+ ///
+ public readonly double? TopK;
+ ///
+ /// Cumulative probability cutoff for token selection
+ ///
+ public readonly double? TopP;
+
+ [OutputConstructor]
+ private AgentInferenceConfiguration(
+ double? maximumLength,
+
+ ImmutableArray stopSequences,
+
+ double? temperature,
+
+ double? topK,
+
+ double? topP)
+ {
+ MaximumLength = maximumLength;
+ StopSequences = stopSequences;
+ Temperature = temperature;
+ TopK = topK;
+ TopP = topP;
+ }
+ }
+}
diff --git a/sdk/dotnet/Bedrock/Outputs/AgentKnowledgeBase.cs b/sdk/dotnet/Bedrock/Outputs/AgentKnowledgeBase.cs
new file mode 100644
index 0000000000..4bdeee3488
--- /dev/null
+++ b/sdk/dotnet/Bedrock/Outputs/AgentKnowledgeBase.cs
@@ -0,0 +1,42 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Bedrock.Outputs
+{
+
+ ///
+ /// Agent Knowledge Base
+ ///
+ [OutputType]
+ public sealed class AgentKnowledgeBase
+ {
+ ///
+ /// Description of the Resource.
+ ///
+ public readonly string Description;
+ ///
+ /// Identifier for a resource.
+ ///
+ public readonly string KnowledgeBaseId;
+ public readonly Pulumi.AwsNative.Bedrock.AgentKnowledgeBaseState? KnowledgeBaseState;
+
+ [OutputConstructor]
+ private AgentKnowledgeBase(
+ string description,
+
+ string knowledgeBaseId,
+
+ Pulumi.AwsNative.Bedrock.AgentKnowledgeBaseState? knowledgeBaseState)
+ {
+ Description = description;
+ KnowledgeBaseId = knowledgeBaseId;
+ KnowledgeBaseState = knowledgeBaseState;
+ }
+ }
+}
diff --git a/sdk/dotnet/Bedrock/Outputs/AgentPromptConfiguration.cs b/sdk/dotnet/Bedrock/Outputs/AgentPromptConfiguration.cs
new file mode 100644
index 0000000000..158dd12c94
--- /dev/null
+++ b/sdk/dotnet/Bedrock/Outputs/AgentPromptConfiguration.cs
@@ -0,0 +1,51 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Bedrock.Outputs
+{
+
+ ///
+ /// BasePromptConfiguration per Prompt Type.
+ ///
+ [OutputType]
+ public sealed class AgentPromptConfiguration
+ {
+ ///
+ /// Base Prompt Template.
+ ///
+ public readonly string? BasePromptTemplate;
+ public readonly Outputs.AgentInferenceConfiguration? InferenceConfiguration;
+ public readonly Pulumi.AwsNative.Bedrock.AgentCreationMode? ParserMode;
+ public readonly Pulumi.AwsNative.Bedrock.AgentCreationMode? PromptCreationMode;
+ public readonly Pulumi.AwsNative.Bedrock.AgentPromptState? PromptState;
+ public readonly Pulumi.AwsNative.Bedrock.AgentPromptType? PromptType;
+
+ [OutputConstructor]
+ private AgentPromptConfiguration(
+ string? basePromptTemplate,
+
+ Outputs.AgentInferenceConfiguration? inferenceConfiguration,
+
+ Pulumi.AwsNative.Bedrock.AgentCreationMode? parserMode,
+
+ Pulumi.AwsNative.Bedrock.AgentCreationMode? promptCreationMode,
+
+ Pulumi.AwsNative.Bedrock.AgentPromptState? promptState,
+
+ Pulumi.AwsNative.Bedrock.AgentPromptType? promptType)
+ {
+ BasePromptTemplate = basePromptTemplate;
+ InferenceConfiguration = inferenceConfiguration;
+ ParserMode = parserMode;
+ PromptCreationMode = promptCreationMode;
+ PromptState = promptState;
+ PromptType = promptType;
+ }
+ }
+}
diff --git a/sdk/dotnet/Bedrock/Outputs/AgentPromptOverrideConfiguration.cs b/sdk/dotnet/Bedrock/Outputs/AgentPromptOverrideConfiguration.cs
new file mode 100644
index 0000000000..3f19753eca
--- /dev/null
+++ b/sdk/dotnet/Bedrock/Outputs/AgentPromptOverrideConfiguration.cs
@@ -0,0 +1,38 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Bedrock.Outputs
+{
+
+ ///
+ /// Configuration for prompt override.
+ ///
+ [OutputType]
+ public sealed class AgentPromptOverrideConfiguration
+ {
+ ///
+ /// ARN of a Lambda.
+ ///
+ public readonly string? OverrideLambda;
+ ///
+ /// List of BasePromptConfiguration
+ ///
+ public readonly ImmutableArray PromptConfigurations;
+
+ [OutputConstructor]
+ private AgentPromptOverrideConfiguration(
+ string? overrideLambda,
+
+ ImmutableArray promptConfigurations)
+ {
+ OverrideLambda = overrideLambda;
+ PromptConfigurations = promptConfigurations;
+ }
+ }
+}
diff --git a/sdk/dotnet/Bedrock/Outputs/AgentS3Identifier.cs b/sdk/dotnet/Bedrock/Outputs/AgentS3Identifier.cs
new file mode 100644
index 0000000000..e4747881dd
--- /dev/null
+++ b/sdk/dotnet/Bedrock/Outputs/AgentS3Identifier.cs
@@ -0,0 +1,38 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Bedrock.Outputs
+{
+
+ ///
+ /// The identifier for the S3 resource.
+ ///
+ [OutputType]
+ public sealed class AgentS3Identifier
+ {
+ ///
+ /// A bucket in S3.
+ ///
+ public readonly string? S3BucketName;
+ ///
+ /// A object key in S3.
+ ///
+ public readonly string? S3ObjectKey;
+
+ [OutputConstructor]
+ private AgentS3Identifier(
+ string? s3BucketName,
+
+ string? s3ObjectKey)
+ {
+ S3BucketName = s3BucketName;
+ S3ObjectKey = s3ObjectKey;
+ }
+ }
+}
diff --git a/sdk/dotnet/Bedrock/README.md b/sdk/dotnet/Bedrock/README.md
new file mode 100644
index 0000000000..77b2f47ec2
--- /dev/null
+++ b/sdk/dotnet/Bedrock/README.md
@@ -0,0 +1 @@
+A native Pulumi package for creating and managing Amazon Web Services (AWS) resources.
diff --git a/sdk/dotnet/CleanRooms/Enums.cs b/sdk/dotnet/CleanRooms/Enums.cs
index 30ee4f0fa3..4fbac1d6db 100644
--- a/sdk/dotnet/CleanRooms/Enums.cs
+++ b/sdk/dotnet/CleanRooms/Enums.cs
@@ -323,6 +323,17 @@ private ConfiguredTableScalarFunctions(string value)
public static ConfiguredTableScalarFunctions Rtrim { get; } = new ConfiguredTableScalarFunctions("RTRIM");
public static ConfiguredTableScalarFunctions Upper { get; } = new ConfiguredTableScalarFunctions("UPPER");
public static ConfiguredTableScalarFunctions Coalesce { get; } = new ConfiguredTableScalarFunctions("COALESCE");
+ public static ConfiguredTableScalarFunctions Convert { get; } = new ConfiguredTableScalarFunctions("CONVERT");
+ public static ConfiguredTableScalarFunctions CurrentDate { get; } = new ConfiguredTableScalarFunctions("CURRENT_DATE");
+ public static ConfiguredTableScalarFunctions Dateadd { get; } = new ConfiguredTableScalarFunctions("DATEADD");
+ public static ConfiguredTableScalarFunctions Extract { get; } = new ConfiguredTableScalarFunctions("EXTRACT");
+ public static ConfiguredTableScalarFunctions Getdate { get; } = new ConfiguredTableScalarFunctions("GETDATE");
+ public static ConfiguredTableScalarFunctions Substring { get; } = new ConfiguredTableScalarFunctions("SUBSTRING");
+ public static ConfiguredTableScalarFunctions ToChar { get; } = new ConfiguredTableScalarFunctions("TO_CHAR");
+ public static ConfiguredTableScalarFunctions ToDate { get; } = new ConfiguredTableScalarFunctions("TO_DATE");
+ public static ConfiguredTableScalarFunctions ToNumber { get; } = new ConfiguredTableScalarFunctions("TO_NUMBER");
+ public static ConfiguredTableScalarFunctions ToTimestamp { get; } = new ConfiguredTableScalarFunctions("TO_TIMESTAMP");
+ public static ConfiguredTableScalarFunctions Trim { get; } = new ConfiguredTableScalarFunctions("TRIM");
public static bool operator ==(ConfiguredTableScalarFunctions left, ConfiguredTableScalarFunctions right) => left.Equals(right);
public static bool operator !=(ConfiguredTableScalarFunctions left, ConfiguredTableScalarFunctions right) => !left.Equals(right);
diff --git a/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableAnalysisRuleCustomArgs.cs b/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableAnalysisRuleCustomArgs.cs
index 929926faff..f21276a9c9 100644
--- a/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableAnalysisRuleCustomArgs.cs
+++ b/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableAnalysisRuleCustomArgs.cs
@@ -28,6 +28,9 @@ public InputList AllowedAnalysisProviders
set => _allowedAnalysisProviders = value;
}
+ [Input("differentialPrivacy")]
+ public Input? DifferentialPrivacy { get; set; }
+
public ConfiguredTableAnalysisRuleCustomArgs()
{
}
diff --git a/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableDifferentialPrivacyArgs.cs b/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableDifferentialPrivacyArgs.cs
new file mode 100644
index 0000000000..020b2e51af
--- /dev/null
+++ b/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableDifferentialPrivacyArgs.cs
@@ -0,0 +1,28 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.CleanRooms.Inputs
+{
+
+ public sealed class ConfiguredTableDifferentialPrivacyArgs : global::Pulumi.ResourceArgs
+ {
+ [Input("columns", required: true)]
+ private InputList? _columns;
+ public InputList Columns
+ {
+ get => _columns ?? (_columns = new InputList());
+ set => _columns = value;
+ }
+
+ public ConfiguredTableDifferentialPrivacyArgs()
+ {
+ }
+ public static new ConfiguredTableDifferentialPrivacyArgs Empty => new ConfiguredTableDifferentialPrivacyArgs();
+ }
+}
diff --git a/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableDifferentialPrivacyColumnArgs.cs b/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableDifferentialPrivacyColumnArgs.cs
new file mode 100644
index 0000000000..fdab65ae34
--- /dev/null
+++ b/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableDifferentialPrivacyColumnArgs.cs
@@ -0,0 +1,23 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.CleanRooms.Inputs
+{
+
+ public sealed class ConfiguredTableDifferentialPrivacyColumnArgs : global::Pulumi.ResourceArgs
+ {
+ [Input("name", required: true)]
+ public Input Name { get; set; } = null!;
+
+ public ConfiguredTableDifferentialPrivacyColumnArgs()
+ {
+ }
+ public static new ConfiguredTableDifferentialPrivacyColumnArgs Empty => new ConfiguredTableDifferentialPrivacyColumnArgs();
+ }
+}
diff --git a/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableAnalysisRuleCustom.cs b/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableAnalysisRuleCustom.cs
index d1df087455..a3ebae15b9 100644
--- a/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableAnalysisRuleCustom.cs
+++ b/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableAnalysisRuleCustom.cs
@@ -15,15 +15,19 @@ public sealed class ConfiguredTableAnalysisRuleCustom
{
public readonly ImmutableArray AllowedAnalyses;
public readonly ImmutableArray AllowedAnalysisProviders;
+ public readonly Outputs.ConfiguredTableDifferentialPrivacy? DifferentialPrivacy;
[OutputConstructor]
private ConfiguredTableAnalysisRuleCustom(
ImmutableArray allowedAnalyses,
- ImmutableArray allowedAnalysisProviders)
+ ImmutableArray allowedAnalysisProviders,
+
+ Outputs.ConfiguredTableDifferentialPrivacy? differentialPrivacy)
{
AllowedAnalyses = allowedAnalyses;
AllowedAnalysisProviders = allowedAnalysisProviders;
+ DifferentialPrivacy = differentialPrivacy;
}
}
}
diff --git a/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableDifferentialPrivacy.cs b/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableDifferentialPrivacy.cs
new file mode 100644
index 0000000000..1daa1c9507
--- /dev/null
+++ b/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableDifferentialPrivacy.cs
@@ -0,0 +1,24 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.CleanRooms.Outputs
+{
+
+ [OutputType]
+ public sealed class ConfiguredTableDifferentialPrivacy
+ {
+ public readonly ImmutableArray Columns;
+
+ [OutputConstructor]
+ private ConfiguredTableDifferentialPrivacy(ImmutableArray columns)
+ {
+ Columns = columns;
+ }
+ }
+}
diff --git a/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableDifferentialPrivacyColumn.cs b/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableDifferentialPrivacyColumn.cs
new file mode 100644
index 0000000000..bcd1bb2f2c
--- /dev/null
+++ b/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableDifferentialPrivacyColumn.cs
@@ -0,0 +1,24 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.CleanRooms.Outputs
+{
+
+ [OutputType]
+ public sealed class ConfiguredTableDifferentialPrivacyColumn
+ {
+ public readonly string Name;
+
+ [OutputConstructor]
+ private ConfiguredTableDifferentialPrivacyColumn(string name)
+ {
+ Name = name;
+ }
+ }
+}
diff --git a/sdk/dotnet/CloudFront/Inputs/DistributionCacheBehaviorArgs.cs b/sdk/dotnet/CloudFront/Inputs/DistributionCacheBehaviorArgs.cs
index 89e7e96648..3a1b9df87a 100644
--- a/sdk/dotnet/CloudFront/Inputs/DistributionCacheBehaviorArgs.cs
+++ b/sdk/dotnet/CloudFront/Inputs/DistributionCacheBehaviorArgs.cs
@@ -15,7 +15,9 @@ namespace Pulumi.AwsNative.CloudFront.Inputs
/// You must create at least as many cache behaviors (including the default cache behavior) as you have origins if you want CloudFront to serve objects from all of the origins. Each cache behavior specifies the one origin from which you want CloudFront to get objects. If you have two origins and only the default cache behavior, the default cache behavior will cause CloudFront to get objects from one of the origins, but the other origin is never used.
/// For the current quota (formerly known as limit) on the number of cache behaviors that you can add to a distribution, see [Quotas](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/cloudfront-limits.html) in the *Amazon CloudFront Developer Guide*.
/// If you don't want to specify any cache behaviors, include only an empty ``CacheBehaviors`` element. Don't include an empty ``CacheBehavior`` element because this is invalid.
- /// To delete all cache behaviors in an exist
+ /// To delete all cache behaviors in an existing distribution, update the distribution configuration and include only an empty ``CacheBehaviors`` element.
+ /// To add, change, or remove one or more cache behaviors, update the distribution configuration and specify all of the cache behaviors that you want to include in the updated distribution.
+ /// For more information about cache behaviors, see [Cache Behavior Settings](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesCacheBehavior) in the *Amazon CloudFront Developer Guide*.
///
public sealed class DistributionCacheBehaviorArgs : global::Pulumi.ResourceArgs
{
@@ -67,7 +69,7 @@ public InputList CachedMethods
///
/// This field is deprecated. We recommend that you use the ``DefaultTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.
- /// The default amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide
+ /// The default amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*.
///
[Input("defaultTtl")]
public Input? DefaultTtl { get; set; }
@@ -81,7 +83,9 @@ public InputList CachedMethods
///
/// This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field. For more information, see [Working with policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/working-with-policies.html) in the *Amazon CloudFront Developer Guide*.
/// If you want to include values in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.
- /// If you want to send values to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-r
+ /// If you want to send values to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) or [Using the managed origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-origin-request-policies.html) in the *Amazon CloudFront Developer Guide*.
+ /// A ``CacheBehavior`` must include either a ``CachePolicyId`` or ``ForwardedValues``. We recommend that you use a ``CachePolicyId``.
+ /// A complex type that specifies how CloudFront handles query strings, cookies, and HTTP headers.
///
[Input("forwardedValues")]
public Input? ForwardedValues { get; set; }
@@ -112,7 +116,7 @@ public InputList LambdaFunctio
///
/// This field is deprecated. We recommend that you use the ``MaxTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.
- /// The maximum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.
+ /// The maximum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*.
///
[Input("maxTtl")]
public Input? MaxTtl { get; set; }
@@ -120,7 +124,7 @@ public InputList LambdaFunctio
///
/// This field is deprecated. We recommend that you use the ``MinTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.
/// The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*.
- /// You must specify ``0`` for ``MinTTL`` if you configure CloudFront to forward all headers to your origin (under ``He
+ /// You must specify ``0`` for ``MinTTL`` if you configure CloudFront to forward all headers to your origin (under ``Headers``, if you specify ``1`` for ``Quantity`` and ``*`` for ``Name``).
///
[Input("minTtl")]
public Input? MinTtl { get; set; }
@@ -198,7 +202,7 @@ public InputList TrustedSigners
/// + ``https-only``: If a viewer sends an HTTP request, CloudFront returns an HTTP status code of 403 (Forbidden).
///
/// For more information about requiring the HTTPS protocol, see [Requiring HTTPS Between Viewers and CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https-viewers-to-cloudfront.html) in the *Amazon CloudFront Developer Guide*.
- /// The only way to guarantee that viewers retrieve an object that was fetched from the origin using HTTPS is never to use any other protocol
+ /// The only way to guarantee that viewers retrieve an object that was fetched from the origin using HTTPS is never to use any other protocol to fetch the object. If you have recently changed from HTTP to HTTPS, we recommend that you clear your objects' cache because cached objects are protocol agnostic. That means that an edge location will return an object from the cache regardless of whether the current request protocol matches the protocol used previously. For more information, see [Managing Cache Expiration](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*.
///
[Input("viewerProtocolPolicy", required: true)]
public Input ViewerProtocolPolicy { get; set; } = null!;
diff --git a/sdk/dotnet/CloudFront/Inputs/DistributionConfigArgs.cs b/sdk/dotnet/CloudFront/Inputs/DistributionConfigArgs.cs
index acd54ee181..2995e80c7e 100644
--- a/sdk/dotnet/CloudFront/Inputs/DistributionConfigArgs.cs
+++ b/sdk/dotnet/CloudFront/Inputs/DistributionConfigArgs.cs
@@ -90,7 +90,7 @@ public InputList CustomErrorResponse
/// If you don't want to specify a default root object when you create a distribution, include an empty ``DefaultRootObject`` element.
/// To delete the default root object from an existing distribution, update the distribution configuration and include an empty ``DefaultRootObject`` element.
/// To replace the default root object, update the distribution configuration and specify the new object.
- /// For more information about the default root object, see [Creating a Default Root Object](https://docs.aws.amazon.com/AmazonCloudFront/latest/D
+ /// For more information about the default root object, see [Creating a Default Root Object](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/DefaultRootObject.html) in the *Amazon CloudFront Developer Guide*.
///
[Input("defaultRootObject")]
public Input? DefaultRootObject { get; set; }
@@ -111,7 +111,13 @@ public InputList CustomErrorResponse
///
/// If you want CloudFront to respond to IPv6 DNS requests with an IPv6 address for your distribution, specify ``true``. If you specify ``false``, CloudFront responds to IPv6 DNS requests with the DNS response code ``NOERROR`` and with no IP addresses. This allows viewers to submit a second request, for an IPv4 address for your distribution.
- /// In general, you should enable IPv6 if you have users on IPv6 networks who want to access your content. However, if you're using signed URLs or signed cookies to restrict access to your content, and if you're using a custom policy that includes the ``IpAddress`` parameter to restrict the IP addresses that can access your content, don't enable IPv6. If you want to restrict access to some content by IP address and not restrict access to other content (or restrict access but not by IP address), you can create two distributions. For more information, see [Creating a Signed URL Using a Custom Policy](https://docs.aws.amazon.com/AmazonCloudFront/latest/Devel
+ /// In general, you should enable IPv6 if you have users on IPv6 networks who want to access your content. However, if you're using signed URLs or signed cookies to restrict access to your content, and if you're using a custom policy that includes the ``IpAddress`` parameter to restrict the IP addresses that can access your content, don't enable IPv6. If you want to restrict access to some content by IP address and not restrict access to other content (or restrict access but not by IP address), you can create two distributions. For more information, see [Creating a Signed URL Using a Custom Policy](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-creating-signed-url-custom-policy.html) in the *Amazon CloudFront Developer Guide*.
+ /// If you're using an R53AWSIntlong alias resource record set to route traffic to your CloudFront distribution, you need to create a second alias resource record set when both of the following are true:
+ /// + You enable IPv6 for the distribution
+ /// + You're using alternate domain names in the URLs for your objects
+ ///
+ /// For more information, see [Routing Traffic to an Amazon CloudFront Web Distribution by Using Your Domain Name](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-cloudfront-distribution.html) in the *Developer Guide*.
+ /// If you created a CNAME resource record set, either with R53AWSIntlong or with another DNS service, you don't need to make any changes. A CNAME record will route traffic to your distribution regardless of the IP address format of the viewer request.
///
[Input("ipv6Enabled")]
public Input? Ipv6Enabled { get; set; }
@@ -172,7 +178,7 @@ public InputList Origins
///
/// A unique identifier that specifies the WAF web ACL, if any, to associate with this distribution. To specify a web ACL created using the latest version of WAF, use the ACL ARN, for example ``arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/473e64fd-f30b-4765-81a0-62ad96dd167a``. To specify a web ACL created using WAF Classic, use the ACL ID, for example ``473e64fd-f30b-4765-81a0-62ad96dd167a``.
- /// WAF is a web application firewall that lets you monitor the HTTP and HTTPS requests that are forwarded to CloudFront, and lets you control access to your content. Based on conditions that you specify, such as the IP addresses that requests originate from or the values of query strings, CloudFront responds to requests either with the requested content or with an HTTP 403 status code (Forbidden). You can also configure CloudFront to return a custom error page when a request is blocked. For more information about WAF, see the [Developer Guide](https://docs.aws.amazon.com/waf/latest
+ /// WAF is a web application firewall that lets you monitor the HTTP and HTTPS requests that are forwarded to CloudFront, and lets you control access to your content. Based on conditions that you specify, such as the IP addresses that requests originate from or the values of query strings, CloudFront responds to requests either with the requested content or with an HTTP 403 status code (Forbidden). You can also configure CloudFront to return a custom error page when a request is blocked. For more information about WAF, see the [Developer Guide](https://docs.aws.amazon.com/waf/latest/developerguide/what-is-aws-waf.html).
///
[Input("webAclId")]
public Input? WebAclId { get; set; }
diff --git a/sdk/dotnet/CloudFront/Inputs/DistributionCookiesArgs.cs b/sdk/dotnet/CloudFront/Inputs/DistributionCookiesArgs.cs
index 6134310588..555afd3f62 100644
--- a/sdk/dotnet/CloudFront/Inputs/DistributionCookiesArgs.cs
+++ b/sdk/dotnet/CloudFront/Inputs/DistributionCookiesArgs.cs
@@ -14,7 +14,7 @@ namespace Pulumi.AwsNative.CloudFront.Inputs
/// This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.
/// If you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.
/// If you want to send cookies to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.
- /// A complex type that specifies whether you want CloudFront to forward cookies to the origin and, if so, which ones. For more information about forwarding cookies to the origin, see [How CloudFront Forwards, Caches, and Logs C
+ /// A complex type that specifies whether you want CloudFront to forward cookies to the origin and, if so, which ones. For more information about forwarding cookies to the origin, see [How CloudFront Forwards, Caches, and Logs Cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Cookies.html) in the *Amazon CloudFront Developer Guide*.
///
public sealed class DistributionCookiesArgs : global::Pulumi.ResourceArgs
{
@@ -23,7 +23,7 @@ public sealed class DistributionCookiesArgs : global::Pulumi.ResourceArgs
/// If you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.
/// If you want to send cookies to the origin but not include them in the cache key, use origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.
/// Specifies which cookies to forward to the origin for this cache behavior: all, none, or the list of cookies specified in the ``WhitelistedNames`` complex type.
- /// Amazon S3 doesn't process cookies. When the cache behavior is forw
+ /// Amazon S3 doesn't process cookies. When the cache behavior is forwarding requests to an Amazon S3 origin, specify none for the ``Forward`` element.
///
[Input("forward", required: true)]
public Input Forward { get; set; } = null!;
@@ -35,7 +35,9 @@ public sealed class DistributionCookiesArgs : global::Pulumi.ResourceArgs
/// This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.
/// If you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.
/// If you want to send cookies to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.
- /// Required if you specify ``whitelist`` for the value of ``Forward``. A complex type that specifies how many different cookies you want CloudFront to forward to the origin for this cache behavior and, if you want to forward se
+ /// Required if you specify ``whitelist`` for the value of ``Forward``. A complex type that specifies how many different cookies you want CloudFront to forward to the origin for this cache behavior and, if you want to forward selected cookies, the names of those cookies.
+ /// If you specify ``all`` or ``none`` for the value of ``Forward``, omit ``WhitelistedNames``. If you change the value of ``Forward`` from ``whitelist`` to ``all`` or ``none`` and you don't delete the ``WhitelistedNames`` element and its child elements, CloudFront deletes them automatically.
+ /// For the current limit on the number of cookie names that you can whitelist for each cache behavior, see [CloudFront Limits](https://docs.aws.amazon.com/general/latest/gr/xrefaws_service_limits.html#limits_cloudfront) in the *General Reference*.
///
public InputList WhitelistedNames
{
diff --git a/sdk/dotnet/CloudFront/Inputs/DistributionCustomErrorResponseArgs.cs b/sdk/dotnet/CloudFront/Inputs/DistributionCustomErrorResponseArgs.cs
index c98531cd1c..bf41bc513e 100644
--- a/sdk/dotnet/CloudFront/Inputs/DistributionCustomErrorResponseArgs.cs
+++ b/sdk/dotnet/CloudFront/Inputs/DistributionCustomErrorResponseArgs.cs
@@ -49,7 +49,7 @@ public sealed class DistributionCustomErrorResponseArgs : global::Pulumi.Resourc
/// + The value of ``TargetOriginId`` specifies the value of the ``ID`` element for the origin that contains your custom error pages.
///
/// If you specify a value for ``ResponsePagePath``, you must also specify a value for ``ResponseCode``.
- /// We recommend
+ /// We recommend that you store custom error pages in an Amazon S3 bucket. If you store custom error pages on an HTTP server and the server starts to return 5xx errors, CloudFront can't get the files that you want to return to viewers because the origin server is unavailable.
///
[Input("responsePagePath")]
public Input? ResponsePagePath { get; set; }
diff --git a/sdk/dotnet/CloudFront/Inputs/DistributionDefaultCacheBehaviorArgs.cs b/sdk/dotnet/CloudFront/Inputs/DistributionDefaultCacheBehaviorArgs.cs
index 843d9d7836..5aaa9c90e1 100644
--- a/sdk/dotnet/CloudFront/Inputs/DistributionDefaultCacheBehaviorArgs.cs
+++ b/sdk/dotnet/CloudFront/Inputs/DistributionDefaultCacheBehaviorArgs.cs
@@ -63,7 +63,7 @@ public InputList CachedMethods
///
/// This field is deprecated. We recommend that you use the ``DefaultTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.
- /// The default amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide
+ /// The default amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*.
///
[Input("defaultTtl")]
public Input? DefaultTtl { get; set; }
@@ -77,7 +77,9 @@ public InputList CachedMethods
///
/// This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field. For more information, see [Working with policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/working-with-policies.html) in the *Amazon CloudFront Developer Guide*.
/// If you want to include values in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.
- /// If you want to send values to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-r
+ /// If you want to send values to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) or [Using the managed origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-origin-request-policies.html) in the *Amazon CloudFront Developer Guide*.
+ /// A ``DefaultCacheBehavior`` must include either a ``CachePolicyId`` or ``ForwardedValues``. We recommend that you use a ``CachePolicyId``.
+ /// A complex type that specifies how CloudFront handles query strings, cookies, and HTTP headers.
///
[Input("forwardedValues")]
public Input? ForwardedValues { get; set; }
@@ -108,7 +110,7 @@ public InputList LambdaFunctio
///
/// This field is deprecated. We recommend that you use the ``MaxTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.
- /// The maximum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.
+ /// The maximum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*.
///
[Input("maxTtl")]
public Input? MaxTtl { get; set; }
@@ -116,7 +118,7 @@ public InputList LambdaFunctio
///
/// This field is deprecated. We recommend that you use the ``MinTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.
/// The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*.
- /// You must specify ``0`` for ``MinTTL`` if you configure CloudFront to forward all headers to your origin (under ``He
+ /// You must specify ``0`` for ``MinTTL`` if you configure CloudFront to forward all headers to your origin (under ``Headers``, if you specify ``1`` for ``Quantity`` and ``*`` for ``Name``).
///
[Input("minTtl")]
public Input? MinTtl { get; set; }
@@ -185,7 +187,7 @@ public InputList TrustedSigners
/// + ``https-only``: If a viewer sends an HTTP request, CloudFront returns an HTTP status code of 403 (Forbidden).
///
/// For more information about requiring the HTTPS protocol, see [Requiring HTTPS Between Viewers and CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https-viewers-to-cloudfront.html) in the *Amazon CloudFront Developer Guide*.
- /// The only way to guarantee that viewers retrieve an object that was fetched from the origin using HTTPS is never to use any other protocol
+ /// The only way to guarantee that viewers retrieve an object that was fetched from the origin using HTTPS is never to use any other protocol to fetch the object. If you have recently changed from HTTP to HTTPS, we recommend that you clear your objects' cache because cached objects are protocol agnostic. That means that an edge location will return an object from the cache regardless of whether the current request protocol matches the protocol used previously. For more information, see [Managing Cache Expiration](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*.
///
[Input("viewerProtocolPolicy", required: true)]
public Input ViewerProtocolPolicy { get; set; } = null!;
diff --git a/sdk/dotnet/CloudFront/Inputs/DistributionForwardedValuesArgs.cs b/sdk/dotnet/CloudFront/Inputs/DistributionForwardedValuesArgs.cs
index 7de0ad20e6..8e32879b30 100644
--- a/sdk/dotnet/CloudFront/Inputs/DistributionForwardedValuesArgs.cs
+++ b/sdk/dotnet/CloudFront/Inputs/DistributionForwardedValuesArgs.cs
@@ -22,7 +22,7 @@ public sealed class DistributionForwardedValuesArgs : global::Pulumi.ResourceArg
/// This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.
/// If you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.
/// If you want to send cookies to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.
- /// A complex type that specifies whether you want CloudFront to forward cookies to the origin and, if so, which ones. For more information about forwarding cookies to the origin, see [How CloudFront Forwards, Caches, and Logs C
+ /// A complex type that specifies whether you want CloudFront to forward cookies to the origin and, if so, which ones. For more information about forwarding cookies to the origin, see [How CloudFront Forwards, Caches, and Logs Cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Cookies.html) in the *Amazon CloudFront Developer Guide*.
///
[Input("cookies")]
public Input? Cookies { get; set; }
@@ -34,7 +34,8 @@ public sealed class DistributionForwardedValuesArgs : global::Pulumi.ResourceArg
/// This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.
/// If you want to include headers in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.
/// If you want to send headers to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.
- /// A complex type that specifies the ``Headers``, if any, that you want CloudFront to forward to the origin for this cache behavior (whitelisted headers). For the headers that you specify, CloudFront also caches separate versio
+ /// A complex type that specifies the ``Headers``, if any, that you want CloudFront to forward to the origin for this cache behavior (whitelisted headers). For the headers that you specify, CloudFront also caches separate versions of a specified object that is based on the header values in viewer requests.
+ /// For more information, see [Caching Content Based on Request Headers](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/header-caching.html) in the *Amazon CloudFront Developer Guide*.
///
public InputList Headers
{
@@ -46,7 +47,11 @@ public InputList Headers
/// This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.
/// If you want to include query strings in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.
/// If you want to send query strings to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.
- /// Indicates whether you want CloudFront to forward query strings to the origin that is associated with this cache behavior and cache based on the query string parameters. CloudFront behavior depends on the value of
+ /// Indicates whether you want CloudFront to forward query strings to the origin that is associated with this cache behavior and cache based on the query string parameters. CloudFront behavior depends on the value of ``QueryString`` and on the values that you specify for ``QueryStringCacheKeys``, if any:
+ /// If you specify true for ``QueryString`` and you don't specify any values for ``QueryStringCacheKeys``, CloudFront forwards all query string parameters to the origin and caches based on all query string parameters. Depending on how many query string parameters and values you have, this can adversely affect performance because CloudFront must forward more requests to the origin.
+ /// If you specify true for ``QueryString`` and you specify one or more values for ``QueryStringCacheKeys``, CloudFront forwards all query string parameters to the origin, but it only caches based on the query string parameters that you specify.
+ /// If you specify false for ``QueryString``, CloudFront doesn't forward any query string parameters to the origin, and doesn't cache based on query string parameters.
+ /// For more information, see [Configuring CloudFront to Cache Based on Query String Parameters](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/QueryStringParameters.html) in the *Amazon CloudFront Developer Guide*.
///
[Input("queryString", required: true)]
public Input QueryString { get; set; } = null!;
diff --git a/sdk/dotnet/CloudFront/Inputs/DistributionS3OriginConfigArgs.cs b/sdk/dotnet/CloudFront/Inputs/DistributionS3OriginConfigArgs.cs
index 86bf849ddc..258b90b48b 100644
--- a/sdk/dotnet/CloudFront/Inputs/DistributionS3OriginConfigArgs.cs
+++ b/sdk/dotnet/CloudFront/Inputs/DistributionS3OriginConfigArgs.cs
@@ -22,7 +22,7 @@ public sealed class DistributionS3OriginConfigArgs : global::Pulumi.ResourceArgs
/// If you want viewers to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty ``OriginAccessIdentity`` element.
/// To delete the origin access identity from an existing distribution, update the distribution configuration and include an empty ``OriginAccessIdentity`` element.
/// To replace the origin access identity, update the distribution configuration and specify the new origin access identity.
- /// For more information about the origin access identity, see [Serving Private Content through CloudFront](https://d
+ /// For more information about the origin access identity, see [Serving Private Content through CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) in the *Amazon CloudFront Developer Guide*.
///
[Input("originAccessIdentity")]
public Input? OriginAccessIdentity { get; set; }
diff --git a/sdk/dotnet/CloudFront/Inputs/DistributionViewerCertificateArgs.cs b/sdk/dotnet/CloudFront/Inputs/DistributionViewerCertificateArgs.cs
index beacdf889a..4c59249f48 100644
--- a/sdk/dotnet/CloudFront/Inputs/DistributionViewerCertificateArgs.cs
+++ b/sdk/dotnet/CloudFront/Inputs/DistributionViewerCertificateArgs.cs
@@ -15,7 +15,17 @@ namespace Pulumi.AwsNative.CloudFront.Inputs
/// If the distribution doesn't use ``Aliases`` (also known as alternate domain names or CNAMEs)—that is, if the distribution uses the CloudFront domain name such as ``d111111abcdef8.cloudfront.net``—set ``CloudFrontDefaultCertificate`` to ``true`` and leave all other fields empty.
/// If the distribution uses ``Aliases`` (alternate domain names or CNAMEs), use the fields in this type to specify the following settings:
/// + Which viewers the distribution accepts HTTPS connections from: only viewers that support [server name indication (SNI)](https://docs.aws.amazon.com/https://en.wikipedia.org/wiki/Server_Name_Indication) (recommended), or all viewers including those that don't support SNI.
- /// + To accept HTTPS connections from only viewers that support SNI, set ``SSLSupportMethod`` to ``sni-only``. This is recommended. Most browsers and clients support SNI. (In CloudFormation, the field n
+ /// + To accept HTTPS connections from only viewers that support SNI, set ``SSLSupportMethod`` to ``sni-only``. This is recommended. Most browsers and clients support SNI. (In CloudFormation, the field name is ``SslSupportMethod``. Note the different capitalization.)
+ /// + To accept HTTPS connections from all viewers, including those that don't support SNI, set ``SSLSupportMethod`` to ``vip``. This is not recommended, and results in additional monthly charges from CloudFront. (In CloudFormation, the field name is ``SslSupportMethod``. Note the different capitalization.)
+ ///
+ /// + The minimum SSL/TLS protocol version that the distribution can use to communicate with viewers. To specify a minimum version, choose a value for ``MinimumProtocolVersion``. For more information, see [Security Policy](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValues-security-policy) in the *Amazon CloudFront Developer Guide*.
+ /// + The location of the SSL/TLS certificate, [(ACM)](https://docs.aws.amazon.com/acm/latest/userguide/acm-overview.html) (recommended) or [(IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html). You specify the location by setting a value in one of the following fields (not both):
+ /// + ``ACMCertificateArn`` (In CloudFormation, this field name is ``AcmCertificateArn``. Note the different capitalization.)
+ /// + ``IAMCertificateId`` (In CloudFormation, this field name is ``IamCertificateId``. Note the different capitalization.)
+ ///
+ ///
+ /// All distributions support HTTPS connections from viewers. To require viewers to use HTTPS only, or to redirect them from HTTP to HTTPS, use ``ViewerProtocolPolicy`` in the ``CacheBehavior`` or ``DefaultCacheBehavior``. To specify how CloudFront should use SSL/TLS to communicate with your custom origin, use ``CustomOriginConfig``.
+ /// For more information, see [Using HTTPS with CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https.html) and [Using Alternate Domain Names and HTTPS](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https-alternate-domain-names.html) in the *Amazon CloudFront Developer Guide*.
///
public sealed class DistributionViewerCertificateArgs : global::Pulumi.ResourceArgs
{
@@ -52,7 +62,8 @@ public sealed class DistributionViewerCertificateArgs : global::Pulumi.ResourceA
///
/// For more information, see [Security Policy](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValues-security-policy) and [Supported Protocols and Ciphers Between Viewers and CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/secure-connections-supported-viewer-protocols-ciphers.html#secure-connections-supported-ciphers) in the *Amazon CloudFront Developer Guide*.
/// On the CloudFront console, this setting is called *Security Policy*.
- /// When you're using SNI only (you set ``SSLSupportMethod`` to ``sni-onl
+ /// When you're using SNI only (you set ``SSLSupportMethod`` to ``sni-only``), you must specify ``TLSv1`` or higher. (In CloudFormation, the field name is ``SslSupportMethod``. Note the different capitalization.)
+ /// If the distribution uses the CloudFront domain name such as ``d111111abcdef8.cloudfront.net`` (you set ``CloudFrontDefaultCertificate`` to ``true``), CloudFront automatically sets the security policy to ``TLSv1`` regardless of the value that you set here.
///
[Input("minimumProtocolVersion")]
public Input? MinimumProtocolVersion { get; set; }
@@ -63,6 +74,8 @@ public sealed class DistributionViewerCertificateArgs : global::Pulumi.ResourceA
/// + ``sni-only`` – The distribution accepts HTTPS connections from only viewers that support [server name indication (SNI)](https://docs.aws.amazon.com/https://en.wikipedia.org/wiki/Server_Name_Indication). This is recommended. Most browsers and clients support SNI.
/// + ``vip`` – The distribution accepts HTTPS connections from all viewers including those that don't support SNI. This is not recommended, and results in additional monthly charges from CloudFront.
/// + ``static-ip`` - Do not specify this value unless your distribution has been enabled for this feature by the CloudFront team. If you have a use case that requires static IP addresses for a distribution, contact CloudFront through the [Center](https://docs.aws.amazon.com/support/home).
+ ///
+ /// If the distribution uses the CloudFront domain name such as ``d111111abcdef8.cloudfront.net``, don't set a value for this field.
///
[Input("sslSupportMethod")]
public Input? SslSupportMethod { get; set; }
diff --git a/sdk/dotnet/CloudFront/Outputs/DistributionCacheBehavior.cs b/sdk/dotnet/CloudFront/Outputs/DistributionCacheBehavior.cs
index 53f0feb874..bcf199c863 100644
--- a/sdk/dotnet/CloudFront/Outputs/DistributionCacheBehavior.cs
+++ b/sdk/dotnet/CloudFront/Outputs/DistributionCacheBehavior.cs
@@ -15,7 +15,9 @@ namespace Pulumi.AwsNative.CloudFront.Outputs
/// You must create at least as many cache behaviors (including the default cache behavior) as you have origins if you want CloudFront to serve objects from all of the origins. Each cache behavior specifies the one origin from which you want CloudFront to get objects. If you have two origins and only the default cache behavior, the default cache behavior will cause CloudFront to get objects from one of the origins, but the other origin is never used.
/// For the current quota (formerly known as limit) on the number of cache behaviors that you can add to a distribution, see [Quotas](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/cloudfront-limits.html) in the *Amazon CloudFront Developer Guide*.
/// If you don't want to specify any cache behaviors, include only an empty ``CacheBehaviors`` element. Don't include an empty ``CacheBehavior`` element because this is invalid.
- /// To delete all cache behaviors in an exist
+ /// To delete all cache behaviors in an existing distribution, update the distribution configuration and include only an empty ``CacheBehaviors`` element.
+ /// To add, change, or remove one or more cache behaviors, update the distribution configuration and specify all of the cache behaviors that you want to include in the updated distribution.
+ /// For more information about cache behaviors, see [Cache Behavior Settings](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesCacheBehavior) in the *Amazon CloudFront Developer Guide*.
///
[OutputType]
public sealed class DistributionCacheBehavior
@@ -48,7 +50,7 @@ public sealed class DistributionCacheBehavior
public readonly bool? Compress;
///
/// This field is deprecated. We recommend that you use the ``DefaultTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.
- /// The default amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide
+ /// The default amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*.
///
public readonly double? DefaultTtl;
///
@@ -58,7 +60,9 @@ public sealed class DistributionCacheBehavior
///
/// This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field. For more information, see [Working with policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/working-with-policies.html) in the *Amazon CloudFront Developer Guide*.
/// If you want to include values in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.
- /// If you want to send values to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-r
+ /// If you want to send values to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) or [Using the managed origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-origin-request-policies.html) in the *Amazon CloudFront Developer Guide*.
+ /// A ``CacheBehavior`` must include either a ``CachePolicyId`` or ``ForwardedValues``. We recommend that you use a ``CachePolicyId``.
+ /// A complex type that specifies how CloudFront handles query strings, cookies, and HTTP headers.
///
public readonly Outputs.DistributionForwardedValues? ForwardedValues;
///
@@ -71,13 +75,13 @@ public sealed class DistributionCacheBehavior
public readonly ImmutableArray LambdaFunctionAssociations;
///
/// This field is deprecated. We recommend that you use the ``MaxTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.
- /// The maximum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.
+ /// The maximum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*.
///
public readonly double? MaxTtl;
///
/// This field is deprecated. We recommend that you use the ``MinTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.
/// The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*.
- /// You must specify ``0`` for ``MinTTL`` if you configure CloudFront to forward all headers to your origin (under ``He
+ /// You must specify ``0`` for ``MinTTL`` if you configure CloudFront to forward all headers to your origin (under ``Headers``, if you specify ``1`` for ``Quantity`` and ``*`` for ``Name``).
///
public readonly double? MinTtl;
///
@@ -125,7 +129,7 @@ public sealed class DistributionCacheBehavior
/// + ``https-only``: If a viewer sends an HTTP request, CloudFront returns an HTTP status code of 403 (Forbidden).
///
/// For more information about requiring the HTTPS protocol, see [Requiring HTTPS Between Viewers and CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https-viewers-to-cloudfront.html) in the *Amazon CloudFront Developer Guide*.
- /// The only way to guarantee that viewers retrieve an object that was fetched from the origin using HTTPS is never to use any other protocol
+ /// The only way to guarantee that viewers retrieve an object that was fetched from the origin using HTTPS is never to use any other protocol to fetch the object. If you have recently changed from HTTP to HTTPS, we recommend that you clear your objects' cache because cached objects are protocol agnostic. That means that an edge location will return an object from the cache regardless of whether the current request protocol matches the protocol used previously. For more information, see [Managing Cache Expiration](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*.
///
public readonly string ViewerProtocolPolicy;
diff --git a/sdk/dotnet/CloudFront/Outputs/DistributionConfig.cs b/sdk/dotnet/CloudFront/Outputs/DistributionConfig.cs
index 7f0cf4f7f4..d80c009216 100644
--- a/sdk/dotnet/CloudFront/Outputs/DistributionConfig.cs
+++ b/sdk/dotnet/CloudFront/Outputs/DistributionConfig.cs
@@ -52,7 +52,7 @@ public sealed class DistributionConfig
/// If you don't want to specify a default root object when you create a distribution, include an empty ``DefaultRootObject`` element.
/// To delete the default root object from an existing distribution, update the distribution configuration and include an empty ``DefaultRootObject`` element.
/// To replace the default root object, update the distribution configuration and specify the new object.
- /// For more information about the default root object, see [Creating a Default Root Object](https://docs.aws.amazon.com/AmazonCloudFront/latest/D
+ /// For more information about the default root object, see [Creating a Default Root Object](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/DefaultRootObject.html) in the *Amazon CloudFront Developer Guide*.
///
public readonly string? DefaultRootObject;
///
@@ -67,7 +67,13 @@ public sealed class DistributionConfig
public readonly string? HttpVersion;
///
/// If you want CloudFront to respond to IPv6 DNS requests with an IPv6 address for your distribution, specify ``true``. If you specify ``false``, CloudFront responds to IPv6 DNS requests with the DNS response code ``NOERROR`` and with no IP addresses. This allows viewers to submit a second request, for an IPv4 address for your distribution.
- /// In general, you should enable IPv6 if you have users on IPv6 networks who want to access your content. However, if you're using signed URLs or signed cookies to restrict access to your content, and if you're using a custom policy that includes the ``IpAddress`` parameter to restrict the IP addresses that can access your content, don't enable IPv6. If you want to restrict access to some content by IP address and not restrict access to other content (or restrict access but not by IP address), you can create two distributions. For more information, see [Creating a Signed URL Using a Custom Policy](https://docs.aws.amazon.com/AmazonCloudFront/latest/Devel
+ /// In general, you should enable IPv6 if you have users on IPv6 networks who want to access your content. However, if you're using signed URLs or signed cookies to restrict access to your content, and if you're using a custom policy that includes the ``IpAddress`` parameter to restrict the IP addresses that can access your content, don't enable IPv6. If you want to restrict access to some content by IP address and not restrict access to other content (or restrict access but not by IP address), you can create two distributions. For more information, see [Creating a Signed URL Using a Custom Policy](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-creating-signed-url-custom-policy.html) in the *Amazon CloudFront Developer Guide*.
+ /// If you're using an R53AWSIntlong alias resource record set to route traffic to your CloudFront distribution, you need to create a second alias resource record set when both of the following are true:
+ /// + You enable IPv6 for the distribution
+ /// + You're using alternate domain names in the URLs for your objects
+ ///
+ /// For more information, see [Routing Traffic to an Amazon CloudFront Web Distribution by Using Your Domain Name](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-cloudfront-distribution.html) in the *Developer Guide*.
+ /// If you created a CNAME resource record set, either with R53AWSIntlong or with another DNS service, you don't need to make any changes. A CNAME record will route traffic to your distribution regardless of the IP address format of the viewer request.
///
public readonly bool? Ipv6Enabled;
///
@@ -104,7 +110,7 @@ public sealed class DistributionConfig
public readonly Outputs.DistributionViewerCertificate? ViewerCertificate;
///
/// A unique identifier that specifies the WAF web ACL, if any, to associate with this distribution. To specify a web ACL created using the latest version of WAF, use the ACL ARN, for example ``arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/473e64fd-f30b-4765-81a0-62ad96dd167a``. To specify a web ACL created using WAF Classic, use the ACL ID, for example ``473e64fd-f30b-4765-81a0-62ad96dd167a``.
- /// WAF is a web application firewall that lets you monitor the HTTP and HTTPS requests that are forwarded to CloudFront, and lets you control access to your content. Based on conditions that you specify, such as the IP addresses that requests originate from or the values of query strings, CloudFront responds to requests either with the requested content or with an HTTP 403 status code (Forbidden). You can also configure CloudFront to return a custom error page when a request is blocked. For more information about WAF, see the [Developer Guide](https://docs.aws.amazon.com/waf/latest
+ /// WAF is a web application firewall that lets you monitor the HTTP and HTTPS requests that are forwarded to CloudFront, and lets you control access to your content. Based on conditions that you specify, such as the IP addresses that requests originate from or the values of query strings, CloudFront responds to requests either with the requested content or with an HTTP 403 status code (Forbidden). You can also configure CloudFront to return a custom error page when a request is blocked. For more information about WAF, see the [Developer Guide](https://docs.aws.amazon.com/waf/latest/developerguide/what-is-aws-waf.html).
///
public readonly string? WebAclId;
diff --git a/sdk/dotnet/CloudFront/Outputs/DistributionCookies.cs b/sdk/dotnet/CloudFront/Outputs/DistributionCookies.cs
index 07778445cd..4749ecf87a 100644
--- a/sdk/dotnet/CloudFront/Outputs/DistributionCookies.cs
+++ b/sdk/dotnet/CloudFront/Outputs/DistributionCookies.cs
@@ -14,7 +14,7 @@ namespace Pulumi.AwsNative.CloudFront.Outputs
/// This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.
/// If you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.
/// If you want to send cookies to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.
- /// A complex type that specifies whether you want CloudFront to forward cookies to the origin and, if so, which ones. For more information about forwarding cookies to the origin, see [How CloudFront Forwards, Caches, and Logs C
+ /// A complex type that specifies whether you want CloudFront to forward cookies to the origin and, if so, which ones. For more information about forwarding cookies to the origin, see [How CloudFront Forwards, Caches, and Logs Cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Cookies.html) in the *Amazon CloudFront Developer Guide*.
///
[OutputType]
public sealed class DistributionCookies
@@ -24,14 +24,16 @@ public sealed class DistributionCookies
/// If you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.
/// If you want to send cookies to the origin but not include them in the cache key, use origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.
/// Specifies which cookies to forward to the origin for this cache behavior: all, none, or the list of cookies specified in the ``WhitelistedNames`` complex type.
- /// Amazon S3 doesn't process cookies. When the cache behavior is forw
+ /// Amazon S3 doesn't process cookies. When the cache behavior is forwarding requests to an Amazon S3 origin, specify none for the ``Forward`` element.
///
public readonly string Forward;
///
/// This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.
/// If you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.
/// If you want to send cookies to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.
- /// Required if you specify ``whitelist`` for the value of ``Forward``. A complex type that specifies how many different cookies you want CloudFront to forward to the origin for this cache behavior and, if you want to forward se
+ /// Required if you specify ``whitelist`` for the value of ``Forward``. A complex type that specifies how many different cookies you want CloudFront to forward to the origin for this cache behavior and, if you want to forward selected cookies, the names of those cookies.
+ /// If you specify ``all`` or ``none`` for the value of ``Forward``, omit ``WhitelistedNames``. If you change the value of ``Forward`` from ``whitelist`` to ``all`` or ``none`` and you don't delete the ``WhitelistedNames`` element and its child elements, CloudFront deletes them automatically.
+ /// For the current limit on the number of cookie names that you can whitelist for each cache behavior, see [CloudFront Limits](https://docs.aws.amazon.com/general/latest/gr/xrefaws_service_limits.html#limits_cloudfront) in the *General Reference*.
///
public readonly ImmutableArray WhitelistedNames;
diff --git a/sdk/dotnet/CloudFront/Outputs/DistributionCustomErrorResponse.cs b/sdk/dotnet/CloudFront/Outputs/DistributionCustomErrorResponse.cs
index 26874ab42a..32a2bc2917 100644
--- a/sdk/dotnet/CloudFront/Outputs/DistributionCustomErrorResponse.cs
+++ b/sdk/dotnet/CloudFront/Outputs/DistributionCustomErrorResponse.cs
@@ -44,7 +44,7 @@ public sealed class DistributionCustomErrorResponse
/// + The value of ``TargetOriginId`` specifies the value of the ``ID`` element for the origin that contains your custom error pages.
///
/// If you specify a value for ``ResponsePagePath``, you must also specify a value for ``ResponseCode``.
- /// We recommend
+ /// We recommend that you store custom error pages in an Amazon S3 bucket. If you store custom error pages on an HTTP server and the server starts to return 5xx errors, CloudFront can't get the files that you want to return to viewers because the origin server is unavailable.
///
public readonly string? ResponsePagePath;
diff --git a/sdk/dotnet/CloudFront/Outputs/DistributionDefaultCacheBehavior.cs b/sdk/dotnet/CloudFront/Outputs/DistributionDefaultCacheBehavior.cs
index e8c051ea4b..4c38964420 100644
--- a/sdk/dotnet/CloudFront/Outputs/DistributionDefaultCacheBehavior.cs
+++ b/sdk/dotnet/CloudFront/Outputs/DistributionDefaultCacheBehavior.cs
@@ -44,7 +44,7 @@ public sealed class DistributionDefaultCacheBehavior
public readonly bool? Compress;
///
/// This field is deprecated. We recommend that you use the ``DefaultTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.
- /// The default amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide
+ /// The default amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*.
///
public readonly double? DefaultTtl;
///
@@ -54,7 +54,9 @@ public sealed class DistributionDefaultCacheBehavior
///
/// This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field. For more information, see [Working with policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/working-with-policies.html) in the *Amazon CloudFront Developer Guide*.
/// If you want to include values in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.
- /// If you want to send values to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-r
+ /// If you want to send values to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) or [Using the managed origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-origin-request-policies.html) in the *Amazon CloudFront Developer Guide*.
+ /// A ``DefaultCacheBehavior`` must include either a ``CachePolicyId`` or ``ForwardedValues``. We recommend that you use a ``CachePolicyId``.
+ /// A complex type that specifies how CloudFront handles query strings, cookies, and HTTP headers.
///
public readonly Outputs.DistributionForwardedValues? ForwardedValues;
///
@@ -67,13 +69,13 @@ public sealed class DistributionDefaultCacheBehavior
public readonly ImmutableArray LambdaFunctionAssociations;
///
/// This field is deprecated. We recommend that you use the ``MaxTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.
- /// The maximum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.
+ /// The maximum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as ``Cache-Control max-age``, ``Cache-Control s-maxage``, and ``Expires`` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*.
///
public readonly double? MaxTtl;
///
/// This field is deprecated. We recommend that you use the ``MinTTL`` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide*.
/// The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*.
- /// You must specify ``0`` for ``MinTTL`` if you configure CloudFront to forward all headers to your origin (under ``He
+ /// You must specify ``0`` for ``MinTTL`` if you configure CloudFront to forward all headers to your origin (under ``Headers``, if you specify ``1`` for ``Quantity`` and ``*`` for ``Name``).
///
public readonly double? MinTtl;
///
@@ -114,7 +116,7 @@ public sealed class DistributionDefaultCacheBehavior
/// + ``https-only``: If a viewer sends an HTTP request, CloudFront returns an HTTP status code of 403 (Forbidden).
///
/// For more information about requiring the HTTPS protocol, see [Requiring HTTPS Between Viewers and CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https-viewers-to-cloudfront.html) in the *Amazon CloudFront Developer Guide*.
- /// The only way to guarantee that viewers retrieve an object that was fetched from the origin using HTTPS is never to use any other protocol
+ /// The only way to guarantee that viewers retrieve an object that was fetched from the origin using HTTPS is never to use any other protocol to fetch the object. If you have recently changed from HTTP to HTTPS, we recommend that you clear your objects' cache because cached objects are protocol agnostic. That means that an edge location will return an object from the cache regardless of whether the current request protocol matches the protocol used previously. For more information, see [Managing Cache Expiration](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*.
///
public readonly string ViewerProtocolPolicy;
diff --git a/sdk/dotnet/CloudFront/Outputs/DistributionForwardedValues.cs b/sdk/dotnet/CloudFront/Outputs/DistributionForwardedValues.cs
index 058f9b09cb..15185750ae 100644
--- a/sdk/dotnet/CloudFront/Outputs/DistributionForwardedValues.cs
+++ b/sdk/dotnet/CloudFront/Outputs/DistributionForwardedValues.cs
@@ -23,21 +23,26 @@ public sealed class DistributionForwardedValues
/// This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.
/// If you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.
/// If you want to send cookies to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.
- /// A complex type that specifies whether you want CloudFront to forward cookies to the origin and, if so, which ones. For more information about forwarding cookies to the origin, see [How CloudFront Forwards, Caches, and Logs C
+ /// A complex type that specifies whether you want CloudFront to forward cookies to the origin and, if so, which ones. For more information about forwarding cookies to the origin, see [How CloudFront Forwards, Caches, and Logs Cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Cookies.html) in the *Amazon CloudFront Developer Guide*.
///
public readonly Outputs.DistributionCookies? Cookies;
///
/// This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.
/// If you want to include headers in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.
/// If you want to send headers to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.
- /// A complex type that specifies the ``Headers``, if any, that you want CloudFront to forward to the origin for this cache behavior (whitelisted headers). For the headers that you specify, CloudFront also caches separate versio
+ /// A complex type that specifies the ``Headers``, if any, that you want CloudFront to forward to the origin for this cache behavior (whitelisted headers). For the headers that you specify, CloudFront also caches separate versions of a specified object that is based on the header values in viewer requests.
+ /// For more information, see [Caching Content Based on Request Headers](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/header-caching.html) in the *Amazon CloudFront Developer Guide*.
///
public readonly ImmutableArray Headers;
///
/// This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.
/// If you want to include query strings in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide*.
/// If you want to send query strings to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide*.
- /// Indicates whether you want CloudFront to forward query strings to the origin that is associated with this cache behavior and cache based on the query string parameters. CloudFront behavior depends on the value of
+ /// Indicates whether you want CloudFront to forward query strings to the origin that is associated with this cache behavior and cache based on the query string parameters. CloudFront behavior depends on the value of ``QueryString`` and on the values that you specify for ``QueryStringCacheKeys``, if any:
+ /// If you specify true for ``QueryString`` and you don't specify any values for ``QueryStringCacheKeys``, CloudFront forwards all query string parameters to the origin and caches based on all query string parameters. Depending on how many query string parameters and values you have, this can adversely affect performance because CloudFront must forward more requests to the origin.
+ /// If you specify true for ``QueryString`` and you specify one or more values for ``QueryStringCacheKeys``, CloudFront forwards all query string parameters to the origin, but it only caches based on the query string parameters that you specify.
+ /// If you specify false for ``QueryString``, CloudFront doesn't forward any query string parameters to the origin, and doesn't cache based on query string parameters.
+ /// For more information, see [Configuring CloudFront to Cache Based on Query String Parameters](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/QueryStringParameters.html) in the *Amazon CloudFront Developer Guide*.
///
public readonly bool QueryString;
///
diff --git a/sdk/dotnet/CloudFront/Outputs/DistributionS3OriginConfig.cs b/sdk/dotnet/CloudFront/Outputs/DistributionS3OriginConfig.cs
index e427267558..cd7bb82c07 100644
--- a/sdk/dotnet/CloudFront/Outputs/DistributionS3OriginConfig.cs
+++ b/sdk/dotnet/CloudFront/Outputs/DistributionS3OriginConfig.cs
@@ -23,7 +23,7 @@ public sealed class DistributionS3OriginConfig
/// If you want viewers to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty ``OriginAccessIdentity`` element.
/// To delete the origin access identity from an existing distribution, update the distribution configuration and include an empty ``OriginAccessIdentity`` element.
/// To replace the origin access identity, update the distribution configuration and specify the new origin access identity.
- /// For more information about the origin access identity, see [Serving Private Content through CloudFront](https://d
+ /// For more information about the origin access identity, see [Serving Private Content through CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) in the *Amazon CloudFront Developer Guide*.
///
public readonly string? OriginAccessIdentity;
diff --git a/sdk/dotnet/CloudFront/Outputs/DistributionViewerCertificate.cs b/sdk/dotnet/CloudFront/Outputs/DistributionViewerCertificate.cs
index 998fb09653..b1fae8b9c9 100644
--- a/sdk/dotnet/CloudFront/Outputs/DistributionViewerCertificate.cs
+++ b/sdk/dotnet/CloudFront/Outputs/DistributionViewerCertificate.cs
@@ -15,7 +15,17 @@ namespace Pulumi.AwsNative.CloudFront.Outputs
/// If the distribution doesn't use ``Aliases`` (also known as alternate domain names or CNAMEs)—that is, if the distribution uses the CloudFront domain name such as ``d111111abcdef8.cloudfront.net``—set ``CloudFrontDefaultCertificate`` to ``true`` and leave all other fields empty.
/// If the distribution uses ``Aliases`` (alternate domain names or CNAMEs), use the fields in this type to specify the following settings:
/// + Which viewers the distribution accepts HTTPS connections from: only viewers that support [server name indication (SNI)](https://docs.aws.amazon.com/https://en.wikipedia.org/wiki/Server_Name_Indication) (recommended), or all viewers including those that don't support SNI.
- /// + To accept HTTPS connections from only viewers that support SNI, set ``SSLSupportMethod`` to ``sni-only``. This is recommended. Most browsers and clients support SNI. (In CloudFormation, the field n
+ /// + To accept HTTPS connections from only viewers that support SNI, set ``SSLSupportMethod`` to ``sni-only``. This is recommended. Most browsers and clients support SNI. (In CloudFormation, the field name is ``SslSupportMethod``. Note the different capitalization.)
+ /// + To accept HTTPS connections from all viewers, including those that don't support SNI, set ``SSLSupportMethod`` to ``vip``. This is not recommended, and results in additional monthly charges from CloudFront. (In CloudFormation, the field name is ``SslSupportMethod``. Note the different capitalization.)
+ ///
+ /// + The minimum SSL/TLS protocol version that the distribution can use to communicate with viewers. To specify a minimum version, choose a value for ``MinimumProtocolVersion``. For more information, see [Security Policy](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValues-security-policy) in the *Amazon CloudFront Developer Guide*.
+ /// + The location of the SSL/TLS certificate, [(ACM)](https://docs.aws.amazon.com/acm/latest/userguide/acm-overview.html) (recommended) or [(IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html). You specify the location by setting a value in one of the following fields (not both):
+ /// + ``ACMCertificateArn`` (In CloudFormation, this field name is ``AcmCertificateArn``. Note the different capitalization.)
+ /// + ``IAMCertificateId`` (In CloudFormation, this field name is ``IamCertificateId``. Note the different capitalization.)
+ ///
+ ///
+ /// All distributions support HTTPS connections from viewers. To require viewers to use HTTPS only, or to redirect them from HTTP to HTTPS, use ``ViewerProtocolPolicy`` in the ``CacheBehavior`` or ``DefaultCacheBehavior``. To specify how CloudFront should use SSL/TLS to communicate with your custom origin, use ``CustomOriginConfig``.
+ /// For more information, see [Using HTTPS with CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https.html) and [Using Alternate Domain Names and HTTPS](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https-alternate-domain-names.html) in the *Amazon CloudFront Developer Guide*.
///
[OutputType]
public sealed class DistributionViewerCertificate
@@ -47,7 +57,8 @@ public sealed class DistributionViewerCertificate
///
/// For more information, see [Security Policy](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValues-security-policy) and [Supported Protocols and Ciphers Between Viewers and CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/secure-connections-supported-viewer-protocols-ciphers.html#secure-connections-supported-ciphers) in the *Amazon CloudFront Developer Guide*.
/// On the CloudFront console, this setting is called *Security Policy*.
- /// When you're using SNI only (you set ``SSLSupportMethod`` to ``sni-onl
+ /// When you're using SNI only (you set ``SSLSupportMethod`` to ``sni-only``), you must specify ``TLSv1`` or higher. (In CloudFormation, the field name is ``SslSupportMethod``. Note the different capitalization.)
+ /// If the distribution uses the CloudFront domain name such as ``d111111abcdef8.cloudfront.net`` (you set ``CloudFrontDefaultCertificate`` to ``true``), CloudFront automatically sets the security policy to ``TLSv1`` regardless of the value that you set here.
///
public readonly string? MinimumProtocolVersion;
///
@@ -56,6 +67,8 @@ public sealed class DistributionViewerCertificate
/// + ``sni-only`` – The distribution accepts HTTPS connections from only viewers that support [server name indication (SNI)](https://docs.aws.amazon.com/https://en.wikipedia.org/wiki/Server_Name_Indication). This is recommended. Most browsers and clients support SNI.
/// + ``vip`` – The distribution accepts HTTPS connections from all viewers including those that don't support SNI. This is not recommended, and results in additional monthly charges from CloudFront.
/// + ``static-ip`` - Do not specify this value unless your distribution has been enabled for this feature by the CloudFront team. If you have a use case that requires static IP addresses for a distribution, contact CloudFront through the [Center](https://docs.aws.amazon.com/support/home).
+ ///
+ /// If the distribution uses the CloudFront domain name such as ``d111111abcdef8.cloudfront.net``, don't set a value for this field.
///
public readonly string? SslSupportMethod;
diff --git a/sdk/dotnet/CodeArtifact/Enums.cs b/sdk/dotnet/CodeArtifact/Enums.cs
new file mode 100644
index 0000000000..14a3c5e5da
--- /dev/null
+++ b/sdk/dotnet/CodeArtifact/Enums.cs
@@ -0,0 +1,39 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.ComponentModel;
+using Pulumi;
+
+namespace Pulumi.AwsNative.CodeArtifact
+{
+ [EnumType]
+ public readonly struct PackageGroupRestrictionTypeRestrictionMode : IEquatable
+ {
+ private readonly string _value;
+
+ private PackageGroupRestrictionTypeRestrictionMode(string value)
+ {
+ _value = value ?? throw new ArgumentNullException(nameof(value));
+ }
+
+ public static PackageGroupRestrictionTypeRestrictionMode Allow { get; } = new PackageGroupRestrictionTypeRestrictionMode("ALLOW");
+ public static PackageGroupRestrictionTypeRestrictionMode Block { get; } = new PackageGroupRestrictionTypeRestrictionMode("BLOCK");
+ public static PackageGroupRestrictionTypeRestrictionMode AllowSpecificRepositories { get; } = new PackageGroupRestrictionTypeRestrictionMode("ALLOW_SPECIFIC_REPOSITORIES");
+ public static PackageGroupRestrictionTypeRestrictionMode Inherit { get; } = new PackageGroupRestrictionTypeRestrictionMode("INHERIT");
+
+ public static bool operator ==(PackageGroupRestrictionTypeRestrictionMode left, PackageGroupRestrictionTypeRestrictionMode right) => left.Equals(right);
+ public static bool operator !=(PackageGroupRestrictionTypeRestrictionMode left, PackageGroupRestrictionTypeRestrictionMode right) => !left.Equals(right);
+
+ public static explicit operator string(PackageGroupRestrictionTypeRestrictionMode value) => value._value;
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override bool Equals(object? obj) => obj is PackageGroupRestrictionTypeRestrictionMode other && Equals(other);
+ public bool Equals(PackageGroupRestrictionTypeRestrictionMode other) => string.Equals(_value, other._value, StringComparison.Ordinal);
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override int GetHashCode() => _value?.GetHashCode() ?? 0;
+
+ public override string ToString() => _value;
+ }
+}
diff --git a/sdk/dotnet/CodeArtifact/GetPackageGroup.cs b/sdk/dotnet/CodeArtifact/GetPackageGroup.cs
new file mode 100644
index 0000000000..adc795311b
--- /dev/null
+++ b/sdk/dotnet/CodeArtifact/GetPackageGroup.cs
@@ -0,0 +1,107 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.CodeArtifact
+{
+ public static class GetPackageGroup
+ {
+ ///
+ /// The resource schema to create a CodeArtifact package group.
+ ///
+ public static Task InvokeAsync(GetPackageGroupArgs args, InvokeOptions? options = null)
+ => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:codeartifact:getPackageGroup", args ?? new GetPackageGroupArgs(), options.WithDefaults());
+
+ ///
+ /// The resource schema to create a CodeArtifact package group.
+ ///
+ public static Output Invoke(GetPackageGroupInvokeArgs args, InvokeOptions? options = null)
+ => global::Pulumi.Deployment.Instance.Invoke("aws-native:codeartifact:getPackageGroup", args ?? new GetPackageGroupInvokeArgs(), options.WithDefaults());
+ }
+
+
+ public sealed class GetPackageGroupArgs : global::Pulumi.InvokeArgs
+ {
+ ///
+ /// The ARN of the package group.
+ ///
+ [Input("arn", required: true)]
+ public string Arn { get; set; } = null!;
+
+ public GetPackageGroupArgs()
+ {
+ }
+ public static new GetPackageGroupArgs Empty => new GetPackageGroupArgs();
+ }
+
+ public sealed class GetPackageGroupInvokeArgs : global::Pulumi.InvokeArgs
+ {
+ ///
+ /// The ARN of the package group.
+ ///
+ [Input("arn", required: true)]
+ public Input Arn { get; set; } = null!;
+
+ public GetPackageGroupInvokeArgs()
+ {
+ }
+ public static new GetPackageGroupInvokeArgs Empty => new GetPackageGroupInvokeArgs();
+ }
+
+
+ [OutputType]
+ public sealed class GetPackageGroupResult
+ {
+ ///
+ /// The ARN of the package group.
+ ///
+ public readonly string? Arn;
+ ///
+ /// The contact info of the package group.
+ ///
+ public readonly string? ContactInfo;
+ ///
+ /// The text description of the package group.
+ ///
+ public readonly string? Description;
+ ///
+ /// The 12-digit account ID of the AWS account that owns the domain.
+ ///
+ public readonly string? DomainOwner;
+ ///
+ /// The package origin configuration of the package group.
+ ///
+ public readonly Outputs.PackageGroupOriginConfiguration? OriginConfiguration;
+ ///
+ /// An array of key-value pairs to apply to the package group.
+ ///
+ public readonly ImmutableArray Tags;
+
+ [OutputConstructor]
+ private GetPackageGroupResult(
+ string? arn,
+
+ string? contactInfo,
+
+ string? description,
+
+ string? domainOwner,
+
+ Outputs.PackageGroupOriginConfiguration? originConfiguration,
+
+ ImmutableArray tags)
+ {
+ Arn = arn;
+ ContactInfo = contactInfo;
+ Description = description;
+ DomainOwner = domainOwner;
+ OriginConfiguration = originConfiguration;
+ Tags = tags;
+ }
+ }
+}
diff --git a/sdk/dotnet/CodeArtifact/Inputs/PackageGroupOriginConfigurationArgs.cs b/sdk/dotnet/CodeArtifact/Inputs/PackageGroupOriginConfigurationArgs.cs
new file mode 100644
index 0000000000..475a545428
--- /dev/null
+++ b/sdk/dotnet/CodeArtifact/Inputs/PackageGroupOriginConfigurationArgs.cs
@@ -0,0 +1,26 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.CodeArtifact.Inputs
+{
+
+ public sealed class PackageGroupOriginConfigurationArgs : global::Pulumi.ResourceArgs
+ {
+ ///
+ /// The origin configuration that is applied to the package group.
+ ///
+ [Input("restrictions", required: true)]
+ public Input Restrictions { get; set; } = null!;
+
+ public PackageGroupOriginConfigurationArgs()
+ {
+ }
+ public static new PackageGroupOriginConfigurationArgs Empty => new PackageGroupOriginConfigurationArgs();
+ }
+}
diff --git a/sdk/dotnet/CodeArtifact/Inputs/PackageGroupRestrictionTypeArgs.cs b/sdk/dotnet/CodeArtifact/Inputs/PackageGroupRestrictionTypeArgs.cs
new file mode 100644
index 0000000000..68f5cdfd2c
--- /dev/null
+++ b/sdk/dotnet/CodeArtifact/Inputs/PackageGroupRestrictionTypeArgs.cs
@@ -0,0 +1,31 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.CodeArtifact.Inputs
+{
+
+ public sealed class PackageGroupRestrictionTypeArgs : global::Pulumi.ResourceArgs
+ {
+ [Input("repositories")]
+ private InputList? _repositories;
+ public InputList Repositories
+ {
+ get => _repositories ?? (_repositories = new InputList());
+ set => _repositories = value;
+ }
+
+ [Input("restrictionMode", required: true)]
+ public Input RestrictionMode { get; set; } = null!;
+
+ public PackageGroupRestrictionTypeArgs()
+ {
+ }
+ public static new PackageGroupRestrictionTypeArgs Empty => new PackageGroupRestrictionTypeArgs();
+ }
+}
diff --git a/sdk/dotnet/CodeArtifact/Inputs/PackageGroupRestrictionsArgs.cs b/sdk/dotnet/CodeArtifact/Inputs/PackageGroupRestrictionsArgs.cs
new file mode 100644
index 0000000000..e0bdf0a318
--- /dev/null
+++ b/sdk/dotnet/CodeArtifact/Inputs/PackageGroupRestrictionsArgs.cs
@@ -0,0 +1,38 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.CodeArtifact.Inputs
+{
+
+ public sealed class PackageGroupRestrictionsArgs : global::Pulumi.ResourceArgs
+ {
+ ///
+ /// The external upstream restriction determines if new package versions can be ingested or retained from external connections.
+ ///
+ [Input("externalUpstream")]
+ public Input? ExternalUpstream { get; set; }
+
+ ///
+ /// The internal upstream restriction determines if new package versions can be ingested or retained from upstream repositories.
+ ///
+ [Input("internalUpstream")]
+ public Input? InternalUpstream { get; set; }
+
+ ///
+ /// The publish restriction determines if new package versions can be published.
+ ///
+ [Input("publish")]
+ public Input? Publish { get; set; }
+
+ public PackageGroupRestrictionsArgs()
+ {
+ }
+ public static new PackageGroupRestrictionsArgs Empty => new PackageGroupRestrictionsArgs();
+ }
+}
diff --git a/sdk/dotnet/CodeArtifact/Outputs/PackageGroupOriginConfiguration.cs b/sdk/dotnet/CodeArtifact/Outputs/PackageGroupOriginConfiguration.cs
new file mode 100644
index 0000000000..7ff16a981e
--- /dev/null
+++ b/sdk/dotnet/CodeArtifact/Outputs/PackageGroupOriginConfiguration.cs
@@ -0,0 +1,27 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.CodeArtifact.Outputs
+{
+
+ [OutputType]
+ public sealed class PackageGroupOriginConfiguration
+ {
+ ///
+ /// The origin configuration that is applied to the package group.
+ ///
+ public readonly Outputs.PackageGroupRestrictions Restrictions;
+
+ [OutputConstructor]
+ private PackageGroupOriginConfiguration(Outputs.PackageGroupRestrictions restrictions)
+ {
+ Restrictions = restrictions;
+ }
+ }
+}
diff --git a/sdk/dotnet/CodeArtifact/Outputs/PackageGroupRestrictionType.cs b/sdk/dotnet/CodeArtifact/Outputs/PackageGroupRestrictionType.cs
new file mode 100644
index 0000000000..d5c5d4b873
--- /dev/null
+++ b/sdk/dotnet/CodeArtifact/Outputs/PackageGroupRestrictionType.cs
@@ -0,0 +1,29 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.CodeArtifact.Outputs
+{
+
+ [OutputType]
+ public sealed class PackageGroupRestrictionType
+ {
+ public readonly ImmutableArray Repositories;
+ public readonly Pulumi.AwsNative.CodeArtifact.PackageGroupRestrictionTypeRestrictionMode RestrictionMode;
+
+ [OutputConstructor]
+ private PackageGroupRestrictionType(
+ ImmutableArray repositories,
+
+ Pulumi.AwsNative.CodeArtifact.PackageGroupRestrictionTypeRestrictionMode restrictionMode)
+ {
+ Repositories = repositories;
+ RestrictionMode = restrictionMode;
+ }
+ }
+}
diff --git a/sdk/dotnet/CodeArtifact/Outputs/PackageGroupRestrictions.cs b/sdk/dotnet/CodeArtifact/Outputs/PackageGroupRestrictions.cs
new file mode 100644
index 0000000000..72e57cdab3
--- /dev/null
+++ b/sdk/dotnet/CodeArtifact/Outputs/PackageGroupRestrictions.cs
@@ -0,0 +1,42 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.CodeArtifact.Outputs
+{
+
+ [OutputType]
+ public sealed class PackageGroupRestrictions
+ {
+ ///
+ /// The external upstream restriction determines if new package versions can be ingested or retained from external connections.
+ ///
+ public readonly Outputs.PackageGroupRestrictionType? ExternalUpstream;
+ ///
+ /// The internal upstream restriction determines if new package versions can be ingested or retained from upstream repositories.
+ ///
+ public readonly Outputs.PackageGroupRestrictionType? InternalUpstream;
+ ///
+ /// The publish restriction determines if new package versions can be published.
+ ///
+ public readonly Outputs.PackageGroupRestrictionType? Publish;
+
+ [OutputConstructor]
+ private PackageGroupRestrictions(
+ Outputs.PackageGroupRestrictionType? externalUpstream,
+
+ Outputs.PackageGroupRestrictionType? internalUpstream,
+
+ Outputs.PackageGroupRestrictionType? publish)
+ {
+ ExternalUpstream = externalUpstream;
+ InternalUpstream = internalUpstream;
+ Publish = publish;
+ }
+ }
+}
diff --git a/sdk/dotnet/CodeArtifact/PackageGroup.cs b/sdk/dotnet/CodeArtifact/PackageGroup.cs
new file mode 100644
index 0000000000..99f0889647
--- /dev/null
+++ b/sdk/dotnet/CodeArtifact/PackageGroup.cs
@@ -0,0 +1,169 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.CodeArtifact
+{
+ ///
+ /// The resource schema to create a CodeArtifact package group.
+ ///
+ [AwsNativeResourceType("aws-native:codeartifact:PackageGroup")]
+ public partial class PackageGroup : global::Pulumi.CustomResource
+ {
+ ///
+ /// The ARN of the package group.
+ ///
+ [Output("arn")]
+ public Output Arn { get; private set; } = null!;
+
+ ///
+ /// The contact info of the package group.
+ ///
+ [Output("contactInfo")]
+ public Output ContactInfo { get; private set; } = null!;
+
+ ///
+ /// The text description of the package group.
+ ///
+ [Output("description")]
+ public Output Description { get; private set; } = null!;
+
+ ///
+ /// The name of the domain that contains the package group.
+ ///
+ [Output("domainName")]
+ public Output DomainName { get; private set; } = null!;
+
+ ///
+ /// The 12-digit account ID of the AWS account that owns the domain.
+ ///
+ [Output("domainOwner")]
+ public Output DomainOwner { get; private set; } = null!;
+
+ ///
+ /// The package origin configuration of the package group.
+ ///
+ [Output("originConfiguration")]
+ public Output OriginConfiguration { get; private set; } = null!;
+
+ ///
+ /// The package group pattern that is used to gather packages.
+ ///
+ [Output("pattern")]
+ public Output Pattern { get; private set; } = null!;
+
+ ///
+ /// An array of key-value pairs to apply to the package group.
+ ///
+ [Output("tags")]
+ public Output> Tags { get; private set; } = null!;
+
+
+ ///
+ /// Create a PackageGroup resource with the given unique name, arguments, and options.
+ ///
+ ///
+ /// The unique name of the resource
+ /// The arguments used to populate this resource's properties
+ /// A bag of options that control this resource's behavior
+ public PackageGroup(string name, PackageGroupArgs args, CustomResourceOptions? options = null)
+ : base("aws-native:codeartifact:PackageGroup", name, args ?? new PackageGroupArgs(), MakeResourceOptions(options, ""))
+ {
+ }
+
+ private PackageGroup(string name, Input id, CustomResourceOptions? options = null)
+ : base("aws-native:codeartifact:PackageGroup", name, null, MakeResourceOptions(options, id))
+ {
+ }
+
+ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id)
+ {
+ var defaultOptions = new CustomResourceOptions
+ {
+ Version = Utilities.Version,
+ ReplaceOnChanges =
+ {
+ "domainName",
+ "pattern",
+ },
+ };
+ var merged = CustomResourceOptions.Merge(defaultOptions, options);
+ // Override the ID if one was specified for consistency with other language SDKs.
+ merged.Id = id ?? merged.Id;
+ return merged;
+ }
+ ///
+ /// Get an existing PackageGroup resource's state with the given name, ID, and optional extra
+ /// properties used to qualify the lookup.
+ ///
+ ///
+ /// The unique name of the resulting resource.
+ /// The unique provider ID of the resource to lookup.
+ /// A bag of options that control this resource's behavior
+ public static PackageGroup Get(string name, Input id, CustomResourceOptions? options = null)
+ {
+ return new PackageGroup(name, id, options);
+ }
+ }
+
+ public sealed class PackageGroupArgs : global::Pulumi.ResourceArgs
+ {
+ ///
+ /// The contact info of the package group.
+ ///
+ [Input("contactInfo")]
+ public Input? ContactInfo { get; set; }
+
+ ///
+ /// The text description of the package group.
+ ///
+ [Input("description")]
+ public Input? Description { get; set; }
+
+ ///
+ /// The name of the domain that contains the package group.
+ ///
+ [Input("domainName", required: true)]
+ public Input DomainName { get; set; } = null!;
+
+ ///
+ /// The 12-digit account ID of the AWS account that owns the domain.
+ ///
+ [Input("domainOwner")]
+ public Input? DomainOwner { get; set; }
+
+ ///
+ /// The package origin configuration of the package group.
+ ///
+ [Input("originConfiguration")]
+ public Input? OriginConfiguration { get; set; }
+
+ ///
+ /// The package group pattern that is used to gather packages.
+ ///
+ [Input("pattern", required: true)]
+ public Input Pattern { get; set; } = null!;
+
+ [Input("tags")]
+ private InputList? _tags;
+
+ ///
+ /// An array of key-value pairs to apply to the package group.
+ ///
+ public InputList Tags
+ {
+ get => _tags ?? (_tags = new InputList());
+ set => _tags = value;
+ }
+
+ public PackageGroupArgs()
+ {
+ }
+ public static new PackageGroupArgs Empty => new PackageGroupArgs();
+ }
+}
diff --git a/sdk/dotnet/CodeConnections/Connection.cs b/sdk/dotnet/CodeConnections/Connection.cs
new file mode 100644
index 0000000000..4dbcf71346
--- /dev/null
+++ b/sdk/dotnet/CodeConnections/Connection.cs
@@ -0,0 +1,146 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.CodeConnections
+{
+ ///
+ /// Schema for AWS::CodeConnections::Connection resource which can be used to connect external source providers with other AWS services (i.e. AWS CodePipeline)
+ ///
+ [AwsNativeResourceType("aws-native:codeconnections:Connection")]
+ public partial class Connection : global::Pulumi.CustomResource
+ {
+ ///
+ /// The Amazon Resource Name (ARN) of the connection. The ARN is used as the connection reference when the connection is shared between AWS services.
+ ///
+ [Output("connectionArn")]
+ public Output ConnectionArn { get; private set; } = null!;
+
+ ///
+ /// The name of the connection. Connection names must be unique in an AWS user account.
+ ///
+ [Output("connectionName")]
+ public Output ConnectionName { get; private set; } = null!;
+
+ ///
+ /// The current status of the connection.
+ ///
+ [Output("connectionStatus")]
+ public Output ConnectionStatus { get; private set; } = null!;
+
+ ///
+ /// The host arn configured to represent the infrastructure where your third-party provider is installed. You must specify either a ProviderType or a HostArn.
+ ///
+ [Output("hostArn")]
+ public Output HostArn { get; private set; } = null!;
+
+ ///
+ /// The name of the external provider where your third-party code repository is configured. For Bitbucket, this is the account ID of the owner of the Bitbucket repository.
+ ///
+ [Output("ownerAccountId")]
+ public Output OwnerAccountId { get; private set; } = null!;
+
+ ///
+ /// The name of the external provider where your third-party code repository is configured. You must specify either a ProviderType or a HostArn.
+ ///
+ [Output("providerType")]
+ public Output ProviderType { get; private set; } = null!;
+
+ ///
+ /// Specifies the tags applied to a connection.
+ ///
+ [Output("tags")]
+ public Output> Tags { get; private set; } = null!;
+
+
+ ///
+ /// Create a Connection resource with the given unique name, arguments, and options.
+ ///
+ ///
+ /// The unique name of the resource
+ /// The arguments used to populate this resource's properties
+ /// A bag of options that control this resource's behavior
+ public Connection(string name, ConnectionArgs? args = null, CustomResourceOptions? options = null)
+ : base("aws-native:codeconnections:Connection", name, args ?? new ConnectionArgs(), MakeResourceOptions(options, ""))
+ {
+ }
+
+ private Connection(string name, Input id, CustomResourceOptions? options = null)
+ : base("aws-native:codeconnections:Connection", name, null, MakeResourceOptions(options, id))
+ {
+ }
+
+ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id)
+ {
+ var defaultOptions = new CustomResourceOptions
+ {
+ Version = Utilities.Version,
+ ReplaceOnChanges =
+ {
+ "connectionName",
+ "hostArn",
+ "providerType",
+ },
+ };
+ var merged = CustomResourceOptions.Merge(defaultOptions, options);
+ // Override the ID if one was specified for consistency with other language SDKs.
+ merged.Id = id ?? merged.Id;
+ return merged;
+ }
+ ///
+ /// Get an existing Connection resource's state with the given name, ID, and optional extra
+ /// properties used to qualify the lookup.
+ ///
+ ///
+ /// The unique name of the resulting resource.
+ /// The unique provider ID of the resource to lookup.
+ /// A bag of options that control this resource's behavior
+ public static Connection Get(string name, Input id, CustomResourceOptions? options = null)
+ {
+ return new Connection(name, id, options);
+ }
+ }
+
+ public sealed class ConnectionArgs : global::Pulumi.ResourceArgs
+ {
+ ///
+ /// The name of the connection. Connection names must be unique in an AWS user account.
+ ///
+ [Input("connectionName")]
+ public Input? ConnectionName { get; set; }
+
+ ///
+ /// The host arn configured to represent the infrastructure where your third-party provider is installed. You must specify either a ProviderType or a HostArn.
+ ///
+ [Input("hostArn")]
+ public Input? HostArn { get; set; }
+
+ ///
+ /// The name of the external provider where your third-party code repository is configured. You must specify either a ProviderType or a HostArn.
+ ///
+ [Input("providerType")]
+ public Input? ProviderType { get; set; }
+
+ [Input("tags")]
+ private InputList? _tags;
+
+ ///
+ /// Specifies the tags applied to a connection.
+ ///
+ public InputList Tags
+ {
+ get => _tags ?? (_tags = new InputList());
+ set => _tags = value;
+ }
+
+ public ConnectionArgs()
+ {
+ }
+ public static new ConnectionArgs Empty => new ConnectionArgs();
+ }
+}
diff --git a/sdk/dotnet/CodeConnections/GetConnection.cs b/sdk/dotnet/CodeConnections/GetConnection.cs
new file mode 100644
index 0000000000..286bde091c
--- /dev/null
+++ b/sdk/dotnet/CodeConnections/GetConnection.cs
@@ -0,0 +1,93 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.CodeConnections
+{
+ public static class GetConnection
+ {
+ ///
+ /// Schema for AWS::CodeConnections::Connection resource which can be used to connect external source providers with other AWS services (i.e. AWS CodePipeline)
+ ///
+ public static Task InvokeAsync(GetConnectionArgs args, InvokeOptions? options = null)
+ => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:codeconnections:getConnection", args ?? new GetConnectionArgs(), options.WithDefaults());
+
+ ///
+ /// Schema for AWS::CodeConnections::Connection resource which can be used to connect external source providers with other AWS services (i.e. AWS CodePipeline)
+ ///
+ public static Output Invoke(GetConnectionInvokeArgs args, InvokeOptions? options = null)
+ => global::Pulumi.Deployment.Instance.Invoke("aws-native:codeconnections:getConnection", args ?? new GetConnectionInvokeArgs(), options.WithDefaults());
+ }
+
+
+ public sealed class GetConnectionArgs : global::Pulumi.InvokeArgs
+ {
+ ///
+ /// The Amazon Resource Name (ARN) of the connection. The ARN is used as the connection reference when the connection is shared between AWS services.
+ ///
+ [Input("connectionArn", required: true)]
+ public string ConnectionArn { get; set; } = null!;
+
+ public GetConnectionArgs()
+ {
+ }
+ public static new GetConnectionArgs Empty => new GetConnectionArgs();
+ }
+
+ public sealed class GetConnectionInvokeArgs : global::Pulumi.InvokeArgs
+ {
+ ///
+ /// The Amazon Resource Name (ARN) of the connection. The ARN is used as the connection reference when the connection is shared between AWS services.
+ ///
+ [Input("connectionArn", required: true)]
+ public Input ConnectionArn { get; set; } = null!;
+
+ public GetConnectionInvokeArgs()
+ {
+ }
+ public static new GetConnectionInvokeArgs Empty => new GetConnectionInvokeArgs();
+ }
+
+
+ [OutputType]
+ public sealed class GetConnectionResult
+ {
+ ///
+ /// The Amazon Resource Name (ARN) of the connection. The ARN is used as the connection reference when the connection is shared between AWS services.
+ ///
+ public readonly string? ConnectionArn;
+ ///
+ /// The current status of the connection.
+ ///
+ public readonly string? ConnectionStatus;
+ ///
+ /// The name of the external provider where your third-party code repository is configured. For Bitbucket, this is the account ID of the owner of the Bitbucket repository.
+ ///
+ public readonly string? OwnerAccountId;
+ ///
+ /// Specifies the tags applied to a connection.
+ ///
+ public readonly ImmutableArray Tags;
+
+ [OutputConstructor]
+ private GetConnectionResult(
+ string? connectionArn,
+
+ string? connectionStatus,
+
+ string? ownerAccountId,
+
+ ImmutableArray tags)
+ {
+ ConnectionArn = connectionArn;
+ ConnectionStatus = connectionStatus;
+ OwnerAccountId = ownerAccountId;
+ Tags = tags;
+ }
+ }
+}
diff --git a/sdk/dotnet/CodeConnections/README.md b/sdk/dotnet/CodeConnections/README.md
new file mode 100644
index 0000000000..77b2f47ec2
--- /dev/null
+++ b/sdk/dotnet/CodeConnections/README.md
@@ -0,0 +1 @@
+A native Pulumi package for creating and managing Amazon Web Services (AWS) resources.
diff --git a/sdk/dotnet/CodeStarConnections/Enums.cs b/sdk/dotnet/CodeStarConnections/Enums.cs
new file mode 100644
index 0000000000..9471abbbc3
--- /dev/null
+++ b/sdk/dotnet/CodeStarConnections/Enums.cs
@@ -0,0 +1,139 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.ComponentModel;
+using Pulumi;
+
+namespace Pulumi.AwsNative.CodeStarConnections
+{
+ ///
+ /// The name of the external provider where your third-party code repository is configured.
+ ///
+ [EnumType]
+ public readonly struct RepositoryLinkProviderType : IEquatable
+ {
+ private readonly string _value;
+
+ private RepositoryLinkProviderType(string value)
+ {
+ _value = value ?? throw new ArgumentNullException(nameof(value));
+ }
+
+ public static RepositoryLinkProviderType GitHub { get; } = new RepositoryLinkProviderType("GitHub");
+ public static RepositoryLinkProviderType Bitbucket { get; } = new RepositoryLinkProviderType("Bitbucket");
+ public static RepositoryLinkProviderType GitHubEnterprise { get; } = new RepositoryLinkProviderType("GitHubEnterprise");
+ public static RepositoryLinkProviderType GitLab { get; } = new RepositoryLinkProviderType("GitLab");
+ public static RepositoryLinkProviderType GitLabSelfManaged { get; } = new RepositoryLinkProviderType("GitLabSelfManaged");
+
+ public static bool operator ==(RepositoryLinkProviderType left, RepositoryLinkProviderType right) => left.Equals(right);
+ public static bool operator !=(RepositoryLinkProviderType left, RepositoryLinkProviderType right) => !left.Equals(right);
+
+ public static explicit operator string(RepositoryLinkProviderType value) => value._value;
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override bool Equals(object? obj) => obj is RepositoryLinkProviderType other && Equals(other);
+ public bool Equals(RepositoryLinkProviderType other) => string.Equals(_value, other._value, StringComparison.Ordinal);
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override int GetHashCode() => _value?.GetHashCode() ?? 0;
+
+ public override string ToString() => _value;
+ }
+
+ ///
+ /// The name of the external provider where your third-party code repository is configured.
+ ///
+ [EnumType]
+ public readonly struct SyncConfigurationProviderType : IEquatable
+ {
+ private readonly string _value;
+
+ private SyncConfigurationProviderType(string value)
+ {
+ _value = value ?? throw new ArgumentNullException(nameof(value));
+ }
+
+ public static SyncConfigurationProviderType GitHub { get; } = new SyncConfigurationProviderType("GitHub");
+ public static SyncConfigurationProviderType Bitbucket { get; } = new SyncConfigurationProviderType("Bitbucket");
+ public static SyncConfigurationProviderType GitHubEnterprise { get; } = new SyncConfigurationProviderType("GitHubEnterprise");
+ public static SyncConfigurationProviderType GitLab { get; } = new SyncConfigurationProviderType("GitLab");
+ public static SyncConfigurationProviderType GitLabSelfManaged { get; } = new SyncConfigurationProviderType("GitLabSelfManaged");
+
+ public static bool operator ==(SyncConfigurationProviderType left, SyncConfigurationProviderType right) => left.Equals(right);
+ public static bool operator !=(SyncConfigurationProviderType left, SyncConfigurationProviderType right) => !left.Equals(right);
+
+ public static explicit operator string(SyncConfigurationProviderType value) => value._value;
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override bool Equals(object? obj) => obj is SyncConfigurationProviderType other && Equals(other);
+ public bool Equals(SyncConfigurationProviderType other) => string.Equals(_value, other._value, StringComparison.Ordinal);
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override int GetHashCode() => _value?.GetHashCode() ?? 0;
+
+ public override string ToString() => _value;
+ }
+
+ ///
+ /// Whether to enable or disable publishing of deployment status to source providers.
+ ///
+ [EnumType]
+ public readonly struct SyncConfigurationPublishDeploymentStatus : IEquatable
+ {
+ private readonly string _value;
+
+ private SyncConfigurationPublishDeploymentStatus(string value)
+ {
+ _value = value ?? throw new ArgumentNullException(nameof(value));
+ }
+
+ public static SyncConfigurationPublishDeploymentStatus Enabled { get; } = new SyncConfigurationPublishDeploymentStatus("ENABLED");
+ public static SyncConfigurationPublishDeploymentStatus Disabled { get; } = new SyncConfigurationPublishDeploymentStatus("DISABLED");
+
+ public static bool operator ==(SyncConfigurationPublishDeploymentStatus left, SyncConfigurationPublishDeploymentStatus right) => left.Equals(right);
+ public static bool operator !=(SyncConfigurationPublishDeploymentStatus left, SyncConfigurationPublishDeploymentStatus right) => !left.Equals(right);
+
+ public static explicit operator string(SyncConfigurationPublishDeploymentStatus value) => value._value;
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override bool Equals(object? obj) => obj is SyncConfigurationPublishDeploymentStatus other && Equals(other);
+ public bool Equals(SyncConfigurationPublishDeploymentStatus other) => string.Equals(_value, other._value, StringComparison.Ordinal);
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override int GetHashCode() => _value?.GetHashCode() ?? 0;
+
+ public override string ToString() => _value;
+ }
+
+ ///
+ /// When to trigger Git sync to begin the stack update.
+ ///
+ [EnumType]
+ public readonly struct SyncConfigurationTriggerResourceUpdateOn : IEquatable
+ {
+ private readonly string _value;
+
+ private SyncConfigurationTriggerResourceUpdateOn(string value)
+ {
+ _value = value ?? throw new ArgumentNullException(nameof(value));
+ }
+
+ public static SyncConfigurationTriggerResourceUpdateOn AnyChange { get; } = new SyncConfigurationTriggerResourceUpdateOn("ANY_CHANGE");
+ public static SyncConfigurationTriggerResourceUpdateOn FileChange { get; } = new SyncConfigurationTriggerResourceUpdateOn("FILE_CHANGE");
+
+ public static bool operator ==(SyncConfigurationTriggerResourceUpdateOn left, SyncConfigurationTriggerResourceUpdateOn right) => left.Equals(right);
+ public static bool operator !=(SyncConfigurationTriggerResourceUpdateOn left, SyncConfigurationTriggerResourceUpdateOn right) => !left.Equals(right);
+
+ public static explicit operator string(SyncConfigurationTriggerResourceUpdateOn value) => value._value;
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override bool Equals(object? obj) => obj is SyncConfigurationTriggerResourceUpdateOn other && Equals(other);
+ public bool Equals(SyncConfigurationTriggerResourceUpdateOn other) => string.Equals(_value, other._value, StringComparison.Ordinal);
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override int GetHashCode() => _value?.GetHashCode() ?? 0;
+
+ public override string ToString() => _value;
+ }
+}
diff --git a/sdk/dotnet/CodeStarConnections/GetRepositoryLink.cs b/sdk/dotnet/CodeStarConnections/GetRepositoryLink.cs
index 655aa4c3d9..16417ab291 100644
--- a/sdk/dotnet/CodeStarConnections/GetRepositoryLink.cs
+++ b/sdk/dotnet/CodeStarConnections/GetRepositoryLink.cs
@@ -68,7 +68,7 @@ public sealed class GetRepositoryLinkResult
///
/// The name of the external provider where your third-party code repository is configured.
///
- public readonly string? ProviderType;
+ public readonly Pulumi.AwsNative.CodeStarConnections.RepositoryLinkProviderType? ProviderType;
///
/// A unique Amazon Resource Name (ARN) to designate the repository link.
///
@@ -88,7 +88,7 @@ private GetRepositoryLinkResult(
string? encryptionKeyArn,
- string? providerType,
+ Pulumi.AwsNative.CodeStarConnections.RepositoryLinkProviderType? providerType,
string? repositoryLinkArn,
diff --git a/sdk/dotnet/CodeStarConnections/GetSyncConfiguration.cs b/sdk/dotnet/CodeStarConnections/GetSyncConfiguration.cs
index de790b1505..a239a9e473 100644
--- a/sdk/dotnet/CodeStarConnections/GetSyncConfiguration.cs
+++ b/sdk/dotnet/CodeStarConnections/GetSyncConfiguration.cs
@@ -84,7 +84,11 @@ public sealed class GetSyncConfigurationResult
///
/// The name of the external provider where your third-party code repository is configured.
///
- public readonly string? ProviderType;
+ public readonly Pulumi.AwsNative.CodeStarConnections.SyncConfigurationProviderType? ProviderType;
+ ///
+ /// Whether to enable or disable publishing of deployment status to source providers.
+ ///
+ public readonly Pulumi.AwsNative.CodeStarConnections.SyncConfigurationPublishDeploymentStatus? PublishDeploymentStatus;
///
/// A UUID that uniquely identifies the RepositoryLink that the SyncConfig is associated with.
///
@@ -97,6 +101,10 @@ public sealed class GetSyncConfigurationResult
/// The IAM Role that allows AWS to update CloudFormation stacks based on content in the specified repository.
///
public readonly string? RoleArn;
+ ///
+ /// When to trigger Git sync to begin the stack update.
+ ///
+ public readonly Pulumi.AwsNative.CodeStarConnections.SyncConfigurationTriggerResourceUpdateOn? TriggerResourceUpdateOn;
[OutputConstructor]
private GetSyncConfigurationResult(
@@ -106,21 +114,27 @@ private GetSyncConfigurationResult(
string? ownerId,
- string? providerType,
+ Pulumi.AwsNative.CodeStarConnections.SyncConfigurationProviderType? providerType,
+
+ Pulumi.AwsNative.CodeStarConnections.SyncConfigurationPublishDeploymentStatus? publishDeploymentStatus,
string? repositoryLinkId,
string? repositoryName,
- string? roleArn)
+ string? roleArn,
+
+ Pulumi.AwsNative.CodeStarConnections.SyncConfigurationTriggerResourceUpdateOn? triggerResourceUpdateOn)
{
Branch = branch;
ConfigFile = configFile;
OwnerId = ownerId;
ProviderType = providerType;
+ PublishDeploymentStatus = publishDeploymentStatus;
RepositoryLinkId = repositoryLinkId;
RepositoryName = repositoryName;
RoleArn = roleArn;
+ TriggerResourceUpdateOn = triggerResourceUpdateOn;
}
}
}
diff --git a/sdk/dotnet/CodeStarConnections/RepositoryLink.cs b/sdk/dotnet/CodeStarConnections/RepositoryLink.cs
index 213b2e388f..fbf267f8a8 100644
--- a/sdk/dotnet/CodeStarConnections/RepositoryLink.cs
+++ b/sdk/dotnet/CodeStarConnections/RepositoryLink.cs
@@ -37,7 +37,7 @@ public partial class RepositoryLink : global::Pulumi.CustomResource
/// The name of the external provider where your third-party code repository is configured.
///
[Output("providerType")]
- public Output ProviderType { get; private set; } = null!;
+ public Output ProviderType { get; private set; } = null!;
///
/// A unique Amazon Resource Name (ARN) to designate the repository link.
diff --git a/sdk/dotnet/CodeStarConnections/SyncConfiguration.cs b/sdk/dotnet/CodeStarConnections/SyncConfiguration.cs
index e3133783f3..63191dbf99 100644
--- a/sdk/dotnet/CodeStarConnections/SyncConfiguration.cs
+++ b/sdk/dotnet/CodeStarConnections/SyncConfiguration.cs
@@ -37,7 +37,13 @@ public partial class SyncConfiguration : global::Pulumi.CustomResource
/// The name of the external provider where your third-party code repository is configured.
///
[Output("providerType")]
- public Output ProviderType { get; private set; } = null!;
+ public Output ProviderType { get; private set; } = null!;
+
+ ///
+ /// Whether to enable or disable publishing of deployment status to source providers.
+ ///
+ [Output("publishDeploymentStatus")]
+ public Output PublishDeploymentStatus { get; private set; } = null!;
///
/// A UUID that uniquely identifies the RepositoryLink that the SyncConfig is associated with.
@@ -69,6 +75,12 @@ public partial class SyncConfiguration : global::Pulumi.CustomResource
[Output("syncType")]
public Output SyncType { get; private set; } = null!;
+ ///
+ /// When to trigger Git sync to begin the stack update.
+ ///
+ [Output("triggerResourceUpdateOn")]
+ public Output TriggerResourceUpdateOn { get; private set; } = null!;
+
///
/// Create a SyncConfiguration resource with the given unique name, arguments, and options.
@@ -131,6 +143,12 @@ public sealed class SyncConfigurationArgs : global::Pulumi.ResourceArgs
[Input("configFile", required: true)]
public Input ConfigFile { get; set; } = null!;
+ ///
+ /// Whether to enable or disable publishing of deployment status to source providers.
+ ///
+ [Input("publishDeploymentStatus")]
+ public Input? PublishDeploymentStatus { get; set; }
+
///
/// A UUID that uniquely identifies the RepositoryLink that the SyncConfig is associated with.
///
@@ -155,6 +173,12 @@ public sealed class SyncConfigurationArgs : global::Pulumi.ResourceArgs
[Input("syncType", required: true)]
public Input SyncType { get; set; } = null!;
+ ///
+ /// When to trigger Git sync to begin the stack update.
+ ///
+ [Input("triggerResourceUpdateOn")]
+ public Input? TriggerResourceUpdateOn { get; set; }
+
public SyncConfigurationArgs()
{
}
diff --git a/sdk/dotnet/Connect/GetPredefinedAttribute.cs b/sdk/dotnet/Connect/GetPredefinedAttribute.cs
index 9eb6f70715..49fa42118f 100644
--- a/sdk/dotnet/Connect/GetPredefinedAttribute.cs
+++ b/sdk/dotnet/Connect/GetPredefinedAttribute.cs
@@ -69,14 +69,29 @@ public GetPredefinedAttributeInvokeArgs()
[OutputType]
public sealed class GetPredefinedAttributeResult
{
+ ///
+ /// Last modified region.
+ ///
+ public readonly string? LastModifiedRegion;
+ ///
+ /// Last modified time.
+ ///
+ public readonly double? LastModifiedTime;
///
/// The values of a predefined attribute.
///
public readonly Outputs.ValuesProperties? Values;
[OutputConstructor]
- private GetPredefinedAttributeResult(Outputs.ValuesProperties? values)
+ private GetPredefinedAttributeResult(
+ string? lastModifiedRegion,
+
+ double? lastModifiedTime,
+
+ Outputs.ValuesProperties? values)
{
+ LastModifiedRegion = lastModifiedRegion;
+ LastModifiedTime = lastModifiedTime;
Values = values;
}
}
diff --git a/sdk/dotnet/Connect/GetSecurityProfile.cs b/sdk/dotnet/Connect/GetSecurityProfile.cs
index 5eacdd1c39..7473b4f826 100644
--- a/sdk/dotnet/Connect/GetSecurityProfile.cs
+++ b/sdk/dotnet/Connect/GetSecurityProfile.cs
@@ -57,15 +57,35 @@ public GetSecurityProfileInvokeArgs()
[OutputType]
public sealed class GetSecurityProfileResult
{
+ ///
+ /// The identifier of the hierarchy group that a security profile uses to restrict access to resources in Amazon Connect.
+ ///
+ public readonly string? AllowedAccessControlHierarchyGroupId;
///
/// The list of tags that a security profile uses to restrict access to resources in Amazon Connect.
///
public readonly ImmutableArray AllowedAccessControlTags;
///
+ /// A list of third-party applications that the security profile will give access to.
+ ///
+ public readonly ImmutableArray Applications;
+ ///
/// The description of the security profile.
///
public readonly string? Description;
///
+ /// The list of resources that a security profile applies hierarchy restrictions to in Amazon Connect.
+ ///
+ public readonly ImmutableArray HierarchyRestrictedResources;
+ ///
+ /// The AWS Region where this resource was last modified.
+ ///
+ public readonly string? LastModifiedRegion;
+ ///
+ /// The timestamp when this resource was last modified.
+ ///
+ public readonly double? LastModifiedTime;
+ ///
/// Permissions assigned to the security profile.
///
public readonly ImmutableArray Permissions;
@@ -84,10 +104,20 @@ public sealed class GetSecurityProfileResult
[OutputConstructor]
private GetSecurityProfileResult(
+ string? allowedAccessControlHierarchyGroupId,
+
ImmutableArray allowedAccessControlTags,
+ ImmutableArray applications,
+
string? description,
+ ImmutableArray hierarchyRestrictedResources,
+
+ string? lastModifiedRegion,
+
+ double? lastModifiedTime,
+
ImmutableArray permissions,
string? securityProfileArn,
@@ -96,8 +126,13 @@ private GetSecurityProfileResult(
ImmutableArray tags)
{
+ AllowedAccessControlHierarchyGroupId = allowedAccessControlHierarchyGroupId;
AllowedAccessControlTags = allowedAccessControlTags;
+ Applications = applications;
Description = description;
+ HierarchyRestrictedResources = hierarchyRestrictedResources;
+ LastModifiedRegion = lastModifiedRegion;
+ LastModifiedTime = lastModifiedTime;
Permissions = permissions;
SecurityProfileArn = securityProfileArn;
TagRestrictedResources = tagRestrictedResources;
diff --git a/sdk/dotnet/Connect/Inputs/SecurityProfileApplicationArgs.cs b/sdk/dotnet/Connect/Inputs/SecurityProfileApplicationArgs.cs
new file mode 100644
index 0000000000..ac50479fe0
--- /dev/null
+++ b/sdk/dotnet/Connect/Inputs/SecurityProfileApplicationArgs.cs
@@ -0,0 +1,41 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Connect.Inputs
+{
+
+ ///
+ /// A third-party application's metadata.
+ ///
+ public sealed class SecurityProfileApplicationArgs : global::Pulumi.ResourceArgs
+ {
+ [Input("applicationPermissions", required: true)]
+ private InputList? _applicationPermissions;
+
+ ///
+ /// The permissions that the agent is granted on the application
+ ///
+ public InputList ApplicationPermissions
+ {
+ get => _applicationPermissions ?? (_applicationPermissions = new InputList());
+ set => _applicationPermissions = value;
+ }
+
+ ///
+ /// Namespace of the application that you want to give access to.
+ ///
+ [Input("namespace", required: true)]
+ public Input Namespace { get; set; } = null!;
+
+ public SecurityProfileApplicationArgs()
+ {
+ }
+ public static new SecurityProfileApplicationArgs Empty => new SecurityProfileApplicationArgs();
+ }
+}
diff --git a/sdk/dotnet/Connect/Outputs/SecurityProfileApplication.cs b/sdk/dotnet/Connect/Outputs/SecurityProfileApplication.cs
new file mode 100644
index 0000000000..8237085665
--- /dev/null
+++ b/sdk/dotnet/Connect/Outputs/SecurityProfileApplication.cs
@@ -0,0 +1,38 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.Connect.Outputs
+{
+
+ ///
+ /// A third-party application's metadata.
+ ///
+ [OutputType]
+ public sealed class SecurityProfileApplication
+ {
+ ///
+ /// The permissions that the agent is granted on the application
+ ///
+ public readonly ImmutableArray ApplicationPermissions;
+ ///
+ /// Namespace of the application that you want to give access to.
+ ///
+ public readonly string Namespace;
+
+ [OutputConstructor]
+ private SecurityProfileApplication(
+ ImmutableArray applicationPermissions,
+
+ string @namespace)
+ {
+ ApplicationPermissions = applicationPermissions;
+ Namespace = @namespace;
+ }
+ }
+}
diff --git a/sdk/dotnet/Connect/PredefinedAttribute.cs b/sdk/dotnet/Connect/PredefinedAttribute.cs
index a4cf60ec6f..b06c50259b 100644
--- a/sdk/dotnet/Connect/PredefinedAttribute.cs
+++ b/sdk/dotnet/Connect/PredefinedAttribute.cs
@@ -21,6 +21,18 @@ public partial class PredefinedAttribute : global::Pulumi.CustomResource
[Output("instanceArn")]
public Output InstanceArn { get; private set; } = null!;
+ ///
+ /// Last modified region.
+ ///
+ [Output("lastModifiedRegion")]
+ public Output LastModifiedRegion { get; private set; } = null!;
+
+ ///
+ /// Last modified time.
+ ///
+ [Output("lastModifiedTime")]
+ public Output LastModifiedTime { get; private set; } = null!;
+
///
/// The name of the predefined attribute.
///
diff --git a/sdk/dotnet/Connect/SecurityProfile.cs b/sdk/dotnet/Connect/SecurityProfile.cs
index 87a99dec71..8f4b0d329a 100644
--- a/sdk/dotnet/Connect/SecurityProfile.cs
+++ b/sdk/dotnet/Connect/SecurityProfile.cs
@@ -15,24 +15,54 @@ namespace Pulumi.AwsNative.Connect
[AwsNativeResourceType("aws-native:connect:SecurityProfile")]
public partial class SecurityProfile : global::Pulumi.CustomResource
{
+ ///
+ /// The identifier of the hierarchy group that a security profile uses to restrict access to resources in Amazon Connect.
+ ///
+ [Output("allowedAccessControlHierarchyGroupId")]
+ public Output AllowedAccessControlHierarchyGroupId { get; private set; } = null!;
+
///
/// The list of tags that a security profile uses to restrict access to resources in Amazon Connect.
///
[Output("allowedAccessControlTags")]
public Output> AllowedAccessControlTags { get; private set; } = null!;
+ ///
+ /// A list of third-party applications that the security profile will give access to.
+ ///
+ [Output("applications")]
+ public Output> Applications { get; private set; } = null!;
+
///
/// The description of the security profile.
///
[Output("description")]
public Output Description { get; private set; } = null!;
+ ///
+ /// The list of resources that a security profile applies hierarchy restrictions to in Amazon Connect.
+ ///
+ [Output("hierarchyRestrictedResources")]
+ public Output> HierarchyRestrictedResources { get; private set; } = null!;
+
///
/// The identifier of the Amazon Connect instance.
///
[Output("instanceArn")]
public Output InstanceArn { get; private set; } = null!;
+ ///
+ /// The AWS Region where this resource was last modified.
+ ///
+ [Output("lastModifiedRegion")]
+ public Output LastModifiedRegion { get; private set; } = null!;
+
+ ///
+ /// The timestamp when this resource was last modified.
+ ///
+ [Output("lastModifiedTime")]
+ public Output LastModifiedTime { get; private set; } = null!;
+
///
/// Permissions assigned to the security profile.
///
@@ -113,6 +143,12 @@ public static SecurityProfile Get(string name, Input id, CustomResourceO
public sealed class SecurityProfileArgs : global::Pulumi.ResourceArgs
{
+ ///
+ /// The identifier of the hierarchy group that a security profile uses to restrict access to resources in Amazon Connect.
+ ///
+ [Input("allowedAccessControlHierarchyGroupId")]
+ public Input? AllowedAccessControlHierarchyGroupId { get; set; }
+
[Input("allowedAccessControlTags")]
private InputList? _allowedAccessControlTags;
@@ -125,12 +161,36 @@ public InputList AllowedAccessControlTags
set => _allowedAccessControlTags = value;
}
+ [Input("applications")]
+ private InputList? _applications;
+
+ ///
+ /// A list of third-party applications that the security profile will give access to.
+ ///
+ public InputList Applications
+ {
+ get => _applications ?? (_applications = new InputList());
+ set => _applications = value;
+ }
+
///
/// The description of the security profile.
///
[Input("description")]
public Input? Description { get; set; }
+ [Input("hierarchyRestrictedResources")]
+ private InputList? _hierarchyRestrictedResources;
+
+ ///
+ /// The list of resources that a security profile applies hierarchy restrictions to in Amazon Connect.
+ ///
+ public InputList HierarchyRestrictedResources
+ {
+ get => _hierarchyRestrictedResources ?? (_hierarchyRestrictedResources = new InputList());
+ set => _hierarchyRestrictedResources = value;
+ }
+
///
/// The identifier of the Amazon Connect instance.
///
diff --git a/sdk/dotnet/DocDbElastic/Cluster.cs b/sdk/dotnet/DocDbElastic/Cluster.cs
index 9b8aa393da..7fde85f207 100644
--- a/sdk/dotnet/DocDbElastic/Cluster.cs
+++ b/sdk/dotnet/DocDbElastic/Cluster.cs
@@ -24,6 +24,9 @@ public partial class Cluster : global::Pulumi.CustomResource
[Output("authType")]
public Output AuthType { get; private set; } = null!;
+ [Output("backupRetentionPeriod")]
+ public Output BackupRetentionPeriod { get; private set; } = null!;
+
[Output("clusterArn")]
public Output ClusterArn { get; private set; } = null!;
@@ -36,6 +39,9 @@ public partial class Cluster : global::Pulumi.CustomResource
[Output("kmsKeyId")]
public Output KmsKeyId { get; private set; } = null!;
+ [Output("preferredBackupWindow")]
+ public Output PreferredBackupWindow { get; private set; } = null!;
+
[Output("preferredMaintenanceWindow")]
public Output PreferredMaintenanceWindow { get; private set; } = null!;
@@ -45,6 +51,9 @@ public partial class Cluster : global::Pulumi.CustomResource
[Output("shardCount")]
public Output ShardCount { get; private set; } = null!;
+ [Output("shardInstanceCount")]
+ public Output ShardInstanceCount { get; private set; } = null!;
+
[Output("subnetIds")]
public Output> SubnetIds { get; private set; } = null!;
@@ -115,12 +124,18 @@ public sealed class ClusterArgs : global::Pulumi.ResourceArgs
[Input("authType", required: true)]
public Input AuthType { get; set; } = null!;
+ [Input("backupRetentionPeriod")]
+ public Input? BackupRetentionPeriod { get; set; }
+
[Input("clusterName")]
public Input? ClusterName { get; set; }
[Input("kmsKeyId")]
public Input? KmsKeyId { get; set; }
+ [Input("preferredBackupWindow")]
+ public Input? PreferredBackupWindow { get; set; }
+
[Input("preferredMaintenanceWindow")]
public Input? PreferredMaintenanceWindow { get; set; }
@@ -130,6 +145,9 @@ public sealed class ClusterArgs : global::Pulumi.ResourceArgs
[Input("shardCount", required: true)]
public Input ShardCount { get; set; } = null!;
+ [Input("shardInstanceCount")]
+ public Input? ShardInstanceCount { get; set; }
+
[Input("subnetIds")]
private InputList? _subnetIds;
public InputList SubnetIds
diff --git a/sdk/dotnet/DocDbElastic/GetCluster.cs b/sdk/dotnet/DocDbElastic/GetCluster.cs
index b68df973cc..0bdd5216d2 100644
--- a/sdk/dotnet/DocDbElastic/GetCluster.cs
+++ b/sdk/dotnet/DocDbElastic/GetCluster.cs
@@ -51,38 +51,50 @@ public GetClusterInvokeArgs()
[OutputType]
public sealed class GetClusterResult
{
+ public readonly int? BackupRetentionPeriod;
public readonly string? ClusterArn;
public readonly string? ClusterEndpoint;
+ public readonly string? PreferredBackupWindow;
public readonly string? PreferredMaintenanceWindow;
public readonly int? ShardCapacity;
public readonly int? ShardCount;
+ public readonly int? ShardInstanceCount;
public readonly ImmutableArray SubnetIds;
public readonly ImmutableArray Tags;
public readonly ImmutableArray VpcSecurityGroupIds;
[OutputConstructor]
private GetClusterResult(
+ int? backupRetentionPeriod,
+
string? clusterArn,
string? clusterEndpoint,
+ string? preferredBackupWindow,
+
string? preferredMaintenanceWindow,
int? shardCapacity,
int? shardCount,
+ int? shardInstanceCount,
+
ImmutableArray subnetIds,
ImmutableArray tags,
ImmutableArray vpcSecurityGroupIds)
{
+ BackupRetentionPeriod = backupRetentionPeriod;
ClusterArn = clusterArn;
ClusterEndpoint = clusterEndpoint;
+ PreferredBackupWindow = preferredBackupWindow;
PreferredMaintenanceWindow = preferredMaintenanceWindow;
ShardCapacity = shardCapacity;
ShardCount = shardCount;
+ ShardInstanceCount = shardInstanceCount;
SubnetIds = subnetIds;
Tags = tags;
VpcSecurityGroupIds = vpcSecurityGroupIds;
diff --git a/sdk/dotnet/DynamoDb/GetTable.cs b/sdk/dotnet/DynamoDb/GetTable.cs
index d610c8fe09..52532dba9c 100644
--- a/sdk/dotnet/DynamoDb/GetTable.cs
+++ b/sdk/dotnet/DynamoDb/GetTable.cs
@@ -121,6 +121,7 @@ public sealed class GetTableResult
/// If you set ``BillingMode`` as ``PROVISIONED``, you must specify this property. If you set ``BillingMode`` as ``PAY_PER_REQUEST``, you cannot specify this property.
///
public readonly Outputs.TableProvisionedThroughput? ProvisionedThroughput;
+ public readonly Outputs.TableResourcePolicy? ResourcePolicy;
///
/// Specifies the settings to enable server-side encryption.
///
@@ -169,6 +170,8 @@ private GetTableResult(
Outputs.TableProvisionedThroughput? provisionedThroughput,
+ Outputs.TableResourcePolicy? resourcePolicy,
+
Outputs.TableSseSpecification? sseSpecification,
string? streamArn,
@@ -192,6 +195,7 @@ private GetTableResult(
LocalSecondaryIndexes = localSecondaryIndexes;
PointInTimeRecoverySpecification = pointInTimeRecoverySpecification;
ProvisionedThroughput = provisionedThroughput;
+ ResourcePolicy = resourcePolicy;
SseSpecification = sseSpecification;
StreamArn = streamArn;
StreamSpecification = streamSpecification;
diff --git a/sdk/dotnet/DynamoDb/Inputs/GlobalTableReplicaSpecificationArgs.cs b/sdk/dotnet/DynamoDb/Inputs/GlobalTableReplicaSpecificationArgs.cs
index 0bba32933a..6277eeebe5 100644
--- a/sdk/dotnet/DynamoDb/Inputs/GlobalTableReplicaSpecificationArgs.cs
+++ b/sdk/dotnet/DynamoDb/Inputs/GlobalTableReplicaSpecificationArgs.cs
@@ -38,6 +38,12 @@ public InputList
[Input("region", required: true)]
public Input Region { get; set; } = null!;
+ [Input("replicaStreamSpecification")]
+ public Input? ReplicaStreamSpecification { get; set; }
+
+ [Input("resourcePolicy")]
+ public Input? ResourcePolicy { get; set; }
+
[Input("sseSpecification")]
public Input? SseSpecification { get; set; }
diff --git a/sdk/dotnet/DynamoDb/Inputs/GlobalTableReplicaStreamSpecificationArgs.cs b/sdk/dotnet/DynamoDb/Inputs/GlobalTableReplicaStreamSpecificationArgs.cs
new file mode 100644
index 0000000000..ebce2c1ec8
--- /dev/null
+++ b/sdk/dotnet/DynamoDb/Inputs/GlobalTableReplicaStreamSpecificationArgs.cs
@@ -0,0 +1,23 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.DynamoDb.Inputs
+{
+
+ public sealed class GlobalTableReplicaStreamSpecificationArgs : global::Pulumi.ResourceArgs
+ {
+ [Input("resourcePolicy", required: true)]
+ public Input ResourcePolicy { get; set; } = null!;
+
+ public GlobalTableReplicaStreamSpecificationArgs()
+ {
+ }
+ public static new GlobalTableReplicaStreamSpecificationArgs Empty => new GlobalTableReplicaStreamSpecificationArgs();
+ }
+}
diff --git a/sdk/dotnet/DynamoDb/Inputs/GlobalTableResourcePolicyArgs.cs b/sdk/dotnet/DynamoDb/Inputs/GlobalTableResourcePolicyArgs.cs
new file mode 100644
index 0000000000..e5fe16a3cb
--- /dev/null
+++ b/sdk/dotnet/DynamoDb/Inputs/GlobalTableResourcePolicyArgs.cs
@@ -0,0 +1,23 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.DynamoDb.Inputs
+{
+
+ public sealed class GlobalTableResourcePolicyArgs : global::Pulumi.ResourceArgs
+ {
+ [Input("policyDocument", required: true)]
+ public Input
public sealed class TableStreamSpecificationArgs : global::Pulumi.ResourceArgs
{
+ [Input("resourcePolicy")]
+ public Input? ResourcePolicy { get; set; }
+
///
/// When an item in the table is modified, ``StreamViewType`` determines what information is written to the stream for this table. Valid values for ``StreamViewType`` are:
/// + ``KEYS_ONLY`` - Only the key attributes of the modified item are written to the stream.
diff --git a/sdk/dotnet/DynamoDb/Outputs/GlobalTableReplicaSpecification.cs b/sdk/dotnet/DynamoDb/Outputs/GlobalTableReplicaSpecification.cs
index 8c67c453aa..1468bb218b 100644
--- a/sdk/dotnet/DynamoDb/Outputs/GlobalTableReplicaSpecification.cs
+++ b/sdk/dotnet/DynamoDb/Outputs/GlobalTableReplicaSpecification.cs
@@ -20,6 +20,8 @@ public sealed class GlobalTableReplicaSpecification
public readonly Outputs.GlobalTablePointInTimeRecoverySpecification? PointInTimeRecoverySpecification;
public readonly Outputs.GlobalTableReadProvisionedThroughputSettings? ReadProvisionedThroughputSettings;
public readonly string Region;
+ public readonly Outputs.GlobalTableReplicaStreamSpecification? ReplicaStreamSpecification;
+ public readonly Outputs.GlobalTableResourcePolicy? ResourcePolicy;
public readonly Outputs.GlobalTableReplicaSseSpecification? SseSpecification;
public readonly string? TableClass;
public readonly ImmutableArray Tags;
@@ -40,6 +42,10 @@ private GlobalTableReplicaSpecification(
string region,
+ Outputs.GlobalTableReplicaStreamSpecification? replicaStreamSpecification,
+
+ Outputs.GlobalTableResourcePolicy? resourcePolicy,
+
Outputs.GlobalTableReplicaSseSpecification? sseSpecification,
string? tableClass,
@@ -53,6 +59,8 @@ private GlobalTableReplicaSpecification(
PointInTimeRecoverySpecification = pointInTimeRecoverySpecification;
ReadProvisionedThroughputSettings = readProvisionedThroughputSettings;
Region = region;
+ ReplicaStreamSpecification = replicaStreamSpecification;
+ ResourcePolicy = resourcePolicy;
SseSpecification = sseSpecification;
TableClass = tableClass;
Tags = tags;
diff --git a/sdk/dotnet/DynamoDb/Outputs/GlobalTableReplicaStreamSpecification.cs b/sdk/dotnet/DynamoDb/Outputs/GlobalTableReplicaStreamSpecification.cs
new file mode 100644
index 0000000000..b35e5ce2d5
--- /dev/null
+++ b/sdk/dotnet/DynamoDb/Outputs/GlobalTableReplicaStreamSpecification.cs
@@ -0,0 +1,24 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.DynamoDb.Outputs
+{
+
+ [OutputType]
+ public sealed class GlobalTableReplicaStreamSpecification
+ {
+ public readonly Outputs.GlobalTableResourcePolicy ResourcePolicy;
+
+ [OutputConstructor]
+ private GlobalTableReplicaStreamSpecification(Outputs.GlobalTableResourcePolicy resourcePolicy)
+ {
+ ResourcePolicy = resourcePolicy;
+ }
+ }
+}
diff --git a/sdk/dotnet/DynamoDb/Outputs/GlobalTableResourcePolicy.cs b/sdk/dotnet/DynamoDb/Outputs/GlobalTableResourcePolicy.cs
new file mode 100644
index 0000000000..1f50ff8bde
--- /dev/null
+++ b/sdk/dotnet/DynamoDb/Outputs/GlobalTableResourcePolicy.cs
@@ -0,0 +1,24 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.DynamoDb.Outputs
+{
+
+ [OutputType]
+ public sealed class GlobalTableResourcePolicy
+ {
+ public readonly object PolicyDocument;
+
+ [OutputConstructor]
+ private GlobalTableResourcePolicy(object policyDocument)
+ {
+ PolicyDocument = policyDocument;
+ }
+ }
+}
diff --git a/sdk/dotnet/DynamoDb/Outputs/TableResourcePolicy.cs b/sdk/dotnet/DynamoDb/Outputs/TableResourcePolicy.cs
new file mode 100644
index 0000000000..f3f920621e
--- /dev/null
+++ b/sdk/dotnet/DynamoDb/Outputs/TableResourcePolicy.cs
@@ -0,0 +1,24 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.DynamoDb.Outputs
+{
+
+ [OutputType]
+ public sealed class TableResourcePolicy
+ {
+ public readonly object PolicyDocument;
+
+ [OutputConstructor]
+ private TableResourcePolicy(object policyDocument)
+ {
+ PolicyDocument = policyDocument;
+ }
+ }
+}
diff --git a/sdk/dotnet/DynamoDb/Outputs/TableStreamSpecification.cs b/sdk/dotnet/DynamoDb/Outputs/TableStreamSpecification.cs
index bb18cf2269..0629dc0170 100644
--- a/sdk/dotnet/DynamoDb/Outputs/TableStreamSpecification.cs
+++ b/sdk/dotnet/DynamoDb/Outputs/TableStreamSpecification.cs
@@ -16,6 +16,7 @@ namespace Pulumi.AwsNative.DynamoDb.Outputs
[OutputType]
public sealed class TableStreamSpecification
{
+ public readonly Outputs.TableResourcePolicy? ResourcePolicy;
///
/// When an item in the table is modified, ``StreamViewType`` determines what information is written to the stream for this table. Valid values for ``StreamViewType`` are:
/// + ``KEYS_ONLY`` - Only the key attributes of the modified item are written to the stream.
@@ -26,8 +27,12 @@ public sealed class TableStreamSpecification
public readonly string StreamViewType;
[OutputConstructor]
- private TableStreamSpecification(string streamViewType)
+ private TableStreamSpecification(
+ Outputs.TableResourcePolicy? resourcePolicy,
+
+ string streamViewType)
{
+ ResourcePolicy = resourcePolicy;
StreamViewType = streamViewType;
}
}
diff --git a/sdk/dotnet/DynamoDb/Table.cs b/sdk/dotnet/DynamoDb/Table.cs
index f198a5de66..70d6e7d60f 100644
--- a/sdk/dotnet/DynamoDb/Table.cs
+++ b/sdk/dotnet/DynamoDb/Table.cs
@@ -410,6 +410,9 @@ public partial class Table : global::Pulumi.CustomResource
[Output("provisionedThroughput")]
public Output ProvisionedThroughput { get; private set; } = null!;
+ [Output("resourcePolicy")]
+ public Output ResourcePolicy { get; private set; } = null!;
+
///
/// Specifies the settings to enable server-side encryption.
///
@@ -600,6 +603,9 @@ public InputList LocalSecondaryIndexes
[Input("provisionedThroughput")]
public Input? ProvisionedThroughput { get; set; }
+ [Input("resourcePolicy")]
+ public Input? ResourcePolicy { get; set; }
+
///
/// Specifies the settings to enable server-side encryption.
///
diff --git a/sdk/dotnet/Ec2/GetInternetGateway.cs b/sdk/dotnet/Ec2/GetInternetGateway.cs
index ea5badaca1..4fb5427416 100644
--- a/sdk/dotnet/Ec2/GetInternetGateway.cs
+++ b/sdk/dotnet/Ec2/GetInternetGateway.cs
@@ -12,13 +12,13 @@ namespace Pulumi.AwsNative.Ec2
public static class GetInternetGateway
{
///
- /// Resource Type definition for AWS::EC2::InternetGateway
+ /// Allocates an internet gateway for use with a VPC. After creating the Internet gateway, you then attach it to a VPC.
///
public static Task InvokeAsync(GetInternetGatewayArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:ec2:getInternetGateway", args ?? new GetInternetGatewayArgs(), options.WithDefaults());
///
- /// Resource Type definition for AWS::EC2::InternetGateway
+ /// Allocates an internet gateway for use with a VPC. After creating the Internet gateway, you then attach it to a VPC.
///
public static Output Invoke(GetInternetGatewayInvokeArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.Invoke("aws-native:ec2:getInternetGateway", args ?? new GetInternetGatewayInvokeArgs(), options.WithDefaults());
@@ -27,9 +27,6 @@ public static Output Invoke(GetInternetGatewayInvokeAr
public sealed class GetInternetGatewayArgs : global::Pulumi.InvokeArgs
{
- ///
- /// ID of internet gateway.
- ///
[Input("internetGatewayId", required: true)]
public string InternetGatewayId { get; set; } = null!;
@@ -41,9 +38,6 @@ public GetInternetGatewayArgs()
public sealed class GetInternetGatewayInvokeArgs : global::Pulumi.InvokeArgs
{
- ///
- /// ID of internet gateway.
- ///
[Input("internetGatewayId", required: true)]
public Input InternetGatewayId { get; set; } = null!;
@@ -57,9 +51,6 @@ public GetInternetGatewayInvokeArgs()
[OutputType]
public sealed class GetInternetGatewayResult
{
- ///
- /// ID of internet gateway.
- ///
public readonly string? InternetGatewayId;
///
/// Any tags to assign to the internet gateway.
diff --git a/sdk/dotnet/Ec2/GetSubnet.cs b/sdk/dotnet/Ec2/GetSubnet.cs
index 4fa2d74876..b743e30ad9 100644
--- a/sdk/dotnet/Ec2/GetSubnet.cs
+++ b/sdk/dotnet/Ec2/GetSubnet.cs
@@ -75,16 +75,16 @@ public sealed class GetSubnetResult
public readonly ImmutableArray Ipv6CidrBlocks;
///
/// Indicates whether instances launched in this subnet receive a public IPv4 address. The default value is ``false``.
- /// AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the [VPC pricing page](https://docs.aws.amazon.com/vpc/pricing/).
+ /// AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the [VPC pricing page](https://docs.aws.amazon.com/vpc/pricing/).
///
public readonly bool? MapPublicIpOnLaunch;
public readonly string? NetworkAclAssociationId;
///
/// The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries to the instances should be handled. For more information, see [Amazon EC2 instance hostname types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-naming.html) in the *User Guide*.
/// Available options:
- /// + EnableResourceNameDnsAAAARecord (true | false)
- /// + EnableResourceNameDnsARecord (true | false)
- /// + HostnameType (ip-name | resource-name)
+ /// + EnableResourceNameDnsAAAARecord (true | false)
+ /// + EnableResourceNameDnsARecord (true | false)
+ /// + HostnameType (ip-name | resource-name)
///
public readonly Outputs.PrivateDnsNameOptionsOnLaunchProperties? PrivateDnsNameOptionsOnLaunch;
public readonly string? SubnetId;
diff --git a/sdk/dotnet/Ec2/GetTransitGatewayRouteTableAssociation.cs b/sdk/dotnet/Ec2/GetTransitGatewayRouteTableAssociation.cs
deleted file mode 100644
index 3ce18032f2..0000000000
--- a/sdk/dotnet/Ec2/GetTransitGatewayRouteTableAssociation.cs
+++ /dev/null
@@ -1,62 +0,0 @@
-// *** WARNING: this file was generated by pulumi. ***
-// *** Do not edit by hand unless you're certain you know what you are doing! ***
-
-using System;
-using System.Collections.Generic;
-using System.Collections.Immutable;
-using System.Threading.Tasks;
-using Pulumi.Serialization;
-
-namespace Pulumi.AwsNative.Ec2
-{
- public static class GetTransitGatewayRouteTableAssociation
- {
- ///
- /// Resource Type definition for AWS::EC2::TransitGatewayRouteTableAssociation
- ///
- public static Task InvokeAsync(GetTransitGatewayRouteTableAssociationArgs args, InvokeOptions? options = null)
- => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:ec2:getTransitGatewayRouteTableAssociation", args ?? new GetTransitGatewayRouteTableAssociationArgs(), options.WithDefaults());
-
- ///
- /// Resource Type definition for AWS::EC2::TransitGatewayRouteTableAssociation
- ///
- public static Output Invoke(GetTransitGatewayRouteTableAssociationInvokeArgs args, InvokeOptions? options = null)
- => global::Pulumi.Deployment.Instance.Invoke("aws-native:ec2:getTransitGatewayRouteTableAssociation", args ?? new GetTransitGatewayRouteTableAssociationInvokeArgs(), options.WithDefaults());
- }
-
-
- public sealed class GetTransitGatewayRouteTableAssociationArgs : global::Pulumi.InvokeArgs
- {
- [Input("id", required: true)]
- public string Id { get; set; } = null!;
-
- public GetTransitGatewayRouteTableAssociationArgs()
- {
- }
- public static new GetTransitGatewayRouteTableAssociationArgs Empty => new GetTransitGatewayRouteTableAssociationArgs();
- }
-
- public sealed class GetTransitGatewayRouteTableAssociationInvokeArgs : global::Pulumi.InvokeArgs
- {
- [Input("id", required: true)]
- public Input Id { get; set; } = null!;
-
- public GetTransitGatewayRouteTableAssociationInvokeArgs()
- {
- }
- public static new GetTransitGatewayRouteTableAssociationInvokeArgs Empty => new GetTransitGatewayRouteTableAssociationInvokeArgs();
- }
-
-
- [OutputType]
- public sealed class GetTransitGatewayRouteTableAssociationResult
- {
- public readonly string? Id;
-
- [OutputConstructor]
- private GetTransitGatewayRouteTableAssociationResult(string? id)
- {
- Id = id;
- }
- }
-}
diff --git a/sdk/dotnet/Ec2/Inputs/LaunchTemplateDataArgs.cs b/sdk/dotnet/Ec2/Inputs/LaunchTemplateDataArgs.cs
index 2e546ad25f..b70cdac952 100644
--- a/sdk/dotnet/Ec2/Inputs/LaunchTemplateDataArgs.cs
+++ b/sdk/dotnet/Ec2/Inputs/LaunchTemplateDataArgs.cs
@@ -144,7 +144,9 @@ public InputList ElasticIn
/// + ``AllowedInstanceTypes`` - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.
/// + ``ExcludedInstanceTypes`` - The instance types to exclude from the list, even if they match your specified attributes.
///
- /// If you specify ``InstanceReq
+ /// If you specify ``InstanceRequirements``, you can't specify ``InstanceType``.
+ /// Attribute-based instance type selection is only supported when using Auto Scaling groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in the [launch instance wizard](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-instance-wizard.html), or with the [RunInstances](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html) API or [AWS::EC2::Instance](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html) AWS CloudFormation resource, you can't specify ``InstanceRequirements``.
+ /// For more information, see [Attribute-based instance type selection for EC2 Fleet](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html), [Attribute-based instance type selection for Spot Fleet](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-attribute-based-instance-type-selection.html), and [Spot placement score](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-placement-score.html) in the *Amazon EC2 User Guide*.
///
[Input("instanceRequirements")]
public Input? InstanceRequirements { get; set; }
diff --git a/sdk/dotnet/Ec2/Inputs/LaunchTemplateEbsArgs.cs b/sdk/dotnet/Ec2/Inputs/LaunchTemplateEbsArgs.cs
index 217e12351a..0c2790b37d 100644
--- a/sdk/dotnet/Ec2/Inputs/LaunchTemplateEbsArgs.cs
+++ b/sdk/dotnet/Ec2/Inputs/LaunchTemplateEbsArgs.cs
@@ -72,7 +72,7 @@ public sealed class LaunchTemplateEbsArgs : global::Pulumi.ResourceArgs
public Input? VolumeSize { get; set; }
///
- /// The volume type. For more information, see [Amazon EBS volume types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) in the *Amazon Elastic Compute Cloud User Guide*.
+ /// The volume type. For more information, see [Amazon EBS volume types](https://docs.aws.amazon.com/ebs/latest/userguide/ebs-volume-types.html) in the *Amazon EBS User Guide*.
///
[Input("volumeType")]
public Input? VolumeType { get; set; }
diff --git a/sdk/dotnet/Ec2/Inputs/LaunchTemplateElasticGpuSpecificationArgs.cs b/sdk/dotnet/Ec2/Inputs/LaunchTemplateElasticGpuSpecificationArgs.cs
index 1fb9d78c2f..9e429b143d 100644
--- a/sdk/dotnet/Ec2/Inputs/LaunchTemplateElasticGpuSpecificationArgs.cs
+++ b/sdk/dotnet/Ec2/Inputs/LaunchTemplateElasticGpuSpecificationArgs.cs
@@ -11,7 +11,8 @@ namespace Pulumi.AwsNative.Ec2.Inputs
{
///
- /// Specifies a specification for an Elastic GPU for an Amazon EC2 launch template.
+ /// Amazon Elastic Graphics reached end of life on January 8, 2024. For workloads that require graphics acceleration, we recommend that you use Amazon EC2 G4ad, G4dn, or G5 instances.
+ /// Specifies a specification for an Elastic GPU for an Amazon EC2 launch template.
/// ``ElasticGpuSpecification`` is a property of [AWS::EC2::LaunchTemplate LaunchTemplateData](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html).
///
public sealed class LaunchTemplateElasticGpuSpecificationArgs : global::Pulumi.ResourceArgs
diff --git a/sdk/dotnet/Ec2/Inputs/LaunchTemplateIamInstanceProfileArgs.cs b/sdk/dotnet/Ec2/Inputs/LaunchTemplateIamInstanceProfileArgs.cs
index a15c1705bd..675afcd271 100644
--- a/sdk/dotnet/Ec2/Inputs/LaunchTemplateIamInstanceProfileArgs.cs
+++ b/sdk/dotnet/Ec2/Inputs/LaunchTemplateIamInstanceProfileArgs.cs
@@ -12,7 +12,7 @@ namespace Pulumi.AwsNative.Ec2.Inputs
///
/// Specifies an IAM instance profile, which is a container for an IAM role for your instance. You can use an IAM role to distribute your AWS credentials to your instances.
- /// If you are creating the launch template for use with an Amazon EC2 Auto Scaling group, you can specify either the name or the ARN of the instance profile, but not both.
+ /// If you are creating the launch template for use with an ASlong group, you can specify either the name or the ARN of the instance profile, but not both.
/// ``IamInstanceProfile`` is a property of [AWS::EC2::LaunchTemplate LaunchTemplateData](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html).
///
public sealed class LaunchTemplateIamInstanceProfileArgs : global::Pulumi.ResourceArgs
diff --git a/sdk/dotnet/Ec2/Inputs/LaunchTemplateInstanceRequirementsArgs.cs b/sdk/dotnet/Ec2/Inputs/LaunchTemplateInstanceRequirementsArgs.cs
index c6c7b37b09..3214bca395 100644
--- a/sdk/dotnet/Ec2/Inputs/LaunchTemplateInstanceRequirementsArgs.cs
+++ b/sdk/dotnet/Ec2/Inputs/LaunchTemplateInstanceRequirementsArgs.cs
@@ -18,7 +18,9 @@ namespace Pulumi.AwsNative.Ec2.Inputs
/// + ``AllowedInstanceTypes`` - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.
/// + ``ExcludedInstanceTypes`` - The instance types to exclude from the list, even if they match your specified attributes.
///
- /// If you specify ``InstanceReq
+ /// If you specify ``InstanceRequirements``, you can't specify ``InstanceType``.
+ /// Attribute-based instance type selection is only supported when using Auto Scaling groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in the [launch instance wizard](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-instance-wizard.html), or with the [RunInstances](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html) API or [AWS::EC2::Instance](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html) AWS CloudFormation resource, you can't specify ``InstanceRequirements``.
+ /// For more information, see [Attribute-based instance type selection for EC2 Fleet](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html), [Attribute-based instance type selection for Spot Fleet](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-attribute-based-instance-type-selection.html), and [Spot placement score](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-placement-score.html) in the *Amazon EC2 User Guide*.
///
public sealed class LaunchTemplateInstanceRequirementsArgs : global::Pulumi.ResourceArgs
{
@@ -223,8 +225,8 @@ public InputList LocalStorageTypes
///
/// [Price protection] The price protection threshold for Spot Instances, as a percentage of an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold.
/// The parameter accepts an integer, which Amazon EC2 interprets as a percentage.
- /// To indicate no price protection threshold, specify a high value, such as ``999999``.
- /// If you set ``DesiredCapacityType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is based on the per vCPU or per memory price instead of the per instanc
+ /// If you set ``DesiredCapacityType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is based on the per vCPU or per memory price instead of the per instance price.
+ /// Only one of ``SpotMaxPricePercentageOverLowestPrice`` or ``MaxSpotPriceAsPercentageOfOptimalOnDemandPrice`` can be specified. If you don't specify either, Amazon EC2 will automatically apply optimal price protection to consistently select from a wide range of instance types. To indicate no price protection threshold for Spot Instances, meaning you want to consider all instance types that match your attributes, include one of these parameters and specify a high value, such as ``999999``.
///
[Input("maxSpotPriceAsPercentageOfOptimalOnDemandPrice")]
public Input? MaxSpotPriceAsPercentageOfOptimalOnDemandPrice { get; set; }
@@ -261,7 +263,8 @@ public InputList LocalStorageTypes
/// The parameter accepts an integer, which Amazon EC2 interprets as a percentage.
/// To turn off price protection, specify a high value, such as ``999999``.
/// This parameter is not supported for [GetSpotPlacementScores](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html) and [GetInstanceTypesFromInstanceRequirements](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html).
- /// If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is applied based on the per-
+ /// If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price.
+ /// Default: ``20``
///
[Input("onDemandMaxPricePercentageOverLowestPrice")]
public Input? OnDemandMaxPricePercentageOverLowestPrice { get; set; }
@@ -277,8 +280,10 @@ public InputList LocalStorageTypes
///
/// [Price protection] The price protection threshold for Spot Instances, as a percentage higher than an identified Spot price. The identified Spot price is the Spot price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified Spot price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose Spot price exceeds your specified threshold.
/// The parameter accepts an integer, which Amazon EC2 interprets as a percentage.
- /// To indicate no price protection threshold, specify a high value, such as ``999999``.
- /// If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is applied based on the per-vCPU or per-memory price i
+ /// If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price.
+ /// This parameter is not supported for [GetSpotPlacementScores](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html) and [GetInstanceTypesFromInstanceRequirements](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html).
+ /// Only one of ``SpotMaxPricePercentageOverLowestPrice`` or ``MaxSpotPriceAsPercentageOfOptimalOnDemandPrice`` can be specified. If you don't specify either, Amazon EC2 will automatically apply optimal price protection to consistently select from a wide range of instance types. To indicate no price protection threshold for Spot Instances, meaning you want to consider all instance types that match your attributes, include one of these parameters and specify a high value, such as ``999999``.
+ /// Default: ``100``
///
[Input("spotMaxPricePercentageOverLowestPrice")]
public Input? SpotMaxPricePercentageOverLowestPrice { get; set; }
diff --git a/sdk/dotnet/Ec2/Inputs/LaunchTemplateMaintenanceOptionsArgs.cs b/sdk/dotnet/Ec2/Inputs/LaunchTemplateMaintenanceOptionsArgs.cs
index dfe01930df..9e5b313c72 100644
--- a/sdk/dotnet/Ec2/Inputs/LaunchTemplateMaintenanceOptionsArgs.cs
+++ b/sdk/dotnet/Ec2/Inputs/LaunchTemplateMaintenanceOptionsArgs.cs
@@ -21,9 +21,6 @@ public sealed class LaunchTemplateMaintenanceOptionsArgs : global::Pulumi.Resour
[Input("autoRecovery")]
public Input? AutoRecovery { get; set; }
- [Input("rebootMigration")]
- public Input? RebootMigration { get; set; }
-
public LaunchTemplateMaintenanceOptionsArgs()
{
}
diff --git a/sdk/dotnet/Ec2/Inputs/LaunchTemplateSpotOptionsArgs.cs b/sdk/dotnet/Ec2/Inputs/LaunchTemplateSpotOptionsArgs.cs
index 2ce732dd94..d8e1b0447e 100644
--- a/sdk/dotnet/Ec2/Inputs/LaunchTemplateSpotOptionsArgs.cs
+++ b/sdk/dotnet/Ec2/Inputs/LaunchTemplateSpotOptionsArgs.cs
@@ -37,7 +37,7 @@ public sealed class LaunchTemplateSpotOptionsArgs : global::Pulumi.ResourceArgs
///
/// The Spot Instance request type.
- /// If you are using Spot Instances with an Auto Scaling group, use ``one-time`` requests, as the Amazon EC2 Auto Scaling service handles requesting new Spot Instances whenever the group is below its desired capacity.
+ /// If you are using Spot Instances with an Auto Scaling group, use ``one-time`` requests, as the ASlong service handles requesting new Spot Instances whenever the group is below its desired capacity.
///
[Input("spotInstanceType")]
public Input? SpotInstanceType { get; set; }
diff --git a/sdk/dotnet/Ec2/Inputs/PrivateDnsNameOptionsOnLaunchPropertiesArgs.cs b/sdk/dotnet/Ec2/Inputs/PrivateDnsNameOptionsOnLaunchPropertiesArgs.cs
index 6dd8ef3959..c3ad54d737 100644
--- a/sdk/dotnet/Ec2/Inputs/PrivateDnsNameOptionsOnLaunchPropertiesArgs.cs
+++ b/sdk/dotnet/Ec2/Inputs/PrivateDnsNameOptionsOnLaunchPropertiesArgs.cs
@@ -13,9 +13,9 @@ namespace Pulumi.AwsNative.Ec2.Inputs
///
/// The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries to the instances should be handled. For more information, see [Amazon EC2 instance hostname types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-naming.html) in the *User Guide*.
/// Available options:
- /// + EnableResourceNameDnsAAAARecord (true | false)
- /// + EnableResourceNameDnsARecord (true | false)
- /// + HostnameType (ip-name | resource-name)
+ /// + EnableResourceNameDnsAAAARecord (true | false)
+ /// + EnableResourceNameDnsARecord (true | false)
+ /// + HostnameType (ip-name | resource-name)
///
public sealed class PrivateDnsNameOptionsOnLaunchPropertiesArgs : global::Pulumi.ResourceArgs
{
diff --git a/sdk/dotnet/Ec2/InternetGateway.cs b/sdk/dotnet/Ec2/InternetGateway.cs
index 6cc5d4c76b..e81ad2ffd0 100644
--- a/sdk/dotnet/Ec2/InternetGateway.cs
+++ b/sdk/dotnet/Ec2/InternetGateway.cs
@@ -10,7 +10,7 @@
namespace Pulumi.AwsNative.Ec2
{
///
- /// Resource Type definition for AWS::EC2::InternetGateway
+ /// Allocates an internet gateway for use with a VPC. After creating the Internet gateway, you then attach it to a VPC.
///
/// ## Example Usage
/// ### Example
@@ -42,9 +42,6 @@ namespace Pulumi.AwsNative.Ec2
[AwsNativeResourceType("aws-native:ec2:InternetGateway")]
public partial class InternetGateway : global::Pulumi.CustomResource
{
- ///
- /// ID of internet gateway.
- ///
[Output("internetGatewayId")]
public Output InternetGatewayId { get; private set; } = null!;
diff --git a/sdk/dotnet/Ec2/Outputs/LaunchTemplateData.cs b/sdk/dotnet/Ec2/Outputs/LaunchTemplateData.cs
index 8ec4e398d1..7a69fda226 100644
--- a/sdk/dotnet/Ec2/Outputs/LaunchTemplateData.cs
+++ b/sdk/dotnet/Ec2/Outputs/LaunchTemplateData.cs
@@ -97,7 +97,9 @@ public sealed class LaunchTemplateData
/// + ``AllowedInstanceTypes`` - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.
/// + ``ExcludedInstanceTypes`` - The instance types to exclude from the list, even if they match your specified attributes.
///
- /// If you specify ``InstanceReq
+ /// If you specify ``InstanceRequirements``, you can't specify ``InstanceType``.
+ /// Attribute-based instance type selection is only supported when using Auto Scaling groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in the [launch instance wizard](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-instance-wizard.html), or with the [RunInstances](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html) API or [AWS::EC2::Instance](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html) AWS CloudFormation resource, you can't specify ``InstanceRequirements``.
+ /// For more information, see [Attribute-based instance type selection for EC2 Fleet](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html), [Attribute-based instance type selection for Spot Fleet](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-attribute-based-instance-type-selection.html), and [Spot placement score](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-placement-score.html) in the *Amazon EC2 User Guide*.
///
public readonly Outputs.LaunchTemplateInstanceRequirements? InstanceRequirements;
///
diff --git a/sdk/dotnet/Ec2/Outputs/LaunchTemplateEbs.cs b/sdk/dotnet/Ec2/Outputs/LaunchTemplateEbs.cs
index 31a67441ad..cbb5c074c7 100644
--- a/sdk/dotnet/Ec2/Outputs/LaunchTemplateEbs.cs
+++ b/sdk/dotnet/Ec2/Outputs/LaunchTemplateEbs.cs
@@ -59,7 +59,7 @@ public sealed class LaunchTemplateEbs
///
public readonly int? VolumeSize;
///
- /// The volume type. For more information, see [Amazon EBS volume types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) in the *Amazon Elastic Compute Cloud User Guide*.
+ /// The volume type. For more information, see [Amazon EBS volume types](https://docs.aws.amazon.com/ebs/latest/userguide/ebs-volume-types.html) in the *Amazon EBS User Guide*.
///
public readonly string? VolumeType;
diff --git a/sdk/dotnet/Ec2/Outputs/LaunchTemplateElasticGpuSpecification.cs b/sdk/dotnet/Ec2/Outputs/LaunchTemplateElasticGpuSpecification.cs
index 18b1ed960f..fa6a367c27 100644
--- a/sdk/dotnet/Ec2/Outputs/LaunchTemplateElasticGpuSpecification.cs
+++ b/sdk/dotnet/Ec2/Outputs/LaunchTemplateElasticGpuSpecification.cs
@@ -11,7 +11,8 @@ namespace Pulumi.AwsNative.Ec2.Outputs
{
///
- /// Specifies a specification for an Elastic GPU for an Amazon EC2 launch template.
+ /// Amazon Elastic Graphics reached end of life on January 8, 2024. For workloads that require graphics acceleration, we recommend that you use Amazon EC2 G4ad, G4dn, or G5 instances.
+ /// Specifies a specification for an Elastic GPU for an Amazon EC2 launch template.
/// ``ElasticGpuSpecification`` is a property of [AWS::EC2::LaunchTemplate LaunchTemplateData](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html).
///
[OutputType]
diff --git a/sdk/dotnet/Ec2/Outputs/LaunchTemplateIamInstanceProfile.cs b/sdk/dotnet/Ec2/Outputs/LaunchTemplateIamInstanceProfile.cs
index ad7057298d..4e4a3b1ad1 100644
--- a/sdk/dotnet/Ec2/Outputs/LaunchTemplateIamInstanceProfile.cs
+++ b/sdk/dotnet/Ec2/Outputs/LaunchTemplateIamInstanceProfile.cs
@@ -12,7 +12,7 @@ namespace Pulumi.AwsNative.Ec2.Outputs
///
/// Specifies an IAM instance profile, which is a container for an IAM role for your instance. You can use an IAM role to distribute your AWS credentials to your instances.
- /// If you are creating the launch template for use with an Amazon EC2 Auto Scaling group, you can specify either the name or the ARN of the instance profile, but not both.
+ /// If you are creating the launch template for use with an ASlong group, you can specify either the name or the ARN of the instance profile, but not both.
/// ``IamInstanceProfile`` is a property of [AWS::EC2::LaunchTemplate LaunchTemplateData](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html).
///
[OutputType]
diff --git a/sdk/dotnet/Ec2/Outputs/LaunchTemplateInstanceRequirements.cs b/sdk/dotnet/Ec2/Outputs/LaunchTemplateInstanceRequirements.cs
index 41c62fe144..ab7b2d0603 100644
--- a/sdk/dotnet/Ec2/Outputs/LaunchTemplateInstanceRequirements.cs
+++ b/sdk/dotnet/Ec2/Outputs/LaunchTemplateInstanceRequirements.cs
@@ -18,7 +18,9 @@ namespace Pulumi.AwsNative.Ec2.Outputs
/// + ``AllowedInstanceTypes`` - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.
/// + ``ExcludedInstanceTypes`` - The instance types to exclude from the list, even if they match your specified attributes.
///
- /// If you specify ``InstanceReq
+ /// If you specify ``InstanceRequirements``, you can't specify ``InstanceType``.
+ /// Attribute-based instance type selection is only supported when using Auto Scaling groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in the [launch instance wizard](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-instance-wizard.html), or with the [RunInstances](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html) API or [AWS::EC2::Instance](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html) AWS CloudFormation resource, you can't specify ``InstanceRequirements``.
+ /// For more information, see [Attribute-based instance type selection for EC2 Fleet](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html), [Attribute-based instance type selection for Spot Fleet](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-attribute-based-instance-type-selection.html), and [Spot placement score](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-placement-score.html) in the *Amazon EC2 User Guide*.
///
[OutputType]
public sealed class LaunchTemplateInstanceRequirements
@@ -148,8 +150,8 @@ public sealed class LaunchTemplateInstanceRequirements
///
/// [Price protection] The price protection threshold for Spot Instances, as a percentage of an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold.
/// The parameter accepts an integer, which Amazon EC2 interprets as a percentage.
- /// To indicate no price protection threshold, specify a high value, such as ``999999``.
- /// If you set ``DesiredCapacityType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is based on the per vCPU or per memory price instead of the per instanc
+ /// If you set ``DesiredCapacityType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is based on the per vCPU or per memory price instead of the per instance price.
+ /// Only one of ``SpotMaxPricePercentageOverLowestPrice`` or ``MaxSpotPriceAsPercentageOfOptimalOnDemandPrice`` can be specified. If you don't specify either, Amazon EC2 will automatically apply optimal price protection to consistently select from a wide range of instance types. To indicate no price protection threshold for Spot Instances, meaning you want to consider all instance types that match your attributes, include one of these parameters and specify a high value, such as ``999999``.
///
public readonly int? MaxSpotPriceAsPercentageOfOptimalOnDemandPrice;
///
@@ -176,7 +178,8 @@ public sealed class LaunchTemplateInstanceRequirements
/// The parameter accepts an integer, which Amazon EC2 interprets as a percentage.
/// To turn off price protection, specify a high value, such as ``999999``.
/// This parameter is not supported for [GetSpotPlacementScores](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html) and [GetInstanceTypesFromInstanceRequirements](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html).
- /// If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is applied based on the per-
+ /// If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price.
+ /// Default: ``20``
///
public readonly int? OnDemandMaxPricePercentageOverLowestPrice;
///
@@ -188,8 +191,10 @@ public sealed class LaunchTemplateInstanceRequirements
///
/// [Price protection] The price protection threshold for Spot Instances, as a percentage higher than an identified Spot price. The identified Spot price is the Spot price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified Spot price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose Spot price exceeds your specified threshold.
/// The parameter accepts an integer, which Amazon EC2 interprets as a percentage.
- /// To indicate no price protection threshold, specify a high value, such as ``999999``.
- /// If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is applied based on the per-vCPU or per-memory price i
+ /// If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price.
+ /// This parameter is not supported for [GetSpotPlacementScores](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html) and [GetInstanceTypesFromInstanceRequirements](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html).
+ /// Only one of ``SpotMaxPricePercentageOverLowestPrice`` or ``MaxSpotPriceAsPercentageOfOptimalOnDemandPrice`` can be specified. If you don't specify either, Amazon EC2 will automatically apply optimal price protection to consistently select from a wide range of instance types. To indicate no price protection threshold for Spot Instances, meaning you want to consider all instance types that match your attributes, include one of these parameters and specify a high value, such as ``999999``.
+ /// Default: ``100``
///
public readonly int? SpotMaxPricePercentageOverLowestPrice;
///
diff --git a/sdk/dotnet/Ec2/Outputs/LaunchTemplateMaintenanceOptions.cs b/sdk/dotnet/Ec2/Outputs/LaunchTemplateMaintenanceOptions.cs
index 673be452ad..44ad48c90b 100644
--- a/sdk/dotnet/Ec2/Outputs/LaunchTemplateMaintenanceOptions.cs
+++ b/sdk/dotnet/Ec2/Outputs/LaunchTemplateMaintenanceOptions.cs
@@ -20,16 +20,11 @@ public sealed class LaunchTemplateMaintenanceOptions
/// Disables the automatic recovery behavior of your instance or sets it to default.
///
public readonly string? AutoRecovery;
- public readonly string? RebootMigration;
[OutputConstructor]
- private LaunchTemplateMaintenanceOptions(
- string? autoRecovery,
-
- string? rebootMigration)
+ private LaunchTemplateMaintenanceOptions(string? autoRecovery)
{
AutoRecovery = autoRecovery;
- RebootMigration = rebootMigration;
}
}
}
diff --git a/sdk/dotnet/Ec2/Outputs/LaunchTemplateSpotOptions.cs b/sdk/dotnet/Ec2/Outputs/LaunchTemplateSpotOptions.cs
index ff7048c682..58450fe3b2 100644
--- a/sdk/dotnet/Ec2/Outputs/LaunchTemplateSpotOptions.cs
+++ b/sdk/dotnet/Ec2/Outputs/LaunchTemplateSpotOptions.cs
@@ -32,7 +32,7 @@ public sealed class LaunchTemplateSpotOptions
public readonly string? MaxPrice;
///
/// The Spot Instance request type.
- /// If you are using Spot Instances with an Auto Scaling group, use ``one-time`` requests, as the Amazon EC2 Auto Scaling service handles requesting new Spot Instances whenever the group is below its desired capacity.
+ /// If you are using Spot Instances with an Auto Scaling group, use ``one-time`` requests, as the ASlong service handles requesting new Spot Instances whenever the group is below its desired capacity.
///
public readonly string? SpotInstanceType;
///
diff --git a/sdk/dotnet/Ec2/Outputs/PrivateDnsNameOptionsOnLaunchProperties.cs b/sdk/dotnet/Ec2/Outputs/PrivateDnsNameOptionsOnLaunchProperties.cs
index 348bab0763..bc5ba5aef6 100644
--- a/sdk/dotnet/Ec2/Outputs/PrivateDnsNameOptionsOnLaunchProperties.cs
+++ b/sdk/dotnet/Ec2/Outputs/PrivateDnsNameOptionsOnLaunchProperties.cs
@@ -13,9 +13,9 @@ namespace Pulumi.AwsNative.Ec2.Outputs
///
/// The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries to the instances should be handled. For more information, see [Amazon EC2 instance hostname types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-naming.html) in the *User Guide*.
/// Available options:
- /// + EnableResourceNameDnsAAAARecord (true | false)
- /// + EnableResourceNameDnsARecord (true | false)
- /// + HostnameType (ip-name | resource-name)
+ /// + EnableResourceNameDnsAAAARecord (true | false)
+ /// + EnableResourceNameDnsARecord (true | false)
+ /// + HostnameType (ip-name | resource-name)
///
[OutputType]
public sealed class PrivateDnsNameOptionsOnLaunchProperties
diff --git a/sdk/dotnet/Ec2/Subnet.cs b/sdk/dotnet/Ec2/Subnet.cs
index 5b0397309d..8fff0fae38 100644
--- a/sdk/dotnet/Ec2/Subnet.cs
+++ b/sdk/dotnet/Ec2/Subnet.cs
@@ -50,6 +50,12 @@ public partial class Subnet : global::Pulumi.CustomResource
[Output("enableDns64")]
public Output EnableDns64 { get; private set; } = null!;
+ ///
+ /// Indicates the device position for local network interfaces in this subnet. For example, ``1`` indicates local network interfaces in this subnet are the secondary network interface (eth1).
+ ///
+ [Output("enableLniAtDeviceIndex")]
+ public Output EnableLniAtDeviceIndex { get; private set; } = null!;
+
///
/// An IPv4 IPAM pool ID for the subnet.
///
@@ -95,7 +101,7 @@ public partial class Subnet : global::Pulumi.CustomResource
///
/// Indicates whether instances launched in this subnet receive a public IPv4 address. The default value is ``false``.
- /// AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the [VPC pricing page](https://docs.aws.amazon.com/vpc/pricing/).
+ /// AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the [VPC pricing page](https://docs.aws.amazon.com/vpc/pricing/).
///
[Output("mapPublicIpOnLaunch")]
public Output MapPublicIpOnLaunch { get; private set; } = null!;
@@ -112,9 +118,9 @@ public partial class Subnet : global::Pulumi.CustomResource
///
/// The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries to the instances should be handled. For more information, see [Amazon EC2 instance hostname types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-naming.html) in the *User Guide*.
/// Available options:
- /// + EnableResourceNameDnsAAAARecord (true | false)
- /// + EnableResourceNameDnsARecord (true | false)
- /// + HostnameType (ip-name | resource-name)
+ /// + EnableResourceNameDnsAAAARecord (true | false)
+ /// + EnableResourceNameDnsARecord (true | false)
+ /// + HostnameType (ip-name | resource-name)
///
[Output("privateDnsNameOptionsOnLaunch")]
public Output PrivateDnsNameOptionsOnLaunch { get; private set; } = null!;
@@ -226,6 +232,12 @@ public sealed class SubnetArgs : global::Pulumi.ResourceArgs
[Input("enableDns64")]
public Input? EnableDns64 { get; set; }
+ ///
+ /// Indicates the device position for local network interfaces in this subnet. For example, ``1`` indicates local network interfaces in this subnet are the secondary network interface (eth1).
+ ///
+ [Input("enableLniAtDeviceIndex")]
+ public Input? EnableLniAtDeviceIndex { get; set; }
+
///
/// An IPv4 IPAM pool ID for the subnet.
///
@@ -277,7 +289,7 @@ public InputList Ipv6CidrBlocks
///
/// Indicates whether instances launched in this subnet receive a public IPv4 address. The default value is ``false``.
- /// AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the [VPC pricing page](https://docs.aws.amazon.com/vpc/pricing/).
+ /// AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the [VPC pricing page](https://docs.aws.amazon.com/vpc/pricing/).
///
[Input("mapPublicIpOnLaunch")]
public Input? MapPublicIpOnLaunch { get; set; }
@@ -291,9 +303,9 @@ public InputList Ipv6CidrBlocks
///
/// The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries to the instances should be handled. For more information, see [Amazon EC2 instance hostname types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-naming.html) in the *User Guide*.
/// Available options:
- /// + EnableResourceNameDnsAAAARecord (true | false)
- /// + EnableResourceNameDnsARecord (true | false)
- /// + HostnameType (ip-name | resource-name)
+ /// + EnableResourceNameDnsAAAARecord (true | false)
+ /// + EnableResourceNameDnsARecord (true | false)
+ /// + HostnameType (ip-name | resource-name)
///
[Input("privateDnsNameOptionsOnLaunch")]
public Input? PrivateDnsNameOptionsOnLaunch { get; set; }
diff --git a/sdk/dotnet/Ec2/TransitGatewayRouteTableAssociation.cs b/sdk/dotnet/Ec2/TransitGatewayRouteTableAssociation.cs
index 4b36095494..6961e58c18 100644
--- a/sdk/dotnet/Ec2/TransitGatewayRouteTableAssociation.cs
+++ b/sdk/dotnet/Ec2/TransitGatewayRouteTableAssociation.cs
@@ -15,12 +15,15 @@ namespace Pulumi.AwsNative.Ec2
[AwsNativeResourceType("aws-native:ec2:TransitGatewayRouteTableAssociation")]
public partial class TransitGatewayRouteTableAssociation : global::Pulumi.CustomResource
{
- [Output("awsId")]
- public Output AwsId { get; private set; } = null!;
-
+ ///
+ /// The ID of transit gateway attachment.
+ ///
[Output("transitGatewayAttachmentId")]
public Output TransitGatewayAttachmentId { get; private set; } = null!;
+ ///
+ /// The ID of transit gateway route table.
+ ///
[Output("transitGatewayRouteTableId")]
public Output TransitGatewayRouteTableId { get; private set; } = null!;
@@ -74,9 +77,15 @@ public static TransitGatewayRouteTableAssociation Get(string name, Input
public sealed class TransitGatewayRouteTableAssociationArgs : global::Pulumi.ResourceArgs
{
+ ///
+ /// The ID of transit gateway attachment.
+ ///
[Input("transitGatewayAttachmentId", required: true)]
public Input TransitGatewayAttachmentId { get; set; } = null!;
+ ///
+ /// The ID of transit gateway route table.
+ ///
[Input("transitGatewayRouteTableId", required: true)]
public Input TransitGatewayRouteTableId { get; set; } = null!;
diff --git a/sdk/dotnet/Efs/Enums.cs b/sdk/dotnet/Efs/Enums.cs
index 0ccf99b9fd..3ff42ddb55 100644
--- a/sdk/dotnet/Efs/Enums.cs
+++ b/sdk/dotnet/Efs/Enums.cs
@@ -7,6 +7,39 @@
namespace Pulumi.AwsNative.Efs
{
+ ///
+ /// Set the backup policy status for the file system.
+ /// + *ENABLED* - Turns automatic backups on for the file system.
+ /// + *DISABLED* - Turns automatic backups off for the file system.
+ ///
+ [EnumType]
+ public readonly struct FileSystemBackupPolicyStatus : IEquatable
+ {
+ private readonly string _value;
+
+ private FileSystemBackupPolicyStatus(string value)
+ {
+ _value = value ?? throw new ArgumentNullException(nameof(value));
+ }
+
+ public static FileSystemBackupPolicyStatus Disabled { get; } = new FileSystemBackupPolicyStatus("DISABLED");
+ public static FileSystemBackupPolicyStatus Enabled { get; } = new FileSystemBackupPolicyStatus("ENABLED");
+
+ public static bool operator ==(FileSystemBackupPolicyStatus left, FileSystemBackupPolicyStatus right) => left.Equals(right);
+ public static bool operator !=(FileSystemBackupPolicyStatus left, FileSystemBackupPolicyStatus right) => !left.Equals(right);
+
+ public static explicit operator string(FileSystemBackupPolicyStatus value) => value._value;
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override bool Equals(object? obj) => obj is FileSystemBackupPolicyStatus other && Equals(other);
+ public bool Equals(FileSystemBackupPolicyStatus other) => string.Equals(_value, other._value, StringComparison.Ordinal);
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override int GetHashCode() => _value?.GetHashCode() ?? 0;
+
+ public override string ToString() => _value;
+ }
+
///
/// The status of the file system's replication overwrite protection.
/// + ``ENABLED`` – The file system cannot be used as the destination file system in a replication configuration. The file system is writeable. Replication overwrite protection is ``ENABLED`` by default.
diff --git a/sdk/dotnet/Efs/Inputs/FileSystemBackupPolicyArgs.cs b/sdk/dotnet/Efs/Inputs/FileSystemBackupPolicyArgs.cs
index 4c9e56adad..9ab45a7749 100644
--- a/sdk/dotnet/Efs/Inputs/FileSystemBackupPolicyArgs.cs
+++ b/sdk/dotnet/Efs/Inputs/FileSystemBackupPolicyArgs.cs
@@ -21,7 +21,7 @@ public sealed class FileSystemBackupPolicyArgs : global::Pulumi.ResourceArgs
/// + *DISABLED* - Turns automatic backups off for the file system.
///
[Input("status", required: true)]
- public Input Status { get; set; } = null!;
+ public Input Status { get; set; } = null!;
public FileSystemBackupPolicyArgs()
{
diff --git a/sdk/dotnet/Efs/Outputs/FileSystemBackupPolicy.cs b/sdk/dotnet/Efs/Outputs/FileSystemBackupPolicy.cs
index 3ce064138c..003c4fefc7 100644
--- a/sdk/dotnet/Efs/Outputs/FileSystemBackupPolicy.cs
+++ b/sdk/dotnet/Efs/Outputs/FileSystemBackupPolicy.cs
@@ -21,10 +21,10 @@ public sealed class FileSystemBackupPolicy
/// + *ENABLED* - Turns automatic backups on for the file system.
/// + *DISABLED* - Turns automatic backups off for the file system.
///
- public readonly string Status;
+ public readonly Pulumi.AwsNative.Efs.FileSystemBackupPolicyStatus Status;
[OutputConstructor]
- private FileSystemBackupPolicy(string status)
+ private FileSystemBackupPolicy(Pulumi.AwsNative.Efs.FileSystemBackupPolicyStatus status)
{
Status = status;
}
diff --git a/sdk/dotnet/ElastiCache/Enums.cs b/sdk/dotnet/ElastiCache/Enums.cs
index cd912a3164..33c61367ba 100644
--- a/sdk/dotnet/ElastiCache/Enums.cs
+++ b/sdk/dotnet/ElastiCache/Enums.cs
@@ -39,7 +39,7 @@ private GlobalReplicationGroupMemberRole(string value)
}
///
- /// The unix of cached data capacity of the Serverless Cache.
+ /// The unit of cached data capacity of the Serverless Cache.
///
[EnumType]
public readonly struct ServerlessCacheDataStorageUnit : IEquatable
diff --git a/sdk/dotnet/ElastiCache/Inputs/ServerlessCacheDataStorageArgs.cs b/sdk/dotnet/ElastiCache/Inputs/ServerlessCacheDataStorageArgs.cs
index 87732741d3..b3d199ea3b 100644
--- a/sdk/dotnet/ElastiCache/Inputs/ServerlessCacheDataStorageArgs.cs
+++ b/sdk/dotnet/ElastiCache/Inputs/ServerlessCacheDataStorageArgs.cs
@@ -18,11 +18,17 @@ public sealed class ServerlessCacheDataStorageArgs : global::Pulumi.ResourceArgs
///
/// The maximum cached data capacity of the Serverless Cache.
///
- [Input("maximum", required: true)]
- public Input Maximum { get; set; } = null!;
+ [Input("maximum")]
+ public Input? Maximum { get; set; }
///
- /// The unix of cached data capacity of the Serverless Cache.
+ /// The minimum cached data capacity of the Serverless Cache.
+ ///
+ [Input("minimum")]
+ public Input? Minimum { get; set; }
+
+ ///
+ /// The unit of cached data capacity of the Serverless Cache.
///
[Input("unit", required: true)]
public Input Unit { get; set; } = null!;
diff --git a/sdk/dotnet/ElastiCache/Inputs/ServerlessCacheEcpuPerSecondArgs.cs b/sdk/dotnet/ElastiCache/Inputs/ServerlessCacheEcpuPerSecondArgs.cs
index 1aa6695a67..bf3f6dd20b 100644
--- a/sdk/dotnet/ElastiCache/Inputs/ServerlessCacheEcpuPerSecondArgs.cs
+++ b/sdk/dotnet/ElastiCache/Inputs/ServerlessCacheEcpuPerSecondArgs.cs
@@ -18,8 +18,14 @@ public sealed class ServerlessCacheEcpuPerSecondArgs : global::Pulumi.ResourceAr
///
/// The maximum ECPU per second of the Serverless Cache.
///
- [Input("maximum", required: true)]
- public Input Maximum { get; set; } = null!;
+ [Input("maximum")]
+ public Input? Maximum { get; set; }
+
+ ///
+ /// The minimum ECPU per second of the Serverless Cache.
+ ///
+ [Input("minimum")]
+ public Input? Minimum { get; set; }
public ServerlessCacheEcpuPerSecondArgs()
{
diff --git a/sdk/dotnet/ElastiCache/Outputs/ServerlessCacheDataStorage.cs b/sdk/dotnet/ElastiCache/Outputs/ServerlessCacheDataStorage.cs
index bedfe89e96..8233c560be 100644
--- a/sdk/dotnet/ElastiCache/Outputs/ServerlessCacheDataStorage.cs
+++ b/sdk/dotnet/ElastiCache/Outputs/ServerlessCacheDataStorage.cs
@@ -19,19 +19,26 @@ public sealed class ServerlessCacheDataStorage
///
/// The maximum cached data capacity of the Serverless Cache.
///
- public readonly int Maximum;
+ public readonly int? Maximum;
///
- /// The unix of cached data capacity of the Serverless Cache.
+ /// The minimum cached data capacity of the Serverless Cache.
+ ///
+ public readonly int? Minimum;
+ ///
+ /// The unit of cached data capacity of the Serverless Cache.
///
public readonly Pulumi.AwsNative.ElastiCache.ServerlessCacheDataStorageUnit Unit;
[OutputConstructor]
private ServerlessCacheDataStorage(
- int maximum,
+ int? maximum,
+
+ int? minimum,
Pulumi.AwsNative.ElastiCache.ServerlessCacheDataStorageUnit unit)
{
Maximum = maximum;
+ Minimum = minimum;
Unit = unit;
}
}
diff --git a/sdk/dotnet/ElastiCache/Outputs/ServerlessCacheEcpuPerSecond.cs b/sdk/dotnet/ElastiCache/Outputs/ServerlessCacheEcpuPerSecond.cs
index 862ddc4e0b..f7d3cd0d27 100644
--- a/sdk/dotnet/ElastiCache/Outputs/ServerlessCacheEcpuPerSecond.cs
+++ b/sdk/dotnet/ElastiCache/Outputs/ServerlessCacheEcpuPerSecond.cs
@@ -19,12 +19,20 @@ public sealed class ServerlessCacheEcpuPerSecond
///
/// The maximum ECPU per second of the Serverless Cache.
///
- public readonly int Maximum;
+ public readonly int? Maximum;
+ ///
+ /// The minimum ECPU per second of the Serverless Cache.
+ ///
+ public readonly int? Minimum;
[OutputConstructor]
- private ServerlessCacheEcpuPerSecond(int maximum)
+ private ServerlessCacheEcpuPerSecond(
+ int? maximum,
+
+ int? minimum)
{
Maximum = maximum;
+ Minimum = minimum;
}
}
}
diff --git a/sdk/dotnet/EntityResolution/Enums.cs b/sdk/dotnet/EntityResolution/Enums.cs
index a9bf4f9214..da358a2acf 100644
--- a/sdk/dotnet/EntityResolution/Enums.cs
+++ b/sdk/dotnet/EntityResolution/Enums.cs
@@ -34,6 +34,34 @@ private IdMappingWorkflowIdMappingTechniquesIdMappingType(string value)
public override string ToString() => _value;
}
+ [EnumType]
+ public readonly struct IdMappingWorkflowInputSourceType : IEquatable
+ {
+ private readonly string _value;
+
+ private IdMappingWorkflowInputSourceType(string value)
+ {
+ _value = value ?? throw new ArgumentNullException(nameof(value));
+ }
+
+ public static IdMappingWorkflowInputSourceType Source { get; } = new IdMappingWorkflowInputSourceType("SOURCE");
+ public static IdMappingWorkflowInputSourceType Target { get; } = new IdMappingWorkflowInputSourceType("TARGET");
+
+ public static bool operator ==(IdMappingWorkflowInputSourceType left, IdMappingWorkflowInputSourceType right) => left.Equals(right);
+ public static bool operator !=(IdMappingWorkflowInputSourceType left, IdMappingWorkflowInputSourceType right) => !left.Equals(right);
+
+ public static explicit operator string(IdMappingWorkflowInputSourceType value) => value._value;
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override bool Equals(object? obj) => obj is IdMappingWorkflowInputSourceType other && Equals(other);
+ public bool Equals(IdMappingWorkflowInputSourceType other) => string.Equals(_value, other._value, StringComparison.Ordinal);
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override int GetHashCode() => _value?.GetHashCode() ?? 0;
+
+ public override string ToString() => _value;
+ }
+
[EnumType]
public readonly struct MatchingWorkflowResolutionTechniquesResolutionType : IEquatable
{
diff --git a/sdk/dotnet/EntityResolution/IdMappingWorkflow.cs b/sdk/dotnet/EntityResolution/IdMappingWorkflow.cs
index ae038b0e9b..4ebc4c03c7 100644
--- a/sdk/dotnet/EntityResolution/IdMappingWorkflow.cs
+++ b/sdk/dotnet/EntityResolution/IdMappingWorkflow.cs
@@ -117,7 +117,7 @@ public InputList InputSourceConfig
set => _inputSourceConfig = value;
}
- [Input("outputSourceConfig", required: true)]
+ [Input("outputSourceConfig")]
private InputList? _outputSourceConfig;
public InputList OutputSourceConfig
{
diff --git a/sdk/dotnet/EntityResolution/Inputs/IdMappingWorkflowInputSourceArgs.cs b/sdk/dotnet/EntityResolution/Inputs/IdMappingWorkflowInputSourceArgs.cs
index 6a2aeefe9b..b51607607d 100644
--- a/sdk/dotnet/EntityResolution/Inputs/IdMappingWorkflowInputSourceArgs.cs
+++ b/sdk/dotnet/EntityResolution/Inputs/IdMappingWorkflowInputSourceArgs.cs
@@ -13,13 +13,16 @@ namespace Pulumi.AwsNative.EntityResolution.Inputs
public sealed class IdMappingWorkflowInputSourceArgs : global::Pulumi.ResourceArgs
{
///
- /// An Glue table ARN for the input source table
+ /// An Glue table ARN for the input source table or IdNamespace ARN
///
[Input("inputSourceArn", required: true)]
public Input InputSourceArn { get; set; } = null!;
- [Input("schemaArn", required: true)]
- public Input SchemaArn { get; set; } = null!;
+ [Input("schemaArn")]
+ public Input? SchemaArn { get; set; }
+
+ [Input("type")]
+ public Input? Type { get; set; }
public IdMappingWorkflowInputSourceArgs()
{
diff --git a/sdk/dotnet/EntityResolution/Outputs/IdMappingWorkflowInputSource.cs b/sdk/dotnet/EntityResolution/Outputs/IdMappingWorkflowInputSource.cs
index 0e0b0ab877..04621ae5c2 100644
--- a/sdk/dotnet/EntityResolution/Outputs/IdMappingWorkflowInputSource.cs
+++ b/sdk/dotnet/EntityResolution/Outputs/IdMappingWorkflowInputSource.cs
@@ -14,19 +14,23 @@ namespace Pulumi.AwsNative.EntityResolution.Outputs
public sealed class IdMappingWorkflowInputSource
{
///
- /// An Glue table ARN for the input source table
+ /// An Glue table ARN for the input source table or IdNamespace ARN
///
public readonly string InputSourceArn;
- public readonly string SchemaArn;
+ public readonly string? SchemaArn;
+ public readonly Pulumi.AwsNative.EntityResolution.IdMappingWorkflowInputSourceType? Type;
[OutputConstructor]
private IdMappingWorkflowInputSource(
string inputSourceArn,
- string schemaArn)
+ string? schemaArn,
+
+ Pulumi.AwsNative.EntityResolution.IdMappingWorkflowInputSourceType? type)
{
InputSourceArn = inputSourceArn;
SchemaArn = schemaArn;
+ Type = type;
}
}
}
diff --git a/sdk/dotnet/GameLift/GameServerGroup.cs b/sdk/dotnet/GameLift/GameServerGroup.cs
index 8614718a0f..bfd0336095 100644
--- a/sdk/dotnet/GameLift/GameServerGroup.cs
+++ b/sdk/dotnet/GameLift/GameServerGroup.cs
@@ -22,7 +22,7 @@ public partial class GameServerGroup : global::Pulumi.CustomResource
public Output AutoScalingGroupArn { get; private set; } = null!;
///
- /// Configuration settings to define a scaling policy for the Auto Scaling group that is optimized for game hosting
+ /// Configuration settings to define a scaling policy for the Auto Scaling group that is optimized for game hosting. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource.
///
[Output("autoScalingPolicy")]
public Output AutoScalingPolicy { get; private set; } = null!;
@@ -64,19 +64,19 @@ public partial class GameServerGroup : global::Pulumi.CustomResource
public Output> InstanceDefinitions { get; private set; } = null!;
///
- /// The EC2 launch template that contains configuration settings and game server code to be deployed to all instances in the game server group.
+ /// The EC2 launch template that contains configuration settings and game server code to be deployed to all instances in the game server group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource.
///
[Output("launchTemplate")]
public Output LaunchTemplate { get; private set; } = null!;
///
- /// The maximum number of instances allowed in the EC2 Auto Scaling group.
+ /// The maximum number of instances allowed in the EC2 Auto Scaling group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource.
///
[Output("maxSize")]
public Output MaxSize { get; private set; } = null!;
///
- /// The minimum number of instances allowed in the EC2 Auto Scaling group.
+ /// The minimum number of instances allowed in the EC2 Auto Scaling group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource.
///
[Output("minSize")]
public Output MinSize { get; private set; } = null!;
@@ -88,13 +88,13 @@ public partial class GameServerGroup : global::Pulumi.CustomResource
public Output RoleArn { get; private set; } = null!;
///
- /// A list of labels to assign to the new game server group resource.
+ /// A list of labels to assign to the new game server group resource. Updating game server group tags with CloudFormation will not take effect. Please update this property using AWS GameLift APIs instead.
///
[Output("tags")]
public Output> Tags { get; private set; } = null!;
///
- /// A list of virtual private cloud (VPC) subnets to use with instances in the game server group.
+ /// A list of virtual private cloud (VPC) subnets to use with instances in the game server group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource.
///
[Output("vpcSubnets")]
public Output> VpcSubnets { get; private set; } = null!;
@@ -145,7 +145,7 @@ public static GameServerGroup Get(string name, Input id, CustomResourceO
public sealed class GameServerGroupArgs : global::Pulumi.ResourceArgs
{
///
- /// Configuration settings to define a scaling policy for the Auto Scaling group that is optimized for game hosting
+ /// Configuration settings to define a scaling policy for the Auto Scaling group that is optimized for game hosting. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource.
///
[Input("autoScalingPolicy")]
public Input? AutoScalingPolicy { get; set; }
@@ -187,19 +187,19 @@ public InputList InstanceDefinitio
}
///
- /// The EC2 launch template that contains configuration settings and game server code to be deployed to all instances in the game server group.
+ /// The EC2 launch template that contains configuration settings and game server code to be deployed to all instances in the game server group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource.
///
[Input("launchTemplate")]
public Input? LaunchTemplate { get; set; }
///
- /// The maximum number of instances allowed in the EC2 Auto Scaling group.
+ /// The maximum number of instances allowed in the EC2 Auto Scaling group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource.
///
[Input("maxSize")]
public Input? MaxSize { get; set; }
///
- /// The minimum number of instances allowed in the EC2 Auto Scaling group.
+ /// The minimum number of instances allowed in the EC2 Auto Scaling group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource.
///
[Input("minSize")]
public Input? MinSize { get; set; }
@@ -214,7 +214,7 @@ public InputList InstanceDefinitio
private InputList? _tags;
///
- /// A list of labels to assign to the new game server group resource.
+ /// A list of labels to assign to the new game server group resource. Updating game server group tags with CloudFormation will not take effect. Please update this property using AWS GameLift APIs instead.
///
public InputList Tags
{
@@ -226,7 +226,7 @@ public InputList Tags
private InputList? _vpcSubnets;
///
- /// A list of virtual private cloud (VPC) subnets to use with instances in the game server group.
+ /// A list of virtual private cloud (VPC) subnets to use with instances in the game server group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource.
///
public InputList VpcSubnets
{
diff --git a/sdk/dotnet/GameLift/Inputs/GameServerGroupAutoScalingPolicyArgs.cs b/sdk/dotnet/GameLift/Inputs/GameServerGroupAutoScalingPolicyArgs.cs
index 938de9d9d5..01eb3222bb 100644
--- a/sdk/dotnet/GameLift/Inputs/GameServerGroupAutoScalingPolicyArgs.cs
+++ b/sdk/dotnet/GameLift/Inputs/GameServerGroupAutoScalingPolicyArgs.cs
@@ -11,7 +11,7 @@ namespace Pulumi.AwsNative.GameLift.Inputs
{
///
- /// Configuration settings to define a scaling policy for the Auto Scaling group that is optimized for game hosting
+ /// Configuration settings to define a scaling policy for the Auto Scaling group that is optimized for game hosting. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource.
///
public sealed class GameServerGroupAutoScalingPolicyArgs : global::Pulumi.ResourceArgs
{
diff --git a/sdk/dotnet/GameLift/Inputs/GameServerGroupLaunchTemplateArgs.cs b/sdk/dotnet/GameLift/Inputs/GameServerGroupLaunchTemplateArgs.cs
index fc12740fec..851373151b 100644
--- a/sdk/dotnet/GameLift/Inputs/GameServerGroupLaunchTemplateArgs.cs
+++ b/sdk/dotnet/GameLift/Inputs/GameServerGroupLaunchTemplateArgs.cs
@@ -11,7 +11,7 @@ namespace Pulumi.AwsNative.GameLift.Inputs
{
///
- /// The EC2 launch template that contains configuration settings and game server code to be deployed to all instances in the game server group.
+ /// The EC2 launch template that contains configuration settings and game server code to be deployed to all instances in the game server group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource.
///
public sealed class GameServerGroupLaunchTemplateArgs : global::Pulumi.ResourceArgs
{
diff --git a/sdk/dotnet/GameLift/Outputs/GameServerGroupAutoScalingPolicy.cs b/sdk/dotnet/GameLift/Outputs/GameServerGroupAutoScalingPolicy.cs
index ee0d38a9de..5c629f1711 100644
--- a/sdk/dotnet/GameLift/Outputs/GameServerGroupAutoScalingPolicy.cs
+++ b/sdk/dotnet/GameLift/Outputs/GameServerGroupAutoScalingPolicy.cs
@@ -11,7 +11,7 @@ namespace Pulumi.AwsNative.GameLift.Outputs
{
///
- /// Configuration settings to define a scaling policy for the Auto Scaling group that is optimized for game hosting
+ /// Configuration settings to define a scaling policy for the Auto Scaling group that is optimized for game hosting. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource.
///
[OutputType]
public sealed class GameServerGroupAutoScalingPolicy
diff --git a/sdk/dotnet/GameLift/Outputs/GameServerGroupLaunchTemplate.cs b/sdk/dotnet/GameLift/Outputs/GameServerGroupLaunchTemplate.cs
index d19c71d2eb..fbc5068858 100644
--- a/sdk/dotnet/GameLift/Outputs/GameServerGroupLaunchTemplate.cs
+++ b/sdk/dotnet/GameLift/Outputs/GameServerGroupLaunchTemplate.cs
@@ -11,7 +11,7 @@ namespace Pulumi.AwsNative.GameLift.Outputs
{
///
- /// The EC2 launch template that contains configuration settings and game server code to be deployed to all instances in the game server group.
+ /// The EC2 launch template that contains configuration settings and game server code to be deployed to all instances in the game server group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource.
///
[OutputType]
public sealed class GameServerGroupLaunchTemplate
diff --git a/sdk/dotnet/Iam/GetManagedPolicy.cs b/sdk/dotnet/Iam/GetManagedPolicy.cs
index 8c48d5bab2..e335fa9e44 100644
--- a/sdk/dotnet/Iam/GetManagedPolicy.cs
+++ b/sdk/dotnet/Iam/GetManagedPolicy.cs
@@ -12,13 +12,19 @@ namespace Pulumi.AwsNative.Iam
public static class GetManagedPolicy
{
///
- /// Resource Type definition for AWS::IAM::ManagedPolicy
+ /// Creates a new managed policy for your AWS-account.
+ /// This operation creates a policy version with a version identifier of ``v1`` and sets v1 as the policy's default version. For more information about policy versions, see [Versioning for managed policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html) in the *IAM User Guide*.
+ /// As a best practice, you can validate your IAM policies. To learn more, see [Validating IAM policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_policy-validator.html) in the *IAM User Guide*.
+ /// For more information about managed policies in general, see [Managed policies and inline policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the *IAM User Guide*.
///
public static Task InvokeAsync(GetManagedPolicyArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:iam:getManagedPolicy", args ?? new GetManagedPolicyArgs(), options.WithDefaults());
///
- /// Resource Type definition for AWS::IAM::ManagedPolicy
+ /// Creates a new managed policy for your AWS-account.
+ /// This operation creates a policy version with a version identifier of ``v1`` and sets v1 as the policy's default version. For more information about policy versions, see [Versioning for managed policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html) in the *IAM User Guide*.
+ /// As a best practice, you can validate your IAM policies. To learn more, see [Validating IAM policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_policy-validator.html) in the *IAM User Guide*.
+ /// For more information about managed policies in general, see [Managed policies and inline policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the *IAM User Guide*.
///
public static Output Invoke(GetManagedPolicyInvokeArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.Invoke("aws-native:iam:getManagedPolicy", args ?? new GetManagedPolicyInvokeArgs(), options.WithDefaults());
@@ -27,9 +33,6 @@ public static Output Invoke(GetManagedPolicyInvokeArgs a
public sealed class GetManagedPolicyArgs : global::Pulumi.InvokeArgs
{
- ///
- /// Amazon Resource Name (ARN) of the managed policy
- ///
[Input("policyArn", required: true)]
public string PolicyArn { get; set; } = null!;
@@ -41,9 +44,6 @@ public GetManagedPolicyArgs()
public sealed class GetManagedPolicyInvokeArgs : global::Pulumi.InvokeArgs
{
- ///
- /// Amazon Resource Name (ARN) of the managed policy
- ///
[Input("policyArn", required: true)]
public Input PolicyArn { get; set; } = null!;
@@ -57,54 +57,41 @@ public GetManagedPolicyInvokeArgs()
[OutputType]
public sealed class GetManagedPolicyResult
{
- ///
- /// The number of entities (users, groups, and roles) that the policy is attached to.
- ///
public readonly int? AttachmentCount;
- ///
- /// The date and time, in ISO 8601 date-time format, when the policy was created.
- ///
public readonly string? CreateDate;
- ///
- /// The identifier for the version of the policy that is set as the default version.
- ///
public readonly string? DefaultVersionId;
///
/// The name (friendly name, not ARN) of the group to attach the policy to.
+ /// This parameter allows (through its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-
///
public readonly ImmutableArray Groups;
- ///
- /// Specifies whether the policy can be attached to an IAM user, group, or role.
- ///
public readonly bool? IsAttachable;
- ///
- /// The number of entities (users and roles) for which the policy is used to set the permissions boundary.
- ///
public readonly int? PermissionsBoundaryUsageCount;
- ///
- /// Amazon Resource Name (ARN) of the managed policy
- ///
public readonly string? PolicyArn;
///
/// The JSON policy document that you want to use as the content for the new policy.
+ /// You must provide policies in JSON format in IAM. However, for CFN templates formatted in YAML, you can provide the policy in JSON or YAML format. CFN always converts a YAML policy to JSON format before submitting it to IAM.
+ /// The maximum length of the policy document that you can pass in this operation, including whitespace, is listed below. To view the maximum character counts of a managed policy with no whitespaces, see [IAM and character quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length).
+ /// To learn more about JSON policy grammar, see [Grammar of the IAM JSON policy language](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_grammar.html) in the *IAM User Guide*.
+ /// The [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex) used to validate this parameter is a string of characters consisting of the following:
+ /// + Any printable ASCII character ranging from the space character (``\u0020``) through the end of the ASCII character range
+ /// + The printable characters in the Basic Latin and Latin-1 Supplement character set (through ``\u00FF``)
+ /// + The special characters tab (``\u0009``), line feed (``\u000A``), and carriage return (``\u000D``)
///
/// Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::IAM::ManagedPolicy` for more information about the expected schema for this property.
///
public readonly object? PolicyDocument;
- ///
- /// The stable and unique string identifying the policy.
- ///
public readonly string? PolicyId;
///
/// The name (friendly name, not ARN) of the role to attach the policy to.
+ /// This parameter allows (per its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-
+ /// If an external policy (such as ``AWS::IAM::Policy`` or ``AWS::IAM::ManagedPolicy``) has a ``Ref`` to a role and if a resource (such as ``AWS::ECS::Service``) also has a ``Ref`` to the same role, add a ``DependsOn`` attribute to the resource to make the resource depend on the external policy. This dependency ensures that the role's policy is available throughout the resource's lifecycle. For example, when you delete a stack with an ``AWS::ECS::Service`` resource, the ``DependsOn`` attribute ensures that CFN deletes the ``AWS::ECS::Service`` resource before deleting its role's policy.
///
public readonly ImmutableArray Roles;
- ///
- /// The date and time, in ISO 8601 date-time format, when the policy was last updated.
- ///
public readonly string? UpdateDate;
///
/// The name (friendly name, not ARN) of the IAM user to attach the policy to.
+ /// This parameter allows (through its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-
///
public readonly ImmutableArray Users;
diff --git a/sdk/dotnet/Iam/ManagedPolicy.cs b/sdk/dotnet/Iam/ManagedPolicy.cs
index ce1e5e2de4..033dbba6ce 100644
--- a/sdk/dotnet/Iam/ManagedPolicy.cs
+++ b/sdk/dotnet/Iam/ManagedPolicy.cs
@@ -10,99 +10,98 @@
namespace Pulumi.AwsNative.Iam
{
///
- /// Resource Type definition for AWS::IAM::ManagedPolicy
+ /// Creates a new managed policy for your AWS-account.
+ /// This operation creates a policy version with a version identifier of ``v1`` and sets v1 as the policy's default version. For more information about policy versions, see [Versioning for managed policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html) in the *IAM User Guide*.
+ /// As a best practice, you can validate your IAM policies. To learn more, see [Validating IAM policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_policy-validator.html) in the *IAM User Guide*.
+ /// For more information about managed policies in general, see [Managed policies and inline policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the *IAM User Guide*.
///
[AwsNativeResourceType("aws-native:iam:ManagedPolicy")]
public partial class ManagedPolicy : global::Pulumi.CustomResource
{
- ///
- /// The number of entities (users, groups, and roles) that the policy is attached to.
- ///
[Output("attachmentCount")]
public Output AttachmentCount { get; private set; } = null!;
- ///
- /// The date and time, in ISO 8601 date-time format, when the policy was created.
- ///
[Output("createDate")]
public Output CreateDate { get; private set; } = null!;
- ///
- /// The identifier for the version of the policy that is set as the default version.
- ///
[Output("defaultVersionId")]
public Output DefaultVersionId { get; private set; } = null!;
///
/// A friendly description of the policy.
+ /// Typically used to store information about the permissions defined in the policy. For example, "Grants access to production DynamoDB tables."
+ /// The policy description is immutable. After a value is assigned, it cannot be changed.
///
[Output("description")]
public Output Description { get; private set; } = null!;
///
/// The name (friendly name, not ARN) of the group to attach the policy to.
+ /// This parameter allows (through its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-
///
[Output("groups")]
public Output> Groups { get; private set; } = null!;
- ///
- /// Specifies whether the policy can be attached to an IAM user, group, or role.
- ///
[Output("isAttachable")]
public Output IsAttachable { get; private set; } = null!;
///
/// The friendly name of the policy.
+ /// If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.
+ /// If you specify a name, you must specify the ``CAPABILITY_NAMED_IAM`` value to acknowledge your template's capabilities. For more information, see [Acknowledging Resources in Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#using-iam-capabilities).
+ /// Naming an IAM resource can cause an unrecoverable error if you reuse the same template in multiple Regions. To prevent this, we recommend using ``Fn::Join`` and ``AWS::Region`` to create a Region-specific name, as in the following example: ``{"Fn::Join": ["", [{"Ref": "AWS::Region"}, {"Ref": "MyResourceName"}]]}``.
///
[Output("managedPolicyName")]
public Output ManagedPolicyName { get; private set; } = null!;
///
/// The path for the policy.
+ /// For more information about paths, see [IAM identifiers](https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) in the *IAM User Guide*.
+ /// This parameter is optional. If it is not included, it defaults to a slash (/).
+ /// This parameter allows (through its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (``\u0021``) through the DEL character (``\u007F``), including most punctuation characters, digits, and upper and lowercased letters.
+ /// You cannot use an asterisk (*) in the path name.
///
[Output("path")]
public Output Path { get; private set; } = null!;
- ///
- /// The number of entities (users and roles) for which the policy is used to set the permissions boundary.
- ///
[Output("permissionsBoundaryUsageCount")]
public Output PermissionsBoundaryUsageCount { get; private set; } = null!;
- ///
- /// Amazon Resource Name (ARN) of the managed policy
- ///
[Output("policyArn")]
public Output PolicyArn { get; private set; } = null!;
///
/// The JSON policy document that you want to use as the content for the new policy.
+ /// You must provide policies in JSON format in IAM. However, for CFN templates formatted in YAML, you can provide the policy in JSON or YAML format. CFN always converts a YAML policy to JSON format before submitting it to IAM.
+ /// The maximum length of the policy document that you can pass in this operation, including whitespace, is listed below. To view the maximum character counts of a managed policy with no whitespaces, see [IAM and character quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length).
+ /// To learn more about JSON policy grammar, see [Grammar of the IAM JSON policy language](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_grammar.html) in the *IAM User Guide*.
+ /// The [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex) used to validate this parameter is a string of characters consisting of the following:
+ /// + Any printable ASCII character ranging from the space character (``\u0020``) through the end of the ASCII character range
+ /// + The printable characters in the Basic Latin and Latin-1 Supplement character set (through ``\u00FF``)
+ /// + The special characters tab (``\u0009``), line feed (``\u000A``), and carriage return (``\u000D``)
///
/// Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::IAM::ManagedPolicy` for more information about the expected schema for this property.
///
[Output("policyDocument")]
public Output PolicyDocument { get; private set; } = null!;
- ///
- /// The stable and unique string identifying the policy.
- ///
[Output("policyId")]
public Output PolicyId { get; private set; } = null!;
///
/// The name (friendly name, not ARN) of the role to attach the policy to.
+ /// This parameter allows (per its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-
+ /// If an external policy (such as ``AWS::IAM::Policy`` or ``AWS::IAM::ManagedPolicy``) has a ``Ref`` to a role and if a resource (such as ``AWS::ECS::Service``) also has a ``Ref`` to the same role, add a ``DependsOn`` attribute to the resource to make the resource depend on the external policy. This dependency ensures that the role's policy is available throughout the resource's lifecycle. For example, when you delete a stack with an ``AWS::ECS::Service`` resource, the ``DependsOn`` attribute ensures that CFN deletes the ``AWS::ECS::Service`` resource before deleting its role's policy.
///
[Output("roles")]
public Output> Roles { get; private set; } = null!;
- ///
- /// The date and time, in ISO 8601 date-time format, when the policy was last updated.
- ///
[Output("updateDate")]
public Output UpdateDate { get; private set; } = null!;
///
/// The name (friendly name, not ARN) of the IAM user to attach the policy to.
+ /// This parameter allows (through its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-
///
[Output("users")]
public Output> Users { get; private set; } = null!;
@@ -160,6 +159,8 @@ public sealed class ManagedPolicyArgs : global::Pulumi.ResourceArgs
{
///
/// A friendly description of the policy.
+ /// Typically used to store information about the permissions defined in the policy. For example, "Grants access to production DynamoDB tables."
+ /// The policy description is immutable. After a value is assigned, it cannot be changed.
///
[Input("description")]
public Input? Description { get; set; }
@@ -169,6 +170,7 @@ public sealed class ManagedPolicyArgs : global::Pulumi.ResourceArgs
///
/// The name (friendly name, not ARN) of the group to attach the policy to.
+ /// This parameter allows (through its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-
///
public InputList Groups
{
@@ -178,18 +180,32 @@ public InputList Groups
///
/// The friendly name of the policy.
+ /// If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.
+ /// If you specify a name, you must specify the ``CAPABILITY_NAMED_IAM`` value to acknowledge your template's capabilities. For more information, see [Acknowledging Resources in Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#using-iam-capabilities).
+ /// Naming an IAM resource can cause an unrecoverable error if you reuse the same template in multiple Regions. To prevent this, we recommend using ``Fn::Join`` and ``AWS::Region`` to create a Region-specific name, as in the following example: ``{"Fn::Join": ["", [{"Ref": "AWS::Region"}, {"Ref": "MyResourceName"}]]}``.
///
[Input("managedPolicyName")]
public Input? ManagedPolicyName { get; set; }
///
/// The path for the policy.
+ /// For more information about paths, see [IAM identifiers](https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) in the *IAM User Guide*.
+ /// This parameter is optional. If it is not included, it defaults to a slash (/).
+ /// This parameter allows (through its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (``\u0021``) through the DEL character (``\u007F``), including most punctuation characters, digits, and upper and lowercased letters.
+ /// You cannot use an asterisk (*) in the path name.
///
[Input("path")]
public Input? Path { get; set; }
///
/// The JSON policy document that you want to use as the content for the new policy.
+ /// You must provide policies in JSON format in IAM. However, for CFN templates formatted in YAML, you can provide the policy in JSON or YAML format. CFN always converts a YAML policy to JSON format before submitting it to IAM.
+ /// The maximum length of the policy document that you can pass in this operation, including whitespace, is listed below. To view the maximum character counts of a managed policy with no whitespaces, see [IAM and character quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length).
+ /// To learn more about JSON policy grammar, see [Grammar of the IAM JSON policy language](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_grammar.html) in the *IAM User Guide*.
+ /// The [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex) used to validate this parameter is a string of characters consisting of the following:
+ /// + Any printable ASCII character ranging from the space character (``\u0020``) through the end of the ASCII character range
+ /// + The printable characters in the Basic Latin and Latin-1 Supplement character set (through ``\u00FF``)
+ /// + The special characters tab (``\u0009``), line feed (``\u000A``), and carriage return (``\u000D``)
///
/// Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::IAM::ManagedPolicy` for more information about the expected schema for this property.
///
@@ -201,6 +217,8 @@ public InputList Groups
///
/// The name (friendly name, not ARN) of the role to attach the policy to.
+ /// This parameter allows (per its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-
+ /// If an external policy (such as ``AWS::IAM::Policy`` or ``AWS::IAM::ManagedPolicy``) has a ``Ref`` to a role and if a resource (such as ``AWS::ECS::Service``) also has a ``Ref`` to the same role, add a ``DependsOn`` attribute to the resource to make the resource depend on the external policy. This dependency ensures that the role's policy is available throughout the resource's lifecycle. For example, when you delete a stack with an ``AWS::ECS::Service`` resource, the ``DependsOn`` attribute ensures that CFN deletes the ``AWS::ECS::Service`` resource before deleting its role's policy.
///
public InputList Roles
{
@@ -213,6 +231,7 @@ public InputList Roles
///
/// The name (friendly name, not ARN) of the IAM user to attach the policy to.
+ /// This parameter allows (through its [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex)) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-
///
public InputList Users
{
diff --git a/sdk/dotnet/IoTSiteWise/Inputs/GatewayPlatformArgs.cs b/sdk/dotnet/IoTSiteWise/Inputs/GatewayPlatformArgs.cs
index 1c773cc179..f5bfc109e2 100644
--- a/sdk/dotnet/IoTSiteWise/Inputs/GatewayPlatformArgs.cs
+++ b/sdk/dotnet/IoTSiteWise/Inputs/GatewayPlatformArgs.cs
@@ -27,6 +27,12 @@ public sealed class GatewayPlatformArgs : global::Pulumi.ResourceArgs
[Input("greengrassV2")]
public Input? GreengrassV2 { get; set; }
+ ///
+ /// A gateway that runs on Siemens Industrial Edge.
+ ///
+ [Input("siemensIe")]
+ public Input? SiemensIe { get; set; }
+
public GatewayPlatformArgs()
{
}
diff --git a/sdk/dotnet/IoTSiteWise/Inputs/GatewaySiemensIeArgs.cs b/sdk/dotnet/IoTSiteWise/Inputs/GatewaySiemensIeArgs.cs
new file mode 100644
index 0000000000..59ae9c5ac4
--- /dev/null
+++ b/sdk/dotnet/IoTSiteWise/Inputs/GatewaySiemensIeArgs.cs
@@ -0,0 +1,29 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.IoTSiteWise.Inputs
+{
+
+ ///
+ /// Contains the IotCoreThingName of AWS IoT Thing that the gateway runs on.
+ ///
+ public sealed class GatewaySiemensIeArgs : global::Pulumi.ResourceArgs
+ {
+ ///
+ /// The name of the IoT Core Thing.
+ ///
+ [Input("iotCoreThingName", required: true)]
+ public Input IotCoreThingName { get; set; } = null!;
+
+ public GatewaySiemensIeArgs()
+ {
+ }
+ public static new GatewaySiemensIeArgs Empty => new GatewaySiemensIeArgs();
+ }
+}
diff --git a/sdk/dotnet/IoTSiteWise/Outputs/GatewayPlatform.cs b/sdk/dotnet/IoTSiteWise/Outputs/GatewayPlatform.cs
index 83d652d2b2..4c667ef6cc 100644
--- a/sdk/dotnet/IoTSiteWise/Outputs/GatewayPlatform.cs
+++ b/sdk/dotnet/IoTSiteWise/Outputs/GatewayPlatform.cs
@@ -24,15 +24,22 @@ public sealed class GatewayPlatform
/// A gateway that runs on AWS IoT Greengrass V2.
///
public readonly Outputs.GatewayGreengrassV2? GreengrassV2;
+ ///
+ /// A gateway that runs on Siemens Industrial Edge.
+ ///
+ public readonly Outputs.GatewaySiemensIe? SiemensIe;
[OutputConstructor]
private GatewayPlatform(
Outputs.GatewayGreengrass? greengrass,
- Outputs.GatewayGreengrassV2? greengrassV2)
+ Outputs.GatewayGreengrassV2? greengrassV2,
+
+ Outputs.GatewaySiemensIe? siemensIe)
{
Greengrass = greengrass;
GreengrassV2 = greengrassV2;
+ SiemensIe = siemensIe;
}
}
}
diff --git a/sdk/dotnet/IoTSiteWise/Outputs/GatewaySiemensIe.cs b/sdk/dotnet/IoTSiteWise/Outputs/GatewaySiemensIe.cs
new file mode 100644
index 0000000000..ae0fafea68
--- /dev/null
+++ b/sdk/dotnet/IoTSiteWise/Outputs/GatewaySiemensIe.cs
@@ -0,0 +1,30 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.IoTSiteWise.Outputs
+{
+
+ ///
+ /// Contains the IotCoreThingName of AWS IoT Thing that the gateway runs on.
+ ///
+ [OutputType]
+ public sealed class GatewaySiemensIe
+ {
+ ///
+ /// The name of the IoT Core Thing.
+ ///
+ public readonly string IotCoreThingName;
+
+ [OutputConstructor]
+ private GatewaySiemensIe(string iotCoreThingName)
+ {
+ IotCoreThingName = iotCoreThingName;
+ }
+ }
+}
diff --git a/sdk/dotnet/KafkaConnect/CustomPlugin.cs b/sdk/dotnet/KafkaConnect/CustomPlugin.cs
new file mode 100644
index 0000000000..ddcf6a4de1
--- /dev/null
+++ b/sdk/dotnet/KafkaConnect/CustomPlugin.cs
@@ -0,0 +1,150 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.KafkaConnect
+{
+ ///
+ /// An example resource schema demonstrating some basic constructs and validation rules.
+ ///
+ [AwsNativeResourceType("aws-native:kafkaconnect:CustomPlugin")]
+ public partial class CustomPlugin : global::Pulumi.CustomResource
+ {
+ ///
+ /// The type of the plugin file.
+ ///
+ [Output("contentType")]
+ public Output ContentType { get; private set; } = null!;
+
+ ///
+ /// The Amazon Resource Name (ARN) of the custom plugin to use.
+ ///
+ [Output("customPluginArn")]
+ public Output CustomPluginArn { get; private set; } = null!;
+
+ ///
+ /// A summary description of the custom plugin.
+ ///
+ [Output("description")]
+ public Output Description { get; private set; } = null!;
+
+ [Output("fileDescription")]
+ public Output FileDescription { get; private set; } = null!;
+
+ [Output("location")]
+ public Output Location { get; private set; } = null!;
+
+ ///
+ /// The name of the custom plugin.
+ ///
+ [Output("name")]
+ public Output Name { get; private set; } = null!;
+
+ ///
+ /// The revision of the custom plugin.
+ ///
+ [Output("revision")]
+ public Output Revision { get; private set; } = null!;
+
+ ///
+ /// An array of key-value pairs to apply to this resource.
+ ///
+ [Output("tags")]
+ public Output> Tags { get; private set; } = null!;
+
+
+ ///
+ /// Create a CustomPlugin resource with the given unique name, arguments, and options.
+ ///
+ ///
+ /// The unique name of the resource
+ /// The arguments used to populate this resource's properties
+ /// A bag of options that control this resource's behavior
+ public CustomPlugin(string name, CustomPluginArgs args, CustomResourceOptions? options = null)
+ : base("aws-native:kafkaconnect:CustomPlugin", name, args ?? new CustomPluginArgs(), MakeResourceOptions(options, ""))
+ {
+ }
+
+ private CustomPlugin(string name, Input id, CustomResourceOptions? options = null)
+ : base("aws-native:kafkaconnect:CustomPlugin", name, null, MakeResourceOptions(options, id))
+ {
+ }
+
+ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id)
+ {
+ var defaultOptions = new CustomResourceOptions
+ {
+ Version = Utilities.Version,
+ ReplaceOnChanges =
+ {
+ "contentType",
+ "description",
+ "location",
+ "name",
+ },
+ };
+ var merged = CustomResourceOptions.Merge(defaultOptions, options);
+ // Override the ID if one was specified for consistency with other language SDKs.
+ merged.Id = id ?? merged.Id;
+ return merged;
+ }
+ ///
+ /// Get an existing CustomPlugin resource's state with the given name, ID, and optional extra
+ /// properties used to qualify the lookup.
+ ///
+ ///
+ /// The unique name of the resulting resource.
+ /// The unique provider ID of the resource to lookup.
+ /// A bag of options that control this resource's behavior
+ public static CustomPlugin Get(string name, Input id, CustomResourceOptions? options = null)
+ {
+ return new CustomPlugin(name, id, options);
+ }
+ }
+
+ public sealed class CustomPluginArgs : global::Pulumi.ResourceArgs
+ {
+ ///
+ /// The type of the plugin file.
+ ///
+ [Input("contentType", required: true)]
+ public Input ContentType { get; set; } = null!;
+
+ ///
+ /// A summary description of the custom plugin.
+ ///
+ [Input("description")]
+ public Input? Description { get; set; }
+
+ [Input("location", required: true)]
+ public Input Location { get; set; } = null!;
+
+ ///
+ /// The name of the custom plugin.
+ ///
+ [Input("name")]
+ public Input? Name { get; set; }
+
+ [Input("tags")]
+ private InputList? _tags;
+
+ ///
+ /// An array of key-value pairs to apply to this resource.
+ ///
+ public InputList Tags
+ {
+ get => _tags ?? (_tags = new InputList());
+ set => _tags = value;
+ }
+
+ public CustomPluginArgs()
+ {
+ }
+ public static new CustomPluginArgs Empty => new CustomPluginArgs();
+ }
+}
diff --git a/sdk/dotnet/KafkaConnect/Enums.cs b/sdk/dotnet/KafkaConnect/Enums.cs
index 5759dc3864..025d935f03 100644
--- a/sdk/dotnet/KafkaConnect/Enums.cs
+++ b/sdk/dotnet/KafkaConnect/Enums.cs
@@ -68,4 +68,35 @@ private ConnectorKafkaClusterEncryptionInTransitType(string value)
public override string ToString() => _value;
}
+
+ ///
+ /// The type of the plugin file.
+ ///
+ [EnumType]
+ public readonly struct CustomPluginContentType : IEquatable
+ {
+ private readonly string _value;
+
+ private CustomPluginContentType(string value)
+ {
+ _value = value ?? throw new ArgumentNullException(nameof(value));
+ }
+
+ public static CustomPluginContentType Jar { get; } = new CustomPluginContentType("JAR");
+ public static CustomPluginContentType Zip { get; } = new CustomPluginContentType("ZIP");
+
+ public static bool operator ==(CustomPluginContentType left, CustomPluginContentType right) => left.Equals(right);
+ public static bool operator !=(CustomPluginContentType left, CustomPluginContentType right) => !left.Equals(right);
+
+ public static explicit operator string(CustomPluginContentType value) => value._value;
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override bool Equals(object? obj) => obj is CustomPluginContentType other && Equals(other);
+ public bool Equals(CustomPluginContentType other) => string.Equals(_value, other._value, StringComparison.Ordinal);
+
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override int GetHashCode() => _value?.GetHashCode() ?? 0;
+
+ public override string ToString() => _value;
+ }
}
diff --git a/sdk/dotnet/KafkaConnect/GetCustomPlugin.cs b/sdk/dotnet/KafkaConnect/GetCustomPlugin.cs
new file mode 100644
index 0000000000..38a79eec11
--- /dev/null
+++ b/sdk/dotnet/KafkaConnect/GetCustomPlugin.cs
@@ -0,0 +1,90 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.KafkaConnect
+{
+ public static class GetCustomPlugin
+ {
+ ///
+ /// An example resource schema demonstrating some basic constructs and validation rules.
+ ///
+ public static Task InvokeAsync(GetCustomPluginArgs args, InvokeOptions? options = null)
+ => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:kafkaconnect:getCustomPlugin", args ?? new GetCustomPluginArgs(), options.WithDefaults());
+
+ ///
+ /// An example resource schema demonstrating some basic constructs and validation rules.
+ ///
+ public static Output Invoke(GetCustomPluginInvokeArgs args, InvokeOptions? options = null)
+ => global::Pulumi.Deployment.Instance.Invoke("aws-native:kafkaconnect:getCustomPlugin", args ?? new GetCustomPluginInvokeArgs(), options.WithDefaults());
+ }
+
+
+ public sealed class GetCustomPluginArgs : global::Pulumi.InvokeArgs
+ {
+ ///
+ /// The Amazon Resource Name (ARN) of the custom plugin to use.
+ ///
+ [Input("customPluginArn", required: true)]
+ public string CustomPluginArn { get; set; } = null!;
+
+ public GetCustomPluginArgs()
+ {
+ }
+ public static new GetCustomPluginArgs Empty => new GetCustomPluginArgs();
+ }
+
+ public sealed class GetCustomPluginInvokeArgs : global::Pulumi.InvokeArgs
+ {
+ ///
+ /// The Amazon Resource Name (ARN) of the custom plugin to use.
+ ///
+ [Input("customPluginArn", required: true)]
+ public Input CustomPluginArn { get; set; } = null!;
+
+ public GetCustomPluginInvokeArgs()
+ {
+ }
+ public static new GetCustomPluginInvokeArgs Empty => new GetCustomPluginInvokeArgs();
+ }
+
+
+ [OutputType]
+ public sealed class GetCustomPluginResult
+ {
+ ///
+ /// The Amazon Resource Name (ARN) of the custom plugin to use.
+ ///
+ public readonly string? CustomPluginArn;
+ public readonly Outputs.CustomPluginFileDescription? FileDescription;
+ ///
+ /// The revision of the custom plugin.
+ ///
+ public readonly int? Revision;
+ ///
+ /// An array of key-value pairs to apply to this resource.
+ ///
+ public readonly ImmutableArray Tags;
+
+ [OutputConstructor]
+ private GetCustomPluginResult(
+ string? customPluginArn,
+
+ Outputs.CustomPluginFileDescription? fileDescription,
+
+ int? revision,
+
+ ImmutableArray tags)
+ {
+ CustomPluginArn = customPluginArn;
+ FileDescription = fileDescription;
+ Revision = revision;
+ Tags = tags;
+ }
+ }
+}
diff --git a/sdk/dotnet/KafkaConnect/GetWorkerConfiguration.cs b/sdk/dotnet/KafkaConnect/GetWorkerConfiguration.cs
new file mode 100644
index 0000000000..180db7c4e6
--- /dev/null
+++ b/sdk/dotnet/KafkaConnect/GetWorkerConfiguration.cs
@@ -0,0 +1,86 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.KafkaConnect
+{
+ public static class GetWorkerConfiguration
+ {
+ ///
+ /// The configuration of the workers, which are the processes that run the connector logic.
+ ///
+ public static Task InvokeAsync(GetWorkerConfigurationArgs args, InvokeOptions? options = null)
+ => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:kafkaconnect:getWorkerConfiguration", args ?? new GetWorkerConfigurationArgs(), options.WithDefaults());
+
+ ///
+ /// The configuration of the workers, which are the processes that run the connector logic.
+ ///
+ public static Output Invoke(GetWorkerConfigurationInvokeArgs args, InvokeOptions? options = null)
+ => global::Pulumi.Deployment.Instance.Invoke("aws-native:kafkaconnect:getWorkerConfiguration", args ?? new GetWorkerConfigurationInvokeArgs(), options.WithDefaults());
+ }
+
+
+ public sealed class GetWorkerConfigurationArgs : global::Pulumi.InvokeArgs
+ {
+ ///
+ /// The Amazon Resource Name (ARN) of the custom configuration.
+ ///
+ [Input("workerConfigurationArn", required: true)]
+ public string WorkerConfigurationArn { get; set; } = null!;
+
+ public GetWorkerConfigurationArgs()
+ {
+ }
+ public static new GetWorkerConfigurationArgs Empty => new GetWorkerConfigurationArgs();
+ }
+
+ public sealed class GetWorkerConfigurationInvokeArgs : global::Pulumi.InvokeArgs
+ {
+ ///
+ /// The Amazon Resource Name (ARN) of the custom configuration.
+ ///
+ [Input("workerConfigurationArn", required: true)]
+ public Input WorkerConfigurationArn { get; set; } = null!;
+
+ public GetWorkerConfigurationInvokeArgs()
+ {
+ }
+ public static new GetWorkerConfigurationInvokeArgs Empty => new GetWorkerConfigurationInvokeArgs();
+ }
+
+
+ [OutputType]
+ public sealed class GetWorkerConfigurationResult
+ {
+ ///
+ /// The description of a revision of the worker configuration.
+ ///
+ public readonly int? Revision;
+ ///
+ /// A collection of tags associated with a resource
+ ///
+ public readonly ImmutableArray Tags;
+ ///
+ /// The Amazon Resource Name (ARN) of the custom configuration.
+ ///
+ public readonly string? WorkerConfigurationArn;
+
+ [OutputConstructor]
+ private GetWorkerConfigurationResult(
+ int? revision,
+
+ ImmutableArray tags,
+
+ string? workerConfigurationArn)
+ {
+ Revision = revision;
+ Tags = tags;
+ WorkerConfigurationArn = workerConfigurationArn;
+ }
+ }
+}
diff --git a/sdk/dotnet/KafkaConnect/Inputs/CustomPluginLocationArgs.cs b/sdk/dotnet/KafkaConnect/Inputs/CustomPluginLocationArgs.cs
new file mode 100644
index 0000000000..274c4e9578
--- /dev/null
+++ b/sdk/dotnet/KafkaConnect/Inputs/CustomPluginLocationArgs.cs
@@ -0,0 +1,26 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.KafkaConnect.Inputs
+{
+
+ ///
+ /// Information about the location of a custom plugin.
+ ///
+ public sealed class CustomPluginLocationArgs : global::Pulumi.ResourceArgs
+ {
+ [Input("s3Location", required: true)]
+ public Input S3Location { get; set; } = null!;
+
+ public CustomPluginLocationArgs()
+ {
+ }
+ public static new CustomPluginLocationArgs Empty => new CustomPluginLocationArgs();
+ }
+}
diff --git a/sdk/dotnet/KafkaConnect/Inputs/CustomPluginS3LocationArgs.cs b/sdk/dotnet/KafkaConnect/Inputs/CustomPluginS3LocationArgs.cs
new file mode 100644
index 0000000000..7cfcb88d89
--- /dev/null
+++ b/sdk/dotnet/KafkaConnect/Inputs/CustomPluginS3LocationArgs.cs
@@ -0,0 +1,41 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.KafkaConnect.Inputs
+{
+
+ ///
+ /// The S3 bucket Amazon Resource Name (ARN), file key, and object version of the plugin file stored in Amazon S3.
+ ///
+ public sealed class CustomPluginS3LocationArgs : global::Pulumi.ResourceArgs
+ {
+ ///
+ /// The Amazon Resource Name (ARN) of an S3 bucket.
+ ///
+ [Input("bucketArn", required: true)]
+ public Input BucketArn { get; set; } = null!;
+
+ ///
+ /// The file key for an object in an S3 bucket.
+ ///
+ [Input("fileKey", required: true)]
+ public Input FileKey { get; set; } = null!;
+
+ ///
+ /// The version of an object in an S3 bucket.
+ ///
+ [Input("objectVersion")]
+ public Input? ObjectVersion { get; set; }
+
+ public CustomPluginS3LocationArgs()
+ {
+ }
+ public static new CustomPluginS3LocationArgs Empty => new CustomPluginS3LocationArgs();
+ }
+}
diff --git a/sdk/dotnet/KafkaConnect/Outputs/CustomPluginFileDescription.cs b/sdk/dotnet/KafkaConnect/Outputs/CustomPluginFileDescription.cs
new file mode 100644
index 0000000000..5ffe022428
--- /dev/null
+++ b/sdk/dotnet/KafkaConnect/Outputs/CustomPluginFileDescription.cs
@@ -0,0 +1,38 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.KafkaConnect.Outputs
+{
+
+ ///
+ /// Details about the custom plugin file.
+ ///
+ [OutputType]
+ public sealed class CustomPluginFileDescription
+ {
+ ///
+ /// The hex-encoded MD5 checksum of the custom plugin file. You can use it to validate the file.
+ ///
+ public readonly string? FileMd5;
+ ///
+ /// The size in bytes of the custom plugin file. You can use it to validate the file.
+ ///
+ public readonly int? FileSize;
+
+ [OutputConstructor]
+ private CustomPluginFileDescription(
+ string? fileMd5,
+
+ int? fileSize)
+ {
+ FileMd5 = fileMd5;
+ FileSize = fileSize;
+ }
+ }
+}
diff --git a/sdk/dotnet/KafkaConnect/Outputs/CustomPluginLocation.cs b/sdk/dotnet/KafkaConnect/Outputs/CustomPluginLocation.cs
new file mode 100644
index 0000000000..41a6ce28de
--- /dev/null
+++ b/sdk/dotnet/KafkaConnect/Outputs/CustomPluginLocation.cs
@@ -0,0 +1,27 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.KafkaConnect.Outputs
+{
+
+ ///
+ /// Information about the location of a custom plugin.
+ ///
+ [OutputType]
+ public sealed class CustomPluginLocation
+ {
+ public readonly Outputs.CustomPluginS3Location S3Location;
+
+ [OutputConstructor]
+ private CustomPluginLocation(Outputs.CustomPluginS3Location s3Location)
+ {
+ S3Location = s3Location;
+ }
+ }
+}
diff --git a/sdk/dotnet/KafkaConnect/Outputs/CustomPluginS3Location.cs b/sdk/dotnet/KafkaConnect/Outputs/CustomPluginS3Location.cs
new file mode 100644
index 0000000000..b51b714dd4
--- /dev/null
+++ b/sdk/dotnet/KafkaConnect/Outputs/CustomPluginS3Location.cs
@@ -0,0 +1,45 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.KafkaConnect.Outputs
+{
+
+ ///
+ /// The S3 bucket Amazon Resource Name (ARN), file key, and object version of the plugin file stored in Amazon S3.
+ ///
+ [OutputType]
+ public sealed class CustomPluginS3Location
+ {
+ ///
+ /// The Amazon Resource Name (ARN) of an S3 bucket.
+ ///
+ public readonly string BucketArn;
+ ///
+ /// The file key for an object in an S3 bucket.
+ ///
+ public readonly string FileKey;
+ ///
+ /// The version of an object in an S3 bucket.
+ ///
+ public readonly string? ObjectVersion;
+
+ [OutputConstructor]
+ private CustomPluginS3Location(
+ string bucketArn,
+
+ string fileKey,
+
+ string? objectVersion)
+ {
+ BucketArn = bucketArn;
+ FileKey = fileKey;
+ ObjectVersion = objectVersion;
+ }
+ }
+}
diff --git a/sdk/dotnet/KafkaConnect/WorkerConfiguration.cs b/sdk/dotnet/KafkaConnect/WorkerConfiguration.cs
new file mode 100644
index 0000000000..0ef0dd07c5
--- /dev/null
+++ b/sdk/dotnet/KafkaConnect/WorkerConfiguration.cs
@@ -0,0 +1,140 @@
+// *** WARNING: this file was generated by pulumi. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.AwsNative.KafkaConnect
+{
+ ///
+ /// The configuration of the workers, which are the processes that run the connector logic.
+ ///
+ [AwsNativeResourceType("aws-native:kafkaconnect:WorkerConfiguration")]
+ public partial class WorkerConfiguration : global::Pulumi.CustomResource
+ {
+ ///
+ /// A summary description of the worker configuration.
+ ///
+ [Output("description")]
+ public Output Description { get; private set; } = null!;
+
+ ///
+ /// The name of the worker configuration.
+ ///
+ [Output("name")]
+ public Output Name { get; private set; } = null!;
+
+ ///
+ /// Base64 encoded contents of connect-distributed.properties file.
+ ///
+ [Output("propertiesFileContent")]
+ public Output PropertiesFileContent { get; private set; } = null!;
+
+ ///
+ /// The description of a revision of the worker configuration.
+ ///
+ [Output("revision")]
+ public Output Revision { get; private set; } = null!;
+
+ ///
+ /// A collection of tags associated with a resource
+ ///
+ [Output("tags")]
+ public Output> Tags { get; private set; } = null!;
+
+ ///
+ /// The Amazon Resource Name (ARN) of the custom configuration.
+ ///
+ [Output("workerConfigurationArn")]
+ public Output WorkerConfigurationArn { get; private set; } = null!;
+
+
+ ///
+ /// Create a WorkerConfiguration resource with the given unique name, arguments, and options.
+ ///
+ ///
+ /// The unique name of the resource
+ /// The arguments used to populate this resource's properties
+ /// A bag of options that control this resource's behavior
+ public WorkerConfiguration(string name, WorkerConfigurationArgs args, CustomResourceOptions? options = null)
+ : base("aws-native:kafkaconnect:WorkerConfiguration", name, args ?? new WorkerConfigurationArgs(), MakeResourceOptions(options, ""))
+ {
+ }
+
+ private WorkerConfiguration(string name, Input id, CustomResourceOptions? options = null)
+ : base("aws-native:kafkaconnect:WorkerConfiguration", name, null, MakeResourceOptions(options, id))
+ {
+ }
+
+ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id)
+ {
+ var defaultOptions = new CustomResourceOptions
+ {
+ Version = Utilities.Version,
+ ReplaceOnChanges =
+ {
+ "description",
+ "name",
+ "propertiesFileContent",
+ },
+ };
+ var merged = CustomResourceOptions.Merge(defaultOptions, options);
+ // Override the ID if one was specified for consistency with other language SDKs.
+ merged.Id = id ?? merged.Id;
+ return merged;
+ }
+ ///
+ /// Get an existing WorkerConfiguration resource's state with the given name, ID, and optional extra
+ /// properties used to qualify the lookup.
+ ///
+ ///
+ /// The unique name of the resulting resource.
+ /// The unique provider ID of the resource to lookup.
+ /// A bag of options that control this resource's behavior
+ public static WorkerConfiguration Get(string name, Input id, CustomResourceOptions? options = null)
+ {
+ return new WorkerConfiguration(name, id, options);
+ }
+ }
+
+ public sealed class WorkerConfigurationArgs : global::Pulumi.ResourceArgs
+ {
+ ///
+ /// A summary description of the worker configuration.
+ ///
+ [Input("description")]
+ public Input? Description { get; set; }
+
+ ///
+ /// The name of the worker configuration.
+ ///
+ [Input("name")]
+ public Input? Name { get; set; }
+
+ ///
+ /// Base64 encoded contents of connect-distributed.properties file.
+ ///
+ [Input("propertiesFileContent", required: true)]
+ public Input PropertiesFileContent { get; set; } = null!;
+
+ [Input("tags")]
+ private InputList? _tags;
+
+ ///
+ /// A collection of tags associated with a resource
+ ///
+ public InputList Tags
+ {
+ get => _tags ?? (_tags = new InputList());
+ set => _tags = value;
+ }
+
+ public WorkerConfigurationArgs()
+ {
+ }
+ public static new WorkerConfigurationArgs Empty => new WorkerConfigurationArgs();
+ }
+}
diff --git a/sdk/dotnet/Logs/Enums.cs b/sdk/dotnet/Logs/Enums.cs
index 67116c1b0e..62202504a5 100644
--- a/sdk/dotnet/Logs/Enums.cs
+++ b/sdk/dotnet/Logs/Enums.cs
@@ -103,7 +103,11 @@ private LogAnomalyDetectorEvaluationFrequency(string value)
}
///
- /// The class of the log group. Possible values are: STANDARD and INFREQUENT_ACCESS, with STANDARD being the default class
+ /// Specifies the log group class for this log group. There are two classes:
+ /// + The ``Standard`` log class supports all CWL features.
+ /// + The ``Infrequent Access`` log class supports a subset of CWL features and incurs lower costs.
+ ///
+ /// For details about the features supported by each class, see [Log classes](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch_Logs_Log_Classes.html)
///
[EnumType]
public readonly struct LogGroupClass : IEquatable
@@ -134,7 +138,7 @@ private LogGroupClass(string value)
}
///
- /// The unit to assign to the metric. If you omit this, the unit is set as None.
+ /// The unit to assign to the metric. If you omit this, the unit is set as ``None``.
///
[EnumType]
public readonly struct MetricFilterMetricTransformationUnit : IEquatable
@@ -190,7 +194,7 @@ private MetricFilterMetricTransformationUnit(string value)
}
///
- /// The method used to distribute log data to the destination. By default, log data is grouped by log stream, but the grouping can be set to random for a more even distribution. This property is only applicable when the destination is an Amazon Kinesis stream.
+ /// The method used to distribute log data to the destination, which can be either random or grouped by log stream.
///
[EnumType]
public readonly struct SubscriptionFilterDistribution : IEquatable
diff --git a/sdk/dotnet/Logs/GetLogGroup.cs b/sdk/dotnet/Logs/GetLogGroup.cs
index 5755474576..f3b91b6c4b 100644
--- a/sdk/dotnet/Logs/GetLogGroup.cs
+++ b/sdk/dotnet/Logs/GetLogGroup.cs
@@ -12,13 +12,21 @@ namespace Pulumi.AwsNative.Logs
public static class GetLogGroup
{
///
- /// Resource schema for AWS::Logs::LogGroup
+ /// The ``AWS::Logs::LogGroup`` resource specifies a log group. A log group defines common properties for log streams, such as their retention and access control rules. Each log stream must belong to one log group.
+ /// You can create up to 1,000,000 log groups per Region per account. You must use the following guidelines when naming a log group:
+ /// + Log group names must be unique within a Region for an AWS account.
+ /// + Log group names can be between 1 and 512 characters long.
+ /// + Log group names consist of the following characters: a-z, A-Z, 0-9, '_' (underscore), '-' (hyphen), '/' (forward slash), and '.' (period).
///
public static Task InvokeAsync(GetLogGroupArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:logs:getLogGroup", args ?? new GetLogGroupArgs(), options.WithDefaults());
///
- /// Resource schema for AWS::Logs::LogGroup
+ /// The ``AWS::Logs::LogGroup`` resource specifies a log group. A log group defines common properties for log streams, such as their retention and access control rules. Each log stream must belong to one log group.
+ /// You can create up to 1,000,000 log groups per Region per account. You must use the following guidelines when naming a log group:
+ /// + Log group names must be unique within a Region for an AWS account.
+ /// + Log group names can be between 1 and 512 characters long.
+ /// + Log group names consist of the following characters: a-z, A-Z, 0-9, '_' (underscore), '-' (hyphen), '/' (forward slash), and '.' (period).
///
public static Output Invoke(GetLogGroupInvokeArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.Invoke("aws-native:logs:getLogGroup", args ?? new GetLogGroupInvokeArgs(), options.WithDefaults());
@@ -28,7 +36,7 @@ public static Output Invoke(GetLogGroupInvokeArgs args, Invok
public sealed class GetLogGroupArgs : global::Pulumi.InvokeArgs
{
///
- /// The name of the log group. If you don't specify a name, AWS CloudFormation generates a unique ID for the log group.
+ /// The name of the log group. If you don't specify a name, CFNlong generates a unique ID for the log group.
///
[Input("logGroupName", required: true)]
public string LogGroupName { get; set; } = null!;
@@ -42,7 +50,7 @@ public GetLogGroupArgs()
public sealed class GetLogGroupInvokeArgs : global::Pulumi.InvokeArgs
{
///
- /// The name of the log group. If you don't specify a name, AWS CloudFormation generates a unique ID for the log group.
+ /// The name of the log group. If you don't specify a name, CFNlong generates a unique ID for the log group.
///
[Input("logGroupName", required: true)]
public Input LogGroupName { get; set; } = null!;
@@ -57,36 +65,37 @@ public GetLogGroupInvokeArgs()
[OutputType]
public sealed class GetLogGroupResult
{
- ///
- /// The CloudWatch log group ARN.
- ///
public readonly string? Arn;
///
- /// The body of the policy document you want to use for this topic.
- ///
- /// You can only add one policy per topic.
- ///
- /// The policy must be in JSON string format.
- ///
- /// Length Constraints: Maximum length of 30720
+ /// Creates a data protection policy and assigns it to the log group. A data protection policy can help safeguard sensitive data that's ingested by the log group by auditing and masking the sensitive log data. When a user who does not have permission to view masked data views a log event that includes masked data, the sensitive data is replaced by asterisks.
+ /// For more information, including a list of types of data that can be audited and masked, see [Protect sensitive log data with masking](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/mask-sensitive-log-data.html).
///
/// Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Logs::LogGroup` for more information about the expected schema for this property.
///
public readonly object? DataProtectionPolicy;
///
- /// The Amazon Resource Name (ARN) of the CMK to use when encrypting log data.
+ /// The Amazon Resource Name (ARN) of the KMS key to use when encrypting log data.
+ /// To associate an KMS key with the log group, specify the ARN of that KMS key here. If you do so, ingested data is encrypted using this key. This association is stored as long as the data encrypted with the KMS key is still within CWL. This enables CWL to decrypt this data whenever it is requested.
+ /// If you attempt to associate a KMS key with the log group but the KMS key doesn't exist or is deactivated, you will receive an ``InvalidParameterException`` error.
+ /// Log group data is always encrypted in CWL. If you omit this key, the encryption does not use KMS. For more information, see [Encrypt log data in using](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/encrypt-log-data-kms.html)
///
public readonly string? KmsKeyId;
///
- /// The class of the log group. Possible values are: STANDARD and INFREQUENT_ACCESS, with STANDARD being the default class
+ /// Specifies the log group class for this log group. There are two classes:
+ /// + The ``Standard`` log class supports all CWL features.
+ /// + The ``Infrequent Access`` log class supports a subset of CWL features and incurs lower costs.
+ ///
+ /// For details about the features supported by each class, see [Log classes](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch_Logs_Log_Classes.html)
///
public readonly Pulumi.AwsNative.Logs.LogGroupClass? LogGroupClass;
///
- /// The number of days to retain the log events in the specified log group. Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1096, 1827, and 3653.
+ /// The number of days to retain the log events in the specified log group. Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1096, 1827, 2192, 2557, 2922, 3288, and 3653.
+ /// To set a log group so that its log events do not expire, use [DeleteRetentionPolicy](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DeleteRetentionPolicy.html).
///
public readonly int? RetentionInDays;
///
- /// An array of key-value pairs to apply to this resource.
+ /// An array of key-value pairs to apply to the log group.
+ /// For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html).
///
public readonly ImmutableArray Tags;
diff --git a/sdk/dotnet/Logs/GetMetricFilter.cs b/sdk/dotnet/Logs/GetMetricFilter.cs
index b3964399b9..1c218458e6 100644
--- a/sdk/dotnet/Logs/GetMetricFilter.cs
+++ b/sdk/dotnet/Logs/GetMetricFilter.cs
@@ -12,13 +12,15 @@ namespace Pulumi.AwsNative.Logs
public static class GetMetricFilter
{
///
- /// Specifies a metric filter that describes how CloudWatch Logs extracts information from logs and transforms it into Amazon CloudWatch metrics.
+ /// The ``AWS::Logs::MetricFilter`` resource specifies a metric filter that describes how CWL extracts information from logs and transforms it into Amazon CloudWatch metrics. If you have multiple metric filters that are associated with a log group, all the filters are applied to the log streams in that group.
+ /// The maximum number of metric filters that can be associated with a log group is 100.
///
public static Task InvokeAsync(GetMetricFilterArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:logs:getMetricFilter", args ?? new GetMetricFilterArgs(), options.WithDefaults());
///
- /// Specifies a metric filter that describes how CloudWatch Logs extracts information from logs and transforms it into Amazon CloudWatch metrics.
+ /// The ``AWS::Logs::MetricFilter`` resource specifies a metric filter that describes how CWL extracts information from logs and transforms it into Amazon CloudWatch metrics. If you have multiple metric filters that are associated with a log group, all the filters are applied to the log streams in that group.
+ /// The maximum number of metric filters that can be associated with a log group is 100.
///
public static Output Invoke(GetMetricFilterInvokeArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.Invoke("aws-native:logs:getMetricFilter", args ?? new GetMetricFilterInvokeArgs(), options.WithDefaults());
@@ -28,13 +30,13 @@ public static Output Invoke(GetMetricFilterInvokeArgs arg
public sealed class GetMetricFilterArgs : global::Pulumi.InvokeArgs
{
///
- /// A name for the metric filter.
+ /// The name of the metric filter.
///
[Input("filterName", required: true)]
public string FilterName { get; set; } = null!;
///
- /// Existing log group that you want to associate with this filter.
+ /// The name of an existing log group that you want to associate with this metric filter.
///
[Input("logGroupName", required: true)]
public string LogGroupName { get; set; } = null!;
@@ -48,13 +50,13 @@ public GetMetricFilterArgs()
public sealed class GetMetricFilterInvokeArgs : global::Pulumi.InvokeArgs
{
///
- /// A name for the metric filter.
+ /// The name of the metric filter.
///
[Input("filterName", required: true)]
public Input FilterName { get; set; } = null!;
///
- /// Existing log group that you want to associate with this filter.
+ /// The name of an existing log group that you want to associate with this metric filter.
///
[Input("logGroupName", required: true)]
public Input LogGroupName { get; set; } = null!;
@@ -70,11 +72,11 @@ public GetMetricFilterInvokeArgs()
public sealed class GetMetricFilterResult
{
///
- /// Pattern that Logs follows to interpret each entry in a log.
+ /// A filter pattern for extracting metric data out of ingested log events. For more information, see [Filter and Pattern Syntax](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html).
///
public readonly string? FilterPattern;
///
- /// A collection of information that defines how metric data gets emitted.
+ /// The metric transformations.
///
public readonly ImmutableArray MetricTransformations;
diff --git a/sdk/dotnet/Logs/GetSubscriptionFilter.cs b/sdk/dotnet/Logs/GetSubscriptionFilter.cs
index 056de699ec..104cb3499d 100644
--- a/sdk/dotnet/Logs/GetSubscriptionFilter.cs
+++ b/sdk/dotnet/Logs/GetSubscriptionFilter.cs
@@ -12,13 +12,25 @@ namespace Pulumi.AwsNative.Logs
public static class GetSubscriptionFilter
{
///
- /// Subscription filters allow you to subscribe to a real-time stream of log events and have them delivered to a specific destination.
+ /// The ``AWS::Logs::SubscriptionFilter`` resource specifies a subscription filter and associates it with the specified log group. Subscription filters allow you to subscribe to a real-time stream of log events and have them delivered to a specific destination. Currently, the supported destinations are:
+ /// + An Amazon Kinesis data stream belonging to the same account as the subscription filter, for same-account delivery.
+ /// + A logical destination that belongs to a different account, for cross-account delivery.
+ /// + An Amazon Kinesis Firehose delivery stream that belongs to the same account as the subscription filter, for same-account delivery.
+ /// + An LAMlong function that belongs to the same account as the subscription filter, for same-account delivery.
+ ///
+ /// There can be as many as two subscription filters associated with a log group.
///
public static Task InvokeAsync(GetSubscriptionFilterArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:logs:getSubscriptionFilter", args ?? new GetSubscriptionFilterArgs(), options.WithDefaults());
///
- /// Subscription filters allow you to subscribe to a real-time stream of log events and have them delivered to a specific destination.
+ /// The ``AWS::Logs::SubscriptionFilter`` resource specifies a subscription filter and associates it with the specified log group. Subscription filters allow you to subscribe to a real-time stream of log events and have them delivered to a specific destination. Currently, the supported destinations are:
+ /// + An Amazon Kinesis data stream belonging to the same account as the subscription filter, for same-account delivery.
+ /// + A logical destination that belongs to a different account, for cross-account delivery.
+ /// + An Amazon Kinesis Firehose delivery stream that belongs to the same account as the subscription filter, for same-account delivery.
+ /// + An LAMlong function that belongs to the same account as the subscription filter, for same-account delivery.
+ ///
+ /// There can be as many as two subscription filters associated with a log group.
///
public static Output Invoke(GetSubscriptionFilterInvokeArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.Invoke("aws-native:logs:getSubscriptionFilter", args ?? new GetSubscriptionFilterInvokeArgs(), options.WithDefaults());
@@ -28,13 +40,13 @@ public static Output Invoke(GetSubscriptionFilterIn
public sealed class GetSubscriptionFilterArgs : global::Pulumi.InvokeArgs
{
///
- /// The name of the filter generated by resource.
+ /// The name of the subscription filter.
///
[Input("filterName", required: true)]
public string FilterName { get; set; } = null!;
///
- /// Existing log group that you want to associate with this filter.
+ /// The log group to associate with the subscription filter. All log events that are uploaded to this log group are filtered and delivered to the specified AWS resource if the filter pattern matches the log events.
///
[Input("logGroupName", required: true)]
public string LogGroupName { get; set; } = null!;
@@ -48,13 +60,13 @@ public GetSubscriptionFilterArgs()
public sealed class GetSubscriptionFilterInvokeArgs : global::Pulumi.InvokeArgs
{
///
- /// The name of the filter generated by resource.
+ /// The name of the subscription filter.
///
[Input("filterName", required: true)]
public Input FilterName { get; set; } = null!;
///
- /// Existing log group that you want to associate with this filter.
+ /// The log group to associate with the subscription filter. All log events that are uploaded to this log group are filtered and delivered to the specified AWS resource if the filter pattern matches the log events.
///
[Input("logGroupName", required: true)]
public Input LogGroupName { get; set; } = null!;
@@ -74,15 +86,15 @@ public sealed class GetSubscriptionFilterResult
///
public readonly string? DestinationArn;
///
- /// The method used to distribute log data to the destination. By default, log data is grouped by log stream, but the grouping can be set to random for a more even distribution. This property is only applicable when the destination is an Amazon Kinesis stream.
+ /// The method used to distribute log data to the destination, which can be either random or grouped by log stream.
///
public readonly Pulumi.AwsNative.Logs.SubscriptionFilterDistribution? Distribution;
///
- /// The filtering expressions that restrict what gets delivered to the destination AWS resource.
+ /// The filtering expressions that restrict what gets delivered to the destination AWS resource. For more information about the filter pattern syntax, see [Filter and Pattern Syntax](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html).
///
public readonly string? FilterPattern;
///
- /// The ARN of an IAM role that grants CloudWatch Logs permissions to deliver ingested log events to the destination stream. You don't need to provide the ARN when you are working with a logical destination for cross-account delivery.
+ /// The ARN of an IAM role that grants CWL permissions to deliver ingested log events to the destination stream. You don't need to provide the ARN when you are working with a logical destination for cross-account delivery.
///
public readonly string? RoleArn;
diff --git a/sdk/dotnet/Logs/Inputs/MetricFilterDimensionArgs.cs b/sdk/dotnet/Logs/Inputs/MetricFilterDimensionArgs.cs
index 34359321ce..9b71cc944b 100644
--- a/sdk/dotnet/Logs/Inputs/MetricFilterDimensionArgs.cs
+++ b/sdk/dotnet/Logs/Inputs/MetricFilterDimensionArgs.cs
@@ -11,18 +11,24 @@ namespace Pulumi.AwsNative.Logs.Inputs
{
///
- /// the key-value pairs that further define a metric.
+ /// Specifies the CW metric dimensions to publish with this metric.
+ /// Because dimensions are part of the unique identifier for a metric, whenever a unique dimension name/value pair is extracted from your logs, you are creating a new variation of that metric.
+ /// For more information about publishing dimensions with metrics created by metric filters, see [Publishing dimensions with metrics from values in JSON or space-delimited log events](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html#logs-metric-filters-dimensions).
+ /// Metrics extracted from log events are charged as custom metrics. To prevent unexpected high charges, do not specify high-cardinality fields such as ``IPAddress`` or ``requestID`` as dimensions. Each different value found for a dimension is treated as a separate metric and accrues charges as a separate custom metric.
+ /// To help prevent accidental high charges, Amazon disables a metric filter if it generates 1000 different name/value pairs for the dimensions that you have specified within a certain amount of time.
+ /// You can also set up a billing alarm to alert you if your charges are higher than expected. For more information, see [Creating a Billing Alarm to Monitor Your Estimated Charges](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/monitor_estimated_charges_with_cloudwatch.html).
///
public sealed class MetricFilterDimensionArgs : global::Pulumi.ResourceArgs
{
///
- /// The key of the dimension. Maximum length of 255.
+ /// The name for the CW metric dimension that the metric filter creates.
+ /// Dimension names must contain only ASCII characters, must include at least one non-whitespace character, and cannot start with a colon (:).
///
[Input("key", required: true)]
public Input Key { get; set; } = null!;
///
- /// The value of the dimension. Maximum length of 255.
+ /// The log event field that will contain the value for this dimension. This dimension will only be published for a metric if the value is found in the log event. For example, ``$.eventType`` for JSON log events, or ``$server`` for space-delimited log events.
///
[Input("value", required: true)]
public Input Value { get; set; } = null!;
diff --git a/sdk/dotnet/Logs/Inputs/MetricFilterMetricTransformationArgs.cs b/sdk/dotnet/Logs/Inputs/MetricFilterMetricTransformationArgs.cs
index acd94926f2..03ed0fe1ce 100644
--- a/sdk/dotnet/Logs/Inputs/MetricFilterMetricTransformationArgs.cs
+++ b/sdk/dotnet/Logs/Inputs/MetricFilterMetricTransformationArgs.cs
@@ -10,10 +10,13 @@
namespace Pulumi.AwsNative.Logs.Inputs
{
+ ///
+ /// ``MetricTransformation`` is a property of the ``AWS::Logs::MetricFilter`` resource that describes how to transform log streams into a CloudWatch metric.
+ ///
public sealed class MetricFilterMetricTransformationArgs : global::Pulumi.ResourceArgs
{
///
- /// The value to emit when a filter pattern does not match a log event. This value can be null.
+ /// (Optional) The value to emit when a filter pattern does not match a log event. This value can be null.
///
[Input("defaultValue")]
public Input? DefaultValue { get; set; }
@@ -22,7 +25,10 @@ public sealed class MetricFilterMetricTransformationArgs : global::Pulumi.Resour
private InputList? _dimensions;
///
- /// Dimensions are the key-value pairs that further define a metric
+ /// The fields to use as dimensions for the metric. One metric filter can include as many as three dimensions.
+ /// Metrics extracted from log events are charged as custom metrics. To prevent unexpected high charges, do not specify high-cardinality fields such as ``IPAddress`` or ``requestID`` as dimensions. Each different value found for a dimension is treated as a separate metric and accrues charges as a separate custom metric.
+ /// CloudWatch Logs disables a metric filter if it generates 1000 different name/value pairs for your specified dimensions within a certain amount of time. This helps to prevent accidental high charges.
+ /// You can also set up a billing alarm to alert you if your charges are higher than expected. For more information, see [Creating a Billing Alarm to Monitor Your Estimated Charges](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/monitor_estimated_charges_with_cloudwatch.html).
///
public InputList Dimensions
{
@@ -31,25 +37,25 @@ public InputList Dimensions
}
///
- /// The name of the CloudWatch metric. Metric name must be in ASCII format.
+ /// The name of the CloudWatch metric.
///
[Input("metricName", required: true)]
public Input MetricName { get; set; } = null!;
///
- /// The namespace of the CloudWatch metric.
+ /// A custom namespace to contain your metric in CloudWatch. Use namespaces to group together metrics that are similar. For more information, see [Namespaces](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Namespace).
///
[Input("metricNamespace", required: true)]
public Input MetricNamespace { get; set; } = null!;
///
- /// The value to publish to the CloudWatch metric when a filter pattern matches a log event.
+ /// The value that is published to the CloudWatch metric. For example, if you're counting the occurrences of a particular term like ``Error``, specify 1 for the metric value. If you're counting the number of bytes transferred, reference the value that is in the log event by using $. followed by the name of the field that you specified in the filter pattern, such as ``$.size``.
///
[Input("metricValue", required: true)]
public Input MetricValue { get; set; } = null!;
///
- /// The unit to assign to the metric. If you omit this, the unit is set as None.
+ /// The unit to assign to the metric. If you omit this, the unit is set as ``None``.
///
[Input("unit")]
public Input? Unit { get; set; }
diff --git a/sdk/dotnet/Logs/LogGroup.cs b/sdk/dotnet/Logs/LogGroup.cs
index 5284d234c6..6748c9cb35 100644
--- a/sdk/dotnet/Logs/LogGroup.cs
+++ b/sdk/dotnet/Logs/LogGroup.cs
@@ -10,25 +10,21 @@
namespace Pulumi.AwsNative.Logs
{
///
- /// Resource schema for AWS::Logs::LogGroup
+ /// The ``AWS::Logs::LogGroup`` resource specifies a log group. A log group defines common properties for log streams, such as their retention and access control rules. Each log stream must belong to one log group.
+ /// You can create up to 1,000,000 log groups per Region per account. You must use the following guidelines when naming a log group:
+ /// + Log group names must be unique within a Region for an AWS account.
+ /// + Log group names can be between 1 and 512 characters long.
+ /// + Log group names consist of the following characters: a-z, A-Z, 0-9, '_' (underscore), '-' (hyphen), '/' (forward slash), and '.' (period).
///
[AwsNativeResourceType("aws-native:logs:LogGroup")]
public partial class LogGroup : global::Pulumi.CustomResource
{
- ///
- /// The CloudWatch log group ARN.
- ///
[Output("arn")]
public Output Arn { get; private set; } = null!;
///
- /// The body of the policy document you want to use for this topic.
- ///
- /// You can only add one policy per topic.
- ///
- /// The policy must be in JSON string format.
- ///
- /// Length Constraints: Maximum length of 30720
+ /// Creates a data protection policy and assigns it to the log group. A data protection policy can help safeguard sensitive data that's ingested by the log group by auditing and masking the sensitive log data. When a user who does not have permission to view masked data views a log event that includes masked data, the sensitive data is replaced by asterisks.
+ /// For more information, including a list of types of data that can be audited and masked, see [Protect sensitive log data with masking](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/mask-sensitive-log-data.html).
///
/// Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Logs::LogGroup` for more information about the expected schema for this property.
///
@@ -36,31 +32,40 @@ public partial class LogGroup : global::Pulumi.CustomResource
public Output DataProtectionPolicy { get; private set; } = null!;
///
- /// The Amazon Resource Name (ARN) of the CMK to use when encrypting log data.
+ /// The Amazon Resource Name (ARN) of the KMS key to use when encrypting log data.
+ /// To associate an KMS key with the log group, specify the ARN of that KMS key here. If you do so, ingested data is encrypted using this key. This association is stored as long as the data encrypted with the KMS key is still within CWL. This enables CWL to decrypt this data whenever it is requested.
+ /// If you attempt to associate a KMS key with the log group but the KMS key doesn't exist or is deactivated, you will receive an ``InvalidParameterException`` error.
+ /// Log group data is always encrypted in CWL. If you omit this key, the encryption does not use KMS. For more information, see [Encrypt log data in using](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/encrypt-log-data-kms.html)
///
[Output("kmsKeyId")]
public Output KmsKeyId { get; private set; } = null!;
///
- /// The class of the log group. Possible values are: STANDARD and INFREQUENT_ACCESS, with STANDARD being the default class
+ /// Specifies the log group class for this log group. There are two classes:
+ /// + The ``Standard`` log class supports all CWL features.
+ /// + The ``Infrequent Access`` log class supports a subset of CWL features and incurs lower costs.
+ ///
+ /// For details about the features supported by each class, see [Log classes](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch_Logs_Log_Classes.html)
///
[Output("logGroupClass")]
public Output LogGroupClass { get; private set; } = null!;
///
- /// The name of the log group. If you don't specify a name, AWS CloudFormation generates a unique ID for the log group.
+ /// The name of the log group. If you don't specify a name, CFNlong generates a unique ID for the log group.
///
[Output("logGroupName")]
public Output LogGroupName { get; private set; } = null!;
///
- /// The number of days to retain the log events in the specified log group. Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1096, 1827, and 3653.
+ /// The number of days to retain the log events in the specified log group. Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1096, 1827, 2192, 2557, 2922, 3288, and 3653.
+ /// To set a log group so that its log events do not expire, use [DeleteRetentionPolicy](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DeleteRetentionPolicy.html).
///
[Output("retentionInDays")]
public Output RetentionInDays { get; private set; } = null!;
///
- /// An array of key-value pairs to apply to this resource.
+ /// An array of key-value pairs to apply to the log group.
+ /// For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html).
///
[Output("tags")]
public Output> Tags { get; private set; } = null!;
@@ -115,13 +120,8 @@ public static LogGroup Get(string name, Input id, CustomResourceOptions?
public sealed class LogGroupArgs : global::Pulumi.ResourceArgs
{
///
- /// The body of the policy document you want to use for this topic.
- ///
- /// You can only add one policy per topic.
- ///
- /// The policy must be in JSON string format.
- ///
- /// Length Constraints: Maximum length of 30720
+ /// Creates a data protection policy and assigns it to the log group. A data protection policy can help safeguard sensitive data that's ingested by the log group by auditing and masking the sensitive log data. When a user who does not have permission to view masked data views a log event that includes masked data, the sensitive data is replaced by asterisks.
+ /// For more information, including a list of types of data that can be audited and masked, see [Protect sensitive log data with masking](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/mask-sensitive-log-data.html).
///
/// Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Logs::LogGroup` for more information about the expected schema for this property.
///
@@ -129,25 +129,33 @@ public sealed class LogGroupArgs : global::Pulumi.ResourceArgs
public Input? DataProtectionPolicy { get; set; }
///
- /// The Amazon Resource Name (ARN) of the CMK to use when encrypting log data.
+ /// The Amazon Resource Name (ARN) of the KMS key to use when encrypting log data.
+ /// To associate an KMS key with the log group, specify the ARN of that KMS key here. If you do so, ingested data is encrypted using this key. This association is stored as long as the data encrypted with the KMS key is still within CWL. This enables CWL to decrypt this data whenever it is requested.
+ /// If you attempt to associate a KMS key with the log group but the KMS key doesn't exist or is deactivated, you will receive an ``InvalidParameterException`` error.
+ /// Log group data is always encrypted in CWL. If you omit this key, the encryption does not use KMS. For more information, see [Encrypt log data in using](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/encrypt-log-data-kms.html)
///
[Input("kmsKeyId")]
public Input? KmsKeyId { get; set; }
///
- /// The class of the log group. Possible values are: STANDARD and INFREQUENT_ACCESS, with STANDARD being the default class
+ /// Specifies the log group class for this log group. There are two classes:
+ /// + The ``Standard`` log class supports all CWL features.
+ /// + The ``Infrequent Access`` log class supports a subset of CWL features and incurs lower costs.
+ ///
+ /// For details about the features supported by each class, see [Log classes](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch_Logs_Log_Classes.html)
///
[Input("logGroupClass")]
public Input? LogGroupClass { get; set; }
///
- /// The name of the log group. If you don't specify a name, AWS CloudFormation generates a unique ID for the log group.
+ /// The name of the log group. If you don't specify a name, CFNlong generates a unique ID for the log group.
///
[Input("logGroupName")]
public Input? LogGroupName { get; set; }
///
- /// The number of days to retain the log events in the specified log group. Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1096, 1827, and 3653.
+ /// The number of days to retain the log events in the specified log group. Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1096, 1827, 2192, 2557, 2922, 3288, and 3653.
+ /// To set a log group so that its log events do not expire, use [DeleteRetentionPolicy](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DeleteRetentionPolicy.html).
///
[Input("retentionInDays")]
public Input? RetentionInDays { get; set; }
@@ -156,7 +164,8 @@ public sealed class LogGroupArgs : global::Pulumi.ResourceArgs
private InputList? _tags;
///
- /// An array of key-value pairs to apply to this resource.
+ /// An array of key-value pairs to apply to the log group.
+ /// For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html).
///
public InputList Tags
{
diff --git a/sdk/dotnet/Logs/MetricFilter.cs b/sdk/dotnet/Logs/MetricFilter.cs
index b420f630cb..3de1b6a35e 100644
--- a/sdk/dotnet/Logs/MetricFilter.cs
+++ b/sdk/dotnet/Logs/MetricFilter.cs
@@ -10,31 +10,32 @@
namespace Pulumi.AwsNative.Logs
{
///
- /// Specifies a metric filter that describes how CloudWatch Logs extracts information from logs and transforms it into Amazon CloudWatch metrics.
+ /// The ``AWS::Logs::MetricFilter`` resource specifies a metric filter that describes how CWL extracts information from logs and transforms it into Amazon CloudWatch metrics. If you have multiple metric filters that are associated with a log group, all the filters are applied to the log streams in that group.
+ /// The maximum number of metric filters that can be associated with a log group is 100.
///
[AwsNativeResourceType("aws-native:logs:MetricFilter")]
public partial class MetricFilter : global::Pulumi.CustomResource
{
///
- /// A name for the metric filter.
+ /// The name of the metric filter.
///
[Output("filterName")]
public Output FilterName { get; private set; } = null!;
///
- /// Pattern that Logs follows to interpret each entry in a log.
+ /// A filter pattern for extracting metric data out of ingested log events. For more information, see [Filter and Pattern Syntax](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html).
///
[Output("filterPattern")]
public Output FilterPattern { get; private set; } = null!;
///
- /// Existing log group that you want to associate with this filter.
+ /// The name of an existing log group that you want to associate with this metric filter.
///
[Output("logGroupName")]
public Output LogGroupName { get; private set; } = null!;
///
- /// A collection of information that defines how metric data gets emitted.
+ /// The metric transformations.
///
[Output("metricTransformations")]
public Output> MetricTransformations { get; private set; } = null!;
@@ -90,19 +91,19 @@ public static MetricFilter Get(string name, Input id, CustomResourceOpti
public sealed class MetricFilterArgs : global::Pulumi.ResourceArgs
{
///
- /// A name for the metric filter.
+ /// The name of the metric filter.
///
[Input("filterName")]
public Input? FilterName { get; set; }
///
- /// Pattern that Logs follows to interpret each entry in a log.
+ /// A filter pattern for extracting metric data out of ingested log events. For more information, see [Filter and Pattern Syntax](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html).
///
[Input("filterPattern", required: true)]
public Input FilterPattern { get; set; } = null!;
///